md-feedback 1.4.2 → 1.5.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.
Files changed (2) hide show
  1. package/dist/mcp-server.js +67 -62
  2. package/package.json +1 -1
@@ -1,84 +1,89 @@
1
1
  #!/usr/bin/env node
2
- "use strict";var q_=Object.create;var as=Object.defineProperty;var L_=Object.getOwnPropertyDescriptor;var F_=Object.getOwnPropertyNames;var U_=Object.getPrototypeOf,V_=Object.prototype.hasOwnProperty;var I=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),cs=(t,e)=>{for(var r in e)as(t,r,{get:e[r],enumerable:!0})},dp=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of F_(e))!V_.call(t,o)&&o!==r&&as(t,o,{get:()=>e[o],enumerable:!(n=L_(e,o))||n.enumerable});return t};var Gn=(t,e,r)=>(r=t!=null?q_(U_(t)):{},dp(e||!t||!t.__esModule?as(r,"default",{value:t,enumerable:!0}):r,t)),H_=t=>dp(as({},"__esModule",{value:!0}),t);var $o=I(ae=>{"use strict";Object.defineProperty(ae,"__esModule",{value:!0});ae.regexpCode=ae.getEsmExportName=ae.getProperty=ae.safeStringify=ae.stringify=ae.strConcat=ae.addCodeArg=ae.str=ae._=ae.nil=ae._Code=ae.Name=ae.IDENTIFIER=ae._CodeOrName=void 0;var bo=class{};ae._CodeOrName=bo;ae.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Wr=class extends bo{constructor(e){if(super(),!ae.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};ae.Name=Wr;var ht=class extends bo{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof Wr&&(r[n.str]=(r[n.str]||0)+1),r),{})}};ae._Code=ht;ae.nil=new ht("");function ah(t,...e){let r=[t[0]],n=0;for(;n<e.length;)Xu(r,e[n]),r.push(t[++n]);return new ht(r)}ae._=ah;var Qu=new ht("+");function ch(t,...e){let r=[wo(t[0])],n=0;for(;n<e.length;)r.push(Qu),Xu(r,e[n]),r.push(Qu,wo(t[++n]));return H$(r),new ht(r)}ae.str=ch;function Xu(t,e){e instanceof ht?t.push(...e._items):e instanceof Wr?t.push(e):t.push(B$(e))}ae.addCodeArg=Xu;function H$(t){let e=1;for(;e<t.length-1;){if(t[e]===Qu){let r=G$(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function G$(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Wr||t[t.length-1]!=='"'?void 0:typeof e!="string"?`${t.slice(0,-1)}${e}"`:e[0]==='"'?t.slice(0,-1)+e.slice(1):void 0;if(typeof e=="string"&&e[0]==='"'&&!(t instanceof Wr))return`"${t}${e.slice(1)}`}function W$(t,e){return e.emptyStr()?t:t.emptyStr()?e:ch`${t}${e}`}ae.strConcat=W$;function B$(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:wo(Array.isArray(t)?t.join(","):t)}function K$(t){return new ht(wo(t))}ae.stringify=K$;function wo(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}ae.safeStringify=wo;function J$(t){return typeof t=="string"&&ae.IDENTIFIER.test(t)?new ht(`.${t}`):ah`[${t}]`}ae.getProperty=J$;function Q$(t){if(typeof t=="string"&&ae.IDENTIFIER.test(t))return new ht(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}ae.getEsmExportName=Q$;function X$(t){return new ht(t.toString())}ae.regexpCode=X$});var tl=I(tt=>{"use strict";Object.defineProperty(tt,"__esModule",{value:!0});tt.ValueScope=tt.ValueScopeName=tt.Scope=tt.varKinds=tt.UsedValueState=void 0;var et=$o(),Yu=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},li;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(li||(tt.UsedValueState=li={}));tt.varKinds={const:new et.Name("const"),let:new et.Name("let"),var:new et.Name("var")};var di=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof et.Name?e:this.name(e)}name(e){return new et.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};tt.Scope=di;var pi=class extends et.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,et._)`.${new et.Name(r)}[${n}]`}};tt.ValueScopeName=pi;var Y$=(0,et._)`\n`,el=class extends di{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?Y$:et.nil}}get(){return this._scope}name(e){return new pi(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let o=this.toName(e),{prefix:s}=o,i=(n=r.key)!==null&&n!==void 0?n:r.ref,a=this._values[s];if(a){let l=a.get(i);if(l)return l}else a=this._values[s]=new Map;a.set(i,o);let c=this._scope[s]||(this._scope[s]=[]),u=c.length;return c[u]=r.ref,o.setValue(r,{property:s,itemIndex:u}),o}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,et._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,o=>{if(o.value===void 0)throw new Error(`CodeGen: name "${o}" has no value`);return o.value.code},r,n)}_reduceValues(e,r,n={},o){let s=et.nil;for(let i in e){let a=e[i];if(!a)continue;let c=n[i]=n[i]||new Map;a.forEach(u=>{if(c.has(u))return;c.set(u,li.Started);let l=r(u);if(l){let d=this.opts.es5?tt.varKinds.var:tt.varKinds.const;s=(0,et._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,et._)`${s}${l}${this.opts._n}`;else throw new Yu(u);c.set(u,li.Completed)})}return s}};tt.ValueScope=el});var J=I(Q=>{"use strict";Object.defineProperty(Q,"__esModule",{value:!0});Q.or=Q.and=Q.not=Q.CodeGen=Q.operators=Q.varKinds=Q.ValueScopeName=Q.ValueScope=Q.Scope=Q.Name=Q.regexpCode=Q.stringify=Q.getProperty=Q.nil=Q.strConcat=Q.str=Q._=void 0;var se=$o(),kt=tl(),lr=$o();Object.defineProperty(Q,"_",{enumerable:!0,get:function(){return lr._}});Object.defineProperty(Q,"str",{enumerable:!0,get:function(){return lr.str}});Object.defineProperty(Q,"strConcat",{enumerable:!0,get:function(){return lr.strConcat}});Object.defineProperty(Q,"nil",{enumerable:!0,get:function(){return lr.nil}});Object.defineProperty(Q,"getProperty",{enumerable:!0,get:function(){return lr.getProperty}});Object.defineProperty(Q,"stringify",{enumerable:!0,get:function(){return lr.stringify}});Object.defineProperty(Q,"regexpCode",{enumerable:!0,get:function(){return lr.regexpCode}});Object.defineProperty(Q,"Name",{enumerable:!0,get:function(){return lr.Name}});var gi=tl();Object.defineProperty(Q,"Scope",{enumerable:!0,get:function(){return gi.Scope}});Object.defineProperty(Q,"ValueScope",{enumerable:!0,get:function(){return gi.ValueScope}});Object.defineProperty(Q,"ValueScopeName",{enumerable:!0,get:function(){return gi.ValueScopeName}});Object.defineProperty(Q,"varKinds",{enumerable:!0,get:function(){return gi.varKinds}});Q.operators={GT:new se._Code(">"),GTE:new se._Code(">="),LT:new se._Code("<"),LTE:new se._Code("<="),EQ:new se._Code("==="),NEQ:new se._Code("!=="),NOT:new se._Code("!"),OR:new se._Code("||"),AND:new se._Code("&&"),ADD:new se._Code("+")};var Kt=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},rl=class extends Kt{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?kt.varKinds.var:this.varKind,o=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${o};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=Tn(this.rhs,e,r)),this}get names(){return this.rhs instanceof se._CodeOrName?this.rhs.names:{}}},fi=class extends Kt{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof se.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=Tn(this.rhs,e,r),this}get names(){let e=this.lhs instanceof se.Name?{}:{...this.lhs.names};return hi(e,this.rhs)}},nl=class extends fi{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},ol=class extends Kt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},sl=class extends Kt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},il=class extends Kt{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},al=class extends Kt{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=Tn(this.code,e,r),this}get names(){return this.code instanceof se._CodeOrName?this.code.names:{}}},ko=class extends Kt{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,o=n.length;for(;o--;){let s=n[o];s.optimizeNames(e,r)||(ek(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Jr(e,r.names),{})}},Jt=class extends ko{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},cl=class extends ko{},Sn=class extends Jt{};Sn.kind="else";var Br=class t extends Jt{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new Sn(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(uh(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=Tn(this.condition,e,r),this}get names(){let e=super.names;return hi(e,this.condition),this.else&&Jr(e,this.else.names),e}};Br.kind="if";var Kr=class extends Jt{};Kr.kind="for";var ul=class extends Kr{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=Tn(this.iteration,e,r),this}get names(){return Jr(super.names,this.iteration.names)}},ll=class extends Kr{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?kt.varKinds.var:this.varKind,{name:n,from:o,to:s}=this;return`for(${r} ${n}=${o}; ${n}<${s}; ${n}++)`+super.render(e)}get names(){let e=hi(super.names,this.from);return hi(e,this.to)}},mi=class extends Kr{constructor(e,r,n,o){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=o}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=Tn(this.iterable,e,r),this}get names(){return Jr(super.names,this.iterable.names)}},So=class extends Jt{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};So.kind="func";var To=class extends ko{render(e){return"return "+super.render(e)}};To.kind="return";var dl=class extends Jt{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,o;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(o=this.finally)===null||o===void 0||o.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&Jr(e,this.catch.names),this.finally&&Jr(e,this.finally.names),e}},zo=class extends Jt{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};zo.kind="catch";var Eo=class extends Jt{render(e){return"finally"+super.render(e)}};Eo.kind="finally";var pl=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
3
- `:""},this._extScope=e,this._scope=new kt.Scope({parent:e}),this._nodes=[new cl]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,o){let s=this._scope.toName(r);return n!==void 0&&o&&(this._constants[s.str]=n),this._leafNode(new rl(e,s,n)),s}const(e,r,n){return this._def(kt.varKinds.const,e,r,n)}let(e,r,n){return this._def(kt.varKinds.let,e,r,n)}var(e,r,n){return this._def(kt.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new fi(e,r,n))}add(e,r){return this._leafNode(new nl(e,Q.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==se.nil&&this._leafNode(new al(e)),this}object(...e){let r=["{"];for(let[n,o]of e)r.length>1&&r.push(","),r.push(n),(n!==o||this.opts.es5)&&(r.push(":"),(0,se.addCodeArg)(r,o));return r.push("}"),new se._Code(r)}if(e,r,n){if(this._blockNode(new Br(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new Br(e))}else(){return this._elseNode(new Sn)}endIf(){return this._endBlockNode(Br,Sn)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new ul(e),r)}forRange(e,r,n,o,s=this.opts.es5?kt.varKinds.var:kt.varKinds.let){let i=this._scope.toName(e);return this._for(new ll(s,i,r,n),()=>o(i))}forOf(e,r,n,o=kt.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof se.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,se._)`${i}.length`,a=>{this.var(s,(0,se._)`${i}[${a}]`),n(s)})}return this._for(new mi("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?kt.varKinds.var:kt.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,se._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new mi("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(Kr)}label(e){return this._leafNode(new ol(e))}break(e){return this._leafNode(new sl(e))}return(e){let r=new To;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(To)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new dl;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new zo(s),r(s)}return n&&(this._currNode=o.finally=new Eo,this.code(n)),this._endBlockNode(zo,Eo)}throw(e){return this._leafNode(new il(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=se.nil,n,o){return this._blockNode(new So(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(So)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof Br))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};Q.CodeGen=pl;function Jr(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function hi(t,e){return e instanceof se._CodeOrName?Jr(t,e.names):t}function Tn(t,e,r){if(t instanceof se.Name)return n(t);if(!o(t))return t;return new se._Code(t._items.reduce((s,i)=>(i instanceof se.Name&&(i=n(i)),i instanceof se._Code?s.push(...i._items):s.push(i),s),[]));function n(s){let i=r[s.str];return i===void 0||e[s.str]!==1?s:(delete e[s.str],i)}function o(s){return s instanceof se._Code&&s._items.some(i=>i instanceof se.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function ek(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function uh(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,se._)`!${fl(t)}`}Q.not=uh;var tk=lh(Q.operators.AND);function rk(...t){return t.reduce(tk)}Q.and=rk;var nk=lh(Q.operators.OR);function ok(...t){return t.reduce(nk)}Q.or=ok;function lh(t){return(e,r)=>e===se.nil?r:r===se.nil?e:(0,se._)`${fl(e)} ${t} ${fl(r)}`}function fl(t){return t instanceof se.Name?t:(0,se._)`(${t})`}});var ce=I(X=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0});X.checkStrictMode=X.getErrorPath=X.Type=X.useFunc=X.setEvaluated=X.evaluatedPropsToName=X.mergeEvaluated=X.eachItem=X.unescapeJsonPointer=X.escapeJsonPointer=X.escapeFragment=X.unescapeFragment=X.schemaRefOrVal=X.schemaHasRulesButRef=X.schemaHasRules=X.checkUnknownRules=X.alwaysValidSchema=X.toHash=void 0;var me=J(),sk=$o();function ik(t){let e={};for(let r of t)e[r]=!0;return e}X.toHash=ik;function ak(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(fh(t,e),!mh(e,t.self.RULES.all))}X.alwaysValidSchema=ak;function fh(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let o=n.RULES.keywords;for(let s in e)o[s]||yh(t,`unknown keyword: "${s}"`)}X.checkUnknownRules=fh;function mh(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}X.schemaHasRules=mh;function ck(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}X.schemaHasRulesButRef=ck;function uk({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,me._)`${r}`}return(0,me._)`${t}${e}${(0,me.getProperty)(n)}`}X.schemaRefOrVal=uk;function lk(t){return hh(decodeURIComponent(t))}X.unescapeFragment=lk;function dk(t){return encodeURIComponent(hl(t))}X.escapeFragment=dk;function hl(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}X.escapeJsonPointer=hl;function hh(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}X.unescapeJsonPointer=hh;function pk(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}X.eachItem=pk;function dh({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof me.Name?(s instanceof me.Name?t(o,s,i):e(o,s,i),i):s instanceof me.Name?(e(o,i,s),s):r(s,i);return a===me.Name&&!(c instanceof me.Name)?n(o,c):c}}X.mergeEvaluated={props:dh({mergeNames:(t,e,r)=>t.if((0,me._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,me._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,me._)`${r} || {}`).code((0,me._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,me._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,me._)`${r} || {}`),gl(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:gh}),items:dh({mergeNames:(t,e,r)=>t.if((0,me._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,me._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,me._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,me._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function gh(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,me._)`{}`);return e!==void 0&&gl(t,r,e),r}X.evaluatedPropsToName=gh;function gl(t,e,r){Object.keys(r).forEach(n=>t.assign((0,me._)`${e}${(0,me.getProperty)(n)}`,!0))}X.setEvaluated=gl;var ph={};function fk(t,e){return t.scopeValue("func",{ref:e,code:ph[e.code]||(ph[e.code]=new sk._Code(e.code))})}X.useFunc=fk;var ml;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(ml||(X.Type=ml={}));function mk(t,e,r){if(t instanceof me.Name){let n=e===ml.Num;return r?n?(0,me._)`"[" + ${t} + "]"`:(0,me._)`"['" + ${t} + "']"`:n?(0,me._)`"/" + ${t}`:(0,me._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,me.getProperty)(t).toString():"/"+hl(t)}X.getErrorPath=mk;function yh(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}X.checkStrictMode=yh});var Qt=I(yl=>{"use strict";Object.defineProperty(yl,"__esModule",{value:!0});var Le=J(),hk={data:new Le.Name("data"),valCxt:new Le.Name("valCxt"),instancePath:new Le.Name("instancePath"),parentData:new Le.Name("parentData"),parentDataProperty:new Le.Name("parentDataProperty"),rootData:new Le.Name("rootData"),dynamicAnchors:new Le.Name("dynamicAnchors"),vErrors:new Le.Name("vErrors"),errors:new Le.Name("errors"),this:new Le.Name("this"),self:new Le.Name("self"),scope:new Le.Name("scope"),json:new Le.Name("json"),jsonPos:new Le.Name("jsonPos"),jsonLen:new Le.Name("jsonLen"),jsonPart:new Le.Name("jsonPart")};yl.default=hk});var Po=I(Fe=>{"use strict";Object.defineProperty(Fe,"__esModule",{value:!0});Fe.extendErrors=Fe.resetErrorsCount=Fe.reportExtraError=Fe.reportError=Fe.keyword$DataError=Fe.keywordError=void 0;var ie=J(),yi=ce(),We=Qt();Fe.keywordError={message:({keyword:t})=>(0,ie.str)`must pass "${t}" keyword validation`};Fe.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,ie.str)`"${t}" keyword must be ${e} ($data)`:(0,ie.str)`"${t}" keyword is invalid ($data)`};function gk(t,e=Fe.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=xh(t,e,r);n??(i||a)?_h(s,c):vh(o,(0,ie._)`[${c}]`)}Fe.reportError=gk;function yk(t,e=Fe.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=xh(t,e,r);_h(o,a),s||i||vh(n,We.default.vErrors)}Fe.reportExtraError=yk;function _k(t,e){t.assign(We.default.errors,e),t.if((0,ie._)`${We.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,ie._)`${We.default.vErrors}.length`,e),()=>t.assign(We.default.vErrors,null)))}Fe.resetErrorsCount=_k;function vk({gen:t,keyword:e,schemaValue:r,data:n,errsCount:o,it:s}){if(o===void 0)throw new Error("ajv implementation error");let i=t.name("err");t.forRange("i",o,We.default.errors,a=>{t.const(i,(0,ie._)`${We.default.vErrors}[${a}]`),t.if((0,ie._)`${i}.instancePath === undefined`,()=>t.assign((0,ie._)`${i}.instancePath`,(0,ie.strConcat)(We.default.instancePath,s.errorPath))),t.assign((0,ie._)`${i}.schemaPath`,(0,ie.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,ie._)`${i}.schema`,r),t.assign((0,ie._)`${i}.data`,n))})}Fe.extendErrors=vk;function _h(t,e){let r=t.const("err",e);t.if((0,ie._)`${We.default.vErrors} === null`,()=>t.assign(We.default.vErrors,(0,ie._)`[${r}]`),(0,ie._)`${We.default.vErrors}.push(${r})`),t.code((0,ie._)`${We.default.errors}++`)}function vh(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,ie._)`new ${t.ValidationError}(${e})`):(r.assign((0,ie._)`${n}.errors`,e),r.return(!1))}var Qr={keyword:new ie.Name("keyword"),schemaPath:new ie.Name("schemaPath"),params:new ie.Name("params"),propertyName:new ie.Name("propertyName"),message:new ie.Name("message"),schema:new ie.Name("schema"),parentSchema:new ie.Name("parentSchema")};function xh(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,ie._)`{}`:xk(t,e,r)}function xk(t,e,r={}){let{gen:n,it:o}=t,s=[bk(o,r),wk(t,r)];return $k(t,e,s),n.object(...s)}function bk({errorPath:t},{instancePath:e}){let r=e?(0,ie.str)`${t}${(0,yi.getErrorPath)(e,yi.Type.Str)}`:t;return[We.default.instancePath,(0,ie.strConcat)(We.default.instancePath,r)]}function wk({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,ie.str)`${e}/${t}`;return r&&(o=(0,ie.str)`${o}${(0,yi.getErrorPath)(r,yi.Type.Str)}`),[Qr.schemaPath,o]}function $k(t,{params:e,message:r},n){let{keyword:o,data:s,schemaValue:i,it:a}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=a;n.push([Qr.keyword,o],[Qr.params,typeof e=="function"?e(t):e||(0,ie._)`{}`]),c.messages&&n.push([Qr.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Qr.schema,i],[Qr.parentSchema,(0,ie._)`${l}${d}`],[We.default.data,s]),u&&n.push([Qr.propertyName,u])}});var wh=I(zn=>{"use strict";Object.defineProperty(zn,"__esModule",{value:!0});zn.boolOrEmptySchema=zn.topBoolOrEmptySchema=void 0;var kk=Po(),Sk=J(),Tk=Qt(),zk={message:"boolean schema is false"};function Ek(t){let{gen:e,schema:r,validateName:n}=t;r===!1?bh(t,!1):typeof r=="object"&&r.$async===!0?e.return(Tk.default.data):(e.assign((0,Sk._)`${n}.errors`,null),e.return(!0))}zn.topBoolOrEmptySchema=Ek;function Pk(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),bh(t)):r.var(e,!0)}zn.boolOrEmptySchema=Pk;function bh(t,e){let{gen:r,data:n}=t,o={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,kk.reportError)(o,zk,void 0,e)}});var _l=I(En=>{"use strict";Object.defineProperty(En,"__esModule",{value:!0});En.getRules=En.isJSONType=void 0;var Rk=["string","number","integer","boolean","null","object","array"],Ik=new Set(Rk);function Ok(t){return typeof t=="string"&&Ik.has(t)}En.isJSONType=Ok;function Mk(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}En.getRules=Mk});var vl=I(dr=>{"use strict";Object.defineProperty(dr,"__esModule",{value:!0});dr.shouldUseRule=dr.shouldUseGroup=dr.schemaHasRulesForType=void 0;function Ak({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&$h(t,n)}dr.schemaHasRulesForType=Ak;function $h(t,e){return e.rules.some(r=>kh(t,r))}dr.shouldUseGroup=$h;function kh(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}dr.shouldUseRule=kh});var Ro=I(Ue=>{"use strict";Object.defineProperty(Ue,"__esModule",{value:!0});Ue.reportTypeError=Ue.checkDataTypes=Ue.checkDataType=Ue.coerceAndCheckDataType=Ue.getJSONTypes=Ue.getSchemaTypes=Ue.DataType=void 0;var Ck=_l(),Nk=vl(),jk=Po(),B=J(),Sh=ce(),Pn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Pn||(Ue.DataType=Pn={}));function Zk(t){let e=Th(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Ue.getSchemaTypes=Zk;function Th(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(Ck.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Ue.getJSONTypes=Th;function Dk(t,e){let{gen:r,data:n,opts:o}=t,s=qk(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,Nk.schemaHasRulesForType)(t,e[0]));if(i){let a=bl(e,n,o.strictNumbers,Pn.Wrong);r.if(a,()=>{s.length?Lk(t,e,s):wl(t)})}return i}Ue.coerceAndCheckDataType=Dk;var zh=new Set(["string","number","integer","boolean","null"]);function qk(t,e){return e?t.filter(r=>zh.has(r)||e==="array"&&r==="array"):[]}function Lk(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,B._)`typeof ${o}`),a=n.let("coerced",(0,B._)`undefined`);s.coerceTypes==="array"&&n.if((0,B._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,B._)`${o}[0]`).assign(i,(0,B._)`typeof ${o}`).if(bl(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,B._)`${a} !== undefined`);for(let u of r)(zh.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),wl(t),n.endIf(),n.if((0,B._)`${a} !== undefined`,()=>{n.assign(o,a),Fk(t,a)});function c(u){switch(u){case"string":n.elseIf((0,B._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,B._)`"" + ${o}`).elseIf((0,B._)`${o} === null`).assign(a,(0,B._)`""`);return;case"number":n.elseIf((0,B._)`${i} == "boolean" || ${o} === null
4
- || (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,B._)`+${o}`);return;case"integer":n.elseIf((0,B._)`${i} === "boolean" || ${o} === null
5
- || (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,B._)`+${o}`);return;case"boolean":n.elseIf((0,B._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,B._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,B._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,B._)`${i} === "string" || ${i} === "number"
6
- || ${i} === "boolean" || ${o} === null`).assign(a,(0,B._)`[${o}]`)}}}function Fk({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,B._)`${e} !== undefined`,()=>t.assign((0,B._)`${e}[${r}]`,n))}function xl(t,e,r,n=Pn.Correct){let o=n===Pn.Correct?B.operators.EQ:B.operators.NEQ,s;switch(t){case"null":return(0,B._)`${e} ${o} null`;case"array":s=(0,B._)`Array.isArray(${e})`;break;case"object":s=(0,B._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,B._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,B._)`typeof ${e} ${o} ${t}`}return n===Pn.Correct?s:(0,B.not)(s);function i(a=B.nil){return(0,B.and)((0,B._)`typeof ${e} == "number"`,a,r?(0,B._)`isFinite(${e})`:B.nil)}}Ue.checkDataType=xl;function bl(t,e,r,n){if(t.length===1)return xl(t[0],e,r,n);let o,s=(0,Sh.toHash)(t);if(s.array&&s.object){let i=(0,B._)`typeof ${e} != "object"`;o=s.null?i:(0,B._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=B.nil;s.number&&delete s.integer;for(let i in s)o=(0,B.and)(o,xl(i,e,r,n));return o}Ue.checkDataTypes=bl;var Uk={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,B._)`{type: ${t}}`:(0,B._)`{type: ${e}}`};function wl(t){let e=Vk(t);(0,jk.reportError)(e,Uk)}Ue.reportTypeError=wl;function Vk(t){let{gen:e,data:r,schema:n}=t,o=(0,Sh.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var Ph=I(_i=>{"use strict";Object.defineProperty(_i,"__esModule",{value:!0});_i.assignDefaults=void 0;var Rn=J(),Hk=ce();function Gk(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)Eh(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>Eh(t,s,o.default))}_i.assignDefaults=Gk;function Eh(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,Rn._)`${s}${(0,Rn.getProperty)(e)}`;if(o){(0,Hk.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,Rn._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,Rn._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,Rn._)`${a} = ${(0,Rn.stringify)(r)}`)}});var gt=I(fe=>{"use strict";Object.defineProperty(fe,"__esModule",{value:!0});fe.validateUnion=fe.validateArray=fe.usePattern=fe.callValidateCode=fe.schemaProperties=fe.allSchemaProperties=fe.noPropertyInData=fe.propertyInData=fe.isOwnProperty=fe.hasPropFunc=fe.reportMissingProp=fe.checkMissingProp=fe.checkReportMissingProp=void 0;var _e=J(),$l=ce(),pr=Qt(),Wk=ce();function Bk(t,e){let{gen:r,data:n,it:o}=t;r.if(Sl(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,_e._)`${e}`},!0),t.error()})}fe.checkReportMissingProp=Bk;function Kk({gen:t,data:e,it:{opts:r}},n,o){return(0,_e.or)(...n.map(s=>(0,_e.and)(Sl(t,e,s,r.ownProperties),(0,_e._)`${o} = ${s}`)))}fe.checkMissingProp=Kk;function Jk(t,e){t.setParams({missingProperty:e},!0),t.error()}fe.reportMissingProp=Jk;function Rh(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,_e._)`Object.prototype.hasOwnProperty`})}fe.hasPropFunc=Rh;function kl(t,e,r){return(0,_e._)`${Rh(t)}.call(${e}, ${r})`}fe.isOwnProperty=kl;function Qk(t,e,r,n){let o=(0,_e._)`${e}${(0,_e.getProperty)(r)} !== undefined`;return n?(0,_e._)`${o} && ${kl(t,e,r)}`:o}fe.propertyInData=Qk;function Sl(t,e,r,n){let o=(0,_e._)`${e}${(0,_e.getProperty)(r)} === undefined`;return n?(0,_e.or)(o,(0,_e.not)(kl(t,e,r))):o}fe.noPropertyInData=Sl;function Ih(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}fe.allSchemaProperties=Ih;function Xk(t,e){return Ih(e).filter(r=>!(0,$l.alwaysValidSchema)(t,e[r]))}fe.schemaProperties=Xk;function Yk({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?(0,_e._)`${t}, ${e}, ${n}${o}`:e,d=[[pr.default.instancePath,(0,_e.strConcat)(pr.default.instancePath,s)],[pr.default.parentData,i.parentData],[pr.default.parentDataProperty,i.parentDataProperty],[pr.default.rootData,pr.default.rootData]];i.opts.dynamicRef&&d.push([pr.default.dynamicAnchors,pr.default.dynamicAnchors]);let p=(0,_e._)`${l}, ${r.object(...d)}`;return c!==_e.nil?(0,_e._)`${a}.call(${c}, ${p})`:(0,_e._)`${a}(${p})`}fe.callValidateCode=Yk;var e0=(0,_e._)`new RegExp`;function t0({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:o}=e.code,s=o(r,n);return t.scopeValue("pattern",{key:s.toString(),ref:s,code:(0,_e._)`${o.code==="new RegExp"?e0:(0,Wk.useFunc)(t,o)}(${r}, ${n})`})}fe.usePattern=t0;function r0(t){let{gen:e,data:r,keyword:n,it:o}=t,s=e.name("valid");if(o.allErrors){let a=e.let("valid",!0);return i(()=>e.assign(a,!1)),a}return e.var(s,!0),i(()=>e.break()),s;function i(a){let c=e.const("len",(0,_e._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:$l.Type.Num},s),e.if((0,_e.not)(s),a)})}}fe.validateArray=r0;function n0(t){let{gen:e,schema:r,keyword:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,$l.alwaysValidSchema)(o,c))&&!o.opts.unevaluated)return;let i=e.let("valid",!1),a=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},a);e.assign(i,(0,_e._)`${i} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,_e.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}fe.validateUnion=n0});var Ah=I(jt=>{"use strict";Object.defineProperty(jt,"__esModule",{value:!0});jt.validateKeywordUsage=jt.validSchemaType=jt.funcKeywordCode=jt.macroKeywordCode=void 0;var Be=J(),Xr=Qt(),o0=gt(),s0=Po();function i0(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=Mh(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:Be.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}jt.macroKeywordCode=i0;function a0(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;u0(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=Mh(n,o,u),d=n.let("valid");t.block$data(d,p),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function p(){if(e.errors===!1)g(),e.modifying&&Oh(t),h(()=>t.error());else{let y=e.async?m():f();e.modifying&&Oh(t),h(()=>c0(t,y))}}function m(){let y=n.let("ruleErrs",null);return n.try(()=>g((0,Be._)`await `),v=>n.assign(d,!1).if((0,Be._)`${v} instanceof ${c.ValidationError}`,()=>n.assign(y,(0,Be._)`${v}.errors`),()=>n.throw(v))),y}function f(){let y=(0,Be._)`${l}.errors`;return n.assign(y,null),g(Be.nil),y}function g(y=e.async?(0,Be._)`await `:Be.nil){let v=c.opts.passContext?Xr.default.this:Xr.default.self,x=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,Be._)`${y}${(0,o0.callValidateCode)(t,l,v,x)}`,e.modifying)}function h(y){var v;n.if((0,Be.not)((v=e.valid)!==null&&v!==void 0?v:d),y)}}jt.funcKeywordCode=a0;function Oh(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Be._)`${n.parentData}[${n.parentDataProperty}]`))}function c0(t,e){let{gen:r}=t;r.if((0,Be._)`Array.isArray(${e})`,()=>{r.assign(Xr.default.vErrors,(0,Be._)`${Xr.default.vErrors} === null ? ${e} : ${Xr.default.vErrors}.concat(${e})`).assign(Xr.default.errors,(0,Be._)`${Xr.default.vErrors}.length`),(0,s0.extendErrors)(t)},()=>t.error())}function u0({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Mh(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,Be.stringify)(r)})}function l0(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}jt.validSchemaType=l0;function d0({schema:t,opts:e,self:r,errSchemaPath:n},o,s){if(Array.isArray(o.keyword)?!o.keyword.includes(s):o.keyword!==s)throw new Error("ajv implementation error");let i=o.dependencies;if(i?.some(a=>!Object.prototype.hasOwnProperty.call(t,a)))throw new Error(`parent schema must have dependencies of ${s}: ${i.join(",")}`);if(o.validateSchema&&!o.validateSchema(t[s])){let c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}jt.validateKeywordUsage=d0});var Nh=I(fr=>{"use strict";Object.defineProperty(fr,"__esModule",{value:!0});fr.extendSubschemaMode=fr.extendSubschemaData=fr.getSubschema=void 0;var Zt=J(),Ch=ce();function p0(t,{keyword:e,schemaProp:r,schema:n,schemaPath:o,errSchemaPath:s,topSchemaRef:i}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let a=t.schema[e];return r===void 0?{schema:a,schemaPath:(0,Zt._)`${t.schemaPath}${(0,Zt.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,Zt._)`${t.schemaPath}${(0,Zt.getProperty)(e)}${(0,Zt.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Ch.escapeFragment)(r)}`}}if(n!==void 0){if(o===void 0||s===void 0||i===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:o,topSchemaRef:i,errSchemaPath:s}}throw new Error('either "keyword" or "schema" must be passed')}fr.getSubschema=p0;function f0(t,e,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,p=a.let("data",(0,Zt._)`${e.data}${(0,Zt.getProperty)(r)}`,!0);c(p),t.errorPath=(0,Zt.str)`${u}${(0,Ch.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,Zt._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof Zt.Name?o:a.let("data",o,!0);c(u),i!==void 0&&(t.propertyName=i)}s&&(t.dataTypes=s);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}fr.extendSubschemaData=f0;function m0(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:o,allErrors:s}){n!==void 0&&(t.compositeRule=n),o!==void 0&&(t.createErrors=o),s!==void 0&&(t.allErrors=s),t.jtdDiscriminator=e,t.jtdMetadata=r}fr.extendSubschemaMode=m0});var Tl=I((lC,jh)=>{"use strict";jh.exports=function t(e,r){if(e===r)return!0;if(e&&r&&typeof e=="object"&&typeof r=="object"){if(e.constructor!==r.constructor)return!1;var n,o,s;if(Array.isArray(e)){if(n=e.length,n!=r.length)return!1;for(o=n;o--!==0;)if(!t(e[o],r[o]))return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(s=Object.keys(e),n=s.length,n!==Object.keys(r).length)return!1;for(o=n;o--!==0;)if(!Object.prototype.hasOwnProperty.call(r,s[o]))return!1;for(o=n;o--!==0;){var i=s[o];if(!t(e[i],r[i]))return!1}return!0}return e!==e&&r!==r}});var Dh=I((dC,Zh)=>{"use strict";var mr=Zh.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},o=r.post||function(){};vi(e,n,o,t,"",t)};mr.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};mr.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};mr.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};mr.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function vi(t,e,r,n,o,s,i,a,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,o,s,i,a,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in mr.arrayKeywords)for(var p=0;p<d.length;p++)vi(t,e,r,d[p],o+"/"+l+"/"+p,s,o,l,n,p)}else if(l in mr.propsKeywords){if(d&&typeof d=="object")for(var m in d)vi(t,e,r,d[m],o+"/"+l+"/"+h0(m),s,o,l,n,m)}else(l in mr.keywords||t.allKeys&&!(l in mr.skipKeywords))&&vi(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function h0(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Io=I(rt=>{"use strict";Object.defineProperty(rt,"__esModule",{value:!0});rt.getSchemaRefs=rt.resolveUrl=rt.normalizeId=rt._getFullPath=rt.getFullPath=rt.inlineRef=void 0;var g0=ce(),y0=Tl(),_0=Dh(),v0=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function x0(t,e=!0){return typeof t=="boolean"?!0:e===!0?!zl(t):e?qh(t)<=e:!1}rt.inlineRef=x0;var b0=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function zl(t){for(let e in t){if(b0.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(zl)||typeof r=="object"&&zl(r))return!0}return!1}function qh(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!v0.has(r)&&(typeof t[r]=="object"&&(0,g0.eachItem)(t[r],n=>e+=qh(n)),e===1/0))return 1/0}return e}function Lh(t,e="",r){r!==!1&&(e=In(e));let n=t.parse(e);return Fh(t,n)}rt.getFullPath=Lh;function Fh(t,e){return t.serialize(e).split("#")[0]+"#"}rt._getFullPath=Fh;var w0=/#\/?$/;function In(t){return t?t.replace(w0,""):""}rt.normalizeId=In;function $0(t,e,r){return r=In(r),t.resolve(e,r)}rt.resolveUrl=$0;var k0=/^[a-z_][-a-z0-9._]*$/i;function S0(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=In(t[r]||e),s={"":o},i=Lh(n,o,!1),a={},c=new Set;return _0(t,{allKeys:!0},(d,p,m,f)=>{if(f===void 0)return;let g=i+p,h=s[f];typeof d[r]=="string"&&(h=y.call(this,d[r])),v.call(this,d.$anchor),v.call(this,d.$dynamicAnchor),s[p]=h;function y(x){let b=this.opts.uriResolver.resolve;if(x=In(h?b(h,x):x),c.has(x))throw l(x);c.add(x);let _=this.refs[x];return typeof _=="string"&&(_=this.refs[_]),typeof _=="object"?u(d,_.schema,x):x!==In(g)&&(x[0]==="#"?(u(d,a[x],x),a[x]=d):this.refs[x]=g),x}function v(x){if(typeof x=="string"){if(!k0.test(x))throw new Error(`invalid anchor "${x}"`);y.call(this,`#${x}`)}}}),a;function u(d,p,m){if(p!==void 0&&!y0(d,p))throw l(m)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}rt.getSchemaRefs=S0});var Ao=I(hr=>{"use strict";Object.defineProperty(hr,"__esModule",{value:!0});hr.getData=hr.KeywordCxt=hr.validateFunctionCode=void 0;var Wh=wh(),Uh=Ro(),Pl=vl(),xi=Ro(),T0=Ph(),Mo=Ah(),El=Nh(),D=J(),G=Qt(),z0=Io(),Xt=ce(),Oo=Po();function E0(t){if(Jh(t)&&(Qh(t),Kh(t))){I0(t);return}Bh(t,()=>(0,Wh.topBoolOrEmptySchema)(t))}hr.validateFunctionCode=E0;function Bh({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,D._)`${G.default.data}, ${G.default.valCxt}`,n.$async,()=>{t.code((0,D._)`"use strict"; ${Vh(r,o)}`),R0(t,o),t.code(s)}):t.func(e,(0,D._)`${G.default.data}, ${P0(o)}`,n.$async,()=>t.code(Vh(r,o)).code(s))}function P0(t){return(0,D._)`{${G.default.instancePath}="", ${G.default.parentData}, ${G.default.parentDataProperty}, ${G.default.rootData}=${G.default.data}${t.dynamicRef?(0,D._)`, ${G.default.dynamicAnchors}={}`:D.nil}}={}`}function R0(t,e){t.if(G.default.valCxt,()=>{t.var(G.default.instancePath,(0,D._)`${G.default.valCxt}.${G.default.instancePath}`),t.var(G.default.parentData,(0,D._)`${G.default.valCxt}.${G.default.parentData}`),t.var(G.default.parentDataProperty,(0,D._)`${G.default.valCxt}.${G.default.parentDataProperty}`),t.var(G.default.rootData,(0,D._)`${G.default.valCxt}.${G.default.rootData}`),e.dynamicRef&&t.var(G.default.dynamicAnchors,(0,D._)`${G.default.valCxt}.${G.default.dynamicAnchors}`)},()=>{t.var(G.default.instancePath,(0,D._)`""`),t.var(G.default.parentData,(0,D._)`undefined`),t.var(G.default.parentDataProperty,(0,D._)`undefined`),t.var(G.default.rootData,G.default.data),e.dynamicRef&&t.var(G.default.dynamicAnchors,(0,D._)`{}`)})}function I0(t){let{schema:e,opts:r,gen:n}=t;Bh(t,()=>{r.$comment&&e.$comment&&Yh(t),N0(t),n.let(G.default.vErrors,null),n.let(G.default.errors,0),r.unevaluated&&O0(t),Xh(t),D0(t)})}function O0(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,D._)`${r}.evaluated`),e.if((0,D._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,D._)`${t.evaluated}.props`,(0,D._)`undefined`)),e.if((0,D._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,D._)`${t.evaluated}.items`,(0,D._)`undefined`))}function Vh(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,D._)`/*# sourceURL=${r} */`:D.nil}function M0(t,e){if(Jh(t)&&(Qh(t),Kh(t))){A0(t,e);return}(0,Wh.boolOrEmptySchema)(t,e)}function Kh({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function Jh(t){return typeof t.schema!="boolean"}function A0(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&Yh(t),j0(t),Z0(t);let s=n.const("_errs",G.default.errors);Xh(t,s),n.var(e,(0,D._)`${s} === ${G.default.errors}`)}function Qh(t){(0,Xt.checkUnknownRules)(t),C0(t)}function Xh(t,e){if(t.opts.jtd)return Hh(t,[],!1,e);let r=(0,Uh.getSchemaTypes)(t.schema),n=(0,Uh.coerceAndCheckDataType)(t,r);Hh(t,r,!n,e)}function C0(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Xt.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function N0(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Xt.checkStrictMode)(t,"default is ignored in the schema root")}function j0(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,z0.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function Z0(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function Yh({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,D._)`${G.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,D.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,D._)`${G.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function D0(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,D._)`${G.default.errors} === 0`,()=>e.return(G.default.data),()=>e.throw((0,D._)`new ${o}(${G.default.vErrors})`)):(e.assign((0,D._)`${n}.errors`,G.default.vErrors),s.unevaluated&&q0(t),e.return((0,D._)`${G.default.errors} === 0`))}function q0({gen:t,evaluated:e,props:r,items:n}){r instanceof D.Name&&t.assign((0,D._)`${e}.props`,r),n instanceof D.Name&&t.assign((0,D._)`${e}.items`,n)}function Hh(t,e,r,n){let{gen:o,schema:s,data:i,allErrors:a,opts:c,self:u}=t,{RULES:l}=u;if(s.$ref&&(c.ignoreKeywordsWithRef||!(0,Xt.schemaHasRulesButRef)(s,l))){o.block(()=>tg(t,"$ref",l.all.$ref.definition));return}c.jtd||L0(t,e),o.block(()=>{for(let p of l.rules)d(p);d(l.post)});function d(p){(0,Pl.shouldUseGroup)(s,p)&&(p.type?(o.if((0,xi.checkDataType)(p.type,i,c.strictNumbers)),Gh(t,p),e.length===1&&e[0]===p.type&&r&&(o.else(),(0,xi.reportTypeError)(t)),o.endIf()):Gh(t,p),a||o.if((0,D._)`${G.default.errors} === ${n||0}`))}}function Gh(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,T0.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Pl.shouldUseRule)(n,s)&&tg(t,s.keyword,s.definition,e.type)})}function L0(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(F0(t,e),t.opts.allowUnionTypes||U0(t,e),V0(t,t.dataTypes))}function F0(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{eg(t.dataTypes,r)||Rl(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),G0(t,e)}}function U0(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Rl(t,"use allowUnionTypes to allow union type keyword")}function V0(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Pl.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>H0(e,i))&&Rl(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function H0(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function eg(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function G0(t,e){let r=[];for(let n of t.dataTypes)eg(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Rl(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Xt.checkStrictMode)(t,e,t.opts.strictTypes)}var bi=class{constructor(e,r,n){if((0,Mo.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Xt.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",rg(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Mo.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",G.default.errors))}result(e,r,n){this.failResult((0,D.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,D.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,D._)`${r} !== undefined && (${(0,D.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?Oo.reportExtraError:Oo.reportError)(this,this.def.error,r)}$dataError(){(0,Oo.reportError)(this,this.def.$dataError||Oo.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Oo.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=D.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=D.nil,r=D.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,D.or)((0,D._)`${o} === undefined`,r)),e!==D.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==D.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,D.or)(i(),a());function i(){if(n.length){if(!(r instanceof D.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,D._)`${(0,xi.checkDataTypes)(c,r,s.opts.strictNumbers,xi.DataType.Wrong)}`}return D.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,D._)`!${c}(${r})`}return D.nil}}subschema(e,r){let n=(0,El.getSubschema)(this.it,e);(0,El.extendSubschemaData)(n,this.it,e),(0,El.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return M0(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Xt.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Xt.mergeEvaluated.items(o,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:o}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return o.if(r,()=>this.mergeEvaluated(e,D.Name)),!0}};hr.KeywordCxt=bi;function tg(t,e,r,n){let o=new bi(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Mo.funcKeywordCode)(o,r):"macro"in r?(0,Mo.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Mo.funcKeywordCode)(o,r)}var W0=/^\/(?:[^~]|~0|~1)*$/,B0=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function rg(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return G.default.rootData;if(t[0]==="/"){if(!W0.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=G.default.rootData}else{let u=B0.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(o=u[2],o==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(s=r[e-l],!o)return s}let i=s,a=o.split("/");for(let u of a)u&&(s=(0,D._)`${s}${(0,D.getProperty)((0,Xt.unescapeJsonPointer)(u))}`,i=(0,D._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}hr.getData=rg});var wi=I(Ol=>{"use strict";Object.defineProperty(Ol,"__esModule",{value:!0});var Il=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Ol.default=Il});var Co=I(Cl=>{"use strict";Object.defineProperty(Cl,"__esModule",{value:!0});var Ml=Io(),Al=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,Ml.resolveUrl)(e,r,n),this.missingSchema=(0,Ml.normalizeId)((0,Ml.getFullPath)(e,this.missingRef))}};Cl.default=Al});var ki=I(yt=>{"use strict";Object.defineProperty(yt,"__esModule",{value:!0});yt.resolveSchema=yt.getCompilingSchema=yt.resolveRef=yt.compileSchema=yt.SchemaEnv=void 0;var St=J(),K0=wi(),Yr=Qt(),Tt=Io(),ng=ce(),J0=Ao(),On=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,Tt.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};yt.SchemaEnv=On;function jl(t){let e=og.call(this,t);if(e)return e;let r=(0,Tt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new St.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:K0.default,code:(0,St._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:Yr.default.data,parentData:Yr.default.parentData,parentDataProperty:Yr.default.parentDataProperty,dataNames:[Yr.default.data],dataPathArr:[St.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,St.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:St.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,St._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,J0.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(Yr.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let m=new Function(`${Yr.default.self}`,`${Yr.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:m}),m.errors=null,m.schema=t.schema,m.schemaEnv=t,t.$async&&(m.$async=!0),this.opts.code.source===!0&&(m.source={validateName:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:f,items:g}=u;m.evaluated={props:f instanceof St.Name?void 0:f,items:g instanceof St.Name?void 0:g,dynamicProps:f instanceof St.Name,dynamicItems:g instanceof St.Name},m.source&&(m.source.evaluated=(0,St.stringify)(m.evaluated))}return t.validate=m,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}yt.compileSchema=jl;function Q0(t,e,r){var n;r=(0,Tt.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=eS.call(this,t,r);if(s===void 0){let i=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:a}=this.opts;i&&(s=new On({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=X0.call(this,s)}yt.resolveRef=Q0;function X0(t){return(0,Tt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:jl.call(this,t)}function og(t){for(let e of this._compilations)if(Y0(e,t))return e}yt.getCompilingSchema=og;function Y0(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function eS(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||$i.call(this,t,e)}function $i(t,e){let r=this.opts.uriResolver.parse(e),n=(0,Tt._getFullPath)(this.opts.uriResolver,r),o=(0,Tt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return Nl.call(this,r,t);let s=(0,Tt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=$i.call(this,t,i);return typeof a?.schema!="object"?void 0:Nl.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||jl.call(this,i),s===(0,Tt.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,Tt.resolveUrl)(this.opts.uriResolver,o,u)),new On({schema:a,schemaId:c,root:t,baseId:o})}return Nl.call(this,r,i)}}yt.resolveSchema=$i;var tS=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Nl(t,{baseId:e,schema:r,root:n}){var o;if(((o=t.fragment)===null||o===void 0?void 0:o[0])!=="/")return;for(let a of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,ng.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!tS.has(a)&&u&&(e=(0,Tt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,ng.schemaHasRulesButRef)(r,this.RULES)){let a=(0,Tt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=$i.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new On({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var sg=I((yC,rS)=>{rS.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var Dl=I((_C,ug)=>{"use strict";var nS=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),ag=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function Zl(t){let e="",r=0,n=0;for(n=0;n<t.length;n++)if(r=t[n].charCodeAt(0),r!==48){if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n];break}for(n+=1;n<t.length;n++){if(r=t[n].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n]}return e}var oS=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function ig(t){return t.length=0,!0}function sS(t,e,r){if(t.length){let n=Zl(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function iS(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=sS;for(let c=0;c<t.length;c++){let u=t[c];if(!(u==="["||u==="]"))if(u===":"){if(s===!0&&(i=!0),!a(o,n,r))break;if(++e>7){r.error=!0;break}c>0&&t[c-1]===":"&&(s=!0),n.push(":");continue}else if(u==="%"){if(!a(o,n,r))break;a=ig}else{o.push(u);continue}}return o.length&&(a===ig?r.zone=o.join(""):i?n.push(o.join("")):n.push(Zl(o))),r.address=n.join(""),r}function cg(t){if(aS(t,":")<2)return{host:t,isIPV6:!1};let e=iS(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function aS(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function cS(t){let e=t,r=[],n=-1,o=0;for(;o=e.length;){if(o===1){if(e===".")break;if(e==="/"){r.push("/");break}else{r.push(e);break}}else if(o===2){if(e[0]==="."){if(e[1]===".")break;if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&(e[1]==="."||e[1]==="/")){r.push("/");break}}else if(o===3&&e==="/.."){r.length!==0&&r.pop(),r.push("/");break}if(e[0]==="."){if(e[1]==="."){if(e[2]==="/"){e=e.slice(3);continue}}else if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&e[1]==="."){if(e[2]==="/"){e=e.slice(2);continue}else if(e[2]==="."&&e[3]==="/"){e=e.slice(3),r.length!==0&&r.pop();continue}}if((n=e.indexOf("/",1))===-1){r.push(e);break}else r.push(e.slice(0,n)),e=e.slice(n)}return r.join("")}function uS(t,e){let r=e!==!0?escape:unescape;return t.scheme!==void 0&&(t.scheme=r(t.scheme)),t.userinfo!==void 0&&(t.userinfo=r(t.userinfo)),t.host!==void 0&&(t.host=r(t.host)),t.path!==void 0&&(t.path=r(t.path)),t.query!==void 0&&(t.query=r(t.query)),t.fragment!==void 0&&(t.fragment=r(t.fragment)),t}function lS(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!ag(r)){let n=cg(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=t.host}e.push(r)}return(typeof t.port=="number"||typeof t.port=="string")&&(e.push(":"),e.push(String(t.port))),e.length?e.join(""):void 0}ug.exports={nonSimpleDomain:oS,recomposeAuthority:lS,normalizeComponentEncoding:uS,removeDotSegments:cS,isIPv4:ag,isUUID:nS,normalizeIPv6:cg,stringArrayToHexStripped:Zl}});var mg=I((vC,fg)=>{"use strict";var{isUUID:dS}=Dl(),pS=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,fS=["http","https","ws","wss","urn","urn:uuid"];function mS(t){return fS.indexOf(t)!==-1}function ql(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function lg(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function dg(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function hS(t){return t.secure=ql(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function gS(t){if((t.port===(ql(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function yS(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(pS);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let o=`${n}:${e.nid||t.nid}`,s=Ll(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function _S(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),o=`${r}:${e.nid||n}`,s=Ll(o);s&&(t=s.serialize(t,e));let i=t,a=t.nss;return i.path=`${n||e.nid}:${a}`,e.skipEscape=!0,i}function vS(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!dS(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function xS(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var pg={scheme:"http",domainHost:!0,parse:lg,serialize:dg},bS={scheme:"https",domainHost:pg.domainHost,parse:lg,serialize:dg},Si={scheme:"ws",domainHost:!0,parse:hS,serialize:gS},wS={scheme:"wss",domainHost:Si.domainHost,parse:Si.parse,serialize:Si.serialize},$S={scheme:"urn",parse:yS,serialize:_S,skipNormalize:!0},kS={scheme:"urn:uuid",parse:vS,serialize:xS,skipNormalize:!0},Ti={http:pg,https:bS,ws:Si,wss:wS,urn:$S,"urn:uuid":kS};Object.setPrototypeOf(Ti,null);function Ll(t){return t&&(Ti[t]||Ti[t.toLowerCase()])||void 0}fg.exports={wsIsSecure:ql,SCHEMES:Ti,isValidSchemeName:mS,getSchemeHandler:Ll}});var yg=I((xC,Ei)=>{"use strict";var{normalizeIPv6:SS,removeDotSegments:No,recomposeAuthority:TS,normalizeComponentEncoding:zi,isIPv4:zS,nonSimpleDomain:ES}=Dl(),{SCHEMES:PS,getSchemeHandler:hg}=mg();function RS(t,e){return typeof t=="string"?t=Dt(Yt(t,e),e):typeof t=="object"&&(t=Yt(Dt(t,e),e)),t}function IS(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=gg(Yt(t,n),Yt(e,n),n,!0);return n.skipEscape=!0,Dt(o,n)}function gg(t,e,r,n){let o={};return n||(t=Yt(Dt(t,r),r),e=Yt(Dt(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(o.scheme=e.scheme,o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=No(e.path||""),o.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=No(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=No(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?o.path="/"+e.path:t.path?o.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:o.path=e.path,o.path=No(o.path)),o.query=e.query):(o.path=t.path,e.query!==void 0?o.query=e.query:o.query=t.query),o.userinfo=t.userinfo,o.host=t.host,o.port=t.port),o.scheme=t.scheme),o.fragment=e.fragment,o}function OS(t,e,r){return typeof t=="string"?(t=unescape(t),t=Dt(zi(Yt(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Dt(zi(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Dt(zi(Yt(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Dt(zi(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function Dt(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),o=[],s=hg(n.scheme||r.scheme);s&&s.serialize&&s.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&o.push(r.scheme,":");let i=TS(r);if(i!==void 0&&(n.reference!=="suffix"&&o.push("//"),o.push(i),r.path&&r.path[0]!=="/"&&o.push("/")),r.path!==void 0){let a=r.path;!n.absolutePath&&(!s||!s.absolutePath)&&(a=No(a)),i===void 0&&a[0]==="/"&&a[1]==="/"&&(a="/%2F"+a.slice(2)),o.push(a)}return r.query!==void 0&&o.push("?",r.query),r.fragment!==void 0&&o.push("#",r.fragment),o.join("")}var MS=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Yt(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},o=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let s=t.match(MS);if(s){if(n.scheme=s[1],n.userinfo=s[3],n.host=s[4],n.port=parseInt(s[5],10),n.path=s[6]||"",n.query=s[7],n.fragment=s[8],isNaN(n.port)&&(n.port=s[5]),n.host)if(zS(n.host)===!1){let c=SS(n.host);n.host=c.host.toLowerCase(),o=c.isIPV6}else o=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let i=hg(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&ES(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(a){n.error=n.error||"Host's domain name can not be converted to ASCII: "+a}(!i||i&&!i.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),i&&i.parse&&i.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var Fl={SCHEMES:PS,normalize:RS,resolve:IS,resolveComponent:gg,equal:OS,serialize:Dt,parse:Yt};Ei.exports=Fl;Ei.exports.default=Fl;Ei.exports.fastUri=Fl});var vg=I(Ul=>{"use strict";Object.defineProperty(Ul,"__esModule",{value:!0});var _g=yg();_g.code='require("ajv/dist/runtime/uri").default';Ul.default=_g});var zg=I(je=>{"use strict";Object.defineProperty(je,"__esModule",{value:!0});je.CodeGen=je.Name=je.nil=je.stringify=je.str=je._=je.KeywordCxt=void 0;var AS=Ao();Object.defineProperty(je,"KeywordCxt",{enumerable:!0,get:function(){return AS.KeywordCxt}});var Mn=J();Object.defineProperty(je,"_",{enumerable:!0,get:function(){return Mn._}});Object.defineProperty(je,"str",{enumerable:!0,get:function(){return Mn.str}});Object.defineProperty(je,"stringify",{enumerable:!0,get:function(){return Mn.stringify}});Object.defineProperty(je,"nil",{enumerable:!0,get:function(){return Mn.nil}});Object.defineProperty(je,"Name",{enumerable:!0,get:function(){return Mn.Name}});Object.defineProperty(je,"CodeGen",{enumerable:!0,get:function(){return Mn.CodeGen}});var CS=wi(),kg=Co(),NS=_l(),jo=ki(),jS=J(),Zo=Io(),Pi=Ro(),Hl=ce(),xg=sg(),ZS=vg(),Sg=(t,e)=>new RegExp(t,e);Sg.code="new RegExp";var DS=["removeAdditional","useDefaults","coerceTypes"],qS=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),LS={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},FS={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},bg=200;function US(t){var e,r,n,o,s,i,a,c,u,l,d,p,m,f,g,h,y,v,x,b,_,z,q,j,R;let C=t.strict,F=(e=t.code)===null||e===void 0?void 0:e.optimize,ee=F===!0||F===void 0?1:F||0,P=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Sg,te=(o=t.uriResolver)!==null&&o!==void 0?o:ZS.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:C)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:C)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:C)!==null&&l!==void 0?l:"log",strictTuples:(p=(d=t.strictTuples)!==null&&d!==void 0?d:C)!==null&&p!==void 0?p:"log",strictRequired:(f=(m=t.strictRequired)!==null&&m!==void 0?m:C)!==null&&f!==void 0?f:!1,code:t.code?{...t.code,optimize:ee,regExp:P}:{optimize:ee,regExp:P},loopRequired:(g=t.loopRequired)!==null&&g!==void 0?g:bg,loopEnum:(h=t.loopEnum)!==null&&h!==void 0?h:bg,meta:(y=t.meta)!==null&&y!==void 0?y:!0,messages:(v=t.messages)!==null&&v!==void 0?v:!0,inlineRefs:(x=t.inlineRefs)!==null&&x!==void 0?x:!0,schemaId:(b=t.schemaId)!==null&&b!==void 0?b:"$id",addUsedSchema:(_=t.addUsedSchema)!==null&&_!==void 0?_:!0,validateSchema:(z=t.validateSchema)!==null&&z!==void 0?z:!0,validateFormats:(q=t.validateFormats)!==null&&q!==void 0?q:!0,unicodeRegExp:(j=t.unicodeRegExp)!==null&&j!==void 0?j:!0,int32range:(R=t.int32range)!==null&&R!==void 0?R:!0,uriResolver:te}}var Do=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...US(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new jS.ValueScope({scope:{},prefixes:qS,es5:r,lines:n}),this.logger=KS(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,NS.getRules)(),wg.call(this,LS,e,"NOT SUPPORTED"),wg.call(this,FS,e,"DEPRECATED","warn"),this._metaOpts=WS.call(this),e.formats&&HS.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&GS.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),VS.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=xg;n==="id"&&(o={...xg},o.id=o.$id,delete o.$id),r&&e&&this.addMetaSchema(o,o[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let o=n(r);return"$async"in n||(this.errors=n.errors),o}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return o.call(this,e,r);async function o(l,d){await s.call(this,l.$schema);let p=this._addSchema(l,d);return p.validate||i.call(this,p)}async function s(l){l&&!this.getSchema(l)&&await o.call(this,{$ref:l},!0)}async function i(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof kg.default))throw d;return a.call(this,d),await c.call(this,d.missingSchema),i.call(this,l)}}function a({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await s.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(e,r,n,o=this.opts.validateSchema){if(Array.isArray(e)){for(let i of e)this.addSchema(i,void 0,n,o);return this}let s;if(typeof e=="object"){let{schemaId:i}=this.opts;if(s=e[i],s!==void 0&&typeof s!="string")throw new Error(`schema ${i} must be string`)}return r=(0,Zo.normalizeId)(r||s),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,o,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let o=this.validate(n,e);if(!o&&r){let s="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(s);else throw new Error(s)}return o}getSchema(e){let r;for(;typeof(r=$g.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new jo.SchemaEnv({schema:{},schemaId:n});if(r=jo.resolveSchema.call(this,o,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=$g.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,Zo.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(QS.call(this,n,r),!r)return(0,Hl.eachItem)(n,s=>Vl.call(this,s)),this;YS.call(this,r);let o={...r,type:(0,Pi.getJSONTypes)(r.type),schemaType:(0,Pi.getJSONTypes)(r.schemaType)};return(0,Hl.eachItem)(n,o.type.length===0?s=>Vl.call(this,s,o):s=>o.type.forEach(i=>Vl.call(this,s,o,i))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let o=n.rules.findIndex(s=>s.keyword===e);o>=0&&n.rules.splice(o,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(o=>`${n}${o.instancePath} ${o.message}`).reduce((o,s)=>o+r+s)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let o of r){let s=o.split("/").slice(1),i=e;for(let a of s)i=i[a];for(let a in n){let c=n[a];if(typeof c!="object")continue;let{$data:u}=c.definition,l=i[a];u&&l&&(i[a]=Tg(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let o=e[n];(!r||r.test(n))&&(typeof o=="string"?delete e[n]:o&&!o.meta&&(this._cache.delete(o.schema),delete e[n]))}}_addSchema(e,r,n,o=this.opts.validateSchema,s=this.opts.addUsedSchema){let i,{schemaId:a}=this.opts;if(typeof e=="object")i=e[a];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,Zo.normalizeId)(i||n);let u=Zo.getSchemaRefs.call(this,e,n);return c=new jo.SchemaEnv({schema:e,schemaId:a,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),s&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),o&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):jo.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{jo.compileSchema.call(this,e)}finally{this.opts=r}}};Do.ValidationError=CS.default;Do.MissingRefError=kg.default;je.default=Do;function wg(t,e,r,n="error"){for(let o in t){let s=o;s in e&&this.logger[n](`${r}: option ${o}. ${t[s]}`)}}function $g(t){return t=(0,Zo.normalizeId)(t),this.schemas[t]||this.refs[t]}function VS(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function HS(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function GS(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function WS(){let t={...this.opts};for(let e of DS)delete t[e];return t}var BS={log(){},warn(){},error(){}};function KS(t){if(t===!1)return BS;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var JS=/^[a-z_$][a-z0-9_$:-]*$/i;function QS(t,e){let{RULES:r}=this;if((0,Hl.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!JS.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function Vl(t,e,r){var n;let o=e?.post;if(r&&o)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:s}=this,i=o?s.post:s.rules.find(({type:c})=>c===r);if(i||(i={type:r,rules:[]},s.rules.push(i)),s.keywords[t]=!0,!e)return;let a={keyword:t,definition:{...e,type:(0,Pi.getJSONTypes)(e.type),schemaType:(0,Pi.getJSONTypes)(e.schemaType)}};e.before?XS.call(this,i,a,e.before):i.rules.push(a),s.all[t]=a,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function XS(t,e,r){let n=t.rules.findIndex(o=>o.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function YS(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=Tg(e)),t.validateSchema=this.compile(e,!0))}var eT={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Tg(t){return{anyOf:[t,eT]}}});var Eg=I(Gl=>{"use strict";Object.defineProperty(Gl,"__esModule",{value:!0});var tT={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Gl.default=tT});var Og=I(en=>{"use strict";Object.defineProperty(en,"__esModule",{value:!0});en.callRef=en.getValidate=void 0;var rT=Co(),Pg=gt(),nt=J(),An=Qt(),Rg=ki(),Ri=ce(),nT={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:o,schemaEnv:s,validateName:i,opts:a,self:c}=n,{root:u}=s;if((r==="#"||r==="#/")&&o===u.baseId)return d();let l=Rg.resolveRef.call(c,u,o,r);if(l===void 0)throw new rT.default(n.opts.uriResolver,o,r);if(l instanceof Rg.SchemaEnv)return p(l);return m(l);function d(){if(s===u)return Ii(t,i,s,s.$async);let f=e.scopeValue("root",{ref:u});return Ii(t,(0,nt._)`${f}.validate`,u,u.$async)}function p(f){let g=Ig(t,f);Ii(t,g,f,f.$async)}function m(f){let g=e.scopeValue("schema",a.code.source===!0?{ref:f,code:(0,nt.stringify)(f)}:{ref:f}),h=e.name("valid"),y=t.subschema({schema:f,dataTypes:[],schemaPath:nt.nil,topSchemaRef:g,errSchemaPath:r},h);t.mergeEvaluated(y),t.ok(h)}}};function Ig(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,nt._)`${r.scopeValue("wrapper",{ref:e})}.validate`}en.getValidate=Ig;function Ii(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?An.default.this:nt.nil;n?l():d();function l(){if(!a.$async)throw new Error("async schema referenced by sync schema");let f=o.let("valid");o.try(()=>{o.code((0,nt._)`await ${(0,Pg.callValidateCode)(t,e,u)}`),m(e),i||o.assign(f,!0)},g=>{o.if((0,nt._)`!(${g} instanceof ${s.ValidationError})`,()=>o.throw(g)),p(g),i||o.assign(f,!1)}),t.ok(f)}function d(){t.result((0,Pg.callValidateCode)(t,e,u),()=>m(e),()=>p(e))}function p(f){let g=(0,nt._)`${f}.errors`;o.assign(An.default.vErrors,(0,nt._)`${An.default.vErrors} === null ? ${g} : ${An.default.vErrors}.concat(${g})`),o.assign(An.default.errors,(0,nt._)`${An.default.vErrors}.length`)}function m(f){var g;if(!s.opts.unevaluated)return;let h=(g=r?.validate)===null||g===void 0?void 0:g.evaluated;if(s.props!==!0)if(h&&!h.dynamicProps)h.props!==void 0&&(s.props=Ri.mergeEvaluated.props(o,h.props,s.props));else{let y=o.var("props",(0,nt._)`${f}.evaluated.props`);s.props=Ri.mergeEvaluated.props(o,y,s.props,nt.Name)}if(s.items!==!0)if(h&&!h.dynamicItems)h.items!==void 0&&(s.items=Ri.mergeEvaluated.items(o,h.items,s.items));else{let y=o.var("items",(0,nt._)`${f}.evaluated.items`);s.items=Ri.mergeEvaluated.items(o,y,s.items,nt.Name)}}}en.callRef=Ii;en.default=nT});var Mg=I(Wl=>{"use strict";Object.defineProperty(Wl,"__esModule",{value:!0});var oT=Eg(),sT=Og(),iT=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",oT.default,sT.default];Wl.default=iT});var Ag=I(Bl=>{"use strict";Object.defineProperty(Bl,"__esModule",{value:!0});var Oi=J(),gr=Oi.operators,Mi={maximum:{okStr:"<=",ok:gr.LTE,fail:gr.GT},minimum:{okStr:">=",ok:gr.GTE,fail:gr.LT},exclusiveMaximum:{okStr:"<",ok:gr.LT,fail:gr.GTE},exclusiveMinimum:{okStr:">",ok:gr.GT,fail:gr.LTE}},aT={message:({keyword:t,schemaCode:e})=>(0,Oi.str)`must be ${Mi[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Oi._)`{comparison: ${Mi[t].okStr}, limit: ${e}}`},cT={keyword:Object.keys(Mi),type:"number",schemaType:"number",$data:!0,error:aT,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Oi._)`${r} ${Mi[e].fail} ${n} || isNaN(${r})`)}};Bl.default=cT});var Cg=I(Kl=>{"use strict";Object.defineProperty(Kl,"__esModule",{value:!0});var qo=J(),uT={message:({schemaCode:t})=>(0,qo.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,qo._)`{multipleOf: ${t}}`},lT={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:uT,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,qo._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,qo._)`${i} !== parseInt(${i})`;t.fail$data((0,qo._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};Kl.default=lT});var jg=I(Jl=>{"use strict";Object.defineProperty(Jl,"__esModule",{value:!0});function Ng(t){let e=t.length,r=0,n=0,o;for(;n<e;)r++,o=t.charCodeAt(n++),o>=55296&&o<=56319&&n<e&&(o=t.charCodeAt(n),(o&64512)===56320&&n++);return r}Jl.default=Ng;Ng.code='require("ajv/dist/runtime/ucs2length").default'});var Zg=I(Ql=>{"use strict";Object.defineProperty(Ql,"__esModule",{value:!0});var tn=J(),dT=ce(),pT=jg(),fT={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,tn.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,tn._)`{limit: ${t}}`},mT={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:fT,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?tn.operators.GT:tn.operators.LT,i=o.opts.unicode===!1?(0,tn._)`${r}.length`:(0,tn._)`${(0,dT.useFunc)(t.gen,pT.default)}(${r})`;t.fail$data((0,tn._)`${i} ${s} ${n}`)}};Ql.default=mT});var Dg=I(Xl=>{"use strict";Object.defineProperty(Xl,"__esModule",{value:!0});var hT=gt(),Ai=J(),gT={message:({schemaCode:t})=>(0,Ai.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Ai._)`{pattern: ${t}}`},yT={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:gT,code(t){let{data:e,$data:r,schema:n,schemaCode:o,it:s}=t,i=s.opts.unicodeRegExp?"u":"",a=r?(0,Ai._)`(new RegExp(${o}, ${i}))`:(0,hT.usePattern)(t,n);t.fail$data((0,Ai._)`!${a}.test(${e})`)}};Xl.default=yT});var qg=I(Yl=>{"use strict";Object.defineProperty(Yl,"__esModule",{value:!0});var Lo=J(),_T={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,Lo.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,Lo._)`{limit: ${t}}`},vT={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:_T,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?Lo.operators.GT:Lo.operators.LT;t.fail$data((0,Lo._)`Object.keys(${r}).length ${o} ${n}`)}};Yl.default=vT});var Lg=I(ed=>{"use strict";Object.defineProperty(ed,"__esModule",{value:!0});var Fo=gt(),Uo=J(),xT=ce(),bT={message:({params:{missingProperty:t}})=>(0,Uo.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,Uo._)`{missingProperty: ${t}}`},wT={keyword:"required",type:"object",schemaType:"array",$data:!0,error:bT,code(t){let{gen:e,schema:r,schemaCode:n,data:o,$data:s,it:i}=t,{opts:a}=i;if(!s&&r.length===0)return;let c=r.length>=a.loopRequired;if(i.allErrors?u():l(),a.strictRequired){let m=t.parentSchema.properties,{definedProperties:f}=t.it;for(let g of r)if(m?.[g]===void 0&&!f.has(g)){let h=i.schemaEnv.baseId+i.errSchemaPath,y=`required property "${g}" is not defined at "${h}" (strictRequired)`;(0,xT.checkStrictMode)(i,y,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(Uo.nil,d);else for(let m of r)(0,Fo.checkReportMissingProp)(t,m)}function l(){let m=e.let("missing");if(c||s){let f=e.let("valid",!0);t.block$data(f,()=>p(m,f)),t.ok(f)}else e.if((0,Fo.checkMissingProp)(t,r,m)),(0,Fo.reportMissingProp)(t,m),e.else()}function d(){e.forOf("prop",n,m=>{t.setParams({missingProperty:m}),e.if((0,Fo.noPropertyInData)(e,o,m,a.ownProperties),()=>t.error())})}function p(m,f){t.setParams({missingProperty:m}),e.forOf(m,n,()=>{e.assign(f,(0,Fo.propertyInData)(e,o,m,a.ownProperties)),e.if((0,Uo.not)(f),()=>{t.error(),e.break()})},Uo.nil)}}};ed.default=wT});var Fg=I(td=>{"use strict";Object.defineProperty(td,"__esModule",{value:!0});var Vo=J(),$T={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,Vo.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,Vo._)`{limit: ${t}}`},kT={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:$T,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?Vo.operators.GT:Vo.operators.LT;t.fail$data((0,Vo._)`${r}.length ${o} ${n}`)}};td.default=kT});var Ci=I(rd=>{"use strict";Object.defineProperty(rd,"__esModule",{value:!0});var Ug=Tl();Ug.code='require("ajv/dist/runtime/equal").default';rd.default=Ug});var Vg=I(od=>{"use strict";Object.defineProperty(od,"__esModule",{value:!0});var nd=Ro(),Ze=J(),ST=ce(),TT=Ci(),zT={message:({params:{i:t,j:e}})=>(0,Ze.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Ze._)`{i: ${t}, j: ${e}}`},ET={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:zT,code(t){let{gen:e,data:r,$data:n,schema:o,parentSchema:s,schemaCode:i,it:a}=t;if(!n&&!o)return;let c=e.let("valid"),u=s.items?(0,nd.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,Ze._)`${i} === false`),t.ok(c);function l(){let f=e.let("i",(0,Ze._)`${r}.length`),g=e.let("j");t.setParams({i:f,j:g}),e.assign(c,!0),e.if((0,Ze._)`${f} > 1`,()=>(d()?p:m)(f,g))}function d(){return u.length>0&&!u.some(f=>f==="object"||f==="array")}function p(f,g){let h=e.name("item"),y=(0,nd.checkDataTypes)(u,h,a.opts.strictNumbers,nd.DataType.Wrong),v=e.const("indices",(0,Ze._)`{}`);e.for((0,Ze._)`;${f}--;`,()=>{e.let(h,(0,Ze._)`${r}[${f}]`),e.if(y,(0,Ze._)`continue`),u.length>1&&e.if((0,Ze._)`typeof ${h} == "string"`,(0,Ze._)`${h} += "_"`),e.if((0,Ze._)`typeof ${v}[${h}] == "number"`,()=>{e.assign(g,(0,Ze._)`${v}[${h}]`),t.error(),e.assign(c,!1).break()}).code((0,Ze._)`${v}[${h}] = ${f}`)})}function m(f,g){let h=(0,ST.useFunc)(e,TT.default),y=e.name("outer");e.label(y).for((0,Ze._)`;${f}--;`,()=>e.for((0,Ze._)`${g} = ${f}; ${g}--;`,()=>e.if((0,Ze._)`${h}(${r}[${f}], ${r}[${g}])`,()=>{t.error(),e.assign(c,!1).break(y)})))}}};od.default=ET});var Hg=I(id=>{"use strict";Object.defineProperty(id,"__esModule",{value:!0});var sd=J(),PT=ce(),RT=Ci(),IT={message:"must be equal to constant",params:({schemaCode:t})=>(0,sd._)`{allowedValue: ${t}}`},OT={keyword:"const",$data:!0,error:IT,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,sd._)`!${(0,PT.useFunc)(e,RT.default)}(${r}, ${o})`):t.fail((0,sd._)`${s} !== ${r}`)}};id.default=OT});var Gg=I(ad=>{"use strict";Object.defineProperty(ad,"__esModule",{value:!0});var Ho=J(),MT=ce(),AT=Ci(),CT={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Ho._)`{allowedValues: ${t}}`},NT={keyword:"enum",schemaType:"array",$data:!0,error:CT,code(t){let{gen:e,data:r,$data:n,schema:o,schemaCode:s,it:i}=t;if(!n&&o.length===0)throw new Error("enum must have non-empty array");let a=o.length>=i.opts.loopEnum,c,u=()=>c??(c=(0,MT.useFunc)(e,AT.default)),l;if(a||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(o))throw new Error("ajv implementation error");let m=e.const("vSchema",s);l=(0,Ho.or)(...o.map((f,g)=>p(m,g)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,m=>e.if((0,Ho._)`${u()}(${r}, ${m})`,()=>e.assign(l,!0).break()))}function p(m,f){let g=o[f];return typeof g=="object"&&g!==null?(0,Ho._)`${u()}(${r}, ${m}[${f}])`:(0,Ho._)`${r} === ${g}`}}};ad.default=NT});var Wg=I(cd=>{"use strict";Object.defineProperty(cd,"__esModule",{value:!0});var jT=Ag(),ZT=Cg(),DT=Zg(),qT=Dg(),LT=qg(),FT=Lg(),UT=Fg(),VT=Vg(),HT=Hg(),GT=Gg(),WT=[jT.default,ZT.default,DT.default,qT.default,LT.default,FT.default,UT.default,VT.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},HT.default,GT.default];cd.default=WT});var ld=I(Go=>{"use strict";Object.defineProperty(Go,"__esModule",{value:!0});Go.validateAdditionalItems=void 0;var rn=J(),ud=ce(),BT={message:({params:{len:t}})=>(0,rn.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,rn._)`{limit: ${t}}`},KT={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:BT,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,ud.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}Bg(t,n)}};function Bg(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,rn._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,rn._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,ud.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,rn._)`${a} <= ${e.length}`);r.if((0,rn.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:ud.Type.Num},u),i.allErrors||r.if((0,rn.not)(u),()=>r.break())})}}Go.validateAdditionalItems=Bg;Go.default=KT});var dd=I(Wo=>{"use strict";Object.defineProperty(Wo,"__esModule",{value:!0});Wo.validateTuple=void 0;var Kg=J(),Ni=ce(),JT=gt(),QT={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return Jg(t,"additionalItems",e);r.items=!0,!(0,Ni.alwaysValidSchema)(r,e)&&t.ok((0,JT.validateArray)(t))}};function Jg(t,e,r=t.schema){let{gen:n,parentSchema:o,data:s,keyword:i,it:a}=t;l(o),a.opts.unevaluated&&r.length&&a.items!==!0&&(a.items=Ni.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,Kg._)`${s}.length`);r.forEach((d,p)=>{(0,Ni.alwaysValidSchema)(a,d)||(n.if((0,Kg._)`${u} > ${p}`,()=>t.subschema({keyword:i,schemaProp:p,dataProp:p},c)),t.ok(c))});function l(d){let{opts:p,errSchemaPath:m}=a,f=r.length,g=f===d.minItems&&(f===d.maxItems||d[e]===!1);if(p.strictTuples&&!g){let h=`"${i}" is ${f}-tuple, but minItems or maxItems/${e} are not specified or different at path "${m}"`;(0,Ni.checkStrictMode)(a,h,p.strictTuples)}}}Wo.validateTuple=Jg;Wo.default=QT});var Qg=I(pd=>{"use strict";Object.defineProperty(pd,"__esModule",{value:!0});var XT=dd(),YT={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,XT.validateTuple)(t,"items")};pd.default=YT});var Yg=I(fd=>{"use strict";Object.defineProperty(fd,"__esModule",{value:!0});var Xg=J(),ez=ce(),tz=gt(),rz=ld(),nz={message:({params:{len:t}})=>(0,Xg.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Xg._)`{limit: ${t}}`},oz={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:nz,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,ez.alwaysValidSchema)(n,e)&&(o?(0,rz.validateAdditionalItems)(t,o):t.ok((0,tz.validateArray)(t)))}};fd.default=oz});var ey=I(md=>{"use strict";Object.defineProperty(md,"__esModule",{value:!0});var _t=J(),ji=ce(),sz={message:({params:{min:t,max:e}})=>e===void 0?(0,_t.str)`must contain at least ${t} valid item(s)`:(0,_t.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,_t._)`{minContains: ${t}}`:(0,_t._)`{minContains: ${t}, maxContains: ${e}}`},iz={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:sz,code(t){let{gen:e,schema:r,parentSchema:n,data:o,it:s}=t,i,a,{minContains:c,maxContains:u}=n;s.opts.next?(i=c===void 0?1:c,a=u):i=1;let l=e.const("len",(0,_t._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,ji.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,ji.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,ji.alwaysValidSchema)(s,r)){let g=(0,_t._)`${l} >= ${i}`;a!==void 0&&(g=(0,_t._)`${g} && ${l} <= ${a}`),t.pass(g);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?m(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,_t._)`${o}.length > 0`,p)):(e.let(d,!1),p()),t.result(d,()=>t.reset());function p(){let g=e.name("_valid"),h=e.let("count",0);m(g,()=>e.if(g,()=>f(h)))}function m(g,h){e.forRange("i",0,l,y=>{t.subschema({keyword:"contains",dataProp:y,dataPropType:ji.Type.Num,compositeRule:!0},g),h()})}function f(g){e.code((0,_t._)`${g}++`),a===void 0?e.if((0,_t._)`${g} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,_t._)`${g} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,_t._)`${g} >= ${i}`,()=>e.assign(d,!0)))}}};md.default=iz});var ny=I(qt=>{"use strict";Object.defineProperty(qt,"__esModule",{value:!0});qt.validateSchemaDeps=qt.validatePropertyDeps=qt.error=void 0;var hd=J(),az=ce(),Bo=gt();qt.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,hd.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,hd._)`{property: ${t},
2
+ "use strict";var Q_=Object.create;var ys=Object.defineProperty;var X_=Object.getOwnPropertyDescriptor;var Y_=Object.getOwnPropertyNames;var ev=Object.getPrototypeOf,tv=Object.prototype.hasOwnProperty;var I=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),_s=(t,e)=>{for(var r in e)ys(t,r,{get:e[r],enumerable:!0})},wp=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Y_(e))!tv.call(t,o)&&o!==r&&ys(t,o,{get:()=>e[o],enumerable:!(n=X_(e,o))||n.enumerable});return t};var no=(t,e,r)=>(r=t!=null?Q_(ev(t)):{},wp(e||!t||!t.__esModule?ys(r,"default",{value:t,enumerable:!0}):r,t)),rv=t=>wp(ys({},"__esModule",{value:!0}),t);var Ao=I(ae=>{"use strict";Object.defineProperty(ae,"__esModule",{value:!0});ae.regexpCode=ae.getEsmExportName=ae.getProperty=ae.safeStringify=ae.stringify=ae.strConcat=ae.addCodeArg=ae.str=ae._=ae.nil=ae._Code=ae.Name=ae.IDENTIFIER=ae._CodeOrName=void 0;var Oo=class{};ae._CodeOrName=Oo;ae.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var nn=class extends Oo{constructor(e){if(super(),!ae.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};ae.Name=nn;var wt=class extends Oo{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof nn&&(r[n.str]=(r[n.str]||0)+1),r),{})}};ae._Code=wt;ae.nil=new wt("");function _h(t,...e){let r=[t[0]],n=0;for(;n<e.length;)cl(r,e[n]),r.push(t[++n]);return new wt(r)}ae._=_h;var al=new wt("+");function vh(t,...e){let r=[Mo(t[0])],n=0;for(;n<e.length;)r.push(al),cl(r,e[n]),r.push(al,Mo(t[++n]));return rk(r),new wt(r)}ae.str=vh;function cl(t,e){e instanceof wt?t.push(...e._items):e instanceof nn?t.push(e):t.push(sk(e))}ae.addCodeArg=cl;function rk(t){let e=1;for(;e<t.length-1;){if(t[e]===al){let r=nk(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function nk(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof nn||t[t.length-1]!=='"'?void 0:typeof e!="string"?`${t.slice(0,-1)}${e}"`:e[0]==='"'?t.slice(0,-1)+e.slice(1):void 0;if(typeof e=="string"&&e[0]==='"'&&!(t instanceof nn))return`"${t}${e.slice(1)}`}function ok(t,e){return e.emptyStr()?t:t.emptyStr()?e:vh`${t}${e}`}ae.strConcat=ok;function sk(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Mo(Array.isArray(t)?t.join(","):t)}function ik(t){return new wt(Mo(t))}ae.stringify=ik;function Mo(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}ae.safeStringify=Mo;function ak(t){return typeof t=="string"&&ae.IDENTIFIER.test(t)?new wt(`.${t}`):_h`[${t}]`}ae.getProperty=ak;function ck(t){if(typeof t=="string"&&ae.IDENTIFIER.test(t))return new wt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}ae.getEsmExportName=ck;function uk(t){return new wt(t.toString())}ae.regexpCode=uk});var dl=I(it=>{"use strict";Object.defineProperty(it,"__esModule",{value:!0});it.ValueScope=it.ValueScopeName=it.Scope=it.varKinds=it.UsedValueState=void 0;var st=Ao(),ul=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},xi;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(xi||(it.UsedValueState=xi={}));it.varKinds={const:new st.Name("const"),let:new st.Name("let"),var:new st.Name("var")};var bi=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof st.Name?e:this.name(e)}name(e){return new st.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};it.Scope=bi;var wi=class extends st.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,st._)`.${new st.Name(r)}[${n}]`}};it.ValueScopeName=wi;var lk=(0,st._)`\n`,ll=class extends bi{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?lk:st.nil}}get(){return this._scope}name(e){return new wi(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let o=this.toName(e),{prefix:s}=o,i=(n=r.key)!==null&&n!==void 0?n:r.ref,a=this._values[s];if(a){let l=a.get(i);if(l)return l}else a=this._values[s]=new Map;a.set(i,o);let c=this._scope[s]||(this._scope[s]=[]),u=c.length;return c[u]=r.ref,o.setValue(r,{property:s,itemIndex:u}),o}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,st._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,o=>{if(o.value===void 0)throw new Error(`CodeGen: name "${o}" has no value`);return o.value.code},r,n)}_reduceValues(e,r,n={},o){let s=st.nil;for(let i in e){let a=e[i];if(!a)continue;let c=n[i]=n[i]||new Map;a.forEach(u=>{if(c.has(u))return;c.set(u,xi.Started);let l=r(u);if(l){let d=this.opts.es5?it.varKinds.var:it.varKinds.const;s=(0,st._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,st._)`${s}${l}${this.opts._n}`;else throw new ul(u);c.set(u,xi.Completed)})}return s}};it.ValueScope=ll});var X=I(Y=>{"use strict";Object.defineProperty(Y,"__esModule",{value:!0});Y.or=Y.and=Y.not=Y.CodeGen=Y.operators=Y.varKinds=Y.ValueScopeName=Y.ValueScope=Y.Scope=Y.Name=Y.regexpCode=Y.stringify=Y.getProperty=Y.nil=Y.strConcat=Y.str=Y._=void 0;var se=Ao(),Ot=dl(),br=Ao();Object.defineProperty(Y,"_",{enumerable:!0,get:function(){return br._}});Object.defineProperty(Y,"str",{enumerable:!0,get:function(){return br.str}});Object.defineProperty(Y,"strConcat",{enumerable:!0,get:function(){return br.strConcat}});Object.defineProperty(Y,"nil",{enumerable:!0,get:function(){return br.nil}});Object.defineProperty(Y,"getProperty",{enumerable:!0,get:function(){return br.getProperty}});Object.defineProperty(Y,"stringify",{enumerable:!0,get:function(){return br.stringify}});Object.defineProperty(Y,"regexpCode",{enumerable:!0,get:function(){return br.regexpCode}});Object.defineProperty(Y,"Name",{enumerable:!0,get:function(){return br.Name}});var Ti=dl();Object.defineProperty(Y,"Scope",{enumerable:!0,get:function(){return Ti.Scope}});Object.defineProperty(Y,"ValueScope",{enumerable:!0,get:function(){return Ti.ValueScope}});Object.defineProperty(Y,"ValueScopeName",{enumerable:!0,get:function(){return Ti.ValueScopeName}});Object.defineProperty(Y,"varKinds",{enumerable:!0,get:function(){return Ti.varKinds}});Y.operators={GT:new se._Code(">"),GTE:new se._Code(">="),LT:new se._Code("<"),LTE:new se._Code("<="),EQ:new se._Code("==="),NEQ:new se._Code("!=="),NOT:new se._Code("!"),OR:new se._Code("||"),AND:new se._Code("&&"),ADD:new se._Code("+")};var sr=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},pl=class extends sr{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Ot.varKinds.var:this.varKind,o=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${o};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=Nn(this.rhs,e,r)),this}get names(){return this.rhs instanceof se._CodeOrName?this.rhs.names:{}}},$i=class extends sr{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof se.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=Nn(this.rhs,e,r),this}get names(){let e=this.lhs instanceof se.Name?{}:{...this.lhs.names};return Si(e,this.rhs)}},fl=class extends $i{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},ml=class extends sr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},hl=class extends sr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},gl=class extends sr{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},yl=class extends sr{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=Nn(this.code,e,r),this}get names(){return this.code instanceof se._CodeOrName?this.code.names:{}}},Co=class extends sr{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,o=n.length;for(;o--;){let s=n[o];s.optimizeNames(e,r)||(dk(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>an(e,r.names),{})}},ir=class extends Co{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},_l=class extends Co{},Cn=class extends ir{};Cn.kind="else";var on=class t extends ir{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new Cn(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(xh(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=Nn(this.condition,e,r),this}get names(){let e=super.names;return Si(e,this.condition),this.else&&an(e,this.else.names),e}};on.kind="if";var sn=class extends ir{};sn.kind="for";var vl=class extends sn{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=Nn(this.iteration,e,r),this}get names(){return an(super.names,this.iteration.names)}},xl=class extends sn{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?Ot.varKinds.var:this.varKind,{name:n,from:o,to:s}=this;return`for(${r} ${n}=${o}; ${n}<${s}; ${n}++)`+super.render(e)}get names(){let e=Si(super.names,this.from);return Si(e,this.to)}},ki=class extends sn{constructor(e,r,n,o){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=o}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=Nn(this.iterable,e,r),this}get names(){return an(super.names,this.iterable.names)}},No=class extends ir{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};No.kind="func";var jo=class extends Co{render(e){return"return "+super.render(e)}};jo.kind="return";var bl=class extends ir{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,o;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(o=this.finally)===null||o===void 0||o.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&an(e,this.catch.names),this.finally&&an(e,this.finally.names),e}},Zo=class extends ir{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Zo.kind="catch";var Do=class extends ir{render(e){return"finally"+super.render(e)}};Do.kind="finally";var wl=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
3
+ `:""},this._extScope=e,this._scope=new Ot.Scope({parent:e}),this._nodes=[new _l]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,o){let s=this._scope.toName(r);return n!==void 0&&o&&(this._constants[s.str]=n),this._leafNode(new pl(e,s,n)),s}const(e,r,n){return this._def(Ot.varKinds.const,e,r,n)}let(e,r,n){return this._def(Ot.varKinds.let,e,r,n)}var(e,r,n){return this._def(Ot.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new $i(e,r,n))}add(e,r){return this._leafNode(new fl(e,Y.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==se.nil&&this._leafNode(new yl(e)),this}object(...e){let r=["{"];for(let[n,o]of e)r.length>1&&r.push(","),r.push(n),(n!==o||this.opts.es5)&&(r.push(":"),(0,se.addCodeArg)(r,o));return r.push("}"),new se._Code(r)}if(e,r,n){if(this._blockNode(new on(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new on(e))}else(){return this._elseNode(new Cn)}endIf(){return this._endBlockNode(on,Cn)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new vl(e),r)}forRange(e,r,n,o,s=this.opts.es5?Ot.varKinds.var:Ot.varKinds.let){let i=this._scope.toName(e);return this._for(new xl(s,i,r,n),()=>o(i))}forOf(e,r,n,o=Ot.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof se.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,se._)`${i}.length`,a=>{this.var(s,(0,se._)`${i}[${a}]`),n(s)})}return this._for(new ki("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?Ot.varKinds.var:Ot.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,se._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new ki("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(sn)}label(e){return this._leafNode(new ml(e))}break(e){return this._leafNode(new hl(e))}return(e){let r=new jo;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(jo)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new bl;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new Zo(s),r(s)}return n&&(this._currNode=o.finally=new Do,this.code(n)),this._endBlockNode(Zo,Do)}throw(e){return this._leafNode(new gl(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=se.nil,n,o){return this._blockNode(new No(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(No)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof on))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};Y.CodeGen=wl;function an(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Si(t,e){return e instanceof se._CodeOrName?an(t,e.names):t}function Nn(t,e,r){if(t instanceof se.Name)return n(t);if(!o(t))return t;return new se._Code(t._items.reduce((s,i)=>(i instanceof se.Name&&(i=n(i)),i instanceof se._Code?s.push(...i._items):s.push(i),s),[]));function n(s){let i=r[s.str];return i===void 0||e[s.str]!==1?s:(delete e[s.str],i)}function o(s){return s instanceof se._Code&&s._items.some(i=>i instanceof se.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function dk(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function xh(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,se._)`!${$l(t)}`}Y.not=xh;var pk=bh(Y.operators.AND);function fk(...t){return t.reduce(pk)}Y.and=fk;var mk=bh(Y.operators.OR);function hk(...t){return t.reduce(mk)}Y.or=hk;function bh(t){return(e,r)=>e===se.nil?r:r===se.nil?e:(0,se._)`${$l(e)} ${t} ${$l(r)}`}function $l(t){return t instanceof se.Name?t:(0,se._)`(${t})`}});var ce=I(ee=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.checkStrictMode=ee.getErrorPath=ee.Type=ee.useFunc=ee.setEvaluated=ee.evaluatedPropsToName=ee.mergeEvaluated=ee.eachItem=ee.unescapeJsonPointer=ee.escapeJsonPointer=ee.escapeFragment=ee.unescapeFragment=ee.schemaRefOrVal=ee.schemaHasRulesButRef=ee.schemaHasRules=ee.checkUnknownRules=ee.alwaysValidSchema=ee.toHash=void 0;var he=X(),gk=Ao();function yk(t){let e={};for(let r of t)e[r]=!0;return e}ee.toHash=yk;function _k(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(kh(t,e),!Sh(e,t.self.RULES.all))}ee.alwaysValidSchema=_k;function kh(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let o=n.RULES.keywords;for(let s in e)o[s]||Eh(t,`unknown keyword: "${s}"`)}ee.checkUnknownRules=kh;function Sh(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}ee.schemaHasRules=Sh;function vk(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}ee.schemaHasRulesButRef=vk;function xk({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,he._)`${r}`}return(0,he._)`${t}${e}${(0,he.getProperty)(n)}`}ee.schemaRefOrVal=xk;function bk(t){return Th(decodeURIComponent(t))}ee.unescapeFragment=bk;function wk(t){return encodeURIComponent(Sl(t))}ee.escapeFragment=wk;function Sl(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}ee.escapeJsonPointer=Sl;function Th(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}ee.unescapeJsonPointer=Th;function $k(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}ee.eachItem=$k;function wh({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof he.Name?(s instanceof he.Name?t(o,s,i):e(o,s,i),i):s instanceof he.Name?(e(o,i,s),s):r(s,i);return a===he.Name&&!(c instanceof he.Name)?n(o,c):c}}ee.mergeEvaluated={props:wh({mergeNames:(t,e,r)=>t.if((0,he._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,he._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,he._)`${r} || {}`).code((0,he._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,he._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,he._)`${r} || {}`),Tl(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:zh}),items:wh({mergeNames:(t,e,r)=>t.if((0,he._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,he._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,he._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,he._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function zh(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,he._)`{}`);return e!==void 0&&Tl(t,r,e),r}ee.evaluatedPropsToName=zh;function Tl(t,e,r){Object.keys(r).forEach(n=>t.assign((0,he._)`${e}${(0,he.getProperty)(n)}`,!0))}ee.setEvaluated=Tl;var $h={};function kk(t,e){return t.scopeValue("func",{ref:e,code:$h[e.code]||($h[e.code]=new gk._Code(e.code))})}ee.useFunc=kk;var kl;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(kl||(ee.Type=kl={}));function Sk(t,e,r){if(t instanceof he.Name){let n=e===kl.Num;return r?n?(0,he._)`"[" + ${t} + "]"`:(0,he._)`"['" + ${t} + "']"`:n?(0,he._)`"/" + ${t}`:(0,he._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,he.getProperty)(t).toString():"/"+Sl(t)}ee.getErrorPath=Sk;function Eh(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}ee.checkStrictMode=Eh});var ar=I(zl=>{"use strict";Object.defineProperty(zl,"__esModule",{value:!0});var Ge=X(),Tk={data:new Ge.Name("data"),valCxt:new Ge.Name("valCxt"),instancePath:new Ge.Name("instancePath"),parentData:new Ge.Name("parentData"),parentDataProperty:new Ge.Name("parentDataProperty"),rootData:new Ge.Name("rootData"),dynamicAnchors:new Ge.Name("dynamicAnchors"),vErrors:new Ge.Name("vErrors"),errors:new Ge.Name("errors"),this:new Ge.Name("this"),self:new Ge.Name("self"),scope:new Ge.Name("scope"),json:new Ge.Name("json"),jsonPos:new Ge.Name("jsonPos"),jsonLen:new Ge.Name("jsonLen"),jsonPart:new Ge.Name("jsonPart")};zl.default=Tk});var qo=I(Be=>{"use strict";Object.defineProperty(Be,"__esModule",{value:!0});Be.extendErrors=Be.resetErrorsCount=Be.reportExtraError=Be.reportError=Be.keyword$DataError=Be.keywordError=void 0;var ie=X(),zi=ce(),Ye=ar();Be.keywordError={message:({keyword:t})=>(0,ie.str)`must pass "${t}" keyword validation`};Be.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,ie.str)`"${t}" keyword must be ${e} ($data)`:(0,ie.str)`"${t}" keyword is invalid ($data)`};function zk(t,e=Be.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=Ih(t,e,r);n??(i||a)?Ph(s,c):Rh(o,(0,ie._)`[${c}]`)}Be.reportError=zk;function Ek(t,e=Be.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=Ih(t,e,r);Ph(o,a),s||i||Rh(n,Ye.default.vErrors)}Be.reportExtraError=Ek;function Pk(t,e){t.assign(Ye.default.errors,e),t.if((0,ie._)`${Ye.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,ie._)`${Ye.default.vErrors}.length`,e),()=>t.assign(Ye.default.vErrors,null)))}Be.resetErrorsCount=Pk;function Rk({gen:t,keyword:e,schemaValue:r,data:n,errsCount:o,it:s}){if(o===void 0)throw new Error("ajv implementation error");let i=t.name("err");t.forRange("i",o,Ye.default.errors,a=>{t.const(i,(0,ie._)`${Ye.default.vErrors}[${a}]`),t.if((0,ie._)`${i}.instancePath === undefined`,()=>t.assign((0,ie._)`${i}.instancePath`,(0,ie.strConcat)(Ye.default.instancePath,s.errorPath))),t.assign((0,ie._)`${i}.schemaPath`,(0,ie.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,ie._)`${i}.schema`,r),t.assign((0,ie._)`${i}.data`,n))})}Be.extendErrors=Rk;function Ph(t,e){let r=t.const("err",e);t.if((0,ie._)`${Ye.default.vErrors} === null`,()=>t.assign(Ye.default.vErrors,(0,ie._)`[${r}]`),(0,ie._)`${Ye.default.vErrors}.push(${r})`),t.code((0,ie._)`${Ye.default.errors}++`)}function Rh(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,ie._)`new ${t.ValidationError}(${e})`):(r.assign((0,ie._)`${n}.errors`,e),r.return(!1))}var cn={keyword:new ie.Name("keyword"),schemaPath:new ie.Name("schemaPath"),params:new ie.Name("params"),propertyName:new ie.Name("propertyName"),message:new ie.Name("message"),schema:new ie.Name("schema"),parentSchema:new ie.Name("parentSchema")};function Ih(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,ie._)`{}`:Ik(t,e,r)}function Ik(t,e,r={}){let{gen:n,it:o}=t,s=[Ok(o,r),Mk(t,r)];return Ak(t,e,s),n.object(...s)}function Ok({errorPath:t},{instancePath:e}){let r=e?(0,ie.str)`${t}${(0,zi.getErrorPath)(e,zi.Type.Str)}`:t;return[Ye.default.instancePath,(0,ie.strConcat)(Ye.default.instancePath,r)]}function Mk({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,ie.str)`${e}/${t}`;return r&&(o=(0,ie.str)`${o}${(0,zi.getErrorPath)(r,zi.Type.Str)}`),[cn.schemaPath,o]}function Ak(t,{params:e,message:r},n){let{keyword:o,data:s,schemaValue:i,it:a}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=a;n.push([cn.keyword,o],[cn.params,typeof e=="function"?e(t):e||(0,ie._)`{}`]),c.messages&&n.push([cn.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([cn.schema,i],[cn.parentSchema,(0,ie._)`${l}${d}`],[Ye.default.data,s]),u&&n.push([cn.propertyName,u])}});var Mh=I(jn=>{"use strict";Object.defineProperty(jn,"__esModule",{value:!0});jn.boolOrEmptySchema=jn.topBoolOrEmptySchema=void 0;var Ck=qo(),Nk=X(),jk=ar(),Zk={message:"boolean schema is false"};function Dk(t){let{gen:e,schema:r,validateName:n}=t;r===!1?Oh(t,!1):typeof r=="object"&&r.$async===!0?e.return(jk.default.data):(e.assign((0,Nk._)`${n}.errors`,null),e.return(!0))}jn.topBoolOrEmptySchema=Dk;function qk(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),Oh(t)):r.var(e,!0)}jn.boolOrEmptySchema=qk;function Oh(t,e){let{gen:r,data:n}=t,o={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,Ck.reportError)(o,Zk,void 0,e)}});var El=I(Zn=>{"use strict";Object.defineProperty(Zn,"__esModule",{value:!0});Zn.getRules=Zn.isJSONType=void 0;var Lk=["string","number","integer","boolean","null","object","array"],Fk=new Set(Lk);function Uk(t){return typeof t=="string"&&Fk.has(t)}Zn.isJSONType=Uk;function Vk(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}Zn.getRules=Vk});var Pl=I(wr=>{"use strict";Object.defineProperty(wr,"__esModule",{value:!0});wr.shouldUseRule=wr.shouldUseGroup=wr.schemaHasRulesForType=void 0;function Hk({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Ah(t,n)}wr.schemaHasRulesForType=Hk;function Ah(t,e){return e.rules.some(r=>Ch(t,r))}wr.shouldUseGroup=Ah;function Ch(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}wr.shouldUseRule=Ch});var Lo=I(Ke=>{"use strict";Object.defineProperty(Ke,"__esModule",{value:!0});Ke.reportTypeError=Ke.checkDataTypes=Ke.checkDataType=Ke.coerceAndCheckDataType=Ke.getJSONTypes=Ke.getSchemaTypes=Ke.DataType=void 0;var Wk=El(),Gk=Pl(),Bk=qo(),J=X(),Nh=ce(),Dn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Dn||(Ke.DataType=Dn={}));function Kk(t){let e=jh(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Ke.getSchemaTypes=Kk;function jh(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(Wk.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Ke.getJSONTypes=jh;function Jk(t,e){let{gen:r,data:n,opts:o}=t,s=Qk(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,Gk.schemaHasRulesForType)(t,e[0]));if(i){let a=Il(e,n,o.strictNumbers,Dn.Wrong);r.if(a,()=>{s.length?Xk(t,e,s):Ol(t)})}return i}Ke.coerceAndCheckDataType=Jk;var Zh=new Set(["string","number","integer","boolean","null"]);function Qk(t,e){return e?t.filter(r=>Zh.has(r)||e==="array"&&r==="array"):[]}function Xk(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,J._)`typeof ${o}`),a=n.let("coerced",(0,J._)`undefined`);s.coerceTypes==="array"&&n.if((0,J._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,J._)`${o}[0]`).assign(i,(0,J._)`typeof ${o}`).if(Il(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,J._)`${a} !== undefined`);for(let u of r)(Zh.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),Ol(t),n.endIf(),n.if((0,J._)`${a} !== undefined`,()=>{n.assign(o,a),Yk(t,a)});function c(u){switch(u){case"string":n.elseIf((0,J._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,J._)`"" + ${o}`).elseIf((0,J._)`${o} === null`).assign(a,(0,J._)`""`);return;case"number":n.elseIf((0,J._)`${i} == "boolean" || ${o} === null
4
+ || (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,J._)`+${o}`);return;case"integer":n.elseIf((0,J._)`${i} === "boolean" || ${o} === null
5
+ || (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,J._)`+${o}`);return;case"boolean":n.elseIf((0,J._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,J._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,J._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,J._)`${i} === "string" || ${i} === "number"
6
+ || ${i} === "boolean" || ${o} === null`).assign(a,(0,J._)`[${o}]`)}}}function Yk({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,J._)`${e} !== undefined`,()=>t.assign((0,J._)`${e}[${r}]`,n))}function Rl(t,e,r,n=Dn.Correct){let o=n===Dn.Correct?J.operators.EQ:J.operators.NEQ,s;switch(t){case"null":return(0,J._)`${e} ${o} null`;case"array":s=(0,J._)`Array.isArray(${e})`;break;case"object":s=(0,J._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,J._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,J._)`typeof ${e} ${o} ${t}`}return n===Dn.Correct?s:(0,J.not)(s);function i(a=J.nil){return(0,J.and)((0,J._)`typeof ${e} == "number"`,a,r?(0,J._)`isFinite(${e})`:J.nil)}}Ke.checkDataType=Rl;function Il(t,e,r,n){if(t.length===1)return Rl(t[0],e,r,n);let o,s=(0,Nh.toHash)(t);if(s.array&&s.object){let i=(0,J._)`typeof ${e} != "object"`;o=s.null?i:(0,J._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=J.nil;s.number&&delete s.integer;for(let i in s)o=(0,J.and)(o,Rl(i,e,r,n));return o}Ke.checkDataTypes=Il;var e0={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,J._)`{type: ${t}}`:(0,J._)`{type: ${e}}`};function Ol(t){let e=t0(t);(0,Bk.reportError)(e,e0)}Ke.reportTypeError=Ol;function t0(t){let{gen:e,data:r,schema:n}=t,o=(0,Nh.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var qh=I(Ei=>{"use strict";Object.defineProperty(Ei,"__esModule",{value:!0});Ei.assignDefaults=void 0;var qn=X(),r0=ce();function n0(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)Dh(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>Dh(t,s,o.default))}Ei.assignDefaults=n0;function Dh(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,qn._)`${s}${(0,qn.getProperty)(e)}`;if(o){(0,r0.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,qn._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,qn._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,qn._)`${a} = ${(0,qn.stringify)(r)}`)}});var $t=I(fe=>{"use strict";Object.defineProperty(fe,"__esModule",{value:!0});fe.validateUnion=fe.validateArray=fe.usePattern=fe.callValidateCode=fe.schemaProperties=fe.allSchemaProperties=fe.noPropertyInData=fe.propertyInData=fe.isOwnProperty=fe.hasPropFunc=fe.reportMissingProp=fe.checkMissingProp=fe.checkReportMissingProp=void 0;var ve=X(),Ml=ce(),$r=ar(),o0=ce();function s0(t,e){let{gen:r,data:n,it:o}=t;r.if(Cl(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,ve._)`${e}`},!0),t.error()})}fe.checkReportMissingProp=s0;function i0({gen:t,data:e,it:{opts:r}},n,o){return(0,ve.or)(...n.map(s=>(0,ve.and)(Cl(t,e,s,r.ownProperties),(0,ve._)`${o} = ${s}`)))}fe.checkMissingProp=i0;function a0(t,e){t.setParams({missingProperty:e},!0),t.error()}fe.reportMissingProp=a0;function Lh(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,ve._)`Object.prototype.hasOwnProperty`})}fe.hasPropFunc=Lh;function Al(t,e,r){return(0,ve._)`${Lh(t)}.call(${e}, ${r})`}fe.isOwnProperty=Al;function c0(t,e,r,n){let o=(0,ve._)`${e}${(0,ve.getProperty)(r)} !== undefined`;return n?(0,ve._)`${o} && ${Al(t,e,r)}`:o}fe.propertyInData=c0;function Cl(t,e,r,n){let o=(0,ve._)`${e}${(0,ve.getProperty)(r)} === undefined`;return n?(0,ve.or)(o,(0,ve.not)(Al(t,e,r))):o}fe.noPropertyInData=Cl;function Fh(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}fe.allSchemaProperties=Fh;function u0(t,e){return Fh(e).filter(r=>!(0,Ml.alwaysValidSchema)(t,e[r]))}fe.schemaProperties=u0;function l0({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?(0,ve._)`${t}, ${e}, ${n}${o}`:e,d=[[$r.default.instancePath,(0,ve.strConcat)($r.default.instancePath,s)],[$r.default.parentData,i.parentData],[$r.default.parentDataProperty,i.parentDataProperty],[$r.default.rootData,$r.default.rootData]];i.opts.dynamicRef&&d.push([$r.default.dynamicAnchors,$r.default.dynamicAnchors]);let p=(0,ve._)`${l}, ${r.object(...d)}`;return c!==ve.nil?(0,ve._)`${a}.call(${c}, ${p})`:(0,ve._)`${a}(${p})`}fe.callValidateCode=l0;var d0=(0,ve._)`new RegExp`;function p0({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:o}=e.code,s=o(r,n);return t.scopeValue("pattern",{key:s.toString(),ref:s,code:(0,ve._)`${o.code==="new RegExp"?d0:(0,o0.useFunc)(t,o)}(${r}, ${n})`})}fe.usePattern=p0;function f0(t){let{gen:e,data:r,keyword:n,it:o}=t,s=e.name("valid");if(o.allErrors){let a=e.let("valid",!0);return i(()=>e.assign(a,!1)),a}return e.var(s,!0),i(()=>e.break()),s;function i(a){let c=e.const("len",(0,ve._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:Ml.Type.Num},s),e.if((0,ve.not)(s),a)})}}fe.validateArray=f0;function m0(t){let{gen:e,schema:r,keyword:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,Ml.alwaysValidSchema)(o,c))&&!o.opts.unevaluated)return;let i=e.let("valid",!1),a=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},a);e.assign(i,(0,ve._)`${i} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,ve.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}fe.validateUnion=m0});var Hh=I(Gt=>{"use strict";Object.defineProperty(Gt,"__esModule",{value:!0});Gt.validateKeywordUsage=Gt.validSchemaType=Gt.funcKeywordCode=Gt.macroKeywordCode=void 0;var et=X(),un=ar(),h0=$t(),g0=qo();function y0(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=Vh(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:et.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}Gt.macroKeywordCode=y0;function _0(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;x0(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=Vh(n,o,u),d=n.let("valid");t.block$data(d,p),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function p(){if(e.errors===!1)h(),e.modifying&&Uh(t),g(()=>t.error());else{let y=e.async?m():f();e.modifying&&Uh(t),g(()=>v0(t,y))}}function m(){let y=n.let("ruleErrs",null);return n.try(()=>h((0,et._)`await `),_=>n.assign(d,!1).if((0,et._)`${_} instanceof ${c.ValidationError}`,()=>n.assign(y,(0,et._)`${_}.errors`),()=>n.throw(_))),y}function f(){let y=(0,et._)`${l}.errors`;return n.assign(y,null),h(et.nil),y}function h(y=e.async?(0,et._)`await `:et.nil){let _=c.opts.passContext?un.default.this:un.default.self,v=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,et._)`${y}${(0,h0.callValidateCode)(t,l,_,v)}`,e.modifying)}function g(y){var _;n.if((0,et.not)((_=e.valid)!==null&&_!==void 0?_:d),y)}}Gt.funcKeywordCode=_0;function Uh(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,et._)`${n.parentData}[${n.parentDataProperty}]`))}function v0(t,e){let{gen:r}=t;r.if((0,et._)`Array.isArray(${e})`,()=>{r.assign(un.default.vErrors,(0,et._)`${un.default.vErrors} === null ? ${e} : ${un.default.vErrors}.concat(${e})`).assign(un.default.errors,(0,et._)`${un.default.vErrors}.length`),(0,g0.extendErrors)(t)},()=>t.error())}function x0({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Vh(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,et.stringify)(r)})}function b0(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}Gt.validSchemaType=b0;function w0({schema:t,opts:e,self:r,errSchemaPath:n},o,s){if(Array.isArray(o.keyword)?!o.keyword.includes(s):o.keyword!==s)throw new Error("ajv implementation error");let i=o.dependencies;if(i?.some(a=>!Object.prototype.hasOwnProperty.call(t,a)))throw new Error(`parent schema must have dependencies of ${s}: ${i.join(",")}`);if(o.validateSchema&&!o.validateSchema(t[s])){let c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}Gt.validateKeywordUsage=w0});var Gh=I(kr=>{"use strict";Object.defineProperty(kr,"__esModule",{value:!0});kr.extendSubschemaMode=kr.extendSubschemaData=kr.getSubschema=void 0;var Bt=X(),Wh=ce();function $0(t,{keyword:e,schemaProp:r,schema:n,schemaPath:o,errSchemaPath:s,topSchemaRef:i}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let a=t.schema[e];return r===void 0?{schema:a,schemaPath:(0,Bt._)`${t.schemaPath}${(0,Bt.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,Bt._)`${t.schemaPath}${(0,Bt.getProperty)(e)}${(0,Bt.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Wh.escapeFragment)(r)}`}}if(n!==void 0){if(o===void 0||s===void 0||i===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:o,topSchemaRef:i,errSchemaPath:s}}throw new Error('either "keyword" or "schema" must be passed')}kr.getSubschema=$0;function k0(t,e,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,p=a.let("data",(0,Bt._)`${e.data}${(0,Bt.getProperty)(r)}`,!0);c(p),t.errorPath=(0,Bt.str)`${u}${(0,Wh.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,Bt._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof Bt.Name?o:a.let("data",o,!0);c(u),i!==void 0&&(t.propertyName=i)}s&&(t.dataTypes=s);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}kr.extendSubschemaData=k0;function S0(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:o,allErrors:s}){n!==void 0&&(t.compositeRule=n),o!==void 0&&(t.createErrors=o),s!==void 0&&(t.allErrors=s),t.jtdDiscriminator=e,t.jtdMetadata=r}kr.extendSubschemaMode=S0});var Nl=I((yC,Bh)=>{"use strict";Bh.exports=function t(e,r){if(e===r)return!0;if(e&&r&&typeof e=="object"&&typeof r=="object"){if(e.constructor!==r.constructor)return!1;var n,o,s;if(Array.isArray(e)){if(n=e.length,n!=r.length)return!1;for(o=n;o--!==0;)if(!t(e[o],r[o]))return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(s=Object.keys(e),n=s.length,n!==Object.keys(r).length)return!1;for(o=n;o--!==0;)if(!Object.prototype.hasOwnProperty.call(r,s[o]))return!1;for(o=n;o--!==0;){var i=s[o];if(!t(e[i],r[i]))return!1}return!0}return e!==e&&r!==r}});var Jh=I((_C,Kh)=>{"use strict";var Sr=Kh.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},o=r.post||function(){};Pi(e,n,o,t,"",t)};Sr.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Sr.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Sr.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Sr.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function Pi(t,e,r,n,o,s,i,a,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,o,s,i,a,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in Sr.arrayKeywords)for(var p=0;p<d.length;p++)Pi(t,e,r,d[p],o+"/"+l+"/"+p,s,o,l,n,p)}else if(l in Sr.propsKeywords){if(d&&typeof d=="object")for(var m in d)Pi(t,e,r,d[m],o+"/"+l+"/"+T0(m),s,o,l,n,m)}else(l in Sr.keywords||t.allKeys&&!(l in Sr.skipKeywords))&&Pi(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function T0(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Fo=I(at=>{"use strict";Object.defineProperty(at,"__esModule",{value:!0});at.getSchemaRefs=at.resolveUrl=at.normalizeId=at._getFullPath=at.getFullPath=at.inlineRef=void 0;var z0=ce(),E0=Nl(),P0=Jh(),R0=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function I0(t,e=!0){return typeof t=="boolean"?!0:e===!0?!jl(t):e?Qh(t)<=e:!1}at.inlineRef=I0;var O0=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function jl(t){for(let e in t){if(O0.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(jl)||typeof r=="object"&&jl(r))return!0}return!1}function Qh(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!R0.has(r)&&(typeof t[r]=="object"&&(0,z0.eachItem)(t[r],n=>e+=Qh(n)),e===1/0))return 1/0}return e}function Xh(t,e="",r){r!==!1&&(e=Ln(e));let n=t.parse(e);return Yh(t,n)}at.getFullPath=Xh;function Yh(t,e){return t.serialize(e).split("#")[0]+"#"}at._getFullPath=Yh;var M0=/#\/?$/;function Ln(t){return t?t.replace(M0,""):""}at.normalizeId=Ln;function A0(t,e,r){return r=Ln(r),t.resolve(e,r)}at.resolveUrl=A0;var C0=/^[a-z_][-a-z0-9._]*$/i;function N0(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Ln(t[r]||e),s={"":o},i=Xh(n,o,!1),a={},c=new Set;return P0(t,{allKeys:!0},(d,p,m,f)=>{if(f===void 0)return;let h=i+p,g=s[f];typeof d[r]=="string"&&(g=y.call(this,d[r])),_.call(this,d.$anchor),_.call(this,d.$dynamicAnchor),s[p]=g;function y(v){let x=this.opts.uriResolver.resolve;if(v=Ln(g?x(g,v):v),c.has(v))throw l(v);c.add(v);let k=this.refs[v];return typeof k=="string"&&(k=this.refs[k]),typeof k=="object"?u(d,k.schema,v):v!==Ln(h)&&(v[0]==="#"?(u(d,a[v],v),a[v]=d):this.refs[v]=h),v}function _(v){if(typeof v=="string"){if(!C0.test(v))throw new Error(`invalid anchor "${v}"`);y.call(this,`#${v}`)}}}),a;function u(d,p,m){if(p!==void 0&&!E0(d,p))throw l(m)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}at.getSchemaRefs=N0});var Ho=I(Tr=>{"use strict";Object.defineProperty(Tr,"__esModule",{value:!0});Tr.getData=Tr.KeywordCxt=Tr.validateFunctionCode=void 0;var og=Mh(),eg=Lo(),Dl=Pl(),Ri=Lo(),j0=qh(),Vo=Hh(),Zl=Gh(),Z=X(),B=ar(),Z0=Fo(),cr=ce(),Uo=qo();function D0(t){if(ag(t)&&(cg(t),ig(t))){F0(t);return}sg(t,()=>(0,og.topBoolOrEmptySchema)(t))}Tr.validateFunctionCode=D0;function sg({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,Z._)`${B.default.data}, ${B.default.valCxt}`,n.$async,()=>{t.code((0,Z._)`"use strict"; ${tg(r,o)}`),L0(t,o),t.code(s)}):t.func(e,(0,Z._)`${B.default.data}, ${q0(o)}`,n.$async,()=>t.code(tg(r,o)).code(s))}function q0(t){return(0,Z._)`{${B.default.instancePath}="", ${B.default.parentData}, ${B.default.parentDataProperty}, ${B.default.rootData}=${B.default.data}${t.dynamicRef?(0,Z._)`, ${B.default.dynamicAnchors}={}`:Z.nil}}={}`}function L0(t,e){t.if(B.default.valCxt,()=>{t.var(B.default.instancePath,(0,Z._)`${B.default.valCxt}.${B.default.instancePath}`),t.var(B.default.parentData,(0,Z._)`${B.default.valCxt}.${B.default.parentData}`),t.var(B.default.parentDataProperty,(0,Z._)`${B.default.valCxt}.${B.default.parentDataProperty}`),t.var(B.default.rootData,(0,Z._)`${B.default.valCxt}.${B.default.rootData}`),e.dynamicRef&&t.var(B.default.dynamicAnchors,(0,Z._)`${B.default.valCxt}.${B.default.dynamicAnchors}`)},()=>{t.var(B.default.instancePath,(0,Z._)`""`),t.var(B.default.parentData,(0,Z._)`undefined`),t.var(B.default.parentDataProperty,(0,Z._)`undefined`),t.var(B.default.rootData,B.default.data),e.dynamicRef&&t.var(B.default.dynamicAnchors,(0,Z._)`{}`)})}function F0(t){let{schema:e,opts:r,gen:n}=t;sg(t,()=>{r.$comment&&e.$comment&&lg(t),G0(t),n.let(B.default.vErrors,null),n.let(B.default.errors,0),r.unevaluated&&U0(t),ug(t),J0(t)})}function U0(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,Z._)`${r}.evaluated`),e.if((0,Z._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,Z._)`${t.evaluated}.props`,(0,Z._)`undefined`)),e.if((0,Z._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,Z._)`${t.evaluated}.items`,(0,Z._)`undefined`))}function tg(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,Z._)`/*# sourceURL=${r} */`:Z.nil}function V0(t,e){if(ag(t)&&(cg(t),ig(t))){H0(t,e);return}(0,og.boolOrEmptySchema)(t,e)}function ig({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function ag(t){return typeof t.schema!="boolean"}function H0(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&lg(t),B0(t),K0(t);let s=n.const("_errs",B.default.errors);ug(t,s),n.var(e,(0,Z._)`${s} === ${B.default.errors}`)}function cg(t){(0,cr.checkUnknownRules)(t),W0(t)}function ug(t,e){if(t.opts.jtd)return rg(t,[],!1,e);let r=(0,eg.getSchemaTypes)(t.schema),n=(0,eg.coerceAndCheckDataType)(t,r);rg(t,r,!n,e)}function W0(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,cr.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function G0(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,cr.checkStrictMode)(t,"default is ignored in the schema root")}function B0(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,Z0.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function K0(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function lg({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,Z._)`${B.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,Z.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,Z._)`${B.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function J0(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,Z._)`${B.default.errors} === 0`,()=>e.return(B.default.data),()=>e.throw((0,Z._)`new ${o}(${B.default.vErrors})`)):(e.assign((0,Z._)`${n}.errors`,B.default.vErrors),s.unevaluated&&Q0(t),e.return((0,Z._)`${B.default.errors} === 0`))}function Q0({gen:t,evaluated:e,props:r,items:n}){r instanceof Z.Name&&t.assign((0,Z._)`${e}.props`,r),n instanceof Z.Name&&t.assign((0,Z._)`${e}.items`,n)}function rg(t,e,r,n){let{gen:o,schema:s,data:i,allErrors:a,opts:c,self:u}=t,{RULES:l}=u;if(s.$ref&&(c.ignoreKeywordsWithRef||!(0,cr.schemaHasRulesButRef)(s,l))){o.block(()=>pg(t,"$ref",l.all.$ref.definition));return}c.jtd||X0(t,e),o.block(()=>{for(let p of l.rules)d(p);d(l.post)});function d(p){(0,Dl.shouldUseGroup)(s,p)&&(p.type?(o.if((0,Ri.checkDataType)(p.type,i,c.strictNumbers)),ng(t,p),e.length===1&&e[0]===p.type&&r&&(o.else(),(0,Ri.reportTypeError)(t)),o.endIf()):ng(t,p),a||o.if((0,Z._)`${B.default.errors} === ${n||0}`))}}function ng(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,j0.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Dl.shouldUseRule)(n,s)&&pg(t,s.keyword,s.definition,e.type)})}function X0(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(Y0(t,e),t.opts.allowUnionTypes||eS(t,e),tS(t,t.dataTypes))}function Y0(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{dg(t.dataTypes,r)||ql(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),nS(t,e)}}function eS(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&ql(t,"use allowUnionTypes to allow union type keyword")}function tS(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Dl.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>rS(e,i))&&ql(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function rS(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function dg(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function nS(t,e){let r=[];for(let n of t.dataTypes)dg(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function ql(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,cr.checkStrictMode)(t,e,t.opts.strictTypes)}var Ii=class{constructor(e,r,n){if((0,Vo.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,cr.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",fg(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Vo.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",B.default.errors))}result(e,r,n){this.failResult((0,Z.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,Z.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,Z._)`${r} !== undefined && (${(0,Z.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?Uo.reportExtraError:Uo.reportError)(this,this.def.error,r)}$dataError(){(0,Uo.reportError)(this,this.def.$dataError||Uo.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Uo.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=Z.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=Z.nil,r=Z.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,Z.or)((0,Z._)`${o} === undefined`,r)),e!==Z.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==Z.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,Z.or)(i(),a());function i(){if(n.length){if(!(r instanceof Z.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,Z._)`${(0,Ri.checkDataTypes)(c,r,s.opts.strictNumbers,Ri.DataType.Wrong)}`}return Z.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,Z._)`!${c}(${r})`}return Z.nil}}subschema(e,r){let n=(0,Zl.getSubschema)(this.it,e);(0,Zl.extendSubschemaData)(n,this.it,e),(0,Zl.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return V0(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=cr.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=cr.mergeEvaluated.items(o,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:o}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return o.if(r,()=>this.mergeEvaluated(e,Z.Name)),!0}};Tr.KeywordCxt=Ii;function pg(t,e,r,n){let o=new Ii(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Vo.funcKeywordCode)(o,r):"macro"in r?(0,Vo.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Vo.funcKeywordCode)(o,r)}var oS=/^\/(?:[^~]|~0|~1)*$/,sS=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function fg(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return B.default.rootData;if(t[0]==="/"){if(!oS.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=B.default.rootData}else{let u=sS.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(o=u[2],o==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(s=r[e-l],!o)return s}let i=s,a=o.split("/");for(let u of a)u&&(s=(0,Z._)`${s}${(0,Z.getProperty)((0,cr.unescapeJsonPointer)(u))}`,i=(0,Z._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}Tr.getData=fg});var Oi=I(Fl=>{"use strict";Object.defineProperty(Fl,"__esModule",{value:!0});var Ll=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Fl.default=Ll});var Wo=I(Hl=>{"use strict";Object.defineProperty(Hl,"__esModule",{value:!0});var Ul=Fo(),Vl=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,Ul.resolveUrl)(e,r,n),this.missingSchema=(0,Ul.normalizeId)((0,Ul.getFullPath)(e,this.missingRef))}};Hl.default=Vl});var Ai=I(kt=>{"use strict";Object.defineProperty(kt,"__esModule",{value:!0});kt.resolveSchema=kt.getCompilingSchema=kt.resolveRef=kt.compileSchema=kt.SchemaEnv=void 0;var Mt=X(),iS=Oi(),ln=ar(),At=Fo(),mg=ce(),aS=Ho(),Fn=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,At.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};kt.SchemaEnv=Fn;function Gl(t){let e=hg.call(this,t);if(e)return e;let r=(0,At.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new Mt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:iS.default,code:(0,Mt._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:ln.default.data,parentData:ln.default.parentData,parentDataProperty:ln.default.parentDataProperty,dataNames:[ln.default.data],dataPathArr:[Mt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Mt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Mt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Mt._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,aS.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(ln.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let m=new Function(`${ln.default.self}`,`${ln.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:m}),m.errors=null,m.schema=t.schema,m.schemaEnv=t,t.$async&&(m.$async=!0),this.opts.code.source===!0&&(m.source={validateName:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:f,items:h}=u;m.evaluated={props:f instanceof Mt.Name?void 0:f,items:h instanceof Mt.Name?void 0:h,dynamicProps:f instanceof Mt.Name,dynamicItems:h instanceof Mt.Name},m.source&&(m.source.evaluated=(0,Mt.stringify)(m.evaluated))}return t.validate=m,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}kt.compileSchema=Gl;function cS(t,e,r){var n;r=(0,At.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=dS.call(this,t,r);if(s===void 0){let i=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:a}=this.opts;i&&(s=new Fn({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=uS.call(this,s)}kt.resolveRef=cS;function uS(t){return(0,At.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:Gl.call(this,t)}function hg(t){for(let e of this._compilations)if(lS(e,t))return e}kt.getCompilingSchema=hg;function lS(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function dS(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Mi.call(this,t,e)}function Mi(t,e){let r=this.opts.uriResolver.parse(e),n=(0,At._getFullPath)(this.opts.uriResolver,r),o=(0,At.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return Wl.call(this,r,t);let s=(0,At.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Mi.call(this,t,i);return typeof a?.schema!="object"?void 0:Wl.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||Gl.call(this,i),s===(0,At.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,At.resolveUrl)(this.opts.uriResolver,o,u)),new Fn({schema:a,schemaId:c,root:t,baseId:o})}return Wl.call(this,r,i)}}kt.resolveSchema=Mi;var pS=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Wl(t,{baseId:e,schema:r,root:n}){var o;if(((o=t.fragment)===null||o===void 0?void 0:o[0])!=="/")return;for(let a of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,mg.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!pS.has(a)&&u&&(e=(0,At.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,mg.schemaHasRulesButRef)(r,this.RULES)){let a=(0,At.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=Mi.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new Fn({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var gg=I((kC,fS)=>{fS.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var Kl=I((SC,xg)=>{"use strict";var mS=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),_g=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function Bl(t){let e="",r=0,n=0;for(n=0;n<t.length;n++)if(r=t[n].charCodeAt(0),r!==48){if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n];break}for(n+=1;n<t.length;n++){if(r=t[n].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n]}return e}var hS=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function yg(t){return t.length=0,!0}function gS(t,e,r){if(t.length){let n=Bl(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function yS(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=gS;for(let c=0;c<t.length;c++){let u=t[c];if(!(u==="["||u==="]"))if(u===":"){if(s===!0&&(i=!0),!a(o,n,r))break;if(++e>7){r.error=!0;break}c>0&&t[c-1]===":"&&(s=!0),n.push(":");continue}else if(u==="%"){if(!a(o,n,r))break;a=yg}else{o.push(u);continue}}return o.length&&(a===yg?r.zone=o.join(""):i?n.push(o.join("")):n.push(Bl(o))),r.address=n.join(""),r}function vg(t){if(_S(t,":")<2)return{host:t,isIPV6:!1};let e=yS(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function _S(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function vS(t){let e=t,r=[],n=-1,o=0;for(;o=e.length;){if(o===1){if(e===".")break;if(e==="/"){r.push("/");break}else{r.push(e);break}}else if(o===2){if(e[0]==="."){if(e[1]===".")break;if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&(e[1]==="."||e[1]==="/")){r.push("/");break}}else if(o===3&&e==="/.."){r.length!==0&&r.pop(),r.push("/");break}if(e[0]==="."){if(e[1]==="."){if(e[2]==="/"){e=e.slice(3);continue}}else if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&e[1]==="."){if(e[2]==="/"){e=e.slice(2);continue}else if(e[2]==="."&&e[3]==="/"){e=e.slice(3),r.length!==0&&r.pop();continue}}if((n=e.indexOf("/",1))===-1){r.push(e);break}else r.push(e.slice(0,n)),e=e.slice(n)}return r.join("")}function xS(t,e){let r=e!==!0?escape:unescape;return t.scheme!==void 0&&(t.scheme=r(t.scheme)),t.userinfo!==void 0&&(t.userinfo=r(t.userinfo)),t.host!==void 0&&(t.host=r(t.host)),t.path!==void 0&&(t.path=r(t.path)),t.query!==void 0&&(t.query=r(t.query)),t.fragment!==void 0&&(t.fragment=r(t.fragment)),t}function bS(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!_g(r)){let n=vg(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=t.host}e.push(r)}return(typeof t.port=="number"||typeof t.port=="string")&&(e.push(":"),e.push(String(t.port))),e.length?e.join(""):void 0}xg.exports={nonSimpleDomain:hS,recomposeAuthority:bS,normalizeComponentEncoding:xS,removeDotSegments:vS,isIPv4:_g,isUUID:mS,normalizeIPv6:vg,stringArrayToHexStripped:Bl}});var Sg=I((TC,kg)=>{"use strict";var{isUUID:wS}=Kl(),$S=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,kS=["http","https","ws","wss","urn","urn:uuid"];function SS(t){return kS.indexOf(t)!==-1}function Jl(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function bg(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function wg(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function TS(t){return t.secure=Jl(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function zS(t){if((t.port===(Jl(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function ES(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match($S);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let o=`${n}:${e.nid||t.nid}`,s=Ql(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function PS(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),o=`${r}:${e.nid||n}`,s=Ql(o);s&&(t=s.serialize(t,e));let i=t,a=t.nss;return i.path=`${n||e.nid}:${a}`,e.skipEscape=!0,i}function RS(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!wS(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function IS(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var $g={scheme:"http",domainHost:!0,parse:bg,serialize:wg},OS={scheme:"https",domainHost:$g.domainHost,parse:bg,serialize:wg},Ci={scheme:"ws",domainHost:!0,parse:TS,serialize:zS},MS={scheme:"wss",domainHost:Ci.domainHost,parse:Ci.parse,serialize:Ci.serialize},AS={scheme:"urn",parse:ES,serialize:PS,skipNormalize:!0},CS={scheme:"urn:uuid",parse:RS,serialize:IS,skipNormalize:!0},Ni={http:$g,https:OS,ws:Ci,wss:MS,urn:AS,"urn:uuid":CS};Object.setPrototypeOf(Ni,null);function Ql(t){return t&&(Ni[t]||Ni[t.toLowerCase()])||void 0}kg.exports={wsIsSecure:Jl,SCHEMES:Ni,isValidSchemeName:SS,getSchemeHandler:Ql}});var Eg=I((zC,Zi)=>{"use strict";var{normalizeIPv6:NS,removeDotSegments:Go,recomposeAuthority:jS,normalizeComponentEncoding:ji,isIPv4:ZS,nonSimpleDomain:DS}=Kl(),{SCHEMES:qS,getSchemeHandler:Tg}=Sg();function LS(t,e){return typeof t=="string"?t=Kt(ur(t,e),e):typeof t=="object"&&(t=ur(Kt(t,e),e)),t}function FS(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=zg(ur(t,n),ur(e,n),n,!0);return n.skipEscape=!0,Kt(o,n)}function zg(t,e,r,n){let o={};return n||(t=ur(Kt(t,r),r),e=ur(Kt(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(o.scheme=e.scheme,o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=Go(e.path||""),o.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=Go(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=Go(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?o.path="/"+e.path:t.path?o.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:o.path=e.path,o.path=Go(o.path)),o.query=e.query):(o.path=t.path,e.query!==void 0?o.query=e.query:o.query=t.query),o.userinfo=t.userinfo,o.host=t.host,o.port=t.port),o.scheme=t.scheme),o.fragment=e.fragment,o}function US(t,e,r){return typeof t=="string"?(t=unescape(t),t=Kt(ji(ur(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Kt(ji(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Kt(ji(ur(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Kt(ji(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function Kt(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),o=[],s=Tg(n.scheme||r.scheme);s&&s.serialize&&s.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&o.push(r.scheme,":");let i=jS(r);if(i!==void 0&&(n.reference!=="suffix"&&o.push("//"),o.push(i),r.path&&r.path[0]!=="/"&&o.push("/")),r.path!==void 0){let a=r.path;!n.absolutePath&&(!s||!s.absolutePath)&&(a=Go(a)),i===void 0&&a[0]==="/"&&a[1]==="/"&&(a="/%2F"+a.slice(2)),o.push(a)}return r.query!==void 0&&o.push("?",r.query),r.fragment!==void 0&&o.push("#",r.fragment),o.join("")}var VS=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function ur(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},o=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let s=t.match(VS);if(s){if(n.scheme=s[1],n.userinfo=s[3],n.host=s[4],n.port=parseInt(s[5],10),n.path=s[6]||"",n.query=s[7],n.fragment=s[8],isNaN(n.port)&&(n.port=s[5]),n.host)if(ZS(n.host)===!1){let c=NS(n.host);n.host=c.host.toLowerCase(),o=c.isIPV6}else o=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let i=Tg(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&DS(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(a){n.error=n.error||"Host's domain name can not be converted to ASCII: "+a}(!i||i&&!i.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),i&&i.parse&&i.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var Xl={SCHEMES:qS,normalize:LS,resolve:FS,resolveComponent:zg,equal:US,serialize:Kt,parse:ur};Zi.exports=Xl;Zi.exports.default=Xl;Zi.exports.fastUri=Xl});var Rg=I(Yl=>{"use strict";Object.defineProperty(Yl,"__esModule",{value:!0});var Pg=Eg();Pg.code='require("ajv/dist/runtime/uri").default';Yl.default=Pg});var Zg=I(Fe=>{"use strict";Object.defineProperty(Fe,"__esModule",{value:!0});Fe.CodeGen=Fe.Name=Fe.nil=Fe.stringify=Fe.str=Fe._=Fe.KeywordCxt=void 0;var HS=Ho();Object.defineProperty(Fe,"KeywordCxt",{enumerable:!0,get:function(){return HS.KeywordCxt}});var Un=X();Object.defineProperty(Fe,"_",{enumerable:!0,get:function(){return Un._}});Object.defineProperty(Fe,"str",{enumerable:!0,get:function(){return Un.str}});Object.defineProperty(Fe,"stringify",{enumerable:!0,get:function(){return Un.stringify}});Object.defineProperty(Fe,"nil",{enumerable:!0,get:function(){return Un.nil}});Object.defineProperty(Fe,"Name",{enumerable:!0,get:function(){return Un.Name}});Object.defineProperty(Fe,"CodeGen",{enumerable:!0,get:function(){return Un.CodeGen}});var WS=Oi(),Cg=Wo(),GS=El(),Bo=Ai(),BS=X(),Ko=Fo(),Di=Lo(),td=ce(),Ig=gg(),KS=Rg(),Ng=(t,e)=>new RegExp(t,e);Ng.code="new RegExp";var JS=["removeAdditional","useDefaults","coerceTypes"],QS=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),XS={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},YS={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Og=200;function eT(t){var e,r,n,o,s,i,a,c,u,l,d,p,m,f,h,g,y,_,v,x,k,L,G,b,E;let q=t.strict,V=(e=t.code)===null||e===void 0?void 0:e.optimize,ue=V===!0||V===void 0?1:V||0,Ie=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Ng,R=(o=t.uriResolver)!==null&&o!==void 0?o:KS.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:q)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:q)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:q)!==null&&l!==void 0?l:"log",strictTuples:(p=(d=t.strictTuples)!==null&&d!==void 0?d:q)!==null&&p!==void 0?p:"log",strictRequired:(f=(m=t.strictRequired)!==null&&m!==void 0?m:q)!==null&&f!==void 0?f:!1,code:t.code?{...t.code,optimize:ue,regExp:Ie}:{optimize:ue,regExp:Ie},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:Og,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:Og,meta:(y=t.meta)!==null&&y!==void 0?y:!0,messages:(_=t.messages)!==null&&_!==void 0?_:!0,inlineRefs:(v=t.inlineRefs)!==null&&v!==void 0?v:!0,schemaId:(x=t.schemaId)!==null&&x!==void 0?x:"$id",addUsedSchema:(k=t.addUsedSchema)!==null&&k!==void 0?k:!0,validateSchema:(L=t.validateSchema)!==null&&L!==void 0?L:!0,validateFormats:(G=t.validateFormats)!==null&&G!==void 0?G:!0,unicodeRegExp:(b=t.unicodeRegExp)!==null&&b!==void 0?b:!0,int32range:(E=t.int32range)!==null&&E!==void 0?E:!0,uriResolver:R}}var Jo=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...eT(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new BS.ValueScope({scope:{},prefixes:QS,es5:r,lines:n}),this.logger=iT(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,GS.getRules)(),Mg.call(this,XS,e,"NOT SUPPORTED"),Mg.call(this,YS,e,"DEPRECATED","warn"),this._metaOpts=oT.call(this),e.formats&&rT.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&nT.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),tT.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=Ig;n==="id"&&(o={...Ig},o.id=o.$id,delete o.$id),r&&e&&this.addMetaSchema(o,o[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let o=n(r);return"$async"in n||(this.errors=n.errors),o}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return o.call(this,e,r);async function o(l,d){await s.call(this,l.$schema);let p=this._addSchema(l,d);return p.validate||i.call(this,p)}async function s(l){l&&!this.getSchema(l)&&await o.call(this,{$ref:l},!0)}async function i(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof Cg.default))throw d;return a.call(this,d),await c.call(this,d.missingSchema),i.call(this,l)}}function a({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await s.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(e,r,n,o=this.opts.validateSchema){if(Array.isArray(e)){for(let i of e)this.addSchema(i,void 0,n,o);return this}let s;if(typeof e=="object"){let{schemaId:i}=this.opts;if(s=e[i],s!==void 0&&typeof s!="string")throw new Error(`schema ${i} must be string`)}return r=(0,Ko.normalizeId)(r||s),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,o,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let o=this.validate(n,e);if(!o&&r){let s="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(s);else throw new Error(s)}return o}getSchema(e){let r;for(;typeof(r=Ag.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new Bo.SchemaEnv({schema:{},schemaId:n});if(r=Bo.resolveSchema.call(this,o,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=Ag.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,Ko.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(cT.call(this,n,r),!r)return(0,td.eachItem)(n,s=>ed.call(this,s)),this;lT.call(this,r);let o={...r,type:(0,Di.getJSONTypes)(r.type),schemaType:(0,Di.getJSONTypes)(r.schemaType)};return(0,td.eachItem)(n,o.type.length===0?s=>ed.call(this,s,o):s=>o.type.forEach(i=>ed.call(this,s,o,i))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let o=n.rules.findIndex(s=>s.keyword===e);o>=0&&n.rules.splice(o,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(o=>`${n}${o.instancePath} ${o.message}`).reduce((o,s)=>o+r+s)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let o of r){let s=o.split("/").slice(1),i=e;for(let a of s)i=i[a];for(let a in n){let c=n[a];if(typeof c!="object")continue;let{$data:u}=c.definition,l=i[a];u&&l&&(i[a]=jg(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let o=e[n];(!r||r.test(n))&&(typeof o=="string"?delete e[n]:o&&!o.meta&&(this._cache.delete(o.schema),delete e[n]))}}_addSchema(e,r,n,o=this.opts.validateSchema,s=this.opts.addUsedSchema){let i,{schemaId:a}=this.opts;if(typeof e=="object")i=e[a];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,Ko.normalizeId)(i||n);let u=Ko.getSchemaRefs.call(this,e,n);return c=new Bo.SchemaEnv({schema:e,schemaId:a,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),s&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),o&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):Bo.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{Bo.compileSchema.call(this,e)}finally{this.opts=r}}};Jo.ValidationError=WS.default;Jo.MissingRefError=Cg.default;Fe.default=Jo;function Mg(t,e,r,n="error"){for(let o in t){let s=o;s in e&&this.logger[n](`${r}: option ${o}. ${t[s]}`)}}function Ag(t){return t=(0,Ko.normalizeId)(t),this.schemas[t]||this.refs[t]}function tT(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function rT(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function nT(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function oT(){let t={...this.opts};for(let e of JS)delete t[e];return t}var sT={log(){},warn(){},error(){}};function iT(t){if(t===!1)return sT;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var aT=/^[a-z_$][a-z0-9_$:-]*$/i;function cT(t,e){let{RULES:r}=this;if((0,td.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!aT.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function ed(t,e,r){var n;let o=e?.post;if(r&&o)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:s}=this,i=o?s.post:s.rules.find(({type:c})=>c===r);if(i||(i={type:r,rules:[]},s.rules.push(i)),s.keywords[t]=!0,!e)return;let a={keyword:t,definition:{...e,type:(0,Di.getJSONTypes)(e.type),schemaType:(0,Di.getJSONTypes)(e.schemaType)}};e.before?uT.call(this,i,a,e.before):i.rules.push(a),s.all[t]=a,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function uT(t,e,r){let n=t.rules.findIndex(o=>o.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function lT(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=jg(e)),t.validateSchema=this.compile(e,!0))}var dT={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function jg(t){return{anyOf:[t,dT]}}});var Dg=I(rd=>{"use strict";Object.defineProperty(rd,"__esModule",{value:!0});var pT={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};rd.default=pT});var Ug=I(dn=>{"use strict";Object.defineProperty(dn,"__esModule",{value:!0});dn.callRef=dn.getValidate=void 0;var fT=Wo(),qg=$t(),ct=X(),Vn=ar(),Lg=Ai(),qi=ce(),mT={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:o,schemaEnv:s,validateName:i,opts:a,self:c}=n,{root:u}=s;if((r==="#"||r==="#/")&&o===u.baseId)return d();let l=Lg.resolveRef.call(c,u,o,r);if(l===void 0)throw new fT.default(n.opts.uriResolver,o,r);if(l instanceof Lg.SchemaEnv)return p(l);return m(l);function d(){if(s===u)return Li(t,i,s,s.$async);let f=e.scopeValue("root",{ref:u});return Li(t,(0,ct._)`${f}.validate`,u,u.$async)}function p(f){let h=Fg(t,f);Li(t,h,f,f.$async)}function m(f){let h=e.scopeValue("schema",a.code.source===!0?{ref:f,code:(0,ct.stringify)(f)}:{ref:f}),g=e.name("valid"),y=t.subschema({schema:f,dataTypes:[],schemaPath:ct.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(y),t.ok(g)}}};function Fg(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,ct._)`${r.scopeValue("wrapper",{ref:e})}.validate`}dn.getValidate=Fg;function Li(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?Vn.default.this:ct.nil;n?l():d();function l(){if(!a.$async)throw new Error("async schema referenced by sync schema");let f=o.let("valid");o.try(()=>{o.code((0,ct._)`await ${(0,qg.callValidateCode)(t,e,u)}`),m(e),i||o.assign(f,!0)},h=>{o.if((0,ct._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),p(h),i||o.assign(f,!1)}),t.ok(f)}function d(){t.result((0,qg.callValidateCode)(t,e,u),()=>m(e),()=>p(e))}function p(f){let h=(0,ct._)`${f}.errors`;o.assign(Vn.default.vErrors,(0,ct._)`${Vn.default.vErrors} === null ? ${h} : ${Vn.default.vErrors}.concat(${h})`),o.assign(Vn.default.errors,(0,ct._)`${Vn.default.vErrors}.length`)}function m(f){var h;if(!s.opts.unevaluated)return;let g=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(s.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(s.props=qi.mergeEvaluated.props(o,g.props,s.props));else{let y=o.var("props",(0,ct._)`${f}.evaluated.props`);s.props=qi.mergeEvaluated.props(o,y,s.props,ct.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=qi.mergeEvaluated.items(o,g.items,s.items));else{let y=o.var("items",(0,ct._)`${f}.evaluated.items`);s.items=qi.mergeEvaluated.items(o,y,s.items,ct.Name)}}}dn.callRef=Li;dn.default=mT});var Vg=I(nd=>{"use strict";Object.defineProperty(nd,"__esModule",{value:!0});var hT=Dg(),gT=Ug(),yT=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",hT.default,gT.default];nd.default=yT});var Hg=I(od=>{"use strict";Object.defineProperty(od,"__esModule",{value:!0});var Fi=X(),zr=Fi.operators,Ui={maximum:{okStr:"<=",ok:zr.LTE,fail:zr.GT},minimum:{okStr:">=",ok:zr.GTE,fail:zr.LT},exclusiveMaximum:{okStr:"<",ok:zr.LT,fail:zr.GTE},exclusiveMinimum:{okStr:">",ok:zr.GT,fail:zr.LTE}},_T={message:({keyword:t,schemaCode:e})=>(0,Fi.str)`must be ${Ui[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Fi._)`{comparison: ${Ui[t].okStr}, limit: ${e}}`},vT={keyword:Object.keys(Ui),type:"number",schemaType:"number",$data:!0,error:_T,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Fi._)`${r} ${Ui[e].fail} ${n} || isNaN(${r})`)}};od.default=vT});var Wg=I(sd=>{"use strict";Object.defineProperty(sd,"__esModule",{value:!0});var Qo=X(),xT={message:({schemaCode:t})=>(0,Qo.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Qo._)`{multipleOf: ${t}}`},bT={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:xT,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,Qo._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,Qo._)`${i} !== parseInt(${i})`;t.fail$data((0,Qo._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};sd.default=bT});var Bg=I(id=>{"use strict";Object.defineProperty(id,"__esModule",{value:!0});function Gg(t){let e=t.length,r=0,n=0,o;for(;n<e;)r++,o=t.charCodeAt(n++),o>=55296&&o<=56319&&n<e&&(o=t.charCodeAt(n),(o&64512)===56320&&n++);return r}id.default=Gg;Gg.code='require("ajv/dist/runtime/ucs2length").default'});var Kg=I(ad=>{"use strict";Object.defineProperty(ad,"__esModule",{value:!0});var pn=X(),wT=ce(),$T=Bg(),kT={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,pn.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,pn._)`{limit: ${t}}`},ST={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:kT,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?pn.operators.GT:pn.operators.LT,i=o.opts.unicode===!1?(0,pn._)`${r}.length`:(0,pn._)`${(0,wT.useFunc)(t.gen,$T.default)}(${r})`;t.fail$data((0,pn._)`${i} ${s} ${n}`)}};ad.default=ST});var Jg=I(cd=>{"use strict";Object.defineProperty(cd,"__esModule",{value:!0});var TT=$t(),Vi=X(),zT={message:({schemaCode:t})=>(0,Vi.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Vi._)`{pattern: ${t}}`},ET={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:zT,code(t){let{data:e,$data:r,schema:n,schemaCode:o,it:s}=t,i=s.opts.unicodeRegExp?"u":"",a=r?(0,Vi._)`(new RegExp(${o}, ${i}))`:(0,TT.usePattern)(t,n);t.fail$data((0,Vi._)`!${a}.test(${e})`)}};cd.default=ET});var Qg=I(ud=>{"use strict";Object.defineProperty(ud,"__esModule",{value:!0});var Xo=X(),PT={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,Xo.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,Xo._)`{limit: ${t}}`},RT={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:PT,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?Xo.operators.GT:Xo.operators.LT;t.fail$data((0,Xo._)`Object.keys(${r}).length ${o} ${n}`)}};ud.default=RT});var Xg=I(ld=>{"use strict";Object.defineProperty(ld,"__esModule",{value:!0});var Yo=$t(),es=X(),IT=ce(),OT={message:({params:{missingProperty:t}})=>(0,es.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,es._)`{missingProperty: ${t}}`},MT={keyword:"required",type:"object",schemaType:"array",$data:!0,error:OT,code(t){let{gen:e,schema:r,schemaCode:n,data:o,$data:s,it:i}=t,{opts:a}=i;if(!s&&r.length===0)return;let c=r.length>=a.loopRequired;if(i.allErrors?u():l(),a.strictRequired){let m=t.parentSchema.properties,{definedProperties:f}=t.it;for(let h of r)if(m?.[h]===void 0&&!f.has(h)){let g=i.schemaEnv.baseId+i.errSchemaPath,y=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,IT.checkStrictMode)(i,y,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(es.nil,d);else for(let m of r)(0,Yo.checkReportMissingProp)(t,m)}function l(){let m=e.let("missing");if(c||s){let f=e.let("valid",!0);t.block$data(f,()=>p(m,f)),t.ok(f)}else e.if((0,Yo.checkMissingProp)(t,r,m)),(0,Yo.reportMissingProp)(t,m),e.else()}function d(){e.forOf("prop",n,m=>{t.setParams({missingProperty:m}),e.if((0,Yo.noPropertyInData)(e,o,m,a.ownProperties),()=>t.error())})}function p(m,f){t.setParams({missingProperty:m}),e.forOf(m,n,()=>{e.assign(f,(0,Yo.propertyInData)(e,o,m,a.ownProperties)),e.if((0,es.not)(f),()=>{t.error(),e.break()})},es.nil)}}};ld.default=MT});var Yg=I(dd=>{"use strict";Object.defineProperty(dd,"__esModule",{value:!0});var ts=X(),AT={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,ts.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,ts._)`{limit: ${t}}`},CT={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:AT,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?ts.operators.GT:ts.operators.LT;t.fail$data((0,ts._)`${r}.length ${o} ${n}`)}};dd.default=CT});var Hi=I(pd=>{"use strict";Object.defineProperty(pd,"__esModule",{value:!0});var ey=Nl();ey.code='require("ajv/dist/runtime/equal").default';pd.default=ey});var ty=I(md=>{"use strict";Object.defineProperty(md,"__esModule",{value:!0});var fd=Lo(),Ue=X(),NT=ce(),jT=Hi(),ZT={message:({params:{i:t,j:e}})=>(0,Ue.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Ue._)`{i: ${t}, j: ${e}}`},DT={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:ZT,code(t){let{gen:e,data:r,$data:n,schema:o,parentSchema:s,schemaCode:i,it:a}=t;if(!n&&!o)return;let c=e.let("valid"),u=s.items?(0,fd.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,Ue._)`${i} === false`),t.ok(c);function l(){let f=e.let("i",(0,Ue._)`${r}.length`),h=e.let("j");t.setParams({i:f,j:h}),e.assign(c,!0),e.if((0,Ue._)`${f} > 1`,()=>(d()?p:m)(f,h))}function d(){return u.length>0&&!u.some(f=>f==="object"||f==="array")}function p(f,h){let g=e.name("item"),y=(0,fd.checkDataTypes)(u,g,a.opts.strictNumbers,fd.DataType.Wrong),_=e.const("indices",(0,Ue._)`{}`);e.for((0,Ue._)`;${f}--;`,()=>{e.let(g,(0,Ue._)`${r}[${f}]`),e.if(y,(0,Ue._)`continue`),u.length>1&&e.if((0,Ue._)`typeof ${g} == "string"`,(0,Ue._)`${g} += "_"`),e.if((0,Ue._)`typeof ${_}[${g}] == "number"`,()=>{e.assign(h,(0,Ue._)`${_}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,Ue._)`${_}[${g}] = ${f}`)})}function m(f,h){let g=(0,NT.useFunc)(e,jT.default),y=e.name("outer");e.label(y).for((0,Ue._)`;${f}--;`,()=>e.for((0,Ue._)`${h} = ${f}; ${h}--;`,()=>e.if((0,Ue._)`${g}(${r}[${f}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(y)})))}}};md.default=DT});var ry=I(gd=>{"use strict";Object.defineProperty(gd,"__esModule",{value:!0});var hd=X(),qT=ce(),LT=Hi(),FT={message:"must be equal to constant",params:({schemaCode:t})=>(0,hd._)`{allowedValue: ${t}}`},UT={keyword:"const",$data:!0,error:FT,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,hd._)`!${(0,qT.useFunc)(e,LT.default)}(${r}, ${o})`):t.fail((0,hd._)`${s} !== ${r}`)}};gd.default=UT});var ny=I(yd=>{"use strict";Object.defineProperty(yd,"__esModule",{value:!0});var rs=X(),VT=ce(),HT=Hi(),WT={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,rs._)`{allowedValues: ${t}}`},GT={keyword:"enum",schemaType:"array",$data:!0,error:WT,code(t){let{gen:e,data:r,$data:n,schema:o,schemaCode:s,it:i}=t;if(!n&&o.length===0)throw new Error("enum must have non-empty array");let a=o.length>=i.opts.loopEnum,c,u=()=>c??(c=(0,VT.useFunc)(e,HT.default)),l;if(a||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(o))throw new Error("ajv implementation error");let m=e.const("vSchema",s);l=(0,rs.or)(...o.map((f,h)=>p(m,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,m=>e.if((0,rs._)`${u()}(${r}, ${m})`,()=>e.assign(l,!0).break()))}function p(m,f){let h=o[f];return typeof h=="object"&&h!==null?(0,rs._)`${u()}(${r}, ${m}[${f}])`:(0,rs._)`${r} === ${h}`}}};yd.default=GT});var oy=I(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});var BT=Hg(),KT=Wg(),JT=Kg(),QT=Jg(),XT=Qg(),YT=Xg(),ez=Yg(),tz=ty(),rz=ry(),nz=ny(),oz=[BT.default,KT.default,JT.default,QT.default,XT.default,YT.default,ez.default,tz.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},rz.default,nz.default];_d.default=oz});var xd=I(ns=>{"use strict";Object.defineProperty(ns,"__esModule",{value:!0});ns.validateAdditionalItems=void 0;var fn=X(),vd=ce(),sz={message:({params:{len:t}})=>(0,fn.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,fn._)`{limit: ${t}}`},iz={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:sz,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,vd.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}sy(t,n)}};function sy(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,fn._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,fn._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,vd.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,fn._)`${a} <= ${e.length}`);r.if((0,fn.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:vd.Type.Num},u),i.allErrors||r.if((0,fn.not)(u),()=>r.break())})}}ns.validateAdditionalItems=sy;ns.default=iz});var bd=I(os=>{"use strict";Object.defineProperty(os,"__esModule",{value:!0});os.validateTuple=void 0;var iy=X(),Wi=ce(),az=$t(),cz={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return ay(t,"additionalItems",e);r.items=!0,!(0,Wi.alwaysValidSchema)(r,e)&&t.ok((0,az.validateArray)(t))}};function ay(t,e,r=t.schema){let{gen:n,parentSchema:o,data:s,keyword:i,it:a}=t;l(o),a.opts.unevaluated&&r.length&&a.items!==!0&&(a.items=Wi.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,iy._)`${s}.length`);r.forEach((d,p)=>{(0,Wi.alwaysValidSchema)(a,d)||(n.if((0,iy._)`${u} > ${p}`,()=>t.subschema({keyword:i,schemaProp:p,dataProp:p},c)),t.ok(c))});function l(d){let{opts:p,errSchemaPath:m}=a,f=r.length,h=f===d.minItems&&(f===d.maxItems||d[e]===!1);if(p.strictTuples&&!h){let g=`"${i}" is ${f}-tuple, but minItems or maxItems/${e} are not specified or different at path "${m}"`;(0,Wi.checkStrictMode)(a,g,p.strictTuples)}}}os.validateTuple=ay;os.default=cz});var cy=I(wd=>{"use strict";Object.defineProperty(wd,"__esModule",{value:!0});var uz=bd(),lz={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,uz.validateTuple)(t,"items")};wd.default=lz});var ly=I($d=>{"use strict";Object.defineProperty($d,"__esModule",{value:!0});var uy=X(),dz=ce(),pz=$t(),fz=xd(),mz={message:({params:{len:t}})=>(0,uy.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,uy._)`{limit: ${t}}`},hz={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:mz,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,dz.alwaysValidSchema)(n,e)&&(o?(0,fz.validateAdditionalItems)(t,o):t.ok((0,pz.validateArray)(t)))}};$d.default=hz});var dy=I(kd=>{"use strict";Object.defineProperty(kd,"__esModule",{value:!0});var St=X(),Gi=ce(),gz={message:({params:{min:t,max:e}})=>e===void 0?(0,St.str)`must contain at least ${t} valid item(s)`:(0,St.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,St._)`{minContains: ${t}}`:(0,St._)`{minContains: ${t}, maxContains: ${e}}`},yz={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:gz,code(t){let{gen:e,schema:r,parentSchema:n,data:o,it:s}=t,i,a,{minContains:c,maxContains:u}=n;s.opts.next?(i=c===void 0?1:c,a=u):i=1;let l=e.const("len",(0,St._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,Gi.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,Gi.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Gi.alwaysValidSchema)(s,r)){let h=(0,St._)`${l} >= ${i}`;a!==void 0&&(h=(0,St._)`${h} && ${l} <= ${a}`),t.pass(h);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?m(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,St._)`${o}.length > 0`,p)):(e.let(d,!1),p()),t.result(d,()=>t.reset());function p(){let h=e.name("_valid"),g=e.let("count",0);m(h,()=>e.if(h,()=>f(g)))}function m(h,g){e.forRange("i",0,l,y=>{t.subschema({keyword:"contains",dataProp:y,dataPropType:Gi.Type.Num,compositeRule:!0},h),g()})}function f(h){e.code((0,St._)`${h}++`),a===void 0?e.if((0,St._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,St._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,St._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};kd.default=yz});var my=I(Jt=>{"use strict";Object.defineProperty(Jt,"__esModule",{value:!0});Jt.validateSchemaDeps=Jt.validatePropertyDeps=Jt.error=void 0;var Sd=X(),_z=ce(),ss=$t();Jt.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,Sd.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,Sd._)`{property: ${t},
7
7
  missingProperty: ${n},
8
8
  depsCount: ${e},
9
- deps: ${r}}`};var cz={keyword:"dependencies",type:"object",schemaType:"object",error:qt.error,code(t){let[e,r]=uz(t);ty(t,e),ry(t,r)}};function uz({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let o=Array.isArray(t[n])?e:r;o[n]=t[n]}return[e,r]}function ty(t,e=t.schema){let{gen:r,data:n,it:o}=t;if(Object.keys(e).length===0)return;let s=r.let("missing");for(let i in e){let a=e[i];if(a.length===0)continue;let c=(0,Bo.propertyInData)(r,n,i,o.opts.ownProperties);t.setParams({property:i,depsCount:a.length,deps:a.join(", ")}),o.allErrors?r.if(c,()=>{for(let u of a)(0,Bo.checkReportMissingProp)(t,u)}):(r.if((0,hd._)`${c} && (${(0,Bo.checkMissingProp)(t,a,s)})`),(0,Bo.reportMissingProp)(t,s),r.else())}}qt.validatePropertyDeps=ty;function ry(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,az.alwaysValidSchema)(s,e[a])||(r.if((0,Bo.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let c=t.subschema({keyword:o,schemaProp:a},i);t.mergeValidEvaluated(c,i)},()=>r.var(i,!0)),t.ok(i))}qt.validateSchemaDeps=ry;qt.default=cz});var sy=I(gd=>{"use strict";Object.defineProperty(gd,"__esModule",{value:!0});var oy=J(),lz=ce(),dz={message:"property name must be valid",params:({params:t})=>(0,oy._)`{propertyName: ${t.propertyName}}`},pz={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:dz,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,lz.alwaysValidSchema)(o,r))return;let s=e.name("valid");e.forIn("key",n,i=>{t.setParams({propertyName:i}),t.subschema({keyword:"propertyNames",data:i,dataTypes:["string"],propertyName:i,compositeRule:!0},s),e.if((0,oy.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};gd.default=pz});var _d=I(yd=>{"use strict";Object.defineProperty(yd,"__esModule",{value:!0});var Zi=gt(),zt=J(),fz=Qt(),Di=ce(),mz={message:"must NOT have additional properties",params:({params:t})=>(0,zt._)`{additionalProperty: ${t.additionalProperty}}`},hz={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:mz,code(t){let{gen:e,schema:r,parentSchema:n,data:o,errsCount:s,it:i}=t;if(!s)throw new Error("ajv implementation error");let{allErrors:a,opts:c}=i;if(i.props=!0,c.removeAdditional!=="all"&&(0,Di.alwaysValidSchema)(i,r))return;let u=(0,Zi.allSchemaProperties)(n.properties),l=(0,Zi.allSchemaProperties)(n.patternProperties);d(),t.ok((0,zt._)`${s} === ${fz.default.errors}`);function d(){e.forIn("key",o,h=>{!u.length&&!l.length?f(h):e.if(p(h),()=>f(h))})}function p(h){let y;if(u.length>8){let v=(0,Di.schemaRefOrVal)(i,n.properties,"properties");y=(0,Zi.isOwnProperty)(e,v,h)}else u.length?y=(0,zt.or)(...u.map(v=>(0,zt._)`${h} === ${v}`)):y=zt.nil;return l.length&&(y=(0,zt.or)(y,...l.map(v=>(0,zt._)`${(0,Zi.usePattern)(t,v)}.test(${h})`))),(0,zt.not)(y)}function m(h){e.code((0,zt._)`delete ${o}[${h}]`)}function f(h){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){m(h);return}if(r===!1){t.setParams({additionalProperty:h}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,Di.alwaysValidSchema)(i,r)){let y=e.name("valid");c.removeAdditional==="failing"?(g(h,y,!1),e.if((0,zt.not)(y),()=>{t.reset(),m(h)})):(g(h,y),a||e.if((0,zt.not)(y),()=>e.break()))}}function g(h,y,v){let x={keyword:"additionalProperties",dataProp:h,dataPropType:Di.Type.Str};v===!1&&Object.assign(x,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(x,y)}}};yd.default=hz});var cy=I(xd=>{"use strict";Object.defineProperty(xd,"__esModule",{value:!0});var gz=Ao(),iy=gt(),vd=ce(),ay=_d(),yz={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:o,it:s}=t;s.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&ay.default.code(new gz.KeywordCxt(s,ay.default,"additionalProperties"));let i=(0,iy.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=vd.mergeEvaluated.props(e,(0,vd.toHash)(i),s.props));let a=i.filter(d=>!(0,vd.alwaysValidSchema)(s,r[d]));if(a.length===0)return;let c=e.name("valid");for(let d of a)u(d)?l(d):(e.if((0,iy.propertyInData)(e,o,d,s.opts.ownProperties)),l(d),s.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return s.opts.useDefaults&&!s.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};xd.default=yz});var py=I(bd=>{"use strict";Object.defineProperty(bd,"__esModule",{value:!0});var uy=gt(),qi=J(),ly=ce(),dy=ce(),_z={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:o,it:s}=t,{opts:i}=s,a=(0,uy.allSchemaProperties)(r),c=a.filter(g=>(0,ly.alwaysValidSchema)(s,r[g]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let u=i.strictSchema&&!i.allowMatchingProperties&&o.properties,l=e.name("valid");s.props!==!0&&!(s.props instanceof qi.Name)&&(s.props=(0,dy.evaluatedPropsToName)(e,s.props));let{props:d}=s;p();function p(){for(let g of a)u&&m(g),s.allErrors?f(g):(e.var(l,!0),f(g),e.if(l))}function m(g){for(let h in u)new RegExp(g).test(h)&&(0,ly.checkStrictMode)(s,`property ${h} matches pattern ${g} (use allowMatchingProperties)`)}function f(g){e.forIn("key",n,h=>{e.if((0,qi._)`${(0,uy.usePattern)(t,g)}.test(${h})`,()=>{let y=c.includes(g);y||t.subschema({keyword:"patternProperties",schemaProp:g,dataProp:h,dataPropType:dy.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,qi._)`${d}[${h}]`,!0):!y&&!s.allErrors&&e.if((0,qi.not)(l),()=>e.break())})})}}};bd.default=_z});var fy=I(wd=>{"use strict";Object.defineProperty(wd,"__esModule",{value:!0});var vz=ce(),xz={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,vz.alwaysValidSchema)(n,r)){t.fail();return}let o=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},o),t.failResult(o,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};wd.default=xz});var my=I($d=>{"use strict";Object.defineProperty($d,"__esModule",{value:!0});var bz=gt(),wz={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:bz.validateUnion,error:{message:"must match a schema in anyOf"}};$d.default=wz});var hy=I(kd=>{"use strict";Object.defineProperty(kd,"__esModule",{value:!0});var Li=J(),$z=ce(),kz={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Li._)`{passingSchemas: ${t.passing}}`},Sz={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:kz,code(t){let{gen:e,schema:r,parentSchema:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(o.opts.discriminator&&n.discriminator)return;let s=r,i=e.let("valid",!1),a=e.let("passing",null),c=e.name("_valid");t.setParams({passing:a}),e.block(u),t.result(i,()=>t.reset(),()=>t.error(!0));function u(){s.forEach((l,d)=>{let p;(0,$z.alwaysValidSchema)(o,l)?e.var(c,!0):p=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Li._)`${c} && ${i}`).assign(i,!1).assign(a,(0,Li._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),p&&t.mergeEvaluated(p,Li.Name)})})}}};kd.default=Sz});var gy=I(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});var Tz=ce(),zz={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let o=e.name("valid");r.forEach((s,i)=>{if((0,Tz.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Sd.default=zz});var vy=I(Td=>{"use strict";Object.defineProperty(Td,"__esModule",{value:!0});var Fi=J(),_y=ce(),Ez={message:({params:t})=>(0,Fi.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,Fi._)`{failingKeyword: ${t.ifClause}}`},Pz={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:Ez,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,_y.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=yy(n,"then"),s=yy(n,"else");if(!o&&!s)return;let i=e.let("valid",!0),a=e.name("_valid");if(c(),t.reset(),o&&s){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(a,u("then",l),u("else",l))}else o?e.if(a,u("then")):e.if((0,Fi.not)(a),u("else"));t.pass(i,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(l)}function u(l,d){return()=>{let p=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(p,i),d?e.assign(d,(0,Fi._)`${l}`):t.setParams({ifClause:l})}}}};function yy(t,e){let r=t.schema[e];return r!==void 0&&!(0,_y.alwaysValidSchema)(t,r)}Td.default=Pz});var xy=I(zd=>{"use strict";Object.defineProperty(zd,"__esModule",{value:!0});var Rz=ce(),Iz={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,Rz.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};zd.default=Iz});var by=I(Ed=>{"use strict";Object.defineProperty(Ed,"__esModule",{value:!0});var Oz=ld(),Mz=Qg(),Az=dd(),Cz=Yg(),Nz=ey(),jz=ny(),Zz=sy(),Dz=_d(),qz=cy(),Lz=py(),Fz=fy(),Uz=my(),Vz=hy(),Hz=gy(),Gz=vy(),Wz=xy();function Bz(t=!1){let e=[Fz.default,Uz.default,Vz.default,Hz.default,Gz.default,Wz.default,Zz.default,Dz.default,jz.default,qz.default,Lz.default];return t?e.push(Mz.default,Cz.default):e.push(Oz.default,Az.default),e.push(Nz.default),e}Ed.default=Bz});var wy=I(Pd=>{"use strict";Object.defineProperty(Pd,"__esModule",{value:!0});var Ee=J(),Kz={message:({schemaCode:t})=>(0,Ee.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,Ee._)`{format: ${t}}`},Jz={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:Kz,code(t,e){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;o?p():m();function p(){let f=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),g=r.const("fDef",(0,Ee._)`${f}[${i}]`),h=r.let("fType"),y=r.let("format");r.if((0,Ee._)`typeof ${g} == "object" && !(${g} instanceof RegExp)`,()=>r.assign(h,(0,Ee._)`${g}.type || "string"`).assign(y,(0,Ee._)`${g}.validate`),()=>r.assign(h,(0,Ee._)`"string"`).assign(y,g)),t.fail$data((0,Ee.or)(v(),x()));function v(){return c.strictSchema===!1?Ee.nil:(0,Ee._)`${i} && !${y}`}function x(){let b=l.$async?(0,Ee._)`(${g}.async ? await ${y}(${n}) : ${y}(${n}))`:(0,Ee._)`${y}(${n})`,_=(0,Ee._)`(typeof ${y} == "function" ? ${b} : ${y}.test(${n}))`;return(0,Ee._)`${y} && ${y} !== true && ${h} === ${e} && !${_}`}}function m(){let f=d.formats[s];if(!f){v();return}if(f===!0)return;let[g,h,y]=x(f);g===e&&t.pass(b());function v(){if(c.strictSchema===!1){d.logger.warn(_());return}throw new Error(_());function _(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function x(_){let z=_ instanceof RegExp?(0,Ee.regexpCode)(_):c.code.formats?(0,Ee._)`${c.code.formats}${(0,Ee.getProperty)(s)}`:void 0,q=r.scopeValue("formats",{key:s,ref:_,code:z});return typeof _=="object"&&!(_ instanceof RegExp)?[_.type||"string",_.validate,(0,Ee._)`${q}.validate`]:["string",_,q]}function b(){if(typeof f=="object"&&!(f instanceof RegExp)&&f.async){if(!l.$async)throw new Error("async format in sync schema");return(0,Ee._)`await ${y}(${n})`}return typeof h=="function"?(0,Ee._)`${y}(${n})`:(0,Ee._)`${y}.test(${n})`}}}};Pd.default=Jz});var $y=I(Rd=>{"use strict";Object.defineProperty(Rd,"__esModule",{value:!0});var Qz=wy(),Xz=[Qz.default];Rd.default=Xz});var ky=I(Cn=>{"use strict";Object.defineProperty(Cn,"__esModule",{value:!0});Cn.contentVocabulary=Cn.metadataVocabulary=void 0;Cn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Cn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Ty=I(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});var Yz=Mg(),eE=Wg(),tE=by(),rE=$y(),Sy=ky(),nE=[Yz.default,eE.default,(0,tE.default)(),rE.default,Sy.metadataVocabulary,Sy.contentVocabulary];Id.default=nE});var Ey=I(Ui=>{"use strict";Object.defineProperty(Ui,"__esModule",{value:!0});Ui.DiscrError=void 0;var zy;(function(t){t.Tag="tag",t.Mapping="mapping"})(zy||(Ui.DiscrError=zy={}))});var Ry=I(Md=>{"use strict";Object.defineProperty(Md,"__esModule",{value:!0});var Nn=J(),Od=Ey(),Py=ki(),oE=Co(),sE=ce(),iE={message:({params:{discrError:t,tagName:e}})=>t===Od.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Nn._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},aE={keyword:"discriminator",type:"object",schemaType:"object",error:iE,code(t){let{gen:e,data:r,schema:n,parentSchema:o,it:s}=t,{oneOf:i}=o;if(!s.opts.discriminator)throw new Error("discriminator: requires discriminator option");let a=n.propertyName;if(typeof a!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!i)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),u=e.const("tag",(0,Nn._)`${r}${(0,Nn.getProperty)(a)}`);e.if((0,Nn._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:Od.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let m=p();e.if(!1);for(let f in m)e.elseIf((0,Nn._)`${u} === ${f}`),e.assign(c,d(m[f]));e.else(),t.error(!1,{discrError:Od.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(m){let f=e.name("valid"),g=t.subschema({keyword:"oneOf",schemaProp:m},f);return t.mergeEvaluated(g,Nn.Name),f}function p(){var m;let f={},g=y(o),h=!0;for(let b=0;b<i.length;b++){let _=i[b];if(_?.$ref&&!(0,sE.schemaHasRulesButRef)(_,s.self.RULES)){let q=_.$ref;if(_=Py.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,q),_ instanceof Py.SchemaEnv&&(_=_.schema),_===void 0)throw new oE.default(s.opts.uriResolver,s.baseId,q)}let z=(m=_?.properties)===null||m===void 0?void 0:m[a];if(typeof z!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);h=h&&(g||y(_)),v(z,b)}if(!h)throw new Error(`discriminator: "${a}" must be required`);return f;function y({required:b}){return Array.isArray(b)&&b.includes(a)}function v(b,_){if(b.const)x(b.const,_);else if(b.enum)for(let z of b.enum)x(z,_);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function x(b,_){if(typeof b!="string"||b in f)throw new Error(`discriminator: "${a}" values must be unique strings`);f[b]=_}}}};Md.default=aE});var Iy=I((c1,cE)=>{cE.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var Cd=I((ve,Ad)=>{"use strict";Object.defineProperty(ve,"__esModule",{value:!0});ve.MissingRefError=ve.ValidationError=ve.CodeGen=ve.Name=ve.nil=ve.stringify=ve.str=ve._=ve.KeywordCxt=ve.Ajv=void 0;var uE=zg(),lE=Ty(),dE=Ry(),Oy=Iy(),pE=["/properties"],Vi="http://json-schema.org/draft-07/schema",jn=class extends uE.default{_addVocabularies(){super._addVocabularies(),lE.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(dE.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Oy,pE):Oy;this.addMetaSchema(e,Vi,!1),this.refs["http://json-schema.org/schema"]=Vi}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Vi)?Vi:void 0)}};ve.Ajv=jn;Ad.exports=ve=jn;Ad.exports.Ajv=jn;Object.defineProperty(ve,"__esModule",{value:!0});ve.default=jn;var fE=Ao();Object.defineProperty(ve,"KeywordCxt",{enumerable:!0,get:function(){return fE.KeywordCxt}});var Zn=J();Object.defineProperty(ve,"_",{enumerable:!0,get:function(){return Zn._}});Object.defineProperty(ve,"str",{enumerable:!0,get:function(){return Zn.str}});Object.defineProperty(ve,"stringify",{enumerable:!0,get:function(){return Zn.stringify}});Object.defineProperty(ve,"nil",{enumerable:!0,get:function(){return Zn.nil}});Object.defineProperty(ve,"Name",{enumerable:!0,get:function(){return Zn.Name}});Object.defineProperty(ve,"CodeGen",{enumerable:!0,get:function(){return Zn.CodeGen}});var mE=wi();Object.defineProperty(ve,"ValidationError",{enumerable:!0,get:function(){return mE.default}});var hE=Co();Object.defineProperty(ve,"MissingRefError",{enumerable:!0,get:function(){return hE.default}})});var qy=I(Ft=>{"use strict";Object.defineProperty(Ft,"__esModule",{value:!0});Ft.formatNames=Ft.fastFormats=Ft.fullFormats=void 0;function Lt(t,e){return{validate:t,compare:e}}Ft.fullFormats={date:Lt(Ny,Dd),time:Lt(jd(!0),qd),"date-time":Lt(My(!0),Zy),"iso-time":Lt(jd(),jy),"iso-date-time":Lt(My(),Dy),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:bE,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:EE,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:wE,int32:{type:"number",validate:SE},int64:{type:"number",validate:TE},float:{type:"number",validate:Cy},double:{type:"number",validate:Cy},password:!0,binary:!0};Ft.fastFormats={...Ft.fullFormats,date:Lt(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Dd),time:Lt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,qd),"date-time":Lt(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Zy),"iso-time":Lt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,jy),"iso-date-time":Lt(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Dy),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};Ft.formatNames=Object.keys(Ft.fullFormats);function gE(t){return t%4===0&&(t%100!==0||t%400===0)}var yE=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,_E=[0,31,28,31,30,31,30,31,31,30,31,30,31];function Ny(t){let e=yE.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],o=+e[3];return n>=1&&n<=12&&o>=1&&o<=(n===2&&gE(r)?29:_E[n])}function Dd(t,e){if(t&&e)return t>e?1:t<e?-1:0}var Nd=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function jd(t){return function(r){let n=Nd.exec(r);if(!n)return!1;let o=+n[1],s=+n[2],i=+n[3],a=n[4],c=n[5]==="-"?-1:1,u=+(n[6]||0),l=+(n[7]||0);if(u>23||l>59||t&&!a)return!1;if(o<=23&&s<=59&&i<60)return!0;let d=s-l*c,p=o-u*c-(d<0?1:0);return(p===23||p===-1)&&(d===59||d===-1)&&i<61}}function qd(t,e){if(!(t&&e))return;let r=new Date("2020-01-01T"+t).valueOf(),n=new Date("2020-01-01T"+e).valueOf();if(r&&n)return r-n}function jy(t,e){if(!(t&&e))return;let r=Nd.exec(t),n=Nd.exec(e);if(r&&n)return t=r[1]+r[2]+r[3],e=n[1]+n[2]+n[3],t>e?1:t<e?-1:0}var Zd=/t|\s/i;function My(t){let e=jd(t);return function(n){let o=n.split(Zd);return o.length===2&&Ny(o[0])&&e(o[1])}}function Zy(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function Dy(t,e){if(!(t&&e))return;let[r,n]=t.split(Zd),[o,s]=e.split(Zd),i=Dd(r,o);if(i!==void 0)return i||qd(n,s)}var vE=/\/|:/,xE=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function bE(t){return vE.test(t)&&xE.test(t)}var Ay=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function wE(t){return Ay.lastIndex=0,Ay.test(t)}var $E=-(2**31),kE=2**31-1;function SE(t){return Number.isInteger(t)&&t<=kE&&t>=$E}function TE(t){return Number.isInteger(t)}function Cy(){return!0}var zE=/[^\\]\\Z/;function EE(t){if(zE.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var Ly=I(Dn=>{"use strict";Object.defineProperty(Dn,"__esModule",{value:!0});Dn.formatLimitDefinition=void 0;var PE=Cd(),Et=J(),yr=Et.operators,Hi={formatMaximum:{okStr:"<=",ok:yr.LTE,fail:yr.GT},formatMinimum:{okStr:">=",ok:yr.GTE,fail:yr.LT},formatExclusiveMaximum:{okStr:"<",ok:yr.LT,fail:yr.GTE},formatExclusiveMinimum:{okStr:">",ok:yr.GT,fail:yr.LTE}},RE={message:({keyword:t,schemaCode:e})=>(0,Et.str)`should be ${Hi[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Et._)`{comparison: ${Hi[t].okStr}, limit: ${e}}`};Dn.formatLimitDefinition={keyword:Object.keys(Hi),type:"string",schemaType:"string",$data:!0,error:RE,code(t){let{gen:e,data:r,schemaCode:n,keyword:o,it:s}=t,{opts:i,self:a}=s;if(!i.validateFormats)return;let c=new PE.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let p=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),m=e.const("fmt",(0,Et._)`${p}[${c.schemaCode}]`);t.fail$data((0,Et.or)((0,Et._)`typeof ${m} != "object"`,(0,Et._)`${m} instanceof RegExp`,(0,Et._)`typeof ${m}.compare != "function"`,d(m)))}function l(){let p=c.schema,m=a.formats[p];if(!m||m===!0)return;if(typeof m!="object"||m instanceof RegExp||typeof m.compare!="function")throw new Error(`"${o}": format "${p}" does not define "compare" function`);let f=e.scopeValue("formats",{key:p,ref:m,code:i.code.formats?(0,Et._)`${i.code.formats}${(0,Et.getProperty)(p)}`:void 0});t.fail$data(d(f))}function d(p){return(0,Et._)`${p}.compare(${r}, ${n}) ${Hi[o].fail} 0`}},dependencies:["format"]};var IE=t=>(t.addKeyword(Dn.formatLimitDefinition),t);Dn.default=IE});var Hy=I((Ko,Vy)=>{"use strict";Object.defineProperty(Ko,"__esModule",{value:!0});var qn=qy(),OE=Ly(),Ld=J(),Fy=new Ld.Name("fullFormats"),ME=new Ld.Name("fastFormats"),Fd=(t,e={keywords:!0})=>{if(Array.isArray(e))return Uy(t,e,qn.fullFormats,Fy),t;let[r,n]=e.mode==="fast"?[qn.fastFormats,ME]:[qn.fullFormats,Fy],o=e.formats||qn.formatNames;return Uy(t,o,r,n),e.keywords&&(0,OE.default)(t),t};Fd.get=(t,e="full")=>{let n=(e==="fast"?qn.fastFormats:qn.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function Uy(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,Ld._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}Vy.exports=Ko=Fd;Object.defineProperty(Ko,"__esModule",{value:!0});Ko.default=Fd});var BP={};cs(BP,{log:()=>ss});module.exports=H_(BP);var T={};cs(T,{BRAND:()=>yv,DIRTY:()=>kr,EMPTY_PATH:()=>K_,INVALID:()=>U,NEVER:()=>ex,OK:()=>qe,ParseStatus:()=>Oe,Schema:()=>K,ZodAny:()=>rr,ZodArray:()=>Wt,ZodBigInt:()=>Tr,ZodBoolean:()=>zr,ZodBranded:()=>Bn,ZodCatch:()=>Zr,ZodDate:()=>Er,ZodDefault:()=>jr,ZodDiscriminatedUnion:()=>ds,ZodEffects:()=>dt,ZodEnum:()=>Cr,ZodError:()=>Je,ZodFirstPartyTypeKind:()=>S,ZodFunction:()=>fs,ZodIntersection:()=>Or,ZodIssueCode:()=>k,ZodLazy:()=>Mr,ZodLiteral:()=>Ar,ZodMap:()=>mn,ZodNaN:()=>gn,ZodNativeEnum:()=>Nr,ZodNever:()=>xt,ZodNull:()=>Rr,ZodNullable:()=>Ct,ZodNumber:()=>Sr,ZodObject:()=>Xe,ZodOptional:()=>Qe,ZodParsedType:()=>O,ZodPipeline:()=>Kn,ZodPromise:()=>nr,ZodReadonly:()=>Dr,ZodRecord:()=>ps,ZodSchema:()=>K,ZodSet:()=>hn,ZodString:()=>tr,ZodSymbol:()=>pn,ZodTransformer:()=>dt,ZodTuple:()=>At,ZodType:()=>K,ZodUndefined:()=>Pr,ZodUnion:()=>Ir,ZodUnknown:()=>Gt,ZodVoid:()=>fn,addIssueToContext:()=>E,any:()=>Tv,array:()=>Rv,bigint:()=>bv,boolean:()=>wp,coerce:()=>Yv,custom:()=>vp,date:()=>wv,datetimeRegex:()=>yp,defaultErrorMap:()=>Vt,discriminatedUnion:()=>Mv,effect:()=>Hv,enum:()=>Fv,function:()=>Dv,getErrorMap:()=>un,getParsedType:()=>Mt,instanceof:()=>vv,intersection:()=>Av,isAborted:()=>us,isAsync:()=>ln,isDirty:()=>ls,isValid:()=>er,late:()=>_v,lazy:()=>qv,literal:()=>Lv,makeIssue:()=>Wn,map:()=>jv,nan:()=>xv,nativeEnum:()=>Uv,never:()=>Ev,null:()=>Sv,nullable:()=>Wv,number:()=>bp,object:()=>_a,objectUtil:()=>ha,oboolean:()=>Xv,onumber:()=>Qv,optional:()=>Gv,ostring:()=>Jv,pipeline:()=>Kv,preprocess:()=>Bv,promise:()=>Vv,quotelessJson:()=>G_,record:()=>Nv,set:()=>Zv,setErrorMap:()=>B_,strictObject:()=>Iv,string:()=>xp,symbol:()=>$v,transformer:()=>Hv,tuple:()=>Cv,undefined:()=>kv,union:()=>Ov,unknown:()=>zv,util:()=>Y,void:()=>Pv});var Y;(function(t){t.assertEqual=o=>{};function e(o){}t.assertIs=e;function r(o){throw new Error}t.assertNever=r,t.arrayToEnum=o=>{let s={};for(let i of o)s[i]=i;return s},t.getValidEnumValues=o=>{let s=t.objectKeys(o).filter(a=>typeof o[o[a]]!="number"),i={};for(let a of s)i[a]=o[a];return t.objectValues(i)},t.objectValues=o=>t.objectKeys(o).map(function(s){return o[s]}),t.objectKeys=typeof Object.keys=="function"?o=>Object.keys(o):o=>{let s=[];for(let i in o)Object.prototype.hasOwnProperty.call(o,i)&&s.push(i);return s},t.find=(o,s)=>{for(let i of o)if(s(i))return i},t.isInteger=typeof Number.isInteger=="function"?o=>Number.isInteger(o):o=>typeof o=="number"&&Number.isFinite(o)&&Math.floor(o)===o;function n(o,s=" | "){return o.map(i=>typeof i=="string"?`'${i}'`:i).join(s)}t.joinValues=n,t.jsonStringifyReplacer=(o,s)=>typeof s=="bigint"?s.toString():s})(Y||(Y={}));var ha;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(ha||(ha={}));var O=Y.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Mt=t=>{switch(typeof t){case"undefined":return O.undefined;case"string":return O.string;case"number":return Number.isNaN(t)?O.nan:O.number;case"boolean":return O.boolean;case"function":return O.function;case"bigint":return O.bigint;case"symbol":return O.symbol;case"object":return Array.isArray(t)?O.array:t===null?O.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?O.promise:typeof Map<"u"&&t instanceof Map?O.map:typeof Set<"u"&&t instanceof Set?O.set:typeof Date<"u"&&t instanceof Date?O.date:O.object;default:return O.unknown}};var k=Y.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"]),G_=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Je=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union")i.unionErrors.map(o);else if(i.code==="invalid_return_type")o(i.returnTypeError);else if(i.code==="invalid_arguments")o(i.argumentsError);else if(i.path.length===0)n._errors.push(r(i));else{let a=n,c=0;for(;c<i.path.length;){let u=i.path[c];c===i.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(i))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return o(this),n}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,Y.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=r=>r.message){let r={},n=[];for(let o of this.issues)if(o.path.length>0){let s=o.path[0];r[s]=r[s]||[],r[s].push(e(o))}else n.push(e(o));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};Je.create=t=>new Je(t);var W_=(t,e)=>{let r;switch(t.code){case k.invalid_type:t.received===O.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case k.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,Y.jsonStringifyReplacer)}`;break;case k.unrecognized_keys:r=`Unrecognized key(s) in object: ${Y.joinValues(t.keys,", ")}`;break;case k.invalid_union:r="Invalid input";break;case k.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${Y.joinValues(t.options)}`;break;case k.invalid_enum_value:r=`Invalid enum value. Expected ${Y.joinValues(t.options)}, received '${t.received}'`;break;case k.invalid_arguments:r="Invalid function arguments";break;case k.invalid_return_type:r="Invalid function return type";break;case k.invalid_date:r="Invalid date";break;case k.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:Y.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case k.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case k.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case k.custom:r="Invalid input";break;case k.invalid_intersection_types:r="Intersection results could not be merged";break;case k.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case k.not_finite:r="Number must be finite";break;default:r=e.defaultError,Y.assertNever(t)}return{message:r}},Vt=W_;var pp=Vt;function B_(t){pp=t}function un(){return pp}var Wn=t=>{let{data:e,path:r,errorMaps:n,issueData:o}=t,s=[...r,...o.path||[]],i={...o,path:s};if(o.message!==void 0)return{...o,path:s,message:o.message};let a="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)a=u(i,{data:e,defaultError:a}).message;return{...o,path:s,message:a}},K_=[];function E(t,e){let r=un(),n=Wn({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===Vt?void 0:Vt].filter(o=>!!o)});t.common.issues.push(n)}var Oe=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let o of r){if(o.status==="aborted")return U;o.status==="dirty"&&e.dirty(),n.push(o.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let o of r){let s=await o.key,i=await o.value;n.push({key:s,value:i})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let o of r){let{key:s,value:i}=o;if(s.status==="aborted"||i.status==="aborted")return U;s.status==="dirty"&&e.dirty(),i.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof i.value<"u"||o.alwaysSet)&&(n[s.value]=i.value)}return{status:e.value,value:n}}},U=Object.freeze({status:"aborted"}),kr=t=>({status:"dirty",value:t}),qe=t=>({status:"valid",value:t}),us=t=>t.status==="aborted",ls=t=>t.status==="dirty",er=t=>t.status==="valid",ln=t=>typeof Promise<"u"&&t instanceof Promise;var A;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(A||(A={}));var lt=class{constructor(e,r,n,o){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=o}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},fp=(t,e)=>{if(er(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new Je(t.common.issues);return this._error=r,this._error}}};function W(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:o}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:o}:{errorMap:(i,a)=>{let{message:c}=t;return i.code==="invalid_enum_value"?{message:c??a.defaultError}:typeof a.data>"u"?{message:c??n??a.defaultError}:i.code!=="invalid_type"?{message:a.defaultError}:{message:c??r??a.defaultError}},description:o}}var K=class{get description(){return this._def.description}_getType(e){return Mt(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:Mt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Oe,ctx:{common:e.parent.common,data:e.data,parsedType:Mt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(ln(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Mt(e)},o=this._parseSync({data:e,path:n.path,parent:n});return fp(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Mt(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return er(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(n=>er(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(e,r){let n=await this.safeParseAsync(e,r);if(n.success)return n.data;throw n.error}async safeParseAsync(e,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Mt(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(ln(o)?o:Promise.resolve(o));return fp(n,s)}refine(e,r){let n=o=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(o):r;return this._refinement((o,s)=>{let i=e(o),a=()=>s.addIssue({code:k.custom,...n(o)});return typeof Promise<"u"&&i instanceof Promise?i.then(c=>c?!0:(a(),!1)):i?!0:(a(),!1)})}refinement(e,r){return this._refinement((n,o)=>e(n)?!0:(o.addIssue(typeof r=="function"?r(n,o):r),!1))}_refinement(e){return new dt({schema:this,typeName:S.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}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),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return Qe.create(this,this._def)}nullable(){return Ct.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Wt.create(this)}promise(){return nr.create(this,this._def)}or(e){return Ir.create([this,e],this._def)}and(e){return Or.create(this,e,this._def)}transform(e){return new dt({...W(this._def),schema:this,typeName:S.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new jr({...W(this._def),innerType:this,defaultValue:r,typeName:S.ZodDefault})}brand(){return new Bn({typeName:S.ZodBranded,type:this,...W(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Zr({...W(this._def),innerType:this,catchValue:r,typeName:S.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return Kn.create(this,e)}readonly(){return Dr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},J_=/^c[^\s-]{8,}$/i,Q_=/^[0-9a-z]+$/,X_=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Y_=/^[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,ev=/^[a-z0-9_-]{21}$/i,tv=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,rv=/^[-+]?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)?)??$/,nv=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,ov="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",ga,sv=/^(?:(?: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])$/,iv=/^(?:(?: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])\/(3[0-2]|[12]?[0-9])$/,av=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,cv=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,uv=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,lv=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,hp="((\\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])))",dv=new RegExp(`^${hp}$`);function gp(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let r=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${r}`}function pv(t){return new RegExp(`^${gp(t)}$`)}function yp(t){let e=`${hp}T${gp(t)}`,r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function fv(t,e){return!!((e==="v4"||!e)&&sv.test(t)||(e==="v6"||!e)&&av.test(t))}function mv(t,e){if(!tv.test(t))return!1;try{let[r]=t.split(".");if(!r)return!1;let n=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),o=JSON.parse(atob(n));return!(typeof o!="object"||o===null||"typ"in o&&o?.typ!=="JWT"||!o.alg||e&&o.alg!==e)}catch{return!1}}function hv(t,e){return!!((e==="v4"||!e)&&iv.test(t)||(e==="v6"||!e)&&cv.test(t))}var tr=class t extends K{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==O.string){let s=this._getOrReturnCtx(e);return E(s,{code:k.invalid_type,expected:O.string,received:s.parsedType}),U}let n=new Oe,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),E(o,{code:k.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="max")e.data.length>s.value&&(o=this._getOrReturnCtx(e,o),E(o,{code:k.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="length"){let i=e.data.length>s.value,a=e.data.length<s.value;(i||a)&&(o=this._getOrReturnCtx(e,o),i?E(o,{code:k.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&E(o,{code:k.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")nv.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"email",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")ga||(ga=new RegExp(ov,"u")),ga.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"emoji",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")Y_.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"uuid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")ev.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"nanoid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")J_.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"cuid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")Q_.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"cuid2",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")X_.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"ulid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{o=this._getOrReturnCtx(e,o),E(o,{validation:"url",code:k.invalid_string,message:s.message}),n.dirty()}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"regex",code:k.invalid_string,message:s.message}),n.dirty())):s.kind==="trim"?e.data=e.data.trim():s.kind==="includes"?e.data.includes(s.value,s.position)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),n.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)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:{startsWith:s.value},message:s.message}),n.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?yp(s).test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?dv.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?pv(s).test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?rv.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"duration",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?fv(e.data,s.version)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"ip",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?mv(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"jwt",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?hv(e.data,s.version)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"cidr",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?uv.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"base64",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?lv.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"base64url",code:k.invalid_string,message:s.message}),n.dirty()):Y.assertNever(s);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(o=>e.test(o),{validation:r,code:k.invalid_string,...A.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...A.errToObj(e)})}url(e){return this._addCheck({kind:"url",...A.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...A.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...A.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...A.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...A.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...A.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...A.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...A.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...A.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...A.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...A.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...A.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...A.errToObj(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?.precision>"u"?null:e?.precision,...A.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...A.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...A.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...A.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...A.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...A.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...A.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...A.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...A.errToObj(r)})}nonempty(e){return this.min(1,A.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...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 isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};tr.create=t=>new tr({checks:[],typeName:S.ZodString,coerce:t?.coerce??!1,...W(t)});function gv(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}var Sr=class t extends K{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)!==O.number){let s=this._getOrReturnCtx(e);return E(s,{code:k.invalid_type,expected:O.number,received:s.parsedType}),U}let n,o=new Oe;for(let s of this._def.checks)s.kind==="int"?Y.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),E(n,{code:k.invalid_type,expected:"integer",received:"float",message:s.message}),o.dirty()):s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),E(n,{code:k.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),E(n,{code:k.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?gv(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),E(n,{code:k.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),E(n,{code:k.not_finite,message:s.message}),o.dirty()):Y.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,A.toString(r))}gt(e,r){return this.setLimit("min",e,!1,A.toString(r))}lte(e,r){return this.setLimit("max",e,!0,A.toString(r))}lt(e,r){return this.setLimit("max",e,!1,A.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:A.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:A.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:A.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:A.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:A.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:A.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:A.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:A.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:A.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:A.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&Y.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(r)&&Number.isFinite(e)}};Sr.create=t=>new Sr({checks:[],typeName:S.ZodNumber,coerce:t?.coerce||!1,...W(t)});var Tr=class t extends K{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==O.bigint)return this._getInvalidInput(e);let n,o=new Oe;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),E(n,{code:k.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),E(n,{code:k.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),E(n,{code:k.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):Y.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return E(r,{code:k.invalid_type,expected:O.bigint,received:r.parsedType}),U}gte(e,r){return this.setLimit("min",e,!0,A.toString(r))}gt(e,r){return this.setLimit("min",e,!1,A.toString(r))}lte(e,r){return this.setLimit("max",e,!0,A.toString(r))}lt(e,r){return this.setLimit("max",e,!1,A.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:A.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:A.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:A.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:A.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:A.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:A.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};Tr.create=t=>new Tr({checks:[],typeName:S.ZodBigInt,coerce:t?.coerce??!1,...W(t)});var zr=class extends K{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==O.boolean){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:O.boolean,received:n.parsedType}),U}return qe(e.data)}};zr.create=t=>new zr({typeName:S.ZodBoolean,coerce:t?.coerce||!1,...W(t)});var Er=class t extends K{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==O.date){let s=this._getOrReturnCtx(e);return E(s,{code:k.invalid_type,expected:O.date,received:s.parsedType}),U}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return E(s,{code:k.invalid_date}),U}let n=new Oe,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),E(o,{code:k.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),n.dirty()):s.kind==="max"?e.data.getTime()>s.value&&(o=this._getOrReturnCtx(e,o),E(o,{code:k.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):Y.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:A.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:A.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}};Er.create=t=>new Er({checks:[],coerce:t?.coerce||!1,typeName:S.ZodDate,...W(t)});var pn=class extends K{_parse(e){if(this._getType(e)!==O.symbol){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:O.symbol,received:n.parsedType}),U}return qe(e.data)}};pn.create=t=>new pn({typeName:S.ZodSymbol,...W(t)});var Pr=class extends K{_parse(e){if(this._getType(e)!==O.undefined){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:O.undefined,received:n.parsedType}),U}return qe(e.data)}};Pr.create=t=>new Pr({typeName:S.ZodUndefined,...W(t)});var Rr=class extends K{_parse(e){if(this._getType(e)!==O.null){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:O.null,received:n.parsedType}),U}return qe(e.data)}};Rr.create=t=>new Rr({typeName:S.ZodNull,...W(t)});var rr=class extends K{constructor(){super(...arguments),this._any=!0}_parse(e){return qe(e.data)}};rr.create=t=>new rr({typeName:S.ZodAny,...W(t)});var Gt=class extends K{constructor(){super(...arguments),this._unknown=!0}_parse(e){return qe(e.data)}};Gt.create=t=>new Gt({typeName:S.ZodUnknown,...W(t)});var xt=class extends K{_parse(e){let r=this._getOrReturnCtx(e);return E(r,{code:k.invalid_type,expected:O.never,received:r.parsedType}),U}};xt.create=t=>new xt({typeName:S.ZodNever,...W(t)});var fn=class extends K{_parse(e){if(this._getType(e)!==O.undefined){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:O.void,received:n.parsedType}),U}return qe(e.data)}};fn.create=t=>new fn({typeName:S.ZodVoid,...W(t)});var Wt=class t extends K{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==O.array)return E(r,{code:k.invalid_type,expected:O.array,received:r.parsedType}),U;if(o.exactLength!==null){let i=r.data.length>o.exactLength.value,a=r.data.length<o.exactLength.value;(i||a)&&(E(r,{code:i?k.too_big:k.too_small,minimum:a?o.exactLength.value:void 0,maximum:i?o.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:o.exactLength.message}),n.dirty())}if(o.minLength!==null&&r.data.length<o.minLength.value&&(E(r,{code:k.too_small,minimum:o.minLength.value,type:"array",inclusive:!0,exact:!1,message:o.minLength.message}),n.dirty()),o.maxLength!==null&&r.data.length>o.maxLength.value&&(E(r,{code:k.too_big,maximum:o.maxLength.value,type:"array",inclusive:!0,exact:!1,message:o.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((i,a)=>o.type._parseAsync(new lt(r,i,r.path,a)))).then(i=>Oe.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new lt(r,i,r.path,a)));return Oe.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:A.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:A.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:A.toString(r)}})}nonempty(e){return this.min(1,e)}};Wt.create=(t,e)=>new Wt({type:t,minLength:null,maxLength:null,exactLength:null,typeName:S.ZodArray,...W(e)});function dn(t){if(t instanceof Xe){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=Qe.create(dn(n))}return new Xe({...t._def,shape:()=>e})}else return t instanceof Wt?new Wt({...t._def,type:dn(t.element)}):t instanceof Qe?Qe.create(dn(t.unwrap())):t instanceof Ct?Ct.create(dn(t.unwrap())):t instanceof At?At.create(t.items.map(e=>dn(e))):t}var Xe=class t extends K{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=Y.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==O.object){let u=this._getOrReturnCtx(e);return E(u,{code:k.invalid_type,expected:O.object,received:u.parsedType}),U}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof xt&&this._def.unknownKeys==="strip"))for(let u in o.data)i.includes(u)||a.push(u);let c=[];for(let u of i){let l=s[u],d=o.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new lt(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof xt){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:o.data[l]}});else if(u==="strict")a.length>0&&(E(o,{code:k.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let d=o.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new lt(o,d,o.path,l)),alwaysSet:l in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,p=await l.value;u.push({key:d,value:p,alwaysSet:l.alwaysSet})}return u}).then(u=>Oe.mergeObjectSync(n,u)):Oe.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return A.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let o=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:A.errToObj(e).message??o}:{message:o}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:S.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of Y.objectKeys(e))e[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let n of Y.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return dn(this)}partial(e){let r={};for(let n of Y.objectKeys(this.shape)){let o=this.shape[n];e&&!e[n]?r[n]=o:r[n]=o.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of Y.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof Qe;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return _p(Y.objectKeys(this.shape))}};Xe.create=(t,e)=>new Xe({shape:()=>t,unknownKeys:"strip",catchall:xt.create(),typeName:S.ZodObject,...W(e)});Xe.strictCreate=(t,e)=>new Xe({shape:()=>t,unknownKeys:"strict",catchall:xt.create(),typeName:S.ZodObject,...W(e)});Xe.lazycreate=(t,e)=>new Xe({shape:t,unknownKeys:"strip",catchall:xt.create(),typeName:S.ZodObject,...W(e)});var Ir=class extends K{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function o(s){for(let a of s)if(a.result.status==="valid")return a.result;for(let a of s)if(a.result.status==="dirty")return r.common.issues.push(...a.ctx.common.issues),a.result;let i=s.map(a=>new Je(a.ctx.common.issues));return E(r,{code:k.invalid_union,unionErrors:i}),U}if(r.common.async)return Promise.all(n.map(async s=>{let i={...r,common:{...r.common,issues:[]},parent:null};return{result:await s._parseAsync({data:r.data,path:r.path,parent:i}),ctx:i}})).then(o);{let s,i=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},l=c._parseSync({data:r.data,path:r.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!s&&(s={result:l,ctx:u}),u.common.issues.length&&i.push(u.common.issues)}if(s)return r.common.issues.push(...s.ctx.common.issues),s.result;let a=i.map(c=>new Je(c));return E(r,{code:k.invalid_union,unionErrors:a}),U}}get options(){return this._def.options}};Ir.create=(t,e)=>new Ir({options:t,typeName:S.ZodUnion,...W(e)});var Ht=t=>t instanceof Mr?Ht(t.schema):t instanceof dt?Ht(t.innerType()):t instanceof Ar?[t.value]:t instanceof Cr?t.options:t instanceof Nr?Y.objectValues(t.enum):t instanceof jr?Ht(t._def.innerType):t instanceof Pr?[void 0]:t instanceof Rr?[null]:t instanceof Qe?[void 0,...Ht(t.unwrap())]:t instanceof Ct?[null,...Ht(t.unwrap())]:t instanceof Bn||t instanceof Dr?Ht(t.unwrap()):t instanceof Zr?Ht(t._def.innerType):[],ds=class t extends K{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.object)return E(r,{code:k.invalid_type,expected:O.object,received:r.parsedType}),U;let n=this.discriminator,o=r.data[n],s=this.optionsMap.get(o);return s?r.common.async?s._parseAsync({data:r.data,path:r.path,parent:r}):s._parseSync({data:r.data,path:r.path,parent:r}):(E(r,{code:k.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),U)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let o=new Map;for(let s of r){let i=Ht(s.shape[e]);if(!i.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of i){if(o.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);o.set(a,s)}}return new t({typeName:S.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...W(n)})}};function ya(t,e){let r=Mt(t),n=Mt(e);if(t===e)return{valid:!0,data:t};if(r===O.object&&n===O.object){let o=Y.objectKeys(e),s=Y.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=ya(t[a],e[a]);if(!c.valid)return{valid:!1};i[a]=c.data}return{valid:!0,data:i}}else if(r===O.array&&n===O.array){if(t.length!==e.length)return{valid:!1};let o=[];for(let s=0;s<t.length;s++){let i=t[s],a=e[s],c=ya(i,a);if(!c.valid)return{valid:!1};o.push(c.data)}return{valid:!0,data:o}}else return r===O.date&&n===O.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var Or=class extends K{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(us(s)||us(i))return U;let a=ya(s.value,i.value);return a.valid?((ls(s)||ls(i))&&r.dirty(),{status:r.value,value:a.data}):(E(n,{code:k.invalid_intersection_types}),U)};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(([s,i])=>o(s,i)):o(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};Or.create=(t,e,r)=>new Or({left:t,right:e,typeName:S.ZodIntersection,...W(r)});var At=class t extends K{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.array)return E(n,{code:k.invalid_type,expected:O.array,received:n.parsedType}),U;if(n.data.length<this._def.items.length)return E(n,{code:k.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),U;!this._def.rest&&n.data.length>this._def.items.length&&(E(n,{code:k.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let s=[...n.data].map((i,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new lt(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>Oe.mergeArray(r,i)):Oe.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};At.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new At({items:t,typeName:S.ZodTuple,rest:null,...W(e)})};var ps=class t extends K{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.object)return E(n,{code:k.invalid_type,expected:O.object,received:n.parsedType}),U;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in n.data)o.push({key:s._parse(new lt(n,a,n.path,a)),value:i._parse(new lt(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Oe.mergeObjectAsync(r,o):Oe.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof K?new t({keyType:e,valueType:r,typeName:S.ZodRecord,...W(n)}):new t({keyType:tr.create(),valueType:e,typeName:S.ZodRecord,...W(r)})}},mn=class extends K{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.map)return E(n,{code:k.invalid_type,expected:O.map,received:n.parsedType}),U;let o=this._def.keyType,s=this._def.valueType,i=[...n.data.entries()].map(([a,c],u)=>({key:o._parse(new lt(n,a,n.path,[u,"key"])),value:s._parse(new lt(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of i){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return U;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}})}else{let a=new Map;for(let c of i){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return U;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};mn.create=(t,e,r)=>new mn({valueType:e,keyType:t,typeName:S.ZodMap,...W(r)});var hn=class t extends K{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.set)return E(n,{code:k.invalid_type,expected:O.set,received:n.parsedType}),U;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(E(n,{code:k.too_small,minimum:o.minSize.value,type:"set",inclusive:!0,exact:!1,message:o.minSize.message}),r.dirty()),o.maxSize!==null&&n.data.size>o.maxSize.value&&(E(n,{code:k.too_big,maximum:o.maxSize.value,type:"set",inclusive:!0,exact:!1,message:o.maxSize.message}),r.dirty());let s=this._def.valueType;function i(c){let u=new Set;for(let l of c){if(l.status==="aborted")return U;l.status==="dirty"&&r.dirty(),u.add(l.value)}return{status:r.value,value:u}}let a=[...n.data.values()].map((c,u)=>s._parse(new lt(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>i(c)):i(a)}min(e,r){return new t({...this._def,minSize:{value:e,message:A.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:A.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};hn.create=(t,e)=>new hn({valueType:t,minSize:null,maxSize:null,typeName:S.ZodSet,...W(e)});var fs=class t extends K{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.function)return E(r,{code:k.invalid_type,expected:O.function,received:r.parsedType}),U;function n(a,c){return Wn({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,un(),Vt].filter(u=>!!u),issueData:{code:k.invalid_arguments,argumentsError:c}})}function o(a,c){return Wn({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,un(),Vt].filter(u=>!!u),issueData:{code:k.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},i=r.data;if(this._def.returns instanceof nr){let a=this;return qe(async function(...c){let u=new Je([]),l=await a._def.args.parseAsync(c,s).catch(m=>{throw u.addIssue(n(c,m)),u}),d=await Reflect.apply(i,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(m=>{throw u.addIssue(o(d,m)),u})})}else{let a=this;return qe(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new Je([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new Je([o(l,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:At.create(e).rest(Gt.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||At.create([]).rest(Gt.create()),returns:r||Gt.create(),typeName:S.ZodFunction,...W(n)})}},Mr=class extends K{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};Mr.create=(t,e)=>new Mr({getter:t,typeName:S.ZodLazy,...W(e)});var Ar=class extends K{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return E(r,{received:r.data,code:k.invalid_literal,expected:this._def.value}),U}return{status:"valid",value:e.data}}get value(){return this._def.value}};Ar.create=(t,e)=>new Ar({value:t,typeName:S.ZodLiteral,...W(e)});function _p(t,e){return new Cr({values:t,typeName:S.ZodEnum,...W(e)})}var Cr=class t extends K{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return E(r,{expected:Y.joinValues(n),received:r.parsedType,code:k.invalid_type}),U}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return E(r,{received:r.data,code:k.invalid_enum_value,options:n}),U}return qe(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};Cr.create=_p;var Nr=class extends K{_parse(e){let r=Y.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==O.string&&n.parsedType!==O.number){let o=Y.objectValues(r);return E(n,{expected:Y.joinValues(o),received:n.parsedType,code:k.invalid_type}),U}if(this._cache||(this._cache=new Set(Y.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=Y.objectValues(r);return E(n,{received:n.data,code:k.invalid_enum_value,options:o}),U}return qe(e.data)}get enum(){return this._def.values}};Nr.create=(t,e)=>new Nr({values:t,typeName:S.ZodNativeEnum,...W(e)});var nr=class extends K{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.promise&&r.common.async===!1)return E(r,{code:k.invalid_type,expected:O.promise,received:r.parsedType}),U;let n=r.parsedType===O.promise?r.data:Promise.resolve(r.data);return qe(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};nr.create=(t,e)=>new nr({type:t,typeName:S.ZodPromise,...W(e)});var dt=class extends K{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===S.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=this._def.effect||null,s={addIssue:i=>{E(n,i),i.fatal?r.abort():r.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),o.type==="preprocess"){let i=o.transform(n.data,s);if(n.common.async)return Promise.resolve(i).then(async a=>{if(r.value==="aborted")return U;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?U:c.status==="dirty"?kr(c.value):r.value==="dirty"?kr(c.value):c});{if(r.value==="aborted")return U;let a=this._def.schema._parseSync({data:i,path:n.path,parent:n});return a.status==="aborted"?U:a.status==="dirty"?kr(a.value):r.value==="dirty"?kr(a.value):a}}if(o.type==="refinement"){let i=a=>{let c=o.refinement(a,s);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 a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?U:(a.status==="dirty"&&r.dirty(),i(a.value),{status:r.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?U:(a.status==="dirty"&&r.dirty(),i(a.value).then(()=>({status:r.value,value:a.value}))))}if(o.type==="transform")if(n.common.async===!1){let i=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!er(i))return U;let a=o.transform(i.value,s);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(i=>er(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):U);Y.assertNever(o)}};dt.create=(t,e,r)=>new dt({schema:t,typeName:S.ZodEffects,effect:e,...W(r)});dt.createWithPreprocess=(t,e,r)=>new dt({schema:e,effect:{type:"preprocess",transform:t},typeName:S.ZodEffects,...W(r)});var Qe=class extends K{_parse(e){return this._getType(e)===O.undefined?qe(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Qe.create=(t,e)=>new Qe({innerType:t,typeName:S.ZodOptional,...W(e)});var Ct=class extends K{_parse(e){return this._getType(e)===O.null?qe(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ct.create=(t,e)=>new Ct({innerType:t,typeName:S.ZodNullable,...W(e)});var jr=class extends K{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===O.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};jr.create=(t,e)=>new jr({innerType:t,typeName:S.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...W(e)});var Zr=class extends K{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},o=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return ln(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Je(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Je(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Zr.create=(t,e)=>new Zr({innerType:t,typeName:S.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...W(e)});var gn=class extends K{_parse(e){if(this._getType(e)!==O.nan){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:O.nan,received:n.parsedType}),U}return{status:"valid",value:e.data}}};gn.create=t=>new gn({typeName:S.ZodNaN,...W(t)});var yv=Symbol("zod_brand"),Bn=class extends K{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},Kn=class t extends K{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let s=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?U:s.status==="dirty"?(r.dirty(),kr(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{let o=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?U:o.status==="dirty"?(r.dirty(),{status:"dirty",value:o.value}):this._def.out._parseSync({data:o.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:S.ZodPipeline})}},Dr=class extends K{_parse(e){let r=this._def.innerType._parse(e),n=o=>(er(o)&&(o.value=Object.freeze(o.value)),o);return ln(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};Dr.create=(t,e)=>new Dr({innerType:t,typeName:S.ZodReadonly,...W(e)});function mp(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function vp(t,e={},r){return t?rr.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=mp(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=mp(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):rr.create()}var _v={object:Xe.lazycreate},S;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(S||(S={}));var vv=(t,e={message:`Input not instance of ${t.name}`})=>vp(r=>r instanceof t,e),xp=tr.create,bp=Sr.create,xv=gn.create,bv=Tr.create,wp=zr.create,wv=Er.create,$v=pn.create,kv=Pr.create,Sv=Rr.create,Tv=rr.create,zv=Gt.create,Ev=xt.create,Pv=fn.create,Rv=Wt.create,_a=Xe.create,Iv=Xe.strictCreate,Ov=Ir.create,Mv=ds.create,Av=Or.create,Cv=At.create,Nv=ps.create,jv=mn.create,Zv=hn.create,Dv=fs.create,qv=Mr.create,Lv=Ar.create,Fv=Cr.create,Uv=Nr.create,Vv=nr.create,Hv=dt.create,Gv=Qe.create,Wv=Ct.create,Bv=dt.createWithPreprocess,Kv=Kn.create,Jv=()=>xp().optional(),Qv=()=>bp().optional(),Xv=()=>wp().optional(),Yv={string:t=>tr.create({...t,coerce:!0}),number:t=>Sr.create({...t,coerce:!0}),boolean:t=>zr.create({...t,coerce:!0}),bigint:t=>Tr.create({...t,coerce:!0}),date:t=>Er.create({...t,coerce:!0})};var ex=U;var tx=Object.freeze({status:"aborted"});function $(t,e,r){function n(a,c){var u;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(u=a._zod).traits??(u.traits=new Set),a._zod.traits.add(t),e(a,c);for(let l in i.prototype)l in a||Object.defineProperty(a,l,{value:i.prototype[l].bind(a)});a._zod.constr=i,a._zod.def=c}let o=r?.Parent??Object;class s extends o{}Object.defineProperty(s,"name",{value:t});function i(a){var c;let u=r?.Parent?new s:this;n(u,a),(c=u._zod).deferred??(c.deferred=[]);for(let l of u._zod.deferred)l();return u}return Object.defineProperty(i,"init",{value:n}),Object.defineProperty(i,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(i,"name",{value:t}),i}var rx=Symbol("zod_brand"),Bt=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},ms={};function it(t){return t&&Object.assign(ms,t),ms}var re={};cs(re,{BIGINT_FORMAT_RANGES:()=>kp,Class:()=>xa,NUMBER_FORMAT_RANGES:()=>za,aborted:()=>Lr,allowsEval:()=>ka,assert:()=>ax,assertEqual:()=>nx,assertIs:()=>sx,assertNever:()=>ix,assertNotEqual:()=>ox,assignProp:()=>$a,cached:()=>Xn,captureStackTrace:()=>gs,cleanEnum:()=>xx,cleanRegex:()=>eo,clone:()=>at,createTransparentProxy:()=>fx,defineLazy:()=>he,esc:()=>qr,escapeRegex:()=>or,extend:()=>gx,finalizeIssue:()=>bt,floatSafeRemainder:()=>wa,getElementAtPath:()=>cx,getEnumValues:()=>Qn,getLengthableOrigin:()=>to,getParsedType:()=>px,getSizableOrigin:()=>Sp,isObject:()=>yn,isPlainObject:()=>_n,issue:()=>Ea,joinValues:()=>hs,jsonStringifyReplacer:()=>ba,merge:()=>yx,normalizeParams:()=>V,nullish:()=>Yn,numKeys:()=>dx,omit:()=>hx,optionalKeys:()=>Ta,partial:()=>_x,pick:()=>mx,prefixIssues:()=>Nt,primitiveTypes:()=>$p,promiseAllObject:()=>ux,propertyKeyTypes:()=>Sa,randomString:()=>lx,required:()=>vx,stringifyPrimitive:()=>ys,unwrapMessage:()=>Jn});function nx(t){return t}function ox(t){return t}function sx(t){}function ix(t){throw new Error}function ax(t){}function Qn(t){let e=Object.values(t).filter(n=>typeof n=="number");return Object.entries(t).filter(([n,o])=>e.indexOf(+n)===-1).map(([n,o])=>o)}function hs(t,e="|"){return t.map(r=>ys(r)).join(e)}function ba(t,e){return typeof e=="bigint"?e.toString():e}function Xn(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function Yn(t){return t==null}function eo(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function wa(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}function he(t,e,r){Object.defineProperty(t,e,{get(){{let o=r();return t[e]=o,o}throw new Error("cached value already set")},set(o){Object.defineProperty(t,e,{value:o})},configurable:!0})}function $a(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function cx(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function ux(t){let e=Object.keys(t),r=e.map(n=>t[n]);return Promise.all(r).then(n=>{let o={};for(let s=0;s<e.length;s++)o[e[s]]=n[s];return o})}function lx(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function qr(t){return JSON.stringify(t)}var gs=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function yn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var ka=Xn(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function _n(t){if(yn(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(yn(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function dx(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var px=t=>{let e=typeof t;switch(e){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(t)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(t)?"array":t===null?"null":t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?"promise":typeof Map<"u"&&t instanceof Map?"map":typeof Set<"u"&&t instanceof Set?"set":typeof Date<"u"&&t instanceof Date?"date":typeof File<"u"&&t instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${e}`)}},Sa=new Set(["string","number","symbol"]),$p=new Set(["string","number","bigint","boolean","symbol","undefined"]);function or(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function at(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function V(t){let e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function fx(t){let e;return new Proxy({},{get(r,n,o){return e??(e=t()),Reflect.get(e,n,o)},set(r,n,o,s){return e??(e=t()),Reflect.set(e,n,o,s)},has(r,n){return e??(e=t()),Reflect.has(e,n)},deleteProperty(r,n){return e??(e=t()),Reflect.deleteProperty(e,n)},ownKeys(r){return e??(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(r,n){return e??(e=t()),Reflect.getOwnPropertyDescriptor(e,n)},defineProperty(r,n,o){return e??(e=t()),Reflect.defineProperty(e,n,o)}})}function ys(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Ta(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var za={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},kp={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function mx(t,e){let r={},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&(r[o]=n.shape[o])}return at(t,{...t._zod.def,shape:r,checks:[]})}function hx(t,e){let r={...t._zod.def.shape},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&delete r[o]}return at(t,{...t._zod.def,shape:r,checks:[]})}function gx(t,e){if(!_n(e))throw new Error("Invalid input to extend: expected a plain object");let r={...t._zod.def,get shape(){let n={...t._zod.def.shape,...e};return $a(this,"shape",n),n},checks:[]};return at(t,r)}function yx(t,e){return at(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return $a(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function _x(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in n))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=t?new t({type:"optional",innerType:n[s]}):n[s])}else for(let s in n)o[s]=t?new t({type:"optional",innerType:n[s]}):n[s];return at(e,{...e._zod.def,shape:o,checks:[]})}function vx(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in o))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=new t({type:"nonoptional",innerType:n[s]}))}else for(let s in n)o[s]=new t({type:"nonoptional",innerType:n[s]});return at(e,{...e._zod.def,shape:o,checks:[]})}function Lr(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function Nt(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function Jn(t){return typeof t=="string"?t:t?.message}function bt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=Jn(t.inst?._zod.def?.error?.(t))??Jn(e?.error?.(t))??Jn(r.customError?.(t))??Jn(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Sp(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function to(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Ea(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function xx(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var xa=class{constructor(...e){}};var Tp=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),Object.defineProperty(t,"message",{get(){return JSON.stringify(e,ba,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},_s=$("$ZodError",Tp),ro=$("$ZodError",Tp,{Parent:Error});function Pa(t,e=r=>r.message){let r={},n=[];for(let o of t.issues)o.path.length>0?(r[o.path[0]]=r[o.path[0]]||[],r[o.path[0]].push(e(o))):n.push(e(o));return{formErrors:n,fieldErrors:r}}function Ra(t,e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map(a=>o({issues:a}));else if(i.code==="invalid_key")o({issues:i.issues});else if(i.code==="invalid_element")o({issues:i.issues});else if(i.path.length===0)n._errors.push(r(i));else{let a=n,c=0;for(;c<i.path.length;){let u=i.path[c];c===i.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(i))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return o(t),n}var Ia=t=>(e,r,n,o)=>{let s=n?Object.assign(n,{async:!1}):{async:!1},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise)throw new Bt;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>bt(c,s,it())));throw gs(a,o?.callee),a}return i.value},Oa=Ia(ro),Ma=t=>async(e,r,n,o)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise&&(i=await i),i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>bt(c,s,it())));throw gs(a,o?.callee),a}return i.value},Aa=Ma(ro),Ca=t=>(e,r,n)=>{let o=n?{...n,async:!1}:{async:!1},s=e._zod.run({value:r,issues:[]},o);if(s instanceof Promise)throw new Bt;return s.issues.length?{success:!1,error:new(t??_s)(s.issues.map(i=>bt(i,o,it())))}:{success:!0,data:s.value}},Fr=Ca(ro),Na=t=>async(e,r,n)=>{let o=n?Object.assign(n,{async:!0}):{async:!0},s=e._zod.run({value:r,issues:[]},o);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new t(s.issues.map(i=>bt(i,o,it())))}:{success:!0,data:s.value}},Ur=Na(ro);var zp=/^[cC][^\s-]{8,}$/,Ep=/^[0-9a-z]+$/,Pp=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Rp=/^[0-9a-vA-V]{20}$/,Ip=/^[A-Za-z0-9]{27}$/,Op=/^[a-zA-Z0-9_-]{21}$/,Mp=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Ap=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,ja=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$/;var Cp=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var wx="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Np(){return new RegExp(wx,"u")}var jp=/^(?:(?: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])$/,Zp=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,Dp=/^((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])\/([0-9]|[1-2][0-9]|3[0-2])$/,qp=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Lp=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Za=/^[A-Za-z0-9_-]*$/,Fp=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var Up=/^\+(?:[0-9]){6,14}[0-9]$/,Vp="(?:(?:\\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])))",Hp=new RegExp(`^${Vp}$`);function Gp(t){let e="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof t.precision=="number"?t.precision===-1?`${e}`:t.precision===0?`${e}:[0-5]\\d`:`${e}:[0-5]\\d\\.\\d{${t.precision}}`:`${e}(?::[0-5]\\d(?:\\.\\d+)?)?`}function Wp(t){return new RegExp(`^${Gp(t)}$`)}function Bp(t){let e=Gp({precision:t.precision}),r=["Z"];t.local&&r.push(""),t.offset&&r.push("([+-]\\d{2}:\\d{2})");let n=`${e}(?:${r.join("|")})`;return new RegExp(`^${Vp}T(?:${n})$`)}var Kp=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var Jp=/^\d+$/,Qp=/^-?\d+(?:\.\d+)?/i,Xp=/true|false/i,Yp=/null/i;var ef=/^[^A-Z]*$/,tf=/^[^a-z]*$/;var Me=$("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),rf={number:"number",bigint:"bigint",object:"date"},Da=$("$ZodCheckLessThan",(t,e)=>{Me.init(t,e);let r=rf[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,s=(e.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value<s&&(e.inclusive?o.maximum=e.value:o.exclusiveMaximum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value<=e.value:n.value<e.value)||n.issues.push({origin:r,code:"too_big",maximum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),qa=$("$ZodCheckGreaterThan",(t,e)=>{Me.init(t,e);let r=rf[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,s=(e.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>s&&(e.inclusive?o.minimum=e.value:o.exclusiveMinimum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value>=e.value:n.value>e.value)||n.issues.push({origin:r,code:"too_small",minimum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),nf=$("$ZodCheckMultipleOf",(t,e)=>{Me.init(t,e),t._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=e.value)}),t._zod.check=r=>{if(typeof r.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):wa(r.value,e.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:e.value,input:r.value,inst:t,continue:!e.abort})}}),of=$("$ZodCheckNumberFormat",(t,e)=>{Me.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=za[e.format];t._zod.onattach.push(i=>{let a=i._zod.bag;a.format=e.format,a.minimum=o,a.maximum=s,r&&(a.pattern=Jp)}),t._zod.check=i=>{let a=i.value;if(r){if(!Number.isInteger(a)){i.issues.push({expected:n,format:e.format,code:"invalid_type",input:a,inst:t});return}if(!Number.isSafeInteger(a)){a>0?i.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort}):i.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort});return}}a<o&&i.issues.push({origin:"number",input:a,code:"too_small",minimum:o,inclusive:!0,inst:t,continue:!e.abort}),a>s&&i.issues.push({origin:"number",input:a,code:"too_big",maximum:s,inst:t})}});var sf=$("$ZodCheckMaxLength",(t,e)=>{var r;Me.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Yn(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum<o&&(n._zod.bag.maximum=e.maximum)}),t._zod.check=n=>{let o=n.value;if(o.length<=e.maximum)return;let i=to(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),af=$("$ZodCheckMinLength",(t,e)=>{var r;Me.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Yn(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>o&&(n._zod.bag.minimum=e.minimum)}),t._zod.check=n=>{let o=n.value;if(o.length>=e.minimum)return;let i=to(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),cf=$("$ZodCheckLengthEquals",(t,e)=>{var r;Me.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Yn(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag;o.minimum=e.length,o.maximum=e.length,o.length=e.length}),t._zod.check=n=>{let o=n.value,s=o.length;if(s===e.length)return;let i=to(o),a=s>e.length;n.issues.push({origin:i,...a?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:n.value,inst:t,continue:!e.abort})}}),no=$("$ZodCheckStringFormat",(t,e)=>{var r,n;Me.init(t,e),t._zod.onattach.push(o=>{let s=o._zod.bag;s.format=e.format,e.pattern&&(s.patterns??(s.patterns=new Set),s.patterns.add(e.pattern))}),e.pattern?(r=t._zod).check??(r.check=o=>{e.pattern.lastIndex=0,!e.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:e.format,input:o.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(n=t._zod).check??(n.check=()=>{})}),uf=$("$ZodCheckRegex",(t,e)=>{no.init(t,e),t._zod.check=r=>{e.pattern.lastIndex=0,!e.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:e.pattern.toString(),inst:t,continue:!e.abort})}}),lf=$("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=ef),no.init(t,e)}),df=$("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=tf),no.init(t,e)}),pf=$("$ZodCheckIncludes",(t,e)=>{Me.init(t,e);let r=or(e.includes),n=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=n,t._zod.onattach.push(o=>{let s=o._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(n)}),t._zod.check=o=>{o.value.includes(e.includes,e.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:o.value,inst:t,continue:!e.abort})}}),ff=$("$ZodCheckStartsWith",(t,e)=>{Me.init(t,e);let r=new RegExp(`^${or(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.startsWith(e.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:n.value,inst:t,continue:!e.abort})}}),mf=$("$ZodCheckEndsWith",(t,e)=>{Me.init(t,e);let r=new RegExp(`.*${or(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.endsWith(e.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:n.value,inst:t,continue:!e.abort})}});var hf=$("$ZodCheckOverwrite",(t,e)=>{Me.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var xs=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let n=e.split(`
9
+ deps: ${r}}`};var vz={keyword:"dependencies",type:"object",schemaType:"object",error:Jt.error,code(t){let[e,r]=xz(t);py(t,e),fy(t,r)}};function xz({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let o=Array.isArray(t[n])?e:r;o[n]=t[n]}return[e,r]}function py(t,e=t.schema){let{gen:r,data:n,it:o}=t;if(Object.keys(e).length===0)return;let s=r.let("missing");for(let i in e){let a=e[i];if(a.length===0)continue;let c=(0,ss.propertyInData)(r,n,i,o.opts.ownProperties);t.setParams({property:i,depsCount:a.length,deps:a.join(", ")}),o.allErrors?r.if(c,()=>{for(let u of a)(0,ss.checkReportMissingProp)(t,u)}):(r.if((0,Sd._)`${c} && (${(0,ss.checkMissingProp)(t,a,s)})`),(0,ss.reportMissingProp)(t,s),r.else())}}Jt.validatePropertyDeps=py;function fy(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,_z.alwaysValidSchema)(s,e[a])||(r.if((0,ss.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let c=t.subschema({keyword:o,schemaProp:a},i);t.mergeValidEvaluated(c,i)},()=>r.var(i,!0)),t.ok(i))}Jt.validateSchemaDeps=fy;Jt.default=vz});var gy=I(Td=>{"use strict";Object.defineProperty(Td,"__esModule",{value:!0});var hy=X(),bz=ce(),wz={message:"property name must be valid",params:({params:t})=>(0,hy._)`{propertyName: ${t.propertyName}}`},$z={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:wz,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,bz.alwaysValidSchema)(o,r))return;let s=e.name("valid");e.forIn("key",n,i=>{t.setParams({propertyName:i}),t.subschema({keyword:"propertyNames",data:i,dataTypes:["string"],propertyName:i,compositeRule:!0},s),e.if((0,hy.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};Td.default=$z});var Ed=I(zd=>{"use strict";Object.defineProperty(zd,"__esModule",{value:!0});var Bi=$t(),Ct=X(),kz=ar(),Ki=ce(),Sz={message:"must NOT have additional properties",params:({params:t})=>(0,Ct._)`{additionalProperty: ${t.additionalProperty}}`},Tz={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:Sz,code(t){let{gen:e,schema:r,parentSchema:n,data:o,errsCount:s,it:i}=t;if(!s)throw new Error("ajv implementation error");let{allErrors:a,opts:c}=i;if(i.props=!0,c.removeAdditional!=="all"&&(0,Ki.alwaysValidSchema)(i,r))return;let u=(0,Bi.allSchemaProperties)(n.properties),l=(0,Bi.allSchemaProperties)(n.patternProperties);d(),t.ok((0,Ct._)`${s} === ${kz.default.errors}`);function d(){e.forIn("key",o,g=>{!u.length&&!l.length?f(g):e.if(p(g),()=>f(g))})}function p(g){let y;if(u.length>8){let _=(0,Ki.schemaRefOrVal)(i,n.properties,"properties");y=(0,Bi.isOwnProperty)(e,_,g)}else u.length?y=(0,Ct.or)(...u.map(_=>(0,Ct._)`${g} === ${_}`)):y=Ct.nil;return l.length&&(y=(0,Ct.or)(y,...l.map(_=>(0,Ct._)`${(0,Bi.usePattern)(t,_)}.test(${g})`))),(0,Ct.not)(y)}function m(g){e.code((0,Ct._)`delete ${o}[${g}]`)}function f(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){m(g);return}if(r===!1){t.setParams({additionalProperty:g}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,Ki.alwaysValidSchema)(i,r)){let y=e.name("valid");c.removeAdditional==="failing"?(h(g,y,!1),e.if((0,Ct.not)(y),()=>{t.reset(),m(g)})):(h(g,y),a||e.if((0,Ct.not)(y),()=>e.break()))}}function h(g,y,_){let v={keyword:"additionalProperties",dataProp:g,dataPropType:Ki.Type.Str};_===!1&&Object.assign(v,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(v,y)}}};zd.default=Tz});var vy=I(Rd=>{"use strict";Object.defineProperty(Rd,"__esModule",{value:!0});var zz=Ho(),yy=$t(),Pd=ce(),_y=Ed(),Ez={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:o,it:s}=t;s.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&_y.default.code(new zz.KeywordCxt(s,_y.default,"additionalProperties"));let i=(0,yy.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=Pd.mergeEvaluated.props(e,(0,Pd.toHash)(i),s.props));let a=i.filter(d=>!(0,Pd.alwaysValidSchema)(s,r[d]));if(a.length===0)return;let c=e.name("valid");for(let d of a)u(d)?l(d):(e.if((0,yy.propertyInData)(e,o,d,s.opts.ownProperties)),l(d),s.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return s.opts.useDefaults&&!s.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};Rd.default=Ez});var $y=I(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});var xy=$t(),Ji=X(),by=ce(),wy=ce(),Pz={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:o,it:s}=t,{opts:i}=s,a=(0,xy.allSchemaProperties)(r),c=a.filter(h=>(0,by.alwaysValidSchema)(s,r[h]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let u=i.strictSchema&&!i.allowMatchingProperties&&o.properties,l=e.name("valid");s.props!==!0&&!(s.props instanceof Ji.Name)&&(s.props=(0,wy.evaluatedPropsToName)(e,s.props));let{props:d}=s;p();function p(){for(let h of a)u&&m(h),s.allErrors?f(h):(e.var(l,!0),f(h),e.if(l))}function m(h){for(let g in u)new RegExp(h).test(g)&&(0,by.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function f(h){e.forIn("key",n,g=>{e.if((0,Ji._)`${(0,xy.usePattern)(t,h)}.test(${g})`,()=>{let y=c.includes(h);y||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:wy.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,Ji._)`${d}[${g}]`,!0):!y&&!s.allErrors&&e.if((0,Ji.not)(l),()=>e.break())})})}}};Id.default=Pz});var ky=I(Od=>{"use strict";Object.defineProperty(Od,"__esModule",{value:!0});var Rz=ce(),Iz={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,Rz.alwaysValidSchema)(n,r)){t.fail();return}let o=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},o),t.failResult(o,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};Od.default=Iz});var Sy=I(Md=>{"use strict";Object.defineProperty(Md,"__esModule",{value:!0});var Oz=$t(),Mz={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:Oz.validateUnion,error:{message:"must match a schema in anyOf"}};Md.default=Mz});var Ty=I(Ad=>{"use strict";Object.defineProperty(Ad,"__esModule",{value:!0});var Qi=X(),Az=ce(),Cz={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Qi._)`{passingSchemas: ${t.passing}}`},Nz={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:Cz,code(t){let{gen:e,schema:r,parentSchema:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(o.opts.discriminator&&n.discriminator)return;let s=r,i=e.let("valid",!1),a=e.let("passing",null),c=e.name("_valid");t.setParams({passing:a}),e.block(u),t.result(i,()=>t.reset(),()=>t.error(!0));function u(){s.forEach((l,d)=>{let p;(0,Az.alwaysValidSchema)(o,l)?e.var(c,!0):p=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Qi._)`${c} && ${i}`).assign(i,!1).assign(a,(0,Qi._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),p&&t.mergeEvaluated(p,Qi.Name)})})}}};Ad.default=Nz});var zy=I(Cd=>{"use strict";Object.defineProperty(Cd,"__esModule",{value:!0});var jz=ce(),Zz={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let o=e.name("valid");r.forEach((s,i)=>{if((0,jz.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Cd.default=Zz});var Ry=I(Nd=>{"use strict";Object.defineProperty(Nd,"__esModule",{value:!0});var Xi=X(),Py=ce(),Dz={message:({params:t})=>(0,Xi.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,Xi._)`{failingKeyword: ${t.ifClause}}`},qz={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:Dz,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,Py.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=Ey(n,"then"),s=Ey(n,"else");if(!o&&!s)return;let i=e.let("valid",!0),a=e.name("_valid");if(c(),t.reset(),o&&s){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(a,u("then",l),u("else",l))}else o?e.if(a,u("then")):e.if((0,Xi.not)(a),u("else"));t.pass(i,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(l)}function u(l,d){return()=>{let p=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(p,i),d?e.assign(d,(0,Xi._)`${l}`):t.setParams({ifClause:l})}}}};function Ey(t,e){let r=t.schema[e];return r!==void 0&&!(0,Py.alwaysValidSchema)(t,r)}Nd.default=qz});var Iy=I(jd=>{"use strict";Object.defineProperty(jd,"__esModule",{value:!0});var Lz=ce(),Fz={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,Lz.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};jd.default=Fz});var Oy=I(Zd=>{"use strict";Object.defineProperty(Zd,"__esModule",{value:!0});var Uz=xd(),Vz=cy(),Hz=bd(),Wz=ly(),Gz=dy(),Bz=my(),Kz=gy(),Jz=Ed(),Qz=vy(),Xz=$y(),Yz=ky(),eE=Sy(),tE=Ty(),rE=zy(),nE=Ry(),oE=Iy();function sE(t=!1){let e=[Yz.default,eE.default,tE.default,rE.default,nE.default,oE.default,Kz.default,Jz.default,Bz.default,Qz.default,Xz.default];return t?e.push(Vz.default,Wz.default):e.push(Uz.default,Hz.default),e.push(Gz.default),e}Zd.default=sE});var My=I(Dd=>{"use strict";Object.defineProperty(Dd,"__esModule",{value:!0});var Re=X(),iE={message:({schemaCode:t})=>(0,Re.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,Re._)`{format: ${t}}`},aE={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:iE,code(t,e){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;o?p():m();function p(){let f=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,Re._)`${f}[${i}]`),g=r.let("fType"),y=r.let("format");r.if((0,Re._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,Re._)`${h}.type || "string"`).assign(y,(0,Re._)`${h}.validate`),()=>r.assign(g,(0,Re._)`"string"`).assign(y,h)),t.fail$data((0,Re.or)(_(),v()));function _(){return c.strictSchema===!1?Re.nil:(0,Re._)`${i} && !${y}`}function v(){let x=l.$async?(0,Re._)`(${h}.async ? await ${y}(${n}) : ${y}(${n}))`:(0,Re._)`${y}(${n})`,k=(0,Re._)`(typeof ${y} == "function" ? ${x} : ${y}.test(${n}))`;return(0,Re._)`${y} && ${y} !== true && ${g} === ${e} && !${k}`}}function m(){let f=d.formats[s];if(!f){_();return}if(f===!0)return;let[h,g,y]=v(f);h===e&&t.pass(x());function _(){if(c.strictSchema===!1){d.logger.warn(k());return}throw new Error(k());function k(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function v(k){let L=k instanceof RegExp?(0,Re.regexpCode)(k):c.code.formats?(0,Re._)`${c.code.formats}${(0,Re.getProperty)(s)}`:void 0,G=r.scopeValue("formats",{key:s,ref:k,code:L});return typeof k=="object"&&!(k instanceof RegExp)?[k.type||"string",k.validate,(0,Re._)`${G}.validate`]:["string",k,G]}function x(){if(typeof f=="object"&&!(f instanceof RegExp)&&f.async){if(!l.$async)throw new Error("async format in sync schema");return(0,Re._)`await ${y}(${n})`}return typeof g=="function"?(0,Re._)`${y}(${n})`:(0,Re._)`${y}.test(${n})`}}}};Dd.default=aE});var Ay=I(qd=>{"use strict";Object.defineProperty(qd,"__esModule",{value:!0});var cE=My(),uE=[cE.default];qd.default=uE});var Cy=I(Hn=>{"use strict";Object.defineProperty(Hn,"__esModule",{value:!0});Hn.contentVocabulary=Hn.metadataVocabulary=void 0;Hn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Hn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var jy=I(Ld=>{"use strict";Object.defineProperty(Ld,"__esModule",{value:!0});var lE=Vg(),dE=oy(),pE=Oy(),fE=Ay(),Ny=Cy(),mE=[lE.default,dE.default,(0,pE.default)(),fE.default,Ny.metadataVocabulary,Ny.contentVocabulary];Ld.default=mE});var Dy=I(Yi=>{"use strict";Object.defineProperty(Yi,"__esModule",{value:!0});Yi.DiscrError=void 0;var Zy;(function(t){t.Tag="tag",t.Mapping="mapping"})(Zy||(Yi.DiscrError=Zy={}))});var Ly=I(Ud=>{"use strict";Object.defineProperty(Ud,"__esModule",{value:!0});var Wn=X(),Fd=Dy(),qy=Ai(),hE=Wo(),gE=ce(),yE={message:({params:{discrError:t,tagName:e}})=>t===Fd.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Wn._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},_E={keyword:"discriminator",type:"object",schemaType:"object",error:yE,code(t){let{gen:e,data:r,schema:n,parentSchema:o,it:s}=t,{oneOf:i}=o;if(!s.opts.discriminator)throw new Error("discriminator: requires discriminator option");let a=n.propertyName;if(typeof a!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!i)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),u=e.const("tag",(0,Wn._)`${r}${(0,Wn.getProperty)(a)}`);e.if((0,Wn._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:Fd.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let m=p();e.if(!1);for(let f in m)e.elseIf((0,Wn._)`${u} === ${f}`),e.assign(c,d(m[f]));e.else(),t.error(!1,{discrError:Fd.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(m){let f=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:m},f);return t.mergeEvaluated(h,Wn.Name),f}function p(){var m;let f={},h=y(o),g=!0;for(let x=0;x<i.length;x++){let k=i[x];if(k?.$ref&&!(0,gE.schemaHasRulesButRef)(k,s.self.RULES)){let G=k.$ref;if(k=qy.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,G),k instanceof qy.SchemaEnv&&(k=k.schema),k===void 0)throw new hE.default(s.opts.uriResolver,s.baseId,G)}let L=(m=k?.properties)===null||m===void 0?void 0:m[a];if(typeof L!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||y(k)),_(L,x)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return f;function y({required:x}){return Array.isArray(x)&&x.includes(a)}function _(x,k){if(x.const)v(x.const,k);else if(x.enum)for(let L of x.enum)v(L,k);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function v(x,k){if(typeof x!="string"||x in f)throw new Error(`discriminator: "${a}" values must be unique strings`);f[x]=k}}}};Ud.default=_E});var Fy=I((h1,vE)=>{vE.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var Hd=I((xe,Vd)=>{"use strict";Object.defineProperty(xe,"__esModule",{value:!0});xe.MissingRefError=xe.ValidationError=xe.CodeGen=xe.Name=xe.nil=xe.stringify=xe.str=xe._=xe.KeywordCxt=xe.Ajv=void 0;var xE=Zg(),bE=jy(),wE=Ly(),Uy=Fy(),$E=["/properties"],ea="http://json-schema.org/draft-07/schema",Gn=class extends xE.default{_addVocabularies(){super._addVocabularies(),bE.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(wE.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Uy,$E):Uy;this.addMetaSchema(e,ea,!1),this.refs["http://json-schema.org/schema"]=ea}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(ea)?ea:void 0)}};xe.Ajv=Gn;Vd.exports=xe=Gn;Vd.exports.Ajv=Gn;Object.defineProperty(xe,"__esModule",{value:!0});xe.default=Gn;var kE=Ho();Object.defineProperty(xe,"KeywordCxt",{enumerable:!0,get:function(){return kE.KeywordCxt}});var Bn=X();Object.defineProperty(xe,"_",{enumerable:!0,get:function(){return Bn._}});Object.defineProperty(xe,"str",{enumerable:!0,get:function(){return Bn.str}});Object.defineProperty(xe,"stringify",{enumerable:!0,get:function(){return Bn.stringify}});Object.defineProperty(xe,"nil",{enumerable:!0,get:function(){return Bn.nil}});Object.defineProperty(xe,"Name",{enumerable:!0,get:function(){return Bn.Name}});Object.defineProperty(xe,"CodeGen",{enumerable:!0,get:function(){return Bn.CodeGen}});var SE=Oi();Object.defineProperty(xe,"ValidationError",{enumerable:!0,get:function(){return SE.default}});var TE=Wo();Object.defineProperty(xe,"MissingRefError",{enumerable:!0,get:function(){return TE.default}})});var Qy=I(Xt=>{"use strict";Object.defineProperty(Xt,"__esModule",{value:!0});Xt.formatNames=Xt.fastFormats=Xt.fullFormats=void 0;function Qt(t,e){return{validate:t,compare:e}}Xt.fullFormats={date:Qt(Gy,Kd),time:Qt(Gd(!0),Jd),"date-time":Qt(Vy(!0),Ky),"iso-time":Qt(Gd(),By),"iso-date-time":Qt(Vy(),Jy),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:OE,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:DE,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:ME,int32:{type:"number",validate:NE},int64:{type:"number",validate:jE},float:{type:"number",validate:Wy},double:{type:"number",validate:Wy},password:!0,binary:!0};Xt.fastFormats={...Xt.fullFormats,date:Qt(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Kd),time:Qt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Jd),"date-time":Qt(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Ky),"iso-time":Qt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,By),"iso-date-time":Qt(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Jy),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};Xt.formatNames=Object.keys(Xt.fullFormats);function zE(t){return t%4===0&&(t%100!==0||t%400===0)}var EE=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,PE=[0,31,28,31,30,31,30,31,31,30,31,30,31];function Gy(t){let e=EE.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],o=+e[3];return n>=1&&n<=12&&o>=1&&o<=(n===2&&zE(r)?29:PE[n])}function Kd(t,e){if(t&&e)return t>e?1:t<e?-1:0}var Wd=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function Gd(t){return function(r){let n=Wd.exec(r);if(!n)return!1;let o=+n[1],s=+n[2],i=+n[3],a=n[4],c=n[5]==="-"?-1:1,u=+(n[6]||0),l=+(n[7]||0);if(u>23||l>59||t&&!a)return!1;if(o<=23&&s<=59&&i<60)return!0;let d=s-l*c,p=o-u*c-(d<0?1:0);return(p===23||p===-1)&&(d===59||d===-1)&&i<61}}function Jd(t,e){if(!(t&&e))return;let r=new Date("2020-01-01T"+t).valueOf(),n=new Date("2020-01-01T"+e).valueOf();if(r&&n)return r-n}function By(t,e){if(!(t&&e))return;let r=Wd.exec(t),n=Wd.exec(e);if(r&&n)return t=r[1]+r[2]+r[3],e=n[1]+n[2]+n[3],t>e?1:t<e?-1:0}var Bd=/t|\s/i;function Vy(t){let e=Gd(t);return function(n){let o=n.split(Bd);return o.length===2&&Gy(o[0])&&e(o[1])}}function Ky(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function Jy(t,e){if(!(t&&e))return;let[r,n]=t.split(Bd),[o,s]=e.split(Bd),i=Kd(r,o);if(i!==void 0)return i||Jd(n,s)}var RE=/\/|:/,IE=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function OE(t){return RE.test(t)&&IE.test(t)}var Hy=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function ME(t){return Hy.lastIndex=0,Hy.test(t)}var AE=-(2**31),CE=2**31-1;function NE(t){return Number.isInteger(t)&&t<=CE&&t>=AE}function jE(t){return Number.isInteger(t)}function Wy(){return!0}var ZE=/[^\\]\\Z/;function DE(t){if(ZE.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var Xy=I(Kn=>{"use strict";Object.defineProperty(Kn,"__esModule",{value:!0});Kn.formatLimitDefinition=void 0;var qE=Hd(),Nt=X(),Er=Nt.operators,ta={formatMaximum:{okStr:"<=",ok:Er.LTE,fail:Er.GT},formatMinimum:{okStr:">=",ok:Er.GTE,fail:Er.LT},formatExclusiveMaximum:{okStr:"<",ok:Er.LT,fail:Er.GTE},formatExclusiveMinimum:{okStr:">",ok:Er.GT,fail:Er.LTE}},LE={message:({keyword:t,schemaCode:e})=>(0,Nt.str)`should be ${ta[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Nt._)`{comparison: ${ta[t].okStr}, limit: ${e}}`};Kn.formatLimitDefinition={keyword:Object.keys(ta),type:"string",schemaType:"string",$data:!0,error:LE,code(t){let{gen:e,data:r,schemaCode:n,keyword:o,it:s}=t,{opts:i,self:a}=s;if(!i.validateFormats)return;let c=new qE.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let p=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),m=e.const("fmt",(0,Nt._)`${p}[${c.schemaCode}]`);t.fail$data((0,Nt.or)((0,Nt._)`typeof ${m} != "object"`,(0,Nt._)`${m} instanceof RegExp`,(0,Nt._)`typeof ${m}.compare != "function"`,d(m)))}function l(){let p=c.schema,m=a.formats[p];if(!m||m===!0)return;if(typeof m!="object"||m instanceof RegExp||typeof m.compare!="function")throw new Error(`"${o}": format "${p}" does not define "compare" function`);let f=e.scopeValue("formats",{key:p,ref:m,code:i.code.formats?(0,Nt._)`${i.code.formats}${(0,Nt.getProperty)(p)}`:void 0});t.fail$data(d(f))}function d(p){return(0,Nt._)`${p}.compare(${r}, ${n}) ${ta[o].fail} 0`}},dependencies:["format"]};var FE=t=>(t.addKeyword(Kn.formatLimitDefinition),t);Kn.default=FE});var r_=I((is,t_)=>{"use strict";Object.defineProperty(is,"__esModule",{value:!0});var Jn=Qy(),UE=Xy(),Qd=X(),Yy=new Qd.Name("fullFormats"),VE=new Qd.Name("fastFormats"),Xd=(t,e={keywords:!0})=>{if(Array.isArray(e))return e_(t,e,Jn.fullFormats,Yy),t;let[r,n]=e.mode==="fast"?[Jn.fastFormats,VE]:[Jn.fullFormats,Yy],o=e.formats||Jn.formatNames;return e_(t,o,r,n),e.keywords&&(0,UE.default)(t),t};Xd.get=(t,e="full")=>{let n=(e==="fast"?Jn.fastFormats:Jn.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function e_(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,Qd._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}t_.exports=is=Xd;Object.defineProperty(is,"__esModule",{value:!0});is.default=Xd});var tR={};_s(tR,{log:()=>gs});module.exports=rv(tR);var z={};_s(z,{BRAND:()=>Ev,DIRTY:()=>Ar,EMPTY_PATH:()=>iv,INVALID:()=>F,NEVER:()=>dx,OK:()=>We,ParseStatus:()=>je,Schema:()=>Q,ZodAny:()=>fr,ZodArray:()=>nr,ZodBigInt:()=>Nr,ZodBoolean:()=>jr,ZodBranded:()=>so,ZodCatch:()=>Br,ZodDate:()=>Zr,ZodDefault:()=>Gr,ZodDiscriminatedUnion:()=>bs,ZodEffects:()=>_t,ZodEnum:()=>Hr,ZodError:()=>tt,ZodFirstPartyTypeKind:()=>T,ZodFunction:()=>$s,ZodIntersection:()=>Fr,ZodIssueCode:()=>S,ZodLazy:()=>Ur,ZodLiteral:()=>Vr,ZodMap:()=>kn,ZodNaN:()=>Tn,ZodNativeEnum:()=>Wr,ZodNever:()=>Et,ZodNull:()=>qr,ZodNullable:()=>Ht,ZodNumber:()=>Cr,ZodObject:()=>nt,ZodOptional:()=>rt,ZodParsedType:()=>O,ZodPipeline:()=>io,ZodPromise:()=>mr,ZodReadonly:()=>Kr,ZodRecord:()=>ws,ZodSchema:()=>Q,ZodSet:()=>Sn,ZodString:()=>pr,ZodSymbol:()=>wn,ZodTransformer:()=>_t,ZodTuple:()=>Vt,ZodType:()=>Q,ZodUndefined:()=>Dr,ZodUnion:()=>Lr,ZodUnknown:()=>rr,ZodVoid:()=>$n,addIssueToContext:()=>P,any:()=>jv,array:()=>Lv,bigint:()=>Ov,boolean:()=>Mp,coerce:()=>lx,custom:()=>Rp,date:()=>Mv,datetimeRegex:()=>Ep,defaultErrorMap:()=>er,discriminatedUnion:()=>Vv,effect:()=>rx,enum:()=>Yv,function:()=>Jv,getErrorMap:()=>vn,getParsedType:()=>Ut,instanceof:()=>Rv,intersection:()=>Hv,isAborted:()=>vs,isAsync:()=>xn,isDirty:()=>xs,isValid:()=>dr,late:()=>Pv,lazy:()=>Qv,literal:()=>Xv,makeIssue:()=>oo,map:()=>Bv,nan:()=>Iv,nativeEnum:()=>ex,never:()=>Dv,null:()=>Nv,nullable:()=>ox,number:()=>Op,object:()=>Ea,objectUtil:()=>Sa,oboolean:()=>ux,onumber:()=>cx,optional:()=>nx,ostring:()=>ax,pipeline:()=>ix,preprocess:()=>sx,promise:()=>tx,quotelessJson:()=>nv,record:()=>Gv,set:()=>Kv,setErrorMap:()=>sv,strictObject:()=>Fv,string:()=>Ip,symbol:()=>Av,transformer:()=>rx,tuple:()=>Wv,undefined:()=>Cv,union:()=>Uv,unknown:()=>Zv,util:()=>te,void:()=>qv});var te;(function(t){t.assertEqual=o=>{};function e(o){}t.assertIs=e;function r(o){throw new Error}t.assertNever=r,t.arrayToEnum=o=>{let s={};for(let i of o)s[i]=i;return s},t.getValidEnumValues=o=>{let s=t.objectKeys(o).filter(a=>typeof o[o[a]]!="number"),i={};for(let a of s)i[a]=o[a];return t.objectValues(i)},t.objectValues=o=>t.objectKeys(o).map(function(s){return o[s]}),t.objectKeys=typeof Object.keys=="function"?o=>Object.keys(o):o=>{let s=[];for(let i in o)Object.prototype.hasOwnProperty.call(o,i)&&s.push(i);return s},t.find=(o,s)=>{for(let i of o)if(s(i))return i},t.isInteger=typeof Number.isInteger=="function"?o=>Number.isInteger(o):o=>typeof o=="number"&&Number.isFinite(o)&&Math.floor(o)===o;function n(o,s=" | "){return o.map(i=>typeof i=="string"?`'${i}'`:i).join(s)}t.joinValues=n,t.jsonStringifyReplacer=(o,s)=>typeof s=="bigint"?s.toString():s})(te||(te={}));var Sa;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Sa||(Sa={}));var O=te.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Ut=t=>{switch(typeof t){case"undefined":return O.undefined;case"string":return O.string;case"number":return Number.isNaN(t)?O.nan:O.number;case"boolean":return O.boolean;case"function":return O.function;case"bigint":return O.bigint;case"symbol":return O.symbol;case"object":return Array.isArray(t)?O.array:t===null?O.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?O.promise:typeof Map<"u"&&t instanceof Map?O.map:typeof Set<"u"&&t instanceof Set?O.set:typeof Date<"u"&&t instanceof Date?O.date:O.object;default:return O.unknown}};var S=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"]),nv=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),tt=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union")i.unionErrors.map(o);else if(i.code==="invalid_return_type")o(i.returnTypeError);else if(i.code==="invalid_arguments")o(i.argumentsError);else if(i.path.length===0)n._errors.push(r(i));else{let a=n,c=0;for(;c<i.path.length;){let u=i.path[c];c===i.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(i))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return o(this),n}static assert(e){if(!(e instanceof t))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=r=>r.message){let r={},n=[];for(let o of this.issues)if(o.path.length>0){let s=o.path[0];r[s]=r[s]||[],r[s].push(e(o))}else n.push(e(o));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};tt.create=t=>new tt(t);var ov=(t,e)=>{let r;switch(t.code){case S.invalid_type:t.received===O.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case S.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,te.jsonStringifyReplacer)}`;break;case S.unrecognized_keys:r=`Unrecognized key(s) in object: ${te.joinValues(t.keys,", ")}`;break;case S.invalid_union:r="Invalid input";break;case S.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${te.joinValues(t.options)}`;break;case S.invalid_enum_value:r=`Invalid enum value. Expected ${te.joinValues(t.options)}, received '${t.received}'`;break;case S.invalid_arguments:r="Invalid function arguments";break;case S.invalid_return_type:r="Invalid function return type";break;case S.invalid_date:r="Invalid date";break;case S.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:te.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case S.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case S.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case S.custom:r="Invalid input";break;case S.invalid_intersection_types:r="Intersection results could not be merged";break;case S.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case S.not_finite:r="Number must be finite";break;default:r=e.defaultError,te.assertNever(t)}return{message:r}},er=ov;var $p=er;function sv(t){$p=t}function vn(){return $p}var oo=t=>{let{data:e,path:r,errorMaps:n,issueData:o}=t,s=[...r,...o.path||[]],i={...o,path:s};if(o.message!==void 0)return{...o,path:s,message:o.message};let a="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)a=u(i,{data:e,defaultError:a}).message;return{...o,path:s,message:a}},iv=[];function P(t,e){let r=vn(),n=oo({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===er?void 0:er].filter(o=>!!o)});t.common.issues.push(n)}var je=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let o of r){if(o.status==="aborted")return F;o.status==="dirty"&&e.dirty(),n.push(o.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let o of r){let s=await o.key,i=await o.value;n.push({key:s,value:i})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let o of r){let{key:s,value:i}=o;if(s.status==="aborted"||i.status==="aborted")return F;s.status==="dirty"&&e.dirty(),i.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof i.value<"u"||o.alwaysSet)&&(n[s.value]=i.value)}return{status:e.value,value:n}}},F=Object.freeze({status:"aborted"}),Ar=t=>({status:"dirty",value:t}),We=t=>({status:"valid",value:t}),vs=t=>t.status==="aborted",xs=t=>t.status==="dirty",dr=t=>t.status==="valid",xn=t=>typeof Promise<"u"&&t instanceof Promise;var C;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(C||(C={}));var yt=class{constructor(e,r,n,o){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=o}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},kp=(t,e)=>{if(dr(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new tt(t.common.issues);return this._error=r,this._error}}};function K(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:o}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:o}:{errorMap:(i,a)=>{let{message:c}=t;return i.code==="invalid_enum_value"?{message:c??a.defaultError}:typeof a.data>"u"?{message:c??n??a.defaultError}:i.code!=="invalid_type"?{message:a.defaultError}:{message:c??r??a.defaultError}},description:o}}var Q=class{get description(){return this._def.description}_getType(e){return Ut(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:Ut(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new je,ctx:{common:e.parent.common,data:e.data,parsedType:Ut(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(xn(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Ut(e)},o=this._parseSync({data:e,path:n.path,parent:n});return kp(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Ut(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return dr(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(n=>dr(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(e,r){let n=await this.safeParseAsync(e,r);if(n.success)return n.data;throw n.error}async safeParseAsync(e,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Ut(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(xn(o)?o:Promise.resolve(o));return kp(n,s)}refine(e,r){let n=o=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(o):r;return this._refinement((o,s)=>{let i=e(o),a=()=>s.addIssue({code:S.custom,...n(o)});return typeof Promise<"u"&&i instanceof Promise?i.then(c=>c?!0:(a(),!1)):i?!0:(a(),!1)})}refinement(e,r){return this._refinement((n,o)=>e(n)?!0:(o.addIssue(typeof r=="function"?r(n,o):r),!1))}_refinement(e){return new _t({schema:this,typeName:T.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}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),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return rt.create(this,this._def)}nullable(){return Ht.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return nr.create(this)}promise(){return mr.create(this,this._def)}or(e){return Lr.create([this,e],this._def)}and(e){return Fr.create(this,e,this._def)}transform(e){return new _t({...K(this._def),schema:this,typeName:T.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new Gr({...K(this._def),innerType:this,defaultValue:r,typeName:T.ZodDefault})}brand(){return new so({typeName:T.ZodBranded,type:this,...K(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Br({...K(this._def),innerType:this,catchValue:r,typeName:T.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return io.create(this,e)}readonly(){return Kr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},av=/^c[^\s-]{8,}$/i,cv=/^[0-9a-z]+$/,uv=/^[0-9A-HJKMNP-TV-Z]{26}$/i,lv=/^[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,dv=/^[a-z0-9_-]{21}$/i,pv=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,fv=/^[-+]?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)?)??$/,mv=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,hv="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Ta,gv=/^(?:(?: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])$/,yv=/^(?:(?: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])\/(3[0-2]|[12]?[0-9])$/,_v=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,vv=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,xv=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,bv=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Tp="((\\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])))",wv=new RegExp(`^${Tp}$`);function zp(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let r=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${r}`}function $v(t){return new RegExp(`^${zp(t)}$`)}function Ep(t){let e=`${Tp}T${zp(t)}`,r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function kv(t,e){return!!((e==="v4"||!e)&&gv.test(t)||(e==="v6"||!e)&&_v.test(t))}function Sv(t,e){if(!pv.test(t))return!1;try{let[r]=t.split(".");if(!r)return!1;let n=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),o=JSON.parse(atob(n));return!(typeof o!="object"||o===null||"typ"in o&&o?.typ!=="JWT"||!o.alg||e&&o.alg!==e)}catch{return!1}}function Tv(t,e){return!!((e==="v4"||!e)&&yv.test(t)||(e==="v6"||!e)&&vv.test(t))}var pr=class t extends Q{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==O.string){let s=this._getOrReturnCtx(e);return P(s,{code:S.invalid_type,expected:O.string,received:s.parsedType}),F}let n=new je,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),P(o,{code:S.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="max")e.data.length>s.value&&(o=this._getOrReturnCtx(e,o),P(o,{code:S.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="length"){let i=e.data.length>s.value,a=e.data.length<s.value;(i||a)&&(o=this._getOrReturnCtx(e,o),i?P(o,{code:S.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&P(o,{code:S.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")mv.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"email",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")Ta||(Ta=new RegExp(hv,"u")),Ta.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"emoji",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")lv.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"uuid",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")dv.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"nanoid",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")av.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"cuid",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")cv.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"cuid2",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")uv.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"ulid",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{o=this._getOrReturnCtx(e,o),P(o,{validation:"url",code:S.invalid_string,message:s.message}),n.dirty()}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"regex",code:S.invalid_string,message:s.message}),n.dirty())):s.kind==="trim"?e.data=e.data.trim():s.kind==="includes"?e.data.includes(s.value,s.position)||(o=this._getOrReturnCtx(e,o),P(o,{code:S.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),n.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)||(o=this._getOrReturnCtx(e,o),P(o,{code:S.invalid_string,validation:{startsWith:s.value},message:s.message}),n.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(o=this._getOrReturnCtx(e,o),P(o,{code:S.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?Ep(s).test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{code:S.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?wv.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{code:S.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?$v(s).test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{code:S.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?fv.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"duration",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?kv(e.data,s.version)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"ip",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?Sv(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"jwt",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?Tv(e.data,s.version)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"cidr",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?xv.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"base64",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?bv.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"base64url",code:S.invalid_string,message:s.message}),n.dirty()):te.assertNever(s);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(o=>e.test(o),{validation:r,code:S.invalid_string,...C.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...C.errToObj(e)})}url(e){return this._addCheck({kind:"url",...C.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...C.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...C.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...C.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...C.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...C.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...C.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...C.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...C.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...C.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...C.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...C.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...C.errToObj(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?.precision>"u"?null:e?.precision,...C.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...C.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...C.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...C.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...C.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...C.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...C.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...C.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...C.errToObj(r)})}nonempty(e){return this.min(1,C.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...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 isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};pr.create=t=>new pr({checks:[],typeName:T.ZodString,coerce:t?.coerce??!1,...K(t)});function zv(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}var Cr=class t extends Q{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)!==O.number){let s=this._getOrReturnCtx(e);return P(s,{code:S.invalid_type,expected:O.number,received:s.parsedType}),F}let n,o=new je;for(let s of this._def.checks)s.kind==="int"?te.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),P(n,{code:S.invalid_type,expected:"integer",received:"float",message:s.message}),o.dirty()):s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),P(n,{code:S.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),P(n,{code:S.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?zv(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),P(n,{code:S.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),P(n,{code:S.not_finite,message:s.message}),o.dirty()):te.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,C.toString(r))}gt(e,r){return this.setLimit("min",e,!1,C.toString(r))}lte(e,r){return this.setLimit("max",e,!0,C.toString(r))}lt(e,r){return this.setLimit("max",e,!1,C.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:C.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:C.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:C.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:C.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:C.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:C.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:C.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:C.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:C.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:C.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.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,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(r)&&Number.isFinite(e)}};Cr.create=t=>new Cr({checks:[],typeName:T.ZodNumber,coerce:t?.coerce||!1,...K(t)});var Nr=class t extends Q{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==O.bigint)return this._getInvalidInput(e);let n,o=new je;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),P(n,{code:S.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),P(n,{code:S.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),P(n,{code:S.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):te.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return P(r,{code:S.invalid_type,expected:O.bigint,received:r.parsedType}),F}gte(e,r){return this.setLimit("min",e,!0,C.toString(r))}gt(e,r){return this.setLimit("min",e,!1,C.toString(r))}lte(e,r){return this.setLimit("max",e,!0,C.toString(r))}lt(e,r){return this.setLimit("max",e,!1,C.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:C.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:C.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:C.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:C.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:C.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:C.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};Nr.create=t=>new Nr({checks:[],typeName:T.ZodBigInt,coerce:t?.coerce??!1,...K(t)});var jr=class extends Q{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==O.boolean){let n=this._getOrReturnCtx(e);return P(n,{code:S.invalid_type,expected:O.boolean,received:n.parsedType}),F}return We(e.data)}};jr.create=t=>new jr({typeName:T.ZodBoolean,coerce:t?.coerce||!1,...K(t)});var Zr=class t extends Q{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==O.date){let s=this._getOrReturnCtx(e);return P(s,{code:S.invalid_type,expected:O.date,received:s.parsedType}),F}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return P(s,{code:S.invalid_date}),F}let n=new je,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),P(o,{code:S.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),n.dirty()):s.kind==="max"?e.data.getTime()>s.value&&(o=this._getOrReturnCtx(e,o),P(o,{code:S.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):te.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:C.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:C.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}};Zr.create=t=>new Zr({checks:[],coerce:t?.coerce||!1,typeName:T.ZodDate,...K(t)});var wn=class extends Q{_parse(e){if(this._getType(e)!==O.symbol){let n=this._getOrReturnCtx(e);return P(n,{code:S.invalid_type,expected:O.symbol,received:n.parsedType}),F}return We(e.data)}};wn.create=t=>new wn({typeName:T.ZodSymbol,...K(t)});var Dr=class extends Q{_parse(e){if(this._getType(e)!==O.undefined){let n=this._getOrReturnCtx(e);return P(n,{code:S.invalid_type,expected:O.undefined,received:n.parsedType}),F}return We(e.data)}};Dr.create=t=>new Dr({typeName:T.ZodUndefined,...K(t)});var qr=class extends Q{_parse(e){if(this._getType(e)!==O.null){let n=this._getOrReturnCtx(e);return P(n,{code:S.invalid_type,expected:O.null,received:n.parsedType}),F}return We(e.data)}};qr.create=t=>new qr({typeName:T.ZodNull,...K(t)});var fr=class extends Q{constructor(){super(...arguments),this._any=!0}_parse(e){return We(e.data)}};fr.create=t=>new fr({typeName:T.ZodAny,...K(t)});var rr=class extends Q{constructor(){super(...arguments),this._unknown=!0}_parse(e){return We(e.data)}};rr.create=t=>new rr({typeName:T.ZodUnknown,...K(t)});var Et=class extends Q{_parse(e){let r=this._getOrReturnCtx(e);return P(r,{code:S.invalid_type,expected:O.never,received:r.parsedType}),F}};Et.create=t=>new Et({typeName:T.ZodNever,...K(t)});var $n=class extends Q{_parse(e){if(this._getType(e)!==O.undefined){let n=this._getOrReturnCtx(e);return P(n,{code:S.invalid_type,expected:O.void,received:n.parsedType}),F}return We(e.data)}};$n.create=t=>new $n({typeName:T.ZodVoid,...K(t)});var nr=class t extends Q{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==O.array)return P(r,{code:S.invalid_type,expected:O.array,received:r.parsedType}),F;if(o.exactLength!==null){let i=r.data.length>o.exactLength.value,a=r.data.length<o.exactLength.value;(i||a)&&(P(r,{code:i?S.too_big:S.too_small,minimum:a?o.exactLength.value:void 0,maximum:i?o.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:o.exactLength.message}),n.dirty())}if(o.minLength!==null&&r.data.length<o.minLength.value&&(P(r,{code:S.too_small,minimum:o.minLength.value,type:"array",inclusive:!0,exact:!1,message:o.minLength.message}),n.dirty()),o.maxLength!==null&&r.data.length>o.maxLength.value&&(P(r,{code:S.too_big,maximum:o.maxLength.value,type:"array",inclusive:!0,exact:!1,message:o.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((i,a)=>o.type._parseAsync(new yt(r,i,r.path,a)))).then(i=>je.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new yt(r,i,r.path,a)));return je.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:C.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:C.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:C.toString(r)}})}nonempty(e){return this.min(1,e)}};nr.create=(t,e)=>new nr({type:t,minLength:null,maxLength:null,exactLength:null,typeName:T.ZodArray,...K(e)});function bn(t){if(t instanceof nt){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=rt.create(bn(n))}return new nt({...t._def,shape:()=>e})}else return t instanceof nr?new nr({...t._def,type:bn(t.element)}):t instanceof rt?rt.create(bn(t.unwrap())):t instanceof Ht?Ht.create(bn(t.unwrap())):t instanceof Vt?Vt.create(t.items.map(e=>bn(e))):t}var nt=class t extends Q{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=te.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==O.object){let u=this._getOrReturnCtx(e);return P(u,{code:S.invalid_type,expected:O.object,received:u.parsedType}),F}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof Et&&this._def.unknownKeys==="strip"))for(let u in o.data)i.includes(u)||a.push(u);let c=[];for(let u of i){let l=s[u],d=o.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new yt(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof Et){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:o.data[l]}});else if(u==="strict")a.length>0&&(P(o,{code:S.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let d=o.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new yt(o,d,o.path,l)),alwaysSet:l in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,p=await l.value;u.push({key:d,value:p,alwaysSet:l.alwaysSet})}return u}).then(u=>je.mergeObjectSync(n,u)):je.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return C.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let o=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:C.errToObj(e).message??o}:{message:o}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:T.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of te.objectKeys(e))e[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let n of te.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return bn(this)}partial(e){let r={};for(let n of te.objectKeys(this.shape)){let o=this.shape[n];e&&!e[n]?r[n]=o:r[n]=o.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of te.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof rt;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return Pp(te.objectKeys(this.shape))}};nt.create=(t,e)=>new nt({shape:()=>t,unknownKeys:"strip",catchall:Et.create(),typeName:T.ZodObject,...K(e)});nt.strictCreate=(t,e)=>new nt({shape:()=>t,unknownKeys:"strict",catchall:Et.create(),typeName:T.ZodObject,...K(e)});nt.lazycreate=(t,e)=>new nt({shape:t,unknownKeys:"strip",catchall:Et.create(),typeName:T.ZodObject,...K(e)});var Lr=class extends Q{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function o(s){for(let a of s)if(a.result.status==="valid")return a.result;for(let a of s)if(a.result.status==="dirty")return r.common.issues.push(...a.ctx.common.issues),a.result;let i=s.map(a=>new tt(a.ctx.common.issues));return P(r,{code:S.invalid_union,unionErrors:i}),F}if(r.common.async)return Promise.all(n.map(async s=>{let i={...r,common:{...r.common,issues:[]},parent:null};return{result:await s._parseAsync({data:r.data,path:r.path,parent:i}),ctx:i}})).then(o);{let s,i=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},l=c._parseSync({data:r.data,path:r.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!s&&(s={result:l,ctx:u}),u.common.issues.length&&i.push(u.common.issues)}if(s)return r.common.issues.push(...s.ctx.common.issues),s.result;let a=i.map(c=>new tt(c));return P(r,{code:S.invalid_union,unionErrors:a}),F}}get options(){return this._def.options}};Lr.create=(t,e)=>new Lr({options:t,typeName:T.ZodUnion,...K(e)});var tr=t=>t instanceof Ur?tr(t.schema):t instanceof _t?tr(t.innerType()):t instanceof Vr?[t.value]:t instanceof Hr?t.options:t instanceof Wr?te.objectValues(t.enum):t instanceof Gr?tr(t._def.innerType):t instanceof Dr?[void 0]:t instanceof qr?[null]:t instanceof rt?[void 0,...tr(t.unwrap())]:t instanceof Ht?[null,...tr(t.unwrap())]:t instanceof so||t instanceof Kr?tr(t.unwrap()):t instanceof Br?tr(t._def.innerType):[],bs=class t extends Q{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.object)return P(r,{code:S.invalid_type,expected:O.object,received:r.parsedType}),F;let n=this.discriminator,o=r.data[n],s=this.optionsMap.get(o);return s?r.common.async?s._parseAsync({data:r.data,path:r.path,parent:r}):s._parseSync({data:r.data,path:r.path,parent:r}):(P(r,{code:S.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),F)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let o=new Map;for(let s of r){let i=tr(s.shape[e]);if(!i.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of i){if(o.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);o.set(a,s)}}return new t({typeName:T.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...K(n)})}};function za(t,e){let r=Ut(t),n=Ut(e);if(t===e)return{valid:!0,data:t};if(r===O.object&&n===O.object){let o=te.objectKeys(e),s=te.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=za(t[a],e[a]);if(!c.valid)return{valid:!1};i[a]=c.data}return{valid:!0,data:i}}else if(r===O.array&&n===O.array){if(t.length!==e.length)return{valid:!1};let o=[];for(let s=0;s<t.length;s++){let i=t[s],a=e[s],c=za(i,a);if(!c.valid)return{valid:!1};o.push(c.data)}return{valid:!0,data:o}}else return r===O.date&&n===O.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var Fr=class extends Q{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(vs(s)||vs(i))return F;let a=za(s.value,i.value);return a.valid?((xs(s)||xs(i))&&r.dirty(),{status:r.value,value:a.data}):(P(n,{code:S.invalid_intersection_types}),F)};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(([s,i])=>o(s,i)):o(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};Fr.create=(t,e,r)=>new Fr({left:t,right:e,typeName:T.ZodIntersection,...K(r)});var Vt=class t extends Q{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.array)return P(n,{code:S.invalid_type,expected:O.array,received:n.parsedType}),F;if(n.data.length<this._def.items.length)return P(n,{code:S.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),F;!this._def.rest&&n.data.length>this._def.items.length&&(P(n,{code:S.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let s=[...n.data].map((i,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new yt(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>je.mergeArray(r,i)):je.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};Vt.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Vt({items:t,typeName:T.ZodTuple,rest:null,...K(e)})};var ws=class t extends Q{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.object)return P(n,{code:S.invalid_type,expected:O.object,received:n.parsedType}),F;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in n.data)o.push({key:s._parse(new yt(n,a,n.path,a)),value:i._parse(new yt(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?je.mergeObjectAsync(r,o):je.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof Q?new t({keyType:e,valueType:r,typeName:T.ZodRecord,...K(n)}):new t({keyType:pr.create(),valueType:e,typeName:T.ZodRecord,...K(r)})}},kn=class extends Q{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.map)return P(n,{code:S.invalid_type,expected:O.map,received:n.parsedType}),F;let o=this._def.keyType,s=this._def.valueType,i=[...n.data.entries()].map(([a,c],u)=>({key:o._parse(new yt(n,a,n.path,[u,"key"])),value:s._parse(new yt(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of i){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return F;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}})}else{let a=new Map;for(let c of i){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return F;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};kn.create=(t,e,r)=>new kn({valueType:e,keyType:t,typeName:T.ZodMap,...K(r)});var Sn=class t extends Q{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.set)return P(n,{code:S.invalid_type,expected:O.set,received:n.parsedType}),F;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(P(n,{code:S.too_small,minimum:o.minSize.value,type:"set",inclusive:!0,exact:!1,message:o.minSize.message}),r.dirty()),o.maxSize!==null&&n.data.size>o.maxSize.value&&(P(n,{code:S.too_big,maximum:o.maxSize.value,type:"set",inclusive:!0,exact:!1,message:o.maxSize.message}),r.dirty());let s=this._def.valueType;function i(c){let u=new Set;for(let l of c){if(l.status==="aborted")return F;l.status==="dirty"&&r.dirty(),u.add(l.value)}return{status:r.value,value:u}}let a=[...n.data.values()].map((c,u)=>s._parse(new yt(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>i(c)):i(a)}min(e,r){return new t({...this._def,minSize:{value:e,message:C.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:C.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};Sn.create=(t,e)=>new Sn({valueType:t,minSize:null,maxSize:null,typeName:T.ZodSet,...K(e)});var $s=class t extends Q{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.function)return P(r,{code:S.invalid_type,expected:O.function,received:r.parsedType}),F;function n(a,c){return oo({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,vn(),er].filter(u=>!!u),issueData:{code:S.invalid_arguments,argumentsError:c}})}function o(a,c){return oo({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,vn(),er].filter(u=>!!u),issueData:{code:S.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},i=r.data;if(this._def.returns instanceof mr){let a=this;return We(async function(...c){let u=new tt([]),l=await a._def.args.parseAsync(c,s).catch(m=>{throw u.addIssue(n(c,m)),u}),d=await Reflect.apply(i,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(m=>{throw u.addIssue(o(d,m)),u})})}else{let a=this;return We(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new tt([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new tt([o(l,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:Vt.create(e).rest(rr.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||Vt.create([]).rest(rr.create()),returns:r||rr.create(),typeName:T.ZodFunction,...K(n)})}},Ur=class extends Q{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};Ur.create=(t,e)=>new Ur({getter:t,typeName:T.ZodLazy,...K(e)});var Vr=class extends Q{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return P(r,{received:r.data,code:S.invalid_literal,expected:this._def.value}),F}return{status:"valid",value:e.data}}get value(){return this._def.value}};Vr.create=(t,e)=>new Vr({value:t,typeName:T.ZodLiteral,...K(e)});function Pp(t,e){return new Hr({values:t,typeName:T.ZodEnum,...K(e)})}var Hr=class t extends Q{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return P(r,{expected:te.joinValues(n),received:r.parsedType,code:S.invalid_type}),F}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return P(r,{received:r.data,code:S.invalid_enum_value,options:n}),F}return We(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};Hr.create=Pp;var Wr=class extends Q{_parse(e){let r=te.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==O.string&&n.parsedType!==O.number){let o=te.objectValues(r);return P(n,{expected:te.joinValues(o),received:n.parsedType,code:S.invalid_type}),F}if(this._cache||(this._cache=new Set(te.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=te.objectValues(r);return P(n,{received:n.data,code:S.invalid_enum_value,options:o}),F}return We(e.data)}get enum(){return this._def.values}};Wr.create=(t,e)=>new Wr({values:t,typeName:T.ZodNativeEnum,...K(e)});var mr=class extends Q{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.promise&&r.common.async===!1)return P(r,{code:S.invalid_type,expected:O.promise,received:r.parsedType}),F;let n=r.parsedType===O.promise?r.data:Promise.resolve(r.data);return We(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};mr.create=(t,e)=>new mr({type:t,typeName:T.ZodPromise,...K(e)});var _t=class extends Q{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===T.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=this._def.effect||null,s={addIssue:i=>{P(n,i),i.fatal?r.abort():r.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),o.type==="preprocess"){let i=o.transform(n.data,s);if(n.common.async)return Promise.resolve(i).then(async a=>{if(r.value==="aborted")return F;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?F:c.status==="dirty"?Ar(c.value):r.value==="dirty"?Ar(c.value):c});{if(r.value==="aborted")return F;let a=this._def.schema._parseSync({data:i,path:n.path,parent:n});return a.status==="aborted"?F:a.status==="dirty"?Ar(a.value):r.value==="dirty"?Ar(a.value):a}}if(o.type==="refinement"){let i=a=>{let c=o.refinement(a,s);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 a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?F:(a.status==="dirty"&&r.dirty(),i(a.value),{status:r.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?F:(a.status==="dirty"&&r.dirty(),i(a.value).then(()=>({status:r.value,value:a.value}))))}if(o.type==="transform")if(n.common.async===!1){let i=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!dr(i))return F;let a=o.transform(i.value,s);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(i=>dr(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):F);te.assertNever(o)}};_t.create=(t,e,r)=>new _t({schema:t,typeName:T.ZodEffects,effect:e,...K(r)});_t.createWithPreprocess=(t,e,r)=>new _t({schema:e,effect:{type:"preprocess",transform:t},typeName:T.ZodEffects,...K(r)});var rt=class extends Q{_parse(e){return this._getType(e)===O.undefined?We(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};rt.create=(t,e)=>new rt({innerType:t,typeName:T.ZodOptional,...K(e)});var Ht=class extends Q{_parse(e){return this._getType(e)===O.null?We(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ht.create=(t,e)=>new Ht({innerType:t,typeName:T.ZodNullable,...K(e)});var Gr=class extends Q{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===O.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};Gr.create=(t,e)=>new Gr({innerType:t,typeName:T.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...K(e)});var Br=class extends Q{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},o=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return xn(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new tt(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new tt(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Br.create=(t,e)=>new Br({innerType:t,typeName:T.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...K(e)});var Tn=class extends Q{_parse(e){if(this._getType(e)!==O.nan){let n=this._getOrReturnCtx(e);return P(n,{code:S.invalid_type,expected:O.nan,received:n.parsedType}),F}return{status:"valid",value:e.data}}};Tn.create=t=>new Tn({typeName:T.ZodNaN,...K(t)});var Ev=Symbol("zod_brand"),so=class extends Q{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},io=class t extends Q{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let s=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?F:s.status==="dirty"?(r.dirty(),Ar(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{let o=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?F:o.status==="dirty"?(r.dirty(),{status:"dirty",value:o.value}):this._def.out._parseSync({data:o.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:T.ZodPipeline})}},Kr=class extends Q{_parse(e){let r=this._def.innerType._parse(e),n=o=>(dr(o)&&(o.value=Object.freeze(o.value)),o);return xn(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};Kr.create=(t,e)=>new Kr({innerType:t,typeName:T.ZodReadonly,...K(e)});function Sp(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function Rp(t,e={},r){return t?fr.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=Sp(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=Sp(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):fr.create()}var Pv={object:nt.lazycreate},T;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(T||(T={}));var Rv=(t,e={message:`Input not instance of ${t.name}`})=>Rp(r=>r instanceof t,e),Ip=pr.create,Op=Cr.create,Iv=Tn.create,Ov=Nr.create,Mp=jr.create,Mv=Zr.create,Av=wn.create,Cv=Dr.create,Nv=qr.create,jv=fr.create,Zv=rr.create,Dv=Et.create,qv=$n.create,Lv=nr.create,Ea=nt.create,Fv=nt.strictCreate,Uv=Lr.create,Vv=bs.create,Hv=Fr.create,Wv=Vt.create,Gv=ws.create,Bv=kn.create,Kv=Sn.create,Jv=$s.create,Qv=Ur.create,Xv=Vr.create,Yv=Hr.create,ex=Wr.create,tx=mr.create,rx=_t.create,nx=rt.create,ox=Ht.create,sx=_t.createWithPreprocess,ix=io.create,ax=()=>Ip().optional(),cx=()=>Op().optional(),ux=()=>Mp().optional(),lx={string:t=>pr.create({...t,coerce:!0}),number:t=>Cr.create({...t,coerce:!0}),boolean:t=>jr.create({...t,coerce:!0}),bigint:t=>Nr.create({...t,coerce:!0}),date:t=>Zr.create({...t,coerce:!0})};var dx=F;var px=Object.freeze({status:"aborted"});function $(t,e,r){function n(a,c){var u;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(u=a._zod).traits??(u.traits=new Set),a._zod.traits.add(t),e(a,c);for(let l in i.prototype)l in a||Object.defineProperty(a,l,{value:i.prototype[l].bind(a)});a._zod.constr=i,a._zod.def=c}let o=r?.Parent??Object;class s extends o{}Object.defineProperty(s,"name",{value:t});function i(a){var c;let u=r?.Parent?new s:this;n(u,a),(c=u._zod).deferred??(c.deferred=[]);for(let l of u._zod.deferred)l();return u}return Object.defineProperty(i,"init",{value:n}),Object.defineProperty(i,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(i,"name",{value:t}),i}var fx=Symbol("zod_brand"),or=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},ks={};function pt(t){return t&&Object.assign(ks,t),ks}var re={};_s(re,{BIGINT_FORMAT_RANGES:()=>Cp,Class:()=>Ra,NUMBER_FORMAT_RANGES:()=>ja,aborted:()=>Qr,allowsEval:()=>Aa,assert:()=>_x,assertEqual:()=>mx,assertIs:()=>gx,assertNever:()=>yx,assertNotEqual:()=>hx,assignProp:()=>Ma,cached:()=>uo,captureStackTrace:()=>Ts,cleanEnum:()=>Ix,cleanRegex:()=>po,clone:()=>ft,createTransparentProxy:()=>kx,defineLazy:()=>ge,esc:()=>Jr,escapeRegex:()=>hr,extend:()=>zx,finalizeIssue:()=>Pt,floatSafeRemainder:()=>Oa,getElementAtPath:()=>vx,getEnumValues:()=>co,getLengthableOrigin:()=>fo,getParsedType:()=>$x,getSizableOrigin:()=>Np,isObject:()=>zn,isPlainObject:()=>En,issue:()=>Za,joinValues:()=>Ss,jsonStringifyReplacer:()=>Ia,merge:()=>Ex,normalizeParams:()=>U,nullish:()=>lo,numKeys:()=>wx,omit:()=>Tx,optionalKeys:()=>Na,partial:()=>Px,pick:()=>Sx,prefixIssues:()=>Wt,primitiveTypes:()=>Ap,promiseAllObject:()=>xx,propertyKeyTypes:()=>Ca,randomString:()=>bx,required:()=>Rx,stringifyPrimitive:()=>zs,unwrapMessage:()=>ao});function mx(t){return t}function hx(t){return t}function gx(t){}function yx(t){throw new Error}function _x(t){}function co(t){let e=Object.values(t).filter(n=>typeof n=="number");return Object.entries(t).filter(([n,o])=>e.indexOf(+n)===-1).map(([n,o])=>o)}function Ss(t,e="|"){return t.map(r=>zs(r)).join(e)}function Ia(t,e){return typeof e=="bigint"?e.toString():e}function uo(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function lo(t){return t==null}function po(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Oa(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}function ge(t,e,r){Object.defineProperty(t,e,{get(){{let o=r();return t[e]=o,o}throw new Error("cached value already set")},set(o){Object.defineProperty(t,e,{value:o})},configurable:!0})}function Ma(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function vx(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function xx(t){let e=Object.keys(t),r=e.map(n=>t[n]);return Promise.all(r).then(n=>{let o={};for(let s=0;s<e.length;s++)o[e[s]]=n[s];return o})}function bx(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function Jr(t){return JSON.stringify(t)}var Ts=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function zn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Aa=uo(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function En(t){if(zn(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(zn(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function wx(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var $x=t=>{let e=typeof t;switch(e){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(t)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(t)?"array":t===null?"null":t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?"promise":typeof Map<"u"&&t instanceof Map?"map":typeof Set<"u"&&t instanceof Set?"set":typeof Date<"u"&&t instanceof Date?"date":typeof File<"u"&&t instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${e}`)}},Ca=new Set(["string","number","symbol"]),Ap=new Set(["string","number","bigint","boolean","symbol","undefined"]);function hr(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function ft(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function U(t){let e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function kx(t){let e;return new Proxy({},{get(r,n,o){return e??(e=t()),Reflect.get(e,n,o)},set(r,n,o,s){return e??(e=t()),Reflect.set(e,n,o,s)},has(r,n){return e??(e=t()),Reflect.has(e,n)},deleteProperty(r,n){return e??(e=t()),Reflect.deleteProperty(e,n)},ownKeys(r){return e??(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(r,n){return e??(e=t()),Reflect.getOwnPropertyDescriptor(e,n)},defineProperty(r,n,o){return e??(e=t()),Reflect.defineProperty(e,n,o)}})}function zs(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Na(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var ja={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},Cp={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function Sx(t,e){let r={},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&(r[o]=n.shape[o])}return ft(t,{...t._zod.def,shape:r,checks:[]})}function Tx(t,e){let r={...t._zod.def.shape},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&delete r[o]}return ft(t,{...t._zod.def,shape:r,checks:[]})}function zx(t,e){if(!En(e))throw new Error("Invalid input to extend: expected a plain object");let r={...t._zod.def,get shape(){let n={...t._zod.def.shape,...e};return Ma(this,"shape",n),n},checks:[]};return ft(t,r)}function Ex(t,e){return ft(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Ma(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function Px(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in n))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=t?new t({type:"optional",innerType:n[s]}):n[s])}else for(let s in n)o[s]=t?new t({type:"optional",innerType:n[s]}):n[s];return ft(e,{...e._zod.def,shape:o,checks:[]})}function Rx(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in o))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=new t({type:"nonoptional",innerType:n[s]}))}else for(let s in n)o[s]=new t({type:"nonoptional",innerType:n[s]});return ft(e,{...e._zod.def,shape:o,checks:[]})}function Qr(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function Wt(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function ao(t){return typeof t=="string"?t:t?.message}function Pt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=ao(t.inst?._zod.def?.error?.(t))??ao(e?.error?.(t))??ao(r.customError?.(t))??ao(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Np(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function fo(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Za(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function Ix(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var Ra=class{constructor(...e){}};var jp=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),Object.defineProperty(t,"message",{get(){return JSON.stringify(e,Ia,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Es=$("$ZodError",jp),mo=$("$ZodError",jp,{Parent:Error});function Da(t,e=r=>r.message){let r={},n=[];for(let o of t.issues)o.path.length>0?(r[o.path[0]]=r[o.path[0]]||[],r[o.path[0]].push(e(o))):n.push(e(o));return{formErrors:n,fieldErrors:r}}function qa(t,e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map(a=>o({issues:a}));else if(i.code==="invalid_key")o({issues:i.issues});else if(i.code==="invalid_element")o({issues:i.issues});else if(i.path.length===0)n._errors.push(r(i));else{let a=n,c=0;for(;c<i.path.length;){let u=i.path[c];c===i.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(i))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return o(t),n}var La=t=>(e,r,n,o)=>{let s=n?Object.assign(n,{async:!1}):{async:!1},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise)throw new or;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>Pt(c,s,pt())));throw Ts(a,o?.callee),a}return i.value},Fa=La(mo),Ua=t=>async(e,r,n,o)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise&&(i=await i),i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>Pt(c,s,pt())));throw Ts(a,o?.callee),a}return i.value},Va=Ua(mo),Ha=t=>(e,r,n)=>{let o=n?{...n,async:!1}:{async:!1},s=e._zod.run({value:r,issues:[]},o);if(s instanceof Promise)throw new or;return s.issues.length?{success:!1,error:new(t??Es)(s.issues.map(i=>Pt(i,o,pt())))}:{success:!0,data:s.value}},Xr=Ha(mo),Wa=t=>async(e,r,n)=>{let o=n?Object.assign(n,{async:!0}):{async:!0},s=e._zod.run({value:r,issues:[]},o);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new t(s.issues.map(i=>Pt(i,o,pt())))}:{success:!0,data:s.value}},Yr=Wa(mo);var Zp=/^[cC][^\s-]{8,}$/,Dp=/^[0-9a-z]+$/,qp=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Lp=/^[0-9a-vA-V]{20}$/,Fp=/^[A-Za-z0-9]{27}$/,Up=/^[a-zA-Z0-9_-]{21}$/,Vp=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Hp=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Ga=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$/;var Wp=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var Mx="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Gp(){return new RegExp(Mx,"u")}var Bp=/^(?:(?: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])$/,Kp=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,Jp=/^((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])\/([0-9]|[1-2][0-9]|3[0-2])$/,Qp=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Xp=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Ba=/^[A-Za-z0-9_-]*$/,Yp=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var ef=/^\+(?:[0-9]){6,14}[0-9]$/,tf="(?:(?:\\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])))",rf=new RegExp(`^${tf}$`);function nf(t){let e="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof t.precision=="number"?t.precision===-1?`${e}`:t.precision===0?`${e}:[0-5]\\d`:`${e}:[0-5]\\d\\.\\d{${t.precision}}`:`${e}(?::[0-5]\\d(?:\\.\\d+)?)?`}function of(t){return new RegExp(`^${nf(t)}$`)}function sf(t){let e=nf({precision:t.precision}),r=["Z"];t.local&&r.push(""),t.offset&&r.push("([+-]\\d{2}:\\d{2})");let n=`${e}(?:${r.join("|")})`;return new RegExp(`^${tf}T(?:${n})$`)}var af=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var cf=/^\d+$/,uf=/^-?\d+(?:\.\d+)?/i,lf=/true|false/i,df=/null/i;var pf=/^[^A-Z]*$/,ff=/^[^a-z]*$/;var Ze=$("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),mf={number:"number",bigint:"bigint",object:"date"},Ka=$("$ZodCheckLessThan",(t,e)=>{Ze.init(t,e);let r=mf[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,s=(e.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value<s&&(e.inclusive?o.maximum=e.value:o.exclusiveMaximum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value<=e.value:n.value<e.value)||n.issues.push({origin:r,code:"too_big",maximum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),Ja=$("$ZodCheckGreaterThan",(t,e)=>{Ze.init(t,e);let r=mf[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,s=(e.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>s&&(e.inclusive?o.minimum=e.value:o.exclusiveMinimum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value>=e.value:n.value>e.value)||n.issues.push({origin:r,code:"too_small",minimum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),hf=$("$ZodCheckMultipleOf",(t,e)=>{Ze.init(t,e),t._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=e.value)}),t._zod.check=r=>{if(typeof r.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):Oa(r.value,e.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:e.value,input:r.value,inst:t,continue:!e.abort})}}),gf=$("$ZodCheckNumberFormat",(t,e)=>{Ze.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=ja[e.format];t._zod.onattach.push(i=>{let a=i._zod.bag;a.format=e.format,a.minimum=o,a.maximum=s,r&&(a.pattern=cf)}),t._zod.check=i=>{let a=i.value;if(r){if(!Number.isInteger(a)){i.issues.push({expected:n,format:e.format,code:"invalid_type",input:a,inst:t});return}if(!Number.isSafeInteger(a)){a>0?i.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort}):i.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort});return}}a<o&&i.issues.push({origin:"number",input:a,code:"too_small",minimum:o,inclusive:!0,inst:t,continue:!e.abort}),a>s&&i.issues.push({origin:"number",input:a,code:"too_big",maximum:s,inst:t})}});var yf=$("$ZodCheckMaxLength",(t,e)=>{var r;Ze.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!lo(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum<o&&(n._zod.bag.maximum=e.maximum)}),t._zod.check=n=>{let o=n.value;if(o.length<=e.maximum)return;let i=fo(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),_f=$("$ZodCheckMinLength",(t,e)=>{var r;Ze.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!lo(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>o&&(n._zod.bag.minimum=e.minimum)}),t._zod.check=n=>{let o=n.value;if(o.length>=e.minimum)return;let i=fo(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),vf=$("$ZodCheckLengthEquals",(t,e)=>{var r;Ze.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!lo(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag;o.minimum=e.length,o.maximum=e.length,o.length=e.length}),t._zod.check=n=>{let o=n.value,s=o.length;if(s===e.length)return;let i=fo(o),a=s>e.length;n.issues.push({origin:i,...a?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:n.value,inst:t,continue:!e.abort})}}),ho=$("$ZodCheckStringFormat",(t,e)=>{var r,n;Ze.init(t,e),t._zod.onattach.push(o=>{let s=o._zod.bag;s.format=e.format,e.pattern&&(s.patterns??(s.patterns=new Set),s.patterns.add(e.pattern))}),e.pattern?(r=t._zod).check??(r.check=o=>{e.pattern.lastIndex=0,!e.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:e.format,input:o.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(n=t._zod).check??(n.check=()=>{})}),xf=$("$ZodCheckRegex",(t,e)=>{ho.init(t,e),t._zod.check=r=>{e.pattern.lastIndex=0,!e.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:e.pattern.toString(),inst:t,continue:!e.abort})}}),bf=$("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=pf),ho.init(t,e)}),wf=$("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=ff),ho.init(t,e)}),$f=$("$ZodCheckIncludes",(t,e)=>{Ze.init(t,e);let r=hr(e.includes),n=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=n,t._zod.onattach.push(o=>{let s=o._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(n)}),t._zod.check=o=>{o.value.includes(e.includes,e.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:o.value,inst:t,continue:!e.abort})}}),kf=$("$ZodCheckStartsWith",(t,e)=>{Ze.init(t,e);let r=new RegExp(`^${hr(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.startsWith(e.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:n.value,inst:t,continue:!e.abort})}}),Sf=$("$ZodCheckEndsWith",(t,e)=>{Ze.init(t,e);let r=new RegExp(`.*${hr(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.endsWith(e.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:n.value,inst:t,continue:!e.abort})}});var Tf=$("$ZodCheckOverwrite",(t,e)=>{Ze.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Rs=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let n=e.split(`
10
10
  `).filter(i=>i),o=Math.min(...n.map(i=>i.length-i.trimStart().length)),s=n.map(i=>i.slice(o)).map(i=>" ".repeat(this.indent*2)+i);for(let i of s)this.content.push(i)}compile(){let e=Function,r=this?.args,o=[...(this?.content??[""]).map(s=>` ${s}`)];return new e(...r,o.join(`
11
- `))}};var yf={major:4,minor:0,patch:0};var pe=$("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=yf;let n=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&n.unshift(t);for(let o of n)for(let s of o._zod.onattach)s(t);if(n.length===0)(r=t._zod).deferred??(r.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let o=(s,i,a)=>{let c=Lr(s),u;for(let l of i){if(l._zod.def.when){if(!l._zod.def.when(s))continue}else if(c)continue;let d=s.issues.length,p=l._zod.check(s);if(p instanceof Promise&&a?.async===!1)throw new Bt;if(u||p instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await p,s.issues.length!==d&&(c||(c=Lr(s,d)))});else{if(s.issues.length===d)continue;c||(c=Lr(s,d))}}return u?u.then(()=>s):s};t._zod.run=(s,i)=>{let a=t._zod.parse(s,i);if(a instanceof Promise){if(i.async===!1)throw new Bt;return a.then(c=>o(c,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=Fr(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return Ur(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),oo=$("$ZodString",(t,e)=>{pe.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??Kp(t._zod.bag),t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:t}),r}}),ge=$("$ZodStringFormat",(t,e)=>{no.init(t,e),oo.init(t,e)}),Fa=$("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Ap),ge.init(t,e)}),Ua=$("$ZodUUID",(t,e)=>{if(e.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(n===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=ja(n))}else e.pattern??(e.pattern=ja());ge.init(t,e)}),Va=$("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Cp),ge.init(t,e)}),Ha=$("$ZodURL",(t,e)=>{ge.init(t,e),t._zod.check=r=>{try{let n=r.value,o=new URL(n),s=o.href;e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(o.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:Fp.source,input:r.value,inst:t,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,e.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:e.protocol.source,input:r.value,inst:t,continue:!e.abort})),!n.endsWith("/")&&s.endsWith("/")?r.value=s.slice(0,-1):r.value=s;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:t,continue:!e.abort})}}}),Ga=$("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Np()),ge.init(t,e)}),Wa=$("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Op),ge.init(t,e)}),Ba=$("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=zp),ge.init(t,e)}),Ka=$("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Ep),ge.init(t,e)}),Ja=$("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Pp),ge.init(t,e)}),Qa=$("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Rp),ge.init(t,e)}),Xa=$("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Ip),ge.init(t,e)}),zf=$("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=Bp(e)),ge.init(t,e)}),Ef=$("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=Hp),ge.init(t,e)}),Pf=$("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=Wp(e)),ge.init(t,e)}),Rf=$("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Mp),ge.init(t,e)}),Ya=$("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=jp),ge.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),ec=$("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=Zp),ge.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv6"}),t._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:t,continue:!e.abort})}}}),tc=$("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=Dp),ge.init(t,e)}),rc=$("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=qp),ge.init(t,e),t._zod.check=r=>{let[n,o]=r.value.split("/");try{if(!o)throw new Error;let s=Number(o);if(`${s}`!==o)throw new Error;if(s<0||s>128)throw new Error;new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});function If(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var nc=$("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=Lp),ge.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{If(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function $x(t){if(!Za.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return If(r)}var oc=$("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=Za),ge.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{$x(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),sc=$("$ZodE164",(t,e)=>{e.pattern??(e.pattern=Up),ge.init(t,e)});function kx(t,e=null){try{let r=t.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let o=JSON.parse(atob(n));return!("typ"in o&&o?.typ!=="JWT"||!o.alg||e&&(!("alg"in o)||o.alg!==e))}catch{return!1}}var ic=$("$ZodJWT",(t,e)=>{ge.init(t,e),t._zod.check=r=>{kx(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var ws=$("$ZodNumber",(t,e)=>{pe.init(t,e),t._zod.pattern=t._zod.bag.pattern??Qp,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=Number(r.value)}catch{}let o=r.value;if(typeof o=="number"&&!Number.isNaN(o)&&Number.isFinite(o))return r;let s=typeof o=="number"?Number.isNaN(o)?"NaN":Number.isFinite(o)?void 0:"Infinity":void 0;return r.issues.push({expected:"number",code:"invalid_type",input:o,inst:t,...s?{received:s}:{}}),r}}),ac=$("$ZodNumber",(t,e)=>{of.init(t,e),ws.init(t,e)}),cc=$("$ZodBoolean",(t,e)=>{pe.init(t,e),t._zod.pattern=Xp,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=!!r.value}catch{}let o=r.value;return typeof o=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:t}),r}});var uc=$("$ZodNull",(t,e)=>{pe.init(t,e),t._zod.pattern=Yp,t._zod.values=new Set([null]),t._zod.parse=(r,n)=>{let o=r.value;return o===null||r.issues.push({expected:"null",code:"invalid_type",input:o,inst:t}),r}});var lc=$("$ZodUnknown",(t,e)=>{pe.init(t,e),t._zod.parse=r=>r}),dc=$("$ZodNever",(t,e)=>{pe.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function _f(t,e,r){t.issues.length&&e.issues.push(...Nt(r,t.issues)),e.value[r]=t.value}var pc=$("$ZodArray",(t,e)=>{pe.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!Array.isArray(o))return r.issues.push({expected:"array",code:"invalid_type",input:o,inst:t}),r;r.value=Array(o.length);let s=[];for(let i=0;i<o.length;i++){let a=o[i],c=e.element._zod.run({value:a,issues:[]},n);c instanceof Promise?s.push(c.then(u=>_f(u,r,i))):_f(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function bs(t,e,r){t.issues.length&&e.issues.push(...Nt(r,t.issues)),e.value[r]=t.value}function vf(t,e,r,n){t.issues.length?n[r]===void 0?r in n?e.value[r]=void 0:e.value[r]=t.value:e.issues.push(...Nt(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var $s=$("$ZodObject",(t,e)=>{pe.init(t,e);let r=Xn(()=>{let d=Object.keys(e.shape);for(let m of d)if(!(e.shape[m]instanceof pe))throw new Error(`Invalid element at key "${m}": expected a Zod schema`);let p=Ta(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(p)}});he(t._zod,"propValues",()=>{let d=e.shape,p={};for(let m in d){let f=d[m]._zod;if(f.values){p[m]??(p[m]=new Set);for(let g of f.values)p[m].add(g)}}return p});let n=d=>{let p=new xs(["shape","payload","ctx"]),m=r.value,f=v=>{let x=qr(v);return`shape[${x}]._zod.run({ value: input[${x}], issues: [] }, ctx)`};p.write("const input = payload.value;");let g=Object.create(null),h=0;for(let v of m.keys)g[v]=`key_${h++}`;p.write("const newResult = {}");for(let v of m.keys)if(m.optionalKeys.has(v)){let x=g[v];p.write(`const ${x} = ${f(v)};`);let b=qr(v);p.write(`
12
- if (${x}.issues.length) {
13
- if (input[${b}] === undefined) {
14
- if (${b} in input) {
15
- newResult[${b}] = undefined;
11
+ `))}};var Ef={major:4,minor:0,patch:0};var pe=$("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=Ef;let n=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&n.unshift(t);for(let o of n)for(let s of o._zod.onattach)s(t);if(n.length===0)(r=t._zod).deferred??(r.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let o=(s,i,a)=>{let c=Qr(s),u;for(let l of i){if(l._zod.def.when){if(!l._zod.def.when(s))continue}else if(c)continue;let d=s.issues.length,p=l._zod.check(s);if(p instanceof Promise&&a?.async===!1)throw new or;if(u||p instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await p,s.issues.length!==d&&(c||(c=Qr(s,d)))});else{if(s.issues.length===d)continue;c||(c=Qr(s,d))}}return u?u.then(()=>s):s};t._zod.run=(s,i)=>{let a=t._zod.parse(s,i);if(a instanceof Promise){if(i.async===!1)throw new or;return a.then(c=>o(c,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=Xr(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return Yr(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),go=$("$ZodString",(t,e)=>{pe.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??af(t._zod.bag),t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:t}),r}}),ye=$("$ZodStringFormat",(t,e)=>{ho.init(t,e),go.init(t,e)}),Xa=$("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Hp),ye.init(t,e)}),Ya=$("$ZodUUID",(t,e)=>{if(e.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(n===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=Ga(n))}else e.pattern??(e.pattern=Ga());ye.init(t,e)}),ec=$("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Wp),ye.init(t,e)}),tc=$("$ZodURL",(t,e)=>{ye.init(t,e),t._zod.check=r=>{try{let n=r.value,o=new URL(n),s=o.href;e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(o.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:Yp.source,input:r.value,inst:t,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,e.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:e.protocol.source,input:r.value,inst:t,continue:!e.abort})),!n.endsWith("/")&&s.endsWith("/")?r.value=s.slice(0,-1):r.value=s;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:t,continue:!e.abort})}}}),rc=$("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Gp()),ye.init(t,e)}),nc=$("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Up),ye.init(t,e)}),oc=$("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Zp),ye.init(t,e)}),sc=$("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Dp),ye.init(t,e)}),ic=$("$ZodULID",(t,e)=>{e.pattern??(e.pattern=qp),ye.init(t,e)}),ac=$("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Lp),ye.init(t,e)}),cc=$("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Fp),ye.init(t,e)}),Zf=$("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=sf(e)),ye.init(t,e)}),Df=$("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=rf),ye.init(t,e)}),qf=$("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=of(e)),ye.init(t,e)}),Lf=$("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Vp),ye.init(t,e)}),uc=$("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=Bp),ye.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),lc=$("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=Kp),ye.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv6"}),t._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:t,continue:!e.abort})}}}),dc=$("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=Jp),ye.init(t,e)}),pc=$("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=Qp),ye.init(t,e),t._zod.check=r=>{let[n,o]=r.value.split("/");try{if(!o)throw new Error;let s=Number(o);if(`${s}`!==o)throw new Error;if(s<0||s>128)throw new Error;new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});function Ff(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var fc=$("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=Xp),ye.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Ff(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function Ax(t){if(!Ba.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Ff(r)}var mc=$("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=Ba),ye.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{Ax(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),hc=$("$ZodE164",(t,e)=>{e.pattern??(e.pattern=ef),ye.init(t,e)});function Cx(t,e=null){try{let r=t.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let o=JSON.parse(atob(n));return!("typ"in o&&o?.typ!=="JWT"||!o.alg||e&&(!("alg"in o)||o.alg!==e))}catch{return!1}}var gc=$("$ZodJWT",(t,e)=>{ye.init(t,e),t._zod.check=r=>{Cx(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var Os=$("$ZodNumber",(t,e)=>{pe.init(t,e),t._zod.pattern=t._zod.bag.pattern??uf,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=Number(r.value)}catch{}let o=r.value;if(typeof o=="number"&&!Number.isNaN(o)&&Number.isFinite(o))return r;let s=typeof o=="number"?Number.isNaN(o)?"NaN":Number.isFinite(o)?void 0:"Infinity":void 0;return r.issues.push({expected:"number",code:"invalid_type",input:o,inst:t,...s?{received:s}:{}}),r}}),yc=$("$ZodNumber",(t,e)=>{gf.init(t,e),Os.init(t,e)}),_c=$("$ZodBoolean",(t,e)=>{pe.init(t,e),t._zod.pattern=lf,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=!!r.value}catch{}let o=r.value;return typeof o=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:t}),r}});var vc=$("$ZodNull",(t,e)=>{pe.init(t,e),t._zod.pattern=df,t._zod.values=new Set([null]),t._zod.parse=(r,n)=>{let o=r.value;return o===null||r.issues.push({expected:"null",code:"invalid_type",input:o,inst:t}),r}});var xc=$("$ZodUnknown",(t,e)=>{pe.init(t,e),t._zod.parse=r=>r}),bc=$("$ZodNever",(t,e)=>{pe.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function Pf(t,e,r){t.issues.length&&e.issues.push(...Wt(r,t.issues)),e.value[r]=t.value}var wc=$("$ZodArray",(t,e)=>{pe.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!Array.isArray(o))return r.issues.push({expected:"array",code:"invalid_type",input:o,inst:t}),r;r.value=Array(o.length);let s=[];for(let i=0;i<o.length;i++){let a=o[i],c=e.element._zod.run({value:a,issues:[]},n);c instanceof Promise?s.push(c.then(u=>Pf(u,r,i))):Pf(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function Is(t,e,r){t.issues.length&&e.issues.push(...Wt(r,t.issues)),e.value[r]=t.value}function Rf(t,e,r,n){t.issues.length?n[r]===void 0?r in n?e.value[r]=void 0:e.value[r]=t.value:e.issues.push(...Wt(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var Ms=$("$ZodObject",(t,e)=>{pe.init(t,e);let r=uo(()=>{let d=Object.keys(e.shape);for(let m of d)if(!(e.shape[m]instanceof pe))throw new Error(`Invalid element at key "${m}": expected a Zod schema`);let p=Na(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(p)}});ge(t._zod,"propValues",()=>{let d=e.shape,p={};for(let m in d){let f=d[m]._zod;if(f.values){p[m]??(p[m]=new Set);for(let h of f.values)p[m].add(h)}}return p});let n=d=>{let p=new Rs(["shape","payload","ctx"]),m=r.value,f=_=>{let v=Jr(_);return`shape[${v}]._zod.run({ value: input[${v}], issues: [] }, ctx)`};p.write("const input = payload.value;");let h=Object.create(null),g=0;for(let _ of m.keys)h[_]=`key_${g++}`;p.write("const newResult = {}");for(let _ of m.keys)if(m.optionalKeys.has(_)){let v=h[_];p.write(`const ${v} = ${f(_)};`);let x=Jr(_);p.write(`
12
+ if (${v}.issues.length) {
13
+ if (input[${x}] === undefined) {
14
+ if (${x} in input) {
15
+ newResult[${x}] = undefined;
16
16
  }
17
17
  } else {
18
18
  payload.issues = payload.issues.concat(
19
- ${x}.issues.map((iss) => ({
19
+ ${v}.issues.map((iss) => ({
20
20
  ...iss,
21
- path: iss.path ? [${b}, ...iss.path] : [${b}],
21
+ path: iss.path ? [${x}, ...iss.path] : [${x}],
22
22
  }))
23
23
  );
24
24
  }
25
- } else if (${x}.value === undefined) {
26
- if (${b} in input) newResult[${b}] = undefined;
25
+ } else if (${v}.value === undefined) {
26
+ if (${x} in input) newResult[${x}] = undefined;
27
27
  } else {
28
- newResult[${b}] = ${x}.value;
28
+ newResult[${x}] = ${v}.value;
29
29
  }
30
- `)}else{let x=g[v];p.write(`const ${x} = ${f(v)};`),p.write(`
31
- if (${x}.issues.length) payload.issues = payload.issues.concat(${x}.issues.map(iss => ({
30
+ `)}else{let v=h[_];p.write(`const ${v} = ${f(_)};`),p.write(`
31
+ if (${v}.issues.length) payload.issues = payload.issues.concat(${v}.issues.map(iss => ({
32
32
  ...iss,
33
- path: iss.path ? [${qr(v)}, ...iss.path] : [${qr(v)}]
34
- })));`),p.write(`newResult[${qr(v)}] = ${x}.value`)}p.write("payload.value = newResult;"),p.write("return payload;");let y=p.compile();return(v,x)=>y(d,v,x)},o,s=yn,i=!ms.jitless,c=i&&ka.value,u=e.catchall,l;t._zod.parse=(d,p)=>{l??(l=r.value);let m=d.value;if(!s(m))return d.issues.push({expected:"object",code:"invalid_type",input:m,inst:t}),d;let f=[];if(i&&c&&p?.async===!1&&p.jitless!==!0)o||(o=n(e.shape)),d=o(d,p);else{d.value={};let x=l.shape;for(let b of l.keys){let _=x[b],z=_._zod.run({value:m[b],issues:[]},p),q=_._zod.optin==="optional"&&_._zod.optout==="optional";z instanceof Promise?f.push(z.then(j=>q?vf(j,d,b,m):bs(j,d,b))):q?vf(z,d,b,m):bs(z,d,b)}}if(!u)return f.length?Promise.all(f).then(()=>d):d;let g=[],h=l.keySet,y=u._zod,v=y.def.type;for(let x of Object.keys(m)){if(h.has(x))continue;if(v==="never"){g.push(x);continue}let b=y.run({value:m[x],issues:[]},p);b instanceof Promise?f.push(b.then(_=>bs(_,d,x))):bs(b,d,x)}return g.length&&d.issues.push({code:"unrecognized_keys",keys:g,input:m,inst:t}),f.length?Promise.all(f).then(()=>d):d}});function xf(t,e,r,n){for(let o of t)if(o.issues.length===0)return e.value=o.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(o=>o.issues.map(s=>bt(s,n,it())))}),e}var ks=$("$ZodUnion",(t,e)=>{pe.init(t,e),he(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),he(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),he(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),he(t._zod,"pattern",()=>{if(e.options.every(r=>r._zod.pattern)){let r=e.options.map(n=>n._zod.pattern);return new RegExp(`^(${r.map(n=>eo(n.source)).join("|")})$`)}}),t._zod.parse=(r,n)=>{let o=!1,s=[];for(let i of e.options){let a=i._zod.run({value:r.value,issues:[]},n);if(a instanceof Promise)s.push(a),o=!0;else{if(a.issues.length===0)return a;s.push(a)}}return o?Promise.all(s).then(i=>xf(i,r,t,n)):xf(s,r,t,n)}}),fc=$("$ZodDiscriminatedUnion",(t,e)=>{ks.init(t,e);let r=t._zod.parse;he(t._zod,"propValues",()=>{let o={};for(let s of e.options){let i=s._zod.propValues;if(!i||Object.keys(i).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(s)}"`);for(let[a,c]of Object.entries(i)){o[a]||(o[a]=new Set);for(let u of c)o[a].add(u)}}return o});let n=Xn(()=>{let o=e.options,s=new Map;for(let i of o){let a=i._zod.propValues[e.discriminator];if(!a||a.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(i)}"`);for(let c of a){if(s.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);s.set(c,i)}}return s});t._zod.parse=(o,s)=>{let i=o.value;if(!yn(i))return o.issues.push({code:"invalid_type",expected:"object",input:i,inst:t}),o;let a=n.value.get(i?.[e.discriminator]);return a?a._zod.run(o,s):e.unionFallback?r(o,s):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:i,path:[e.discriminator],inst:t}),o)}}),mc=$("$ZodIntersection",(t,e)=>{pe.init(t,e),t._zod.parse=(r,n)=>{let o=r.value,s=e.left._zod.run({value:o,issues:[]},n),i=e.right._zod.run({value:o,issues:[]},n);return s instanceof Promise||i instanceof Promise?Promise.all([s,i]).then(([c,u])=>bf(r,c,u)):bf(r,s,i)}});function La(t,e){if(t===e)return{valid:!0,data:t};if(t instanceof Date&&e instanceof Date&&+t==+e)return{valid:!0,data:t};if(_n(t)&&_n(e)){let r=Object.keys(e),n=Object.keys(t).filter(s=>r.indexOf(s)!==-1),o={...t,...e};for(let s of n){let i=La(t[s],e[s]);if(!i.valid)return{valid:!1,mergeErrorPath:[s,...i.mergeErrorPath]};o[s]=i.data}return{valid:!0,data:o}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n<t.length;n++){let o=t[n],s=e[n],i=La(o,s);if(!i.valid)return{valid:!1,mergeErrorPath:[n,...i.mergeErrorPath]};r.push(i.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function bf(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),Lr(t))return t;let n=La(e.value,r.value);if(!n.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(n.mergeErrorPath)}`);return t.value=n.data,t}var hc=$("$ZodRecord",(t,e)=>{pe.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!_n(o))return r.issues.push({expected:"record",code:"invalid_type",input:o,inst:t}),r;let s=[];if(e.keyType._zod.values){let i=e.keyType._zod.values;r.value={};for(let c of i)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){let u=e.valueType._zod.run({value:o[c],issues:[]},n);u instanceof Promise?s.push(u.then(l=>{l.issues.length&&r.issues.push(...Nt(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...Nt(c,u.issues)),r.value[c]=u.value)}let a;for(let c in o)i.has(c)||(a=a??[],a.push(c));a&&a.length>0&&r.issues.push({code:"unrecognized_keys",input:o,inst:t,keys:a})}else{r.value={};for(let i of Reflect.ownKeys(o)){if(i==="__proto__")continue;let a=e.keyType._zod.run({value:i,issues:[]},n);if(a instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(a.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:a.issues.map(u=>bt(u,n,it())),input:i,path:[i],inst:t}),r.value[a.value]=a.value;continue}let c=e.valueType._zod.run({value:o[i],issues:[]},n);c instanceof Promise?s.push(c.then(u=>{u.issues.length&&r.issues.push(...Nt(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...Nt(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}});var gc=$("$ZodEnum",(t,e)=>{pe.init(t,e);let r=Qn(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Sa.has(typeof n)).map(n=>typeof n=="string"?or(n):n.toString()).join("|")})$`),t._zod.parse=(n,o)=>{let s=n.value;return t._zod.values.has(s)||n.issues.push({code:"invalid_value",values:r,input:s,inst:t}),n}}),yc=$("$ZodLiteral",(t,e)=>{pe.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?or(r):r?r.toString():String(r)).join("|")})$`),t._zod.parse=(r,n)=>{let o=r.value;return t._zod.values.has(o)||r.issues.push({code:"invalid_value",values:e.values,input:o,inst:t}),r}});var _c=$("$ZodTransform",(t,e)=>{pe.init(t,e),t._zod.parse=(r,n)=>{let o=e.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then(i=>(r.value=i,r));if(o instanceof Promise)throw new Bt;return r.value=o,r}}),vc=$("$ZodOptional",(t,e)=>{pe.init(t,e),t._zod.optin="optional",t._zod.optout="optional",he(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),he(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${eo(r.source)})?$`):void 0}),t._zod.parse=(r,n)=>e.innerType._zod.optin==="optional"?e.innerType._zod.run(r,n):r.value===void 0?r:e.innerType._zod.run(r,n)}),xc=$("$ZodNullable",(t,e)=>{pe.init(t,e),he(t._zod,"optin",()=>e.innerType._zod.optin),he(t._zod,"optout",()=>e.innerType._zod.optout),he(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${eo(r.source)}|null)$`):void 0}),he(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(r,n)=>r.value===null?r:e.innerType._zod.run(r,n)}),bc=$("$ZodDefault",(t,e)=>{pe.init(t,e),t._zod.optin="optional",he(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=e.defaultValue,r;let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>wf(s,e)):wf(o,e)}});function wf(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var wc=$("$ZodPrefault",(t,e)=>{pe.init(t,e),t._zod.optin="optional",he(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>(r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,n))}),$c=$("$ZodNonOptional",(t,e)=>{pe.init(t,e),he(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>$f(s,t)):$f(o,t)}});function $f(t,e){return!t.issues.length&&t.value===void 0&&t.issues.push({code:"invalid_type",expected:"nonoptional",input:t.value,inst:e}),t}var kc=$("$ZodCatch",(t,e)=>{pe.init(t,e),t._zod.optin="optional",he(t._zod,"optout",()=>e.innerType._zod.optout),he(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(i=>bt(i,n,it()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>bt(s,n,it()))},input:r.value}),r.issues=[]),r)}});var Sc=$("$ZodPipe",(t,e)=>{pe.init(t,e),he(t._zod,"values",()=>e.in._zod.values),he(t._zod,"optin",()=>e.in._zod.optin),he(t._zod,"optout",()=>e.out._zod.optout),t._zod.parse=(r,n)=>{let o=e.in._zod.run(r,n);return o instanceof Promise?o.then(s=>kf(s,e,n)):kf(o,e,n)}});function kf(t,e,r){return Lr(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Tc=$("$ZodReadonly",(t,e)=>{pe.init(t,e),he(t._zod,"propValues",()=>e.innerType._zod.propValues),he(t._zod,"values",()=>e.innerType._zod.values),he(t._zod,"optin",()=>e.innerType._zod.optin),he(t._zod,"optout",()=>e.innerType._zod.optout),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(Sf):Sf(o)}});function Sf(t){return t.value=Object.freeze(t.value),t}var zc=$("$ZodCustom",(t,e)=>{Me.init(t,e),pe.init(t,e),t._zod.parse=(r,n)=>r,t._zod.check=r=>{let n=r.value,o=e.fn(n);if(o instanceof Promise)return o.then(s=>Tf(s,r,n,t));Tf(o,r,n,t)}});function Tf(t,e,r,n){if(!t){let o={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(o.params=n._zod.def.params),e.issues.push(Ea(o))}}var Sx=t=>{let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"NaN":"number";case"object":{if(Array.isArray(t))return"array";if(t===null)return"null";if(Object.getPrototypeOf(t)!==Object.prototype&&t.constructor)return t.constructor.name}}return e},Tx=()=>{let t={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"}};function e(n){return t[n]??null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"};return n=>{switch(n.code){case"invalid_type":return`Invalid input: expected ${n.expected}, received ${Sx(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${ys(n.values[0])}`:`Invalid option: expected one of ${hs(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",s=e(n.origin);return s?`Too big: expected ${n.origin??"value"} to have ${o}${n.maximum.toString()} ${s.unit??"elements"}`:`Too big: expected ${n.origin??"value"} to be ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",s=e(n.origin);return s?`Too small: expected ${n.origin} to have ${o}${n.minimum.toString()} ${s.unit}`:`Too small: expected ${n.origin} to be ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Invalid string: must start with "${o.prefix}"`:o.format==="ends_with"?`Invalid string: must end with "${o.suffix}"`:o.format==="includes"?`Invalid string: must include "${o.includes}"`:o.format==="regex"?`Invalid string: must match pattern ${o.pattern}`:`Invalid ${r[o.format]??n.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${n.divisor}`;case"unrecognized_keys":return`Unrecognized key${n.keys.length>1?"s":""}: ${hs(n.keys,", ")}`;case"invalid_key":return`Invalid key in ${n.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${n.origin}`;default:return"Invalid input"}}};function Of(){return{localeError:Tx()}}var zx=Symbol("ZodOutput"),Ex=Symbol("ZodInput"),so=class{constructor(){this._map=new Map,this._idmap=new Map}add(e,...r){let n=r[0];if(this._map.set(e,n),n&&typeof n=="object"&&"id"in n){if(this._idmap.has(n.id))throw new Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,e)}return this}clear(){return this._map=new Map,this._idmap=new Map,this}remove(e){let r=this._map.get(e);return r&&typeof r=="object"&&"id"in r&&this._idmap.delete(r.id),this._map.delete(e),this}get(e){let r=e._zod.parent;if(r){let n={...this.get(r)??{}};return delete n.id,{...n,...this._map.get(e)}}return this._map.get(e)}has(e){return this._map.has(e)}};function Mf(){return new so}var sr=Mf();function Ec(t,e){return new t({type:"string",...V(e)})}function Pc(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...V(e)})}function Ss(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...V(e)})}function Rc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...V(e)})}function Ic(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...V(e)})}function Oc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...V(e)})}function Mc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...V(e)})}function Ac(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...V(e)})}function Cc(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...V(e)})}function Nc(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...V(e)})}function jc(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...V(e)})}function Zc(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...V(e)})}function Dc(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...V(e)})}function qc(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...V(e)})}function Lc(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...V(e)})}function Fc(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...V(e)})}function Uc(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...V(e)})}function Vc(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...V(e)})}function Hc(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...V(e)})}function Gc(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...V(e)})}function Wc(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...V(e)})}function Bc(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...V(e)})}function Kc(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...V(e)})}function Af(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...V(e)})}function Cf(t,e){return new t({type:"string",format:"date",check:"string_format",...V(e)})}function Nf(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...V(e)})}function jf(t,e){return new t({type:"string",format:"duration",check:"string_format",...V(e)})}function Jc(t,e){return new t({type:"number",checks:[],...V(e)})}function Qc(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...V(e)})}function Xc(t,e){return new t({type:"boolean",...V(e)})}function Yc(t,e){return new t({type:"null",...V(e)})}function eu(t){return new t({type:"unknown"})}function tu(t,e){return new t({type:"never",...V(e)})}function Ts(t,e){return new Da({check:"less_than",...V(e),value:t,inclusive:!1})}function io(t,e){return new Da({check:"less_than",...V(e),value:t,inclusive:!0})}function zs(t,e){return new qa({check:"greater_than",...V(e),value:t,inclusive:!1})}function ao(t,e){return new qa({check:"greater_than",...V(e),value:t,inclusive:!0})}function Es(t,e){return new nf({check:"multiple_of",...V(e),value:t})}function Ps(t,e){return new sf({check:"max_length",...V(e),maximum:t})}function vn(t,e){return new af({check:"min_length",...V(e),minimum:t})}function Rs(t,e){return new cf({check:"length_equals",...V(e),length:t})}function ru(t,e){return new uf({check:"string_format",format:"regex",...V(e),pattern:t})}function nu(t){return new lf({check:"string_format",format:"lowercase",...V(t)})}function ou(t){return new df({check:"string_format",format:"uppercase",...V(t)})}function su(t,e){return new pf({check:"string_format",format:"includes",...V(e),includes:t})}function iu(t,e){return new ff({check:"string_format",format:"starts_with",...V(e),prefix:t})}function au(t,e){return new mf({check:"string_format",format:"ends_with",...V(e),suffix:t})}function Vr(t){return new hf({check:"overwrite",tx:t})}function cu(t){return Vr(e=>e.normalize(t))}function uu(){return Vr(t=>t.trim())}function lu(){return Vr(t=>t.toLowerCase())}function du(){return Vr(t=>t.toUpperCase())}function Zf(t,e,r){return new t({type:"array",element:e,...V(r)})}function pu(t,e,r){let n=V(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function fu(t,e,r){return new t({type:"custom",check:"custom",fn:e,...V(r)})}var Is=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??sr,this.target=e?.target??"draft-2020-12",this.unrepresentable=e?.unrepresentable??"throw",this.override=e?.override??(()=>{}),this.io=e?.io??"output",this.seen=new Map}process(e,r={path:[],schemaPath:[]}){var n;let o=e._zod.def,s={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},i=this.seen.get(e);if(i)return i.count++,r.schemaPath.includes(e)&&(i.cycle=r.path),i.schema;let a={schema:{},count:1,cycle:void 0,path:r.path};this.seen.set(e,a);let c=e._zod.toJSONSchema?.();if(c)a.schema=c;else{let d={...r,schemaPath:[...r.schemaPath,e],path:r.path},p=e._zod.parent;if(p)a.ref=p,this.process(p,d),this.seen.get(p).isParent=!0;else{let m=a.schema;switch(o.type){case"string":{let f=m;f.type="string";let{minimum:g,maximum:h,format:y,patterns:v,contentEncoding:x}=e._zod.bag;if(typeof g=="number"&&(f.minLength=g),typeof h=="number"&&(f.maxLength=h),y&&(f.format=s[y]??y,f.format===""&&delete f.format),x&&(f.contentEncoding=x),v&&v.size>0){let b=[...v];b.length===1?f.pattern=b[0].source:b.length>1&&(a.schema.allOf=[...b.map(_=>({...this.target==="draft-7"?{type:"string"}:{},pattern:_.source}))])}break}case"number":{let f=m,{minimum:g,maximum:h,format:y,multipleOf:v,exclusiveMaximum:x,exclusiveMinimum:b}=e._zod.bag;typeof y=="string"&&y.includes("int")?f.type="integer":f.type="number",typeof b=="number"&&(f.exclusiveMinimum=b),typeof g=="number"&&(f.minimum=g,typeof b=="number"&&(b>=g?delete f.minimum:delete f.exclusiveMinimum)),typeof x=="number"&&(f.exclusiveMaximum=x),typeof h=="number"&&(f.maximum=h,typeof x=="number"&&(x<=h?delete f.maximum:delete f.exclusiveMaximum)),typeof v=="number"&&(f.multipleOf=v);break}case"boolean":{let f=m;f.type="boolean";break}case"bigint":{if(this.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema");break}case"symbol":{if(this.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema");break}case"null":{m.type="null";break}case"any":break;case"unknown":break;case"undefined":{if(this.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema");break}case"void":{if(this.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema");break}case"never":{m.not={};break}case"date":{if(this.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema");break}case"array":{let f=m,{minimum:g,maximum:h}=e._zod.bag;typeof g=="number"&&(f.minItems=g),typeof h=="number"&&(f.maxItems=h),f.type="array",f.items=this.process(o.element,{...d,path:[...d.path,"items"]});break}case"object":{let f=m;f.type="object",f.properties={};let g=o.shape;for(let v in g)f.properties[v]=this.process(g[v],{...d,path:[...d.path,"properties",v]});let h=new Set(Object.keys(g)),y=new Set([...h].filter(v=>{let x=o.shape[v]._zod;return this.io==="input"?x.optin===void 0:x.optout===void 0}));y.size>0&&(f.required=Array.from(y)),o.catchall?._zod.def.type==="never"?f.additionalProperties=!1:o.catchall?o.catchall&&(f.additionalProperties=this.process(o.catchall,{...d,path:[...d.path,"additionalProperties"]})):this.io==="output"&&(f.additionalProperties=!1);break}case"union":{let f=m;f.anyOf=o.options.map((g,h)=>this.process(g,{...d,path:[...d.path,"anyOf",h]}));break}case"intersection":{let f=m,g=this.process(o.left,{...d,path:[...d.path,"allOf",0]}),h=this.process(o.right,{...d,path:[...d.path,"allOf",1]}),y=x=>"allOf"in x&&Object.keys(x).length===1,v=[...y(g)?g.allOf:[g],...y(h)?h.allOf:[h]];f.allOf=v;break}case"tuple":{let f=m;f.type="array";let g=o.items.map((v,x)=>this.process(v,{...d,path:[...d.path,"prefixItems",x]}));if(this.target==="draft-2020-12"?f.prefixItems=g:f.items=g,o.rest){let v=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?f.items=v:f.additionalItems=v}o.rest&&(f.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:h,maximum:y}=e._zod.bag;typeof h=="number"&&(f.minItems=h),typeof y=="number"&&(f.maxItems=y);break}case"record":{let f=m;f.type="object",f.propertyNames=this.process(o.keyType,{...d,path:[...d.path,"propertyNames"]}),f.additionalProperties=this.process(o.valueType,{...d,path:[...d.path,"additionalProperties"]});break}case"map":{if(this.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema");break}case"set":{if(this.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema");break}case"enum":{let f=m,g=Qn(o.entries);g.every(h=>typeof h=="number")&&(f.type="number"),g.every(h=>typeof h=="string")&&(f.type="string"),f.enum=g;break}case"literal":{let f=m,g=[];for(let h of o.values)if(h===void 0){if(this.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof h=="bigint"){if(this.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");g.push(Number(h))}else g.push(h);if(g.length!==0)if(g.length===1){let h=g[0];f.type=h===null?"null":typeof h,f.const=h}else g.every(h=>typeof h=="number")&&(f.type="number"),g.every(h=>typeof h=="string")&&(f.type="string"),g.every(h=>typeof h=="boolean")&&(f.type="string"),g.every(h=>h===null)&&(f.type="null"),f.enum=g;break}case"file":{let f=m,g={type:"string",format:"binary",contentEncoding:"binary"},{minimum:h,maximum:y,mime:v}=e._zod.bag;h!==void 0&&(g.minLength=h),y!==void 0&&(g.maxLength=y),v?v.length===1?(g.contentMediaType=v[0],Object.assign(f,g)):f.anyOf=v.map(x=>({...g,contentMediaType:x})):Object.assign(f,g);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let f=this.process(o.innerType,d);m.anyOf=[f,{type:"null"}];break}case"nonoptional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"success":{let f=m;f.type="boolean";break}case"default":{this.process(o.innerType,d),a.ref=o.innerType,m.default=JSON.parse(JSON.stringify(o.defaultValue));break}case"prefault":{this.process(o.innerType,d),a.ref=o.innerType,this.io==="input"&&(m._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break}case"catch":{this.process(o.innerType,d),a.ref=o.innerType;let f;try{f=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}m.default=f;break}case"nan":{if(this.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{let f=m,g=e._zod.pattern;if(!g)throw new Error("Pattern not found in template literal");f.type="string",f.pattern=g.source;break}case"pipe":{let f=this.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;this.process(f,d),a.ref=f;break}case"readonly":{this.process(o.innerType,d),a.ref=o.innerType,m.readOnly=!0;break}case"promise":{this.process(o.innerType,d),a.ref=o.innerType;break}case"optional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"lazy":{let f=e._zod.innerType;this.process(f,d),a.ref=f;break}case"custom":{if(this.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema");break}default:}}}let u=this.metadataRegistry.get(e);return u&&Object.assign(a.schema,u),this.io==="input"&&Pe(e)&&(delete a.schema.examples,delete a.schema.default),this.io==="input"&&a.schema._prefault&&((n=a.schema).default??(n.default=a.schema._prefault)),delete a.schema._prefault,this.seen.get(e).schema}emit(e,r){let n={cycles:r?.cycles??"ref",reused:r?.reused??"inline",external:r?.external??void 0},o=this.seen.get(e);if(!o)throw new Error("Unprocessed schema. This is a bug in Zod.");let s=l=>{let d=this.target==="draft-2020-12"?"$defs":"definitions";if(n.external){let g=n.external.registry.get(l[0])?.id,h=n.external.uri??(v=>v);if(g)return{ref:h(g)};let y=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=y,{defId:y,ref:`${h("__shared")}#/${d}/${y}`}}if(l[1]===o)return{ref:"#"};let m=`#/${d}/`,f=l[1].schema.id??`__schema${this.counter++}`;return{defId:f,ref:m+f}},i=l=>{if(l[1].schema.$ref)return;let d=l[1],{ref:p,defId:m}=s(l);d.def={...d.schema},m&&(d.defId=m);let f=d.schema;for(let g in f)delete f[g];f.$ref=p};if(n.cycles==="throw")for(let l of this.seen.entries()){let d=l[1];if(d.cycle)throw new Error(`Cycle detected: #/${d.cycle?.join("/")}/<root>
33
+ path: iss.path ? [${Jr(_)}, ...iss.path] : [${Jr(_)}]
34
+ })));`),p.write(`newResult[${Jr(_)}] = ${v}.value`)}p.write("payload.value = newResult;"),p.write("return payload;");let y=p.compile();return(_,v)=>y(d,_,v)},o,s=zn,i=!ks.jitless,c=i&&Aa.value,u=e.catchall,l;t._zod.parse=(d,p)=>{l??(l=r.value);let m=d.value;if(!s(m))return d.issues.push({expected:"object",code:"invalid_type",input:m,inst:t}),d;let f=[];if(i&&c&&p?.async===!1&&p.jitless!==!0)o||(o=n(e.shape)),d=o(d,p);else{d.value={};let v=l.shape;for(let x of l.keys){let k=v[x],L=k._zod.run({value:m[x],issues:[]},p),G=k._zod.optin==="optional"&&k._zod.optout==="optional";L instanceof Promise?f.push(L.then(b=>G?Rf(b,d,x,m):Is(b,d,x))):G?Rf(L,d,x,m):Is(L,d,x)}}if(!u)return f.length?Promise.all(f).then(()=>d):d;let h=[],g=l.keySet,y=u._zod,_=y.def.type;for(let v of Object.keys(m)){if(g.has(v))continue;if(_==="never"){h.push(v);continue}let x=y.run({value:m[v],issues:[]},p);x instanceof Promise?f.push(x.then(k=>Is(k,d,v))):Is(x,d,v)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:m,inst:t}),f.length?Promise.all(f).then(()=>d):d}});function If(t,e,r,n){for(let o of t)if(o.issues.length===0)return e.value=o.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(o=>o.issues.map(s=>Pt(s,n,pt())))}),e}var As=$("$ZodUnion",(t,e)=>{pe.init(t,e),ge(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),ge(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),ge(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),ge(t._zod,"pattern",()=>{if(e.options.every(r=>r._zod.pattern)){let r=e.options.map(n=>n._zod.pattern);return new RegExp(`^(${r.map(n=>po(n.source)).join("|")})$`)}}),t._zod.parse=(r,n)=>{let o=!1,s=[];for(let i of e.options){let a=i._zod.run({value:r.value,issues:[]},n);if(a instanceof Promise)s.push(a),o=!0;else{if(a.issues.length===0)return a;s.push(a)}}return o?Promise.all(s).then(i=>If(i,r,t,n)):If(s,r,t,n)}}),$c=$("$ZodDiscriminatedUnion",(t,e)=>{As.init(t,e);let r=t._zod.parse;ge(t._zod,"propValues",()=>{let o={};for(let s of e.options){let i=s._zod.propValues;if(!i||Object.keys(i).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(s)}"`);for(let[a,c]of Object.entries(i)){o[a]||(o[a]=new Set);for(let u of c)o[a].add(u)}}return o});let n=uo(()=>{let o=e.options,s=new Map;for(let i of o){let a=i._zod.propValues[e.discriminator];if(!a||a.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(i)}"`);for(let c of a){if(s.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);s.set(c,i)}}return s});t._zod.parse=(o,s)=>{let i=o.value;if(!zn(i))return o.issues.push({code:"invalid_type",expected:"object",input:i,inst:t}),o;let a=n.value.get(i?.[e.discriminator]);return a?a._zod.run(o,s):e.unionFallback?r(o,s):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:i,path:[e.discriminator],inst:t}),o)}}),kc=$("$ZodIntersection",(t,e)=>{pe.init(t,e),t._zod.parse=(r,n)=>{let o=r.value,s=e.left._zod.run({value:o,issues:[]},n),i=e.right._zod.run({value:o,issues:[]},n);return s instanceof Promise||i instanceof Promise?Promise.all([s,i]).then(([c,u])=>Of(r,c,u)):Of(r,s,i)}});function Qa(t,e){if(t===e)return{valid:!0,data:t};if(t instanceof Date&&e instanceof Date&&+t==+e)return{valid:!0,data:t};if(En(t)&&En(e)){let r=Object.keys(e),n=Object.keys(t).filter(s=>r.indexOf(s)!==-1),o={...t,...e};for(let s of n){let i=Qa(t[s],e[s]);if(!i.valid)return{valid:!1,mergeErrorPath:[s,...i.mergeErrorPath]};o[s]=i.data}return{valid:!0,data:o}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n<t.length;n++){let o=t[n],s=e[n],i=Qa(o,s);if(!i.valid)return{valid:!1,mergeErrorPath:[n,...i.mergeErrorPath]};r.push(i.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function Of(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),Qr(t))return t;let n=Qa(e.value,r.value);if(!n.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(n.mergeErrorPath)}`);return t.value=n.data,t}var Sc=$("$ZodRecord",(t,e)=>{pe.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!En(o))return r.issues.push({expected:"record",code:"invalid_type",input:o,inst:t}),r;let s=[];if(e.keyType._zod.values){let i=e.keyType._zod.values;r.value={};for(let c of i)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){let u=e.valueType._zod.run({value:o[c],issues:[]},n);u instanceof Promise?s.push(u.then(l=>{l.issues.length&&r.issues.push(...Wt(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...Wt(c,u.issues)),r.value[c]=u.value)}let a;for(let c in o)i.has(c)||(a=a??[],a.push(c));a&&a.length>0&&r.issues.push({code:"unrecognized_keys",input:o,inst:t,keys:a})}else{r.value={};for(let i of Reflect.ownKeys(o)){if(i==="__proto__")continue;let a=e.keyType._zod.run({value:i,issues:[]},n);if(a instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(a.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:a.issues.map(u=>Pt(u,n,pt())),input:i,path:[i],inst:t}),r.value[a.value]=a.value;continue}let c=e.valueType._zod.run({value:o[i],issues:[]},n);c instanceof Promise?s.push(c.then(u=>{u.issues.length&&r.issues.push(...Wt(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...Wt(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}});var Tc=$("$ZodEnum",(t,e)=>{pe.init(t,e);let r=co(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Ca.has(typeof n)).map(n=>typeof n=="string"?hr(n):n.toString()).join("|")})$`),t._zod.parse=(n,o)=>{let s=n.value;return t._zod.values.has(s)||n.issues.push({code:"invalid_value",values:r,input:s,inst:t}),n}}),zc=$("$ZodLiteral",(t,e)=>{pe.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?hr(r):r?r.toString():String(r)).join("|")})$`),t._zod.parse=(r,n)=>{let o=r.value;return t._zod.values.has(o)||r.issues.push({code:"invalid_value",values:e.values,input:o,inst:t}),r}});var Ec=$("$ZodTransform",(t,e)=>{pe.init(t,e),t._zod.parse=(r,n)=>{let o=e.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then(i=>(r.value=i,r));if(o instanceof Promise)throw new or;return r.value=o,r}}),Pc=$("$ZodOptional",(t,e)=>{pe.init(t,e),t._zod.optin="optional",t._zod.optout="optional",ge(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),ge(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${po(r.source)})?$`):void 0}),t._zod.parse=(r,n)=>e.innerType._zod.optin==="optional"?e.innerType._zod.run(r,n):r.value===void 0?r:e.innerType._zod.run(r,n)}),Rc=$("$ZodNullable",(t,e)=>{pe.init(t,e),ge(t._zod,"optin",()=>e.innerType._zod.optin),ge(t._zod,"optout",()=>e.innerType._zod.optout),ge(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${po(r.source)}|null)$`):void 0}),ge(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(r,n)=>r.value===null?r:e.innerType._zod.run(r,n)}),Ic=$("$ZodDefault",(t,e)=>{pe.init(t,e),t._zod.optin="optional",ge(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=e.defaultValue,r;let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>Mf(s,e)):Mf(o,e)}});function Mf(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Oc=$("$ZodPrefault",(t,e)=>{pe.init(t,e),t._zod.optin="optional",ge(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>(r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,n))}),Mc=$("$ZodNonOptional",(t,e)=>{pe.init(t,e),ge(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>Af(s,t)):Af(o,t)}});function Af(t,e){return!t.issues.length&&t.value===void 0&&t.issues.push({code:"invalid_type",expected:"nonoptional",input:t.value,inst:e}),t}var Ac=$("$ZodCatch",(t,e)=>{pe.init(t,e),t._zod.optin="optional",ge(t._zod,"optout",()=>e.innerType._zod.optout),ge(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(i=>Pt(i,n,pt()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>Pt(s,n,pt()))},input:r.value}),r.issues=[]),r)}});var Cc=$("$ZodPipe",(t,e)=>{pe.init(t,e),ge(t._zod,"values",()=>e.in._zod.values),ge(t._zod,"optin",()=>e.in._zod.optin),ge(t._zod,"optout",()=>e.out._zod.optout),t._zod.parse=(r,n)=>{let o=e.in._zod.run(r,n);return o instanceof Promise?o.then(s=>Cf(s,e,n)):Cf(o,e,n)}});function Cf(t,e,r){return Qr(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Nc=$("$ZodReadonly",(t,e)=>{pe.init(t,e),ge(t._zod,"propValues",()=>e.innerType._zod.propValues),ge(t._zod,"values",()=>e.innerType._zod.values),ge(t._zod,"optin",()=>e.innerType._zod.optin),ge(t._zod,"optout",()=>e.innerType._zod.optout),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(Nf):Nf(o)}});function Nf(t){return t.value=Object.freeze(t.value),t}var jc=$("$ZodCustom",(t,e)=>{Ze.init(t,e),pe.init(t,e),t._zod.parse=(r,n)=>r,t._zod.check=r=>{let n=r.value,o=e.fn(n);if(o instanceof Promise)return o.then(s=>jf(s,r,n,t));jf(o,r,n,t)}});function jf(t,e,r,n){if(!t){let o={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(o.params=n._zod.def.params),e.issues.push(Za(o))}}var Nx=t=>{let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"NaN":"number";case"object":{if(Array.isArray(t))return"array";if(t===null)return"null";if(Object.getPrototypeOf(t)!==Object.prototype&&t.constructor)return t.constructor.name}}return e},jx=()=>{let t={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"}};function e(n){return t[n]??null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"};return n=>{switch(n.code){case"invalid_type":return`Invalid input: expected ${n.expected}, received ${Nx(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${zs(n.values[0])}`:`Invalid option: expected one of ${Ss(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",s=e(n.origin);return s?`Too big: expected ${n.origin??"value"} to have ${o}${n.maximum.toString()} ${s.unit??"elements"}`:`Too big: expected ${n.origin??"value"} to be ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",s=e(n.origin);return s?`Too small: expected ${n.origin} to have ${o}${n.minimum.toString()} ${s.unit}`:`Too small: expected ${n.origin} to be ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Invalid string: must start with "${o.prefix}"`:o.format==="ends_with"?`Invalid string: must end with "${o.suffix}"`:o.format==="includes"?`Invalid string: must include "${o.includes}"`:o.format==="regex"?`Invalid string: must match pattern ${o.pattern}`:`Invalid ${r[o.format]??n.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${n.divisor}`;case"unrecognized_keys":return`Unrecognized key${n.keys.length>1?"s":""}: ${Ss(n.keys,", ")}`;case"invalid_key":return`Invalid key in ${n.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${n.origin}`;default:return"Invalid input"}}};function Uf(){return{localeError:jx()}}var Zx=Symbol("ZodOutput"),Dx=Symbol("ZodInput"),yo=class{constructor(){this._map=new Map,this._idmap=new Map}add(e,...r){let n=r[0];if(this._map.set(e,n),n&&typeof n=="object"&&"id"in n){if(this._idmap.has(n.id))throw new Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,e)}return this}clear(){return this._map=new Map,this._idmap=new Map,this}remove(e){let r=this._map.get(e);return r&&typeof r=="object"&&"id"in r&&this._idmap.delete(r.id),this._map.delete(e),this}get(e){let r=e._zod.parent;if(r){let n={...this.get(r)??{}};return delete n.id,{...n,...this._map.get(e)}}return this._map.get(e)}has(e){return this._map.has(e)}};function Vf(){return new yo}var gr=Vf();function Zc(t,e){return new t({type:"string",...U(e)})}function Dc(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...U(e)})}function Cs(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...U(e)})}function qc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...U(e)})}function Lc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...U(e)})}function Fc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...U(e)})}function Uc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...U(e)})}function Vc(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...U(e)})}function Hc(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...U(e)})}function Wc(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...U(e)})}function Gc(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...U(e)})}function Bc(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...U(e)})}function Kc(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...U(e)})}function Jc(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...U(e)})}function Qc(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...U(e)})}function Xc(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...U(e)})}function Yc(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...U(e)})}function eu(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...U(e)})}function tu(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...U(e)})}function ru(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...U(e)})}function nu(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...U(e)})}function ou(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...U(e)})}function su(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...U(e)})}function Hf(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...U(e)})}function Wf(t,e){return new t({type:"string",format:"date",check:"string_format",...U(e)})}function Gf(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...U(e)})}function Bf(t,e){return new t({type:"string",format:"duration",check:"string_format",...U(e)})}function iu(t,e){return new t({type:"number",checks:[],...U(e)})}function au(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...U(e)})}function cu(t,e){return new t({type:"boolean",...U(e)})}function uu(t,e){return new t({type:"null",...U(e)})}function lu(t){return new t({type:"unknown"})}function du(t,e){return new t({type:"never",...U(e)})}function Ns(t,e){return new Ka({check:"less_than",...U(e),value:t,inclusive:!1})}function _o(t,e){return new Ka({check:"less_than",...U(e),value:t,inclusive:!0})}function js(t,e){return new Ja({check:"greater_than",...U(e),value:t,inclusive:!1})}function vo(t,e){return new Ja({check:"greater_than",...U(e),value:t,inclusive:!0})}function Zs(t,e){return new hf({check:"multiple_of",...U(e),value:t})}function Ds(t,e){return new yf({check:"max_length",...U(e),maximum:t})}function Pn(t,e){return new _f({check:"min_length",...U(e),minimum:t})}function qs(t,e){return new vf({check:"length_equals",...U(e),length:t})}function pu(t,e){return new xf({check:"string_format",format:"regex",...U(e),pattern:t})}function fu(t){return new bf({check:"string_format",format:"lowercase",...U(t)})}function mu(t){return new wf({check:"string_format",format:"uppercase",...U(t)})}function hu(t,e){return new $f({check:"string_format",format:"includes",...U(e),includes:t})}function gu(t,e){return new kf({check:"string_format",format:"starts_with",...U(e),prefix:t})}function yu(t,e){return new Sf({check:"string_format",format:"ends_with",...U(e),suffix:t})}function en(t){return new Tf({check:"overwrite",tx:t})}function _u(t){return en(e=>e.normalize(t))}function vu(){return en(t=>t.trim())}function xu(){return en(t=>t.toLowerCase())}function bu(){return en(t=>t.toUpperCase())}function Kf(t,e,r){return new t({type:"array",element:e,...U(r)})}function wu(t,e,r){let n=U(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function $u(t,e,r){return new t({type:"custom",check:"custom",fn:e,...U(r)})}var Ls=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??gr,this.target=e?.target??"draft-2020-12",this.unrepresentable=e?.unrepresentable??"throw",this.override=e?.override??(()=>{}),this.io=e?.io??"output",this.seen=new Map}process(e,r={path:[],schemaPath:[]}){var n;let o=e._zod.def,s={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},i=this.seen.get(e);if(i)return i.count++,r.schemaPath.includes(e)&&(i.cycle=r.path),i.schema;let a={schema:{},count:1,cycle:void 0,path:r.path};this.seen.set(e,a);let c=e._zod.toJSONSchema?.();if(c)a.schema=c;else{let d={...r,schemaPath:[...r.schemaPath,e],path:r.path},p=e._zod.parent;if(p)a.ref=p,this.process(p,d),this.seen.get(p).isParent=!0;else{let m=a.schema;switch(o.type){case"string":{let f=m;f.type="string";let{minimum:h,maximum:g,format:y,patterns:_,contentEncoding:v}=e._zod.bag;if(typeof h=="number"&&(f.minLength=h),typeof g=="number"&&(f.maxLength=g),y&&(f.format=s[y]??y,f.format===""&&delete f.format),v&&(f.contentEncoding=v),_&&_.size>0){let x=[..._];x.length===1?f.pattern=x[0].source:x.length>1&&(a.schema.allOf=[...x.map(k=>({...this.target==="draft-7"?{type:"string"}:{},pattern:k.source}))])}break}case"number":{let f=m,{minimum:h,maximum:g,format:y,multipleOf:_,exclusiveMaximum:v,exclusiveMinimum:x}=e._zod.bag;typeof y=="string"&&y.includes("int")?f.type="integer":f.type="number",typeof x=="number"&&(f.exclusiveMinimum=x),typeof h=="number"&&(f.minimum=h,typeof x=="number"&&(x>=h?delete f.minimum:delete f.exclusiveMinimum)),typeof v=="number"&&(f.exclusiveMaximum=v),typeof g=="number"&&(f.maximum=g,typeof v=="number"&&(v<=g?delete f.maximum:delete f.exclusiveMaximum)),typeof _=="number"&&(f.multipleOf=_);break}case"boolean":{let f=m;f.type="boolean";break}case"bigint":{if(this.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema");break}case"symbol":{if(this.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema");break}case"null":{m.type="null";break}case"any":break;case"unknown":break;case"undefined":{if(this.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema");break}case"void":{if(this.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema");break}case"never":{m.not={};break}case"date":{if(this.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema");break}case"array":{let f=m,{minimum:h,maximum:g}=e._zod.bag;typeof h=="number"&&(f.minItems=h),typeof g=="number"&&(f.maxItems=g),f.type="array",f.items=this.process(o.element,{...d,path:[...d.path,"items"]});break}case"object":{let f=m;f.type="object",f.properties={};let h=o.shape;for(let _ in h)f.properties[_]=this.process(h[_],{...d,path:[...d.path,"properties",_]});let g=new Set(Object.keys(h)),y=new Set([...g].filter(_=>{let v=o.shape[_]._zod;return this.io==="input"?v.optin===void 0:v.optout===void 0}));y.size>0&&(f.required=Array.from(y)),o.catchall?._zod.def.type==="never"?f.additionalProperties=!1:o.catchall?o.catchall&&(f.additionalProperties=this.process(o.catchall,{...d,path:[...d.path,"additionalProperties"]})):this.io==="output"&&(f.additionalProperties=!1);break}case"union":{let f=m;f.anyOf=o.options.map((h,g)=>this.process(h,{...d,path:[...d.path,"anyOf",g]}));break}case"intersection":{let f=m,h=this.process(o.left,{...d,path:[...d.path,"allOf",0]}),g=this.process(o.right,{...d,path:[...d.path,"allOf",1]}),y=v=>"allOf"in v&&Object.keys(v).length===1,_=[...y(h)?h.allOf:[h],...y(g)?g.allOf:[g]];f.allOf=_;break}case"tuple":{let f=m;f.type="array";let h=o.items.map((_,v)=>this.process(_,{...d,path:[...d.path,"prefixItems",v]}));if(this.target==="draft-2020-12"?f.prefixItems=h:f.items=h,o.rest){let _=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?f.items=_:f.additionalItems=_}o.rest&&(f.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:y}=e._zod.bag;typeof g=="number"&&(f.minItems=g),typeof y=="number"&&(f.maxItems=y);break}case"record":{let f=m;f.type="object",f.propertyNames=this.process(o.keyType,{...d,path:[...d.path,"propertyNames"]}),f.additionalProperties=this.process(o.valueType,{...d,path:[...d.path,"additionalProperties"]});break}case"map":{if(this.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema");break}case"set":{if(this.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema");break}case"enum":{let f=m,h=co(o.entries);h.every(g=>typeof g=="number")&&(f.type="number"),h.every(g=>typeof g=="string")&&(f.type="string"),f.enum=h;break}case"literal":{let f=m,h=[];for(let g of o.values)if(g===void 0){if(this.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof g=="bigint"){if(this.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");h.push(Number(g))}else h.push(g);if(h.length!==0)if(h.length===1){let g=h[0];f.type=g===null?"null":typeof g,f.const=g}else h.every(g=>typeof g=="number")&&(f.type="number"),h.every(g=>typeof g=="string")&&(f.type="string"),h.every(g=>typeof g=="boolean")&&(f.type="string"),h.every(g=>g===null)&&(f.type="null"),f.enum=h;break}case"file":{let f=m,h={type:"string",format:"binary",contentEncoding:"binary"},{minimum:g,maximum:y,mime:_}=e._zod.bag;g!==void 0&&(h.minLength=g),y!==void 0&&(h.maxLength=y),_?_.length===1?(h.contentMediaType=_[0],Object.assign(f,h)):f.anyOf=_.map(v=>({...h,contentMediaType:v})):Object.assign(f,h);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let f=this.process(o.innerType,d);m.anyOf=[f,{type:"null"}];break}case"nonoptional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"success":{let f=m;f.type="boolean";break}case"default":{this.process(o.innerType,d),a.ref=o.innerType,m.default=JSON.parse(JSON.stringify(o.defaultValue));break}case"prefault":{this.process(o.innerType,d),a.ref=o.innerType,this.io==="input"&&(m._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break}case"catch":{this.process(o.innerType,d),a.ref=o.innerType;let f;try{f=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}m.default=f;break}case"nan":{if(this.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{let f=m,h=e._zod.pattern;if(!h)throw new Error("Pattern not found in template literal");f.type="string",f.pattern=h.source;break}case"pipe":{let f=this.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;this.process(f,d),a.ref=f;break}case"readonly":{this.process(o.innerType,d),a.ref=o.innerType,m.readOnly=!0;break}case"promise":{this.process(o.innerType,d),a.ref=o.innerType;break}case"optional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"lazy":{let f=e._zod.innerType;this.process(f,d),a.ref=f;break}case"custom":{if(this.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema");break}default:}}}let u=this.metadataRegistry.get(e);return u&&Object.assign(a.schema,u),this.io==="input"&&Ae(e)&&(delete a.schema.examples,delete a.schema.default),this.io==="input"&&a.schema._prefault&&((n=a.schema).default??(n.default=a.schema._prefault)),delete a.schema._prefault,this.seen.get(e).schema}emit(e,r){let n={cycles:r?.cycles??"ref",reused:r?.reused??"inline",external:r?.external??void 0},o=this.seen.get(e);if(!o)throw new Error("Unprocessed schema. This is a bug in Zod.");let s=l=>{let d=this.target==="draft-2020-12"?"$defs":"definitions";if(n.external){let h=n.external.registry.get(l[0])?.id,g=n.external.uri??(_=>_);if(h)return{ref:g(h)};let y=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=y,{defId:y,ref:`${g("__shared")}#/${d}/${y}`}}if(l[1]===o)return{ref:"#"};let m=`#/${d}/`,f=l[1].schema.id??`__schema${this.counter++}`;return{defId:f,ref:m+f}},i=l=>{if(l[1].schema.$ref)return;let d=l[1],{ref:p,defId:m}=s(l);d.def={...d.schema},m&&(d.defId=m);let f=d.schema;for(let h in f)delete f[h];f.$ref=p};if(n.cycles==="throw")for(let l of this.seen.entries()){let d=l[1];if(d.cycle)throw new Error(`Cycle detected: #/${d.cycle?.join("/")}/<root>
35
35
 
36
- Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let l of this.seen.entries()){let d=l[1];if(e===l[0]){i(l);continue}if(n.external){let m=n.external.registry.get(l[0])?.id;if(e!==l[0]&&m){i(l);continue}}if(this.metadataRegistry.get(l[0])?.id){i(l);continue}if(d.cycle){i(l);continue}if(d.count>1&&n.reused==="ref"){i(l);continue}}let a=(l,d)=>{let p=this.seen.get(l),m=p.def??p.schema,f={...m};if(p.ref===null)return;let g=p.ref;if(p.ref=null,g){a(g,d);let h=this.seen.get(g).schema;h.$ref&&d.target==="draft-7"?(m.allOf=m.allOf??[],m.allOf.push(h)):(Object.assign(m,h),Object.assign(m,f))}p.isParent||this.override({zodSchema:l,jsonSchema:m,path:p.path??[]})};for(let l of[...this.seen.entries()].reverse())a(l[0],{target:this.target});let c={};if(this.target==="draft-2020-12"?c.$schema="https://json-schema.org/draft/2020-12/schema":this.target==="draft-7"?c.$schema="http://json-schema.org/draft-07/schema#":console.warn(`Invalid target: ${this.target}`),n.external?.uri){let l=n.external.registry.get(e)?.id;if(!l)throw new Error("Schema is missing an `id` property");c.$id=n.external.uri(l)}Object.assign(c,o.def);let u=n.external?.defs??{};for(let l of this.seen.entries()){let d=l[1];d.def&&d.defId&&(u[d.defId]=d.def)}n.external||Object.keys(u).length>0&&(this.target==="draft-2020-12"?c.$defs=u:c.definitions=u);try{return JSON.parse(JSON.stringify(c))}catch{throw new Error("Error converting schema to JSON.")}}};function mu(t,e){if(t instanceof so){let n=new Is(e),o={};for(let a of t._idmap.entries()){let[c,u]=a;n.process(u)}let s={},i={registry:t,uri:e?.uri,defs:o};for(let a of t._idmap.entries()){let[c,u]=a;s[c]=n.emit(u,{...e,external:i})}if(Object.keys(o).length>0){let a=n.target==="draft-2020-12"?"$defs":"definitions";s.__shared={[a]:o}}return{schemas:s}}let r=new Is(e);return r.process(t),r.emit(t,e)}function Pe(t,e){let r=e??{seen:new Set};if(r.seen.has(t))return!1;r.seen.add(t);let o=t._zod.def;switch(o.type){case"string":case"number":case"bigint":case"boolean":case"date":case"symbol":case"undefined":case"null":case"any":case"unknown":case"never":case"void":case"literal":case"enum":case"nan":case"file":case"template_literal":return!1;case"array":return Pe(o.element,r);case"object":{for(let s in o.shape)if(Pe(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(Pe(s,r))return!0;return!1}case"intersection":return Pe(o.left,r)||Pe(o.right,r);case"tuple":{for(let s of o.items)if(Pe(s,r))return!0;return!!(o.rest&&Pe(o.rest,r))}case"record":return Pe(o.keyType,r)||Pe(o.valueType,r);case"map":return Pe(o.keyType,r)||Pe(o.valueType,r);case"set":return Pe(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return Pe(o.innerType,r);case"lazy":return Pe(o.getter(),r);case"default":return Pe(o.innerType,r);case"prefault":return Pe(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return Pe(o.in,r)||Pe(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var ub=$("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");pe.init(t,e),t.def=e,t.parse=(r,n)=>Oa(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Fr(t,r,n),t.parseAsync=async(r,n)=>Aa(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Ur(t,r,n),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>at(t,r,n),t.brand=()=>t,t.register=(r,n)=>(r.add(t,n),t)});var lb=$("ZodMiniObject",(t,e)=>{$s.init(t,e),ub.init(t,e),re.defineLazy(t,"shape",()=>e.shape)});function hu(t,e){let r={type:"object",get shape(){return re.assignProp(this,"shape",{...t}),this.shape},...re.normalizeParams(e)};return new lb(r)}function pt(t){return!!t._zod}function Gr(t){let e=Object.values(t);if(e.length===0)return hu({});let r=e.every(pt),n=e.every(o=>!pt(o));if(r)return hu(t);if(n)return _a(t);throw new Error("Mixed Zod versions detected in object shape.")}function ir(t,e){return pt(t)?Fr(t,e):t.safeParse(e)}async function Os(t,e){return pt(t)?await Ur(t,e):await t.safeParseAsync(e)}function ar(t){if(!t)return;let e;if(pt(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function xn(t){if(t){if(typeof t=="object"){let e=t,r=t;if(!e._def&&!r._zod){let n=Object.values(t);if(n.length>0&&n.every(o=>typeof o=="object"&&o!==null&&(o._def!==void 0||o._zod!==void 0||typeof o.parse=="function")))return Gr(t)}}if(pt(t)){let r=t._zod?.def;if(r&&(r.type==="object"||r.shape!==void 0))return t}else if(t.shape!==void 0)return t}}function Ms(t){if(t&&typeof t=="object"){if("message"in t&&typeof t.message=="string")return t.message;if("issues"in t&&Array.isArray(t.issues)&&t.issues.length>0){let e=t.issues[0];if(e&&typeof e=="object"&&"message"in e)return String(e.message)}try{return JSON.stringify(t)}catch{return String(t)}}return String(t)}function qf(t){return t.description}function Lf(t){if(pt(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function As(t){if(pt(t)){let s=t._zod?.def;if(s){if(s.value!==void 0)return s.value;if(Array.isArray(s.values)&&s.values.length>0)return s.values[0]}}let r=t._def;if(r){if(r.value!==void 0)return r.value;if(Array.isArray(r.values)&&r.values.length>0)return r.values[0]}let n=t.value;if(n!==void 0)return n}var co={};cs(co,{ZodISODate:()=>Uf,ZodISODateTime:()=>Ff,ZodISODuration:()=>Hf,ZodISOTime:()=>Vf,date:()=>yu,datetime:()=>gu,duration:()=>vu,time:()=>_u});var Ff=$("ZodISODateTime",(t,e)=>{zf.init(t,e),be.init(t,e)});function gu(t){return Af(Ff,t)}var Uf=$("ZodISODate",(t,e)=>{Ef.init(t,e),be.init(t,e)});function yu(t){return Cf(Uf,t)}var Vf=$("ZodISOTime",(t,e)=>{Pf.init(t,e),be.init(t,e)});function _u(t){return Nf(Vf,t)}var Hf=$("ZodISODuration",(t,e)=>{Rf.init(t,e),be.init(t,e)});function vu(t){return jf(Hf,t)}var Gf=(t,e)=>{_s.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Ra(t,r)},flatten:{value:r=>Pa(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},kI=$("ZodError",Gf),uo=$("ZodError",Gf,{Parent:Error});var Wf=Ia(uo),Bf=Ma(uo),Kf=Ca(uo),Jf=Na(uo);var Te=$("ZodType",(t,e)=>(pe.init(t,e),t.def=e,Object.defineProperty(t,"_def",{value:e}),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>at(t,r,n),t.brand=()=>t,t.register=(r,n)=>(r.add(t,n),t),t.parse=(r,n)=>Wf(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Kf(t,r,n),t.parseAsync=async(r,n)=>Bf(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Jf(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(aw(r,n)),t.superRefine=r=>t.check(cw(r)),t.overwrite=r=>t.check(Vr(r)),t.optional=()=>Se(t),t.nullable=()=>Yf(t),t.nullish=()=>Se(Yf(t)),t.nonoptional=r=>ew(t,r),t.array=()=>ne(t),t.or=r=>ye([t,r]),t.and=r=>Ns(t,r),t.transform=r=>bu(t,om(r)),t.default=r=>Qb(t,r),t.prefault=r=>Yb(t,r),t.catch=r=>rw(t,r),t.pipe=r=>bu(t,r),t.readonly=()=>sw(t),t.describe=r=>{let n=t.clone();return sr.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return sr.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return sr.get(t);let n=t.clone();return sr.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),em=$("_ZodString",(t,e)=>{oo.init(t,e),Te.init(t,e);let r=t._zod.bag;t.format=r.format??null,t.minLength=r.minimum??null,t.maxLength=r.maximum??null,t.regex=(...n)=>t.check(ru(...n)),t.includes=(...n)=>t.check(su(...n)),t.startsWith=(...n)=>t.check(iu(...n)),t.endsWith=(...n)=>t.check(au(...n)),t.min=(...n)=>t.check(vn(...n)),t.max=(...n)=>t.check(Ps(...n)),t.length=(...n)=>t.check(Rs(...n)),t.nonempty=(...n)=>t.check(vn(1,...n)),t.lowercase=n=>t.check(nu(n)),t.uppercase=n=>t.check(ou(n)),t.trim=()=>t.check(uu()),t.normalize=(...n)=>t.check(cu(...n)),t.toLowerCase=()=>t.check(lu()),t.toUpperCase=()=>t.check(du())}),vb=$("ZodString",(t,e)=>{oo.init(t,e),em.init(t,e),t.email=r=>t.check(Pc(xb,r)),t.url=r=>t.check(Ac(bb,r)),t.jwt=r=>t.check(Kc(Nb,r)),t.emoji=r=>t.check(Cc(wb,r)),t.guid=r=>t.check(Ss(Qf,r)),t.uuid=r=>t.check(Rc(Cs,r)),t.uuidv4=r=>t.check(Ic(Cs,r)),t.uuidv6=r=>t.check(Oc(Cs,r)),t.uuidv7=r=>t.check(Mc(Cs,r)),t.nanoid=r=>t.check(Nc($b,r)),t.guid=r=>t.check(Ss(Qf,r)),t.cuid=r=>t.check(jc(kb,r)),t.cuid2=r=>t.check(Zc(Sb,r)),t.ulid=r=>t.check(Dc(Tb,r)),t.base64=r=>t.check(Gc(Mb,r)),t.base64url=r=>t.check(Wc(Ab,r)),t.xid=r=>t.check(qc(zb,r)),t.ksuid=r=>t.check(Lc(Eb,r)),t.ipv4=r=>t.check(Fc(Pb,r)),t.ipv6=r=>t.check(Uc(Rb,r)),t.cidrv4=r=>t.check(Vc(Ib,r)),t.cidrv6=r=>t.check(Hc(Ob,r)),t.e164=r=>t.check(Bc(Cb,r)),t.datetime=r=>t.check(gu(r)),t.date=r=>t.check(yu(r)),t.time=r=>t.check(_u(r)),t.duration=r=>t.check(vu(r))});function w(t){return Ec(vb,t)}var be=$("ZodStringFormat",(t,e)=>{ge.init(t,e),em.init(t,e)}),xb=$("ZodEmail",(t,e)=>{Va.init(t,e),be.init(t,e)});var Qf=$("ZodGUID",(t,e)=>{Fa.init(t,e),be.init(t,e)});var Cs=$("ZodUUID",(t,e)=>{Ua.init(t,e),be.init(t,e)});var bb=$("ZodURL",(t,e)=>{Ha.init(t,e),be.init(t,e)});var wb=$("ZodEmoji",(t,e)=>{Ga.init(t,e),be.init(t,e)});var $b=$("ZodNanoID",(t,e)=>{Wa.init(t,e),be.init(t,e)});var kb=$("ZodCUID",(t,e)=>{Ba.init(t,e),be.init(t,e)});var Sb=$("ZodCUID2",(t,e)=>{Ka.init(t,e),be.init(t,e)});var Tb=$("ZodULID",(t,e)=>{Ja.init(t,e),be.init(t,e)});var zb=$("ZodXID",(t,e)=>{Qa.init(t,e),be.init(t,e)});var Eb=$("ZodKSUID",(t,e)=>{Xa.init(t,e),be.init(t,e)});var Pb=$("ZodIPv4",(t,e)=>{Ya.init(t,e),be.init(t,e)});var Rb=$("ZodIPv6",(t,e)=>{ec.init(t,e),be.init(t,e)});var Ib=$("ZodCIDRv4",(t,e)=>{tc.init(t,e),be.init(t,e)});var Ob=$("ZodCIDRv6",(t,e)=>{rc.init(t,e),be.init(t,e)});var Mb=$("ZodBase64",(t,e)=>{nc.init(t,e),be.init(t,e)});var Ab=$("ZodBase64URL",(t,e)=>{oc.init(t,e),be.init(t,e)});var Cb=$("ZodE164",(t,e)=>{sc.init(t,e),be.init(t,e)});var Nb=$("ZodJWT",(t,e)=>{ic.init(t,e),be.init(t,e)});var tm=$("ZodNumber",(t,e)=>{ws.init(t,e),Te.init(t,e),t.gt=(n,o)=>t.check(zs(n,o)),t.gte=(n,o)=>t.check(ao(n,o)),t.min=(n,o)=>t.check(ao(n,o)),t.lt=(n,o)=>t.check(Ts(n,o)),t.lte=(n,o)=>t.check(io(n,o)),t.max=(n,o)=>t.check(io(n,o)),t.int=n=>t.check(Xf(n)),t.safe=n=>t.check(Xf(n)),t.positive=n=>t.check(zs(0,n)),t.nonnegative=n=>t.check(ao(0,n)),t.negative=n=>t.check(Ts(0,n)),t.nonpositive=n=>t.check(io(0,n)),t.multipleOf=(n,o)=>t.check(Es(n,o)),t.step=(n,o)=>t.check(Es(n,o)),t.finite=()=>t;let r=t._zod.bag;t.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,t.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,t.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),t.isFinite=!0,t.format=r.format??null});function le(t){return Jc(tm,t)}var jb=$("ZodNumberFormat",(t,e)=>{ac.init(t,e),tm.init(t,e)});function Xf(t){return Qc(jb,t)}var Zb=$("ZodBoolean",(t,e)=>{cc.init(t,e),Te.init(t,e)});function Ie(t){return Xc(Zb,t)}var Db=$("ZodNull",(t,e)=>{uc.init(t,e),Te.init(t,e)});function wu(t){return Yc(Db,t)}var qb=$("ZodUnknown",(t,e)=>{lc.init(t,e),Te.init(t,e)});function we(){return eu(qb)}var Lb=$("ZodNever",(t,e)=>{dc.init(t,e),Te.init(t,e)});function Fb(t){return tu(Lb,t)}var Ub=$("ZodArray",(t,e)=>{pc.init(t,e),Te.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(vn(r,n)),t.nonempty=r=>t.check(vn(1,r)),t.max=(r,n)=>t.check(Ps(r,n)),t.length=(r,n)=>t.check(Rs(r,n)),t.unwrap=()=>t.element});function ne(t,e){return Zf(Ub,t,e)}var rm=$("ZodObject",(t,e)=>{$s.init(t,e),Te.init(t,e),re.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>Ye(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:we()}),t.loose=()=>t.clone({...t._zod.def,catchall:we()}),t.strict=()=>t.clone({...t._zod.def,catchall:Fb()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>re.extend(t,r),t.merge=r=>re.merge(t,r),t.pick=r=>re.pick(t,r),t.omit=r=>re.omit(t,r),t.partial=(...r)=>re.partial(sm,t,r[0]),t.required=(...r)=>re.required(im,t,r[0])});function M(t,e){let r={type:"object",get shape(){return re.assignProp(this,"shape",{...t}),this.shape},...re.normalizeParams(e)};return new rm(r)}function He(t,e){return new rm({type:"object",get shape(){return re.assignProp(this,"shape",{...t}),this.shape},catchall:we(),...re.normalizeParams(e)})}var nm=$("ZodUnion",(t,e)=>{ks.init(t,e),Te.init(t,e),t.options=e.options});function ye(t,e){return new nm({type:"union",options:t,...re.normalizeParams(e)})}var Vb=$("ZodDiscriminatedUnion",(t,e)=>{nm.init(t,e),fc.init(t,e)});function $u(t,e,r){return new Vb({type:"union",options:e,discriminator:t,...re.normalizeParams(r)})}var Hb=$("ZodIntersection",(t,e)=>{mc.init(t,e),Te.init(t,e)});function Ns(t,e){return new Hb({type:"intersection",left:t,right:e})}var Gb=$("ZodRecord",(t,e)=>{hc.init(t,e),Te.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function $e(t,e,r){return new Gb({type:"record",keyType:t,valueType:e,...re.normalizeParams(r)})}var xu=$("ZodEnum",(t,e)=>{gc.init(t,e),Te.init(t,e),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(n,o)=>{let s={};for(let i of n)if(r.has(i))s[i]=e.entries[i];else throw new Error(`Key ${i} not found in enum`);return new xu({...e,checks:[],...re.normalizeParams(o),entries:s})},t.exclude=(n,o)=>{let s={...e.entries};for(let i of n)if(r.has(i))delete s[i];else throw new Error(`Key ${i} not found in enum`);return new xu({...e,checks:[],...re.normalizeParams(o),entries:s})}});function Ye(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new xu({type:"enum",entries:r,...re.normalizeParams(e)})}var Wb=$("ZodLiteral",(t,e)=>{yc.init(t,e),Te.init(t,e),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function Z(t,e){return new Wb({type:"literal",values:Array.isArray(t)?t:[t],...re.normalizeParams(e)})}var Bb=$("ZodTransform",(t,e)=>{_c.init(t,e),Te.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(re.issue(s,r.value,e));else{let i=s;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=r.value),i.inst??(i.inst=t),i.continue??(i.continue=!0),r.issues.push(re.issue(i))}};let o=e.transform(r.value,r);return o instanceof Promise?o.then(s=>(r.value=s,r)):(r.value=o,r)}});function om(t){return new Bb({type:"transform",transform:t})}var sm=$("ZodOptional",(t,e)=>{vc.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Se(t){return new sm({type:"optional",innerType:t})}var Kb=$("ZodNullable",(t,e)=>{xc.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Yf(t){return new Kb({type:"nullable",innerType:t})}var Jb=$("ZodDefault",(t,e)=>{bc.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function Qb(t,e){return new Jb({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var Xb=$("ZodPrefault",(t,e)=>{wc.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Yb(t,e){return new Xb({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var im=$("ZodNonOptional",(t,e)=>{$c.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType});function ew(t,e){return new im({type:"nonoptional",innerType:t,...re.normalizeParams(e)})}var tw=$("ZodCatch",(t,e)=>{kc.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function rw(t,e){return new tw({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var nw=$("ZodPipe",(t,e)=>{Sc.init(t,e),Te.init(t,e),t.in=e.in,t.out=e.out});function bu(t,e){return new nw({type:"pipe",in:t,out:e})}var ow=$("ZodReadonly",(t,e)=>{Tc.init(t,e),Te.init(t,e)});function sw(t){return new ow({type:"readonly",innerType:t})}var am=$("ZodCustom",(t,e)=>{zc.init(t,e),Te.init(t,e)});function iw(t){let e=new Me({check:"custom"});return e._zod.check=t,e}function cm(t,e){return pu(am,t??(()=>!0),e)}function aw(t,e={}){return fu(am,t,e)}function cw(t){let e=iw(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(re.issue(n,r.value,e._zod.def));else{let o=n;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=r.value),o.inst??(o.inst=e),o.continue??(o.continue=!e._zod.def.abort),r.issues.push(re.issue(o))}},t(r.value,r)));return e}function ku(t,e){return bu(om(t),e)}it(Of());var Tu="2025-11-25";var um=[Tu,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],cr="io.modelcontextprotocol/related-task",Zs="2.0",Ae=cm(t=>t!==null&&(typeof t=="object"||typeof t=="function")),lm=ye([w(),le().int()]),dm=w(),ZI=He({ttl:ye([le(),wu()]).optional(),pollInterval:le().optional()}),uw=M({ttl:le().optional()}),lw=M({taskId:w()}),zu=He({progressToken:lm.optional(),[cr]:lw.optional()}),ct=M({_meta:zu.optional()}),lo=ct.extend({task:uw.optional()}),pm=t=>lo.safeParse(t).success,Ce=M({method:w(),params:ct.loose().optional()}),ft=M({_meta:zu.optional()}),mt=M({method:w(),params:ft.loose().optional()}),Ne=He({_meta:zu.optional()}),Ds=ye([w(),le().int()]),fm=M({jsonrpc:Z(Zs),id:Ds,...Ce.shape}).strict(),Eu=t=>fm.safeParse(t).success,mm=M({jsonrpc:Z(Zs),...mt.shape}).strict(),hm=t=>mm.safeParse(t).success,Pu=M({jsonrpc:Z(Zs),id:Ds,result:Ne}).strict(),po=t=>Pu.safeParse(t).success;var L;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(L||(L={}));var Ru=M({jsonrpc:Z(Zs),id:Ds.optional(),error:M({code:le().int(),message:w(),data:we().optional()})}).strict();var gm=t=>Ru.safeParse(t).success;var ym=ye([fm,mm,Pu,Ru]),DI=ye([Pu,Ru]),qs=Ne.strict(),dw=ft.extend({requestId:Ds.optional(),reason:w().optional()}),Ls=mt.extend({method:Z("notifications/cancelled"),params:dw}),pw=M({src:w(),mimeType:w().optional(),sizes:ne(w()).optional(),theme:Ye(["light","dark"]).optional()}),fo=M({icons:ne(pw).optional()}),bn=M({name:w(),title:w().optional()}),_m=bn.extend({...bn.shape,...fo.shape,version:w(),websiteUrl:w().optional(),description:w().optional()}),fw=Ns(M({applyDefaults:Ie().optional()}),$e(w(),we())),mw=ku(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,Ns(M({form:fw.optional(),url:Ae.optional()}),$e(w(),we()).optional())),hw=He({list:Ae.optional(),cancel:Ae.optional(),requests:He({sampling:He({createMessage:Ae.optional()}).optional(),elicitation:He({create:Ae.optional()}).optional()}).optional()}),gw=He({list:Ae.optional(),cancel:Ae.optional(),requests:He({tools:He({call:Ae.optional()}).optional()}).optional()}),yw=M({experimental:$e(w(),Ae).optional(),sampling:M({context:Ae.optional(),tools:Ae.optional()}).optional(),elicitation:mw.optional(),roots:M({listChanged:Ie().optional()}).optional(),tasks:hw.optional()}),_w=ct.extend({protocolVersion:w(),capabilities:yw,clientInfo:_m}),Iu=Ce.extend({method:Z("initialize"),params:_w});var vw=M({experimental:$e(w(),Ae).optional(),logging:Ae.optional(),completions:Ae.optional(),prompts:M({listChanged:Ie().optional()}).optional(),resources:M({subscribe:Ie().optional(),listChanged:Ie().optional()}).optional(),tools:M({listChanged:Ie().optional()}).optional(),tasks:gw.optional()}),xw=Ne.extend({protocolVersion:w(),capabilities:vw,serverInfo:_m,instructions:w().optional()}),Ou=mt.extend({method:Z("notifications/initialized"),params:ft.optional()});var Fs=Ce.extend({method:Z("ping"),params:ct.optional()}),bw=M({progress:le(),total:Se(le()),message:Se(w())}),ww=M({...ft.shape,...bw.shape,progressToken:lm}),Us=mt.extend({method:Z("notifications/progress"),params:ww}),$w=ct.extend({cursor:dm.optional()}),mo=Ce.extend({params:$w.optional()}),ho=Ne.extend({nextCursor:dm.optional()}),kw=Ye(["working","input_required","completed","failed","cancelled"]),go=M({taskId:w(),status:kw,ttl:ye([le(),wu()]),createdAt:w(),lastUpdatedAt:w(),pollInterval:Se(le()),statusMessage:Se(w())}),wn=Ne.extend({task:go}),Sw=ft.merge(go),yo=mt.extend({method:Z("notifications/tasks/status"),params:Sw}),Vs=Ce.extend({method:Z("tasks/get"),params:ct.extend({taskId:w()})}),Hs=Ne.merge(go),Gs=Ce.extend({method:Z("tasks/result"),params:ct.extend({taskId:w()})}),qI=Ne.loose(),Ws=mo.extend({method:Z("tasks/list")}),Bs=ho.extend({tasks:ne(go)}),Ks=Ce.extend({method:Z("tasks/cancel"),params:ct.extend({taskId:w()})}),vm=Ne.merge(go),xm=M({uri:w(),mimeType:Se(w()),_meta:$e(w(),we()).optional()}),bm=xm.extend({text:w()}),Mu=w().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),wm=xm.extend({blob:Mu}),_o=Ye(["user","assistant"]),$n=M({audience:ne(_o).optional(),priority:le().min(0).max(1).optional(),lastModified:co.datetime({offset:!0}).optional()}),$m=M({...bn.shape,...fo.shape,uri:w(),description:Se(w()),mimeType:Se(w()),annotations:$n.optional(),_meta:Se(He({}))}),Tw=M({...bn.shape,...fo.shape,uriTemplate:w(),description:Se(w()),mimeType:Se(w()),annotations:$n.optional(),_meta:Se(He({}))}),Js=mo.extend({method:Z("resources/list")}),zw=ho.extend({resources:ne($m)}),Qs=mo.extend({method:Z("resources/templates/list")}),Ew=ho.extend({resourceTemplates:ne(Tw)}),Au=ct.extend({uri:w()}),Pw=Au,Xs=Ce.extend({method:Z("resources/read"),params:Pw}),Rw=Ne.extend({contents:ne(ye([bm,wm]))}),Iw=mt.extend({method:Z("notifications/resources/list_changed"),params:ft.optional()}),Ow=Au,Mw=Ce.extend({method:Z("resources/subscribe"),params:Ow}),Aw=Au,Cw=Ce.extend({method:Z("resources/unsubscribe"),params:Aw}),Nw=ft.extend({uri:w()}),jw=mt.extend({method:Z("notifications/resources/updated"),params:Nw}),Zw=M({name:w(),description:Se(w()),required:Se(Ie())}),Dw=M({...bn.shape,...fo.shape,description:Se(w()),arguments:Se(ne(Zw)),_meta:Se(He({}))}),Ys=mo.extend({method:Z("prompts/list")}),qw=ho.extend({prompts:ne(Dw)}),Lw=ct.extend({name:w(),arguments:$e(w(),w()).optional()}),ei=Ce.extend({method:Z("prompts/get"),params:Lw}),Cu=M({type:Z("text"),text:w(),annotations:$n.optional(),_meta:$e(w(),we()).optional()}),Nu=M({type:Z("image"),data:Mu,mimeType:w(),annotations:$n.optional(),_meta:$e(w(),we()).optional()}),ju=M({type:Z("audio"),data:Mu,mimeType:w(),annotations:$n.optional(),_meta:$e(w(),we()).optional()}),Fw=M({type:Z("tool_use"),name:w(),id:w(),input:$e(w(),we()),_meta:$e(w(),we()).optional()}),Uw=M({type:Z("resource"),resource:ye([bm,wm]),annotations:$n.optional(),_meta:$e(w(),we()).optional()}),Vw=$m.extend({type:Z("resource_link")}),Zu=ye([Cu,Nu,ju,Vw,Uw]),Hw=M({role:_o,content:Zu}),Gw=Ne.extend({description:w().optional(),messages:ne(Hw)}),Ww=mt.extend({method:Z("notifications/prompts/list_changed"),params:ft.optional()}),Bw=M({title:w().optional(),readOnlyHint:Ie().optional(),destructiveHint:Ie().optional(),idempotentHint:Ie().optional(),openWorldHint:Ie().optional()}),Kw=M({taskSupport:Ye(["required","optional","forbidden"]).optional()}),km=M({...bn.shape,...fo.shape,description:w().optional(),inputSchema:M({type:Z("object"),properties:$e(w(),Ae).optional(),required:ne(w()).optional()}).catchall(we()),outputSchema:M({type:Z("object"),properties:$e(w(),Ae).optional(),required:ne(w()).optional()}).catchall(we()).optional(),annotations:Bw.optional(),execution:Kw.optional(),_meta:$e(w(),we()).optional()}),ti=mo.extend({method:Z("tools/list")}),Jw=ho.extend({tools:ne(km)}),ri=Ne.extend({content:ne(Zu).default([]),structuredContent:$e(w(),we()).optional(),isError:Ie().optional()}),LI=ri.or(Ne.extend({toolResult:we()})),Qw=lo.extend({name:w(),arguments:$e(w(),we()).optional()}),kn=Ce.extend({method:Z("tools/call"),params:Qw}),Xw=mt.extend({method:Z("notifications/tools/list_changed"),params:ft.optional()}),FI=M({autoRefresh:Ie().default(!0),debounceMs:le().int().nonnegative().default(300)}),vo=Ye(["debug","info","notice","warning","error","critical","alert","emergency"]),Yw=ct.extend({level:vo}),Du=Ce.extend({method:Z("logging/setLevel"),params:Yw}),e$=ft.extend({level:vo,logger:w().optional(),data:we()}),t$=mt.extend({method:Z("notifications/message"),params:e$}),r$=M({name:w().optional()}),n$=M({hints:ne(r$).optional(),costPriority:le().min(0).max(1).optional(),speedPriority:le().min(0).max(1).optional(),intelligencePriority:le().min(0).max(1).optional()}),o$=M({mode:Ye(["auto","required","none"]).optional()}),s$=M({type:Z("tool_result"),toolUseId:w().describe("The unique identifier for the corresponding tool call."),content:ne(Zu).default([]),structuredContent:M({}).loose().optional(),isError:Ie().optional(),_meta:$e(w(),we()).optional()}),i$=$u("type",[Cu,Nu,ju]),js=$u("type",[Cu,Nu,ju,Fw,s$]),a$=M({role:_o,content:ye([js,ne(js)]),_meta:$e(w(),we()).optional()}),c$=lo.extend({messages:ne(a$),modelPreferences:n$.optional(),systemPrompt:w().optional(),includeContext:Ye(["none","thisServer","allServers"]).optional(),temperature:le().optional(),maxTokens:le().int(),stopSequences:ne(w()).optional(),metadata:Ae.optional(),tools:ne(km).optional(),toolChoice:o$.optional()}),u$=Ce.extend({method:Z("sampling/createMessage"),params:c$}),qu=Ne.extend({model:w(),stopReason:Se(Ye(["endTurn","stopSequence","maxTokens"]).or(w())),role:_o,content:i$}),Lu=Ne.extend({model:w(),stopReason:Se(Ye(["endTurn","stopSequence","maxTokens","toolUse"]).or(w())),role:_o,content:ye([js,ne(js)])}),l$=M({type:Z("boolean"),title:w().optional(),description:w().optional(),default:Ie().optional()}),d$=M({type:Z("string"),title:w().optional(),description:w().optional(),minLength:le().optional(),maxLength:le().optional(),format:Ye(["email","uri","date","date-time"]).optional(),default:w().optional()}),p$=M({type:Ye(["number","integer"]),title:w().optional(),description:w().optional(),minimum:le().optional(),maximum:le().optional(),default:le().optional()}),f$=M({type:Z("string"),title:w().optional(),description:w().optional(),enum:ne(w()),default:w().optional()}),m$=M({type:Z("string"),title:w().optional(),description:w().optional(),oneOf:ne(M({const:w(),title:w()})),default:w().optional()}),h$=M({type:Z("string"),title:w().optional(),description:w().optional(),enum:ne(w()),enumNames:ne(w()).optional(),default:w().optional()}),g$=ye([f$,m$]),y$=M({type:Z("array"),title:w().optional(),description:w().optional(),minItems:le().optional(),maxItems:le().optional(),items:M({type:Z("string"),enum:ne(w())}),default:ne(w()).optional()}),_$=M({type:Z("array"),title:w().optional(),description:w().optional(),minItems:le().optional(),maxItems:le().optional(),items:M({anyOf:ne(M({const:w(),title:w()}))}),default:ne(w()).optional()}),v$=ye([y$,_$]),x$=ye([h$,g$,v$]),b$=ye([x$,l$,d$,p$]),w$=lo.extend({mode:Z("form").optional(),message:w(),requestedSchema:M({type:Z("object"),properties:$e(w(),b$),required:ne(w()).optional()})}),$$=lo.extend({mode:Z("url"),message:w(),elicitationId:w(),url:w().url()}),k$=ye([w$,$$]),S$=Ce.extend({method:Z("elicitation/create"),params:k$}),T$=ft.extend({elicitationId:w()}),z$=mt.extend({method:Z("notifications/elicitation/complete"),params:T$}),ni=Ne.extend({action:Ye(["accept","decline","cancel"]),content:ku(t=>t===null?void 0:t,$e(w(),ye([w(),le(),Ie(),ne(w())])).optional())}),E$=M({type:Z("ref/resource"),uri:w()});var P$=M({type:Z("ref/prompt"),name:w()}),R$=ct.extend({ref:ye([P$,E$]),argument:M({name:w(),value:w()}),context:M({arguments:$e(w(),w()).optional()}).optional()}),oi=Ce.extend({method:Z("completion/complete"),params:R$});function Sm(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function Tm(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var I$=Ne.extend({completion:He({values:ne(w()).max(100),total:Se(le().int()),hasMore:Se(Ie())})}),O$=M({uri:w().startsWith("file://"),name:w().optional(),_meta:$e(w(),we()).optional()}),M$=Ce.extend({method:Z("roots/list"),params:ct.optional()}),Fu=Ne.extend({roots:ne(O$)}),A$=mt.extend({method:Z("notifications/roots/list_changed"),params:ft.optional()}),UI=ye([Fs,Iu,oi,Du,ei,Ys,Js,Qs,Xs,Mw,Cw,kn,ti,Vs,Gs,Ws,Ks]),VI=ye([Ls,Us,Ou,A$,yo]),HI=ye([qs,qu,Lu,ni,Fu,Hs,Bs,wn]),GI=ye([Fs,u$,S$,M$,Vs,Gs,Ws,Ks]),WI=ye([Ls,Us,t$,jw,Iw,Xw,Ww,yo,z$]),BI=ye([qs,xw,I$,Gw,qw,zw,Ew,Rw,ri,Jw,Hs,Bs,wn]),N=class t extends Error{constructor(e,r,n){super(`MCP error ${e}: ${r}`),this.code=e,this.data=n,this.name="McpError"}static fromError(e,r,n){if(e===L.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Su(o.elicitations,r)}return new t(e,r,n)}},Su=class extends N{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(L.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function ur(t){return t==="completed"||t==="failed"||t==="cancelled"}var Em=Symbol("Let zodToJsonSchema decide on which parser to use");var zm={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",target:"jsonSchema7",strictUnions:!1,definitions:{},errorMessages:!1,markdownDescription:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref",openAiAnyTypeName:"OpenAiAnyType"},Pm=t=>typeof t=="string"?{...zm,name:t}:{...zm,...t};var Rm=t=>{let e=Pm(t),r=e.name!==void 0?[...e.basePath,e.definitionPath,e.name]:e.basePath;return{...e,flags:{hasReferencedOpenAiAnyType:!1},currentPath:r,propertyPath:void 0,seen:new Map(Object.entries(e.definitions).map(([n,o])=>[o._def,{def:o._def,path:[...e.basePath,e.definitionPath,n],jsonSchema:void 0}]))}};function Uu(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function oe(t,e,r,n,o){t[e]=r,Uu(t,e,n,o)}var si=(t,e)=>{let r=0;for(;r<t.length&&r<e.length&&t[r]===e[r];r++);return[(t.length-r).toString(),...e.slice(r)].join("/")};function ke(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?si(e,t.currentPath):e.join("/")}}function Im(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==S.ZodAny&&(r.items=H(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&oe(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&oe(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(oe(r,"minItems",t.exactLength.value,t.exactLength.message,e),oe(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}function Om(t,e){let r={type:"integer",format:"int64"};if(!t.checks)return r;for(let n of t.checks)switch(n.kind){case"min":e.target==="jsonSchema7"?n.inclusive?oe(r,"minimum",n.value,n.message,e):oe(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),oe(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?oe(r,"maximum",n.value,n.message,e):oe(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),oe(r,"maximum",n.value,n.message,e));break;case"multipleOf":oe(r,"multipleOf",n.value,n.message,e);break}return r}function Mm(){return{type:"boolean"}}function ii(t,e){return H(t.type._def,e)}var Am=(t,e)=>H(t.innerType._def,e);function Vu(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>Vu(t,e,o))};switch(n){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return C$(t,e)}}var C$=(t,e)=>{let r={type:"integer",format:"unix-time"};if(e.target==="openApi3")return r;for(let n of t.checks)switch(n.kind){case"min":oe(r,"minimum",n.value,n.message,e);break;case"max":oe(r,"maximum",n.value,n.message,e);break}return r};function Cm(t,e){return{...H(t.innerType._def,e),default:t.defaultValue()}}function Nm(t,e){return e.effectStrategy==="input"?H(t.schema._def,e):ke(e)}function jm(t){return{type:"string",enum:Array.from(t.values)}}var N$=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function Zm(t,e){let r=[H(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),H(t.right._def,{...e,currentPath:[...e.currentPath,"allOf","1"]})].filter(s=>!!s),n=e.target==="jsonSchema2019-09"?{unevaluatedProperties:!1}:void 0,o=[];return r.forEach(s=>{if(N$(s))o.push(...s.allOf),s.unevaluatedProperties===void 0&&(n=void 0);else{let i=s;if("additionalProperties"in s&&s.additionalProperties===!1){let{additionalProperties:a,...c}=s;i=c}else n=void 0;o.push(i)}}),o.length?{allOf:o,...n}:void 0}function Dm(t,e){let r=typeof t.value;return r!=="bigint"&&r!=="number"&&r!=="boolean"&&r!=="string"?{type:Array.isArray(t.value)?"array":"object"}:e.target==="openApi3"?{type:r==="bigint"?"integer":r,enum:[t.value]}:{type:r==="bigint"?"integer":r,const:t.value}}var Hu,wt={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(Hu===void 0&&(Hu=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),Hu),uuid:/^[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}$/,ipv4:/^(?:(?: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])$/,ipv4Cidr:/^(?:(?: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])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([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})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function ai(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":oe(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":oe(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"email":switch(e.emailStrategy){case"format:email":$t(r,"email",n.message,e);break;case"format:idn-email":$t(r,"idn-email",n.message,e);break;case"pattern:zod":Ge(r,wt.email,n.message,e);break}break;case"url":$t(r,"uri",n.message,e);break;case"uuid":$t(r,"uuid",n.message,e);break;case"regex":Ge(r,n.regex,n.message,e);break;case"cuid":Ge(r,wt.cuid,n.message,e);break;case"cuid2":Ge(r,wt.cuid2,n.message,e);break;case"startsWith":Ge(r,RegExp(`^${Gu(n.value,e)}`),n.message,e);break;case"endsWith":Ge(r,RegExp(`${Gu(n.value,e)}$`),n.message,e);break;case"datetime":$t(r,"date-time",n.message,e);break;case"date":$t(r,"date",n.message,e);break;case"time":$t(r,"time",n.message,e);break;case"duration":$t(r,"duration",n.message,e);break;case"length":oe(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),oe(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{Ge(r,RegExp(Gu(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&$t(r,"ipv4",n.message,e),n.version!=="v4"&&$t(r,"ipv6",n.message,e);break}case"base64url":Ge(r,wt.base64url,n.message,e);break;case"jwt":Ge(r,wt.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&Ge(r,wt.ipv4Cidr,n.message,e),n.version!=="v4"&&Ge(r,wt.ipv6Cidr,n.message,e);break}case"emoji":Ge(r,wt.emoji(),n.message,e);break;case"ulid":{Ge(r,wt.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{$t(r,"binary",n.message,e);break}case"contentEncoding:base64":{oe(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{Ge(r,wt.base64,n.message,e);break}}break}case"nanoid":Ge(r,wt.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function Gu(t,e){return e.patternStrategy==="escape"?Z$(t):t}var j$=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function Z$(t){let e="";for(let r=0;r<t.length;r++)j$.has(t[r])||(e+="\\"),e+=t[r];return e}function $t(t,e,r,n){t.format||t.anyOf?.some(o=>o.format)?(t.anyOf||(t.anyOf=[]),t.format&&(t.anyOf.push({format:t.format,...t.errorMessage&&n.errorMessages&&{errorMessage:{format:t.errorMessage.format}}}),delete t.format,t.errorMessage&&(delete t.errorMessage.format,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.anyOf.push({format:e,...r&&n.errorMessages&&{errorMessage:{format:r}}})):oe(t,"format",e,r,n)}function Ge(t,e,r,n){t.pattern||t.allOf?.some(o=>o.pattern)?(t.allOf||(t.allOf=[]),t.pattern&&(t.allOf.push({pattern:t.pattern,...t.errorMessage&&n.errorMessages&&{errorMessage:{pattern:t.errorMessage.pattern}}}),delete t.pattern,t.errorMessage&&(delete t.errorMessage.pattern,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.allOf.push({pattern:qm(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):oe(t,"pattern",qm(e,n),r,n)}function qm(t,e){if(!e.applyRegexFlags||!t.flags)return t.source;let r={i:t.flags.includes("i"),m:t.flags.includes("m"),s:t.flags.includes("s")},n=r.i?t.source.toLowerCase():t.source,o="",s=!1,i=!1,a=!1;for(let c=0;c<n.length;c++){if(s){o+=n[c],s=!1;continue}if(r.i){if(i){if(n[c].match(/[a-z]/)){a?(o+=n[c],o+=`${n[c-2]}-${n[c]}`.toUpperCase(),a=!1):n[c+1]==="-"&&n[c+2]?.match(/[a-z]/)?(o+=n[c],a=!0):o+=`${n[c]}${n[c].toUpperCase()}`;continue}}else if(n[c].match(/[a-z]/)){o+=`[${n[c]}${n[c].toUpperCase()}]`;continue}}if(r.m){if(n[c]==="^"){o+=`(^|(?<=[\r
36
+ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let l of this.seen.entries()){let d=l[1];if(e===l[0]){i(l);continue}if(n.external){let m=n.external.registry.get(l[0])?.id;if(e!==l[0]&&m){i(l);continue}}if(this.metadataRegistry.get(l[0])?.id){i(l);continue}if(d.cycle){i(l);continue}if(d.count>1&&n.reused==="ref"){i(l);continue}}let a=(l,d)=>{let p=this.seen.get(l),m=p.def??p.schema,f={...m};if(p.ref===null)return;let h=p.ref;if(p.ref=null,h){a(h,d);let g=this.seen.get(h).schema;g.$ref&&d.target==="draft-7"?(m.allOf=m.allOf??[],m.allOf.push(g)):(Object.assign(m,g),Object.assign(m,f))}p.isParent||this.override({zodSchema:l,jsonSchema:m,path:p.path??[]})};for(let l of[...this.seen.entries()].reverse())a(l[0],{target:this.target});let c={};if(this.target==="draft-2020-12"?c.$schema="https://json-schema.org/draft/2020-12/schema":this.target==="draft-7"?c.$schema="http://json-schema.org/draft-07/schema#":console.warn(`Invalid target: ${this.target}`),n.external?.uri){let l=n.external.registry.get(e)?.id;if(!l)throw new Error("Schema is missing an `id` property");c.$id=n.external.uri(l)}Object.assign(c,o.def);let u=n.external?.defs??{};for(let l of this.seen.entries()){let d=l[1];d.def&&d.defId&&(u[d.defId]=d.def)}n.external||Object.keys(u).length>0&&(this.target==="draft-2020-12"?c.$defs=u:c.definitions=u);try{return JSON.parse(JSON.stringify(c))}catch{throw new Error("Error converting schema to JSON.")}}};function ku(t,e){if(t instanceof yo){let n=new Ls(e),o={};for(let a of t._idmap.entries()){let[c,u]=a;n.process(u)}let s={},i={registry:t,uri:e?.uri,defs:o};for(let a of t._idmap.entries()){let[c,u]=a;s[c]=n.emit(u,{...e,external:i})}if(Object.keys(o).length>0){let a=n.target==="draft-2020-12"?"$defs":"definitions";s.__shared={[a]:o}}return{schemas:s}}let r=new Ls(e);return r.process(t),r.emit(t,e)}function Ae(t,e){let r=e??{seen:new Set};if(r.seen.has(t))return!1;r.seen.add(t);let o=t._zod.def;switch(o.type){case"string":case"number":case"bigint":case"boolean":case"date":case"symbol":case"undefined":case"null":case"any":case"unknown":case"never":case"void":case"literal":case"enum":case"nan":case"file":case"template_literal":return!1;case"array":return Ae(o.element,r);case"object":{for(let s in o.shape)if(Ae(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(Ae(s,r))return!0;return!1}case"intersection":return Ae(o.left,r)||Ae(o.right,r);case"tuple":{for(let s of o.items)if(Ae(s,r))return!0;return!!(o.rest&&Ae(o.rest,r))}case"record":return Ae(o.keyType,r)||Ae(o.valueType,r);case"map":return Ae(o.keyType,r)||Ae(o.valueType,r);case"set":return Ae(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return Ae(o.innerType,r);case"lazy":return Ae(o.getter(),r);case"default":return Ae(o.innerType,r);case"prefault":return Ae(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return Ae(o.in,r)||Ae(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var xb=$("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");pe.init(t,e),t.def=e,t.parse=(r,n)=>Fa(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Xr(t,r,n),t.parseAsync=async(r,n)=>Va(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Yr(t,r,n),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>ft(t,r,n),t.brand=()=>t,t.register=(r,n)=>(r.add(t,n),t)});var bb=$("ZodMiniObject",(t,e)=>{Ms.init(t,e),xb.init(t,e),re.defineLazy(t,"shape",()=>e.shape)});function Su(t,e){let r={type:"object",get shape(){return re.assignProp(this,"shape",{...t}),this.shape},...re.normalizeParams(e)};return new bb(r)}function vt(t){return!!t._zod}function rn(t){let e=Object.values(t);if(e.length===0)return Su({});let r=e.every(vt),n=e.every(o=>!vt(o));if(r)return Su(t);if(n)return Ea(t);throw new Error("Mixed Zod versions detected in object shape.")}function yr(t,e){return vt(t)?Xr(t,e):t.safeParse(e)}async function Fs(t,e){return vt(t)?await Yr(t,e):await t.safeParseAsync(e)}function _r(t){if(!t)return;let e;if(vt(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function Rn(t){if(t){if(typeof t=="object"){let e=t,r=t;if(!e._def&&!r._zod){let n=Object.values(t);if(n.length>0&&n.every(o=>typeof o=="object"&&o!==null&&(o._def!==void 0||o._zod!==void 0||typeof o.parse=="function")))return rn(t)}}if(vt(t)){let r=t._zod?.def;if(r&&(r.type==="object"||r.shape!==void 0))return t}else if(t.shape!==void 0)return t}}function Us(t){if(t&&typeof t=="object"){if("message"in t&&typeof t.message=="string")return t.message;if("issues"in t&&Array.isArray(t.issues)&&t.issues.length>0){let e=t.issues[0];if(e&&typeof e=="object"&&"message"in e)return String(e.message)}try{return JSON.stringify(t)}catch{return String(t)}}return String(t)}function Qf(t){return t.description}function Xf(t){if(vt(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function Vs(t){if(vt(t)){let s=t._zod?.def;if(s){if(s.value!==void 0)return s.value;if(Array.isArray(s.values)&&s.values.length>0)return s.values[0]}}let r=t._def;if(r){if(r.value!==void 0)return r.value;if(Array.isArray(r.values)&&r.values.length>0)return r.values[0]}let n=t.value;if(n!==void 0)return n}var xo={};_s(xo,{ZodISODate:()=>em,ZodISODateTime:()=>Yf,ZodISODuration:()=>rm,ZodISOTime:()=>tm,date:()=>zu,datetime:()=>Tu,duration:()=>Pu,time:()=>Eu});var Yf=$("ZodISODateTime",(t,e)=>{Zf.init(t,e),be.init(t,e)});function Tu(t){return Hf(Yf,t)}var em=$("ZodISODate",(t,e)=>{Df.init(t,e),be.init(t,e)});function zu(t){return Wf(em,t)}var tm=$("ZodISOTime",(t,e)=>{qf.init(t,e),be.init(t,e)});function Eu(t){return Gf(tm,t)}var rm=$("ZodISODuration",(t,e)=>{Lf.init(t,e),be.init(t,e)});function Pu(t){return Bf(rm,t)}var nm=(t,e)=>{Es.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>qa(t,r)},flatten:{value:r=>Da(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},II=$("ZodError",nm),bo=$("ZodError",nm,{Parent:Error});var om=La(bo),sm=Ua(bo),im=Ha(bo),am=Wa(bo);var Te=$("ZodType",(t,e)=>(pe.init(t,e),t.def=e,Object.defineProperty(t,"_def",{value:e}),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>ft(t,r,n),t.brand=()=>t,t.register=(r,n)=>(r.add(t,n),t),t.parse=(r,n)=>om(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>im(t,r,n),t.parseAsync=async(r,n)=>sm(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>am(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(_w(r,n)),t.superRefine=r=>t.check(vw(r)),t.overwrite=r=>t.check(en(r)),t.optional=()=>Se(t),t.nullable=()=>lm(t),t.nullish=()=>Se(lm(t)),t.nonoptional=r=>dw(t,r),t.array=()=>ne(t),t.or=r=>_e([t,r]),t.and=r=>Ws(t,r),t.transform=r=>Iu(t,hm(r)),t.default=r=>cw(t,r),t.prefault=r=>lw(t,r),t.catch=r=>fw(t,r),t.pipe=r=>Iu(t,r),t.readonly=()=>gw(t),t.describe=r=>{let n=t.clone();return gr.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return gr.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return gr.get(t);let n=t.clone();return gr.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),dm=$("_ZodString",(t,e)=>{go.init(t,e),Te.init(t,e);let r=t._zod.bag;t.format=r.format??null,t.minLength=r.minimum??null,t.maxLength=r.maximum??null,t.regex=(...n)=>t.check(pu(...n)),t.includes=(...n)=>t.check(hu(...n)),t.startsWith=(...n)=>t.check(gu(...n)),t.endsWith=(...n)=>t.check(yu(...n)),t.min=(...n)=>t.check(Pn(...n)),t.max=(...n)=>t.check(Ds(...n)),t.length=(...n)=>t.check(qs(...n)),t.nonempty=(...n)=>t.check(Pn(1,...n)),t.lowercase=n=>t.check(fu(n)),t.uppercase=n=>t.check(mu(n)),t.trim=()=>t.check(vu()),t.normalize=(...n)=>t.check(_u(...n)),t.toLowerCase=()=>t.check(xu()),t.toUpperCase=()=>t.check(bu())}),Rb=$("ZodString",(t,e)=>{go.init(t,e),dm.init(t,e),t.email=r=>t.check(Dc(Ib,r)),t.url=r=>t.check(Vc(Ob,r)),t.jwt=r=>t.check(su(Gb,r)),t.emoji=r=>t.check(Hc(Mb,r)),t.guid=r=>t.check(Cs(cm,r)),t.uuid=r=>t.check(qc(Hs,r)),t.uuidv4=r=>t.check(Lc(Hs,r)),t.uuidv6=r=>t.check(Fc(Hs,r)),t.uuidv7=r=>t.check(Uc(Hs,r)),t.nanoid=r=>t.check(Wc(Ab,r)),t.guid=r=>t.check(Cs(cm,r)),t.cuid=r=>t.check(Gc(Cb,r)),t.cuid2=r=>t.check(Bc(Nb,r)),t.ulid=r=>t.check(Kc(jb,r)),t.base64=r=>t.check(ru(Vb,r)),t.base64url=r=>t.check(nu(Hb,r)),t.xid=r=>t.check(Jc(Zb,r)),t.ksuid=r=>t.check(Qc(Db,r)),t.ipv4=r=>t.check(Xc(qb,r)),t.ipv6=r=>t.check(Yc(Lb,r)),t.cidrv4=r=>t.check(eu(Fb,r)),t.cidrv6=r=>t.check(tu(Ub,r)),t.e164=r=>t.check(ou(Wb,r)),t.datetime=r=>t.check(Tu(r)),t.date=r=>t.check(zu(r)),t.time=r=>t.check(Eu(r)),t.duration=r=>t.check(Pu(r))});function w(t){return Zc(Rb,t)}var be=$("ZodStringFormat",(t,e)=>{ye.init(t,e),dm.init(t,e)}),Ib=$("ZodEmail",(t,e)=>{ec.init(t,e),be.init(t,e)});var cm=$("ZodGUID",(t,e)=>{Xa.init(t,e),be.init(t,e)});var Hs=$("ZodUUID",(t,e)=>{Ya.init(t,e),be.init(t,e)});var Ob=$("ZodURL",(t,e)=>{tc.init(t,e),be.init(t,e)});var Mb=$("ZodEmoji",(t,e)=>{rc.init(t,e),be.init(t,e)});var Ab=$("ZodNanoID",(t,e)=>{nc.init(t,e),be.init(t,e)});var Cb=$("ZodCUID",(t,e)=>{oc.init(t,e),be.init(t,e)});var Nb=$("ZodCUID2",(t,e)=>{sc.init(t,e),be.init(t,e)});var jb=$("ZodULID",(t,e)=>{ic.init(t,e),be.init(t,e)});var Zb=$("ZodXID",(t,e)=>{ac.init(t,e),be.init(t,e)});var Db=$("ZodKSUID",(t,e)=>{cc.init(t,e),be.init(t,e)});var qb=$("ZodIPv4",(t,e)=>{uc.init(t,e),be.init(t,e)});var Lb=$("ZodIPv6",(t,e)=>{lc.init(t,e),be.init(t,e)});var Fb=$("ZodCIDRv4",(t,e)=>{dc.init(t,e),be.init(t,e)});var Ub=$("ZodCIDRv6",(t,e)=>{pc.init(t,e),be.init(t,e)});var Vb=$("ZodBase64",(t,e)=>{fc.init(t,e),be.init(t,e)});var Hb=$("ZodBase64URL",(t,e)=>{mc.init(t,e),be.init(t,e)});var Wb=$("ZodE164",(t,e)=>{hc.init(t,e),be.init(t,e)});var Gb=$("ZodJWT",(t,e)=>{gc.init(t,e),be.init(t,e)});var pm=$("ZodNumber",(t,e)=>{Os.init(t,e),Te.init(t,e),t.gt=(n,o)=>t.check(js(n,o)),t.gte=(n,o)=>t.check(vo(n,o)),t.min=(n,o)=>t.check(vo(n,o)),t.lt=(n,o)=>t.check(Ns(n,o)),t.lte=(n,o)=>t.check(_o(n,o)),t.max=(n,o)=>t.check(_o(n,o)),t.int=n=>t.check(um(n)),t.safe=n=>t.check(um(n)),t.positive=n=>t.check(js(0,n)),t.nonnegative=n=>t.check(vo(0,n)),t.negative=n=>t.check(Ns(0,n)),t.nonpositive=n=>t.check(_o(0,n)),t.multipleOf=(n,o)=>t.check(Zs(n,o)),t.step=(n,o)=>t.check(Zs(n,o)),t.finite=()=>t;let r=t._zod.bag;t.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,t.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,t.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),t.isFinite=!0,t.format=r.format??null});function le(t){return iu(pm,t)}var Bb=$("ZodNumberFormat",(t,e)=>{yc.init(t,e),pm.init(t,e)});function um(t){return au(Bb,t)}var Kb=$("ZodBoolean",(t,e)=>{_c.init(t,e),Te.init(t,e)});function Ne(t){return cu(Kb,t)}var Jb=$("ZodNull",(t,e)=>{vc.init(t,e),Te.init(t,e)});function Ou(t){return uu(Jb,t)}var Qb=$("ZodUnknown",(t,e)=>{xc.init(t,e),Te.init(t,e)});function we(){return lu(Qb)}var Xb=$("ZodNever",(t,e)=>{bc.init(t,e),Te.init(t,e)});function Yb(t){return du(Xb,t)}var ew=$("ZodArray",(t,e)=>{wc.init(t,e),Te.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(Pn(r,n)),t.nonempty=r=>t.check(Pn(1,r)),t.max=(r,n)=>t.check(Ds(r,n)),t.length=(r,n)=>t.check(qs(r,n)),t.unwrap=()=>t.element});function ne(t,e){return Kf(ew,t,e)}var fm=$("ZodObject",(t,e)=>{Ms.init(t,e),Te.init(t,e),re.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>ot(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:we()}),t.loose=()=>t.clone({...t._zod.def,catchall:we()}),t.strict=()=>t.clone({...t._zod.def,catchall:Yb()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>re.extend(t,r),t.merge=r=>re.merge(t,r),t.pick=r=>re.pick(t,r),t.omit=r=>re.omit(t,r),t.partial=(...r)=>re.partial(gm,t,r[0]),t.required=(...r)=>re.required(ym,t,r[0])});function M(t,e){let r={type:"object",get shape(){return re.assignProp(this,"shape",{...t}),this.shape},...re.normalizeParams(e)};return new fm(r)}function Qe(t,e){return new fm({type:"object",get shape(){return re.assignProp(this,"shape",{...t}),this.shape},catchall:we(),...re.normalizeParams(e)})}var mm=$("ZodUnion",(t,e)=>{As.init(t,e),Te.init(t,e),t.options=e.options});function _e(t,e){return new mm({type:"union",options:t,...re.normalizeParams(e)})}var tw=$("ZodDiscriminatedUnion",(t,e)=>{mm.init(t,e),$c.init(t,e)});function Mu(t,e,r){return new tw({type:"union",options:e,discriminator:t,...re.normalizeParams(r)})}var rw=$("ZodIntersection",(t,e)=>{kc.init(t,e),Te.init(t,e)});function Ws(t,e){return new rw({type:"intersection",left:t,right:e})}var nw=$("ZodRecord",(t,e)=>{Sc.init(t,e),Te.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function $e(t,e,r){return new nw({type:"record",keyType:t,valueType:e,...re.normalizeParams(r)})}var Ru=$("ZodEnum",(t,e)=>{Tc.init(t,e),Te.init(t,e),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(n,o)=>{let s={};for(let i of n)if(r.has(i))s[i]=e.entries[i];else throw new Error(`Key ${i} not found in enum`);return new Ru({...e,checks:[],...re.normalizeParams(o),entries:s})},t.exclude=(n,o)=>{let s={...e.entries};for(let i of n)if(r.has(i))delete s[i];else throw new Error(`Key ${i} not found in enum`);return new Ru({...e,checks:[],...re.normalizeParams(o),entries:s})}});function ot(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Ru({type:"enum",entries:r,...re.normalizeParams(e)})}var ow=$("ZodLiteral",(t,e)=>{zc.init(t,e),Te.init(t,e),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function j(t,e){return new ow({type:"literal",values:Array.isArray(t)?t:[t],...re.normalizeParams(e)})}var sw=$("ZodTransform",(t,e)=>{Ec.init(t,e),Te.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(re.issue(s,r.value,e));else{let i=s;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=r.value),i.inst??(i.inst=t),i.continue??(i.continue=!0),r.issues.push(re.issue(i))}};let o=e.transform(r.value,r);return o instanceof Promise?o.then(s=>(r.value=s,r)):(r.value=o,r)}});function hm(t){return new sw({type:"transform",transform:t})}var gm=$("ZodOptional",(t,e)=>{Pc.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Se(t){return new gm({type:"optional",innerType:t})}var iw=$("ZodNullable",(t,e)=>{Rc.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType});function lm(t){return new iw({type:"nullable",innerType:t})}var aw=$("ZodDefault",(t,e)=>{Ic.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function cw(t,e){return new aw({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var uw=$("ZodPrefault",(t,e)=>{Oc.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType});function lw(t,e){return new uw({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var ym=$("ZodNonOptional",(t,e)=>{Mc.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType});function dw(t,e){return new ym({type:"nonoptional",innerType:t,...re.normalizeParams(e)})}var pw=$("ZodCatch",(t,e)=>{Ac.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function fw(t,e){return new pw({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var mw=$("ZodPipe",(t,e)=>{Cc.init(t,e),Te.init(t,e),t.in=e.in,t.out=e.out});function Iu(t,e){return new mw({type:"pipe",in:t,out:e})}var hw=$("ZodReadonly",(t,e)=>{Nc.init(t,e),Te.init(t,e)});function gw(t){return new hw({type:"readonly",innerType:t})}var _m=$("ZodCustom",(t,e)=>{jc.init(t,e),Te.init(t,e)});function yw(t){let e=new Ze({check:"custom"});return e._zod.check=t,e}function vm(t,e){return wu(_m,t??(()=>!0),e)}function _w(t,e={}){return $u(_m,t,e)}function vw(t){let e=yw(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(re.issue(n,r.value,e._zod.def));else{let o=n;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=r.value),o.inst??(o.inst=e),o.continue??(o.continue=!e._zod.def.abort),r.issues.push(re.issue(o))}},t(r.value,r)));return e}function Au(t,e){return Iu(hm(t),e)}pt(Uf());var Nu="2025-11-25";var xm=[Nu,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],vr="io.modelcontextprotocol/related-task",Bs="2.0",De=vm(t=>t!==null&&(typeof t=="object"||typeof t=="function")),bm=_e([w(),le().int()]),wm=w(),HI=Qe({ttl:_e([le(),Ou()]).optional(),pollInterval:le().optional()}),xw=M({ttl:le().optional()}),bw=M({taskId:w()}),ju=Qe({progressToken:bm.optional(),[vr]:bw.optional()}),mt=M({_meta:ju.optional()}),wo=mt.extend({task:xw.optional()}),$m=t=>wo.safeParse(t).success,qe=M({method:w(),params:mt.loose().optional()}),xt=M({_meta:ju.optional()}),bt=M({method:w(),params:xt.loose().optional()}),Le=Qe({_meta:ju.optional()}),Ks=_e([w(),le().int()]),km=M({jsonrpc:j(Bs),id:Ks,...qe.shape}).strict(),Zu=t=>km.safeParse(t).success,Sm=M({jsonrpc:j(Bs),...bt.shape}).strict(),Tm=t=>Sm.safeParse(t).success,Du=M({jsonrpc:j(Bs),id:Ks,result:Le}).strict(),$o=t=>Du.safeParse(t).success;var D;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(D||(D={}));var qu=M({jsonrpc:j(Bs),id:Ks.optional(),error:M({code:le().int(),message:w(),data:we().optional()})}).strict();var zm=t=>qu.safeParse(t).success;var Em=_e([km,Sm,Du,qu]),WI=_e([Du,qu]),Js=Le.strict(),ww=xt.extend({requestId:Ks.optional(),reason:w().optional()}),Qs=bt.extend({method:j("notifications/cancelled"),params:ww}),$w=M({src:w(),mimeType:w().optional(),sizes:ne(w()).optional(),theme:ot(["light","dark"]).optional()}),ko=M({icons:ne($w).optional()}),In=M({name:w(),title:w().optional()}),Pm=In.extend({...In.shape,...ko.shape,version:w(),websiteUrl:w().optional(),description:w().optional()}),kw=Ws(M({applyDefaults:Ne().optional()}),$e(w(),we())),Sw=Au(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,Ws(M({form:kw.optional(),url:De.optional()}),$e(w(),we()).optional())),Tw=Qe({list:De.optional(),cancel:De.optional(),requests:Qe({sampling:Qe({createMessage:De.optional()}).optional(),elicitation:Qe({create:De.optional()}).optional()}).optional()}),zw=Qe({list:De.optional(),cancel:De.optional(),requests:Qe({tools:Qe({call:De.optional()}).optional()}).optional()}),Ew=M({experimental:$e(w(),De).optional(),sampling:M({context:De.optional(),tools:De.optional()}).optional(),elicitation:Sw.optional(),roots:M({listChanged:Ne().optional()}).optional(),tasks:Tw.optional()}),Pw=mt.extend({protocolVersion:w(),capabilities:Ew,clientInfo:Pm}),Lu=qe.extend({method:j("initialize"),params:Pw});var Rw=M({experimental:$e(w(),De).optional(),logging:De.optional(),completions:De.optional(),prompts:M({listChanged:Ne().optional()}).optional(),resources:M({subscribe:Ne().optional(),listChanged:Ne().optional()}).optional(),tools:M({listChanged:Ne().optional()}).optional(),tasks:zw.optional()}),Iw=Le.extend({protocolVersion:w(),capabilities:Rw,serverInfo:Pm,instructions:w().optional()}),Fu=bt.extend({method:j("notifications/initialized"),params:xt.optional()});var Xs=qe.extend({method:j("ping"),params:mt.optional()}),Ow=M({progress:le(),total:Se(le()),message:Se(w())}),Mw=M({...xt.shape,...Ow.shape,progressToken:bm}),Ys=bt.extend({method:j("notifications/progress"),params:Mw}),Aw=mt.extend({cursor:wm.optional()}),So=qe.extend({params:Aw.optional()}),To=Le.extend({nextCursor:wm.optional()}),Cw=ot(["working","input_required","completed","failed","cancelled"]),zo=M({taskId:w(),status:Cw,ttl:_e([le(),Ou()]),createdAt:w(),lastUpdatedAt:w(),pollInterval:Se(le()),statusMessage:Se(w())}),On=Le.extend({task:zo}),Nw=xt.merge(zo),Eo=bt.extend({method:j("notifications/tasks/status"),params:Nw}),ei=qe.extend({method:j("tasks/get"),params:mt.extend({taskId:w()})}),ti=Le.merge(zo),ri=qe.extend({method:j("tasks/result"),params:mt.extend({taskId:w()})}),GI=Le.loose(),ni=So.extend({method:j("tasks/list")}),oi=To.extend({tasks:ne(zo)}),si=qe.extend({method:j("tasks/cancel"),params:mt.extend({taskId:w()})}),Rm=Le.merge(zo),Im=M({uri:w(),mimeType:Se(w()),_meta:$e(w(),we()).optional()}),Om=Im.extend({text:w()}),Uu=w().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),Mm=Im.extend({blob:Uu}),Po=ot(["user","assistant"]),Mn=M({audience:ne(Po).optional(),priority:le().min(0).max(1).optional(),lastModified:xo.datetime({offset:!0}).optional()}),Am=M({...In.shape,...ko.shape,uri:w(),description:Se(w()),mimeType:Se(w()),annotations:Mn.optional(),_meta:Se(Qe({}))}),jw=M({...In.shape,...ko.shape,uriTemplate:w(),description:Se(w()),mimeType:Se(w()),annotations:Mn.optional(),_meta:Se(Qe({}))}),ii=So.extend({method:j("resources/list")}),Zw=To.extend({resources:ne(Am)}),ai=So.extend({method:j("resources/templates/list")}),Dw=To.extend({resourceTemplates:ne(jw)}),Vu=mt.extend({uri:w()}),qw=Vu,ci=qe.extend({method:j("resources/read"),params:qw}),Lw=Le.extend({contents:ne(_e([Om,Mm]))}),Fw=bt.extend({method:j("notifications/resources/list_changed"),params:xt.optional()}),Uw=Vu,Vw=qe.extend({method:j("resources/subscribe"),params:Uw}),Hw=Vu,Ww=qe.extend({method:j("resources/unsubscribe"),params:Hw}),Gw=xt.extend({uri:w()}),Bw=bt.extend({method:j("notifications/resources/updated"),params:Gw}),Kw=M({name:w(),description:Se(w()),required:Se(Ne())}),Jw=M({...In.shape,...ko.shape,description:Se(w()),arguments:Se(ne(Kw)),_meta:Se(Qe({}))}),ui=So.extend({method:j("prompts/list")}),Qw=To.extend({prompts:ne(Jw)}),Xw=mt.extend({name:w(),arguments:$e(w(),w()).optional()}),li=qe.extend({method:j("prompts/get"),params:Xw}),Hu=M({type:j("text"),text:w(),annotations:Mn.optional(),_meta:$e(w(),we()).optional()}),Wu=M({type:j("image"),data:Uu,mimeType:w(),annotations:Mn.optional(),_meta:$e(w(),we()).optional()}),Gu=M({type:j("audio"),data:Uu,mimeType:w(),annotations:Mn.optional(),_meta:$e(w(),we()).optional()}),Yw=M({type:j("tool_use"),name:w(),id:w(),input:$e(w(),we()),_meta:$e(w(),we()).optional()}),e$=M({type:j("resource"),resource:_e([Om,Mm]),annotations:Mn.optional(),_meta:$e(w(),we()).optional()}),t$=Am.extend({type:j("resource_link")}),Bu=_e([Hu,Wu,Gu,t$,e$]),r$=M({role:Po,content:Bu}),n$=Le.extend({description:w().optional(),messages:ne(r$)}),o$=bt.extend({method:j("notifications/prompts/list_changed"),params:xt.optional()}),s$=M({title:w().optional(),readOnlyHint:Ne().optional(),destructiveHint:Ne().optional(),idempotentHint:Ne().optional(),openWorldHint:Ne().optional()}),i$=M({taskSupport:ot(["required","optional","forbidden"]).optional()}),Cm=M({...In.shape,...ko.shape,description:w().optional(),inputSchema:M({type:j("object"),properties:$e(w(),De).optional(),required:ne(w()).optional()}).catchall(we()),outputSchema:M({type:j("object"),properties:$e(w(),De).optional(),required:ne(w()).optional()}).catchall(we()).optional(),annotations:s$.optional(),execution:i$.optional(),_meta:$e(w(),we()).optional()}),di=So.extend({method:j("tools/list")}),a$=To.extend({tools:ne(Cm)}),pi=Le.extend({content:ne(Bu).default([]),structuredContent:$e(w(),we()).optional(),isError:Ne().optional()}),BI=pi.or(Le.extend({toolResult:we()})),c$=wo.extend({name:w(),arguments:$e(w(),we()).optional()}),An=qe.extend({method:j("tools/call"),params:c$}),u$=bt.extend({method:j("notifications/tools/list_changed"),params:xt.optional()}),KI=M({autoRefresh:Ne().default(!0),debounceMs:le().int().nonnegative().default(300)}),Ro=ot(["debug","info","notice","warning","error","critical","alert","emergency"]),l$=mt.extend({level:Ro}),Ku=qe.extend({method:j("logging/setLevel"),params:l$}),d$=xt.extend({level:Ro,logger:w().optional(),data:we()}),p$=bt.extend({method:j("notifications/message"),params:d$}),f$=M({name:w().optional()}),m$=M({hints:ne(f$).optional(),costPriority:le().min(0).max(1).optional(),speedPriority:le().min(0).max(1).optional(),intelligencePriority:le().min(0).max(1).optional()}),h$=M({mode:ot(["auto","required","none"]).optional()}),g$=M({type:j("tool_result"),toolUseId:w().describe("The unique identifier for the corresponding tool call."),content:ne(Bu).default([]),structuredContent:M({}).loose().optional(),isError:Ne().optional(),_meta:$e(w(),we()).optional()}),y$=Mu("type",[Hu,Wu,Gu]),Gs=Mu("type",[Hu,Wu,Gu,Yw,g$]),_$=M({role:Po,content:_e([Gs,ne(Gs)]),_meta:$e(w(),we()).optional()}),v$=wo.extend({messages:ne(_$),modelPreferences:m$.optional(),systemPrompt:w().optional(),includeContext:ot(["none","thisServer","allServers"]).optional(),temperature:le().optional(),maxTokens:le().int(),stopSequences:ne(w()).optional(),metadata:De.optional(),tools:ne(Cm).optional(),toolChoice:h$.optional()}),x$=qe.extend({method:j("sampling/createMessage"),params:v$}),Ju=Le.extend({model:w(),stopReason:Se(ot(["endTurn","stopSequence","maxTokens"]).or(w())),role:Po,content:y$}),Qu=Le.extend({model:w(),stopReason:Se(ot(["endTurn","stopSequence","maxTokens","toolUse"]).or(w())),role:Po,content:_e([Gs,ne(Gs)])}),b$=M({type:j("boolean"),title:w().optional(),description:w().optional(),default:Ne().optional()}),w$=M({type:j("string"),title:w().optional(),description:w().optional(),minLength:le().optional(),maxLength:le().optional(),format:ot(["email","uri","date","date-time"]).optional(),default:w().optional()}),$$=M({type:ot(["number","integer"]),title:w().optional(),description:w().optional(),minimum:le().optional(),maximum:le().optional(),default:le().optional()}),k$=M({type:j("string"),title:w().optional(),description:w().optional(),enum:ne(w()),default:w().optional()}),S$=M({type:j("string"),title:w().optional(),description:w().optional(),oneOf:ne(M({const:w(),title:w()})),default:w().optional()}),T$=M({type:j("string"),title:w().optional(),description:w().optional(),enum:ne(w()),enumNames:ne(w()).optional(),default:w().optional()}),z$=_e([k$,S$]),E$=M({type:j("array"),title:w().optional(),description:w().optional(),minItems:le().optional(),maxItems:le().optional(),items:M({type:j("string"),enum:ne(w())}),default:ne(w()).optional()}),P$=M({type:j("array"),title:w().optional(),description:w().optional(),minItems:le().optional(),maxItems:le().optional(),items:M({anyOf:ne(M({const:w(),title:w()}))}),default:ne(w()).optional()}),R$=_e([E$,P$]),I$=_e([T$,z$,R$]),O$=_e([I$,b$,w$,$$]),M$=wo.extend({mode:j("form").optional(),message:w(),requestedSchema:M({type:j("object"),properties:$e(w(),O$),required:ne(w()).optional()})}),A$=wo.extend({mode:j("url"),message:w(),elicitationId:w(),url:w().url()}),C$=_e([M$,A$]),N$=qe.extend({method:j("elicitation/create"),params:C$}),j$=xt.extend({elicitationId:w()}),Z$=bt.extend({method:j("notifications/elicitation/complete"),params:j$}),fi=Le.extend({action:ot(["accept","decline","cancel"]),content:Au(t=>t===null?void 0:t,$e(w(),_e([w(),le(),Ne(),ne(w())])).optional())}),D$=M({type:j("ref/resource"),uri:w()});var q$=M({type:j("ref/prompt"),name:w()}),L$=mt.extend({ref:_e([q$,D$]),argument:M({name:w(),value:w()}),context:M({arguments:$e(w(),w()).optional()}).optional()}),mi=qe.extend({method:j("completion/complete"),params:L$});function Nm(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function jm(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var F$=Le.extend({completion:Qe({values:ne(w()).max(100),total:Se(le().int()),hasMore:Se(Ne())})}),U$=M({uri:w().startsWith("file://"),name:w().optional(),_meta:$e(w(),we()).optional()}),V$=qe.extend({method:j("roots/list"),params:mt.optional()}),Xu=Le.extend({roots:ne(U$)}),H$=bt.extend({method:j("notifications/roots/list_changed"),params:xt.optional()}),JI=_e([Xs,Lu,mi,Ku,li,ui,ii,ai,ci,Vw,Ww,An,di,ei,ri,ni,si]),QI=_e([Qs,Ys,Fu,H$,Eo]),XI=_e([Js,Ju,Qu,fi,Xu,ti,oi,On]),YI=_e([Xs,x$,N$,V$,ei,ri,ni,si]),eO=_e([Qs,Ys,p$,Bw,Fw,u$,o$,Eo,Z$]),tO=_e([Js,Iw,F$,n$,Qw,Zw,Dw,Lw,pi,a$,ti,oi,On]),N=class t extends Error{constructor(e,r,n){super(`MCP error ${e}: ${r}`),this.code=e,this.data=n,this.name="McpError"}static fromError(e,r,n){if(e===D.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Cu(o.elicitations,r)}return new t(e,r,n)}},Cu=class extends N{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(D.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function xr(t){return t==="completed"||t==="failed"||t==="cancelled"}var Dm=Symbol("Let zodToJsonSchema decide on which parser to use");var Zm={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",target:"jsonSchema7",strictUnions:!1,definitions:{},errorMessages:!1,markdownDescription:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref",openAiAnyTypeName:"OpenAiAnyType"},qm=t=>typeof t=="string"?{...Zm,name:t}:{...Zm,...t};var Lm=t=>{let e=qm(t),r=e.name!==void 0?[...e.basePath,e.definitionPath,e.name]:e.basePath;return{...e,flags:{hasReferencedOpenAiAnyType:!1},currentPath:r,propertyPath:void 0,seen:new Map(Object.entries(e.definitions).map(([n,o])=>[o._def,{def:o._def,path:[...e.basePath,e.definitionPath,n],jsonSchema:void 0}]))}};function Yu(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function oe(t,e,r,n,o){t[e]=r,Yu(t,e,n,o)}var hi=(t,e)=>{let r=0;for(;r<t.length&&r<e.length&&t[r]===e[r];r++);return[(t.length-r).toString(),...e.slice(r)].join("/")};function ke(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?hi(e,t.currentPath):e.join("/")}}function Fm(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==T.ZodAny&&(r.items=W(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&oe(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&oe(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(oe(r,"minItems",t.exactLength.value,t.exactLength.message,e),oe(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}function Um(t,e){let r={type:"integer",format:"int64"};if(!t.checks)return r;for(let n of t.checks)switch(n.kind){case"min":e.target==="jsonSchema7"?n.inclusive?oe(r,"minimum",n.value,n.message,e):oe(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),oe(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?oe(r,"maximum",n.value,n.message,e):oe(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),oe(r,"maximum",n.value,n.message,e));break;case"multipleOf":oe(r,"multipleOf",n.value,n.message,e);break}return r}function Vm(){return{type:"boolean"}}function gi(t,e){return W(t.type._def,e)}var Hm=(t,e)=>W(t.innerType._def,e);function el(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>el(t,e,o))};switch(n){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return W$(t,e)}}var W$=(t,e)=>{let r={type:"integer",format:"unix-time"};if(e.target==="openApi3")return r;for(let n of t.checks)switch(n.kind){case"min":oe(r,"minimum",n.value,n.message,e);break;case"max":oe(r,"maximum",n.value,n.message,e);break}return r};function Wm(t,e){return{...W(t.innerType._def,e),default:t.defaultValue()}}function Gm(t,e){return e.effectStrategy==="input"?W(t.schema._def,e):ke(e)}function Bm(t){return{type:"string",enum:Array.from(t.values)}}var G$=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function Km(t,e){let r=[W(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),W(t.right._def,{...e,currentPath:[...e.currentPath,"allOf","1"]})].filter(s=>!!s),n=e.target==="jsonSchema2019-09"?{unevaluatedProperties:!1}:void 0,o=[];return r.forEach(s=>{if(G$(s))o.push(...s.allOf),s.unevaluatedProperties===void 0&&(n=void 0);else{let i=s;if("additionalProperties"in s&&s.additionalProperties===!1){let{additionalProperties:a,...c}=s;i=c}else n=void 0;o.push(i)}}),o.length?{allOf:o,...n}:void 0}function Jm(t,e){let r=typeof t.value;return r!=="bigint"&&r!=="number"&&r!=="boolean"&&r!=="string"?{type:Array.isArray(t.value)?"array":"object"}:e.target==="openApi3"?{type:r==="bigint"?"integer":r,enum:[t.value]}:{type:r==="bigint"?"integer":r,const:t.value}}var tl,Rt={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(tl===void 0&&(tl=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),tl),uuid:/^[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}$/,ipv4:/^(?:(?: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])$/,ipv4Cidr:/^(?:(?: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])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([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})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function yi(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":oe(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":oe(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"email":switch(e.emailStrategy){case"format:email":It(r,"email",n.message,e);break;case"format:idn-email":It(r,"idn-email",n.message,e);break;case"pattern:zod":Xe(r,Rt.email,n.message,e);break}break;case"url":It(r,"uri",n.message,e);break;case"uuid":It(r,"uuid",n.message,e);break;case"regex":Xe(r,n.regex,n.message,e);break;case"cuid":Xe(r,Rt.cuid,n.message,e);break;case"cuid2":Xe(r,Rt.cuid2,n.message,e);break;case"startsWith":Xe(r,RegExp(`^${rl(n.value,e)}`),n.message,e);break;case"endsWith":Xe(r,RegExp(`${rl(n.value,e)}$`),n.message,e);break;case"datetime":It(r,"date-time",n.message,e);break;case"date":It(r,"date",n.message,e);break;case"time":It(r,"time",n.message,e);break;case"duration":It(r,"duration",n.message,e);break;case"length":oe(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),oe(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{Xe(r,RegExp(rl(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&It(r,"ipv4",n.message,e),n.version!=="v4"&&It(r,"ipv6",n.message,e);break}case"base64url":Xe(r,Rt.base64url,n.message,e);break;case"jwt":Xe(r,Rt.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&Xe(r,Rt.ipv4Cidr,n.message,e),n.version!=="v4"&&Xe(r,Rt.ipv6Cidr,n.message,e);break}case"emoji":Xe(r,Rt.emoji(),n.message,e);break;case"ulid":{Xe(r,Rt.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{It(r,"binary",n.message,e);break}case"contentEncoding:base64":{oe(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{Xe(r,Rt.base64,n.message,e);break}}break}case"nanoid":Xe(r,Rt.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function rl(t,e){return e.patternStrategy==="escape"?K$(t):t}var B$=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function K$(t){let e="";for(let r=0;r<t.length;r++)B$.has(t[r])||(e+="\\"),e+=t[r];return e}function It(t,e,r,n){t.format||t.anyOf?.some(o=>o.format)?(t.anyOf||(t.anyOf=[]),t.format&&(t.anyOf.push({format:t.format,...t.errorMessage&&n.errorMessages&&{errorMessage:{format:t.errorMessage.format}}}),delete t.format,t.errorMessage&&(delete t.errorMessage.format,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.anyOf.push({format:e,...r&&n.errorMessages&&{errorMessage:{format:r}}})):oe(t,"format",e,r,n)}function Xe(t,e,r,n){t.pattern||t.allOf?.some(o=>o.pattern)?(t.allOf||(t.allOf=[]),t.pattern&&(t.allOf.push({pattern:t.pattern,...t.errorMessage&&n.errorMessages&&{errorMessage:{pattern:t.errorMessage.pattern}}}),delete t.pattern,t.errorMessage&&(delete t.errorMessage.pattern,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.allOf.push({pattern:Qm(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):oe(t,"pattern",Qm(e,n),r,n)}function Qm(t,e){if(!e.applyRegexFlags||!t.flags)return t.source;let r={i:t.flags.includes("i"),m:t.flags.includes("m"),s:t.flags.includes("s")},n=r.i?t.source.toLowerCase():t.source,o="",s=!1,i=!1,a=!1;for(let c=0;c<n.length;c++){if(s){o+=n[c],s=!1;continue}if(r.i){if(i){if(n[c].match(/[a-z]/)){a?(o+=n[c],o+=`${n[c-2]}-${n[c]}`.toUpperCase(),a=!1):n[c+1]==="-"&&n[c+2]?.match(/[a-z]/)?(o+=n[c],a=!0):o+=`${n[c]}${n[c].toUpperCase()}`;continue}}else if(n[c].match(/[a-z]/)){o+=`[${n[c]}${n[c].toUpperCase()}]`;continue}}if(r.m){if(n[c]==="^"){o+=`(^|(?<=[\r
37
37
  ]))`;continue}else if(n[c]==="$"){o+=`($|(?=[\r
38
38
  ]))`;continue}}if(r.s&&n[c]==="."){o+=i?`${n[c]}\r
39
39
  `:`[${n[c]}\r
40
- ]`;continue}o+=n[c],n[c]==="\\"?s=!0:i&&n[c]==="]"?i=!1:!i&&n[c]==="["&&(i=!0)}try{new RegExp(o)}catch{return console.warn(`Could not convert regex pattern at ${e.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),t.source}return o}function ci(t,e){if(e.target==="openAi"&&console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead."),e.target==="openApi3"&&t.keyType?._def.typeName===S.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:H(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??ke(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:H(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===S.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=ai(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===S.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===S.ZodBranded&&t.keyType._def.type._def.typeName===S.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=ii(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function Lm(t,e){if(e.mapStrategy==="record")return ci(t,e);let r=H(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||ke(e),n=H(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||ke(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function Fm(t){let e=t.values,n=Object.keys(t.values).filter(s=>typeof e[e[s]]!="number").map(s=>e[s]),o=Array.from(new Set(n.map(s=>typeof s)));return{type:o.length===1?o[0]==="string"?"string":"number":["string","number"],enum:n}}function Um(t){return t.target==="openAi"?void 0:{not:ke({...t,currentPath:[...t.currentPath,"not"]})}}function Vm(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var xo={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function Gm(t,e){if(e.target==="openApi3")return Hm(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in xo&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=xo[s._def.typeName];return i&&!o.includes(i)?[...o,i]:o},[]);return{type:n.length>1?n:n[0]}}else if(r.every(n=>n._def.typeName==="ZodLiteral"&&!n.description)){let n=r.reduce((o,s)=>{let i=typeof s._def.value;switch(i){case"string":case"number":case"boolean":return[...o,i];case"bigint":return[...o,"integer"];case"object":if(s._def.value===null)return[...o,"null"];case"symbol":case"undefined":case"function":default:return o}},[]);if(n.length===r.length){let o=n.filter((s,i,a)=>a.indexOf(s)===i);return{type:o.length>1?o:o[0],enum:r.reduce((s,i)=>s.includes(i._def.value)?s:[...s,i._def.value],[])}}}else if(r.every(n=>n._def.typeName==="ZodEnum"))return{type:"string",enum:r.reduce((n,o)=>[...n,...o._def.values.filter(s=>!n.includes(s))],[])};return Hm(t,e)}var Hm=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((n,o)=>H(n._def,{...e,currentPath:[...e.currentPath,"anyOf",`${o}`]})).filter(n=>!!n&&(!e.strictUnions||typeof n=="object"&&Object.keys(n).length>0));return r.length?{anyOf:r}:void 0};function Wm(t,e){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(t.innerType._def.typeName)&&(!t.innerType._def.checks||!t.innerType._def.checks.length))return e.target==="openApi3"?{type:xo[t.innerType._def.typeName],nullable:!0}:{type:[xo[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=H(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=H(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function Bm(t,e){let r={type:"number"};if(!t.checks)return r;for(let n of t.checks)switch(n.kind){case"int":r.type="integer",Uu(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?oe(r,"minimum",n.value,n.message,e):oe(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),oe(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?oe(r,"maximum",n.value,n.message,e):oe(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),oe(r,"maximum",n.value,n.message,e));break;case"multipleOf":oe(r,"multipleOf",n.value,n.message,e);break}return r}function Km(t,e){let r=e.target==="openAi",n={type:"object",properties:{}},o=[],s=t.shape();for(let a in s){let c=s[a];if(c===void 0||c._def===void 0)continue;let u=q$(c);u&&r&&(c._def.typeName==="ZodOptional"&&(c=c._def.innerType),c.isNullable()||(c=c.nullable()),u=!1);let l=H(c._def,{...e,currentPath:[...e.currentPath,"properties",a],propertyPath:[...e.currentPath,"properties",a]});l!==void 0&&(n.properties[a]=l,u||o.push(a))}o.length&&(n.required=o);let i=D$(t,e);return i!==void 0&&(n.additionalProperties=i),n}function D$(t,e){if(t.catchall._def.typeName!=="ZodNever")return H(t.catchall._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]});switch(t.unknownKeys){case"passthrough":return e.allowedAdditionalProperties;case"strict":return e.rejectedAdditionalProperties;case"strip":return e.removeAdditionalStrategy==="strict"?e.allowedAdditionalProperties:e.rejectedAdditionalProperties}}function q$(t){try{return t.isOptional()}catch{return!0}}var Jm=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return H(t.innerType._def,e);let r=H(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:ke(e)},r]}:ke(e)};var Qm=(t,e)=>{if(e.pipeStrategy==="input")return H(t.in._def,e);if(e.pipeStrategy==="output")return H(t.out._def,e);let r=H(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),n=H(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(o=>o!==void 0)}};function Xm(t,e){return H(t.type._def,e)}function Ym(t,e){let n={type:"array",uniqueItems:!0,items:H(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&oe(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&oe(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}function eh(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,n)=>H(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:H(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,n)=>H(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}function th(t){return{not:ke(t)}}function rh(t){return ke(t)}var nh=(t,e)=>H(t.innerType._def,e);var oh=(t,e,r)=>{switch(e){case S.ZodString:return ai(t,r);case S.ZodNumber:return Bm(t,r);case S.ZodObject:return Km(t,r);case S.ZodBigInt:return Om(t,r);case S.ZodBoolean:return Mm();case S.ZodDate:return Vu(t,r);case S.ZodUndefined:return th(r);case S.ZodNull:return Vm(r);case S.ZodArray:return Im(t,r);case S.ZodUnion:case S.ZodDiscriminatedUnion:return Gm(t,r);case S.ZodIntersection:return Zm(t,r);case S.ZodTuple:return eh(t,r);case S.ZodRecord:return ci(t,r);case S.ZodLiteral:return Dm(t,r);case S.ZodEnum:return jm(t);case S.ZodNativeEnum:return Fm(t);case S.ZodNullable:return Wm(t,r);case S.ZodOptional:return Jm(t,r);case S.ZodMap:return Lm(t,r);case S.ZodSet:return Ym(t,r);case S.ZodLazy:return()=>t.getter()._def;case S.ZodPromise:return Xm(t,r);case S.ZodNaN:case S.ZodNever:return Um(r);case S.ZodEffects:return Nm(t,r);case S.ZodAny:return ke(r);case S.ZodUnknown:return rh(r);case S.ZodDefault:return Cm(t,r);case S.ZodBranded:return ii(t,r);case S.ZodReadonly:return nh(t,r);case S.ZodCatch:return Am(t,r);case S.ZodPipeline:return Qm(t,r);case S.ZodFunction:case S.ZodVoid:case S.ZodSymbol:return;default:return(n=>{})(e)}};function H(t,e,r=!1){let n=e.seen.get(t);if(e.override){let a=e.override?.(t,e,n,r);if(a!==Em)return a}if(n&&!r){let a=L$(n,e);if(a!==void 0)return a}let o={def:t,path:e.currentPath,jsonSchema:void 0};e.seen.set(t,o);let s=oh(t,t.typeName,e),i=typeof s=="function"?H(s(),e):s;if(i&&F$(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var L$=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:si(e.currentPath,t.path)};case"none":case"seen":return t.path.length<e.currentPath.length&&t.path.every((r,n)=>e.currentPath[n]===r)?(console.warn(`Recursive reference detected at ${e.currentPath.join("/")}! Defaulting to any`),ke(e)):e.$refStrategy==="seen"?ke(e):void 0}},F$=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var Wu=(t,e)=>{let r=Rm(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((c,[u,l])=>({...c,[u]:H(l._def,{...r,currentPath:[...r.basePath,r.definitionPath,u]},!0)??ke(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=H(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??ke(r),i=typeof e=="object"&&e.name!==void 0&&e.nameStrategy==="title"?e.name:void 0;i!==void 0&&(s.title=i),r.flags.hasReferencedOpenAiAnyType&&(n||(n={}),n[r.openAiAnyTypeName]||(n[r.openAiAnyTypeName]={type:["string","number","integer","boolean","array","null"],items:{$ref:r.$refStrategy==="relative"?"1":[...r.basePath,r.definitionPath,r.openAiAnyTypeName].join("/")}}));let a=o===void 0?n?{...s,[r.definitionPath]:n}:s:{$ref:[...r.$refStrategy==="relative"?[]:r.basePath,r.definitionPath,o].join("/"),[r.definitionPath]:{...n,[o]:s}};return r.target==="jsonSchema7"?a.$schema="http://json-schema.org/draft-07/schema#":(r.target==="jsonSchema2019-09"||r.target==="openAi")&&(a.$schema="https://json-schema.org/draft/2019-09/schema#"),r.target==="openAi"&&("anyOf"in a||"oneOf"in a||"allOf"in a||"type"in a&&Array.isArray(a.type))&&console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property."),a};function U$(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function Bu(t,e){return pt(t)?mu(t,{target:U$(e?.target),io:e?.pipeStrategy??"input"}):Wu(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function Ku(t){let r=ar(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=As(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function Ju(t,e){let r=ir(t,e);if(!r.success)throw r.error;return r.data}var V$=6e4,ui=class{constructor(e){this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(Ls,r=>{this._oncancel(r)}),this.setNotificationHandler(Us,r=>{this._onprogress(r)}),this.setRequestHandler(Fs,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(Vs,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new N(L.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(Gs,async(r,n)=>{let o=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,u=c.id,l=this._requestResolvers.get(u);if(l)if(this._requestResolvers.delete(u),a.type==="response")l(c);else{let d=c,p=new N(d.error.code,d.error.message,d.error.data);l(p)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${u}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let i=await this._taskStore.getTask(s,n.sessionId);if(!i)throw new N(L.InvalidParams,`Task not found: ${s}`);if(!ur(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(ur(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[cr]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(Ws,async(r,n)=>{try{let{tasks:o,nextCursor:s}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:o,nextCursor:s,_meta:{}}}catch(o){throw new N(L.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(Ks,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new N(L.InvalidParams,`Task not found: ${r.params.taskId}`);if(ur(o.status))throw new N(L.InvalidParams,`Cannot cancel task in terminal status: ${o.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new N(L.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof N?o:new N(L.InvalidRequest,`Failed to cancel task: ${o instanceof Error?o.message:String(o)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,o,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(o,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:o})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),N.fromError(L.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(e){let r=this._timeoutInfo.get(e);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=s=>{n?.(s),this._onerror(s)};let o=this._transport?.onmessage;this._transport.onmessage=(s,i)=>{o?.(s,i),po(s)||gm(s)?this._onresponse(s):Eu(s)?this._onrequest(s,i):hm(s)?this._onnotification(s):this._onerror(new Error(`Unknown message type: ${JSON.stringify(s)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=N.fromError(L.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of e.values())n(r)}_onerror(e){this.onerror?.(e)}_onnotification(e){let r=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(e)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(e,r){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,o=this._transport,s=e.params?._meta?.[cr]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:L.MethodNotFound,message:"Method not found"}};s&&this._taskMessageQueue?this._enqueueTaskMessage(s,{type:"error",message:l,timestamp:Date.now()},o?.sessionId).catch(d=>this._onerror(new Error(`Failed to enqueue error response: ${d}`))):o?.send(l).catch(d=>this._onerror(new Error(`Failed to send an error response: ${d}`)));return}let i=new AbortController;this._requestHandlerAbortControllers.set(e.id,i);let a=pm(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,o?.sessionId):void 0,u={signal:i.signal,sessionId:o?.sessionId,_meta:e.params?._meta,sendNotification:async l=>{if(i.signal.aborted)return;let d={relatedRequestId:e.id};s&&(d.relatedTask={taskId:s}),await this.notification(l,d)},sendRequest:async(l,d,p)=>{if(i.signal.aborted)throw new N(L.ConnectionClosed,"Request was cancelled");let m={...p,relatedRequestId:e.id};s&&!m.relatedTask&&(m.relatedTask={taskId:s});let f=m.relatedTask?.taskId??s;return f&&c&&await c.updateTaskStatus(f,"input_required"),await this.request(l,d,m)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:s,taskStore:c,taskRequestedTtl:a?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{a&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,u)).then(async l=>{if(i.signal.aborted)return;let d={result:l,jsonrpc:"2.0",id:e.id};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"response",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)},async l=>{if(i.signal.aborted)return;let d={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(l.code)?l.code:L.InternalError,message:l.message??"Internal error",...l.data!==void 0&&{data:l.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)}).catch(l=>this._onerror(new Error(`Failed to send response: ${l}`))).finally(()=>{this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:r,...n}=e.params,o=Number(r),s=this._progressHandlers.get(o);if(!s){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let i=this._responseHandlers.get(o),a=this._timeoutInfo.get(o);if(a&&i&&a.resetTimeoutOnProgress)try{this._resetTimeout(o)}catch(c){this._responseHandlers.delete(o),this._progressHandlers.delete(o),this._cleanupTimeout(o),i(c);return}s(n)}_onresponse(e){let r=Number(e.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),po(e))n(e);else{let i=new N(e.error.code,e.error.message,e.error.data);n(i)}return}let o=this._responseHandlers.get(r);if(o===void 0){this._onerror(new Error(`Received a response for an unknown message ID: ${JSON.stringify(e)}`));return}this._responseHandlers.delete(r),this._cleanupTimeout(r);let s=!1;if(po(e)&&e.result&&typeof e.result=="object"){let i=e.result;if(i.task&&typeof i.task=="object"){let a=i.task;typeof a.taskId=="string"&&(s=!0,this._taskProgressTokens.set(a.taskId,r))}}if(s||this._progressHandlers.delete(r),po(e))o(e);else{let i=N.fromError(e.error.code,e.error.message,e.error.data);o(i)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,r,n){let{task:o}=n??{};if(!o){try{yield{type:"result",result:await this.request(e,r,n)}}catch(i){yield{type:"error",error:i instanceof N?i:new N(L.InternalError,String(i))}}return}let s;try{let i=await this.request(e,wn,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new N(L.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},ur(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new N(L.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new N(L.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),n?.signal?.throwIfAborted()}}catch(i){yield{type:"error",error:i instanceof N?i:new N(L.InternalError,String(i))}}}request(e,r,n){let{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i,task:a,relatedTask:c}=n??{};return new Promise((u,l)=>{let d=v=>{l(v)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),a&&this.assertTaskCapability(e.method)}catch(v){d(v);return}n?.signal?.throwIfAborted();let p=this._requestMessageId++,m={...e,jsonrpc:"2.0",id:p};n?.onprogress&&(this._progressHandlers.set(p,n.onprogress),m.params={...e.params,_meta:{...e.params?._meta||{},progressToken:p}}),a&&(m.params={...m.params,task:a}),c&&(m.params={...m.params,_meta:{...m.params?._meta||{},[cr]:c}});let f=v=>{this._responseHandlers.delete(p),this._progressHandlers.delete(p),this._cleanupTimeout(p),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:p,reason:String(v)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(b=>this._onerror(new Error(`Failed to send cancellation: ${b}`)));let x=v instanceof N?v:new N(L.RequestTimeout,String(v));l(x)};this._responseHandlers.set(p,v=>{if(!n?.signal?.aborted){if(v instanceof Error)return l(v);try{let x=ir(r,v.result);x.success?u(x.data):l(x.error)}catch(x){l(x)}}}),n?.signal?.addEventListener("abort",()=>{f(n?.signal?.reason)});let g=n?.timeout??V$,h=()=>f(N.fromError(L.RequestTimeout,"Request timed out",{timeout:g}));this._setupTimeout(p,g,n?.maxTotalTimeout,h,n?.resetTimeoutOnProgress??!1);let y=c?.taskId;if(y){let v=x=>{let b=this._responseHandlers.get(p);b?b(x):this._onerror(new Error(`Response handler missing for side-channeled request ${p}`))};this._requestResolvers.set(p,v),this._enqueueTaskMessage(y,{type:"request",message:m,timestamp:Date.now()}).catch(x=>{this._cleanupTimeout(p),l(x)})}else this._transport.send(m,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(v=>{this._cleanupTimeout(p),l(v)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},Hs,r)}async getTaskResult(e,r,n){return this.request({method:"tasks/result",params:e},r,n)}async listTasks(e,r){return this.request({method:"tasks/list",params:e},Bs,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},vm,r)}async notification(e,r){if(!this._transport)throw new Error("Not connected");this.assertNotificationCapability(e.method);let n=r?.relatedTask?.taskId;if(n){let a={...e,jsonrpc:"2.0",params:{...e.params,_meta:{...e.params?._meta||{},[cr]:r.relatedTask}}};await this._enqueueTaskMessage(n,{type:"notification",message:a,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(e.method)&&!e.params&&!r?.relatedRequestId&&!r?.relatedTask){if(this._pendingDebouncedNotifications.has(e.method))return;this._pendingDebouncedNotifications.add(e.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(e.method),!this._transport)return;let a={...e,jsonrpc:"2.0"};r?.relatedTask&&(a={...a,params:{...a.params,_meta:{...a.params?._meta||{},[cr]:r.relatedTask}}}),this._transport?.send(a,r).catch(c=>this._onerror(c))});return}let i={...e,jsonrpc:"2.0"};r?.relatedTask&&(i={...i,params:{...i.params,_meta:{...i.params?._meta||{},[cr]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=Ku(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=Ju(e,o);return Promise.resolve(r(i,s))})}removeRequestHandler(e){this._requestHandlers.delete(e)}assertCanSetRequestHandler(e){if(this._requestHandlers.has(e))throw new Error(`A request handler for ${e} already exists, which would be overridden`)}setNotificationHandler(e,r){let n=Ku(e);this._notificationHandlers.set(n,o=>{let s=Ju(e,o);return Promise.resolve(r(s))})}removeNotificationHandler(e){this._notificationHandlers.delete(e)}_cleanupTaskProgressHandler(e){let r=this._taskProgressTokens.get(e);r!==void 0&&(this._progressHandlers.delete(r),this._taskProgressTokens.delete(e))}async _enqueueTaskMessage(e,r,n){if(!this._taskStore||!this._taskMessageQueue)throw new Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let o=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(e,r,n,o)}async _clearTaskQueue(e,r){if(this._taskMessageQueue){let n=await this._taskMessageQueue.dequeueAll(e,r);for(let o of n)if(o.type==="request"&&Eu(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new N(L.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(s)):this._onerror(new Error(`Resolver missing for request ${s} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(e);o?.pollInterval&&(n=o.pollInterval)}catch{}return new Promise((o,s)=>{if(r.aborted){s(new N(L.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new N(L.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async o=>{if(!e)throw new Error("No request provided");return await n.createTask(o,e.id,{method:e.method,params:e.params},r)},getTask:async o=>{let s=await n.getTask(o,r);if(!s)throw new N(L.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(o,s,i)=>{await n.storeTaskResult(o,s,i,r);let a=await n.getTask(o,r);if(a){let c=yo.parse({method:"notifications/tasks/status",params:a});await this.notification(c),ur(a.status)&&this._cleanupTaskProgressHandler(o)}},getTaskResult:o=>n.getTaskResult(o,r),updateTaskStatus:async(o,s,i)=>{let a=await n.getTask(o,r);if(!a)throw new N(L.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(ur(a.status))throw new N(L.InvalidParams,`Cannot update task "${o}" from terminal status "${a.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(o,s,i,r);let c=await n.getTask(o,r);if(c){let u=yo.parse({method:"notifications/tasks/status",params:c});await this.notification(u),ur(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function sh(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function ih(t,e){let r={...t};for(let n in e){let o=n,s=e[o];if(s===void 0)continue;let i=r[o];sh(i)&&sh(s)?r[o]={...i,...s}:r[o]=s}return r}var Gy=Gn(Cd(),1),Wy=Gn(Hy(),1);function AE(){let t=new Gy.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,Wy.default)(t),t}var Gi=class{constructor(e){this._ajv=e??AE()}getValidator(e){let r="$id"in e&&typeof e.$id=="string"?this._ajv.getSchema(e.$id)??this._ajv.compile(e):this._ajv.compile(e);return n=>r(n)?{valid:!0,data:n,errorMessage:void 0}:{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(r.errors)}}};var Wi=class{constructor(e){this._server=e}requestStream(e,r,n){return this._server.requestStream(e,r,n)}async getTask(e,r){return this._server.getTask({taskId:e},r)}async getTaskResult(e,r,n){return this._server.getTaskResult({taskId:e},r,n)}async listTasks(e,r){return this._server.listTasks(e?{cursor:e}:void 0,r)}async cancelTask(e,r){return this._server.cancelTask({taskId:e},r)}};function By(t,e,r){if(!t)throw new Error(`${r} does not support task creation (required for ${e})`);switch(e){case"tools/call":if(!t.tools?.call)throw new Error(`${r} does not support task creation for tools/call (required for ${e})`);break;default:break}}function Ky(t,e,r){if(!t)throw new Error(`${r} does not support task creation (required for ${e})`);switch(e){case"sampling/createMessage":if(!t.sampling?.createMessage)throw new Error(`${r} does not support task creation for sampling/createMessage (required for ${e})`);break;case"elicitation/create":if(!t.elicitation?.create)throw new Error(`${r} does not support task creation for elicitation/create (required for ${e})`);break;default:break}}var Bi=class extends ui{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(vo.options.map((n,o)=>[n,o])),this.isMessageIgnored=(n,o)=>{let s=this._loggingLevels.get(o);return s?this.LOG_LEVEL_SEVERITY.get(n)<this.LOG_LEVEL_SEVERITY.get(s):!1},this._capabilities=r?.capabilities??{},this._instructions=r?.instructions,this._jsonSchemaValidator=r?.jsonSchemaValidator??new Gi,this.setRequestHandler(Iu,n=>this._oninitialize(n)),this.setNotificationHandler(Ou,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(Du,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=vo.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new Wi(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=ih(this._capabilities,e)}setRequestHandler(e,r){let o=ar(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(pt(o)){let a=o;s=a._zod?.def?.value??a.value}else{let a=o;s=a._def?.value??a.value}if(typeof s!="string")throw new Error("Schema method literal must be a string");if(s==="tools/call"){let a=async(c,u)=>{let l=ir(kn,c);if(!l.success){let f=l.error instanceof Error?l.error.message:String(l.error);throw new N(L.InvalidParams,`Invalid tools/call request: ${f}`)}let{params:d}=l.data,p=await Promise.resolve(r(c,u));if(d.task){let f=ir(wn,p);if(!f.success){let g=f.error instanceof Error?f.error.message:String(f.error);throw new N(L.InvalidParams,`Invalid task creation result: ${g}`)}return f.data}let m=ir(ri,p);if(!m.success){let f=m.error instanceof Error?m.error.message:String(m.error);throw new N(L.InvalidParams,`Invalid tools/call result: ${f}`)}return m.data};return super.setRequestHandler(e,a)}return super.setRequestHandler(e,r)}assertCapabilityForMethod(e){switch(e){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${e})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${e})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${e})`);break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${e})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${e})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${e})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${e})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${e})`);break;case"ping":case"initialize":break}}assertTaskCapability(e){Ky(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&By(this._capabilities.tasks?.requests,e,"Server")}async _oninitialize(e){let r=e.params.protocolVersion;return this._clientCapabilities=e.params.capabilities,this._clientVersion=e.params.clientInfo,{protocolVersion:um.includes(r)?r:Tu,capabilities:this.getCapabilities(),serverInfo:this._serverInfo,...this._instructions&&{instructions:this._instructions}}}getClientCapabilities(){return this._clientCapabilities}getClientVersion(){return this._clientVersion}getCapabilities(){return this._capabilities}async ping(){return this.request({method:"ping"},qs)}async createMessage(e,r){if((e.tools||e.toolChoice)&&!this._clientCapabilities?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let n=e.messages[e.messages.length-1],o=Array.isArray(n.content)?n.content:[n.content],s=o.some(u=>u.type==="tool_result"),i=e.messages.length>1?e.messages[e.messages.length-2]:void 0,a=i?Array.isArray(i.content)?i.content:[i.content]:[],c=a.some(u=>u.type==="tool_use");if(s){if(o.some(u=>u.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!c)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(c){let u=new Set(a.filter(d=>d.type==="tool_use").map(d=>d.id)),l=new Set(o.filter(d=>d.type==="tool_result").map(d=>d.toolUseId));if(u.size!==l.size||![...u].every(d=>l.has(d)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return e.tools?this.request({method:"sampling/createMessage",params:e},Lu,r):this.request({method:"sampling/createMessage",params:e},qu,r)}async elicitInput(e,r){switch(e.mode??"form"){case"url":{if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support url elicitation.");let o=e;return this.request({method:"elicitation/create",params:o},ni,r)}case"form":{if(!this._clientCapabilities?.elicitation?.form)throw new Error("Client does not support form elicitation.");let o=e.mode==="form"?e:{...e,mode:"form"},s=await this.request({method:"elicitation/create",params:o},ni,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new N(L.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof N?i:new N(L.InternalError,`Error validating elicitation response: ${i instanceof Error?i.message:String(i)}`)}return s}}}createElicitationCompletionNotifier(e,r){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:e}},r)}async listRoots(e,r){return this.request({method:"roots/list",params:e},Fu,r)}async sendLoggingMessage(e,r){if(this._capabilities.logging&&!this.isMessageIgnored(e.level,r))return this.notification({method:"notifications/message",params:e})}async sendResourceUpdated(e){return this.notification({method:"notifications/resources/updated",params:e})}async sendResourceListChanged(){return this.notification({method:"notifications/resources/list_changed"})}async sendToolListChanged(){return this.notification({method:"notifications/tools/list_changed"})}async sendPromptListChanged(){return this.notification({method:"notifications/prompts/list_changed"})}};var Qy=Symbol.for("mcp.completable");function Ud(t){return!!t&&typeof t=="object"&&Qy in t}function Xy(t){return t[Qy]?.complete}var Jy;(function(t){t.Completable="McpCompletable"})(Jy||(Jy={}));var CE=/^[A-Za-z0-9._-]{1,128}$/;function NE(t){let e=[];if(t.length===0)return{isValid:!1,warnings:["Tool name cannot be empty"]};if(t.length>128)return{isValid:!1,warnings:[`Tool name exceeds maximum length of 128 characters (current: ${t.length})`]};if(t.includes(" ")&&e.push("Tool name contains spaces, which may cause parsing issues"),t.includes(",")&&e.push("Tool name contains commas, which may cause parsing issues"),(t.startsWith("-")||t.endsWith("-"))&&e.push("Tool name starts or ends with a dash, which may cause parsing issues in some contexts"),(t.startsWith(".")||t.endsWith("."))&&e.push("Tool name starts or ends with a dot, which may cause parsing issues in some contexts"),!CE.test(t)){let r=t.split("").filter(n=>!/[A-Za-z0-9._-]/.test(n)).filter((n,o,s)=>s.indexOf(n)===o);return e.push(`Tool name contains invalid characters: ${r.map(n=>`"${n}"`).join(", ")}`,"Allowed characters are: A-Z, a-z, 0-9, underscore (_), dash (-), and dot (.)"),{isValid:!1,warnings:e}}return{isValid:!0,warnings:e}}function jE(t,e){if(e.length>0){console.warn(`Tool name validation warning for "${t}":`);for(let r of e)console.warn(` - ${r}`);console.warn("Tool registration will proceed, but this may cause compatibility issues."),console.warn("Consider updating the tool name to conform to the MCP tool naming standard."),console.warn("See SEP: Specify Format for Tool Names (https://github.com/modelcontextprotocol/modelcontextprotocol/issues/986) for more details.")}}function Vd(t){let e=NE(t);return jE(t,e.warnings),e.isValid}var Ki=class{constructor(e){this._mcpServer=e}registerToolTask(e,r,n){let o={taskSupport:"required",...r.execution};if(o.taskSupport==="forbidden")throw new Error(`Cannot register task-based tool '${e}' with taskSupport 'forbidden'. Use registerTool() instead.`);return this._mcpServer._createRegisteredTool(e,r.title,r.description,r.inputSchema,r.outputSchema,r.annotations,o,r._meta,n)}};var Ji=class{constructor(e,r){this._registeredResources={},this._registeredResourceTemplates={},this._registeredTools={},this._registeredPrompts={},this._toolHandlersInitialized=!1,this._completionHandlerInitialized=!1,this._resourceHandlersInitialized=!1,this._promptHandlersInitialized=!1,this.server=new Bi(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new Ki(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(_r(ti)),this.server.assertCanSetRequestHandler(_r(kn)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(ti,()=>({tools:Object.entries(this._registeredTools).filter(([,e])=>e.enabled).map(([e,r])=>{let n={name:e,title:r.title,description:r.description,inputSchema:(()=>{let o=xn(r.inputSchema);return o?Bu(o,{strictUnions:!0,pipeStrategy:"input"}):ZE})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=xn(r.outputSchema);o&&(n.outputSchema=Bu(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(kn,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new N(L.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new N(L.InvalidParams,`Tool ${e.params.name} disabled`);let o=!!e.params.task,s=n.execution?.taskSupport,i="createTask"in n.handler;if((s==="required"||s==="optional")&&!i)throw new N(L.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new N(L.MethodNotFound,`Tool ${e.params.name} requires task augmentation (taskSupport: 'required')`);if(s==="optional"&&!o&&i)return await this.handleAutomaticTaskPolling(n,e,r);let a=await this.validateToolInput(n,e.params.arguments,e.params.name),c=await this.executeToolHandler(n,a,r);return o||await this.validateToolOutput(n,c,e.params.name),c}catch(n){if(n instanceof N&&n.code===L.UrlElicitationRequired)throw n;return this.createToolError(n instanceof Error?n.message:String(n))}}),this._toolHandlersInitialized=!0)}createToolError(e){return{content:[{type:"text",text:e}],isError:!0}}async validateToolInput(e,r,n){if(!e.inputSchema)return;let s=xn(e.inputSchema)??e.inputSchema,i=await Os(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=Ms(a);throw new N(L.InvalidParams,`Input validation error: Invalid arguments for tool ${n}: ${c}`)}return i.data}async validateToolOutput(e,r,n){if(!e.outputSchema||!("content"in r)||r.isError)return;if(!r.structuredContent)throw new N(L.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=xn(e.outputSchema),s=await Os(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=Ms(i);throw new N(L.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${a}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let i={...n,taskStore:n.taskStore};if(e.inputSchema){let a=o;return await Promise.resolve(a.createTask(r,i))}else{let a=o;return await Promise.resolve(a.createTask(i))}}if(e.inputSchema){let i=o;return await Promise.resolve(i(r,n))}else{let i=o;return await Promise.resolve(i(n))}}async handleAutomaticTaskPolling(e,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let o=await this.validateToolInput(e,r.params.arguments,r.params.name),s=e.handler,i={...n,taskStore:n.taskStore},a=o?await Promise.resolve(s.createTask(o,i)):await Promise.resolve(s.createTask(i)),c=a.task.taskId,u=a.task,l=u.pollInterval??5e3;for(;u.status!=="completed"&&u.status!=="failed"&&u.status!=="cancelled";){await new Promise(p=>setTimeout(p,l));let d=await n.taskStore.getTask(c);if(!d)throw new N(L.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(_r(oi)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(oi,async e=>{switch(e.params.ref.type){case"ref/prompt":return Sm(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return Tm(e),this.handleResourceCompletion(e,e.params.ref);default:throw new N(L.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new N(L.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new N(L.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return Jo;let s=ar(n.argsSchema)?.[e.params.argument.name];if(!Ud(s))return Jo;let i=Xy(s);if(!i)return Jo;let a=await i(e.params.argument.value,e.params.context);return e_(a)}async handleResourceCompletion(e,r){let n=Object.values(this._registeredResourceTemplates).find(i=>i.resourceTemplate.uriTemplate.toString()===r.uri);if(!n){if(this._registeredResources[r.uri])return Jo;throw new N(L.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return Jo;let s=await o(e.params.argument.value,e.params.context);return e_(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(_r(Js)),this.server.assertCanSetRequestHandler(_r(Qs)),this.server.assertCanSetRequestHandler(_r(Xs)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(Js,async(e,r)=>{let n=Object.entries(this._registeredResources).filter(([s,i])=>i.enabled).map(([s,i])=>({uri:s,name:i.name,...i.metadata})),o=[];for(let s of Object.values(this._registeredResourceTemplates)){if(!s.resourceTemplate.listCallback)continue;let i=await s.resourceTemplate.listCallback(r);for(let a of i.resources)o.push({...s.metadata,...a})}return{resources:[...n,...o]}}),this.server.setRequestHandler(Qs,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(Xs,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new N(L.InvalidParams,`Resource ${n} disabled`);return o.readCallback(n,r)}for(let s of Object.values(this._registeredResourceTemplates)){let i=s.resourceTemplate.uriTemplate.match(n.toString());if(i)return s.readCallback(n,i,r)}throw new N(L.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(_r(Ys)),this.server.assertCanSetRequestHandler(_r(ei)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(Ys,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?qE(r.argsSchema):void 0}))})),this.server.setRequestHandler(ei,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new N(L.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new N(L.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=xn(n.argsSchema),s=await Os(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=Ms(c);throw new N(L.InvalidParams,`Invalid arguments for prompt ${e.params.name}: ${u}`)}let i=s.data,a=n.callback;return await Promise.resolve(a(i,r))}else{let o=n.callback;return await Promise.resolve(o(r))}}),this._promptHandlersInitialized=!0)}resource(e,r,...n){let o;typeof n[0]=="object"&&(o=n.shift());let s=n[0];if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let i=this._createRegisteredResource(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let i=this._createRegisteredResourceTemplate(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}}registerResource(e,r,n,o){if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let s=this._createRegisteredResource(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let s=this._createRegisteredResourceTemplate(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}}_createRegisteredResource(e,r,n,o,s){let i={name:e,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({uri:null}),update:a=>{typeof a.uri<"u"&&a.uri!==n&&(delete this._registeredResources[n],a.uri&&(this._registeredResources[a.uri]=i)),typeof a.name<"u"&&(i.name=a.name),typeof a.title<"u"&&(i.title=a.title),typeof a.metadata<"u"&&(i.metadata=a.metadata),typeof a.callback<"u"&&(i.readCallback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendResourceListChanged()}};return this._registeredResources[n]=i,i}_createRegisteredResourceTemplate(e,r,n,o,s){let i={resourceTemplate:n,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:u=>{typeof u.name<"u"&&u.name!==e&&(delete this._registeredResourceTemplates[e],u.name&&(this._registeredResourceTemplates[u.name]=i)),typeof u.title<"u"&&(i.title=u.title),typeof u.template<"u"&&(i.resourceTemplate=u.template),typeof u.metadata<"u"&&(i.metadata=u.metadata),typeof u.callback<"u"&&(i.readCallback=u.callback),typeof u.enabled<"u"&&(i.enabled=u.enabled),this.sendResourceListChanged()}};this._registeredResourceTemplates[e]=i;let a=n.uriTemplate.variableNames;return Array.isArray(a)&&a.some(u=>!!n.completeCallback(u))&&this.setCompletionRequestHandler(),i}_createRegisteredPrompt(e,r,n,o,s){let i={title:r,description:n,argsSchema:o===void 0?void 0:Gr(o),callback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:a=>{typeof a.name<"u"&&a.name!==e&&(delete this._registeredPrompts[e],a.name&&(this._registeredPrompts[a.name]=i)),typeof a.title<"u"&&(i.title=a.title),typeof a.description<"u"&&(i.description=a.description),typeof a.argsSchema<"u"&&(i.argsSchema=Gr(a.argsSchema)),typeof a.callback<"u"&&(i.callback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendPromptListChanged()}};return this._registeredPrompts[e]=i,o&&Object.values(o).some(c=>{let u=c instanceof Qe?c._def?.innerType:c;return Ud(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){Vd(e);let l={title:r,description:n,inputSchema:Yy(o),outputSchema:Yy(s),annotations:i,execution:a,_meta:c,handler:u,enabled:!0,disable:()=>l.update({enabled:!1}),enable:()=>l.update({enabled:!0}),remove:()=>l.update({name:null}),update:d=>{typeof d.name<"u"&&d.name!==e&&(typeof d.name=="string"&&Vd(d.name),delete this._registeredTools[e],d.name&&(this._registeredTools[d.name]=l)),typeof d.title<"u"&&(l.title=d.title),typeof d.description<"u"&&(l.description=d.description),typeof d.paramsSchema<"u"&&(l.inputSchema=Gr(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=Gr(d.outputSchema)),typeof d.callback<"u"&&(l.handler=d.callback),typeof d.annotations<"u"&&(l.annotations=d.annotations),typeof d._meta<"u"&&(l._meta=d._meta),typeof d.enabled<"u"&&(l.enabled=d.enabled),this.sendToolListChanged()}};return this._registeredTools[e]=l,this.setToolRequestHandlers(),this.sendToolListChanged(),l}tool(e,...r){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let n,o,s,i;if(typeof r[0]=="string"&&(n=r.shift()),r.length>1){let c=r[0];Hd(c)?(o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!Hd(r[0])&&(i=r.shift())):typeof c=="object"&&c!==null&&(i=r.shift())}let a=r[0];return this._createRegisteredTool(e,void 0,n,o,s,i,{taskSupport:"forbidden"},void 0,a)}registerTool(e,r,n){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let{title:o,description:s,inputSchema:i,outputSchema:a,annotations:c,_meta:u}=r;return this._createRegisteredTool(e,o,s,i,a,c,{taskSupport:"forbidden"},u,n)}prompt(e,...r){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let n;typeof r[0]=="string"&&(n=r.shift());let o;r.length>1&&(o=r.shift());let s=r[0],i=this._createRegisteredPrompt(e,void 0,n,o,s);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),i}registerPrompt(e,r,n){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let{title:o,description:s,argsSchema:i}=r,a=this._createRegisteredPrompt(e,o,s,i,n);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),a}isConnected(){return this.server.transport!==void 0}async sendLoggingMessage(e,r){return this.server.sendLoggingMessage(e,r)}sendResourceListChanged(){this.isConnected()&&this.server.sendResourceListChanged()}sendToolListChanged(){this.isConnected()&&this.server.sendToolListChanged()}sendPromptListChanged(){this.isConnected()&&this.server.sendPromptListChanged()}};var ZE={type:"object",properties:{}};function t_(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function DE(t){return"_def"in t||"_zod"in t||t_(t)}function Hd(t){return typeof t!="object"||t===null||DE(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(t_)}function Yy(t){if(t)return Hd(t)?Gr(t):t}function qE(t){let e=ar(t);return e?Object.entries(e).map(([r,n])=>{let o=qf(n),s=Lf(n);return{name:r,description:o,required:!s}}):[]}function _r(t){let r=ar(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=As(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function e_(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var Jo={completion:{values:[],hasMore:!1}};var Gd=Gn(require("node:process"),1);var Qi=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
41
- `);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),LE(r)}clear(){this._buffer=void 0}};function LE(t){return ym.parse(JSON.parse(t))}function r_(t){return JSON.stringify(t)+`
42
- `}var Xi=class{constructor(e=Gd.default.stdin,r=Gd.default.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new Qi,this._started=!1,this._ondata=n=>{this._readBuffer.append(n),this.processReadBuffer()},this._onerror=n=>{this.onerror?.(n)}}async start(){if(this._started)throw new Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){for(;;)try{let e=this._readBuffer.readMessage();if(e===null)break;this.onmessage?.(e)}catch(e){this.onerror?.(e)}}async close(){this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0&&this._stdin.pause(),this._readBuffer.clear(),this.onclose?.()}send(e){return new Promise(r=>{let n=r_(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};var vr={"#fef08a":"yellow","#fca5a5":"red","#93c5fd":"blue"};function Pt(t){return t==="answered"||t==="done"||t==="failed"||t==="wontfix"}function Qo(t){return t==="red"?"fix":t==="blue"?"question":"highlight"}function ot(t,e={}){let r=e.separator??"-",n=e.randomLength??6,o=Date.now().toString(36),s=Math.random().toString(36).slice(2,2+n).padEnd(n,"0");return`${t}${r}${o}${r}${s}`}var Wd=class extends Error{constructor(r,n,o){super(n);this.code=r;this.details=o;this.name="SharedError"}},Bd=class extends Wd{constructor(e,r){super("PARSE_JSON",`Failed to parse JSON in ${e}`,r),this.name="SharedJsonParseError"}};function n_(t,e){try{return JSON.parse(t)}catch(r){throw new Bd(e,{raw:t,cause:r instanceof Error?r.message:String(r)})}}function Re(t,e=120){return t.length>e?t.slice(0,e)+"...":t}function Kd(t){return JSON.parse(t.replace(/^\uFEFF/,""))}function Jd(t){return t==="red"?"fix":t==="blue"?"question":"important"}function Qd(t,e,r={}){let n=[],o=new Set,{floatingMemos:s=[]}=r;for(let i of e){let a=i.color.startsWith("#")?vr[i.color]||"red":i.color,c=Jd(a),u=a==="red"?"#fca5a5":a==="blue"?"#93c5fd":"#fef08a",l=i.section.trim(),d=t.findIndex((p,m)=>!o.has(m)&&p.color===u&&p.section.trim()===l);if(d>=0){o.add(d);let p=t[d];n.push({type:c,text:p.text,section:i.section||p.section||"",context:p.context||"",feedback:i.text})}else n.push({type:c,text:i.context||"",section:i.section||"",context:"",feedback:i.text})}for(let i=0;i<t.length;i++){if(o.has(i))continue;let a=t[i],c=vr[a.color]||"yellow";n.push({type:Jd(c),text:a.text,section:a.section||"",context:a.context||"",feedback:""})}for(let i of s)i.text.trim()&&n.push({type:Jd(i.color),text:"",section:"",context:"",feedback:i.text});return n}function Ve(t){return t.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/\n/g,"&#10;").replace(/-->/g,"--&#62;")}function Yd(t){return t.replace(/--&#62;/g,"-->").replace(/&#10;/g,`
43
- `).replace(/&quot;/g,'"').replace(/&amp;/g,"&")}function Rt(t){let e=5381;for(let r=0;r<t.length;r++)e=(e<<5)+e+t.charCodeAt(r)>>>0;return e.toString(16).padStart(8,"0").slice(0,8)}var FE=/^<!-- USER_MEMO\s+id="([^"]+)"(?:\s+color="([^"]+)")?(?:\s+status="([^"]+)")?(?:\s+anchorText="([^"]*)")?\s*:\s*(.*?)\s*-->$/,UE=/^<!-- USER_MEMO\s*$/,VE=/^-->$/,HE=/^<!-- GATE\s*$/,GE=/^-->$/,WE=/^<!-- PLAN_CURSOR\s*$/,BE=/^-->$/,KE=/^<!-- CHECKPOINT\s+id="([^"]+)"\s+time="([^"]+)"\s+note="([^"]*)"\s+fixes=(\d+)\s+questions=(\d+)\s+highlights=(\d+)\s+sections="([^"]*)" -->$/,JE=/^---\s*\n([\s\S]*?)\n---\s*\n/,QE=/^<!-- @memo\s+id="([^"]+)"(?:\s+color="([^"]+)")?(?:\s+date="([^"]+)")?\s*-->$/,XE=/^<!-- @\/memo -->$/,YE=/^<!--$/,eP=/MD Feedback/,tP=/^<!-- \/?(USER_FEEDBACK_NOTES|@\/?feedback-notes)\b.*-->$/,rP=/^<!-- REVIEW_RESPONSE\s+to="([^"]+)"\s*-->$/,nP=/^<!-- \/REVIEW_RESPONSE\s*-->$/,oP=/^<!-- MEMO_IMPL\s*$/,sP=/^-->$/,iP=/^<!-- MEMO_ARTIFACT\s*$/,aP=/^-->$/,cP=/^<!-- MEMO_DEPENDENCY\s+id="([^"]+)"\s+from="([^"]+)"\s+to="([^"]+)"\s+type="([^"]+)" -->$/,o_=/<!-- HIGHLIGHT_MARK color="([^"]*)" text="([^"]*)" anchor="([^"]*)" -->/g,uP=10;function Yi(t){return t.replace(/^(?:>\s*)+/,"").replace(/^#+\s*/,"").replace(/^(\s*)[-*+]\s+\[[ xX]\]\s+/,"$1").replace(/^(\s*)[-*+]\s+/,"$1").replace(/^(\s*)\d+[.)]\s+/,"$1").replace(/<\/?(?:strong|em|b|i|u|s|del|ins|mark|code|kbd|sub|sup|span|a)\b[^>]*>/gi,"").replace(/!\[([^\]]*)\]\([^)]*\)/g,"$1").replace(/\[([^\]]*)\]\([^)]*\)/g,"$1").replace(/\[([^\]]*)\]\[[^\]]*\]/g,"$1").replace(/~~([^~]+)~~/g,"$1").replace(/==([^=]+)==/g,"$1").replace(/``([^`]+)``/g,"$1").replace(/`([^`]+)`/g,"$1").replace(/\*{3}([^*]+)\*{3}/g,"$1").replace(/\*{2}([^*]+)\*{2}/g,"$1").replace(/(?<!\w)\*([^*]+)\*(?!\w)/g,"$1").replace(/_{2}([^_]+)_{2}/g,"$1").replace(/(?<!\w)_([^_]+)_(?!\w)/g,"$1").replace(/\[\^\w+\]/g,"").replace(/(?<!\$)\$(?!\$)([^$]+)\$(?!\$)/g,"$1").replace(/^\|\s*/,"").replace(/\s*\|$/,"").replace(/\\([[\](){}#*+\-.!|`~>_\\$^])/g,"$1").trim()}function Xo(t){let e={};for(let r of t){let n=r.trim().match(/^(\w+)="([^"]*)"$/);n&&(e[n[1]]=Yd(n[2]))}return e}function ze(t){let e="",r=t,n=r.match(JE);n&&(e=n[0],r=r.slice(n[0].length));let o=r.split(`
44
- `),s=[],i=[],a=[],c=[],u=[],l=[],d=[],p=[],m=null,f=null,g=new Set,h=0;for(;h<o.length;){let _=o[h],z=_.trim(),q=z.match(rP);if(q){f={id:`resp_${q[1]}`,to:q[1],bodyStartIdx:s.length,bodyEndIdx:-1},h++;continue}if(nP.test(z)){f&&(f.bodyEndIdx=s.length-1,a.push(f),f=null),h++;continue}let j=z.match(FE);if(j){if(g.has(j[1])){h++;continue}g.add(j[1]);let ee=j[4]?Yd(j[4]):Xd(s),P=i_(s),te=j[2]||"red",xe=j[3]||"open";i.push({id:j[1],type:Qo(te),status:xe,owner:"human",source:"generic",color:te,text:j[5].replace(/--\u200B>/g,"-->"),anchorText:ee||"",anchor:P>=0?`L${P+1}|${Rt(s[P]||"")}`:"",createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()}),h++;continue}if(UE.test(z)){let ee=[];for(h++;h<o.length&&!VE.test(o[h].trim());)ee.push(o[h]),h++;h++;let P=Xo(ee);if(P.id&&g.has(P.id))continue;P.id&&g.add(P.id);let te=P.anchorText||Xd(s)||"",xe=Yo(s,{id:P.id||"memo_parse_tmp",type:P.type||"fix",status:P.status||"open",owner:P.owner||"human",source:P.source||"generic",color:P.color||"red",text:P.text||"",anchorText:te,anchor:P.anchor||"",createdAt:P.createdAt||new Date().toISOString(),updatedAt:P.updatedAt||new Date().toISOString()}),$r=xe>=0?`L${xe+1}|${Rt(s[xe]||"")}`:P.anchor||"",is=xe>=0?s[xe].trim().slice(0,80):te;i.push({id:P.id||ot("memo"),type:P.type||Qo(P.color||"red"),status:P.status||"open",owner:P.owner||"human",source:P.source||"generic",color:P.color||"red",text:P.text||"",anchorText:is,anchor:$r,createdAt:P.createdAt||new Date().toISOString(),updatedAt:P.updatedAt||new Date().toISOString(),...P.rejectReason?{rejectReason:P.rejectReason}:{}});continue}if(HE.test(z)){let ee=[];for(h++;h<o.length&&!GE.test(o[h].trim());)ee.push(o[h]),h++;h++;let P=Xo(ee),te=P.override;p.push({id:P.id||ot("gate"),type:P.type||"custom",status:P.status||"blocked",blockedBy:P.blockedBy?P.blockedBy.split(",").map(xe=>xe.trim()).filter(Boolean):[],canProceedIf:P.canProceedIf||"",doneDefinition:P.doneDefinition||"",...te?{override:te}:{}});continue}if(WE.test(z)){let ee=[];for(h++;h<o.length&&!BE.test(o[h].trim());)ee.push(o[h]),h++;h++;let P=Xo(ee);m={taskId:P.taskId||"",step:P.step||"",nextAction:P.nextAction||"",lastSeenHash:P.lastSeenHash||"",updatedAt:P.updatedAt||new Date().toISOString()};continue}if(oP.test(z)){let ee=[];for(h++;h<o.length&&!sP.test(o[h].trim());)ee.push(o[h]),h++;h++;let P=Xo(ee),te=[];try{te=n_(P.operations||"[]","MEMO_IMPL.operations")}catch{}c.push({id:P.id||ot("impl",{separator:"_"}),memoId:P.memoId||"",status:P.status||"applied",operations:te,summary:P.summary||"",appliedAt:P.appliedAt||new Date().toISOString()});continue}if(iP.test(z)){let ee=[];for(h++;h<o.length&&!aP.test(o[h].trim());)ee.push(o[h]),h++;h++;let P=Xo(ee);u.push({id:P.id||ot("art",{separator:"_"}),memoId:P.memoId||"",files:P.files?P.files.split(",").map(te=>te.trim()).filter(Boolean):[],linkedAt:P.linkedAt||new Date().toISOString()});continue}let R=z.match(cP);if(R){l.push({id:R[1],from:R[2],to:R[3],type:R[4]}),h++;continue}let C=z.match(KE);if(C){d.push({id:C[1],timestamp:C[2],note:C[3],fixes:parseInt(C[4],10),questions:parseInt(C[5],10),highlights:parseInt(C[6],10),sectionsReviewed:C[7]?C[7].split(","):[]}),h++;continue}let F=z.match(QE);if(F){let ee=[],P=Xd(s),te=i_(s);for(h++;h<o.length&&!XE.test(o[h].trim());)ee.push(o[h]),h++;h++;let xe=ee.map($r=>$r.replace(/^<!--\s*/,"").replace(/\s*-->$/,"")).join(`
45
- `).trim();i.push({id:F[1],type:Qo(F[2]||"red"),status:"open",owner:"human",source:"generic",color:F[2]||"red",text:xe,anchorText:P||"",anchor:te>=0?`L${te+1}|${Rt(s[te]||"")}`:"",createdAt:F[3]||new Date().toISOString(),updatedAt:F[3]||new Date().toISOString()});continue}if(YE.test(z)&&h+1<o.length&&eP.test(o[h+1])){for(;h<o.length&&!o[h].includes("-->");)h++;h++;continue}if(tP.test(z)){h++;continue}s.push(_),h++}for(;s.length>0&&s[s.length-1].trim()==="";)s.pop();f&&(f.bodyEndIdx=s.length-1,a.push(f));let y=new Set(a.map(_=>_.to));for(let _ of i)_.status==="open"&&y.has(_.id)&&(_.status="needs_review");let v=_=>_.replace(/^#+\s*/,"").trim(),x=new Set;for(let _ of i.filter(z=>z.color==="red"||z.color==="blue"))x.add(`${_.color}|${v(_.anchorText)}`),_.text&&x.add(`${_.color}|${v(_.text)}`);o_.lastIndex=0;let b;for(;(b=o_.exec(r))!==null;){let _=_P(b[1]);if(_!=="red"&&_!=="blue")continue;let z=a_(b[2]).trim(),q=a_(b[3]).trim();if(!z&&!q)continue;let j=q?`${_}|${v(q)}`:"",R=z?`${_}|${v(z)}`:"";if(j&&x.has(j)||R&&x.has(R))continue;let C=q||z,F=C.slice(0,40),ee=Yi(F),P=F?s.findIndex(is=>is.includes(F)||Yi(is).includes(ee)):-1,te=P>=0?`L${P+1}|${Rt(s[P]||"")}`:"",xe=new Date().toISOString(),$r=`memo_recovered_${Rt(`${_}|${C}|${z}`)}`;g.has($r)||(g.add($r),i.push({id:$r,type:Qo(_),status:"open",owner:"human",source:"recovered-highlight",color:_,text:z,anchorText:C,anchor:te,createdAt:xe,updatedAt:xe}),j&&x.add(j),R&&x.add(R))}return{frontmatter:e,body:s.join(`
46
- `),memos:i,responses:a,impls:c,artifacts:u,dependencies:l,checkpoints:d,gates:p,cursor:m}}function Ut(t){let e=[];t.frontmatter&&e.push(t.frontmatter.trimEnd());let r=yP(t.body,t.memos,t.responses||[]);e.push(r);for(let n of t.impls||[])e.push(fP(n));for(let n of t.artifacts||[])e.push(mP(n));for(let n of t.dependencies||[])e.push(hP(n));for(let n of t.gates)e.push(lP(n));for(let n of t.checkpoints)e.push(pP(n));return t.cursor&&e.push(dP(t.cursor)),e.join(`
40
+ ]`;continue}o+=n[c],n[c]==="\\"?s=!0:i&&n[c]==="]"?i=!1:!i&&n[c]==="["&&(i=!0)}try{new RegExp(o)}catch{return console.warn(`Could not convert regex pattern at ${e.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),t.source}return o}function _i(t,e){if(e.target==="openAi"&&console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead."),e.target==="openApi3"&&t.keyType?._def.typeName===T.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:W(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??ke(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:W(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===T.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=yi(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===T.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===T.ZodBranded&&t.keyType._def.type._def.typeName===T.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=gi(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function Xm(t,e){if(e.mapStrategy==="record")return _i(t,e);let r=W(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||ke(e),n=W(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||ke(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function Ym(t){let e=t.values,n=Object.keys(t.values).filter(s=>typeof e[e[s]]!="number").map(s=>e[s]),o=Array.from(new Set(n.map(s=>typeof s)));return{type:o.length===1?o[0]==="string"?"string":"number":["string","number"],enum:n}}function eh(t){return t.target==="openAi"?void 0:{not:ke({...t,currentPath:[...t.currentPath,"not"]})}}function th(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Io={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function nh(t,e){if(e.target==="openApi3")return rh(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in Io&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=Io[s._def.typeName];return i&&!o.includes(i)?[...o,i]:o},[]);return{type:n.length>1?n:n[0]}}else if(r.every(n=>n._def.typeName==="ZodLiteral"&&!n.description)){let n=r.reduce((o,s)=>{let i=typeof s._def.value;switch(i){case"string":case"number":case"boolean":return[...o,i];case"bigint":return[...o,"integer"];case"object":if(s._def.value===null)return[...o,"null"];case"symbol":case"undefined":case"function":default:return o}},[]);if(n.length===r.length){let o=n.filter((s,i,a)=>a.indexOf(s)===i);return{type:o.length>1?o:o[0],enum:r.reduce((s,i)=>s.includes(i._def.value)?s:[...s,i._def.value],[])}}}else if(r.every(n=>n._def.typeName==="ZodEnum"))return{type:"string",enum:r.reduce((n,o)=>[...n,...o._def.values.filter(s=>!n.includes(s))],[])};return rh(t,e)}var rh=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((n,o)=>W(n._def,{...e,currentPath:[...e.currentPath,"anyOf",`${o}`]})).filter(n=>!!n&&(!e.strictUnions||typeof n=="object"&&Object.keys(n).length>0));return r.length?{anyOf:r}:void 0};function oh(t,e){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(t.innerType._def.typeName)&&(!t.innerType._def.checks||!t.innerType._def.checks.length))return e.target==="openApi3"?{type:Io[t.innerType._def.typeName],nullable:!0}:{type:[Io[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=W(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=W(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function sh(t,e){let r={type:"number"};if(!t.checks)return r;for(let n of t.checks)switch(n.kind){case"int":r.type="integer",Yu(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?oe(r,"minimum",n.value,n.message,e):oe(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),oe(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?oe(r,"maximum",n.value,n.message,e):oe(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),oe(r,"maximum",n.value,n.message,e));break;case"multipleOf":oe(r,"multipleOf",n.value,n.message,e);break}return r}function ih(t,e){let r=e.target==="openAi",n={type:"object",properties:{}},o=[],s=t.shape();for(let a in s){let c=s[a];if(c===void 0||c._def===void 0)continue;let u=Q$(c);u&&r&&(c._def.typeName==="ZodOptional"&&(c=c._def.innerType),c.isNullable()||(c=c.nullable()),u=!1);let l=W(c._def,{...e,currentPath:[...e.currentPath,"properties",a],propertyPath:[...e.currentPath,"properties",a]});l!==void 0&&(n.properties[a]=l,u||o.push(a))}o.length&&(n.required=o);let i=J$(t,e);return i!==void 0&&(n.additionalProperties=i),n}function J$(t,e){if(t.catchall._def.typeName!=="ZodNever")return W(t.catchall._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]});switch(t.unknownKeys){case"passthrough":return e.allowedAdditionalProperties;case"strict":return e.rejectedAdditionalProperties;case"strip":return e.removeAdditionalStrategy==="strict"?e.allowedAdditionalProperties:e.rejectedAdditionalProperties}}function Q$(t){try{return t.isOptional()}catch{return!0}}var ah=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return W(t.innerType._def,e);let r=W(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:ke(e)},r]}:ke(e)};var ch=(t,e)=>{if(e.pipeStrategy==="input")return W(t.in._def,e);if(e.pipeStrategy==="output")return W(t.out._def,e);let r=W(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),n=W(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(o=>o!==void 0)}};function uh(t,e){return W(t.type._def,e)}function lh(t,e){let n={type:"array",uniqueItems:!0,items:W(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&oe(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&oe(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}function dh(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,n)=>W(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:W(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,n)=>W(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}function ph(t){return{not:ke(t)}}function fh(t){return ke(t)}var mh=(t,e)=>W(t.innerType._def,e);var hh=(t,e,r)=>{switch(e){case T.ZodString:return yi(t,r);case T.ZodNumber:return sh(t,r);case T.ZodObject:return ih(t,r);case T.ZodBigInt:return Um(t,r);case T.ZodBoolean:return Vm();case T.ZodDate:return el(t,r);case T.ZodUndefined:return ph(r);case T.ZodNull:return th(r);case T.ZodArray:return Fm(t,r);case T.ZodUnion:case T.ZodDiscriminatedUnion:return nh(t,r);case T.ZodIntersection:return Km(t,r);case T.ZodTuple:return dh(t,r);case T.ZodRecord:return _i(t,r);case T.ZodLiteral:return Jm(t,r);case T.ZodEnum:return Bm(t);case T.ZodNativeEnum:return Ym(t);case T.ZodNullable:return oh(t,r);case T.ZodOptional:return ah(t,r);case T.ZodMap:return Xm(t,r);case T.ZodSet:return lh(t,r);case T.ZodLazy:return()=>t.getter()._def;case T.ZodPromise:return uh(t,r);case T.ZodNaN:case T.ZodNever:return eh(r);case T.ZodEffects:return Gm(t,r);case T.ZodAny:return ke(r);case T.ZodUnknown:return fh(r);case T.ZodDefault:return Wm(t,r);case T.ZodBranded:return gi(t,r);case T.ZodReadonly:return mh(t,r);case T.ZodCatch:return Hm(t,r);case T.ZodPipeline:return ch(t,r);case T.ZodFunction:case T.ZodVoid:case T.ZodSymbol:return;default:return(n=>{})(e)}};function W(t,e,r=!1){let n=e.seen.get(t);if(e.override){let a=e.override?.(t,e,n,r);if(a!==Dm)return a}if(n&&!r){let a=X$(n,e);if(a!==void 0)return a}let o={def:t,path:e.currentPath,jsonSchema:void 0};e.seen.set(t,o);let s=hh(t,t.typeName,e),i=typeof s=="function"?W(s(),e):s;if(i&&Y$(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var X$=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:hi(e.currentPath,t.path)};case"none":case"seen":return t.path.length<e.currentPath.length&&t.path.every((r,n)=>e.currentPath[n]===r)?(console.warn(`Recursive reference detected at ${e.currentPath.join("/")}! Defaulting to any`),ke(e)):e.$refStrategy==="seen"?ke(e):void 0}},Y$=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var nl=(t,e)=>{let r=Lm(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((c,[u,l])=>({...c,[u]:W(l._def,{...r,currentPath:[...r.basePath,r.definitionPath,u]},!0)??ke(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=W(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??ke(r),i=typeof e=="object"&&e.name!==void 0&&e.nameStrategy==="title"?e.name:void 0;i!==void 0&&(s.title=i),r.flags.hasReferencedOpenAiAnyType&&(n||(n={}),n[r.openAiAnyTypeName]||(n[r.openAiAnyTypeName]={type:["string","number","integer","boolean","array","null"],items:{$ref:r.$refStrategy==="relative"?"1":[...r.basePath,r.definitionPath,r.openAiAnyTypeName].join("/")}}));let a=o===void 0?n?{...s,[r.definitionPath]:n}:s:{$ref:[...r.$refStrategy==="relative"?[]:r.basePath,r.definitionPath,o].join("/"),[r.definitionPath]:{...n,[o]:s}};return r.target==="jsonSchema7"?a.$schema="http://json-schema.org/draft-07/schema#":(r.target==="jsonSchema2019-09"||r.target==="openAi")&&(a.$schema="https://json-schema.org/draft/2019-09/schema#"),r.target==="openAi"&&("anyOf"in a||"oneOf"in a||"allOf"in a||"type"in a&&Array.isArray(a.type))&&console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property."),a};function ek(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function ol(t,e){return vt(t)?ku(t,{target:ek(e?.target),io:e?.pipeStrategy??"input"}):nl(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function sl(t){let r=_r(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Vs(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function il(t,e){let r=yr(t,e);if(!r.success)throw r.error;return r.data}var tk=6e4,vi=class{constructor(e){this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(Qs,r=>{this._oncancel(r)}),this.setNotificationHandler(Ys,r=>{this._onprogress(r)}),this.setRequestHandler(Xs,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(ei,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new N(D.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(ri,async(r,n)=>{let o=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,u=c.id,l=this._requestResolvers.get(u);if(l)if(this._requestResolvers.delete(u),a.type==="response")l(c);else{let d=c,p=new N(d.error.code,d.error.message,d.error.data);l(p)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${u}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let i=await this._taskStore.getTask(s,n.sessionId);if(!i)throw new N(D.InvalidParams,`Task not found: ${s}`);if(!xr(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(xr(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[vr]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(ni,async(r,n)=>{try{let{tasks:o,nextCursor:s}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:o,nextCursor:s,_meta:{}}}catch(o){throw new N(D.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(si,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new N(D.InvalidParams,`Task not found: ${r.params.taskId}`);if(xr(o.status))throw new N(D.InvalidParams,`Cannot cancel task in terminal status: ${o.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new N(D.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof N?o:new N(D.InvalidRequest,`Failed to cancel task: ${o instanceof Error?o.message:String(o)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,o,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(o,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:o})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),N.fromError(D.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(e){let r=this._timeoutInfo.get(e);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=s=>{n?.(s),this._onerror(s)};let o=this._transport?.onmessage;this._transport.onmessage=(s,i)=>{o?.(s,i),$o(s)||zm(s)?this._onresponse(s):Zu(s)?this._onrequest(s,i):Tm(s)?this._onnotification(s):this._onerror(new Error(`Unknown message type: ${JSON.stringify(s)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=N.fromError(D.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of e.values())n(r)}_onerror(e){this.onerror?.(e)}_onnotification(e){let r=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(e)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(e,r){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,o=this._transport,s=e.params?._meta?.[vr]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:D.MethodNotFound,message:"Method not found"}};s&&this._taskMessageQueue?this._enqueueTaskMessage(s,{type:"error",message:l,timestamp:Date.now()},o?.sessionId).catch(d=>this._onerror(new Error(`Failed to enqueue error response: ${d}`))):o?.send(l).catch(d=>this._onerror(new Error(`Failed to send an error response: ${d}`)));return}let i=new AbortController;this._requestHandlerAbortControllers.set(e.id,i);let a=$m(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,o?.sessionId):void 0,u={signal:i.signal,sessionId:o?.sessionId,_meta:e.params?._meta,sendNotification:async l=>{if(i.signal.aborted)return;let d={relatedRequestId:e.id};s&&(d.relatedTask={taskId:s}),await this.notification(l,d)},sendRequest:async(l,d,p)=>{if(i.signal.aborted)throw new N(D.ConnectionClosed,"Request was cancelled");let m={...p,relatedRequestId:e.id};s&&!m.relatedTask&&(m.relatedTask={taskId:s});let f=m.relatedTask?.taskId??s;return f&&c&&await c.updateTaskStatus(f,"input_required"),await this.request(l,d,m)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:s,taskStore:c,taskRequestedTtl:a?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{a&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,u)).then(async l=>{if(i.signal.aborted)return;let d={result:l,jsonrpc:"2.0",id:e.id};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"response",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)},async l=>{if(i.signal.aborted)return;let d={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(l.code)?l.code:D.InternalError,message:l.message??"Internal error",...l.data!==void 0&&{data:l.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)}).catch(l=>this._onerror(new Error(`Failed to send response: ${l}`))).finally(()=>{this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:r,...n}=e.params,o=Number(r),s=this._progressHandlers.get(o);if(!s){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let i=this._responseHandlers.get(o),a=this._timeoutInfo.get(o);if(a&&i&&a.resetTimeoutOnProgress)try{this._resetTimeout(o)}catch(c){this._responseHandlers.delete(o),this._progressHandlers.delete(o),this._cleanupTimeout(o),i(c);return}s(n)}_onresponse(e){let r=Number(e.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),$o(e))n(e);else{let i=new N(e.error.code,e.error.message,e.error.data);n(i)}return}let o=this._responseHandlers.get(r);if(o===void 0){this._onerror(new Error(`Received a response for an unknown message ID: ${JSON.stringify(e)}`));return}this._responseHandlers.delete(r),this._cleanupTimeout(r);let s=!1;if($o(e)&&e.result&&typeof e.result=="object"){let i=e.result;if(i.task&&typeof i.task=="object"){let a=i.task;typeof a.taskId=="string"&&(s=!0,this._taskProgressTokens.set(a.taskId,r))}}if(s||this._progressHandlers.delete(r),$o(e))o(e);else{let i=N.fromError(e.error.code,e.error.message,e.error.data);o(i)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,r,n){let{task:o}=n??{};if(!o){try{yield{type:"result",result:await this.request(e,r,n)}}catch(i){yield{type:"error",error:i instanceof N?i:new N(D.InternalError,String(i))}}return}let s;try{let i=await this.request(e,On,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new N(D.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},xr(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new N(D.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new N(D.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),n?.signal?.throwIfAborted()}}catch(i){yield{type:"error",error:i instanceof N?i:new N(D.InternalError,String(i))}}}request(e,r,n){let{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i,task:a,relatedTask:c}=n??{};return new Promise((u,l)=>{let d=_=>{l(_)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),a&&this.assertTaskCapability(e.method)}catch(_){d(_);return}n?.signal?.throwIfAborted();let p=this._requestMessageId++,m={...e,jsonrpc:"2.0",id:p};n?.onprogress&&(this._progressHandlers.set(p,n.onprogress),m.params={...e.params,_meta:{...e.params?._meta||{},progressToken:p}}),a&&(m.params={...m.params,task:a}),c&&(m.params={...m.params,_meta:{...m.params?._meta||{},[vr]:c}});let f=_=>{this._responseHandlers.delete(p),this._progressHandlers.delete(p),this._cleanupTimeout(p),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:p,reason:String(_)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(x=>this._onerror(new Error(`Failed to send cancellation: ${x}`)));let v=_ instanceof N?_:new N(D.RequestTimeout,String(_));l(v)};this._responseHandlers.set(p,_=>{if(!n?.signal?.aborted){if(_ instanceof Error)return l(_);try{let v=yr(r,_.result);v.success?u(v.data):l(v.error)}catch(v){l(v)}}}),n?.signal?.addEventListener("abort",()=>{f(n?.signal?.reason)});let h=n?.timeout??tk,g=()=>f(N.fromError(D.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(p,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let y=c?.taskId;if(y){let _=v=>{let x=this._responseHandlers.get(p);x?x(v):this._onerror(new Error(`Response handler missing for side-channeled request ${p}`))};this._requestResolvers.set(p,_),this._enqueueTaskMessage(y,{type:"request",message:m,timestamp:Date.now()}).catch(v=>{this._cleanupTimeout(p),l(v)})}else this._transport.send(m,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(_=>{this._cleanupTimeout(p),l(_)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},ti,r)}async getTaskResult(e,r,n){return this.request({method:"tasks/result",params:e},r,n)}async listTasks(e,r){return this.request({method:"tasks/list",params:e},oi,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},Rm,r)}async notification(e,r){if(!this._transport)throw new Error("Not connected");this.assertNotificationCapability(e.method);let n=r?.relatedTask?.taskId;if(n){let a={...e,jsonrpc:"2.0",params:{...e.params,_meta:{...e.params?._meta||{},[vr]:r.relatedTask}}};await this._enqueueTaskMessage(n,{type:"notification",message:a,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(e.method)&&!e.params&&!r?.relatedRequestId&&!r?.relatedTask){if(this._pendingDebouncedNotifications.has(e.method))return;this._pendingDebouncedNotifications.add(e.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(e.method),!this._transport)return;let a={...e,jsonrpc:"2.0"};r?.relatedTask&&(a={...a,params:{...a.params,_meta:{...a.params?._meta||{},[vr]:r.relatedTask}}}),this._transport?.send(a,r).catch(c=>this._onerror(c))});return}let i={...e,jsonrpc:"2.0"};r?.relatedTask&&(i={...i,params:{...i.params,_meta:{...i.params?._meta||{},[vr]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=sl(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=il(e,o);return Promise.resolve(r(i,s))})}removeRequestHandler(e){this._requestHandlers.delete(e)}assertCanSetRequestHandler(e){if(this._requestHandlers.has(e))throw new Error(`A request handler for ${e} already exists, which would be overridden`)}setNotificationHandler(e,r){let n=sl(e);this._notificationHandlers.set(n,o=>{let s=il(e,o);return Promise.resolve(r(s))})}removeNotificationHandler(e){this._notificationHandlers.delete(e)}_cleanupTaskProgressHandler(e){let r=this._taskProgressTokens.get(e);r!==void 0&&(this._progressHandlers.delete(r),this._taskProgressTokens.delete(e))}async _enqueueTaskMessage(e,r,n){if(!this._taskStore||!this._taskMessageQueue)throw new Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let o=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(e,r,n,o)}async _clearTaskQueue(e,r){if(this._taskMessageQueue){let n=await this._taskMessageQueue.dequeueAll(e,r);for(let o of n)if(o.type==="request"&&Zu(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new N(D.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(s)):this._onerror(new Error(`Resolver missing for request ${s} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(e);o?.pollInterval&&(n=o.pollInterval)}catch{}return new Promise((o,s)=>{if(r.aborted){s(new N(D.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new N(D.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async o=>{if(!e)throw new Error("No request provided");return await n.createTask(o,e.id,{method:e.method,params:e.params},r)},getTask:async o=>{let s=await n.getTask(o,r);if(!s)throw new N(D.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(o,s,i)=>{await n.storeTaskResult(o,s,i,r);let a=await n.getTask(o,r);if(a){let c=Eo.parse({method:"notifications/tasks/status",params:a});await this.notification(c),xr(a.status)&&this._cleanupTaskProgressHandler(o)}},getTaskResult:o=>n.getTaskResult(o,r),updateTaskStatus:async(o,s,i)=>{let a=await n.getTask(o,r);if(!a)throw new N(D.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(xr(a.status))throw new N(D.InvalidParams,`Cannot update task "${o}" from terminal status "${a.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(o,s,i,r);let c=await n.getTask(o,r);if(c){let u=Eo.parse({method:"notifications/tasks/status",params:c});await this.notification(u),xr(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function gh(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function yh(t,e){let r={...t};for(let n in e){let o=n,s=e[o];if(s===void 0)continue;let i=r[o];gh(i)&&gh(s)?r[o]={...i,...s}:r[o]=s}return r}var n_=no(Hd(),1),o_=no(r_(),1);function HE(){let t=new n_.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,o_.default)(t),t}var ra=class{constructor(e){this._ajv=e??HE()}getValidator(e){let r="$id"in e&&typeof e.$id=="string"?this._ajv.getSchema(e.$id)??this._ajv.compile(e):this._ajv.compile(e);return n=>r(n)?{valid:!0,data:n,errorMessage:void 0}:{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(r.errors)}}};var na=class{constructor(e){this._server=e}requestStream(e,r,n){return this._server.requestStream(e,r,n)}async getTask(e,r){return this._server.getTask({taskId:e},r)}async getTaskResult(e,r,n){return this._server.getTaskResult({taskId:e},r,n)}async listTasks(e,r){return this._server.listTasks(e?{cursor:e}:void 0,r)}async cancelTask(e,r){return this._server.cancelTask({taskId:e},r)}};function s_(t,e,r){if(!t)throw new Error(`${r} does not support task creation (required for ${e})`);switch(e){case"tools/call":if(!t.tools?.call)throw new Error(`${r} does not support task creation for tools/call (required for ${e})`);break;default:break}}function i_(t,e,r){if(!t)throw new Error(`${r} does not support task creation (required for ${e})`);switch(e){case"sampling/createMessage":if(!t.sampling?.createMessage)throw new Error(`${r} does not support task creation for sampling/createMessage (required for ${e})`);break;case"elicitation/create":if(!t.elicitation?.create)throw new Error(`${r} does not support task creation for elicitation/create (required for ${e})`);break;default:break}}var oa=class extends vi{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Ro.options.map((n,o)=>[n,o])),this.isMessageIgnored=(n,o)=>{let s=this._loggingLevels.get(o);return s?this.LOG_LEVEL_SEVERITY.get(n)<this.LOG_LEVEL_SEVERITY.get(s):!1},this._capabilities=r?.capabilities??{},this._instructions=r?.instructions,this._jsonSchemaValidator=r?.jsonSchemaValidator??new ra,this.setRequestHandler(Lu,n=>this._oninitialize(n)),this.setNotificationHandler(Fu,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(Ku,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=Ro.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new na(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=yh(this._capabilities,e)}setRequestHandler(e,r){let o=_r(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(vt(o)){let a=o;s=a._zod?.def?.value??a.value}else{let a=o;s=a._def?.value??a.value}if(typeof s!="string")throw new Error("Schema method literal must be a string");if(s==="tools/call"){let a=async(c,u)=>{let l=yr(An,c);if(!l.success){let f=l.error instanceof Error?l.error.message:String(l.error);throw new N(D.InvalidParams,`Invalid tools/call request: ${f}`)}let{params:d}=l.data,p=await Promise.resolve(r(c,u));if(d.task){let f=yr(On,p);if(!f.success){let h=f.error instanceof Error?f.error.message:String(f.error);throw new N(D.InvalidParams,`Invalid task creation result: ${h}`)}return f.data}let m=yr(pi,p);if(!m.success){let f=m.error instanceof Error?m.error.message:String(m.error);throw new N(D.InvalidParams,`Invalid tools/call result: ${f}`)}return m.data};return super.setRequestHandler(e,a)}return super.setRequestHandler(e,r)}assertCapabilityForMethod(e){switch(e){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${e})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${e})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${e})`);break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${e})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${e})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${e})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${e})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${e})`);break;case"ping":case"initialize":break}}assertTaskCapability(e){i_(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&s_(this._capabilities.tasks?.requests,e,"Server")}async _oninitialize(e){let r=e.params.protocolVersion;return this._clientCapabilities=e.params.capabilities,this._clientVersion=e.params.clientInfo,{protocolVersion:xm.includes(r)?r:Nu,capabilities:this.getCapabilities(),serverInfo:this._serverInfo,...this._instructions&&{instructions:this._instructions}}}getClientCapabilities(){return this._clientCapabilities}getClientVersion(){return this._clientVersion}getCapabilities(){return this._capabilities}async ping(){return this.request({method:"ping"},Js)}async createMessage(e,r){if((e.tools||e.toolChoice)&&!this._clientCapabilities?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let n=e.messages[e.messages.length-1],o=Array.isArray(n.content)?n.content:[n.content],s=o.some(u=>u.type==="tool_result"),i=e.messages.length>1?e.messages[e.messages.length-2]:void 0,a=i?Array.isArray(i.content)?i.content:[i.content]:[],c=a.some(u=>u.type==="tool_use");if(s){if(o.some(u=>u.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!c)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(c){let u=new Set(a.filter(d=>d.type==="tool_use").map(d=>d.id)),l=new Set(o.filter(d=>d.type==="tool_result").map(d=>d.toolUseId));if(u.size!==l.size||![...u].every(d=>l.has(d)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return e.tools?this.request({method:"sampling/createMessage",params:e},Qu,r):this.request({method:"sampling/createMessage",params:e},Ju,r)}async elicitInput(e,r){switch(e.mode??"form"){case"url":{if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support url elicitation.");let o=e;return this.request({method:"elicitation/create",params:o},fi,r)}case"form":{if(!this._clientCapabilities?.elicitation?.form)throw new Error("Client does not support form elicitation.");let o=e.mode==="form"?e:{...e,mode:"form"},s=await this.request({method:"elicitation/create",params:o},fi,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new N(D.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof N?i:new N(D.InternalError,`Error validating elicitation response: ${i instanceof Error?i.message:String(i)}`)}return s}}}createElicitationCompletionNotifier(e,r){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:e}},r)}async listRoots(e,r){return this.request({method:"roots/list",params:e},Xu,r)}async sendLoggingMessage(e,r){if(this._capabilities.logging&&!this.isMessageIgnored(e.level,r))return this.notification({method:"notifications/message",params:e})}async sendResourceUpdated(e){return this.notification({method:"notifications/resources/updated",params:e})}async sendResourceListChanged(){return this.notification({method:"notifications/resources/list_changed"})}async sendToolListChanged(){return this.notification({method:"notifications/tools/list_changed"})}async sendPromptListChanged(){return this.notification({method:"notifications/prompts/list_changed"})}};var c_=Symbol.for("mcp.completable");function Yd(t){return!!t&&typeof t=="object"&&c_ in t}function u_(t){return t[c_]?.complete}var a_;(function(t){t.Completable="McpCompletable"})(a_||(a_={}));var WE=/^[A-Za-z0-9._-]{1,128}$/;function GE(t){let e=[];if(t.length===0)return{isValid:!1,warnings:["Tool name cannot be empty"]};if(t.length>128)return{isValid:!1,warnings:[`Tool name exceeds maximum length of 128 characters (current: ${t.length})`]};if(t.includes(" ")&&e.push("Tool name contains spaces, which may cause parsing issues"),t.includes(",")&&e.push("Tool name contains commas, which may cause parsing issues"),(t.startsWith("-")||t.endsWith("-"))&&e.push("Tool name starts or ends with a dash, which may cause parsing issues in some contexts"),(t.startsWith(".")||t.endsWith("."))&&e.push("Tool name starts or ends with a dot, which may cause parsing issues in some contexts"),!WE.test(t)){let r=t.split("").filter(n=>!/[A-Za-z0-9._-]/.test(n)).filter((n,o,s)=>s.indexOf(n)===o);return e.push(`Tool name contains invalid characters: ${r.map(n=>`"${n}"`).join(", ")}`,"Allowed characters are: A-Z, a-z, 0-9, underscore (_), dash (-), and dot (.)"),{isValid:!1,warnings:e}}return{isValid:!0,warnings:e}}function BE(t,e){if(e.length>0){console.warn(`Tool name validation warning for "${t}":`);for(let r of e)console.warn(` - ${r}`);console.warn("Tool registration will proceed, but this may cause compatibility issues."),console.warn("Consider updating the tool name to conform to the MCP tool naming standard."),console.warn("See SEP: Specify Format for Tool Names (https://github.com/modelcontextprotocol/modelcontextprotocol/issues/986) for more details.")}}function ep(t){let e=GE(t);return BE(t,e.warnings),e.isValid}var sa=class{constructor(e){this._mcpServer=e}registerToolTask(e,r,n){let o={taskSupport:"required",...r.execution};if(o.taskSupport==="forbidden")throw new Error(`Cannot register task-based tool '${e}' with taskSupport 'forbidden'. Use registerTool() instead.`);return this._mcpServer._createRegisteredTool(e,r.title,r.description,r.inputSchema,r.outputSchema,r.annotations,o,r._meta,n)}};var ia=class{constructor(e,r){this._registeredResources={},this._registeredResourceTemplates={},this._registeredTools={},this._registeredPrompts={},this._toolHandlersInitialized=!1,this._completionHandlerInitialized=!1,this._resourceHandlersInitialized=!1,this._promptHandlersInitialized=!1,this.server=new oa(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new sa(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(Pr(di)),this.server.assertCanSetRequestHandler(Pr(An)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(di,()=>({tools:Object.entries(this._registeredTools).filter(([,e])=>e.enabled).map(([e,r])=>{let n={name:e,title:r.title,description:r.description,inputSchema:(()=>{let o=Rn(r.inputSchema);return o?ol(o,{strictUnions:!0,pipeStrategy:"input"}):KE})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=Rn(r.outputSchema);o&&(n.outputSchema=ol(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(An,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new N(D.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new N(D.InvalidParams,`Tool ${e.params.name} disabled`);let o=!!e.params.task,s=n.execution?.taskSupport,i="createTask"in n.handler;if((s==="required"||s==="optional")&&!i)throw new N(D.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new N(D.MethodNotFound,`Tool ${e.params.name} requires task augmentation (taskSupport: 'required')`);if(s==="optional"&&!o&&i)return await this.handleAutomaticTaskPolling(n,e,r);let a=await this.validateToolInput(n,e.params.arguments,e.params.name),c=await this.executeToolHandler(n,a,r);return o||await this.validateToolOutput(n,c,e.params.name),c}catch(n){if(n instanceof N&&n.code===D.UrlElicitationRequired)throw n;return this.createToolError(n instanceof Error?n.message:String(n))}}),this._toolHandlersInitialized=!0)}createToolError(e){return{content:[{type:"text",text:e}],isError:!0}}async validateToolInput(e,r,n){if(!e.inputSchema)return;let s=Rn(e.inputSchema)??e.inputSchema,i=await Fs(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=Us(a);throw new N(D.InvalidParams,`Input validation error: Invalid arguments for tool ${n}: ${c}`)}return i.data}async validateToolOutput(e,r,n){if(!e.outputSchema||!("content"in r)||r.isError)return;if(!r.structuredContent)throw new N(D.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=Rn(e.outputSchema),s=await Fs(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=Us(i);throw new N(D.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${a}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let i={...n,taskStore:n.taskStore};if(e.inputSchema){let a=o;return await Promise.resolve(a.createTask(r,i))}else{let a=o;return await Promise.resolve(a.createTask(i))}}if(e.inputSchema){let i=o;return await Promise.resolve(i(r,n))}else{let i=o;return await Promise.resolve(i(n))}}async handleAutomaticTaskPolling(e,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let o=await this.validateToolInput(e,r.params.arguments,r.params.name),s=e.handler,i={...n,taskStore:n.taskStore},a=o?await Promise.resolve(s.createTask(o,i)):await Promise.resolve(s.createTask(i)),c=a.task.taskId,u=a.task,l=u.pollInterval??5e3;for(;u.status!=="completed"&&u.status!=="failed"&&u.status!=="cancelled";){await new Promise(p=>setTimeout(p,l));let d=await n.taskStore.getTask(c);if(!d)throw new N(D.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(Pr(mi)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(mi,async e=>{switch(e.params.ref.type){case"ref/prompt":return Nm(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return jm(e),this.handleResourceCompletion(e,e.params.ref);default:throw new N(D.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new N(D.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new N(D.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return as;let s=_r(n.argsSchema)?.[e.params.argument.name];if(!Yd(s))return as;let i=u_(s);if(!i)return as;let a=await i(e.params.argument.value,e.params.context);return d_(a)}async handleResourceCompletion(e,r){let n=Object.values(this._registeredResourceTemplates).find(i=>i.resourceTemplate.uriTemplate.toString()===r.uri);if(!n){if(this._registeredResources[r.uri])return as;throw new N(D.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return as;let s=await o(e.params.argument.value,e.params.context);return d_(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(Pr(ii)),this.server.assertCanSetRequestHandler(Pr(ai)),this.server.assertCanSetRequestHandler(Pr(ci)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(ii,async(e,r)=>{let n=Object.entries(this._registeredResources).filter(([s,i])=>i.enabled).map(([s,i])=>({uri:s,name:i.name,...i.metadata})),o=[];for(let s of Object.values(this._registeredResourceTemplates)){if(!s.resourceTemplate.listCallback)continue;let i=await s.resourceTemplate.listCallback(r);for(let a of i.resources)o.push({...s.metadata,...a})}return{resources:[...n,...o]}}),this.server.setRequestHandler(ai,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(ci,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new N(D.InvalidParams,`Resource ${n} disabled`);return o.readCallback(n,r)}for(let s of Object.values(this._registeredResourceTemplates)){let i=s.resourceTemplate.uriTemplate.match(n.toString());if(i)return s.readCallback(n,i,r)}throw new N(D.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(Pr(ui)),this.server.assertCanSetRequestHandler(Pr(li)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(ui,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?QE(r.argsSchema):void 0}))})),this.server.setRequestHandler(li,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new N(D.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new N(D.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=Rn(n.argsSchema),s=await Fs(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=Us(c);throw new N(D.InvalidParams,`Invalid arguments for prompt ${e.params.name}: ${u}`)}let i=s.data,a=n.callback;return await Promise.resolve(a(i,r))}else{let o=n.callback;return await Promise.resolve(o(r))}}),this._promptHandlersInitialized=!0)}resource(e,r,...n){let o;typeof n[0]=="object"&&(o=n.shift());let s=n[0];if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let i=this._createRegisteredResource(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let i=this._createRegisteredResourceTemplate(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}}registerResource(e,r,n,o){if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let s=this._createRegisteredResource(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let s=this._createRegisteredResourceTemplate(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}}_createRegisteredResource(e,r,n,o,s){let i={name:e,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({uri:null}),update:a=>{typeof a.uri<"u"&&a.uri!==n&&(delete this._registeredResources[n],a.uri&&(this._registeredResources[a.uri]=i)),typeof a.name<"u"&&(i.name=a.name),typeof a.title<"u"&&(i.title=a.title),typeof a.metadata<"u"&&(i.metadata=a.metadata),typeof a.callback<"u"&&(i.readCallback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendResourceListChanged()}};return this._registeredResources[n]=i,i}_createRegisteredResourceTemplate(e,r,n,o,s){let i={resourceTemplate:n,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:u=>{typeof u.name<"u"&&u.name!==e&&(delete this._registeredResourceTemplates[e],u.name&&(this._registeredResourceTemplates[u.name]=i)),typeof u.title<"u"&&(i.title=u.title),typeof u.template<"u"&&(i.resourceTemplate=u.template),typeof u.metadata<"u"&&(i.metadata=u.metadata),typeof u.callback<"u"&&(i.readCallback=u.callback),typeof u.enabled<"u"&&(i.enabled=u.enabled),this.sendResourceListChanged()}};this._registeredResourceTemplates[e]=i;let a=n.uriTemplate.variableNames;return Array.isArray(a)&&a.some(u=>!!n.completeCallback(u))&&this.setCompletionRequestHandler(),i}_createRegisteredPrompt(e,r,n,o,s){let i={title:r,description:n,argsSchema:o===void 0?void 0:rn(o),callback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:a=>{typeof a.name<"u"&&a.name!==e&&(delete this._registeredPrompts[e],a.name&&(this._registeredPrompts[a.name]=i)),typeof a.title<"u"&&(i.title=a.title),typeof a.description<"u"&&(i.description=a.description),typeof a.argsSchema<"u"&&(i.argsSchema=rn(a.argsSchema)),typeof a.callback<"u"&&(i.callback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendPromptListChanged()}};return this._registeredPrompts[e]=i,o&&Object.values(o).some(c=>{let u=c instanceof rt?c._def?.innerType:c;return Yd(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){ep(e);let l={title:r,description:n,inputSchema:l_(o),outputSchema:l_(s),annotations:i,execution:a,_meta:c,handler:u,enabled:!0,disable:()=>l.update({enabled:!1}),enable:()=>l.update({enabled:!0}),remove:()=>l.update({name:null}),update:d=>{typeof d.name<"u"&&d.name!==e&&(typeof d.name=="string"&&ep(d.name),delete this._registeredTools[e],d.name&&(this._registeredTools[d.name]=l)),typeof d.title<"u"&&(l.title=d.title),typeof d.description<"u"&&(l.description=d.description),typeof d.paramsSchema<"u"&&(l.inputSchema=rn(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=rn(d.outputSchema)),typeof d.callback<"u"&&(l.handler=d.callback),typeof d.annotations<"u"&&(l.annotations=d.annotations),typeof d._meta<"u"&&(l._meta=d._meta),typeof d.enabled<"u"&&(l.enabled=d.enabled),this.sendToolListChanged()}};return this._registeredTools[e]=l,this.setToolRequestHandlers(),this.sendToolListChanged(),l}tool(e,...r){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let n,o,s,i;if(typeof r[0]=="string"&&(n=r.shift()),r.length>1){let c=r[0];tp(c)?(o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!tp(r[0])&&(i=r.shift())):typeof c=="object"&&c!==null&&(i=r.shift())}let a=r[0];return this._createRegisteredTool(e,void 0,n,o,s,i,{taskSupport:"forbidden"},void 0,a)}registerTool(e,r,n){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let{title:o,description:s,inputSchema:i,outputSchema:a,annotations:c,_meta:u}=r;return this._createRegisteredTool(e,o,s,i,a,c,{taskSupport:"forbidden"},u,n)}prompt(e,...r){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let n;typeof r[0]=="string"&&(n=r.shift());let o;r.length>1&&(o=r.shift());let s=r[0],i=this._createRegisteredPrompt(e,void 0,n,o,s);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),i}registerPrompt(e,r,n){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let{title:o,description:s,argsSchema:i}=r,a=this._createRegisteredPrompt(e,o,s,i,n);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),a}isConnected(){return this.server.transport!==void 0}async sendLoggingMessage(e,r){return this.server.sendLoggingMessage(e,r)}sendResourceListChanged(){this.isConnected()&&this.server.sendResourceListChanged()}sendToolListChanged(){this.isConnected()&&this.server.sendToolListChanged()}sendPromptListChanged(){this.isConnected()&&this.server.sendPromptListChanged()}};var KE={type:"object",properties:{}};function p_(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function JE(t){return"_def"in t||"_zod"in t||p_(t)}function tp(t){return typeof t!="object"||t===null||JE(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(p_)}function l_(t){if(t)return tp(t)?rn(t):t}function QE(t){let e=_r(t);return e?Object.entries(e).map(([r,n])=>{let o=Qf(n),s=Xf(n);return{name:r,description:o,required:!s}}):[]}function Pr(t){let r=_r(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Vs(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function d_(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var as={completion:{values:[],hasMore:!1}};var rp=no(require("node:process"),1);var aa=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
41
+ `);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),XE(r)}clear(){this._buffer=void 0}};function XE(t){return Em.parse(JSON.parse(t))}function f_(t){return JSON.stringify(t)+`
42
+ `}var ca=class{constructor(e=rp.default.stdin,r=rp.default.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new aa,this._started=!1,this._ondata=n=>{this._readBuffer.append(n),this.processReadBuffer()},this._onerror=n=>{this.onerror?.(n)}}async start(){if(this._started)throw new Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){for(;;)try{let e=this._readBuffer.readMessage();if(e===null)break;this.onmessage?.(e)}catch(e){this.onerror?.(e)}}async close(){this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0&&this._stdin.pause(),this._readBuffer.clear(),this.onclose?.()}send(e){return new Promise(r=>{let n=f_(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};var Rr={"#fef08a":"yellow","#fca5a5":"red","#93c5fd":"blue"};function jt(t){return t==="answered"||t==="done"||t==="failed"||t==="wontfix"}function cs(t){return t==="red"?"fix":t==="blue"?"question":"highlight"}function ut(t,e={}){let r=e.separator??"-",n=e.randomLength??6,o=Date.now().toString(36),s=Math.random().toString(36).slice(2,2+n).padEnd(n,"0");return`${t}${r}${o}${r}${s}`}var np=class extends Error{constructor(r,n,o){super(n);this.code=r;this.details=o;this.name="SharedError"}},op=class extends np{constructor(e,r){super("PARSE_JSON",`Failed to parse JSON in ${e}`,r),this.name="SharedJsonParseError"}};function m_(t,e){try{return JSON.parse(t)}catch(r){throw new op(e,{raw:t,cause:r instanceof Error?r.message:String(r)})}}function Ce(t,e=120){return t.length>e?t.slice(0,e)+"...":t}function sp(t){return JSON.parse(t.replace(/^\uFEFF/,""))}function ip(t){return t==="red"?"fix":t==="blue"?"question":"important"}function ap(t,e,r={}){let n=[],o=new Set,{floatingMemos:s=[]}=r;for(let i of e){let a=i.color.startsWith("#")?Rr[i.color]||"red":i.color,c=ip(a),u=a==="red"?"#fca5a5":a==="blue"?"#93c5fd":"#fef08a",l=i.section.trim(),d=t.findIndex((p,m)=>!o.has(m)&&p.color===u&&p.section.trim()===l);if(d>=0){o.add(d);let p=t[d];n.push({type:c,text:p.text,section:i.section||p.section||"",context:p.context||"",feedback:i.text})}else n.push({type:c,text:i.context||"",section:i.section||"",context:"",feedback:i.text})}for(let i=0;i<t.length;i++){if(o.has(i))continue;let a=t[i],c=Rr[a.color]||"yellow";n.push({type:ip(c),text:a.text,section:a.section||"",context:a.context||"",feedback:""})}for(let i of s)i.text.trim()&&n.push({type:ip(i.color),text:"",section:"",context:"",feedback:i.text});return n}function Je(t){return t.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/\n/g,"&#10;").replace(/-->/g,"--&#62;")}function da(t){return t.replace(/--&#62;/g,"-->").replace(/&#10;/g,`
43
+ `).replace(/&quot;/g,'"').replace(/&amp;/g,"&")}function Zt(t){let e=5381;for(let r=0;r<t.length;r++)e=(e<<5)+e+t.charCodeAt(r)>>>0;return e.toString(16).padStart(8,"0").slice(0,8)}var YE=/^<!-- USER_MEMO\s+id="([^"]+)"(?:\s+color="([^"]+)")?(?:\s+status="([^"]+)")?(?:\s+anchorText="([^"]*)")?\s*:\s*(.*?)\s*-->$/,eP=/^<!-- USER_MEMO\s*$/,tP=/^-->$/,rP=/^<!-- GATE\s*$/,nP=/^-->$/,oP=/^<!-- PLAN_CURSOR\s*$/,sP=/^-->$/,iP=/^<!-- CHECKPOINT\s+id="([^"]+)"\s+time="([^"]+)"\s+note="([^"]*)"\s+fixes=(\d+)\s+questions=(\d+)\s+highlights=(\d+)\s+sections="([^"]*)" -->$/,aP=/^---\s*\n([\s\S]*?)\n---\s*\n/,cP=/^<!-- @memo\s+id="([^"]+)"(?:\s+color="([^"]+)")?(?:\s+date="([^"]+)")?\s*-->$/,uP=/^<!-- @\/memo -->$/,lP=/^<!--$/,dP=/MD Feedback/,pP=/^<!-- \/?(USER_FEEDBACK_NOTES|@\/?feedback-notes)\b.*-->$/,fP=/^<!-- REVIEW_RESPONSE\s+to="([^"]+)"\s*-->$/,mP=/^<!-- \/REVIEW_RESPONSE\s*-->$/,hP=/^<!-- MEMO_IMPL\s*$/,gP=/^-->$/,yP=/^<!-- MEMO_ARTIFACT\s*$/,_P=/^-->$/,vP=/^<!-- MEMO_DEPENDENCY\s+id="([^"]+)"\s+from="([^"]+)"\s+to="([^"]+)"\s+type="([^"]+)" -->$/,ua=/<!-- HIGHLIGHT_MARK color="([^"]*)" text="([^"]*)" anchor="([^"]*)" -->/g,xP=10;function ls(t){let e=t.trim();return e.startsWith("<!-- USER_MEMO")||e.startsWith("<!-- MEMO_IMPL")||e.startsWith("<!-- MEMO_ARTIFACT")||e.startsWith("<!-- GATE")||e.startsWith("<!-- CHECKPOINT")||e.startsWith("<!-- PLAN_CURSOR")||e.startsWith("<!-- MEMO_DEPENDENCY")||e.startsWith("<!-- HIGHLIGHT_MARK")||e.startsWith('id="')&&!e.includes("<")||e==="-->"}function Qn(t){return t.replace(/^(?:>\s*)+/,"").replace(/^#+\s*/,"").replace(/^(\s*)[-*+]\s+\[[ xX]\]\s+/,"$1").replace(/^(\s*)[-*+]\s+/,"$1").replace(/^(\s*)\d+[.)]\s+/,"$1").replace(/<\/?(?:strong|em|b|i|u|s|del|ins|mark|code|kbd|sub|sup|span|a)\b[^>]*>/gi,"").replace(/!\[([^\]]*)\]\([^)]*\)/g,"$1").replace(/\[([^\]]*)\]\([^)]*\)/g,"$1").replace(/\[([^\]]*)\]\[[^\]]*\]/g,"$1").replace(/~~([^~]+)~~/g,"$1").replace(/==([^=]+)==/g,"$1").replace(/``([^`]+)``/g,"$1").replace(/`([^`]+)`/g,"$1").replace(/\*{3}([^*]+)\*{3}/g,"$1").replace(/\*{2}([^*]+)\*{2}/g,"$1").replace(/(?<!\w)\*([^*]+)\*(?!\w)/g,"$1").replace(/_{2}([^_]+)_{2}/g,"$1").replace(/(?<!\w)_([^_]+)_(?!\w)/g,"$1").replace(/\[\^\w+\]/g,"").replace(/(?<!\$)\$(?!\$)([^$]+)\$(?!\$)/g,"$1").replace(/^\|\s*/,"").replace(/\s*\|$/,"").replace(/\\([[\](){}#*+\-.!|`~>_\\$^])/g,"$1").trim()}function us(t){let e={};for(let r of t){let n=r.trim().match(/^(\w+)="([^"]*)"$/);n&&(e[n[1]]=da(n[2]))}return e}function ze(t){let e="",r=t,n=r.match(aP);n&&(e=n[0],r=r.slice(n[0].length));let o=r.split(`
44
+ `),s=[],i=[],a=[],c=[],u=[],l=[],d=[],p=[],m=null,f=null,h=new Set,g=0;for(;g<o.length;){let R=o[g],H=R.trim(),Ee=H.match(fP);if(Ee){f={id:`resp_${Ee[1]}`,to:Ee[1],bodyStartIdx:s.length,bodyEndIdx:-1},g++;continue}if(mP.test(H)){f&&(f.bodyEndIdx=s.length-1,a.push(f),f=null),g++;continue}let Oe=H.match(YE);if(Oe){if(h.has(Oe[1])){g++;continue}h.add(Oe[1]);let Pe=Oe[4]?da(Oe[4]):cp(s),A=g_(s),Me=Oe[2]||"red",Ft=Oe[3]||"open";i.push({id:Oe[1],type:cs(Me),status:Ft,owner:"human",source:"generic",color:Me,text:Oe[5].replace(/--\u200B>/g,"-->"),anchorText:Pe||"",anchor:A>=0?`L${A+1}|${Zt(s[A]||"")}`:"",createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()}),g++;continue}if(eP.test(H)){let Pe=[];for(g++;g<o.length&&!tP.test(o[g].trim());)Pe.push(o[g]),g++;g++;let A=us(Pe);if(A.id&&h.has(A.id))continue;A.id&&h.add(A.id);let Me=A.anchorText||cp(s)||"",Ft={id:A.id||"memo_parse_tmp",type:A.type||"fix",status:A.status||"open",owner:A.owner||"human",source:A.source||"generic",color:A.color||"red",text:A.text||"",anchorText:Me,anchor:A.anchor||"",createdAt:A.createdAt||new Date().toISOString(),updatedAt:A.updatedAt||new Date().toISOString()},{lineIdx:gt,confidence:ro}=lp(s,Ft),K_=gt>=0?`L${gt+1}|${Zt(s[gt]||"")}`:A.anchor||"",J_=gt>=0&&!ls(s[gt])?s[gt].trim().slice(0,80):Me;i.push({id:A.id||ut("memo"),type:A.type||cs(A.color||"red"),status:A.status||"open",owner:A.owner||"human",source:A.source||"generic",color:A.color||"red",text:A.text||"",anchorText:J_,anchor:K_,createdAt:A.createdAt||new Date().toISOString(),updatedAt:A.updatedAt||new Date().toISOString(),...A.rejectReason?{rejectReason:A.rejectReason}:{},anchorConfidence:ro});continue}if(rP.test(H)){let Pe=[];for(g++;g<o.length&&!nP.test(o[g].trim());)Pe.push(o[g]),g++;g++;let A=us(Pe),Me=A.override;p.push({id:A.id||ut("gate"),type:A.type||"custom",status:A.status||"blocked",blockedBy:A.blockedBy?A.blockedBy.split(",").map(Ft=>Ft.trim()).filter(Boolean):[],canProceedIf:A.canProceedIf||"",doneDefinition:A.doneDefinition||"",...Me?{override:Me}:{}});continue}if(oP.test(H)){let Pe=[];for(g++;g<o.length&&!sP.test(o[g].trim());)Pe.push(o[g]),g++;g++;let A=us(Pe);m={taskId:A.taskId||"",step:A.step||"",nextAction:A.nextAction||"",lastSeenHash:A.lastSeenHash||"",updatedAt:A.updatedAt||new Date().toISOString()};continue}if(hP.test(H)){let Pe=[];for(g++;g<o.length&&!gP.test(o[g].trim());)Pe.push(o[g]),g++;g++;let A=us(Pe),Me=[];try{Me=m_(A.operations||"[]","MEMO_IMPL.operations")}catch{}c.push({id:A.id||ut("impl",{separator:"_"}),memoId:A.memoId||"",status:A.status||"applied",operations:Me,summary:A.summary||"",appliedAt:A.appliedAt||new Date().toISOString()});continue}if(yP.test(H)){let Pe=[];for(g++;g<o.length&&!_P.test(o[g].trim());)Pe.push(o[g]),g++;g++;let A=us(Pe);u.push({id:A.id||ut("art",{separator:"_"}),memoId:A.memoId||"",files:A.files?A.files.split(",").map(Me=>Me.trim()).filter(Boolean):[],linkedAt:A.linkedAt||new Date().toISOString()});continue}let ht=H.match(vP);if(ht){l.push({id:ht[1],from:ht[2],to:ht[3],type:ht[4]}),g++;continue}let dt=H.match(iP);if(dt){d.push({id:dt[1],timestamp:dt[2],note:dt[3],fixes:parseInt(dt[4],10),questions:parseInt(dt[5],10),highlights:parseInt(dt[6],10),sectionsReviewed:dt[7]?dt[7].split(","):[]}),g++;continue}let Lt=H.match(cP);if(Lt){let Pe=[],A=cp(s),Me=g_(s);for(g++;g<o.length&&!uP.test(o[g].trim());)Pe.push(o[g]),g++;g++;let Ft=Pe.map(gt=>gt.replace(/^<!--\s*/,"").replace(/\s*-->$/,"")).join(`
45
+ `).trim();i.push({id:Lt[1],type:cs(Lt[2]||"red"),status:"open",owner:"human",source:"generic",color:Lt[2]||"red",text:Ft,anchorText:A||"",anchor:Me>=0?`L${Me+1}|${Zt(s[Me]||"")}`:"",createdAt:Lt[3]||new Date().toISOString(),updatedAt:Lt[3]||new Date().toISOString()});continue}if(lP.test(H)&&g+1<o.length&&dP.test(o[g+1])){for(;g<o.length&&!o[g].includes("-->");)g++;g++;continue}if(pP.test(H)){g++;continue}s.push(R),g++}for(;s.length>0&&s[s.length-1].trim()==="";)s.pop();f&&(f.bodyEndIdx=s.length-1,a.push(f));let y=new Set(a.map(R=>R.to));for(let R of i)R.status==="open"&&y.has(R.id)&&(R.status="needs_review");let _=R=>R.replace(/^#+\s*/,"").trim(),v=.7,x=R=>new Set(R.toLowerCase().split(/\s+/).filter(Boolean)),k=(R,H)=>{if(R.size===0&&H.size===0)return 1;let Ee=0;for(let ht of R)H.has(ht)&&Ee++;let Oe=R.size+H.size-Ee;return Oe===0?0:Ee/Oe},L=new Set,G=[];for(let R of i.filter(H=>H.color==="red"||H.color==="blue")){let H=_(R.anchorText),Ee=_(R.text);L.add(`${R.color}|${H}`),R.text&&L.add(`${R.color}|${Ee}`),H&&G.push({color:R.color,words:x(H)}),Ee&&G.push({color:R.color,words:x(Ee)})}let b=(R,H)=>{if(!H)return!1;let Ee=x(H);for(let Oe of G)if(Oe.color===R&&k(Ee,Oe.words)>=v)return!0;return!1};ua.lastIndex=0;let E;for(;(E=ua.exec(r))!==null;){let R=PP(E[1]);if(R!=="red"&&R!=="blue")continue;let H=la(E[2]).trim(),Ee=la(E[3]).trim();if(!H&&!Ee)continue;let Oe=Ee?`${R}|${_(Ee)}`:"",ht=H?`${R}|${_(H)}`:"";if(Oe&&L.has(Oe)||ht&&L.has(ht)||b(R,_(Ee))||b(R,_(H)))continue;let dt=Ee||H,Lt=dt.slice(0,40),Pe=Qn(Lt),A=Lt?s.findIndex(ro=>!ls(ro)&&(ro.includes(Lt)||Qn(ro).includes(Pe))):-1;if(A<0)continue;let Me=`L${A+1}|${Zt(s[A]||"")}`,Ft=new Date().toISOString(),gt=`memo_recovered_${Zt(`${R}|${dt}|${H}`)}`;h.has(gt)||(h.add(gt),i.push({id:gt,type:cs(R),status:"open",owner:"human",source:"recovered-highlight",color:R,text:H,anchorText:dt,anchor:Me,createdAt:Ft,updatedAt:Ft}),Oe&&L.add(Oe),ht&&L.add(ht))}let q=s.filter(R=>!ls(R)),V=q.join(`
46
+ `),ue=q.map(R=>Qn(R)).join(`
47
+ `),Ie=i.filter(R=>{if(R.source!=="recovered-highlight")return!0;if(R.anchorText.includes("<!-- HIGHLIGHT_MARK")||R.anchorText.includes("<!-- USER_MEMO")||R.anchorText.includes("<!-- MEMO_IMPL")||R.anchorConfidence==="line_number"||R.anchorConfidence==="fallback")return!1;let H=(R.anchorText.trim()||R.text.trim()).slice(0,40);if(!H)return!0;let Ee=Qn(H);return!!(V.includes(H)||ue.includes(Ee))});return{frontmatter:e,body:s.join(`
48
+ `),memos:Ie,responses:a,impls:c,artifacts:u,dependencies:l,checkpoints:d,gates:p,cursor:m}}function bP(t){let e=t.split(`
49
+ `),n=e.filter(o=>!ls(o)).join(`
50
+ `);return e.filter(o=>{ua.lastIndex=0;let s=ua.exec(o.trim());if(!s)return!0;let i=la(s[3]).trim(),a=la(s[2]).trim(),c=(i||a).slice(0,40);return c?n.includes(c):!0}).join(`
51
+ `)}function Yt(t){let e=[];t.frontmatter&&e.push(t.frontmatter.trimEnd());let r=bP(t.body),n=EP(r,t.memos,t.responses||[]);e.push(n);let o=[...t.impls||[]].sort((a,c)=>a.id.localeCompare(c.id));for(let a of o)e.push(kP(a));let s=[...t.artifacts||[]].sort((a,c)=>a.id.localeCompare(c.id));for(let a of s)e.push(SP(a));let i=[...t.dependencies||[]].sort((a,c)=>a.id.localeCompare(c.id));for(let a of i)e.push(TP(a));for(let a of t.gates)e.push(wP(a));for(let a of t.checkpoints)e.push(up(a));return t.cursor&&e.push($P(t.cursor)),e.join(`
47
52
 
48
53
  `)+`
49
- `}function s_(t){let e=["<!-- USER_MEMO",` id="${Ve(t.id)}"`,` type="${t.type}"`,` status="${t.status}"`,` owner="${t.owner}"`,` source="${Ve(t.source)}"`,` color="${t.color}"`,` text="${Ve(t.text)}"`,` anchorText="${Ve(t.anchorText)}"`,` anchor="${Ve(t.anchor)}"`,` createdAt="${t.createdAt}"`,` updatedAt="${t.updatedAt}"`];return t.rejectReason&&e.push(` rejectReason="${Ve(t.rejectReason)}"`),e.push("-->"),e.join(`
50
- `)}function lP(t){let e=["<!-- GATE",` id="${t.id}"`,` type="${t.type}"`,` status="${t.status}"`,` blockedBy="${t.blockedBy.join(",")}"`,` canProceedIf="${Ve(t.canProceedIf)}"`,` doneDefinition="${Ve(t.doneDefinition)}"`];return t.override&&e.push(` override="${t.override}"`),e.push("-->"),e.join(`
51
- `)}function dP(t){return["<!-- PLAN_CURSOR",` taskId="${t.taskId}"`,` step="${t.step}"`,` nextAction="${Ve(t.nextAction)}"`,` lastSeenHash="${t.lastSeenHash}"`,` updatedAt="${t.updatedAt}"`,"-->"].join(`
52
- `)}function pP(t){let e=t.sectionsReviewed.join(",");return`<!-- CHECKPOINT id="${t.id}" time="${t.timestamp}" note="${Ve(t.note)}" fixes=${t.fixes} questions=${t.questions} highlights=${t.highlights} sections="${e}" -->`}function fP(t){return["<!-- MEMO_IMPL",` id="${Ve(t.id)}"`,` memoId="${Ve(t.memoId)}"`,` status="${t.status}"`,` operations="${Ve(JSON.stringify(t.operations))}"`,` summary="${Ve(t.summary)}"`,` appliedAt="${t.appliedAt}"`,"-->"].join(`
53
- `)}function mP(t){return["<!-- MEMO_ARTIFACT",` id="${Ve(t.id)}"`,` memoId="${Ve(t.memoId)}"`,` files="${t.files.join(",")}"`,` linkedAt="${t.linkedAt}"`,"-->"].join(`
54
- `)}function hP(t){return`<!-- MEMO_DEPENDENCY id="${t.id}" from="${t.from}" to="${t.to}" type="${t.type}" -->`}function gP(t,e){let r=t[e];if(/^\s*>/.test(r)){let n=e;for(;n+1<t.length&&/^\s*>/.test(t[n+1]);)n++;return n}if(/^\s*\|/.test(r)){let n=e;for(;n+1<t.length&&/^\s*\|/.test(t[n+1]);)n++;return n}return e}function yP(t,e,r){if(e.length===0&&r.length===0)return t;let n=t.split(`
55
- `),o=new Map,s=[];for(let u of e){let l=Yo(n,u);if(l>=0){u.anchor=`L${l+1}|${Rt(n[l])}`;let d=gP(n,l),p=o.get(d)||[];p.push(u),o.set(d,p)}else s.push(u)}let i=new Map,a=new Map;for(let u of r)i.set(u.bodyStartIdx,`<!-- REVIEW_RESPONSE to="${u.to}" -->`),u.bodyEndIdx>=0&&a.set(u.bodyEndIdx,"<!-- /REVIEW_RESPONSE -->");let c=[];for(let u=0;u<n.length;u++){i.has(u)&&c.push(i.get(u)),c.push(n[u]);let l=o.get(u);if(l)for(let d of l)c.push(s_(d));a.has(u)&&c.push(a.get(u))}for(let u of s)c.push(s_(u));return c.join(`
56
- `)}function Yo(t,e){if(e.anchor){let r=e.anchor.match(/^L(\d+)(?::L\d+)?\|(.+)$/);if(r){let n=parseInt(r[1],10)-1,o=r[2];if(n>=0&&n<t.length&&Rt(t[n])===o)return n;for(let s=1;s<=uP;s++)for(let i of[n-s,n+s])if(i>=0&&i<t.length&&Rt(t[i])===o)return i}}if(e.anchorText){let r=e.anchorText.trim(),n=Yi(r),o=[];for(let s=0;s<t.length;s++)(t[s].includes(r)||Yi(t[s]).includes(n))&&o.push(s);if(o.length===1)return o[0];if(o.length>1){let s=e.anchor.match(/^L(\d+)/);if(s){let i=parseInt(s[1],10)-1,a=o[0],c=Math.abs(o[0]-i);for(let u of o.slice(1)){let l=Math.abs(u-i);l<c&&(a=u,c=l)}return a}return o[0]}}if(e.anchor){let r=e.anchor.match(/^L(\d+)/);if(r){let n=parseInt(r[1],10)-1;return Math.max(0,Math.min(n,t.length-1))}}return t.length>0?0:-1}function Xd(t){for(let e=t.length-1;e>=0;e--)if(t[e].trim())return t[e].trim();return null}function i_(t){for(let e=t.length-1;e>=0;e--)if(t[e].trim())return e;return-1}function ea(t){return Rt(t)}function a_(t){return Yd(t).replace(/&#39;/g,"'").replace(/&lt;/g,"<").replace(/&gt;/g,">")}function _P(t){let e=t.toLowerCase();if(e==="red"||e==="blue"||e==="yellow")return e;let r=vr[e];return r==="red"||r==="blue"||r==="yellow"?r:null}var vP='<!-- CHECKPOINT id="([^"]+)" time="([^"]+)" note="([^"]*)" fixes=(\\d+) questions=(\\d+) highlights=(\\d+) sections="([^"]*)" -->';function nn(t){let e=[],r=new RegExp(vP,"g"),n;for(;(n=r.exec(t))!==null;)e.push({id:n[1],timestamp:n[2],note:n[3],fixes:parseInt(n[4],10),questions:parseInt(n[5],10),highlights:parseInt(n[6],10),sectionsReviewed:n[7]?n[7].split(","):[]});return e}function ep(t){let e=t.note.replace(/"/g,"&quot;"),r=t.sectionsReviewed.join(",");return`<!-- CHECKPOINT id="${t.id}" time="${t.timestamp}" note="${e}" fixes=${t.fixes} questions=${t.questions} highlights=${t.highlights} sections="${r}" -->`}function c_(t){return t.length===0?"":t.map(e=>`- [ ] ${e}`).join(`
57
- `)}function xr(t,e,r,n,o,s){let i=[],a=e||"docs/plan.md";if(i.push(`## Active Plan Review: ${a}`),i.push(`Follow this plan. Refer to ${a} for details.`),i.push(""),n.length>0){i.push("### Must Fix");for(let c of n){let u=c.section?` (${c.section})`:"";c.text&&c.feedback?i.push(`- "${Re(c.text,120)}"${u} \u2192 ${c.feedback}`):c.feedback?i.push(`- ${c.feedback}${u}`):c.text&&i.push(`- Fix: "${Re(c.text,80)}"${u}`)}i.push("")}if(o.length>0){i.push("### Open Questions (resolve before implementing)");for(let c of o){let u=c.section?` (${c.section})`:"";c.text&&c.feedback?i.push(`- "${Re(c.text,120)}"${u} \u2014 ${c.feedback}`):c.feedback?i.push(`- ${c.feedback}${u}`):c.text&&i.push(`- Question about: "${Re(c.text,80)}"${u}`)}i.push("")}if(s.length>0){i.push("### Key Points (preserve these)");for(let c of s)c.text&&i.push(`- "${Re(c.text,80)}"${c.section?` (${c.section})`:""}`),c.feedback&&i.push(`- ${c.feedback}`);i.push("")}return r.length>0&&(i.push("### Checklist"),i.push(c_(r)),i.push("")),i.push("When all items are complete, delete this section."),i.join(`
58
- `)}function wP(t,e,r,n,o,s){let i=[],a=e||"docs/plan.md";if(i.push("---"),i.push(`description: Plan review feedback for ${t||a}`),i.push("alwaysApply: true"),i.push("---"),i.push(""),i.push(`Follow the plan at ${a} strictly.`),i.push(""),n.length>0){i.push("Required changes:");for(let c of n)c.text&&c.feedback?i.push(`- "${Re(c.text,50)}" \u2192 ${c.feedback}`):c.feedback&&i.push(`- ${c.feedback}`);i.push("")}if(o.length>0){i.push("Open questions (resolve before coding):");for(let c of o)i.push(`- ${c.feedback||Re(c.text,80)}`);i.push("")}if(r.length>0){i.push("Checklist:");for(let c of r)i.push(`- [ ] ${c}`);i.push("")}return i.push("Remove this file when all items are complete."),i.join(`
59
- `)}function $P(t,e,r,n,o,s){let i=[],a=e||"docs/plan.md",c=t||"Untitled Plan";if(i.push(`# Plan Review Context \u2014 ${c}`),i.push(""),i.push(`**Source:** \`${a}\``),i.push(`**Reviewed:** ${new Date().toISOString().split("T")[0]}`),i.push(""),n.length>0){i.push("## Must Fix");for(let u of n){let l=u.section?` [${u.section}]`:"";u.text&&u.feedback?i.push(`- "${Re(u.text,120)}"${l} \u2192 ${u.feedback}`):u.feedback?i.push(`- ${u.feedback}${l}`):u.text&&i.push(`- "${Re(u.text,80)}"${l}`)}i.push("")}if(o.length>0){i.push("## Questions");for(let u of o){let l=u.section?` [${u.section}]`:"";u.text&&u.feedback?i.push(`- "${Re(u.text,120)}"${l} \u2014 ${u.feedback}`):u.feedback&&i.push(`- ${u.feedback}${l}`)}i.push("")}if(s.length>0){i.push("## Key Points");for(let u of s)u.text&&i.push(`- "${Re(u.text,80)}"`),u.feedback&&i.push(`- ${u.feedback}`);i.push("")}return r.length>0&&(i.push("## Checklist"),i.push(c_(r)),i.push("")),i.push("---"),i.push("*Generated by [md-feedback](https://github.com/yeominux/md-feedback). Delete when done.*"),i.join(`
60
- `)}var kP={cursor:wP,generic:$P,"claude-code":xr,codex:xr,copilot:xr,cline:xr,windsurf:xr,"roo-code":xr,gemini:xr,antigravity:xr};function u_(t,e,r,n,o,s){let i=Qd(n,o);if(i.length===0&&r.length===0)return["## No annotations found","","Select text in the editor and press **1** (highlight), **2** (fix), or **3** (question) to annotate.","Then export again to generate context for your AI tool."].join(`
61
- `);let a=i.filter(d=>d.type==="fix"),c=i.filter(d=>d.type==="question"),u=i.filter(d=>d.type==="important");if(s==="handoff")return"(Use Export > Handoff to generate handoff document)";let l=kP[s];return l(t,e,r,a,c,u)}function Ln(t){let e=0,r=0,n=0,o=ze(t);for(let s of o.memos){let i=s.color||"red";i==="red"?e++:i==="blue"?r++:n++}return{fixes:e,questions:r,highlights:n}}function on(t){let e=t.split(`
62
- `),r=[],n=new Set,o="";for(let s of e){let i=s.match(/^## (.+)/);if(i){o=i[1].trim();continue}if(!o)continue;(s.includes("<!-- USER_MEMO")||s.includes("<mark")||/(?<!`)==.+==(?!`)/.test(s))&&!n.has(o)&&(n.add(o),r.push(o))}return r}function sn(t){let e=[];for(let r of t.split(`
63
- `)){let n=r.match(/^## (.+)/);n&&e.push(n[1].trim())}return e}function tp(t,e){let r=Ln(t),n=on(t),o={id:ot("ckpt",{separator:"_"}),timestamp:new Date().toISOString(),note:e,fixes:r.fixes,questions:r.questions,highlights:r.highlights,sectionsReviewed:n},s=ep(o),a=t.trimEnd()+`
54
+ `}function h_(t){let e=["<!-- USER_MEMO",` id="${Je(t.id)}"`,` type="${t.type}"`,` status="${t.status}"`,` owner="${t.owner}"`,` source="${Je(t.source)}"`,` color="${t.color}"`,` text="${Je(t.text)}"`,` anchorText="${Je(t.anchorText)}"`,` anchor="${Je(t.anchor)}"`,` createdAt="${t.createdAt}"`,` updatedAt="${t.updatedAt}"`];return t.rejectReason&&e.push(` rejectReason="${Je(t.rejectReason)}"`),t.anchorConfidence&&e.push(` anchorConfidence="${t.anchorConfidence}"`),e.push("-->"),e.join(`
55
+ `)}function wP(t){let e=["<!-- GATE",` id="${t.id}"`,` type="${t.type}"`,` status="${t.status}"`,` blockedBy="${t.blockedBy.join(",")}"`,` canProceedIf="${Je(t.canProceedIf)}"`,` doneDefinition="${Je(t.doneDefinition)}"`];return t.override&&e.push(` override="${t.override}"`),e.push("-->"),e.join(`
56
+ `)}function $P(t){return["<!-- PLAN_CURSOR",` taskId="${t.taskId}"`,` step="${t.step}"`,` nextAction="${Je(t.nextAction)}"`,` lastSeenHash="${t.lastSeenHash}"`,` updatedAt="${t.updatedAt}"`,"-->"].join(`
57
+ `)}function up(t){let e=t.sectionsReviewed.join(",");return`<!-- CHECKPOINT id="${t.id}" time="${t.timestamp}" note="${Je(t.note)}" fixes=${t.fixes} questions=${t.questions} highlights=${t.highlights} sections="${e}" -->`}function kP(t){return["<!-- MEMO_IMPL",` id="${Je(t.id)}"`,` memoId="${Je(t.memoId)}"`,` status="${t.status}"`,` operations="${Je(JSON.stringify(t.operations))}"`,` summary="${Je(t.summary)}"`,` appliedAt="${t.appliedAt}"`,"-->"].join(`
58
+ `)}function SP(t){return["<!-- MEMO_ARTIFACT",` id="${Je(t.id)}"`,` memoId="${Je(t.memoId)}"`,` files="${t.files.join(",")}"`,` linkedAt="${t.linkedAt}"`,"-->"].join(`
59
+ `)}function TP(t){return`<!-- MEMO_DEPENDENCY id="${t.id}" from="${t.from}" to="${t.to}" type="${t.type}" -->`}function zP(t,e){let r=t[e];if(/^\s*>/.test(r)){let n=e;for(;n+1<t.length&&/^\s*>/.test(t[n+1]);)n++;return n}if(/^\s*\|/.test(r)){let n=e;for(;n+1<t.length&&/^\s*\|/.test(t[n+1]);)n++;return n}return e}function EP(t,e,r){if(e.length===0&&r.length===0)return t;let n=t.split(`
60
+ `),o=new Map,s=[];for(let u of e){let{lineIdx:l,confidence:d}=lp(n,u),p=u.anchor;if(u.anchorConfidence=d,l>=0){let m=`L${l+1}|${Zt(n[l])}`;m!==p&&(u.anchor=m);let f=zP(n,l),h=o.get(f)||[];h.push(u),o.set(f,h)}else s.push(u)}let i=new Map,a=new Map;for(let u of r)i.set(u.bodyStartIdx,`<!-- REVIEW_RESPONSE to="${u.to}" -->`),u.bodyEndIdx>=0&&a.set(u.bodyEndIdx,"<!-- /REVIEW_RESPONSE -->");let c=[];for(let u=0;u<n.length;u++){i.has(u)&&c.push(i.get(u)),c.push(n[u]);let l=o.get(u);if(l){l.sort((d,p)=>d.id.localeCompare(p.id));for(let d of l)c.push(h_(d))}a.has(u)&&c.push(a.get(u))}s.sort((u,l)=>u.id.localeCompare(l.id));for(let u of s)c.push(h_(u));return c.join(`
61
+ `)}function lp(t,e){if(e.anchor){let r=e.anchor.match(/^L(\d+)(?::L\d+)?\|(.+)$/);if(r){let n=parseInt(r[1],10)-1,o=r[2];if(n>=0&&n<t.length&&Zt(t[n])===o)return{lineIdx:n,confidence:"exact"};for(let s=1;s<=xP;s++)for(let i of[n-s,n+s])if(i>=0&&i<t.length&&Zt(t[i])===o)return{lineIdx:i,confidence:"nearby"}}}if(e.anchorText){let r=e.anchorText.trim(),n=Qn(r),o=[];for(let s=0;s<t.length;s++)ls(t[s])||(t[s].includes(r)||Qn(t[s]).includes(n))&&o.push(s);if(o.length===1)return{lineIdx:o[0],confidence:"text"};if(o.length>1){let s=e.anchor.match(/^L(\d+)/);if(s){let i=parseInt(s[1],10)-1,a=o[0],c=Math.abs(o[0]-i);for(let u of o.slice(1)){let l=Math.abs(u-i);l<c&&(a=u,c=l)}return{lineIdx:a,confidence:"text"}}return{lineIdx:o[0],confidence:"text"}}}if(e.anchor){let r=e.anchor.match(/^L(\d+)/);if(r){let n=parseInt(r[1],10)-1;return{lineIdx:Math.max(0,Math.min(n,t.length-1)),confidence:"line_number"}}}return t.length>0?{lineIdx:t.length-1,confidence:"fallback"}:{lineIdx:-1,confidence:"fallback"}}function dp(t,e){return lp(t,e).lineIdx}function cp(t){for(let e=t.length-1;e>=0;e--)if(t[e].trim())return t[e].trim();return null}function g_(t){for(let e=t.length-1;e>=0;e--)if(t[e].trim())return e;return-1}function pa(t){return Zt(t)}function la(t){return da(t).replace(/&#39;/g,"'").replace(/&lt;/g,"<").replace(/&gt;/g,">")}function PP(t){let e=t.toLowerCase();if(e==="red"||e==="blue"||e==="yellow")return e;let r=Rr[e];return r==="red"||r==="blue"||r==="yellow"?r:null}var RP='<!-- CHECKPOINT id="([^"]+)" time="([^"]+)" note="([^"]*)" fixes=(\\d+) questions=(\\d+) highlights=(\\d+) sections="([^"]*)" -->';function mn(t){let e=[],r=new RegExp(RP,"g"),n;for(;(n=r.exec(t))!==null;)e.push({id:n[1],timestamp:n[2],note:n[3],fixes:parseInt(n[4],10),questions:parseInt(n[5],10),highlights:parseInt(n[6],10),sectionsReviewed:n[7]?n[7].split(","):[]});return e}function y_(t){return t.length===0?"":t.map(e=>`- [ ] ${e}`).join(`
62
+ `)}function Ir(t,e,r,n,o,s){let i=[],a=e||"docs/plan.md";if(i.push(`## Active Plan Review: ${a}`),i.push(`Follow this plan. Refer to ${a} for details.`),i.push(""),n.length>0){i.push("### Must Fix");for(let c of n){let u=c.section?` (${c.section})`:"";c.text&&c.feedback?i.push(`- "${Ce(c.text,120)}"${u} \u2192 ${c.feedback}`):c.feedback?i.push(`- ${c.feedback}${u}`):c.text&&i.push(`- Fix: "${Ce(c.text,80)}"${u}`)}i.push("")}if(o.length>0){i.push("### Open Questions (resolve before implementing)");for(let c of o){let u=c.section?` (${c.section})`:"";c.text&&c.feedback?i.push(`- "${Ce(c.text,120)}"${u} \u2014 ${c.feedback}`):c.feedback?i.push(`- ${c.feedback}${u}`):c.text&&i.push(`- Question about: "${Ce(c.text,80)}"${u}`)}i.push("")}if(s.length>0){i.push("### Key Points (preserve these)");for(let c of s)c.text&&i.push(`- "${Ce(c.text,80)}"${c.section?` (${c.section})`:""}`),c.feedback&&i.push(`- ${c.feedback}`);i.push("")}return r.length>0&&(i.push("### Checklist"),i.push(y_(r)),i.push("")),i.push("When all items are complete, delete this section."),i.join(`
63
+ `)}function MP(t,e,r,n,o,s){let i=[],a=e||"docs/plan.md";if(i.push("---"),i.push(`description: Plan review feedback for ${t||a}`),i.push("alwaysApply: true"),i.push("---"),i.push(""),i.push(`Follow the plan at ${a} strictly.`),i.push(""),n.length>0){i.push("Required changes:");for(let c of n)c.text&&c.feedback?i.push(`- "${Ce(c.text,50)}" \u2192 ${c.feedback}`):c.feedback&&i.push(`- ${c.feedback}`);i.push("")}if(o.length>0){i.push("Open questions (resolve before coding):");for(let c of o)i.push(`- ${c.feedback||Ce(c.text,80)}`);i.push("")}if(r.length>0){i.push("Checklist:");for(let c of r)i.push(`- [ ] ${c}`);i.push("")}return i.push("Remove this file when all items are complete."),i.join(`
64
+ `)}function AP(t,e,r,n,o,s){let i=[],a=e||"docs/plan.md",c=t||"Untitled Plan";if(i.push(`# Plan Review Context \u2014 ${c}`),i.push(""),i.push(`**Source:** \`${a}\``),i.push(`**Reviewed:** ${new Date().toISOString().split("T")[0]}`),i.push(""),n.length>0){i.push("## Must Fix");for(let u of n){let l=u.section?` [${u.section}]`:"";u.text&&u.feedback?i.push(`- "${Ce(u.text,120)}"${l} \u2192 ${u.feedback}`):u.feedback?i.push(`- ${u.feedback}${l}`):u.text&&i.push(`- "${Ce(u.text,80)}"${l}`)}i.push("")}if(o.length>0){i.push("## Questions");for(let u of o){let l=u.section?` [${u.section}]`:"";u.text&&u.feedback?i.push(`- "${Ce(u.text,120)}"${l} \u2014 ${u.feedback}`):u.feedback&&i.push(`- ${u.feedback}${l}`)}i.push("")}if(s.length>0){i.push("## Key Points");for(let u of s)u.text&&i.push(`- "${Ce(u.text,80)}"`),u.feedback&&i.push(`- ${u.feedback}`);i.push("")}return r.length>0&&(i.push("## Checklist"),i.push(y_(r)),i.push("")),i.push("---"),i.push("*Generated by [md-feedback](https://github.com/yeominux/md-feedback). Delete when done.*"),i.join(`
65
+ `)}var CP={cursor:MP,generic:AP,"claude-code":Ir,codex:Ir,copilot:Ir,cline:Ir,windsurf:Ir,"roo-code":Ir,gemini:Ir,antigravity:Ir};function __(t,e,r,n,o,s){let i=ap(n,o);if(i.length===0&&r.length===0)return["## No annotations found","","Select text in the editor and press **1** (highlight), **2** (fix), or **3** (question) to annotate.","Then export again to generate context for your AI tool."].join(`
66
+ `);let a=i.filter(d=>d.type==="fix"),c=i.filter(d=>d.type==="question"),u=i.filter(d=>d.type==="important");if(s==="handoff")return"(Use Export > Handoff to generate handoff document)";let l=CP[s];return l(t,e,r,a,c,u)}function Xn(t){let e=0,r=0,n=0,o=ze(t);for(let s of o.memos){let i=s.color||"red";i==="red"?e++:i==="blue"?r++:n++}return{fixes:e,questions:r,highlights:n}}function hn(t){let e=t.split(`
67
+ `),r=[],n=new Set,o="";for(let s of e){let i=s.match(/^## (.+)/);if(i){o=i[1].trim();continue}if(!o)continue;(s.includes("<!-- USER_MEMO")||s.includes("<mark")||/(?<!`)==.+==(?!`)/.test(s))&&!n.has(o)&&(n.add(o),r.push(o))}return r}function gn(t){let e=[];for(let r of t.split(`
68
+ `)){let n=r.match(/^## (.+)/);n&&e.push(n[1].trim())}return e}function pp(t,e){let r=Xn(t),n=hn(t),o={id:ut("ckpt",{separator:"_"}),timestamp:new Date().toISOString(),note:e,fixes:r.fixes,questions:r.questions,highlights:r.highlights,sectionsReviewed:n},s=up(o),a=t.trimEnd()+`
64
69
 
65
70
  `+s+`
66
- `;return{checkpoint:o,updatedMarkdown:a}}function ta(t,e){let r=nn(t),n=Ln(t),o=on(t),s=sn(t),i={file:e,startedAt:r.length>0?r[0].timestamp:new Date().toISOString(),lastCheckpoint:r.length>0?r[r.length-1].timestamp:"",checkpointCount:r.length,totalFixes:n.fixes,totalQuestions:n.questions,totalHighlights:n.highlights},a=[],c=[],u=[];SP(t,a,c,u);let l=[];for(let p of c)l.push(`Resolve: ${p.feedback||p.text}`);let d=s.filter(p=>!o.includes(p));for(let p of d)l.push(`Review uncovered: ${p} section`);return{meta:i,decisions:a,openQuestions:c,keyPoints:u,checkpoints:r,nextSteps:l}}function SP(t,e,r,n){let o=t.split(`
67
- `),s="";for(let i=0;i<o.length;i++){let a=o[i],c=a.match(/^## (.+)/);if(c){s=c[1].trim();continue}let u=a.match(/<!-- USER_MEMO\s+id="[^"]+"\s+(.*?)\s*:\s*(.*?)\s*-->/);if(u){let p=u[1].match(/color="([^"]+)"/),m=p?p[1]:"red",f=u[2].replace(/--\u200B>/g,"-->"),g="";for(let y=i-1;y>=0;y--)if(o[y].trim()&&!o[y].includes("<!-- ")){g=o[y].trim(),g=g.replace(/<\/?mark[^>]*>/g,"");break}let h={section:s,text:g,feedback:f};m==="red"?e.push(h):m==="blue"?r.push(h):n.push(h);continue}if(/^<!-- USER_MEMO\s*$/.test(a.trim())){let d=[];for(i++;i<o.length&&!/^-->$/.test(o[i].trim());)d.push(o[i]),i++;let p={};for(let y of d){let v=y.trim().match(/^(\w+)="([^"]*)"$/);v&&(p[v[1]]=v[2])}let m=p.color||"red",f=(p.text||"").replace(/--\u200B>/g,"-->"),g="";if(p.anchorText)g=p.anchorText.replace(/<\/?mark[^>]*>/g,"");else for(let y=i-1;y>=0;y--)if(o[y].trim()&&!o[y].includes("<!-- ")){g=o[y].trim().replace(/<\/?mark[^>]*>/g,"");break}let h={section:s,text:g,feedback:f};m==="red"?e.push(h):m==="blue"?r.push(h):n.push(h);continue}let l=a.match(/<mark[^>]*(?:data-color="([^"]+)"|style="background-color:\s*([^"]+)")?\s*>(.*?)<\/mark>/)||a.match(/==(.*?)==/);if(l){if((i+1<o.length?o[i+1]:"").includes("<!-- USER_MEMO"))continue;let p,m;if(l.length===2)p=l[1],m="yellow";else{let g=(l[1]||l[2]||"").trim();m=vr[g]||"yellow",p=l[3]}let f={section:s,text:p,feedback:""};m==="red"?e.push(f):m==="blue"?r.push(f):n.push(f)}}}function ra(t,e="standalone"){let r=[];if(e==="standalone"?(r.push(`# HANDOFF \u2014 \`${t.meta.file}\``),r.push("")):e==="claude-md"?(r.push(`## Session Handoff: ${t.meta.file}`),r.push("")):(r.push("---"),r.push(`description: Session handoff for ${t.meta.file}`),r.push("alwaysApply: true"),r.push("---"),r.push("")),r.push("## Session"),r.push(`- **File**: \`${t.meta.file}\``),r.push(`- **Started**: ${t.meta.startedAt}`),t.meta.lastCheckpoint&&r.push(`- **Last checkpoint**: ${t.meta.lastCheckpoint}`),r.push(`- **Checkpoints**: ${t.meta.checkpointCount}`),r.push(`- **Annotations**: ${t.meta.totalFixes} fix, ${t.meta.totalQuestions} question, ${t.meta.totalHighlights} highlight`),r.push(""),t.decisions.length>0){r.push(`## Decisions Made (${t.decisions.length})`),r.push("Marked as FIX. Decided \u2014 implement as specified.");for(let n=0;n<t.decisions.length;n++){let o=t.decisions[n],s=o.section?`[${o.section}]`:"[General]";o.text&&o.feedback?r.push(`${n+1}. **${s}** "${Re(o.text,60)}" \u2192 ${o.feedback}`):o.feedback?r.push(`${n+1}. **${s}** ${o.feedback}`):o.text&&r.push(`${n+1}. **${s}** "${Re(o.text,80)}"`)}r.push("")}if(t.openQuestions.length>0){r.push(`## Open Questions (${t.openQuestions.length})`),r.push("Marked as QUESTION. Unresolved \u2014 investigate before implementing.");for(let n=0;n<t.openQuestions.length;n++){let o=t.openQuestions[n],s=o.section?`[${o.section}]`:"[General]";o.text&&o.feedback?r.push(`${n+1}. **${s}** "${Re(o.text,60)}" \u2014 ${o.feedback}`):o.feedback?r.push(`${n+1}. **${s}** ${o.feedback}`):o.text&&r.push(`${n+1}. **${s}** "${Re(o.text,80)}"`)}r.push("")}if(t.keyPoints.length>0){r.push(`## Key Points (${t.keyPoints.length})`),r.push("Marked as HIGHLIGHT. Important context \u2014 preserve during implementation.");for(let n=0;n<t.keyPoints.length;n++){let o=t.keyPoints[n],s=o.section?`[${o.section}]`:"[General]";o.text&&r.push(`${n+1}. **${s}** "${Re(o.text,80)}"`),o.feedback&&r.push(` ${o.feedback}`)}r.push("")}if(t.checkpoints.length>0){r.push("## Progress Checkpoints"),r.push("| # | Time | Note | Fixes | Questions | Highlights |"),r.push("|---|------|------|-------|-----------|------------|");for(let n=0;n<t.checkpoints.length;n++){let o=t.checkpoints[n],s=o.timestamp.split("T")[1]?.split(".")[0]||o.timestamp;r.push(`| ${n+1} | ${s} | ${o.note} | ${o.fixes} | ${o.questions} | ${o.highlights} |`)}r.push("")}if(t.nextSteps.length>0){r.push("## Next Steps");for(let n of t.nextSteps)r.push(`- [ ] ${n}`);r.push("")}return r.push("---"),r.push("*Generated by md-feedback. Feed this to your AI coding agent.*"),r.join(`
68
- `)}function l_(t){let e=t.split(`
69
- `),r="",n={file:"",startedAt:"",lastCheckpoint:"",checkpointCount:0,totalFixes:0,totalQuestions:0,totalHighlights:0},o=[],s=[],i=[],a=[],c=[];for(let u of e){let l=u.match(/^## (.+)/);if(l){r=l[1].trim();continue}if(r.startsWith("Session")){let p=u.match(/\*\*File\*\*:\s*`([^`]+)`/);p&&(n.file=p[1]);let m=u.match(/\*\*Started\*\*:\s*(.+)/);m&&(n.startedAt=m[1].trim());let f=u.match(/\*\*Last checkpoint\*\*:\s*(.+)/);f&&(n.lastCheckpoint=f[1].trim());let g=u.match(/\*\*Checkpoints\*\*:\s*(\d+)/);g&&(n.checkpointCount=parseInt(g[1],10));let h=u.match(/\*\*Annotations\*\*:\s*(\d+)\s*fix,\s*(\d+)\s*question,\s*(\d+)\s*highlight/);h&&(n.totalFixes=parseInt(h[1],10),n.totalQuestions=parseInt(h[2],10),n.totalHighlights=parseInt(h[3],10))}let d=u.match(/^\d+\.\s+\*\*\[([^\]]*)\]\*\*\s+(.+)/);if(d){let p=d[1],m=d[2],f=m.match(/"([^"]+)"\s*→\s*(.+)/),g=m.match(/"([^"]+)"\s*—\s*(.+)/),h;if(f)h={section:p,text:f[1],feedback:f[2]};else if(g)h={section:p,text:g[1],feedback:g[2]};else{let y=m.match(/"([^"]+)"/);h={section:p,text:y?y[1]:"",feedback:y?"":m}}r.startsWith("Decisions")?o.push(h):r.startsWith("Open Questions")?s.push(h):r.startsWith("Key Points")&&i.push(h)}if(r.startsWith("Progress Checkpoints")){let p=u.match(/^\|\s*(\d+)\s*\|\s*([^|]+)\|\s*([^|]*)\|\s*(\d+)\s*\|\s*(\d+)\s*\|\s*(\d+)\s*\|/);p&&a.push({id:`ckpt_restored_${p[1]}`,timestamp:p[2].trim(),note:p[3].trim(),fixes:parseInt(p[4],10),questions:parseInt(p[5],10),highlights:parseInt(p[6],10),sectionsReviewed:[]})}if(r.startsWith("Next Steps")){let p=u.match(/^- \[ \]\s+(.+)/);p&&c.push(p[1])}}return n.file?{meta:n,decisions:o,openQuestions:s,keyPoints:i,checkpoints:a,nextSteps:c}:null}function TP(t,e){return t.blockedBy.length>0&&t.blockedBy.map(o=>e.find(s=>s.id===o)).filter(o=>o!=null&&!Pt(o.status)).length>0?"blocked":e.some(n=>!Pt(n.status))?"proceed":"done"}function It(t,e){return t.map(r=>({...r,status:r.override||TP(r,e)}))}function d_(t,e,r,n,o,s){let i={},a={},c=0;for(let b of t)i[b.status]=(i[b.status]||0)+1,a[b.type]=(a[b.type]||0)+1,Pt(b.status)&&c++;let u=t.length>0?c/t.length:0,l={},d=0,p=0,m=0;for(let b of e)l[b.status]=(l[b.status]||0)+1,b.status==="applied"&&d++,b.status==="reverted"&&p++,b.status==="failed"&&m++;let f={};for(let b of r)f[b.status]=(f[b.status]||0)+1;let g=new Set;for(let b of o)for(let _ of b.files)g.add(_);let h=s.filter(b=>b.type==="blocks").length,y=null;n.length>0&&(y=n.reduce((b,_)=>_.timestamp>b?_.timestamp:b,n[0].timestamp));let v=null,x=t.filter(b=>Pt(b.status)&&b.createdAt&&b.updatedAt);if(x.length>0){let b=0,_=0;for(let z of x){let q=new Date(z.createdAt).getTime(),j=new Date(z.updatedAt).getTime();!isNaN(q)&&!isNaN(j)&&j>q&&(b+=j-q,_++)}_>0&&(v=b/_)}return{totalMemos:t.length,byStatus:i,byType:a,resolutionRate:u,totalImpls:e.length,implsByStatus:l,appliedCount:d,revertedCount:p,failedCount:m,totalGates:r.length,gatesByStatus:f,totalArtifacts:o.length,linkedFiles:g.size,totalDependencies:s.length,blockingChains:h,totalCheckpoints:n.length,lastCheckpoint:y,avgResolutionTime:v}}var ut=class extends Error{constructor(r,n,o){super(n);this.code=r;this.details=o;this.name="ToolError"}},es=class extends ut{constructor(e,r){super("FILE_SAFETY",e,r),this.name="FileSafetyError"}},na=class extends ut{constructor(e){super("FILE_NOT_FOUND",`File not found: ${e}`,{file:e}),this.name="FileNotFoundError"}},oa=class extends ut{constructor(e,r){super("FILE_READ",`Cannot read file ${e}${r?`: ${r}`:""}`,{file:e,...r?{cause:r}:{}}),this.name="FileReadError"}},sa=class extends ut{constructor(e,r){super("FILE_WRITE",`Cannot write file ${e}${r?`: ${r}`:""}`,{file:e,...r?{cause:r}:{}}),this.name="FileWriteError"}},ia=class extends ut{constructor(e){super("FILE_LOCK_TIMEOUT",`Timeout acquiring lock: ${e}`,{lockPath:e}),this.name="FileLockTimeoutError"}},br=class extends ut{constructor(e,r){super("PATCH_APPLY",e,r),this.name="PatchApplyError"}},Ot=class extends ut{constructor(e){super("MEMO_NOT_FOUND",`Memo not found: ${e}`,{memoId:e}),this.name="MemoNotFoundError"}},de=class extends ut{constructor(e,r){super("OPERATION_INVALID",e,r),this.name="OperationValidationError"}},ts=class extends ut{constructor(e,r){super("ANCHOR_NOT_FOUND",`Anchor text not found: "${e}"`,{anchorText:e,matchCount:0,...r??{}}),this.name="AnchorNotFoundError"}},aa=class extends ut{constructor(e){super("HANDOFF_INVALID","Not a valid handoff document",{file:e}),this.name="InvalidHandoffError"}};function rp(t){return t instanceof ut?{error:t.message,code:t.code,type:t.name,...t.details?{details:t.details}:{}}:t instanceof Error?{error:t.message}:{error:String(t)}}var p_={respond_to_memo:{allowedMemoTypes:["question"],guidance:"Use apply_memo/update_memo_progress for fix memos."},apply_memo:{allowedMemoTypes:["fix"],guidance:"Use respond_to_memo for question memos."},batch_apply:{allowedMemoTypes:["fix"],guidance:"Use respond_to_memo for question memos."}},zP={...p_};function f_(t=process.env){return t.MD_FEEDBACK_POLICY_PROFILE?.trim().toLowerCase()==="strict"?"strict":"default"}function m_(t){return t==="strict"?zP:p_}function h_(t=f_()){let e=m_(t);return{profile:t,memoActions:{respond_to_memo:{allowedMemoTypes:[...e.respond_to_memo.allowedMemoTypes]},apply_memo:{allowedMemoTypes:[...e.apply_memo.allowedMemoTypes]},batch_apply:{allowedMemoTypes:[...e.batch_apply.allowedMemoTypes]}}}}function ca(t,e,r,n=f_()){let s=m_(n)[t];if(!s.allowedMemoTypes.includes(r))throw new de(`${t} supports only ${s.allowedMemoTypes.join(", ")} memos. ${s.guidance}`,{memoId:e,memoType:r,action:t,policyProfile:n,allowedMemoTypes:s.allowedMemoTypes})}var vt=require("node:fs"),ip=require("node:path"),da=require("node:crypto");var ue=require("fs"),De=require("path"),np=require("node:crypto");var EP=2e3,PP=10,RP=20;function op(t){return(0,De.isAbsolute)(t)?t:(0,De.resolve)(process.cwd(),t)}function la(t){let e=op(t);if(!(0,ue.existsSync)(e))throw new na(e);try{return(0,ue.readFileSync)(e,"utf-8")}catch(r){throw new oa(e,r instanceof Error?r.message:String(r))}}function g_(t,e){let r=op(t),n=(0,De.dirname)(r),o=(0,De.join)(n,`.mf-tmp-${(0,np.randomBytes)(6).toString("hex")}`);try{(0,ue.writeFileSync)(o,e,"utf-8"),(0,ue.renameSync)(o,r)}catch(s){try{(0,ue.unlinkSync)(o)}catch{}throw new sa(r,s instanceof Error?s.message:String(s))}}var ua=new Map;async function IP(t,e){for(;ua.has(t);)await ua.get(t);let r;ua.set(t,new Promise(n=>{r=n}));try{return await e()}finally{ua.delete(t),r()}}function OP(t){return new Promise(e=>setTimeout(e,t))}async function MP(t,e=EP){let r=Date.now();for(;;)try{let n=(0,ue.openSync)(t,"wx");return()=>{try{(0,ue.closeSync)(n)}catch{}try{(0,ue.unlinkSync)(t)}catch{}}}catch(n){if(n.code!=="EEXIST")throw n;if(Date.now()-r>e)throw new ia(t);await OP(PP)}}function an(t){let e=op(t),r=(0,De.join)((0,De.dirname)(e),".md-feedback");return(0,ue.existsSync)(r)||(0,ue.mkdirSync)(r,{recursive:!0}),r}function rs(t,e){let r=an(t),n=(0,De.join)(r,"snapshots");(0,ue.existsSync)(n)||(0,ue.mkdirSync)(n,{recursive:!0});let o=new Date().toISOString().replace(/[:.]/g,"-"),s=(0,De.join)(n,`snapshot-${o}.md`);(0,ue.writeFileSync)(s,e,"utf-8");let i=(0,ue.readdirSync)(n).filter(a=>a.startsWith("snapshot-")).sort();for(;i.length>RP;)try{(0,ue.unlinkSync)((0,De.join)(n,i.shift()))}catch{}return s}function y_(t){let e=an(t),r=(0,De.join)(e,"progress.json");if(!(0,ue.existsSync)(r))return[];try{return JSON.parse((0,ue.readFileSync)(r,"utf-8"))}catch{return[]}}async function __(t,e){let r=an(t),n=(0,De.join)(r,"progress.json"),o=`${n}.lock`;await IP(n,async()=>{let s=await MP(o);try{let i=[];if((0,ue.existsSync)(n))try{i=JSON.parse((0,ue.readFileSync)(n,"utf-8"))}catch{i=[]}i.push(e);let a=`${n}.tmp-${(0,np.randomBytes)(6).toString("hex")}`;(0,ue.writeFileSync)(a,JSON.stringify(i,null,2),"utf-8"),(0,ue.renameSync)(a,n)}finally{s()}})}function v_(t,e){let r=an(t),n=(0,De.join)(r,"transactions");(0,ue.existsSync)(n)||(0,ue.mkdirSync)(n,{recursive:!0});let o=new Date().toISOString().replace(/[:.]/g,"-"),s=(0,De.join)(n,`tx-${o}.json`);return(0,ue.writeFileSync)(s,JSON.stringify(e,null,2),"utf-8"),s}var ns=["scope","root_cause","implementation","verification"],AP={create_annotation:["scope","root_cause"],respond_to_memo:["root_cause","implementation"],apply_memo:["implementation"],batch_apply:["implementation"],rollback_memo:["implementation"],update_memo_status:["implementation","verification"],update_memo_progress:["implementation","verification"],link_artifacts:["implementation","verification"],update_cursor:["implementation","verification"],create_checkpoint:["verification"],set_memo_severity:["scope","root_cause","implementation","verification"],request_approval_checkpoint:["scope","root_cause","implementation","verification"],approve_checkpoint:["scope","root_cause","implementation","verification"]},CP=new Set(["batch_apply","rollback_memo"]);function x_(t){return(0,ip.join)(an(t),"workflow.json")}function b_(t){return(0,ip.join)(an(t),"severity.json")}function w_(t=process.env){return t.MD_FEEDBACK_WORKFLOW_ENFORCEMENT?.trim().toLowerCase()==="strict"?"strict":"off"}function $_(t){let e=b_(t);if(!(0,vt.existsSync)(e))return{version:"1.0",overrides:{},updatedAt:new Date().toISOString()};try{let r=Kd((0,vt.readFileSync)(e,"utf-8"));return{version:"1.0",overrides:r.overrides&&typeof r.overrides=="object"?r.overrides:{},updatedAt:typeof r.updatedAt=="string"?r.updatedAt:new Date().toISOString()}}catch{return{version:"1.0",overrides:{},updatedAt:new Date().toISOString()}}}function NP(t,e){let r=b_(t),n=`${r}.tmp-${(0,da.randomBytes)(6).toString("hex")}`;(0,vt.writeFileSync)(n,JSON.stringify(e,null,2),"utf-8"),(0,vt.renameSync)(n,r)}function jP(t){return t==="fix"?"blocking":"non_blocking"}function k_(t,e,r){let o={version:"1.0",overrides:{...$_(t).overrides,[e]:r},updatedAt:new Date().toISOString()};return NP(t,o),o}function ap(t){let e=la(t),r=ze(e),n=$_(t).overrides,o=r.memos.filter(s=>!Pt(s.status)).filter(s=>(n[s.id]??jP(s.type))==="blocking").map(s=>s.id);return{overrides:n,unresolvedBlockingMemos:o}}function pa(t,e){let r=x_(t),n=`${r}.tmp-${(0,da.randomBytes)(6).toString("hex")}`;(0,vt.writeFileSync)(n,JSON.stringify(e,null,2),"utf-8"),(0,vt.renameSync)(n,r)}function sp(){return{version:"1.0",phase:"scope",status:"active",transitions:[],pendingCheckpoint:null,approvals:[],approvalGrant:null,updatedAt:new Date().toISOString()}}function ZP(t){let e=x_(t);if(!(0,vt.existsSync)(e))return sp();try{let r=Kd((0,vt.readFileSync)(e,"utf-8")),n=r.phase,o=Array.isArray(r.transitions)?r.transitions:[];return!n||!ns.includes(n)?sp():{version:"1.0",phase:n,status:"active",transitions:o,pendingCheckpoint:r.pendingCheckpoint&&typeof r.pendingCheckpoint=="object"?r.pendingCheckpoint:null,approvals:Array.isArray(r.approvals)?r.approvals:[],approvalGrant:r.approvalGrant&&typeof r.approvalGrant=="object"?r.approvalGrant:null,updatedAt:typeof r.updatedAt=="string"?r.updatedAt:new Date().toISOString()}}catch{return sp()}}function wr(t){let e=ZP(t);return e.transitions.length===0&&e.phase==="scope"&&pa(t,e),e}function st(t,e){let r=wr(t);if(w_()!=="strict")return r;let n=AP[e];if(!n||n.includes(r.phase))return r;throw new de(`Tool "${e}" is not allowed in phase "${r.phase}".`,{tool:e,currentPhase:r.phase,allowedPhases:n})}function S_(t,e){let r=wr(t),n=e(r);return pa(t,n),n}function cp(t,e,r){return S_(t,n=>n.pendingCheckpoint&&n.pendingCheckpoint.tool===e?n:{...n,pendingCheckpoint:{id:`chk_${(0,da.randomBytes)(4).toString("hex")}`,tool:e,reason:r,requestedAt:new Date().toISOString()},updatedAt:new Date().toISOString()})}function T_(t,e,r,n){return S_(t,o=>{let s=o.pendingCheckpoint;if(!s||s.tool!==e)throw new de(`No pending checkpoint for tool "${e}".`,{tool:e,pendingCheckpoint:s});let i={checkpointId:s.id,tool:e,approvedBy:r,reason:n,approvedAt:new Date().toISOString()};return{...o,pendingCheckpoint:null,approvals:[...o.approvals,i],approvalGrant:{checkpointId:s.id,tool:e,approvedBy:r,approvedAt:i.approvedAt,consumed:!1},updatedAt:new Date().toISOString()}})}function up(t,e,r){if(w_()!=="strict"||!CP.has(e))return wr(t);let n=wr(t);if(n.approvalGrant&&!n.approvalGrant.consumed&&n.approvalGrant.tool===e){let s={...n,approvalGrant:{...n.approvalGrant,consumed:!0},updatedAt:new Date().toISOString()};return pa(t,s),s}let o=cp(t,e,r);throw new de(`Approval required before high-risk tool "${e}".`,{tool:e,reason:r,pendingCheckpoint:o.pendingCheckpoint})}function z_(t,e,r,n){let o=wr(t);if(e===o.phase)return o;let s=ns.indexOf(o.phase);if(ns.indexOf(e)!==s+1)throw new de(`Invalid workflow transition: ${o.phase} -> ${e}. Expected next phase: ${ns[s+1]??"none"}.`,{currentPhase:o.phase,requestedPhase:e,expectedNextPhase:ns[s+1]??null});if(e==="verification"){let c=ap(t);if(c.unresolvedBlockingMemos.length>0)throw new de("Cannot advance to verification with unresolved blocking memos.",{currentPhase:o.phase,requestedPhase:e,unresolvedBlockingMemos:c.unresolvedBlockingMemos})}let a={...o,phase:e,updatedAt:new Date().toISOString(),transitions:[...o.transitions,{from:o.phase,to:e,tool:r,note:n,timestamp:new Date().toISOString()}]};return pa(t,a),a}function E_(t,e){let{safeRead:r,wrapTool:n,listDocuments:o}=e;t.tool("list_documents","List markdown files in the workspace. Optionally filter to only files that already contain annotations.",{annotatedOnly:T.boolean().optional().default(!1).describe("If true, return only files containing USER_MEMO/HIGHLIGHT_MARK annotations"),maxFiles:T.number().int().min(1).max(5e3).optional().default(500).describe("Maximum number of files to return")},async({annotatedOnly:s,maxFiles:i})=>n(async()=>{let a=o({annotatedOnly:s,maxFiles:i});return{content:[{type:"text",text:JSON.stringify({files:a,total:a.length},null,2)}]}})),t.tool("get_policy_status","Return current runtime policy profile and memo-action routing rules.",{},async()=>n(async()=>{let s=h_();return{content:[{type:"text",text:JSON.stringify({policy:s},null,2)}]}})),t.tool("get_workflow_status","Return current workflow phase and transition history for a document.",{file:T.string().describe("Path to the annotated markdown file")},async({file:s})=>n(async()=>{r(s);let i=wr(s);return{content:[{type:"text",text:JSON.stringify({workflow:i},null,2)}]}})),t.tool("get_severity_status","Return memo severity overrides and unresolved blocking memo IDs for the document.",{file:T.string().describe("Path to the annotated markdown file")},async({file:s})=>n(async()=>{r(s);let i=ap(s);return{content:[{type:"text",text:JSON.stringify({severity:i},null,2)}]}})),t.tool("get_checkpoints","List all checkpoints in an annotated markdown file.",{file:T.string().describe("Path to the annotated markdown file")},async({file:s})=>n(async()=>{let i=r(s),a=nn(i);return{content:[{type:"text",text:JSON.stringify({checkpoints:a},null,2)}]}})),t.tool("generate_handoff","Generate a structured handoff document from an annotated markdown file. Anti-compression format: explicit fields, numbers, lists only.",{file:T.string().describe("Path to the annotated markdown file"),target:T.enum(["standalone","claude-md","cursor-rules"]).optional().describe("Output format target (default: standalone)")},async({file:s,target:i})=>n(async()=>{let a=r(s),c=ta(a,s);return{content:[{type:"text",text:ra(c,i||"standalone")}]}})),t.tool("get_review_status","Get current review session status: annotation counts, checkpoints, and reviewed sections. Summary-only \u2014 returns counts and metadata, not individual memos. Use list_annotations for memo details or get_document_structure for the full parse.",{file:T.string().describe("Path to the annotated markdown file")},async({file:s})=>n(async()=>{let i=r(s),a=Ln(i),c=nn(i),u=on(i),l={file:s,annotations:a,checkpointCount:c.length,lastCheckpoint:c.length>0?c[c.length-1].timestamp:null,sectionsReviewed:u};return{content:[{type:"text",text:JSON.stringify(l,null,2)}]}})),t.tool("pickup_handoff","Parse an existing handoff document to resume a review session. Returns structured data for session continuity.",{file:T.string().describe("Path to the handoff markdown file")},async({file:s})=>n(async()=>{let i=r(s),a=l_(i);if(!a)throw new aa(s);return{content:[{type:"text",text:JSON.stringify(a,null,2)}]}})),t.tool("list_annotations","List all annotations (USER_MEMO comments) in a markdown file. Returns structured array with id, type, status, owner, text, and color. Lightweight \u2014 returns only memo data, no document body or sections. Use get_document_structure for the full parse.",{file:T.string().describe("Path to the annotated markdown file")},async({file:s})=>n(async()=>{let i=r(s),c=ze(i).memos.map(u=>({id:u.id,type:u.type,status:u.status,owner:u.owner,source:u.source,color:u.color,text:u.text,anchorText:u.anchorText,anchor:u.anchor,createdAt:u.createdAt,updatedAt:u.updatedAt}));return{content:[{type:"text",text:JSON.stringify({annotations:c,total:c.length},null,2)}]}})),t.tool("get_document_structure","Parse an annotated markdown file and return v0.4.0 ReviewDocument metadata. By default bodyMd is omitted to reduce context size; set includeBody=true only when full body is required.",{file:T.string().describe("Path to the annotated markdown file"),includeBody:T.boolean().optional().default(!1).describe("Include full bodyMd content (larger payload)")},async({file:s,includeBody:i})=>n(async()=>{let a=r(s),c=ze(a),u=sn(a),l=on(a),d=It(c.gates,c.memos),p=0,m=0,f=0,g=0,h=0,y=0,v=0,x=0,b=0,_=0;for(let R of c.memos)R.status==="open"?p++:R.status==="in_progress"?m++:R.status==="needs_review"?f++:R.status==="answered"?g++:R.status==="done"?h++:R.status==="failed"?y++:R.status==="wontfix"&&v++,R.type==="fix"?x++:R.type==="question"?b++:_++;let z=0;for(let R of d)R.status==="blocked"&&z++;let q={version:"0.4.0",file:s,bodyMd:i?c.body:"",memos:c.memos,checkpoints:c.checkpoints,gates:d,cursor:c.cursor,sections:{all:u,reviewed:l,uncovered:u.filter(R=>!l.includes(R))},impls:c.impls,artifacts:c.artifacts,dependencies:c.dependencies,summary:{total:c.memos.length,open:p,inProgress:m,needsReview:f,answered:g,done:h,failed:y,wontfix:v,blocked:z,fixes:x,questions:b,highlights:_}},j=d_(c.memos,c.impls,d,c.checkpoints,c.artifacts,c.dependencies);return{content:[{type:"text",text:JSON.stringify({...q,metrics:j},null,2)}]}})),t.tool("evaluate_gates","Evaluate all gates in a markdown file against current memo statuses. Returns updated gate statuses without modifying the file.",{file:T.string().describe("Path to the annotated markdown file")},async({file:s})=>n(async()=>{let i=r(s),a=ze(i),c=It(a.gates,a.memos);return{content:[{type:"text",text:JSON.stringify({gates:c,summary:{total:c.length,blocked:c.filter(u=>u.status==="blocked").length,proceed:c.filter(u=>u.status==="proceed").length,done:c.filter(u=>u.status==="done").length}},null,2)}]}}))}function P_(t,e){let{safeRead:r,wrapTool:n}=e;t.tool("export_review","Export review feedback in a format optimized for a specific AI coding tool. Targets: claude-code, cursor, codex, copilot, cline, windsurf, roo-code, gemini, antigravity, generic, handoff. Returns formatted markdown ready to save to the appropriate file.",{file:T.string().describe("Path to the annotated markdown file"),target:T.enum(["claude-code","cursor","codex","copilot","cline","windsurf","roo-code","gemini","antigravity","generic","handoff"]).describe("Target AI tool format")},async({file:o,target:s})=>n(async()=>{let i=r(o);if(s==="handoff"){let g=ta(i,o);return{content:[{type:"text",text:ra(g,"standalone")}]}}let c=ze(i).memos,u=sn(i),l=u[0]||"Plan Review",d={red:"#fca5a5",blue:"#93c5fd",yellow:"#fef08a"},p=c.map(g=>({text:g.anchorText||"",color:d[g.color]||"#fef08a",section:"",context:""})),m=c.map(g=>({id:g.id,text:g.text,color:g.color,section:"",context:g.anchorText||""}));return{content:[{type:"text",text:u_(l,o,u,p,m,s)}]}})),t.tool("get_memo_changes","Get the implementation history and progress for a memo. Returns all MemoImpl records and progress entries from .md-feedback/progress.json. If memoId is omitted, returns all changes.",{file:T.string().describe("Path to the annotated markdown file"),memoId:T.string().optional().describe("Optional memo ID to filter by \u2014 if omitted, returns all changes")},async({file:o,memoId:s})=>n(async()=>{let i=r(o),a=ze(i),c=s?a.impls.filter(d=>d.memoId===s):a.impls,u=y_(o),l=s?u.filter(d=>d.memoId===s):u;return{content:[{type:"text",text:JSON.stringify({impls:c,progress:l},null,2)}]}}))}function R_(t,e){E_(t,e),P_(t,e)}var cn=require("node:fs");var I_=Gn(require("node:path")),Fn=require("node:fs"),fa=new Map,DP=5e3,qP=20;function LP(t){return new Promise(e=>setTimeout(e,t))}async function FP(t,e=DP){let r=Date.now();for(;;)try{let n=(0,Fn.openSync)(t,"wx");return()=>{try{(0,Fn.closeSync)(n)}catch{}try{(0,Fn.unlinkSync)(t)}catch{}}}catch(n){if(n.code!=="EEXIST")throw n;if(Date.now()-r>e)throw new Error(`File lock timeout for ${t}`);await LP(qP)}}async function Ke(t,e){let r=I_.default.resolve(t),n=`${r}.md-feedback.lock`;for(;fa.has(r);)await fa.get(r);let o;fa.set(r,new Promise(i=>{o=i}));let s=await FP(n);try{return await e()}finally{s(),fa.delete(r),o()}}function O_(t,e){let{safeRead:r,safeWrite:n,wrapTool:o,ensureDefaultGate:s,updateCursorFromMemos:i,applyUnifiedDiff:a}=e,c=(p,m,f,g)=>{if(g<1)return{replaced:!1,output:p};let h=0,y=0;for(;;){let v=p.indexOf(m,h);if(v===-1)return{replaced:!1,output:p};if(y++,y===g)return{replaced:!0,output:`${p.slice(0,v)}${f}${p.slice(v+m.length)}`};h=v+m.length}},u=(p,m)=>{if(!m)return 0;let f=0,g=0;for(;;){let h=p.indexOf(m,g);if(h===-1)return f;f++,g=h+m.length}},l=(p,m)=>{let f=v=>/^#{1,6}\s+/.test(v),g=Math.max(0,Math.min(m,Math.max(p.length-1,0))),h=0;for(let v=g;v>=0;v--)if(f(p[v])){h=v;break}let y=p.length;for(let v=g+1;v<p.length;v++)if(f(p[v])){y=v;break}return{start:h,end:y}},d=(p,m,f,g,h,y,v)=>{if(y==="body"){let F=u(p,m);if(g)return{output:p.split(m).join(f),matchCount:F};let ee=c(p,m,f,h??1);return ee.replaced?{output:ee.output,matchCount:F}:{output:p,matchCount:F}}let x=p.split(`
70
- `),b=Yo(x,v),{start:_,end:z}=l(x,b>=0?b:0),q=x.slice(_,z).join(`
71
- `),j=u(q,m),R=q;if(g)R=q.split(m).join(f);else{let F=c(q,m,f,h??1);if(!F.replaced)return{output:p,matchCount:j};R=F.output}let C=R.split(`
72
- `);return x.splice(_,z-_,...C),{output:x.join(`
73
- `),matchCount:j}};t.tool("create_checkpoint","Create a review checkpoint in an annotated markdown file. Records current annotation counts and reviewed sections.",{file:T.string().describe("Path to the annotated markdown file"),note:T.string().describe('Checkpoint note (e.g., "Phase 1 review done")')},async({file:p,note:m})=>Ke(p,async()=>o(async()=>{st(p,"create_checkpoint");let f=r(p),{checkpoint:g,updatedMarkdown:h}=tp(f,m);return n(p,h),{content:[{type:"text",text:JSON.stringify({checkpoint:g},null,2)}]}}))),t.tool("create_annotation","Create a new review annotation on a markdown file. Finds the anchor text in the document and attaches a review memo. Auto-creates a quality gate and updates cursor.",{file:T.string().describe("Path to the annotated markdown file"),anchorText:T.string().describe("The exact text in the document to annotate (must exist in the file)"),type:T.enum(["fix","question","highlight"]).describe("fix = needs change, question = needs clarification, highlight = mark for reference"),text:T.string().describe("The review feedback or note to attach"),occurrence:T.number().int().min(1).optional().describe("Which occurrence of anchorText to annotate (1-indexed, default 1). Use when the same text appears multiple times.")},async({file:p,anchorText:m,type:f,text:g,occurrence:h})=>Ke(p,async()=>o(async()=>{st(p,"create_annotation");let y=r(p),v=ze(y),x=v.body.split(`
74
- `),b=-1;if(h){let C=0;for(let F=0;F<x.length;F++)if(x[F].includes(m)&&(C++,C===h)){b=F;break}if(b===-1){let F=C===0?{occurrenceRequested:h,matchCount:C}:{occurrenceRequested:h,matchCount:C};throw new ts(m,F)}}else{let C=[];for(let F=0;F<x.length;F++)x[F].includes(m)&&C.push(F);if(C.length===0)throw new ts(m,{occurrenceRequested:null,matchCount:0});if(C.length===1)b=C[0];else{let F=C.find(ee=>x[ee].trim()===m.trim());if(F!==void 0)b=F;else{let ee=C[0],P=1/0;for(let te of C){let xe=x[te].length-m.length;xe<P&&(P=xe,ee=te)}b=ee}}}let _=Rt(x[b]),z=b+1,q=f==="fix"?"red":f==="question"?"blue":"yellow",j={id:ot("memo"),type:f,status:"open",owner:"agent",source:"mcp",color:q,text:g,anchorText:m,anchor:`L${z}:L${z}|${_}`,createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()};v.memos.push(j),s(v),v.gates=It(v.gates,v.memos),i(v,j.id,`Created ${f}: "${g.slice(0,50)}"`);let R=Ut(v);return n(p,R),{content:[{type:"text",text:JSON.stringify({memo:j,gateStatus:v.gates[0]?.status,totalMemos:v.memos.length},null,2)}]}}))),t.tool("respond_to_memo",`Add an AI response to a memo annotation. Inserts a REVIEW_RESPONSE block into the markdown file directly below the memo's anchor text. Automatically sets the memo status to "needs_review" for human approval.`,{file:T.string().describe("Path to the annotated markdown file"),memoId:T.string().describe("The memo ID to respond to"),response:T.string().describe("The response text (markdown supported)")},async({file:p,memoId:m,response:f})=>Ke(p,async()=>o(async()=>{st(p,"respond_to_memo");let g=r(p),h=ze(g),y=h.memos.find(b=>b.id===m);if(!y)throw new Ot(m);ca("respond_to_memo",m,y.type);let v=h.responses.find(b=>b.to===m);if(v){let b=h.body.split(`
75
- `),_=f.split(`
76
- `),z=v.bodyStartIdx,q=v.bodyEndIdx,j=q>=z?q-z+1:0;b.splice(z,j,..._),v.bodyEndIdx=z+_.length-1,h.body=b.join(`
77
- `)}else{let b=h.body.split(`
78
- `),_=Yo(b,y),z=_>=0?_:b.length-1,q=f.split(`
79
- `),j=z+1;b.splice(j,0,...q);for(let R of h.responses)R.bodyStartIdx>=j&&(R.bodyStartIdx+=q.length,R.bodyEndIdx+=q.length);h.body=b.join(`
80
- `),h.responses.push({id:`resp_${m}`,to:m,bodyStartIdx:j,bodyEndIdx:j+q.length-1})}(y.status==="open"||y.status==="in_progress")&&(y.status="needs_review",y.updatedAt=new Date().toISOString()),h.gates.length>0&&(h.gates=It(h.gates,h.memos));let x=Ut(h);return n(p,x),{content:[{type:"text",text:JSON.stringify({memoId:m,status:y.status,responseInserted:!0,totalResponses:h.responses.length},null,2)}]}}))),t.tool("update_memo_status","Update the status of a memo annotation. Writes the change back to the markdown file. Returns the updated memo. Terminal statuses (answered, done, failed, wontfix) require human approval via VS Code.",{file:T.string().describe("Path to the annotated markdown file"),memoId:T.string().describe("The memo ID to update"),status:T.enum(["open","in_progress","needs_review"]).describe("New status. Terminal statuses (answered, done, failed, wontfix) require human approval via VS Code."),owner:T.enum(["human","agent","tool"]).optional().describe("Optionally change the owner")},async({file:p,memoId:m,status:f,owner:g})=>Ke(p,async()=>o(async()=>{st(p,"update_memo_status");let h=r(p),y=ze(h),v=y.memos.find(b=>b.id===m);if(!v)throw new Ot(m);v.status=f,g&&(v.owner=g),v.updatedAt=new Date().toISOString(),s(y),y.gates=It(y.gates,y.memos),i(y,m);let x=Ut(y);return n(p,x),{content:[{type:"text",text:JSON.stringify({memo:v,gatesUpdated:y.gates.length,cursor:y.cursor},null,2)}]}}))),t.tool("update_cursor",'Update the plan cursor position in a markdown file. The cursor tracks "where we are" in a plan. Only one cursor per document.',{file:T.string().describe("Path to the annotated markdown file"),taskId:T.string().describe("Current task ID"),step:T.string().describe('Current step (e.g., "3/7" or "Phase 2")'),nextAction:T.string().describe("Description of the next action to take")},async({file:p,taskId:m,step:f,nextAction:g})=>Ke(p,async()=>o(async()=>{st(p,"update_cursor");let h=r(p),y=ze(h);if(y.memos.length>0&&!y.memos.some(x=>x.id===m))throw new de(`Task ID not found: "${m}". Valid IDs: ${y.memos.map(x=>x.id).join(", ")}`,{taskId:m,validTaskIds:y.memos.map(x=>x.id)});y.cursor={taskId:m,step:f,nextAction:g,lastSeenHash:ea(y.body),updatedAt:new Date().toISOString()};let v=Ut(y);return n(p,v),{content:[{type:"text",text:JSON.stringify({cursor:y.cursor},null,2)}]}}))),t.tool("apply_memo","Apply an implementation action to a memo. Supports text_replace (requires occurrence or replaceAll when oldText has multiple matches; optional section-scoped propagation), file_patch (applies unified diff patch \u2014 snapshot saved first), and file_create (create a new file). Creates a snapshot before modification, records the implementation, and updates memo status to needs_review.",{file:T.string().describe("Path to the annotated markdown file"),memoId:T.string().describe("The memo ID to apply implementation to"),action:T.enum(["text_replace","file_patch","file_create"]).describe("Type of implementation action"),dryRun:T.boolean().optional().default(!1).describe("If true, return preview without writing"),oldText:T.string().optional().describe("For text_replace: the text to find and replace"),newText:T.string().optional().describe("For text_replace: the replacement text"),occurrence:T.number().int().min(1).optional().describe("For text_replace: which occurrence to replace (1-indexed). Required when oldText appears multiple times unless replaceAll=true"),replaceAll:T.boolean().optional().default(!1).describe("For text_replace: replace all occurrences instead of one"),scope:T.enum(["body","section"]).optional().default("body").describe("For text_replace: replacement scope (body = whole document body, section = heading section around memo anchor)"),targetFile:T.string().optional().describe("For file_patch/file_create: target file path"),patch:T.string().optional().describe("For file_patch: unified diff patch content"),content:T.string().optional().describe("For file_create: the file content to write")},async({file:p,memoId:m,action:f,dryRun:g,oldText:h,newText:y,occurrence:v,replaceAll:x,scope:b,targetFile:_,patch:z,content:q})=>Ke(p,async()=>o(async()=>{st(p,"apply_memo");let j=r(p),R=ze(j),C=R.memos.find(te=>te.id===m);if(!C)throw new Ot(m);ca("apply_memo",m,C.type);let F;if(f==="text_replace"){if(!h||y===void 0)throw new de("text_replace requires oldText and newText",{memoId:m,action:f});F={type:"text_replace",file:"",before:h,after:y}}else if(f==="file_patch"){if(!_||!z)throw new de("file_patch requires targetFile and patch",{memoId:m,action:f});F={type:"file_patch",file:_,patch:z}}else{if(!_||q===void 0)throw new de("file_create requires targetFile and content",{memoId:m,action:f});F={type:"file_create",file:_,content:q}}let ee={id:ot("impl",{separator:"_"}),memoId:m,status:"applied",operations:[F],summary:`${f} for ${m}`,appliedAt:new Date().toISOString()};if(g)return{content:[{type:"text",text:JSON.stringify({dryRun:!0,impl:ee,operation:F,memo:{id:C.id,status:C.status}},null,2)}]};if(rs(p,j),f==="text_replace"){let te=b??"body";if(te==="body"&&!R.body.includes(h))throw new de("oldText not found in document body",{memoId:m,action:f,scope:te});let xe=d(R.body,h,y,x??!1,v,te,C);if(xe.matchCount===0)throw new de(`oldText not found in ${te==="section"?"memo section":"document body"}`,{memoId:m,action:f,scope:te});if(!x&&xe.matchCount>1&&v===void 0)throw new de("Ambiguous text_replace: oldText appears multiple times; set occurrence or replaceAll=true",{memoId:m,action:f,matchCount:xe.matchCount,scope:te});R.body=xe.output}else if(f==="file_patch"){if(!(0,cn.existsSync)(_))throw new de(`Target file not found for file_patch: ${_}`,{memoId:m,action:f,targetFile:_});let te=r(_),xe=a(te,z,_);rs(_,te),n(_,xe)}else f==="file_create"&&n(_,q);R.impls.push(ee),C.status="needs_review",C.updatedAt=new Date().toISOString(),R.gates.length>0&&(R.gates=It(R.gates,R.memos)),i(R,m);let P=Ut(R);return n(p,P),{content:[{type:"text",text:JSON.stringify({impl:ee,memo:{id:C.id,status:C.status},gatesUpdated:R.gates.length},null,2)}]}}))),t.tool("link_artifacts","Link file artifacts (source files, configs, etc.) to a memo. Creates a MemoArtifact record in the document.",{file:T.string().describe("Path to the annotated markdown file"),memoId:T.string().describe("The memo ID to link artifacts to"),files:T.array(T.string()).describe("Array of relative file paths to link")},async({file:p,memoId:m,files:f})=>Ke(p,async()=>o(async()=>{st(p,"link_artifacts");let g=r(p),h=ze(g);if(!h.memos.find(b=>b.id===m))throw new Ot(m);let v={id:ot("art",{separator:"_"}),memoId:m,files:f,linkedAt:new Date().toISOString()};h.artifacts.push(v);let x=Ut(h);return n(p,x),{content:[{type:"text",text:JSON.stringify({artifact:v},null,2)}]}}))),t.tool("update_memo_progress","Update the progress of a memo with a status change and message. Writes progress to .md-feedback/progress.json and updates the memo status. Terminal statuses (done, failed) require human approval via VS Code.",{file:T.string().describe("Path to the annotated markdown file"),memoId:T.string().describe("The memo ID to update progress for"),status:T.enum(["in_progress","needs_review"]).describe("New progress status. Terminal statuses (done, failed) require human approval via VS Code."),message:T.string().describe("Progress message describing what was done or what failed")},async({file:p,memoId:m,status:f,message:g})=>Ke(p,async()=>o(async()=>{st(p,"update_memo_progress");let h=r(p),y=ze(h),v=y.memos.find(_=>_.id===m);if(!v)throw new Ot(m);v.status=f,v.updatedAt=new Date().toISOString();let x={memoId:m,status:f,message:g,timestamp:new Date().toISOString()};await __(p,x),y.gates.length>0&&(y.gates=It(y.gates,y.memos)),i(y,m);let b=Ut(y);return n(p,b),{content:[{type:"text",text:JSON.stringify({memo:{id:v.id,status:v.status},progressEntry:x,gatesUpdated:y.gates.length},null,2)}]}}))),t.tool("rollback_memo","Rollback the latest implementation for a memo. Reverses text_replace operations (swaps before/after), marks the impl as reverted, and sets the memo status back to open.",{file:T.string().describe("Path to the annotated markdown file"),memoId:T.string().describe("The memo ID to rollback")},async({file:p,memoId:m})=>Ke(p,async()=>o(async()=>{st(p,"rollback_memo"),up(p,"rollback_memo","Rollback is high-risk because it can revert prior implementation state.");let f=r(p),g=ze(f),h=g.memos.find(b=>b.id===m);if(!h)throw new Ot(m);let y=g.impls.filter(b=>b.memoId===m&&b.status==="applied");if(y.length===0)throw new de(`No applied implementation found for memo: ${m}`,{memoId:m});let v=y[y.length-1];for(let b of v.operations)b.type==="text_replace"&&g.body.includes(b.after)&&(g.body=g.body.split(b.after).join(b.before));v.status="reverted",h.status="open",h.updatedAt=new Date().toISOString(),g.gates.length>0&&(g.gates=It(g.gates,g.memos)),i(g,m);let x=Ut(g);return n(p,x),{content:[{type:"text",text:JSON.stringify({rolledBack:v.id,memo:{id:h.id,status:h.status},gatesUpdated:g.gates.length},null,2)}]}}))),t.tool("batch_apply","Apply multiple implementation operations in a single transaction. Parses the document once, applies all operations sequentially, then writes once. Each operation follows the same format as apply_memo.",{file:T.string().describe("Path to the annotated markdown file"),operations:T.array(T.object({memoId:T.string().describe("The memo ID to apply implementation to"),action:T.enum(["text_replace","file_patch","file_create"]).describe("Type of implementation action"),oldText:T.string().optional().describe("For text_replace: the text to find and replace"),newText:T.string().optional().describe("For text_replace: the replacement text"),occurrence:T.number().int().min(1).optional().describe("For text_replace: which occurrence to replace (1-indexed). Required when oldText appears multiple times unless replaceAll=true"),replaceAll:T.boolean().optional().describe("For text_replace: replace all occurrences instead of one"),scope:T.enum(["body","section"]).optional().describe("For text_replace: replacement scope (body = whole document body, section = heading section around memo anchor)"),targetFile:T.string().optional().describe("For file_patch/file_create: target file path"),patch:T.string().optional().describe("For file_patch: unified diff patch content"),content:T.string().optional().describe("For file_create: the file content to write")})).describe("Array of operations to apply")},async({file:p,operations:m})=>Ke(p,async()=>o(async()=>{st(p,"batch_apply"),up(p,"batch_apply","Batch apply is high-risk because it can modify multiple files in one transaction.");let f=r(p),g=ze(f),h=[],y=new Map,v=new Map;for(let _ of m){let z=g.memos.find(R=>R.id===_.memoId);if(!z)throw new Ot(_.memoId);ca("batch_apply",_.memoId,z.type);let q;if(_.action==="text_replace"){if(!_.oldText||_.newText===void 0)throw new de(`Operation failed (${_.memoId}): text_replace requires oldText and newText`,{memoId:_.memoId,action:_.action});q={type:"text_replace",file:"",before:_.oldText,after:_.newText};let R=_.scope??"body";if(R==="body"&&!g.body.includes(_.oldText))throw new de(`Operation failed (${_.memoId}): oldText not found in body`,{memoId:_.memoId,action:_.action,scope:R});let C=d(g.body,_.oldText,_.newText,_.replaceAll??!1,_.occurrence,R,z);if(C.matchCount===0)throw new de(`Operation failed (${_.memoId}): oldText not found in ${R==="section"?"memo section":"body"}`,{memoId:_.memoId,action:_.action,scope:R});if(!_.replaceAll&&C.matchCount>1&&_.occurrence===void 0)throw new de(`Operation failed (${_.memoId}): ambiguous text_replace; set occurrence or replaceAll=true`,{memoId:_.memoId,action:_.action,matchCount:C.matchCount,scope:R});if(g.body=C.output,_.replaceAll)for(let F of g.memos)F.anchorText&&F.anchorText.includes(_.oldText)&&(F.anchorText=F.anchorText.split(_.oldText).join(_.newText))}else if(_.action==="file_patch"){if(!_.targetFile||!_.patch)throw new de(`Operation failed (${_.memoId}): file_patch requires targetFile and patch`,{memoId:_.memoId,action:_.action});q={type:"file_patch",file:_.targetFile,patch:_.patch};let R=y.has(_.targetFile)?y.get(_.targetFile):(0,cn.existsSync)(_.targetFile)?r(_.targetFile):null;if(R===null)throw new de(`Operation failed (${_.memoId}): target file not found for file_patch (${_.targetFile})`,{memoId:_.memoId,action:_.action,targetFile:_.targetFile});let C=a(R,_.patch,_.targetFile);y.set(_.targetFile,C)}else{if(!_.targetFile||_.content===void 0)throw new de(`Operation failed (${_.memoId}): file_create requires targetFile and content`,{memoId:_.memoId,action:_.action});if((0,cn.existsSync)(_.targetFile)&&!y.has(_.targetFile))throw new de(`Operation failed (${_.memoId}): file_create target already exists (${_.targetFile})`,{memoId:_.memoId,action:_.action,targetFile:_.targetFile});q={type:"file_create",file:_.targetFile,content:_.content},y.set(_.targetFile,_.content)}let j={id:ot("impl",{separator:"_"}),memoId:_.memoId,status:"applied",operations:[q],summary:`${_.action} for ${_.memoId}`,appliedAt:new Date().toISOString()};g.impls.push(j),z.status="needs_review",z.updatedAt=new Date().toISOString(),h.push({memoId:_.memoId,implId:j.id,status:"applied"})}g.gates.length>0&&(g.gates=It(g.gates,g.memos)),i(g,m[0]?.memoId||"");let x=Ut(g);v.set(p,f);for(let _ of y.keys())(0,cn.existsSync)(_)&&v.set(_,r(_));rs(p,f);for(let[_,z]of v.entries())_!==p&&rs(_,z);let b=[];try{for(let[_,z]of y.entries())n(_,z),b.push(_);n(p,x),b.push(p)}catch(_){let z=[];for(let q=b.length-1;q>=0;q--){let j=b[q],R=v.get(j);if(R!==void 0)try{n(j,R)}catch(C){z.push(`${j}: ${String(C)}`)}else try{(0,cn.unlinkSync)(j)}catch(C){z.push(`${j}: ${String(C)}`)}}throw z.length>0?new de(`Batch apply failed and rollback had errors: ${z.join(" | ")}`,{rollbackErrors:z}):_}return v_(p,{type:"batch_apply",results:h,timestamp:new Date().toISOString()}),{content:[{type:"text",text:JSON.stringify({results:h,gatesUpdated:g.gates.length,cursor:g.cursor},null,2)}]}}))),t.tool("advance_workflow_phase","Advance workflow phase in strict sequence: scope -> root_cause -> implementation -> verification.",{file:T.string().describe("Path to the annotated markdown file"),toPhase:T.enum(["root_cause","implementation","verification"]).describe("Next phase to move to"),note:T.string().optional().describe("Optional transition note")},async({file:p,toPhase:m,note:f})=>Ke(p,async()=>o(async()=>{let g=z_(p,m,"advance_workflow_phase",f);return{content:[{type:"text",text:JSON.stringify({workflow:g},null,2)}]}}))),t.tool("set_memo_severity","Set severity override for a memo. Defaults remain: fix=blocking, question/highlight=non_blocking.",{file:T.string().describe("Path to the annotated markdown file"),memoId:T.string().describe("Memo ID to classify"),severity:T.enum(["blocking","non_blocking"]).describe("Severity override")},async({file:p,memoId:m,severity:f})=>Ke(p,async()=>o(async()=>{st(p,"set_memo_severity");let g=r(p);if(!ze(g).memos.find(x=>x.id===m))throw new Ot(m);let v=k_(p,m,f);return{content:[{type:"text",text:JSON.stringify({memoId:m,severity:f,severityState:v},null,2)}]}}))),t.tool("request_approval_checkpoint","Create an approval checkpoint for a high-risk action before execution.",{file:T.string().describe("Path to the annotated markdown file"),tool:T.string().describe("High-risk tool name (e.g., batch_apply, rollback_memo)"),reason:T.string().describe("Reason for approval request")},async({file:p,tool:m,reason:f})=>Ke(p,async()=>o(async()=>{st(p,"request_approval_checkpoint");let g=cp(p,m,f);return{content:[{type:"text",text:JSON.stringify({workflow:g},null,2)}]}}))),t.tool("approve_checkpoint","Approve a pending high-risk checkpoint. Grants one execution for the approved tool.",{file:T.string().describe("Path to the annotated markdown file"),tool:T.string().describe("Tool name being approved"),approvedBy:T.string().describe("Approver identity"),reason:T.string().describe("Approval rationale")},async({file:p,tool:m,approvedBy:f,reason:g})=>Ke(p,async()=>o(async()=>{st(p,"approve_checkpoint");let h=T_(p,m,f,g);return{content:[{type:"text",text:JSON.stringify({workflow:h},null,2)}]}})))}var Un=Gn(require("node:path")),os=require("node:fs"),UP=["**/.env",".env","**/.env.*",".env.*","**/credentials*","credentials*","**/secrets*","secrets*","**/*.pem","*.pem","**/*.key","*.key","**/*.p12","*.p12","**/node_modules/**","node_modules/**","**/.git/**",".git/**"];function A_(t){return{workspaceRoot:t||process.env.MD_FEEDBACK_WORKSPACE||process.cwd(),blocklist:[...UP],allowlist:[]}}function VP(t,e){let r=e.replace(/\\/g,"/"),o=t.replace(/\\/g,"/").replace(/[.+^${}()|[\]]/g,"\\$&").replace(/\*\*/g,"\0").replace(/\*/g,"[^/]*").replace(/\u0000/g,".*").replace(/\?/g,"[^/]");return new RegExp(`^${o}$`).test(r)}function M_(t,e){return t.some(r=>VP(r,e))}function lp(t,e){let r=Un.default.resolve(t.workspaceRoot,e),n=Un.default.resolve(t.workspaceRoot);if(!r.startsWith(n+Un.default.sep)&&r!==n)return{safe:!1,reason:`Path "${e}" resolves outside workspace root`};if((0,os.existsSync)(r))try{let s=(0,os.realpathSync)(r),i=(0,os.realpathSync)(n);if(!s.startsWith(i+Un.default.sep)&&s!==i)return{safe:!1,reason:`Path "${e}" resolves outside workspace via symlink`}}catch{}let o=Un.default.relative(n,r).replace(/\\/g,"/");return M_(t.blocklist,o)?{safe:!1,reason:`Path "${e}" matches blocklist pattern`}:t.allowlist.length>0&&!M_(t.allowlist,o)?{safe:!1,reason:`Path "${e}" not in allowlist`}:{safe:!0}}var Vn=require("node:fs"),Hn=require("node:path");function C_(t,e){let r=t.filter(o=>o.startsWith("--workspace=")),n=r.length>0?r[r.length-1]:void 0;if(n){let o=n.slice(12);if(o)return o}return e.MD_FEEDBACK_WORKSPACE||void 0}var HP=new Set([".git","node_modules",".md-feedback","dist","build"]);function ma(t,e={}){let r=e.annotatedOnly??!1,n=e.maxFiles??500,o=(0,Hn.resolve)(t),s=[];function i(a){if(s.length>=n)return;let c=(0,Vn.readdirSync)(a,{withFileTypes:!0});for(let u of c){if(s.length>=n)return;let l=(0,Hn.join)(a,u.name);if(u.isDirectory()){if(HP.has(u.name))continue;i(l);continue}if(!u.isFile()||!u.name.toLowerCase().endsWith(".md"))continue;let d=(0,Hn.relative)(o,l).replace(/\\/g,"/");if(!r){s.push(d);continue}try{let p=(0,Vn.readFileSync)(l,"utf-8");(p.includes("<!-- USER_MEMO")||p.includes("<!-- HIGHLIGHT_MARK"))&&s.push(d)}catch{}}}try{(0,Vn.statSync)(o).isDirectory()&&i(o)}catch{return[]}return s}function N_(t={}){let{workspace:e,log:r}=t,n=A_(e);function o(p){let m=lp(n,p);if(!m.safe)throw new es(m.reason,{file:p});return la(p)}function s(p,m){let f=lp(n,p);if(!f.safe)throw new es(f.reason,{file:p});g_(p,m)}function i(p){return ma(n.workspaceRoot,p)}function a(p){return{content:[{type:"text",text:JSON.stringify(rp(p))}],isError:!0}}async function c(p){try{return await p()}catch(m){if(r){let f=rp(m);r(`tool error: ${JSON.stringify(f)}`)}return a(m)}}function u(p){p.gates.length===0&&p.memos.length>0&&p.gates.push({id:ot("gate"),type:"merge",status:"blocked",blockedBy:[],canProceedIf:"",doneDefinition:"All review annotations resolved"})}function l(p,m,f){let g=p.memos.filter(y=>Pt(y.status)).length,h=p.memos.filter(y=>!Pt(y.status));p.cursor={taskId:m,step:`${g}/${p.memos.length} resolved`,nextAction:f??(h.length===0?"All annotations resolved \u2014 review complete":`Resolve: ${h.map(y=>y.id).slice(0,3).join(", ")}${h.length>3?"...":""}`),lastSeenHash:ea(p.body),updatedAt:new Date().toISOString()}}function d(p,m,f){let g=p.split(`
81
- `),h=m.split(`
82
- `),y=[],v=0,x=0,b=!1;for(;x<h.length;){let z=h[x].match(/^@@ -(\d+)(?:,(\d+))? \+(\d+)(?:,(\d+))? @@/);if(!z){x++;continue}b=!0;let j=Number(z[1])-1;if(j<v||j>g.length)throw new br(`Invalid patch hunk range for ${f}`,{file:f});for(y.push(...g.slice(v,j)),v=j,x++;x<h.length&&!h[x].startsWith("@@ ");){let R=h[x];if(R.startsWith("\")){x++;continue}let C=R[0],F=R.slice(1);if(C===" "){if(v>=g.length||g[v]!==F)throw new br(`Patch context mismatch in ${f}`,{file:f});y.push(F),v++}else if(C==="-"){if(v>=g.length||g[v]!==F)throw new br(`Patch delete mismatch in ${f}`,{file:f});v++}else if(C==="+")y.push(F);else throw new br(`Unsupported patch line in ${f}: "${R}"`,{file:f});x++}}if(!b)throw new br(`Invalid unified diff for ${f}: no hunks found`,{file:f});return y.push(...g.slice(v)),y.join(`
83
- `)}return{safeRead:o,safeWrite:s,listDocuments:i,wrapTool:c,ensureDefaultGate:u,updateCursorFromMemos:l,applyUnifiedDiff:d}}function j_(t,e,r){let n=N_({workspace:e,log:r});R_(t,n),O_(t,{safeRead:n.safeRead,safeWrite:n.safeWrite,wrapTool:n.wrapTool,ensureDefaultGate:n.ensureDefaultGate,updateCursorFromMemos:n.updateCursorFromMemos,applyUnifiedDiff:n.applyUnifiedDiff})}function ss(t){process.stderr.write(`[md-feedback] ${t}
84
- `)}function GP(){return C_(process.argv,process.env)}var Z_=GP(),D_=new Ji({name:"md-feedback",version:"1.5.0"});j_(D_,Z_,ss);async function WP(){let t=new Xi;await D_.connect(t);let e=Z_||process.cwd();ma(e,{annotatedOnly:!1,maxFiles:200}).length===0&&ss(`warning: no markdown files found in workspace=${e}. create/open a .md file to use annotation tools.`),ss(`v1.5.0 ready (stdio) workspace=${e}`)}WP().catch(t=>{ss(`fatal: ${t}`),process.exit(1)});0&&(module.exports={log});
71
+ `;return{checkpoint:o,updatedMarkdown:a}}function fa(t,e){let r=mn(t),n=Xn(t),o=hn(t),s=gn(t),i={file:e,startedAt:r.length>0?r[0].timestamp:new Date().toISOString(),lastCheckpoint:r.length>0?r[r.length-1].timestamp:"",checkpointCount:r.length,totalFixes:n.fixes,totalQuestions:n.questions,totalHighlights:n.highlights},a=[],c=[],u=[];NP(t,a,c,u);let l=[];for(let p of c)l.push(`Resolve: ${p.feedback||p.text}`);let d=s.filter(p=>!o.includes(p));for(let p of d)l.push(`Review uncovered: ${p} section`);return{meta:i,decisions:a,openQuestions:c,keyPoints:u,checkpoints:r,nextSteps:l}}function NP(t,e,r,n){let o=t.split(`
72
+ `),s="";for(let i=0;i<o.length;i++){let a=o[i],c=a.match(/^## (.+)/);if(c){s=c[1].trim();continue}let u=a.match(/<!-- USER_MEMO\s+id="[^"]+"\s+(.*?)\s*:\s*(.*?)\s*-->/);if(u){let p=u[1].match(/color="([^"]+)"/),m=p?p[1]:"red",f=u[2].replace(/--\u200B>/g,"-->"),h="";for(let y=i-1;y>=0;y--)if(o[y].trim()&&!o[y].includes("<!-- ")){h=o[y].trim(),h=h.replace(/<\/?mark[^>]*>/g,"");break}let g={section:s,text:h,feedback:f};m==="red"?e.push(g):m==="blue"?r.push(g):n.push(g);continue}if(/^<!-- USER_MEMO\s*$/.test(a.trim())){let d=[];for(i++;i<o.length&&!/^-->$/.test(o[i].trim());)d.push(o[i]),i++;let p={};for(let y of d){let _=y.trim().match(/^(\w+)="([^"]*)"$/);_&&(p[_[1]]=_[2])}let m=p.color||"red",f=(p.text||"").replace(/--\u200B>/g,"-->"),h="";if(p.anchorText)h=p.anchorText.replace(/<\/?mark[^>]*>/g,"");else for(let y=i-1;y>=0;y--)if(o[y].trim()&&!o[y].includes("<!-- ")){h=o[y].trim().replace(/<\/?mark[^>]*>/g,"");break}let g={section:s,text:h,feedback:f};m==="red"?e.push(g):m==="blue"?r.push(g):n.push(g);continue}let l=a.match(/<mark[^>]*(?:data-color="([^"]+)"|style="background-color:\s*([^"]+)")?\s*>(.*?)<\/mark>/)||a.match(/==(.*?)==/);if(l){if((i+1<o.length?o[i+1]:"").includes("<!-- USER_MEMO"))continue;let p,m;if(l.length===2)p=l[1],m="yellow";else{let h=(l[1]||l[2]||"").trim();m=Rr[h]||"yellow",p=l[3]}let f={section:s,text:p,feedback:""};m==="red"?e.push(f):m==="blue"?r.push(f):n.push(f)}}}function ma(t,e="standalone"){let r=[];if(e==="standalone"?(r.push(`# HANDOFF \u2014 \`${t.meta.file}\``),r.push("")):e==="claude-md"?(r.push(`## Session Handoff: ${t.meta.file}`),r.push("")):(r.push("---"),r.push(`description: Session handoff for ${t.meta.file}`),r.push("alwaysApply: true"),r.push("---"),r.push("")),r.push("## Session"),r.push(`- **File**: \`${t.meta.file}\``),r.push(`- **Started**: ${t.meta.startedAt}`),t.meta.lastCheckpoint&&r.push(`- **Last checkpoint**: ${t.meta.lastCheckpoint}`),r.push(`- **Checkpoints**: ${t.meta.checkpointCount}`),r.push(`- **Annotations**: ${t.meta.totalFixes} fix, ${t.meta.totalQuestions} question, ${t.meta.totalHighlights} highlight`),r.push(""),t.decisions.length>0){r.push(`## Decisions Made (${t.decisions.length})`),r.push("Marked as FIX. Decided \u2014 implement as specified.");for(let n=0;n<t.decisions.length;n++){let o=t.decisions[n],s=o.section?`[${o.section}]`:"[General]";o.text&&o.feedback?r.push(`${n+1}. **${s}** "${Ce(o.text,60)}" \u2192 ${o.feedback}`):o.feedback?r.push(`${n+1}. **${s}** ${o.feedback}`):o.text&&r.push(`${n+1}. **${s}** "${Ce(o.text,80)}"`)}r.push("")}if(t.openQuestions.length>0){r.push(`## Open Questions (${t.openQuestions.length})`),r.push("Marked as QUESTION. Unresolved \u2014 investigate before implementing.");for(let n=0;n<t.openQuestions.length;n++){let o=t.openQuestions[n],s=o.section?`[${o.section}]`:"[General]";o.text&&o.feedback?r.push(`${n+1}. **${s}** "${Ce(o.text,60)}" \u2014 ${o.feedback}`):o.feedback?r.push(`${n+1}. **${s}** ${o.feedback}`):o.text&&r.push(`${n+1}. **${s}** "${Ce(o.text,80)}"`)}r.push("")}if(t.keyPoints.length>0){r.push(`## Key Points (${t.keyPoints.length})`),r.push("Marked as HIGHLIGHT. Important context \u2014 preserve during implementation.");for(let n=0;n<t.keyPoints.length;n++){let o=t.keyPoints[n],s=o.section?`[${o.section}]`:"[General]";o.text&&r.push(`${n+1}. **${s}** "${Ce(o.text,80)}"`),o.feedback&&r.push(` ${o.feedback}`)}r.push("")}if(t.checkpoints.length>0){r.push("## Progress Checkpoints"),r.push("| # | Time | Note | Fixes | Questions | Highlights |"),r.push("|---|------|------|-------|-----------|------------|");for(let n=0;n<t.checkpoints.length;n++){let o=t.checkpoints[n],s=o.timestamp.split("T")[1]?.split(".")[0]||o.timestamp;r.push(`| ${n+1} | ${s} | ${o.note} | ${o.fixes} | ${o.questions} | ${o.highlights} |`)}r.push("")}if(t.nextSteps.length>0){r.push("## Next Steps");for(let n of t.nextSteps)r.push(`- [ ] ${n}`);r.push("")}return r.push("---"),r.push("*Generated by md-feedback. Feed this to your AI coding agent.*"),r.join(`
73
+ `)}function v_(t){let e=t.split(`
74
+ `),r="",n={file:"",startedAt:"",lastCheckpoint:"",checkpointCount:0,totalFixes:0,totalQuestions:0,totalHighlights:0},o=[],s=[],i=[],a=[],c=[];for(let u of e){let l=u.match(/^## (.+)/);if(l){r=l[1].trim();continue}if(r.startsWith("Session")){let p=u.match(/\*\*File\*\*:\s*`([^`]+)`/);p&&(n.file=p[1]);let m=u.match(/\*\*Started\*\*:\s*(.+)/);m&&(n.startedAt=m[1].trim());let f=u.match(/\*\*Last checkpoint\*\*:\s*(.+)/);f&&(n.lastCheckpoint=f[1].trim());let h=u.match(/\*\*Checkpoints\*\*:\s*(\d+)/);h&&(n.checkpointCount=parseInt(h[1],10));let g=u.match(/\*\*Annotations\*\*:\s*(\d+)\s*fix,\s*(\d+)\s*question,\s*(\d+)\s*highlight/);g&&(n.totalFixes=parseInt(g[1],10),n.totalQuestions=parseInt(g[2],10),n.totalHighlights=parseInt(g[3],10))}let d=u.match(/^\d+\.\s+\*\*\[([^\]]*)\]\*\*\s+(.+)/);if(d){let p=d[1],m=d[2],f=m.match(/"([^"]+)"\s*→\s*(.+)/),h=m.match(/"([^"]+)"\s*—\s*(.+)/),g;if(f)g={section:p,text:f[1],feedback:f[2]};else if(h)g={section:p,text:h[1],feedback:h[2]};else{let y=m.match(/"([^"]+)"/);g={section:p,text:y?y[1]:"",feedback:y?"":m}}r.startsWith("Decisions")?o.push(g):r.startsWith("Open Questions")?s.push(g):r.startsWith("Key Points")&&i.push(g)}if(r.startsWith("Progress Checkpoints")){let p=u.match(/^\|\s*(\d+)\s*\|\s*([^|]+)\|\s*([^|]*)\|\s*(\d+)\s*\|\s*(\d+)\s*\|\s*(\d+)\s*\|/);p&&a.push({id:`ckpt_restored_${p[1]}`,timestamp:p[2].trim(),note:p[3].trim(),fixes:parseInt(p[4],10),questions:parseInt(p[5],10),highlights:parseInt(p[6],10),sectionsReviewed:[]})}if(r.startsWith("Next Steps")){let p=u.match(/^- \[ \]\s+(.+)/);p&&c.push(p[1])}}return n.file?{meta:n,decisions:o,openQuestions:s,keyPoints:i,checkpoints:a,nextSteps:c}:null}function jP(t,e){return t.blockedBy.length>0&&t.blockedBy.map(o=>e.find(s=>s.id===o)).filter(o=>o!=null&&!jt(o.status)).length>0?"blocked":e.some(n=>!jt(n.status))?"proceed":"done"}function Dt(t,e){return t.map(r=>({...r,status:r.override||jP(r,e)}))}function x_(t,e,r,n,o,s){let i={},a={},c=0;for(let x of t)i[x.status]=(i[x.status]||0)+1,a[x.type]=(a[x.type]||0)+1,jt(x.status)&&c++;let u=t.length>0?c/t.length:0,l={},d=0,p=0,m=0;for(let x of e)l[x.status]=(l[x.status]||0)+1,x.status==="applied"&&d++,x.status==="reverted"&&p++,x.status==="failed"&&m++;let f={};for(let x of r)f[x.status]=(f[x.status]||0)+1;let h=new Set;for(let x of o)for(let k of x.files)h.add(k);let g=s.filter(x=>x.type==="blocks").length,y=null;n.length>0&&(y=n.reduce((x,k)=>k.timestamp>x?k.timestamp:x,n[0].timestamp));let _=null,v=t.filter(x=>jt(x.status)&&x.createdAt&&x.updatedAt);if(v.length>0){let x=0,k=0;for(let L of v){let G=new Date(L.createdAt).getTime(),b=new Date(L.updatedAt).getTime();!isNaN(G)&&!isNaN(b)&&b>G&&(x+=b-G,k++)}k>0&&(_=x/k)}return{totalMemos:t.length,byStatus:i,byType:a,resolutionRate:u,totalImpls:e.length,implsByStatus:l,appliedCount:d,revertedCount:p,failedCount:m,totalGates:r.length,gatesByStatus:f,totalArtifacts:o.length,linkedFiles:h.size,totalDependencies:s.length,blockingChains:g,totalCheckpoints:n.length,lastCheckpoint:y,avgResolutionTime:_}}var Tt=class extends Error{constructor(r,n,o){super(n);this.code=r;this.details=o;this.name="ToolError"}},ds=class extends Tt{constructor(e,r){super("FILE_SAFETY",e,r),this.name="FileSafetyError"}},ha=class extends Tt{constructor(e){super("FILE_NOT_FOUND",`File not found: ${e}`,{file:e}),this.name="FileNotFoundError"}},ga=class extends Tt{constructor(e,r){super("FILE_READ",`Cannot read file ${e}${r?`: ${r}`:""}`,{file:e,...r?{cause:r}:{}}),this.name="FileReadError"}},ya=class extends Tt{constructor(e,r){super("FILE_WRITE",`Cannot write file ${e}${r?`: ${r}`:""}`,{file:e,...r?{cause:r}:{}}),this.name="FileWriteError"}};var Or=class extends Tt{constructor(e,r){super("PATCH_APPLY",e,r),this.name="PatchApplyError"}},qt=class extends Tt{constructor(e){super("MEMO_NOT_FOUND",`Memo not found: ${e}`,{memoId:e}),this.name="MemoNotFoundError"}},de=class extends Tt{constructor(e,r){super("OPERATION_INVALID",e,r),this.name="OperationValidationError"}},ps=class extends Tt{constructor(e,r){super("ANCHOR_NOT_FOUND",`Anchor text not found: "${e}"`,{anchorText:e,matchCount:0,...r??{}}),this.name="AnchorNotFoundError"}},_a=class extends Tt{constructor(e){super("HANDOFF_INVALID","Not a valid handoff document",{file:e}),this.name="InvalidHandoffError"}};function fp(t){return t instanceof Tt?{error:t.message,code:t.code,type:t.name,...t.details?{details:t.details}:{}}:t instanceof Error?{error:t.message}:{error:String(t)}}var b_={respond_to_memo:{allowedMemoTypes:["question"],guidance:"Use apply_memo/update_memo_progress for fix memos."},apply_memo:{allowedMemoTypes:["fix"],guidance:"Use respond_to_memo for question memos."},batch_apply:{allowedMemoTypes:["fix"],guidance:"Use respond_to_memo for question memos."}},ZP={...b_};function w_(t=process.env){return t.MD_FEEDBACK_POLICY_PROFILE?.trim().toLowerCase()==="strict"?"strict":"default"}function $_(t){return t==="strict"?ZP:b_}function k_(t=w_()){let e=$_(t);return{profile:t,memoActions:{respond_to_memo:{allowedMemoTypes:[...e.respond_to_memo.allowedMemoTypes]},apply_memo:{allowedMemoTypes:[...e.apply_memo.allowedMemoTypes]},batch_apply:{allowedMemoTypes:[...e.batch_apply.allowedMemoTypes]}}}}function va(t,e,r,n=w_()){let s=$_(n)[t];if(!s.allowedMemoTypes.includes(r))throw new de(`${t} supports only ${s.allowedMemoTypes.join(", ")} memos. ${s.guidance}`,{memoId:e,memoType:r,action:t,policyProfile:n,allowedMemoTypes:s.allowedMemoTypes})}var zt=require("node:fs"),yp=require("node:path"),wa=require("node:crypto");var me=require("fs"),He=require("path"),mp=require("node:crypto");var S_=no(require("node:path")),lr=require("node:fs"),xa=new Map,DP=5e3,qP=20,LP=3e4;function FP(t){return new Promise(e=>setTimeout(e,t))}async function UP(t,e=DP){let r=Date.now();for(;;)try{let n=(0,lr.openSync)(t,"wx");return()=>{try{(0,lr.closeSync)(n)}catch{}try{(0,lr.unlinkSync)(t)}catch{}}}catch(n){if(n.code!=="EEXIST")throw n;try{let s=(0,lr.statSync)(t);if(Date.now()-s.mtimeMs>LP){try{(0,lr.unlinkSync)(t)}catch{}continue}}catch{continue}if(Date.now()-r>e)throw new Error(`File lock timeout for ${t}`);await FP(qP)}}async function Ve(t,e){let r=S_.default.resolve(t),n=`${r}.md-feedback.lock`;for(;xa.has(r);)await xa.get(r);let o;xa.set(r,new Promise(i=>{o=i}));let s=await UP(n);try{return await e()}finally{s(),xa.delete(r),o()}}var VP=20;function hp(t){return(0,He.isAbsolute)(t)?t:(0,He.resolve)(process.cwd(),t)}function ba(t){let e=hp(t);if(!(0,me.existsSync)(e))throw new ha(e);try{return(0,me.readFileSync)(e,"utf-8")}catch(r){throw new ga(e,r instanceof Error?r.message:String(r))}}function T_(t,e){let r=hp(t),n=(0,He.dirname)(r),o=(0,He.join)(n,`.mf-tmp-${(0,mp.randomBytes)(6).toString("hex")}`);try{(0,me.writeFileSync)(o,e,"utf-8"),(0,me.renameSync)(o,r)}catch(s){try{(0,me.unlinkSync)(o)}catch{}throw new ya(r,s instanceof Error?s.message:String(s))}}function yn(t){let e=hp(t),r=(0,He.join)((0,He.dirname)(e),".md-feedback");return(0,me.existsSync)(r)||(0,me.mkdirSync)(r,{recursive:!0}),r}function fs(t,e){let r=yn(t),n=(0,He.join)(r,"snapshots");(0,me.existsSync)(n)||(0,me.mkdirSync)(n,{recursive:!0});let o=new Date().toISOString().replace(/[:.]/g,"-"),s=(0,He.join)(n,`snapshot-${o}.md`);(0,me.writeFileSync)(s,e,"utf-8");let i=(0,me.readdirSync)(n).filter(a=>a.startsWith("snapshot-")).sort();for(;i.length>VP;)try{(0,me.unlinkSync)((0,He.join)(n,i.shift()))}catch{}return s}function z_(t){let e=yn(t),r=(0,He.join)(e,"progress.json");if(!(0,me.existsSync)(r))return[];try{return JSON.parse((0,me.readFileSync)(r,"utf-8"))}catch{return[]}}async function E_(t,e){let r=yn(t),n=(0,He.join)(r,"progress.json");await Ve(n,async()=>{let o=[];if((0,me.existsSync)(n))try{o=JSON.parse((0,me.readFileSync)(n,"utf-8"))}catch{o=[]}o.push(e);let s=`${n}.tmp-${(0,mp.randomBytes)(6).toString("hex")}`;(0,me.writeFileSync)(s,JSON.stringify(o,null,2),"utf-8"),(0,me.renameSync)(s,n)})}function P_(t,e){let r=yn(t),n=(0,He.join)(r,"transactions");(0,me.existsSync)(n)||(0,me.mkdirSync)(n,{recursive:!0});let o=new Date().toISOString().replace(/[:.]/g,"-"),s=(0,He.join)(n,`tx-${o}.json`);return(0,me.writeFileSync)(s,JSON.stringify(e,null,2),"utf-8"),s}var ms=["scope","root_cause","implementation","verification"],HP={create_annotation:["scope","root_cause"],respond_to_memo:["root_cause","implementation"],apply_memo:["implementation"],batch_apply:["implementation"],rollback_memo:["implementation"],update_memo_status:["implementation","verification"],update_memo_progress:["implementation","verification"],link_artifacts:["implementation","verification"],update_cursor:["implementation","verification"],create_checkpoint:["verification"],set_memo_severity:["scope","root_cause","implementation","verification"],request_approval_checkpoint:["scope","root_cause","implementation","verification"],approve_checkpoint:["scope","root_cause","implementation","verification"]},WP=new Set(["batch_apply","rollback_memo"]);function R_(t){return(0,yp.join)(yn(t),"workflow.json")}function I_(t){return(0,yp.join)(yn(t),"severity.json")}function O_(t=process.env){return t.MD_FEEDBACK_WORKFLOW_ENFORCEMENT?.trim().toLowerCase()==="strict"?"strict":"off"}function M_(t){let e=I_(t);if(!(0,zt.existsSync)(e))return{version:"1.0",overrides:{},updatedAt:new Date().toISOString()};try{let r=sp((0,zt.readFileSync)(e,"utf-8"));return{version:"1.0",overrides:r.overrides&&typeof r.overrides=="object"?r.overrides:{},updatedAt:typeof r.updatedAt=="string"?r.updatedAt:new Date().toISOString()}}catch{return{version:"1.0",overrides:{},updatedAt:new Date().toISOString()}}}function GP(t,e){let r=I_(t),n=`${r}.tmp-${(0,wa.randomBytes)(6).toString("hex")}`;(0,zt.writeFileSync)(n,JSON.stringify(e,null,2),"utf-8"),(0,zt.renameSync)(n,r)}function BP(t){return t==="fix"?"blocking":"non_blocking"}function A_(t,e,r){let o={version:"1.0",overrides:{...M_(t).overrides,[e]:r},updatedAt:new Date().toISOString()};return GP(t,o),o}function _p(t){let e=ba(t),r=ze(e),n=M_(t).overrides,o=r.memos.filter(s=>!jt(s.status)).filter(s=>(n[s.id]??BP(s.type))==="blocking").map(s=>s.id);return{overrides:n,unresolvedBlockingMemos:o}}function $a(t,e){let r=R_(t),n=`${r}.tmp-${(0,wa.randomBytes)(6).toString("hex")}`;(0,zt.writeFileSync)(n,JSON.stringify(e,null,2),"utf-8"),(0,zt.renameSync)(n,r)}function gp(){return{version:"1.0",phase:"scope",status:"active",transitions:[],pendingCheckpoint:null,approvals:[],approvalGrant:null,updatedAt:new Date().toISOString()}}function KP(t){let e=R_(t);if(!(0,zt.existsSync)(e))return gp();try{let r=sp((0,zt.readFileSync)(e,"utf-8")),n=r.phase,o=Array.isArray(r.transitions)?r.transitions:[];return!n||!ms.includes(n)?gp():{version:"1.0",phase:n,status:"active",transitions:o,pendingCheckpoint:r.pendingCheckpoint&&typeof r.pendingCheckpoint=="object"?r.pendingCheckpoint:null,approvals:Array.isArray(r.approvals)?r.approvals:[],approvalGrant:r.approvalGrant&&typeof r.approvalGrant=="object"?r.approvalGrant:null,updatedAt:typeof r.updatedAt=="string"?r.updatedAt:new Date().toISOString()}}catch{return gp()}}function Mr(t){let e=KP(t);return e.transitions.length===0&&e.phase==="scope"&&$a(t,e),e}function lt(t,e){let r=Mr(t);if(O_()!=="strict")return r;let n=HP[e];if(!n||n.includes(r.phase))return r;throw new de(`Tool "${e}" is not allowed in phase "${r.phase}".`,{tool:e,currentPhase:r.phase,allowedPhases:n})}function C_(t,e){let r=Mr(t),n=e(r);return $a(t,n),n}function vp(t,e,r){return C_(t,n=>n.pendingCheckpoint&&n.pendingCheckpoint.tool===e?n:{...n,pendingCheckpoint:{id:`chk_${(0,wa.randomBytes)(4).toString("hex")}`,tool:e,reason:r,requestedAt:new Date().toISOString()},updatedAt:new Date().toISOString()})}function N_(t,e,r,n){return C_(t,o=>{let s=o.pendingCheckpoint;if(!s||s.tool!==e)throw new de(`No pending checkpoint for tool "${e}".`,{tool:e,pendingCheckpoint:s});let i={checkpointId:s.id,tool:e,approvedBy:r,reason:n,approvedAt:new Date().toISOString()};return{...o,pendingCheckpoint:null,approvals:[...o.approvals,i],approvalGrant:{checkpointId:s.id,tool:e,approvedBy:r,approvedAt:i.approvedAt,consumed:!1},updatedAt:new Date().toISOString()}})}function xp(t,e,r){if(O_()!=="strict"||!WP.has(e))return Mr(t);let n=Mr(t);if(n.approvalGrant&&!n.approvalGrant.consumed&&n.approvalGrant.tool===e){let s={...n,approvalGrant:{...n.approvalGrant,consumed:!0},updatedAt:new Date().toISOString()};return $a(t,s),s}let o=vp(t,e,r);throw new de(`Approval required before high-risk tool "${e}".`,{tool:e,reason:r,pendingCheckpoint:o.pendingCheckpoint})}function j_(t,e,r,n){let o=Mr(t);if(e===o.phase)return o;let s=ms.indexOf(o.phase);if(ms.indexOf(e)!==s+1)throw new de(`Invalid workflow transition: ${o.phase} -> ${e}. Expected next phase: ${ms[s+1]??"none"}.`,{currentPhase:o.phase,requestedPhase:e,expectedNextPhase:ms[s+1]??null});if(e==="verification"){let c=_p(t);if(c.unresolvedBlockingMemos.length>0)throw new de("Cannot advance to verification with unresolved blocking memos.",{currentPhase:o.phase,requestedPhase:e,unresolvedBlockingMemos:c.unresolvedBlockingMemos})}let a={...o,phase:e,updatedAt:new Date().toISOString(),transitions:[...o.transitions,{from:o.phase,to:e,tool:r,note:n,timestamp:new Date().toISOString()}]};return $a(t,a),a}function Z_(t,e){let{safeRead:r,wrapTool:n,listDocuments:o}=e;t.tool("list_documents","List markdown files in the workspace. Optionally filter to only files that already contain annotations.",{annotatedOnly:z.boolean().optional().default(!1).describe("If true, return only files containing USER_MEMO/HIGHLIGHT_MARK annotations"),maxFiles:z.number().int().min(1).max(5e3).optional().default(500).describe("Maximum number of files to return")},async({annotatedOnly:s,maxFiles:i})=>n(async()=>{let a=o({annotatedOnly:s,maxFiles:i});return{content:[{type:"text",text:JSON.stringify({files:a,total:a.length},null,2)}]}})),t.tool("get_policy_status","Return current runtime policy profile and memo-action routing rules.",{},async()=>n(async()=>{let s=k_();return{content:[{type:"text",text:JSON.stringify({policy:s},null,2)}]}})),t.tool("get_workflow_status","Return current workflow phase and transition history for a document.",{file:z.string().describe("Path to the annotated markdown file")},async({file:s})=>n(async()=>{r(s);let i=Mr(s);return{content:[{type:"text",text:JSON.stringify({workflow:i},null,2)}]}})),t.tool("get_severity_status","Return memo severity overrides and unresolved blocking memo IDs for the document.",{file:z.string().describe("Path to the annotated markdown file")},async({file:s})=>n(async()=>{r(s);let i=_p(s);return{content:[{type:"text",text:JSON.stringify({severity:i},null,2)}]}})),t.tool("get_checkpoints","List all checkpoints in an annotated markdown file.",{file:z.string().describe("Path to the annotated markdown file")},async({file:s})=>n(async()=>{let i=r(s),a=mn(i);return{content:[{type:"text",text:JSON.stringify({checkpoints:a},null,2)}]}})),t.tool("generate_handoff","Generate a structured handoff document from an annotated markdown file. Anti-compression format: explicit fields, numbers, lists only.",{file:z.string().describe("Path to the annotated markdown file"),target:z.enum(["standalone","claude-md","cursor-rules"]).optional().describe("Output format target (default: standalone)")},async({file:s,target:i})=>n(async()=>{let a=r(s),c=fa(a,s);return{content:[{type:"text",text:ma(c,i||"standalone")}]}})),t.tool("get_review_status","Get current review session status: annotation counts, checkpoints, and reviewed sections. Summary-only \u2014 returns counts and metadata, not individual memos. Use list_annotations for memo details or get_document_structure for the full parse.",{file:z.string().describe("Path to the annotated markdown file")},async({file:s})=>n(async()=>{let i=r(s),a=Xn(i),c=mn(i),u=hn(i),l={file:s,annotations:a,checkpointCount:c.length,lastCheckpoint:c.length>0?c[c.length-1].timestamp:null,sectionsReviewed:u};return{content:[{type:"text",text:JSON.stringify(l,null,2)}]}})),t.tool("pickup_handoff","Parse an existing handoff document to resume a review session. Returns structured data for session continuity.",{file:z.string().describe("Path to the handoff markdown file")},async({file:s})=>n(async()=>{let i=r(s),a=v_(i);if(!a)throw new _a(s);return{content:[{type:"text",text:JSON.stringify(a,null,2)}]}})),t.tool("list_annotations","List all annotations (USER_MEMO comments) in a markdown file. Returns structured array with id, type, status, owner, text, and color. Lightweight \u2014 returns only memo data, no document body or sections. Use get_document_structure for the full parse.",{file:z.string().describe("Path to the annotated markdown file")},async({file:s})=>n(async()=>{let i=r(s),c=ze(i).memos.map(u=>({id:u.id,type:u.type,status:u.status,owner:u.owner,source:u.source,color:u.color,text:u.text,anchorText:u.anchorText,anchor:u.anchor,createdAt:u.createdAt,updatedAt:u.updatedAt}));return{content:[{type:"text",text:JSON.stringify({annotations:c,total:c.length},null,2)}]}})),t.tool("get_document_structure","Parse an annotated markdown file and return v0.4.0 ReviewDocument metadata. By default bodyMd is omitted to reduce context size; set includeBody=true only when full body is required.",{file:z.string().describe("Path to the annotated markdown file"),includeBody:z.boolean().optional().default(!1).describe("Include full bodyMd content (larger payload)")},async({file:s,includeBody:i})=>n(async()=>{let a=r(s),c=ze(a),u=gn(a),l=hn(a),d=Dt(c.gates,c.memos),p=0,m=0,f=0,h=0,g=0,y=0,_=0,v=0,x=0,k=0;for(let E of c.memos)E.status==="open"?p++:E.status==="in_progress"?m++:E.status==="needs_review"?f++:E.status==="answered"?h++:E.status==="done"?g++:E.status==="failed"?y++:E.status==="wontfix"&&_++,E.type==="fix"?v++:E.type==="question"?x++:k++;let L=0;for(let E of d)E.status==="blocked"&&L++;let G={version:"0.4.0",file:s,bodyMd:i?c.body:"",memos:c.memos,checkpoints:c.checkpoints,gates:d,cursor:c.cursor,sections:{all:u,reviewed:l,uncovered:u.filter(E=>!l.includes(E))},impls:c.impls,artifacts:c.artifacts,dependencies:c.dependencies,summary:{total:c.memos.length,open:p,inProgress:m,needsReview:f,answered:h,done:g,failed:y,wontfix:_,blocked:L,fixes:v,questions:x,highlights:k}},b=x_(c.memos,c.impls,d,c.checkpoints,c.artifacts,c.dependencies);return{content:[{type:"text",text:JSON.stringify({...G,metrics:b},null,2)}]}})),t.tool("evaluate_gates","Evaluate all gates in a markdown file against current memo statuses. Returns updated gate statuses without modifying the file.",{file:z.string().describe("Path to the annotated markdown file")},async({file:s})=>n(async()=>{let i=r(s),a=ze(i),c=Dt(a.gates,a.memos);return{content:[{type:"text",text:JSON.stringify({gates:c,summary:{total:c.length,blocked:c.filter(u=>u.status==="blocked").length,proceed:c.filter(u=>u.status==="proceed").length,done:c.filter(u=>u.status==="done").length}},null,2)}]}}))}function D_(t,e){let{safeRead:r,wrapTool:n}=e;t.tool("export_review","Export review feedback in a format optimized for a specific AI coding tool. Targets: claude-code, cursor, codex, copilot, cline, windsurf, roo-code, gemini, antigravity, generic, handoff. Returns formatted markdown ready to save to the appropriate file.",{file:z.string().describe("Path to the annotated markdown file"),target:z.enum(["claude-code","cursor","codex","copilot","cline","windsurf","roo-code","gemini","antigravity","generic","handoff"]).describe("Target AI tool format")},async({file:o,target:s})=>n(async()=>{let i=r(o);if(s==="handoff"){let h=fa(i,o);return{content:[{type:"text",text:ma(h,"standalone")}]}}let c=ze(i).memos,u=gn(i),l=u[0]||"Plan Review",d={red:"#fca5a5",blue:"#93c5fd",yellow:"#fef08a"},p=c.map(h=>({text:h.anchorText||"",color:d[h.color]||"#fef08a",section:"",context:""})),m=c.map(h=>({id:h.id,text:h.text,color:h.color,section:"",context:h.anchorText||""}));return{content:[{type:"text",text:__(l,o,u,p,m,s)}]}})),t.tool("get_memo_changes","Get the implementation history and progress for a memo. Returns all MemoImpl records and progress entries from .md-feedback/progress.json. If memoId is omitted, returns all changes.",{file:z.string().describe("Path to the annotated markdown file"),memoId:z.string().optional().describe("Optional memo ID to filter by \u2014 if omitted, returns all changes")},async({file:o,memoId:s})=>n(async()=>{let i=r(o),a=ze(i),c=s?a.impls.filter(d=>d.memoId===s):a.impls,u=z_(o),l=s?u.filter(d=>d.memoId===s):u;return{content:[{type:"text",text:JSON.stringify({impls:c,progress:l},null,2)}]}}))}function q_(t,e){Z_(t,e),D_(t,e)}var _n=require("node:fs");function L_(t,e){let{safeRead:r,safeWrite:n,wrapTool:o,ensureDefaultGate:s,updateCursorFromMemos:i,applyUnifiedDiff:a}=e,c=(p,m,f,h)=>{if(h<1)return{replaced:!1,output:p};let g=0,y=0;for(;;){let _=p.indexOf(m,g);if(_===-1)return{replaced:!1,output:p};if(y++,y===h)return{replaced:!0,output:`${p.slice(0,_)}${f}${p.slice(_+m.length)}`};g=_+m.length}},u=(p,m)=>{if(!m)return 0;let f=0,h=0;for(;;){let g=p.indexOf(m,h);if(g===-1)return f;f++,h=g+m.length}},l=(p,m)=>{let f=_=>/^#{1,6}\s+/.test(_),h=Math.max(0,Math.min(m,Math.max(p.length-1,0))),g=0;for(let _=h;_>=0;_--)if(f(p[_])){g=_;break}let y=p.length;for(let _=h+1;_<p.length;_++)if(f(p[_])){y=_;break}return{start:g,end:y}},d=(p,m,f,h,g,y,_)=>{if(y==="body"){let V=u(p,m);if(h)return{output:p.split(m).join(f),matchCount:V};let ue=c(p,m,f,g??1);return ue.replaced?{output:ue.output,matchCount:V}:{output:p,matchCount:V}}let v=p.split(`
75
+ `),x=dp(v,_),{start:k,end:L}=l(v,x>=0?x:0),G=v.slice(k,L).join(`
76
+ `),b=u(G,m),E=G;if(h)E=G.split(m).join(f);else{let V=c(G,m,f,g??1);if(!V.replaced)return{output:p,matchCount:b};E=V.output}let q=E.split(`
77
+ `);return v.splice(k,L-k,...q),{output:v.join(`
78
+ `),matchCount:b}};t.tool("create_checkpoint","Create a review checkpoint in an annotated markdown file. Records current annotation counts and reviewed sections.",{file:z.string().describe("Path to the annotated markdown file"),note:z.string().describe('Checkpoint note (e.g., "Phase 1 review done")')},async({file:p,note:m})=>Ve(p,async()=>o(async()=>{lt(p,"create_checkpoint");let f=r(p),{checkpoint:h,updatedMarkdown:g}=pp(f,m);return n(p,g),{content:[{type:"text",text:JSON.stringify({checkpoint:h},null,2)}]}}))),t.tool("create_annotation","Create a new review annotation on a markdown file. Finds the anchor text in the document and attaches a review memo. Auto-creates a quality gate and updates cursor.",{file:z.string().describe("Path to the annotated markdown file"),anchorText:z.string().describe("The exact text in the document to annotate (must exist in the file)"),type:z.enum(["fix","question","highlight"]).describe("fix = needs change, question = needs clarification, highlight = mark for reference"),text:z.string().describe("The review feedback or note to attach"),occurrence:z.number().int().min(1).optional().describe("Which occurrence of anchorText to annotate (1-indexed, default 1). Use when the same text appears multiple times.")},async({file:p,anchorText:m,type:f,text:h,occurrence:g})=>Ve(p,async()=>o(async()=>{lt(p,"create_annotation");let y=r(p),_=ze(y),v=_.body.split(`
79
+ `),x=-1;if(g){let q=0;for(let V=0;V<v.length;V++)if(v[V].includes(m)&&(q++,q===g)){x=V;break}if(x===-1){let V=q===0?{occurrenceRequested:g,matchCount:q}:{occurrenceRequested:g,matchCount:q};throw new ps(m,V)}}else{let q=[];for(let V=0;V<v.length;V++)v[V].includes(m)&&q.push(V);if(q.length===0)throw new ps(m,{occurrenceRequested:null,matchCount:0});if(q.length===1)x=q[0];else{let V=q.find(ue=>v[ue].trim()===m.trim());if(V!==void 0)x=V;else{let ue=q[0],Ie=1/0;for(let R of q){let H=v[R].length-m.length;H<Ie&&(Ie=H,ue=R)}x=ue}}}let k=Zt(v[x]),L=x+1,G=f==="fix"?"red":f==="question"?"blue":"yellow",b={id:ut("memo"),type:f,status:"open",owner:"agent",source:"mcp",color:G,text:h,anchorText:m,anchor:`L${L}:L${L}|${k}`,createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()};_.memos.push(b),s(_),_.gates=Dt(_.gates,_.memos),i(_,b.id,`Created ${f}: "${h.slice(0,50)}"`);let E=Yt(_);return n(p,E),{content:[{type:"text",text:JSON.stringify({memo:b,gateStatus:_.gates[0]?.status,totalMemos:_.memos.length},null,2)}]}}))),t.tool("respond_to_memo",`Add an AI response to a memo annotation. Inserts a REVIEW_RESPONSE block into the markdown file directly below the memo's anchor text. Automatically sets the memo status to "needs_review" for human approval.`,{file:z.string().describe("Path to the annotated markdown file"),memoId:z.string().describe("The memo ID to respond to"),response:z.string().describe("The response text (markdown supported)")},async({file:p,memoId:m,response:f})=>Ve(p,async()=>o(async()=>{lt(p,"respond_to_memo");let h=r(p),g=ze(h),y=g.memos.find(x=>x.id===m);if(!y)throw new qt(m);va("respond_to_memo",m,y.type);let _=g.responses.find(x=>x.to===m);if(_){let x=g.body.split(`
80
+ `),k=f.split(`
81
+ `),L=_.bodyStartIdx,G=_.bodyEndIdx,b=G>=L?G-L+1:0;x.splice(L,b,...k),_.bodyEndIdx=L+k.length-1;let E=k.length-b;if(E!==0)for(let q of g.responses)q!==_&&q.bodyStartIdx>L&&(q.bodyStartIdx+=E,q.bodyEndIdx+=E);g.body=x.join(`
82
+ `)}else{let x=g.body.split(`
83
+ `),k=dp(x,y),L=k>=0?k:x.length-1,G=f.split(`
84
+ `),b=L+1;x.splice(b,0,...G);for(let E of g.responses)E.bodyStartIdx>=b&&(E.bodyStartIdx+=G.length,E.bodyEndIdx+=G.length);g.body=x.join(`
85
+ `),g.responses.push({id:`resp_${m}`,to:m,bodyStartIdx:b,bodyEndIdx:b+G.length-1})}(y.status==="open"||y.status==="in_progress")&&(y.status="needs_review",y.updatedAt=new Date().toISOString()),g.gates.length>0&&(g.gates=Dt(g.gates,g.memos));let v=Yt(g);return n(p,v),{content:[{type:"text",text:JSON.stringify({memoId:m,status:y.status,responseInserted:!0,totalResponses:g.responses.length},null,2)}]}}))),t.tool("update_memo_status","Update the status of a memo annotation. Writes the change back to the markdown file. Returns the updated memo. Terminal statuses (answered, done, failed, wontfix) require human approval via VS Code.",{file:z.string().describe("Path to the annotated markdown file"),memoId:z.string().describe("The memo ID to update"),status:z.enum(["open","in_progress","needs_review"]).describe("New status. Terminal statuses (answered, done, failed, wontfix) require human approval via VS Code."),owner:z.enum(["human","agent","tool"]).optional().describe("Optionally change the owner")},async({file:p,memoId:m,status:f,owner:h})=>Ve(p,async()=>o(async()=>{lt(p,"update_memo_status");let g=r(p),y=ze(g),_=y.memos.find(x=>x.id===m);if(!_)throw new qt(m);_.status=f,h&&(_.owner=h),_.updatedAt=new Date().toISOString(),s(y),y.gates=Dt(y.gates,y.memos),i(y,m);let v=Yt(y);return n(p,v),{content:[{type:"text",text:JSON.stringify({memo:_,gatesUpdated:y.gates.length,cursor:y.cursor},null,2)}]}}))),t.tool("update_cursor",'Update the plan cursor position in a markdown file. The cursor tracks "where we are" in a plan. Only one cursor per document.',{file:z.string().describe("Path to the annotated markdown file"),taskId:z.string().describe("Current task ID"),step:z.string().describe('Current step (e.g., "3/7" or "Phase 2")'),nextAction:z.string().describe("Description of the next action to take")},async({file:p,taskId:m,step:f,nextAction:h})=>Ve(p,async()=>o(async()=>{lt(p,"update_cursor");let g=r(p),y=ze(g);if(y.memos.length>0&&!y.memos.some(v=>v.id===m))throw new de(`Task ID not found: "${m}". Valid IDs: ${y.memos.map(v=>v.id).join(", ")}`,{taskId:m,validTaskIds:y.memos.map(v=>v.id)});y.cursor={taskId:m,step:f,nextAction:h,lastSeenHash:pa(y.body),updatedAt:new Date().toISOString()};let _=Yt(y);return n(p,_),{content:[{type:"text",text:JSON.stringify({cursor:y.cursor},null,2)}]}}))),t.tool("apply_memo","Apply an implementation action to a memo. Supports text_replace (requires occurrence or replaceAll when oldText has multiple matches; optional section-scoped propagation), file_patch (applies unified diff patch \u2014 snapshot saved first), and file_create (create a new file). Creates a snapshot before modification, records the implementation, and updates memo status to needs_review.",{file:z.string().describe("Path to the annotated markdown file"),memoId:z.string().describe("The memo ID to apply implementation to"),action:z.enum(["text_replace","file_patch","file_create"]).describe("Type of implementation action"),dryRun:z.boolean().optional().default(!1).describe("If true, return preview without writing"),oldText:z.string().optional().describe("For text_replace: the text to find and replace"),newText:z.string().optional().describe("For text_replace: the replacement text"),occurrence:z.number().int().min(1).optional().describe("For text_replace: which occurrence to replace (1-indexed). Required when oldText appears multiple times unless replaceAll=true"),replaceAll:z.boolean().optional().default(!1).describe("For text_replace: replace all occurrences instead of one"),scope:z.enum(["body","section"]).optional().default("body").describe("For text_replace: replacement scope (body = whole document body, section = heading section around memo anchor)"),targetFile:z.string().optional().describe("For file_patch/file_create: target file path"),patch:z.string().optional().describe("For file_patch: unified diff patch content"),content:z.string().optional().describe("For file_create: the file content to write")},async({file:p,memoId:m,action:f,dryRun:h,oldText:g,newText:y,occurrence:_,replaceAll:v,scope:x,targetFile:k,patch:L,content:G})=>Ve(p,async()=>o(async()=>{lt(p,"apply_memo");let b=r(p),E=ze(b),q=E.memos.find(R=>R.id===m);if(!q)throw new qt(m);va("apply_memo",m,q.type);let V;if(f==="text_replace"){if(!g||y===void 0)throw new de("text_replace requires oldText and newText",{memoId:m,action:f});V={type:"text_replace",file:"",before:g,after:y}}else if(f==="file_patch"){if(!k||!L)throw new de("file_patch requires targetFile and patch",{memoId:m,action:f});V={type:"file_patch",file:k,patch:L}}else{if(!k||G===void 0)throw new de("file_create requires targetFile and content",{memoId:m,action:f});V={type:"file_create",file:k,content:G}}let ue={id:ut("impl",{separator:"_"}),memoId:m,status:"applied",operations:[V],summary:`${f} for ${m}`,appliedAt:new Date().toISOString()};if(h)return{content:[{type:"text",text:JSON.stringify({dryRun:!0,impl:ue,operation:V,memo:{id:q.id,status:q.status}},null,2)}]};if(fs(p,b),f==="text_replace"){let R=x??"body";if(R==="body"&&!E.body.includes(g))throw new de("oldText not found in document body",{memoId:m,action:f,scope:R});let H=d(E.body,g,y,v??!1,_,R,q);if(H.matchCount===0)throw new de(`oldText not found in ${R==="section"?"memo section":"document body"}`,{memoId:m,action:f,scope:R});if(!v&&H.matchCount>1&&_===void 0)throw new de("Ambiguous text_replace: oldText appears multiple times; set occurrence or replaceAll=true",{memoId:m,action:f,matchCount:H.matchCount,scope:R});E.body=H.output}else if(f==="file_patch"){if(!(0,_n.existsSync)(k))throw new de(`Target file not found for file_patch: ${k}`,{memoId:m,action:f,targetFile:k});let R=r(k),H=a(R,L,k);fs(k,R),n(k,H)}else f==="file_create"&&n(k,G);E.impls.push(ue),q.status="needs_review",q.updatedAt=new Date().toISOString(),E.gates.length>0&&(E.gates=Dt(E.gates,E.memos)),i(E,m);let Ie=Yt(E);return n(p,Ie),{content:[{type:"text",text:JSON.stringify({impl:ue,memo:{id:q.id,status:q.status},gatesUpdated:E.gates.length},null,2)}]}}))),t.tool("link_artifacts","Link file artifacts (source files, configs, etc.) to a memo. Creates a MemoArtifact record in the document.",{file:z.string().describe("Path to the annotated markdown file"),memoId:z.string().describe("The memo ID to link artifacts to"),files:z.array(z.string()).describe("Array of relative file paths to link")},async({file:p,memoId:m,files:f})=>Ve(p,async()=>o(async()=>{lt(p,"link_artifacts");let h=r(p),g=ze(h);if(!g.memos.find(x=>x.id===m))throw new qt(m);let _={id:ut("art",{separator:"_"}),memoId:m,files:f,linkedAt:new Date().toISOString()};g.artifacts.push(_);let v=Yt(g);return n(p,v),{content:[{type:"text",text:JSON.stringify({artifact:_},null,2)}]}}))),t.tool("update_memo_progress","Update the progress of a memo with a status change and message. Writes progress to .md-feedback/progress.json and updates the memo status. Terminal statuses (done, failed) require human approval via VS Code.",{file:z.string().describe("Path to the annotated markdown file"),memoId:z.string().describe("The memo ID to update progress for"),status:z.enum(["in_progress","needs_review"]).describe("New progress status. Terminal statuses (done, failed) require human approval via VS Code."),message:z.string().describe("Progress message describing what was done or what failed")},async({file:p,memoId:m,status:f,message:h})=>Ve(p,async()=>o(async()=>{lt(p,"update_memo_progress");let g=r(p),y=ze(g),_=y.memos.find(k=>k.id===m);if(!_)throw new qt(m);_.status=f,_.updatedAt=new Date().toISOString();let v={memoId:m,status:f,message:h,timestamp:new Date().toISOString()};await E_(p,v),y.gates.length>0&&(y.gates=Dt(y.gates,y.memos)),i(y,m);let x=Yt(y);return n(p,x),{content:[{type:"text",text:JSON.stringify({memo:{id:_.id,status:_.status},progressEntry:v,gatesUpdated:y.gates.length},null,2)}]}}))),t.tool("rollback_memo","Rollback the latest implementation for a memo. Reverses text_replace operations (swaps before/after), marks the impl as reverted, and sets the memo status back to open.",{file:z.string().describe("Path to the annotated markdown file"),memoId:z.string().describe("The memo ID to rollback")},async({file:p,memoId:m})=>Ve(p,async()=>o(async()=>{lt(p,"rollback_memo"),xp(p,"rollback_memo","Rollback is high-risk because it can revert prior implementation state.");let f=r(p),h=ze(f),g=h.memos.find(x=>x.id===m);if(!g)throw new qt(m);let y=h.impls.filter(x=>x.memoId===m&&x.status==="applied");if(y.length===0)throw new de(`No applied implementation found for memo: ${m}`,{memoId:m});let _=y[y.length-1];for(let x of _.operations)if(x.type==="text_replace"&&h.body.includes(x.after)){let k=c(h.body,x.after,x.before,1);k.replaced&&(h.body=k.output)}_.status="reverted",g.status="open",g.updatedAt=new Date().toISOString(),h.gates.length>0&&(h.gates=Dt(h.gates,h.memos)),i(h,m);let v=Yt(h);return n(p,v),{content:[{type:"text",text:JSON.stringify({rolledBack:_.id,memo:{id:g.id,status:g.status},gatesUpdated:h.gates.length},null,2)}]}}))),t.tool("batch_apply","Apply multiple implementation operations in a single transaction. Parses the document once, applies all operations sequentially, then writes once. Each operation follows the same format as apply_memo.",{file:z.string().describe("Path to the annotated markdown file"),operations:z.array(z.object({memoId:z.string().describe("The memo ID to apply implementation to"),action:z.enum(["text_replace","file_patch","file_create"]).describe("Type of implementation action"),oldText:z.string().optional().describe("For text_replace: the text to find and replace"),newText:z.string().optional().describe("For text_replace: the replacement text"),occurrence:z.number().int().min(1).optional().describe("For text_replace: which occurrence to replace (1-indexed). Required when oldText appears multiple times unless replaceAll=true"),replaceAll:z.boolean().optional().describe("For text_replace: replace all occurrences instead of one"),scope:z.enum(["body","section"]).optional().describe("For text_replace: replacement scope (body = whole document body, section = heading section around memo anchor)"),targetFile:z.string().optional().describe("For file_patch/file_create: target file path"),patch:z.string().optional().describe("For file_patch: unified diff patch content"),content:z.string().optional().describe("For file_create: the file content to write")})).describe("Array of operations to apply")},async({file:p,operations:m})=>Ve(p,async()=>o(async()=>{lt(p,"batch_apply"),xp(p,"batch_apply","Batch apply is high-risk because it can modify multiple files in one transaction.");let f=r(p),h=ze(f),g=[],y=new Map,_=new Map,v=[],x=[];for(let b=0;b<m.length;b++){let E=m[b],q=E.scope??"body";if(E.action==="text_replace"&&q==="body"&&E.oldText){let V=h.body.indexOf(E.oldText);v.push({idx:b,op:E,position:V})}else x.push({idx:b,op:E})}v.sort((b,E)=>E.position-b.position);let k=[...v.map(b=>b.op),...x.map(b=>b.op)];for(let b of k){let E=h.memos.find(ue=>ue.id===b.memoId);if(!E)throw new qt(b.memoId);va("batch_apply",b.memoId,E.type);let q;if(b.action==="text_replace"){if(!b.oldText||b.newText===void 0)throw new de(`Operation failed (${b.memoId}): text_replace requires oldText and newText`,{memoId:b.memoId,action:b.action});q={type:"text_replace",file:"",before:b.oldText,after:b.newText};let ue=b.scope??"body";if(ue==="body"&&!h.body.includes(b.oldText))throw new de(`Operation failed (${b.memoId}): oldText not found in body`,{memoId:b.memoId,action:b.action,scope:ue});let Ie=d(h.body,b.oldText,b.newText,b.replaceAll??!1,b.occurrence,ue,E);if(Ie.matchCount===0)throw new de(`Operation failed (${b.memoId}): oldText not found in ${ue==="section"?"memo section":"body"}`,{memoId:b.memoId,action:b.action,scope:ue});if(!b.replaceAll&&Ie.matchCount>1&&b.occurrence===void 0)throw new de(`Operation failed (${b.memoId}): ambiguous text_replace; set occurrence or replaceAll=true`,{memoId:b.memoId,action:b.action,matchCount:Ie.matchCount,scope:ue});if(h.body=Ie.output,b.replaceAll)for(let R of h.memos)R.anchorText&&R.anchorText.includes(b.oldText)&&(R.anchorText=R.anchorText.split(b.oldText).join(b.newText))}else if(b.action==="file_patch"){if(!b.targetFile||!b.patch)throw new de(`Operation failed (${b.memoId}): file_patch requires targetFile and patch`,{memoId:b.memoId,action:b.action});q={type:"file_patch",file:b.targetFile,patch:b.patch};let ue=y.has(b.targetFile)?y.get(b.targetFile):(0,_n.existsSync)(b.targetFile)?r(b.targetFile):null;if(ue===null)throw new de(`Operation failed (${b.memoId}): target file not found for file_patch (${b.targetFile})`,{memoId:b.memoId,action:b.action,targetFile:b.targetFile});let Ie=a(ue,b.patch,b.targetFile);y.set(b.targetFile,Ie)}else{if(!b.targetFile||b.content===void 0)throw new de(`Operation failed (${b.memoId}): file_create requires targetFile and content`,{memoId:b.memoId,action:b.action});if((0,_n.existsSync)(b.targetFile)&&!y.has(b.targetFile))throw new de(`Operation failed (${b.memoId}): file_create target already exists (${b.targetFile})`,{memoId:b.memoId,action:b.action,targetFile:b.targetFile});q={type:"file_create",file:b.targetFile,content:b.content},y.set(b.targetFile,b.content)}let V={id:ut("impl",{separator:"_"}),memoId:b.memoId,status:"applied",operations:[q],summary:`${b.action} for ${b.memoId}`,appliedAt:new Date().toISOString()};h.impls.push(V),E.status="needs_review",E.updatedAt=new Date().toISOString(),g.push({memoId:b.memoId,implId:V.id,status:"applied"})}h.gates.length>0&&(h.gates=Dt(h.gates,h.memos)),i(h,m[0]?.memoId||"");let L=Yt(h);_.set(p,f);for(let b of y.keys())(0,_n.existsSync)(b)&&_.set(b,r(b));fs(p,f);for(let[b,E]of _.entries())b!==p&&fs(b,E);let G=[];try{for(let[b,E]of y.entries())n(b,E),G.push(b);n(p,L),G.push(p)}catch(b){let E=[];for(let q=G.length-1;q>=0;q--){let V=G[q],ue=_.get(V);if(ue!==void 0)try{n(V,ue)}catch(Ie){E.push(`${V}: ${String(Ie)}`)}else try{(0,_n.unlinkSync)(V)}catch(Ie){E.push(`${V}: ${String(Ie)}`)}}throw E.length>0?new de(`Batch apply failed and rollback had errors: ${E.join(" | ")}`,{rollbackErrors:E}):b}return P_(p,{type:"batch_apply",results:g,timestamp:new Date().toISOString()}),{content:[{type:"text",text:JSON.stringify({results:g,gatesUpdated:h.gates.length,cursor:h.cursor},null,2)}]}}))),t.tool("advance_workflow_phase","Advance workflow phase in strict sequence: scope -> root_cause -> implementation -> verification.",{file:z.string().describe("Path to the annotated markdown file"),toPhase:z.enum(["root_cause","implementation","verification"]).describe("Next phase to move to"),note:z.string().optional().describe("Optional transition note")},async({file:p,toPhase:m,note:f})=>Ve(p,async()=>o(async()=>{let h=j_(p,m,"advance_workflow_phase",f);return{content:[{type:"text",text:JSON.stringify({workflow:h},null,2)}]}}))),t.tool("set_memo_severity","Set severity override for a memo. Defaults remain: fix=blocking, question/highlight=non_blocking.",{file:z.string().describe("Path to the annotated markdown file"),memoId:z.string().describe("Memo ID to classify"),severity:z.enum(["blocking","non_blocking"]).describe("Severity override")},async({file:p,memoId:m,severity:f})=>Ve(p,async()=>o(async()=>{lt(p,"set_memo_severity");let h=r(p);if(!ze(h).memos.find(v=>v.id===m))throw new qt(m);let _=A_(p,m,f);return{content:[{type:"text",text:JSON.stringify({memoId:m,severity:f,severityState:_},null,2)}]}}))),t.tool("request_approval_checkpoint","Create an approval checkpoint for a high-risk action before execution.",{file:z.string().describe("Path to the annotated markdown file"),tool:z.string().describe("High-risk tool name (e.g., batch_apply, rollback_memo)"),reason:z.string().describe("Reason for approval request")},async({file:p,tool:m,reason:f})=>Ve(p,async()=>o(async()=>{lt(p,"request_approval_checkpoint");let h=vp(p,m,f);return{content:[{type:"text",text:JSON.stringify({workflow:h},null,2)}]}}))),t.tool("approve_checkpoint","Approve a pending high-risk checkpoint. Grants one execution for the approved tool.",{file:z.string().describe("Path to the annotated markdown file"),tool:z.string().describe("Tool name being approved"),approvedBy:z.string().describe("Approver identity"),reason:z.string().describe("Approval rationale")},async({file:p,tool:m,approvedBy:f,reason:h})=>Ve(p,async()=>o(async()=>{lt(p,"approve_checkpoint");let g=N_(p,m,f,h);return{content:[{type:"text",text:JSON.stringify({workflow:g},null,2)}]}})))}var Yn=no(require("node:path")),hs=require("node:fs"),JP=["**/.env",".env","**/.env.*",".env.*","**/credentials*","credentials*","**/secrets*","secrets*","**/*.pem","*.pem","**/*.key","*.key","**/*.p12","*.p12","**/node_modules/**","node_modules/**","**/.git/**",".git/**"];function U_(t){return{workspaceRoot:t||process.env.MD_FEEDBACK_WORKSPACE||process.cwd(),blocklist:[...JP],allowlist:[]}}function QP(t,e){let r=e.replace(/\\/g,"/"),o=t.replace(/\\/g,"/").replace(/[.+^${}()|[\]]/g,"\\$&").replace(/\*\*/g,"\0").replace(/\*/g,"[^/]*").replace(/\u0000/g,".*").replace(/\?/g,"[^/]");return new RegExp(`^${o}$`).test(r)}function F_(t,e){return t.some(r=>QP(r,e))}function bp(t,e){let r=Yn.default.resolve(t.workspaceRoot,e),n=Yn.default.resolve(t.workspaceRoot);if(!r.startsWith(n+Yn.default.sep)&&r!==n)return{safe:!1,reason:`Path "${e}" resolves outside workspace root`};if((0,hs.existsSync)(r))try{let s=(0,hs.realpathSync)(r),i=(0,hs.realpathSync)(n);if(!s.startsWith(i+Yn.default.sep)&&s!==i)return{safe:!1,reason:`Path "${e}" resolves outside workspace via symlink`}}catch{}let o=Yn.default.relative(n,r).replace(/\\/g,"/");return F_(t.blocklist,o)?{safe:!1,reason:`Path "${e}" matches blocklist pattern`}:t.allowlist.length>0&&!F_(t.allowlist,o)?{safe:!1,reason:`Path "${e}" not in allowlist`}:{safe:!0}}var eo=require("node:fs"),to=require("node:path");function V_(t,e){let r=t.filter(o=>o.startsWith("--workspace=")),n=r.length>0?r[r.length-1]:void 0;if(n){let o=n.slice(12);if(o)return o}return e.MD_FEEDBACK_WORKSPACE||void 0}var XP=new Set([".git","node_modules",".md-feedback","dist","build"]);function ka(t,e={}){let r=e.annotatedOnly??!1,n=e.maxFiles??500,o=(0,to.resolve)(t),s=[];function i(a){if(s.length>=n)return;let c=(0,eo.readdirSync)(a,{withFileTypes:!0});for(let u of c){if(s.length>=n)return;let l=(0,to.join)(a,u.name);if(u.isDirectory()){if(XP.has(u.name))continue;i(l);continue}if(!u.isFile()||!u.name.toLowerCase().endsWith(".md"))continue;let d=(0,to.relative)(o,l).replace(/\\/g,"/");if(!r){s.push(d);continue}try{let p=(0,eo.readFileSync)(l,"utf-8");(p.includes("<!-- USER_MEMO")||p.includes("<!-- HIGHLIGHT_MARK"))&&s.push(d)}catch{}}}try{(0,eo.statSync)(o).isDirectory()&&i(o)}catch{return[]}return s}function H_(t={}){let{workspace:e,log:r}=t,n=U_(e);function o(p){let m=bp(n,p);if(!m.safe)throw new ds(m.reason,{file:p});return ba(p)}function s(p,m){let f=bp(n,p);if(!f.safe)throw new ds(f.reason,{file:p});T_(p,m)}function i(p){return ka(n.workspaceRoot,p)}function a(p){return{content:[{type:"text",text:JSON.stringify(fp(p))}],isError:!0}}async function c(p){try{return await p()}catch(m){if(r){let f=fp(m);r(`tool error: ${JSON.stringify(f)}`)}return a(m)}}function u(p){p.gates.length===0&&p.memos.length>0&&p.gates.push({id:ut("gate"),type:"merge",status:"blocked",blockedBy:[],canProceedIf:"",doneDefinition:"All review annotations resolved"})}function l(p,m,f){let h=p.memos.filter(_=>jt(_.status)).length,g=p.memos.filter(_=>_.status!=="open").length,y=p.memos.filter(_=>!jt(_.status));p.cursor={taskId:m,step:`${g} applied, ${h}/${p.memos.length} resolved`,nextAction:f??(y.length===0?"All annotations resolved \u2014 review complete":`Resolve: ${y.map(_=>_.id).slice(0,3).join(", ")}${y.length>3?"...":""}`),lastSeenHash:pa(p.body),updatedAt:new Date().toISOString()}}function d(p,m,f){let h=p.split(`
86
+ `),g=m.split(`
87
+ `),y=[],_=0,v=0,x=!1;for(;v<g.length;){let L=g[v].match(/^@@ -(\d+)(?:,(\d+))? \+(\d+)(?:,(\d+))? @@/);if(!L){v++;continue}x=!0;let b=Number(L[1])-1;if(b<_||b>h.length)throw new Or(`Invalid patch hunk range for ${f}`,{file:f});for(y.push(...h.slice(_,b)),_=b,v++;v<g.length&&!g[v].startsWith("@@ ");){let E=g[v];if(E.startsWith("\")){v++;continue}let q=E[0],V=E.slice(1);if(q===" "){if(_>=h.length||h[_]!==V)throw new Or(`Patch context mismatch in ${f}`,{file:f});y.push(V),_++}else if(q==="-"){if(_>=h.length||h[_]!==V)throw new Or(`Patch delete mismatch in ${f}`,{file:f});_++}else if(q==="+")y.push(V);else throw new Or(`Unsupported patch line in ${f}: "${E}"`,{file:f});v++}}if(!x)throw new Or(`Invalid unified diff for ${f}: no hunks found`,{file:f});return y.push(...h.slice(_)),y.join(`
88
+ `)}return{safeRead:o,safeWrite:s,listDocuments:i,wrapTool:c,ensureDefaultGate:u,updateCursorFromMemos:l,applyUnifiedDiff:d}}function W_(t,e,r){let n=H_({workspace:e,log:r});q_(t,n),L_(t,{safeRead:n.safeRead,safeWrite:n.safeWrite,wrapTool:n.wrapTool,ensureDefaultGate:n.ensureDefaultGate,updateCursorFromMemos:n.updateCursorFromMemos,applyUnifiedDiff:n.applyUnifiedDiff})}function gs(t){process.stderr.write(`[md-feedback] ${t}
89
+ `)}function YP(){return V_(process.argv,process.env)}var G_=YP(),B_=new ia({name:"md-feedback",version:"1.5.0"});W_(B_,G_,gs);async function eR(){let t=new ca;await B_.connect(t);let e=G_||process.cwd();ka(e,{annotatedOnly:!1,maxFiles:200}).length===0&&gs(`warning: no markdown files found in workspace=${e}. create/open a .md file to use annotation tools.`),gs(`v1.5.0 ready (stdio) workspace=${e}`)}eR().catch(t=>{gs(`fatal: ${t}`),process.exit(1)});0&&(module.exports={log});