md-feedback 1.5.3 → 1.5.4

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.
@@ -1,90 +1,91 @@
1
1
  #!/usr/bin/env node
2
- "use strict";var cv=Object.create;var Ts=Object.defineProperty;var uv=Object.getOwnPropertyDescriptor;var lv=Object.getOwnPropertyNames;var dv=Object.getPrototypeOf,pv=Object.prototype.hasOwnProperty;var M=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),zs=(t,e)=>{for(var r in e)Ts(t,r,{get:e[r],enumerable:!0})},Pp=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of lv(e))!pv.call(t,o)&&o!==r&&Ts(t,o,{get:()=>e[o],enumerable:!(n=uv(e,o))||n.enumerable});return t};var uo=(t,e,r)=>(r=t!=null?cv(dv(t)):{},Pp(e||!t||!t.__esModule?Ts(r,"default",{value:t,enumerable:!0}):r,t)),fv=t=>Pp(Ts({},"__esModule",{value:!0}),t);var qo=M(pe=>{"use strict";Object.defineProperty(pe,"__esModule",{value:!0});pe.regexpCode=pe.getEsmExportName=pe.getProperty=pe.safeStringify=pe.stringify=pe.strConcat=pe.addCodeArg=pe.str=pe._=pe.nil=pe._Code=pe.Name=pe.IDENTIFIER=pe._CodeOrName=void 0;var Zo=class{};pe._CodeOrName=Zo;pe.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var cn=class extends Zo{constructor(e){if(super(),!pe.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}}};pe.Name=cn;var Tt=class extends Zo{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 cn&&(r[n.str]=(r[n.str]||0)+1),r),{})}};pe._Code=Tt;pe.nil=new Tt("");function Sh(t,...e){let r=[t[0]],n=0;for(;n<e.length;)yl(r,e[n]),r.push(t[++n]);return new Tt(r)}pe._=Sh;var gl=new Tt("+");function Th(t,...e){let r=[Do(t[0])],n=0;for(;n<e.length;)r.push(gl),yl(r,e[n]),r.push(gl,Do(t[++n]));return fk(r),new Tt(r)}pe.str=Th;function yl(t,e){e instanceof Tt?t.push(...e._items):e instanceof cn?t.push(e):t.push(gk(e))}pe.addCodeArg=yl;function fk(t){let e=1;for(;e<t.length-1;){if(t[e]===gl){let r=mk(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function mk(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof cn||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 cn))return`"${t}${e.slice(1)}`}function hk(t,e){return e.emptyStr()?t:t.emptyStr()?e:Th`${t}${e}`}pe.strConcat=hk;function gk(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Do(Array.isArray(t)?t.join(","):t)}function yk(t){return new Tt(Do(t))}pe.stringify=yk;function Do(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}pe.safeStringify=Do;function _k(t){return typeof t=="string"&&pe.IDENTIFIER.test(t)?new Tt(`.${t}`):Sh`[${t}]`}pe.getProperty=_k;function vk(t){if(typeof t=="string"&&pe.IDENTIFIER.test(t))return new Tt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}pe.getEsmExportName=vk;function xk(t){return new Tt(t.toString())}pe.regexpCode=xk});var xl=M(dt=>{"use strict";Object.defineProperty(dt,"__esModule",{value:!0});dt.ValueScope=dt.ValueScopeName=dt.Scope=dt.varKinds=dt.UsedValueState=void 0;var lt=qo(),_l=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},Pi;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(Pi||(dt.UsedValueState=Pi={}));dt.varKinds={const:new lt.Name("const"),let:new lt.Name("let"),var:new lt.Name("var")};var Ii=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof lt.Name?e:this.name(e)}name(e){return new lt.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}}};dt.Scope=Ii;var Ri=class extends lt.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,lt._)`.${new lt.Name(r)}[${n}]`}};dt.ValueScopeName=Ri;var bk=(0,lt._)`\n`,vl=class extends Ii{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?bk:lt.nil}}get(){return this._scope}name(e){return new Ri(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,lt._)`${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=lt.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,Pi.Started);let l=r(u);if(l){let d=this.opts.es5?dt.varKinds.var:dt.varKinds.const;s=(0,lt._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,lt._)`${s}${l}${this.opts._n}`;else throw new _l(u);c.set(u,Pi.Completed)})}return s}};dt.ValueScope=vl});var ee=M(re=>{"use strict";Object.defineProperty(re,"__esModule",{value:!0});re.or=re.and=re.not=re.CodeGen=re.operators=re.varKinds=re.ValueScopeName=re.ValueScope=re.Scope=re.Name=re.regexpCode=re.stringify=re.getProperty=re.nil=re.strConcat=re.str=re._=void 0;var ue=qo(),Ct=xl(),kr=qo();Object.defineProperty(re,"_",{enumerable:!0,get:function(){return kr._}});Object.defineProperty(re,"str",{enumerable:!0,get:function(){return kr.str}});Object.defineProperty(re,"strConcat",{enumerable:!0,get:function(){return kr.strConcat}});Object.defineProperty(re,"nil",{enumerable:!0,get:function(){return kr.nil}});Object.defineProperty(re,"getProperty",{enumerable:!0,get:function(){return kr.getProperty}});Object.defineProperty(re,"stringify",{enumerable:!0,get:function(){return kr.stringify}});Object.defineProperty(re,"regexpCode",{enumerable:!0,get:function(){return kr.regexpCode}});Object.defineProperty(re,"Name",{enumerable:!0,get:function(){return kr.Name}});var Ci=xl();Object.defineProperty(re,"Scope",{enumerable:!0,get:function(){return Ci.Scope}});Object.defineProperty(re,"ValueScope",{enumerable:!0,get:function(){return Ci.ValueScope}});Object.defineProperty(re,"ValueScopeName",{enumerable:!0,get:function(){return Ci.ValueScopeName}});Object.defineProperty(re,"varKinds",{enumerable:!0,get:function(){return Ci.varKinds}});re.operators={GT:new ue._Code(">"),GTE:new ue._Code(">="),LT:new ue._Code("<"),LTE:new ue._Code("<="),EQ:new ue._Code("==="),NEQ:new ue._Code("!=="),NOT:new ue._Code("!"),OR:new ue._Code("||"),AND:new ue._Code("&&"),ADD:new ue._Code("+")};var cr=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},bl=class extends cr{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Ct.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=Dn(this.rhs,e,r)),this}get names(){return this.rhs instanceof ue._CodeOrName?this.rhs.names:{}}},Mi=class extends cr{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 ue.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=Dn(this.rhs,e,r),this}get names(){let e=this.lhs instanceof ue.Name?{}:{...this.lhs.names};return Ai(e,this.rhs)}},wl=class extends Mi{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},$l=class extends cr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},kl=class extends cr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},Sl=class extends cr{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},Tl=class extends cr{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=Dn(this.code,e,r),this}get names(){return this.code instanceof ue._CodeOrName?this.code.names:{}}},Lo=class extends cr{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)||(wk(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>dn(e,r.names),{})}},ur=class extends Lo{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},zl=class extends Lo{},Zn=class extends ur{};Zn.kind="else";var un=class t extends ur{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 Zn(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(zh(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=Dn(this.condition,e,r),this}get names(){let e=super.names;return Ai(e,this.condition),this.else&&dn(e,this.else.names),e}};un.kind="if";var ln=class extends ur{};ln.kind="for";var El=class extends ln{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=Dn(this.iteration,e,r),this}get names(){return dn(super.names,this.iteration.names)}},Pl=class extends ln{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?Ct.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=Ai(super.names,this.from);return Ai(e,this.to)}},Oi=class extends ln{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=Dn(this.iterable,e,r),this}get names(){return dn(super.names,this.iterable.names)}},Fo=class extends ur{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)}};Fo.kind="func";var Uo=class extends Lo{render(e){return"return "+super.render(e)}};Uo.kind="return";var Il=class extends ur{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&&dn(e,this.catch.names),this.finally&&dn(e,this.finally.names),e}},Vo=class extends ur{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Vo.kind="catch";var Ho=class extends ur{render(e){return"finally"+super.render(e)}};Ho.kind="finally";var Rl=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
3
- `:""},this._extScope=e,this._scope=new Ct.Scope({parent:e}),this._nodes=[new zl]}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 bl(e,s,n)),s}const(e,r,n){return this._def(Ct.varKinds.const,e,r,n)}let(e,r,n){return this._def(Ct.varKinds.let,e,r,n)}var(e,r,n){return this._def(Ct.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new Mi(e,r,n))}add(e,r){return this._leafNode(new wl(e,re.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==ue.nil&&this._leafNode(new Tl(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,ue.addCodeArg)(r,o));return r.push("}"),new ue._Code(r)}if(e,r,n){if(this._blockNode(new un(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 un(e))}else(){return this._elseNode(new Zn)}endIf(){return this._endBlockNode(un,Zn)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new El(e),r)}forRange(e,r,n,o,s=this.opts.es5?Ct.varKinds.var:Ct.varKinds.let){let i=this._scope.toName(e);return this._for(new Pl(s,i,r,n),()=>o(i))}forOf(e,r,n,o=Ct.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof ue.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,ue._)`${i}.length`,a=>{this.var(s,(0,ue._)`${i}[${a}]`),n(s)})}return this._for(new Oi("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?Ct.varKinds.var:Ct.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,ue._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new Oi("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(ln)}label(e){return this._leafNode(new $l(e))}break(e){return this._leafNode(new kl(e))}return(e){let r=new Uo;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Uo)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new Il;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new Vo(s),r(s)}return n&&(this._currNode=o.finally=new Ho,this.code(n)),this._endBlockNode(Vo,Ho)}throw(e){return this._leafNode(new Sl(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=ue.nil,n,o){return this._blockNode(new Fo(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Fo)}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 un))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}};re.CodeGen=Rl;function dn(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Ai(t,e){return e instanceof ue._CodeOrName?dn(t,e.names):t}function Dn(t,e,r){if(t instanceof ue.Name)return n(t);if(!o(t))return t;return new ue._Code(t._items.reduce((s,i)=>(i instanceof ue.Name&&(i=n(i)),i instanceof ue._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 ue._Code&&s._items.some(i=>i instanceof ue.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function wk(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function zh(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,ue._)`!${Ml(t)}`}re.not=zh;var $k=Eh(re.operators.AND);function kk(...t){return t.reduce($k)}re.and=kk;var Sk=Eh(re.operators.OR);function Tk(...t){return t.reduce(Sk)}re.or=Tk;function Eh(t){return(e,r)=>e===ue.nil?r:r===ue.nil?e:(0,ue._)`${Ml(e)} ${t} ${Ml(r)}`}function Ml(t){return t instanceof ue.Name?t:(0,ue._)`(${t})`}});var fe=M(oe=>{"use strict";Object.defineProperty(oe,"__esModule",{value:!0});oe.checkStrictMode=oe.getErrorPath=oe.Type=oe.useFunc=oe.setEvaluated=oe.evaluatedPropsToName=oe.mergeEvaluated=oe.eachItem=oe.unescapeJsonPointer=oe.escapeJsonPointer=oe.escapeFragment=oe.unescapeFragment=oe.schemaRefOrVal=oe.schemaHasRulesButRef=oe.schemaHasRules=oe.checkUnknownRules=oe.alwaysValidSchema=oe.toHash=void 0;var we=ee(),zk=qo();function Ek(t){let e={};for(let r of t)e[r]=!0;return e}oe.toHash=Ek;function Pk(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(Rh(t,e),!Mh(e,t.self.RULES.all))}oe.alwaysValidSchema=Pk;function Rh(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]||Ch(t,`unknown keyword: "${s}"`)}oe.checkUnknownRules=Rh;function Mh(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}oe.schemaHasRules=Mh;function Ik(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}oe.schemaHasRulesButRef=Ik;function Rk({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,we._)`${r}`}return(0,we._)`${t}${e}${(0,we.getProperty)(n)}`}oe.schemaRefOrVal=Rk;function Mk(t){return Oh(decodeURIComponent(t))}oe.unescapeFragment=Mk;function Ok(t){return encodeURIComponent(Al(t))}oe.escapeFragment=Ok;function Al(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}oe.escapeJsonPointer=Al;function Oh(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}oe.unescapeJsonPointer=Oh;function Ak(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}oe.eachItem=Ak;function Ph({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof we.Name?(s instanceof we.Name?t(o,s,i):e(o,s,i),i):s instanceof we.Name?(e(o,i,s),s):r(s,i);return a===we.Name&&!(c instanceof we.Name)?n(o,c):c}}oe.mergeEvaluated={props:Ph({mergeNames:(t,e,r)=>t.if((0,we._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,we._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,we._)`${r} || {}`).code((0,we._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,we._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,we._)`${r} || {}`),Cl(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:Ah}),items:Ph({mergeNames:(t,e,r)=>t.if((0,we._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,we._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,we._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,we._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function Ah(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,we._)`{}`);return e!==void 0&&Cl(t,r,e),r}oe.evaluatedPropsToName=Ah;function Cl(t,e,r){Object.keys(r).forEach(n=>t.assign((0,we._)`${e}${(0,we.getProperty)(n)}`,!0))}oe.setEvaluated=Cl;var Ih={};function Ck(t,e){return t.scopeValue("func",{ref:e,code:Ih[e.code]||(Ih[e.code]=new zk._Code(e.code))})}oe.useFunc=Ck;var Ol;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Ol||(oe.Type=Ol={}));function Nk(t,e,r){if(t instanceof we.Name){let n=e===Ol.Num;return r?n?(0,we._)`"[" + ${t} + "]"`:(0,we._)`"['" + ${t} + "']"`:n?(0,we._)`"/" + ${t}`:(0,we._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,we.getProperty)(t).toString():"/"+Al(t)}oe.getErrorPath=Nk;function Ch(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}oe.checkStrictMode=Ch});var lr=M(Nl=>{"use strict";Object.defineProperty(Nl,"__esModule",{value:!0});var Xe=ee(),jk={data:new Xe.Name("data"),valCxt:new Xe.Name("valCxt"),instancePath:new Xe.Name("instancePath"),parentData:new Xe.Name("parentData"),parentDataProperty:new Xe.Name("parentDataProperty"),rootData:new Xe.Name("rootData"),dynamicAnchors:new Xe.Name("dynamicAnchors"),vErrors:new Xe.Name("vErrors"),errors:new Xe.Name("errors"),this:new Xe.Name("this"),self:new Xe.Name("self"),scope:new Xe.Name("scope"),json:new Xe.Name("json"),jsonPos:new Xe.Name("jsonPos"),jsonLen:new Xe.Name("jsonLen"),jsonPart:new Xe.Name("jsonPart")};Nl.default=jk});var Wo=M(Ye=>{"use strict";Object.defineProperty(Ye,"__esModule",{value:!0});Ye.extendErrors=Ye.resetErrorsCount=Ye.reportExtraError=Ye.reportError=Ye.keyword$DataError=Ye.keywordError=void 0;var de=ee(),Ni=fe(),nt=lr();Ye.keywordError={message:({keyword:t})=>(0,de.str)`must pass "${t}" keyword validation`};Ye.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,de.str)`"${t}" keyword must be ${e} ($data)`:(0,de.str)`"${t}" keyword is invalid ($data)`};function Zk(t,e=Ye.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=Zh(t,e,r);n??(i||a)?Nh(s,c):jh(o,(0,de._)`[${c}]`)}Ye.reportError=Zk;function Dk(t,e=Ye.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=Zh(t,e,r);Nh(o,a),s||i||jh(n,nt.default.vErrors)}Ye.reportExtraError=Dk;function qk(t,e){t.assign(nt.default.errors,e),t.if((0,de._)`${nt.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,de._)`${nt.default.vErrors}.length`,e),()=>t.assign(nt.default.vErrors,null)))}Ye.resetErrorsCount=qk;function Lk({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,nt.default.errors,a=>{t.const(i,(0,de._)`${nt.default.vErrors}[${a}]`),t.if((0,de._)`${i}.instancePath === undefined`,()=>t.assign((0,de._)`${i}.instancePath`,(0,de.strConcat)(nt.default.instancePath,s.errorPath))),t.assign((0,de._)`${i}.schemaPath`,(0,de.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,de._)`${i}.schema`,r),t.assign((0,de._)`${i}.data`,n))})}Ye.extendErrors=Lk;function Nh(t,e){let r=t.const("err",e);t.if((0,de._)`${nt.default.vErrors} === null`,()=>t.assign(nt.default.vErrors,(0,de._)`[${r}]`),(0,de._)`${nt.default.vErrors}.push(${r})`),t.code((0,de._)`${nt.default.errors}++`)}function jh(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,de._)`new ${t.ValidationError}(${e})`):(r.assign((0,de._)`${n}.errors`,e),r.return(!1))}var pn={keyword:new de.Name("keyword"),schemaPath:new de.Name("schemaPath"),params:new de.Name("params"),propertyName:new de.Name("propertyName"),message:new de.Name("message"),schema:new de.Name("schema"),parentSchema:new de.Name("parentSchema")};function Zh(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,de._)`{}`:Fk(t,e,r)}function Fk(t,e,r={}){let{gen:n,it:o}=t,s=[Uk(o,r),Vk(t,r)];return Hk(t,e,s),n.object(...s)}function Uk({errorPath:t},{instancePath:e}){let r=e?(0,de.str)`${t}${(0,Ni.getErrorPath)(e,Ni.Type.Str)}`:t;return[nt.default.instancePath,(0,de.strConcat)(nt.default.instancePath,r)]}function Vk({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,de.str)`${e}/${t}`;return r&&(o=(0,de.str)`${o}${(0,Ni.getErrorPath)(r,Ni.Type.Str)}`),[pn.schemaPath,o]}function Hk(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([pn.keyword,o],[pn.params,typeof e=="function"?e(t):e||(0,de._)`{}`]),c.messages&&n.push([pn.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([pn.schema,i],[pn.parentSchema,(0,de._)`${l}${d}`],[nt.default.data,s]),u&&n.push([pn.propertyName,u])}});var qh=M(qn=>{"use strict";Object.defineProperty(qn,"__esModule",{value:!0});qn.boolOrEmptySchema=qn.topBoolOrEmptySchema=void 0;var Wk=Wo(),Gk=ee(),Bk=lr(),Kk={message:"boolean schema is false"};function Jk(t){let{gen:e,schema:r,validateName:n}=t;r===!1?Dh(t,!1):typeof r=="object"&&r.$async===!0?e.return(Bk.default.data):(e.assign((0,Gk._)`${n}.errors`,null),e.return(!0))}qn.topBoolOrEmptySchema=Jk;function Qk(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),Dh(t)):r.var(e,!0)}qn.boolOrEmptySchema=Qk;function Dh(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,Wk.reportError)(o,Kk,void 0,e)}});var jl=M(Ln=>{"use strict";Object.defineProperty(Ln,"__esModule",{value:!0});Ln.getRules=Ln.isJSONType=void 0;var Xk=["string","number","integer","boolean","null","object","array"],Yk=new Set(Xk);function e0(t){return typeof t=="string"&&Yk.has(t)}Ln.isJSONType=e0;function t0(){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:{}}}Ln.getRules=t0});var Zl=M(Sr=>{"use strict";Object.defineProperty(Sr,"__esModule",{value:!0});Sr.shouldUseRule=Sr.shouldUseGroup=Sr.schemaHasRulesForType=void 0;function r0({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Lh(t,n)}Sr.schemaHasRulesForType=r0;function Lh(t,e){return e.rules.some(r=>Fh(t,r))}Sr.shouldUseGroup=Lh;function Fh(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))}Sr.shouldUseRule=Fh});var Go=M(et=>{"use strict";Object.defineProperty(et,"__esModule",{value:!0});et.reportTypeError=et.checkDataTypes=et.checkDataType=et.coerceAndCheckDataType=et.getJSONTypes=et.getSchemaTypes=et.DataType=void 0;var n0=jl(),o0=Zl(),s0=Wo(),X=ee(),Uh=fe(),Fn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Fn||(et.DataType=Fn={}));function i0(t){let e=Vh(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}et.getSchemaTypes=i0;function Vh(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(n0.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}et.getJSONTypes=Vh;function a0(t,e){let{gen:r,data:n,opts:o}=t,s=c0(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,o0.schemaHasRulesForType)(t,e[0]));if(i){let a=ql(e,n,o.strictNumbers,Fn.Wrong);r.if(a,()=>{s.length?u0(t,e,s):Ll(t)})}return i}et.coerceAndCheckDataType=a0;var Hh=new Set(["string","number","integer","boolean","null"]);function c0(t,e){return e?t.filter(r=>Hh.has(r)||e==="array"&&r==="array"):[]}function u0(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,X._)`typeof ${o}`),a=n.let("coerced",(0,X._)`undefined`);s.coerceTypes==="array"&&n.if((0,X._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,X._)`${o}[0]`).assign(i,(0,X._)`typeof ${o}`).if(ql(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,X._)`${a} !== undefined`);for(let u of r)(Hh.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),Ll(t),n.endIf(),n.if((0,X._)`${a} !== undefined`,()=>{n.assign(o,a),l0(t,a)});function c(u){switch(u){case"string":n.elseIf((0,X._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,X._)`"" + ${o}`).elseIf((0,X._)`${o} === null`).assign(a,(0,X._)`""`);return;case"number":n.elseIf((0,X._)`${i} == "boolean" || ${o} === null
4
- || (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,X._)`+${o}`);return;case"integer":n.elseIf((0,X._)`${i} === "boolean" || ${o} === null
5
- || (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,X._)`+${o}`);return;case"boolean":n.elseIf((0,X._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,X._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,X._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,X._)`${i} === "string" || ${i} === "number"
6
- || ${i} === "boolean" || ${o} === null`).assign(a,(0,X._)`[${o}]`)}}}function l0({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,X._)`${e} !== undefined`,()=>t.assign((0,X._)`${e}[${r}]`,n))}function Dl(t,e,r,n=Fn.Correct){let o=n===Fn.Correct?X.operators.EQ:X.operators.NEQ,s;switch(t){case"null":return(0,X._)`${e} ${o} null`;case"array":s=(0,X._)`Array.isArray(${e})`;break;case"object":s=(0,X._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,X._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,X._)`typeof ${e} ${o} ${t}`}return n===Fn.Correct?s:(0,X.not)(s);function i(a=X.nil){return(0,X.and)((0,X._)`typeof ${e} == "number"`,a,r?(0,X._)`isFinite(${e})`:X.nil)}}et.checkDataType=Dl;function ql(t,e,r,n){if(t.length===1)return Dl(t[0],e,r,n);let o,s=(0,Uh.toHash)(t);if(s.array&&s.object){let i=(0,X._)`typeof ${e} != "object"`;o=s.null?i:(0,X._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=X.nil;s.number&&delete s.integer;for(let i in s)o=(0,X.and)(o,Dl(i,e,r,n));return o}et.checkDataTypes=ql;var d0={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,X._)`{type: ${t}}`:(0,X._)`{type: ${e}}`};function Ll(t){let e=p0(t);(0,s0.reportError)(e,d0)}et.reportTypeError=Ll;function p0(t){let{gen:e,data:r,schema:n}=t,o=(0,Uh.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var Gh=M(ji=>{"use strict";Object.defineProperty(ji,"__esModule",{value:!0});ji.assignDefaults=void 0;var Un=ee(),f0=fe();function m0(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)Wh(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>Wh(t,s,o.default))}ji.assignDefaults=m0;function Wh(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,Un._)`${s}${(0,Un.getProperty)(e)}`;if(o){(0,f0.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,Un._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,Un._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,Un._)`${a} = ${(0,Un.stringify)(r)}`)}});var zt=M(be=>{"use strict";Object.defineProperty(be,"__esModule",{value:!0});be.validateUnion=be.validateArray=be.usePattern=be.callValidateCode=be.schemaProperties=be.allSchemaProperties=be.noPropertyInData=be.propertyInData=be.isOwnProperty=be.hasPropFunc=be.reportMissingProp=be.checkMissingProp=be.checkReportMissingProp=void 0;var Te=ee(),Fl=fe(),Tr=lr(),h0=fe();function g0(t,e){let{gen:r,data:n,it:o}=t;r.if(Vl(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Te._)`${e}`},!0),t.error()})}be.checkReportMissingProp=g0;function y0({gen:t,data:e,it:{opts:r}},n,o){return(0,Te.or)(...n.map(s=>(0,Te.and)(Vl(t,e,s,r.ownProperties),(0,Te._)`${o} = ${s}`)))}be.checkMissingProp=y0;function _0(t,e){t.setParams({missingProperty:e},!0),t.error()}be.reportMissingProp=_0;function Bh(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Te._)`Object.prototype.hasOwnProperty`})}be.hasPropFunc=Bh;function Ul(t,e,r){return(0,Te._)`${Bh(t)}.call(${e}, ${r})`}be.isOwnProperty=Ul;function v0(t,e,r,n){let o=(0,Te._)`${e}${(0,Te.getProperty)(r)} !== undefined`;return n?(0,Te._)`${o} && ${Ul(t,e,r)}`:o}be.propertyInData=v0;function Vl(t,e,r,n){let o=(0,Te._)`${e}${(0,Te.getProperty)(r)} === undefined`;return n?(0,Te.or)(o,(0,Te.not)(Ul(t,e,r))):o}be.noPropertyInData=Vl;function Kh(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}be.allSchemaProperties=Kh;function x0(t,e){return Kh(e).filter(r=>!(0,Fl.alwaysValidSchema)(t,e[r]))}be.schemaProperties=x0;function b0({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?(0,Te._)`${t}, ${e}, ${n}${o}`:e,d=[[Tr.default.instancePath,(0,Te.strConcat)(Tr.default.instancePath,s)],[Tr.default.parentData,i.parentData],[Tr.default.parentDataProperty,i.parentDataProperty],[Tr.default.rootData,Tr.default.rootData]];i.opts.dynamicRef&&d.push([Tr.default.dynamicAnchors,Tr.default.dynamicAnchors]);let m=(0,Te._)`${l}, ${r.object(...d)}`;return c!==Te.nil?(0,Te._)`${a}.call(${c}, ${m})`:(0,Te._)`${a}(${m})`}be.callValidateCode=b0;var w0=(0,Te._)`new RegExp`;function $0({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,Te._)`${o.code==="new RegExp"?w0:(0,h0.useFunc)(t,o)}(${r}, ${n})`})}be.usePattern=$0;function k0(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,Te._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:Fl.Type.Num},s),e.if((0,Te.not)(s),a)})}}be.validateArray=k0;function S0(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,Fl.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,Te._)`${i} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,Te.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}be.validateUnion=S0});var Xh=M(Jt=>{"use strict";Object.defineProperty(Jt,"__esModule",{value:!0});Jt.validateKeywordUsage=Jt.validSchemaType=Jt.funcKeywordCode=Jt.macroKeywordCode=void 0;var ot=ee(),fn=lr(),T0=zt(),z0=Wo();function E0(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=Qh(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:ot.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}Jt.macroKeywordCode=E0;function P0(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;R0(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=Qh(n,o,u),d=n.let("valid");t.block$data(d,m),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function m(){if(e.errors===!1)h(),e.modifying&&Jh(t),_(()=>t.error());else{let p=e.async?y():f();e.modifying&&Jh(t),_(()=>I0(t,p))}}function y(){let p=n.let("ruleErrs",null);return n.try(()=>h((0,ot._)`await `),g=>n.assign(d,!1).if((0,ot._)`${g} instanceof ${c.ValidationError}`,()=>n.assign(p,(0,ot._)`${g}.errors`),()=>n.throw(g))),p}function f(){let p=(0,ot._)`${l}.errors`;return n.assign(p,null),h(ot.nil),p}function h(p=e.async?(0,ot._)`await `:ot.nil){let g=c.opts.passContext?fn.default.this:fn.default.self,v=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,ot._)`${p}${(0,T0.callValidateCode)(t,l,g,v)}`,e.modifying)}function _(p){var g;n.if((0,ot.not)((g=e.valid)!==null&&g!==void 0?g:d),p)}}Jt.funcKeywordCode=P0;function Jh(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,ot._)`${n.parentData}[${n.parentDataProperty}]`))}function I0(t,e){let{gen:r}=t;r.if((0,ot._)`Array.isArray(${e})`,()=>{r.assign(fn.default.vErrors,(0,ot._)`${fn.default.vErrors} === null ? ${e} : ${fn.default.vErrors}.concat(${e})`).assign(fn.default.errors,(0,ot._)`${fn.default.vErrors}.length`),(0,z0.extendErrors)(t)},()=>t.error())}function R0({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Qh(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,ot.stringify)(r)})}function M0(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=M0;function O0({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=O0});var eg=M(zr=>{"use strict";Object.defineProperty(zr,"__esModule",{value:!0});zr.extendSubschemaMode=zr.extendSubschemaData=zr.getSubschema=void 0;var Qt=ee(),Yh=fe();function A0(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,Qt._)`${t.schemaPath}${(0,Qt.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,Qt._)`${t.schemaPath}${(0,Qt.getProperty)(e)}${(0,Qt.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Yh.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')}zr.getSubschema=A0;function C0(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,m=a.let("data",(0,Qt._)`${e.data}${(0,Qt.getProperty)(r)}`,!0);c(m),t.errorPath=(0,Qt.str)`${u}${(0,Yh.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,Qt._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof Qt.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]}}zr.extendSubschemaData=C0;function N0(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}zr.extendSubschemaMode=N0});var Hl=M((zC,tg)=>{"use strict";tg.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 ng=M((EC,rg)=>{"use strict";var Er=rg.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(){};Zi(e,n,o,t,"",t)};Er.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Er.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Er.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Er.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 Zi(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 Er.arrayKeywords)for(var m=0;m<d.length;m++)Zi(t,e,r,d[m],o+"/"+l+"/"+m,s,o,l,n,m)}else if(l in Er.propsKeywords){if(d&&typeof d=="object")for(var y in d)Zi(t,e,r,d[y],o+"/"+l+"/"+j0(y),s,o,l,n,y)}else(l in Er.keywords||t.allKeys&&!(l in Er.skipKeywords))&&Zi(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function j0(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Bo=M(pt=>{"use strict";Object.defineProperty(pt,"__esModule",{value:!0});pt.getSchemaRefs=pt.resolveUrl=pt.normalizeId=pt._getFullPath=pt.getFullPath=pt.inlineRef=void 0;var Z0=fe(),D0=Hl(),q0=ng(),L0=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function F0(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Wl(t):e?og(t)<=e:!1}pt.inlineRef=F0;var U0=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Wl(t){for(let e in t){if(U0.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Wl)||typeof r=="object"&&Wl(r))return!0}return!1}function og(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!L0.has(r)&&(typeof t[r]=="object"&&(0,Z0.eachItem)(t[r],n=>e+=og(n)),e===1/0))return 1/0}return e}function sg(t,e="",r){r!==!1&&(e=Vn(e));let n=t.parse(e);return ig(t,n)}pt.getFullPath=sg;function ig(t,e){return t.serialize(e).split("#")[0]+"#"}pt._getFullPath=ig;var V0=/#\/?$/;function Vn(t){return t?t.replace(V0,""):""}pt.normalizeId=Vn;function H0(t,e,r){return r=Vn(r),t.resolve(e,r)}pt.resolveUrl=H0;var W0=/^[a-z_][-a-z0-9._]*$/i;function G0(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Vn(t[r]||e),s={"":o},i=sg(n,o,!1),a={},c=new Set;return q0(t,{allKeys:!0},(d,m,y,f)=>{if(f===void 0)return;let h=i+m,_=s[f];typeof d[r]=="string"&&(_=p.call(this,d[r])),g.call(this,d.$anchor),g.call(this,d.$dynamicAnchor),s[m]=_;function p(v){let x=this.opts.uriResolver.resolve;if(v=Vn(_?x(_,v):v),c.has(v))throw l(v);c.add(v);let b=this.refs[v];return typeof b=="string"&&(b=this.refs[b]),typeof b=="object"?u(d,b.schema,v):v!==Vn(h)&&(v[0]==="#"?(u(d,a[v],v),a[v]=d):this.refs[v]=h),v}function g(v){if(typeof v=="string"){if(!W0.test(v))throw new Error(`invalid anchor "${v}"`);p.call(this,`#${v}`)}}}),a;function u(d,m,y){if(m!==void 0&&!D0(d,m))throw l(y)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}pt.getSchemaRefs=G0});var Qo=M(Pr=>{"use strict";Object.defineProperty(Pr,"__esModule",{value:!0});Pr.getData=Pr.KeywordCxt=Pr.validateFunctionCode=void 0;var dg=qh(),ag=Go(),Bl=Zl(),Di=Go(),B0=Gh(),Jo=Xh(),Gl=eg(),L=ee(),K=lr(),K0=Bo(),dr=fe(),Ko=Wo();function J0(t){if(mg(t)&&(hg(t),fg(t))){Y0(t);return}pg(t,()=>(0,dg.topBoolOrEmptySchema)(t))}Pr.validateFunctionCode=J0;function pg({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,L._)`${K.default.data}, ${K.default.valCxt}`,n.$async,()=>{t.code((0,L._)`"use strict"; ${cg(r,o)}`),X0(t,o),t.code(s)}):t.func(e,(0,L._)`${K.default.data}, ${Q0(o)}`,n.$async,()=>t.code(cg(r,o)).code(s))}function Q0(t){return(0,L._)`{${K.default.instancePath}="", ${K.default.parentData}, ${K.default.parentDataProperty}, ${K.default.rootData}=${K.default.data}${t.dynamicRef?(0,L._)`, ${K.default.dynamicAnchors}={}`:L.nil}}={}`}function X0(t,e){t.if(K.default.valCxt,()=>{t.var(K.default.instancePath,(0,L._)`${K.default.valCxt}.${K.default.instancePath}`),t.var(K.default.parentData,(0,L._)`${K.default.valCxt}.${K.default.parentData}`),t.var(K.default.parentDataProperty,(0,L._)`${K.default.valCxt}.${K.default.parentDataProperty}`),t.var(K.default.rootData,(0,L._)`${K.default.valCxt}.${K.default.rootData}`),e.dynamicRef&&t.var(K.default.dynamicAnchors,(0,L._)`${K.default.valCxt}.${K.default.dynamicAnchors}`)},()=>{t.var(K.default.instancePath,(0,L._)`""`),t.var(K.default.parentData,(0,L._)`undefined`),t.var(K.default.parentDataProperty,(0,L._)`undefined`),t.var(K.default.rootData,K.default.data),e.dynamicRef&&t.var(K.default.dynamicAnchors,(0,L._)`{}`)})}function Y0(t){let{schema:e,opts:r,gen:n}=t;pg(t,()=>{r.$comment&&e.$comment&&yg(t),oS(t),n.let(K.default.vErrors,null),n.let(K.default.errors,0),r.unevaluated&&eS(t),gg(t),aS(t)})}function eS(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,L._)`${r}.evaluated`),e.if((0,L._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,L._)`${t.evaluated}.props`,(0,L._)`undefined`)),e.if((0,L._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,L._)`${t.evaluated}.items`,(0,L._)`undefined`))}function cg(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,L._)`/*# sourceURL=${r} */`:L.nil}function tS(t,e){if(mg(t)&&(hg(t),fg(t))){rS(t,e);return}(0,dg.boolOrEmptySchema)(t,e)}function fg({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 mg(t){return typeof t.schema!="boolean"}function rS(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&yg(t),sS(t),iS(t);let s=n.const("_errs",K.default.errors);gg(t,s),n.var(e,(0,L._)`${s} === ${K.default.errors}`)}function hg(t){(0,dr.checkUnknownRules)(t),nS(t)}function gg(t,e){if(t.opts.jtd)return ug(t,[],!1,e);let r=(0,ag.getSchemaTypes)(t.schema),n=(0,ag.coerceAndCheckDataType)(t,r);ug(t,r,!n,e)}function nS(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,dr.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function oS(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,dr.checkStrictMode)(t,"default is ignored in the schema root")}function sS(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,K0.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function iS(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function yg({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,L._)`${K.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,L.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,L._)`${K.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function aS(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,L._)`${K.default.errors} === 0`,()=>e.return(K.default.data),()=>e.throw((0,L._)`new ${o}(${K.default.vErrors})`)):(e.assign((0,L._)`${n}.errors`,K.default.vErrors),s.unevaluated&&cS(t),e.return((0,L._)`${K.default.errors} === 0`))}function cS({gen:t,evaluated:e,props:r,items:n}){r instanceof L.Name&&t.assign((0,L._)`${e}.props`,r),n instanceof L.Name&&t.assign((0,L._)`${e}.items`,n)}function ug(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,dr.schemaHasRulesButRef)(s,l))){o.block(()=>vg(t,"$ref",l.all.$ref.definition));return}c.jtd||uS(t,e),o.block(()=>{for(let m of l.rules)d(m);d(l.post)});function d(m){(0,Bl.shouldUseGroup)(s,m)&&(m.type?(o.if((0,Di.checkDataType)(m.type,i,c.strictNumbers)),lg(t,m),e.length===1&&e[0]===m.type&&r&&(o.else(),(0,Di.reportTypeError)(t)),o.endIf()):lg(t,m),a||o.if((0,L._)`${K.default.errors} === ${n||0}`))}}function lg(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,B0.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Bl.shouldUseRule)(n,s)&&vg(t,s.keyword,s.definition,e.type)})}function uS(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(lS(t,e),t.opts.allowUnionTypes||dS(t,e),pS(t,t.dataTypes))}function lS(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{_g(t.dataTypes,r)||Kl(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),mS(t,e)}}function dS(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Kl(t,"use allowUnionTypes to allow union type keyword")}function pS(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Bl.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>fS(e,i))&&Kl(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function fS(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function _g(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function mS(t,e){let r=[];for(let n of t.dataTypes)_g(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Kl(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,dr.checkStrictMode)(t,e,t.opts.strictTypes)}var qi=class{constructor(e,r,n){if((0,Jo.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,dr.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",xg(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Jo.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",K.default.errors))}result(e,r,n){this.failResult((0,L.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,L.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,L._)`${r} !== undefined && (${(0,L.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?Ko.reportExtraError:Ko.reportError)(this,this.def.error,r)}$dataError(){(0,Ko.reportError)(this,this.def.$dataError||Ko.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Ko.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=L.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=L.nil,r=L.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,L.or)((0,L._)`${o} === undefined`,r)),e!==L.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==L.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,L.or)(i(),a());function i(){if(n.length){if(!(r instanceof L.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,L._)`${(0,Di.checkDataTypes)(c,r,s.opts.strictNumbers,Di.DataType.Wrong)}`}return L.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,L._)`!${c}(${r})`}return L.nil}}subschema(e,r){let n=(0,Gl.getSubschema)(this.it,e);(0,Gl.extendSubschemaData)(n,this.it,e),(0,Gl.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return tS(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=dr.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=dr.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,L.Name)),!0}};Pr.KeywordCxt=qi;function vg(t,e,r,n){let o=new qi(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Jo.funcKeywordCode)(o,r):"macro"in r?(0,Jo.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Jo.funcKeywordCode)(o,r)}var hS=/^\/(?:[^~]|~0|~1)*$/,gS=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function xg(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return K.default.rootData;if(t[0]==="/"){if(!hS.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=K.default.rootData}else{let u=gS.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,L._)`${s}${(0,L.getProperty)((0,dr.unescapeJsonPointer)(u))}`,i=(0,L._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}Pr.getData=xg});var Li=M(Ql=>{"use strict";Object.defineProperty(Ql,"__esModule",{value:!0});var Jl=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Ql.default=Jl});var Xo=M(ed=>{"use strict";Object.defineProperty(ed,"__esModule",{value:!0});var Xl=Bo(),Yl=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,Xl.resolveUrl)(e,r,n),this.missingSchema=(0,Xl.normalizeId)((0,Xl.getFullPath)(e,this.missingRef))}};ed.default=Yl});var Ui=M(Et=>{"use strict";Object.defineProperty(Et,"__esModule",{value:!0});Et.resolveSchema=Et.getCompilingSchema=Et.resolveRef=Et.compileSchema=Et.SchemaEnv=void 0;var Nt=ee(),yS=Li(),mn=lr(),jt=Bo(),bg=fe(),_S=Qo(),Hn=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,jt.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};Et.SchemaEnv=Hn;function rd(t){let e=wg.call(this,t);if(e)return e;let r=(0,jt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new Nt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:yS.default,code:(0,Nt._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:mn.default.data,parentData:mn.default.parentData,parentDataProperty:mn.default.parentDataProperty,dataNames:[mn.default.data],dataPathArr:[Nt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Nt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Nt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Nt._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,_S.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(mn.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let y=new Function(`${mn.default.self}`,`${mn.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:y}),y.errors=null,y.schema=t.schema,y.schemaEnv=t,t.$async&&(y.$async=!0),this.opts.code.source===!0&&(y.source={validateName:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:f,items:h}=u;y.evaluated={props:f instanceof Nt.Name?void 0:f,items:h instanceof Nt.Name?void 0:h,dynamicProps:f instanceof Nt.Name,dynamicItems:h instanceof Nt.Name},y.source&&(y.source.evaluated=(0,Nt.stringify)(y.evaluated))}return t.validate=y,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)}}Et.compileSchema=rd;function vS(t,e,r){var n;r=(0,jt.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=wS.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 Hn({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=xS.call(this,s)}Et.resolveRef=vS;function xS(t){return(0,jt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:rd.call(this,t)}function wg(t){for(let e of this._compilations)if(bS(e,t))return e}Et.getCompilingSchema=wg;function bS(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function wS(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Fi.call(this,t,e)}function Fi(t,e){let r=this.opts.uriResolver.parse(e),n=(0,jt._getFullPath)(this.opts.uriResolver,r),o=(0,jt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return td.call(this,r,t);let s=(0,jt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Fi.call(this,t,i);return typeof a?.schema!="object"?void 0:td.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||rd.call(this,i),s===(0,jt.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,jt.resolveUrl)(this.opts.uriResolver,o,u)),new Hn({schema:a,schemaId:c,root:t,baseId:o})}return td.call(this,r,i)}}Et.resolveSchema=Fi;var $S=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function td(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,bg.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!$S.has(a)&&u&&(e=(0,jt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,bg.schemaHasRulesButRef)(r,this.RULES)){let a=(0,jt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=Fi.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new Hn({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var $g=M((AC,kS)=>{kS.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 od=M((CC,zg)=>{"use strict";var SS=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),Sg=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 nd(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 TS=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function kg(t){return t.length=0,!0}function zS(t,e,r){if(t.length){let n=nd(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function ES(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=zS;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=kg}else{o.push(u);continue}}return o.length&&(a===kg?r.zone=o.join(""):i?n.push(o.join("")):n.push(nd(o))),r.address=n.join(""),r}function Tg(t){if(PS(t,":")<2)return{host:t,isIPV6:!1};let e=ES(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 PS(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function IS(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 RS(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 MS(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!Sg(r)){let n=Tg(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}zg.exports={nonSimpleDomain:TS,recomposeAuthority:MS,normalizeComponentEncoding:RS,removeDotSegments:IS,isIPv4:Sg,isUUID:SS,normalizeIPv6:Tg,stringArrayToHexStripped:nd}});var Mg=M((NC,Rg)=>{"use strict";var{isUUID:OS}=od(),AS=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,CS=["http","https","ws","wss","urn","urn:uuid"];function NS(t){return CS.indexOf(t)!==-1}function sd(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 Eg(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function Pg(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 jS(t){return t.secure=sd(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function ZS(t){if((t.port===(sd(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 DS(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(AS);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=id(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function qS(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=id(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 LS(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!OS(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function FS(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Ig={scheme:"http",domainHost:!0,parse:Eg,serialize:Pg},US={scheme:"https",domainHost:Ig.domainHost,parse:Eg,serialize:Pg},Vi={scheme:"ws",domainHost:!0,parse:jS,serialize:ZS},VS={scheme:"wss",domainHost:Vi.domainHost,parse:Vi.parse,serialize:Vi.serialize},HS={scheme:"urn",parse:DS,serialize:qS,skipNormalize:!0},WS={scheme:"urn:uuid",parse:LS,serialize:FS,skipNormalize:!0},Hi={http:Ig,https:US,ws:Vi,wss:VS,urn:HS,"urn:uuid":WS};Object.setPrototypeOf(Hi,null);function id(t){return t&&(Hi[t]||Hi[t.toLowerCase()])||void 0}Rg.exports={wsIsSecure:sd,SCHEMES:Hi,isValidSchemeName:NS,getSchemeHandler:id}});var Cg=M((jC,Gi)=>{"use strict";var{normalizeIPv6:GS,removeDotSegments:Yo,recomposeAuthority:BS,normalizeComponentEncoding:Wi,isIPv4:KS,nonSimpleDomain:JS}=od(),{SCHEMES:QS,getSchemeHandler:Og}=Mg();function XS(t,e){return typeof t=="string"?t=Xt(pr(t,e),e):typeof t=="object"&&(t=pr(Xt(t,e),e)),t}function YS(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=Ag(pr(t,n),pr(e,n),n,!0);return n.skipEscape=!0,Xt(o,n)}function Ag(t,e,r,n){let o={};return n||(t=pr(Xt(t,r),r),e=pr(Xt(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=Yo(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=Yo(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=Yo(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=Yo(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 eT(t,e,r){return typeof t=="string"?(t=unescape(t),t=Xt(Wi(pr(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Xt(Wi(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Xt(Wi(pr(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Xt(Wi(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function Xt(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=Og(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=BS(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=Yo(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 tT=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function pr(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(tT);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(KS(n.host)===!1){let c=GS(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=Og(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&JS(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 ad={SCHEMES:QS,normalize:XS,resolve:YS,resolveComponent:Ag,equal:eT,serialize:Xt,parse:pr};Gi.exports=ad;Gi.exports.default=ad;Gi.exports.fastUri=ad});var jg=M(cd=>{"use strict";Object.defineProperty(cd,"__esModule",{value:!0});var Ng=Cg();Ng.code='require("ajv/dist/runtime/uri").default';cd.default=Ng});var Hg=M(Ge=>{"use strict";Object.defineProperty(Ge,"__esModule",{value:!0});Ge.CodeGen=Ge.Name=Ge.nil=Ge.stringify=Ge.str=Ge._=Ge.KeywordCxt=void 0;var rT=Qo();Object.defineProperty(Ge,"KeywordCxt",{enumerable:!0,get:function(){return rT.KeywordCxt}});var Wn=ee();Object.defineProperty(Ge,"_",{enumerable:!0,get:function(){return Wn._}});Object.defineProperty(Ge,"str",{enumerable:!0,get:function(){return Wn.str}});Object.defineProperty(Ge,"stringify",{enumerable:!0,get:function(){return Wn.stringify}});Object.defineProperty(Ge,"nil",{enumerable:!0,get:function(){return Wn.nil}});Object.defineProperty(Ge,"Name",{enumerable:!0,get:function(){return Wn.Name}});Object.defineProperty(Ge,"CodeGen",{enumerable:!0,get:function(){return Wn.CodeGen}});var nT=Li(),Fg=Xo(),oT=jl(),es=Ui(),sT=ee(),ts=Bo(),Bi=Go(),ld=fe(),Zg=$g(),iT=jg(),Ug=(t,e)=>new RegExp(t,e);Ug.code="new RegExp";var aT=["removeAdditional","useDefaults","coerceTypes"],cT=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),uT={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."},lT={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Dg=200;function dT(t){var e,r,n,o,s,i,a,c,u,l,d,m,y,f,h,_,p,g,v,x,b,S,E,F,ye;let B=t.strict,G=(e=t.code)===null||e===void 0?void 0:e.optimize,me=G===!0||G===void 0?1:G||0,ne=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Ug,ge=(o=t.uriResolver)!==null&&o!==void 0?o:iT.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:B)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:B)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:B)!==null&&l!==void 0?l:"log",strictTuples:(m=(d=t.strictTuples)!==null&&d!==void 0?d:B)!==null&&m!==void 0?m:"log",strictRequired:(f=(y=t.strictRequired)!==null&&y!==void 0?y:B)!==null&&f!==void 0?f:!1,code:t.code?{...t.code,optimize:me,regExp:ne}:{optimize:me,regExp:ne},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:Dg,loopEnum:(_=t.loopEnum)!==null&&_!==void 0?_:Dg,meta:(p=t.meta)!==null&&p!==void 0?p:!0,messages:(g=t.messages)!==null&&g!==void 0?g:!0,inlineRefs:(v=t.inlineRefs)!==null&&v!==void 0?v:!0,schemaId:(x=t.schemaId)!==null&&x!==void 0?x:"$id",addUsedSchema:(b=t.addUsedSchema)!==null&&b!==void 0?b:!0,validateSchema:(S=t.validateSchema)!==null&&S!==void 0?S:!0,validateFormats:(E=t.validateFormats)!==null&&E!==void 0?E:!0,unicodeRegExp:(F=t.unicodeRegExp)!==null&&F!==void 0?F:!0,int32range:(ye=t.int32range)!==null&&ye!==void 0?ye:!0,uriResolver:ge}}var rs=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...dT(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new sT.ValueScope({scope:{},prefixes:cT,es5:r,lines:n}),this.logger=yT(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,oT.getRules)(),qg.call(this,uT,e,"NOT SUPPORTED"),qg.call(this,lT,e,"DEPRECATED","warn"),this._metaOpts=hT.call(this),e.formats&&fT.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&mT.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),pT.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=Zg;n==="id"&&(o={...Zg},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 m=this._addSchema(l,d);return m.validate||i.call(this,m)}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 Fg.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,ts.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=Lg.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new es.SchemaEnv({schema:{},schemaId:n});if(r=es.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=Lg.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,ts.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(vT.call(this,n,r),!r)return(0,ld.eachItem)(n,s=>ud.call(this,s)),this;bT.call(this,r);let o={...r,type:(0,Bi.getJSONTypes)(r.type),schemaType:(0,Bi.getJSONTypes)(r.schemaType)};return(0,ld.eachItem)(n,o.type.length===0?s=>ud.call(this,s,o):s=>o.type.forEach(i=>ud.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]=Vg(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,ts.normalizeId)(i||n);let u=ts.getSchemaRefs.call(this,e,n);return c=new es.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):es.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{es.compileSchema.call(this,e)}finally{this.opts=r}}};rs.ValidationError=nT.default;rs.MissingRefError=Fg.default;Ge.default=rs;function qg(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 Lg(t){return t=(0,ts.normalizeId)(t),this.schemas[t]||this.refs[t]}function pT(){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 fT(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function mT(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 hT(){let t={...this.opts};for(let e of aT)delete t[e];return t}var gT={log(){},warn(){},error(){}};function yT(t){if(t===!1)return gT;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 _T=/^[a-z_$][a-z0-9_$:-]*$/i;function vT(t,e){let{RULES:r}=this;if((0,ld.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!_T.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 ud(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,Bi.getJSONTypes)(e.type),schemaType:(0,Bi.getJSONTypes)(e.schemaType)}};e.before?xT.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 xT(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 bT(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=Vg(e)),t.validateSchema=this.compile(e,!0))}var wT={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Vg(t){return{anyOf:[t,wT]}}});var Wg=M(dd=>{"use strict";Object.defineProperty(dd,"__esModule",{value:!0});var $T={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};dd.default=$T});var Jg=M(hn=>{"use strict";Object.defineProperty(hn,"__esModule",{value:!0});hn.callRef=hn.getValidate=void 0;var kT=Xo(),Gg=zt(),ft=ee(),Gn=lr(),Bg=Ui(),Ki=fe(),ST={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=Bg.resolveRef.call(c,u,o,r);if(l===void 0)throw new kT.default(n.opts.uriResolver,o,r);if(l instanceof Bg.SchemaEnv)return m(l);return y(l);function d(){if(s===u)return Ji(t,i,s,s.$async);let f=e.scopeValue("root",{ref:u});return Ji(t,(0,ft._)`${f}.validate`,u,u.$async)}function m(f){let h=Kg(t,f);Ji(t,h,f,f.$async)}function y(f){let h=e.scopeValue("schema",a.code.source===!0?{ref:f,code:(0,ft.stringify)(f)}:{ref:f}),_=e.name("valid"),p=t.subschema({schema:f,dataTypes:[],schemaPath:ft.nil,topSchemaRef:h,errSchemaPath:r},_);t.mergeEvaluated(p),t.ok(_)}}};function Kg(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,ft._)`${r.scopeValue("wrapper",{ref:e})}.validate`}hn.getValidate=Kg;function Ji(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?Gn.default.this:ft.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,ft._)`await ${(0,Gg.callValidateCode)(t,e,u)}`),y(e),i||o.assign(f,!0)},h=>{o.if((0,ft._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),m(h),i||o.assign(f,!1)}),t.ok(f)}function d(){t.result((0,Gg.callValidateCode)(t,e,u),()=>y(e),()=>m(e))}function m(f){let h=(0,ft._)`${f}.errors`;o.assign(Gn.default.vErrors,(0,ft._)`${Gn.default.vErrors} === null ? ${h} : ${Gn.default.vErrors}.concat(${h})`),o.assign(Gn.default.errors,(0,ft._)`${Gn.default.vErrors}.length`)}function y(f){var h;if(!s.opts.unevaluated)return;let _=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(s.props!==!0)if(_&&!_.dynamicProps)_.props!==void 0&&(s.props=Ki.mergeEvaluated.props(o,_.props,s.props));else{let p=o.var("props",(0,ft._)`${f}.evaluated.props`);s.props=Ki.mergeEvaluated.props(o,p,s.props,ft.Name)}if(s.items!==!0)if(_&&!_.dynamicItems)_.items!==void 0&&(s.items=Ki.mergeEvaluated.items(o,_.items,s.items));else{let p=o.var("items",(0,ft._)`${f}.evaluated.items`);s.items=Ki.mergeEvaluated.items(o,p,s.items,ft.Name)}}}hn.callRef=Ji;hn.default=ST});var Qg=M(pd=>{"use strict";Object.defineProperty(pd,"__esModule",{value:!0});var TT=Wg(),zT=Jg(),ET=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",TT.default,zT.default];pd.default=ET});var Xg=M(fd=>{"use strict";Object.defineProperty(fd,"__esModule",{value:!0});var Qi=ee(),Ir=Qi.operators,Xi={maximum:{okStr:"<=",ok:Ir.LTE,fail:Ir.GT},minimum:{okStr:">=",ok:Ir.GTE,fail:Ir.LT},exclusiveMaximum:{okStr:"<",ok:Ir.LT,fail:Ir.GTE},exclusiveMinimum:{okStr:">",ok:Ir.GT,fail:Ir.LTE}},PT={message:({keyword:t,schemaCode:e})=>(0,Qi.str)`must be ${Xi[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Qi._)`{comparison: ${Xi[t].okStr}, limit: ${e}}`},IT={keyword:Object.keys(Xi),type:"number",schemaType:"number",$data:!0,error:PT,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Qi._)`${r} ${Xi[e].fail} ${n} || isNaN(${r})`)}};fd.default=IT});var Yg=M(md=>{"use strict";Object.defineProperty(md,"__esModule",{value:!0});var ns=ee(),RT={message:({schemaCode:t})=>(0,ns.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,ns._)`{multipleOf: ${t}}`},MT={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:RT,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,ns._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,ns._)`${i} !== parseInt(${i})`;t.fail$data((0,ns._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};md.default=MT});var ty=M(hd=>{"use strict";Object.defineProperty(hd,"__esModule",{value:!0});function ey(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}hd.default=ey;ey.code='require("ajv/dist/runtime/ucs2length").default'});var ry=M(gd=>{"use strict";Object.defineProperty(gd,"__esModule",{value:!0});var gn=ee(),OT=fe(),AT=ty(),CT={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,gn.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,gn._)`{limit: ${t}}`},NT={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:CT,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?gn.operators.GT:gn.operators.LT,i=o.opts.unicode===!1?(0,gn._)`${r}.length`:(0,gn._)`${(0,OT.useFunc)(t.gen,AT.default)}(${r})`;t.fail$data((0,gn._)`${i} ${s} ${n}`)}};gd.default=NT});var ny=M(yd=>{"use strict";Object.defineProperty(yd,"__esModule",{value:!0});var jT=zt(),Yi=ee(),ZT={message:({schemaCode:t})=>(0,Yi.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Yi._)`{pattern: ${t}}`},DT={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,Yi._)`(new RegExp(${o}, ${i}))`:(0,jT.usePattern)(t,n);t.fail$data((0,Yi._)`!${a}.test(${e})`)}};yd.default=DT});var oy=M(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});var os=ee(),qT={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,os.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,os._)`{limit: ${t}}`},LT={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:qT,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?os.operators.GT:os.operators.LT;t.fail$data((0,os._)`Object.keys(${r}).length ${o} ${n}`)}};_d.default=LT});var sy=M(vd=>{"use strict";Object.defineProperty(vd,"__esModule",{value:!0});var ss=zt(),is=ee(),FT=fe(),UT={message:({params:{missingProperty:t}})=>(0,is.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,is._)`{missingProperty: ${t}}`},VT={keyword:"required",type:"object",schemaType:"array",$data:!0,error:UT,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 y=t.parentSchema.properties,{definedProperties:f}=t.it;for(let h of r)if(y?.[h]===void 0&&!f.has(h)){let _=i.schemaEnv.baseId+i.errSchemaPath,p=`required property "${h}" is not defined at "${_}" (strictRequired)`;(0,FT.checkStrictMode)(i,p,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(is.nil,d);else for(let y of r)(0,ss.checkReportMissingProp)(t,y)}function l(){let y=e.let("missing");if(c||s){let f=e.let("valid",!0);t.block$data(f,()=>m(y,f)),t.ok(f)}else e.if((0,ss.checkMissingProp)(t,r,y)),(0,ss.reportMissingProp)(t,y),e.else()}function d(){e.forOf("prop",n,y=>{t.setParams({missingProperty:y}),e.if((0,ss.noPropertyInData)(e,o,y,a.ownProperties),()=>t.error())})}function m(y,f){t.setParams({missingProperty:y}),e.forOf(y,n,()=>{e.assign(f,(0,ss.propertyInData)(e,o,y,a.ownProperties)),e.if((0,is.not)(f),()=>{t.error(),e.break()})},is.nil)}}};vd.default=VT});var iy=M(xd=>{"use strict";Object.defineProperty(xd,"__esModule",{value:!0});var as=ee(),HT={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,as.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,as._)`{limit: ${t}}`},WT={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:HT,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?as.operators.GT:as.operators.LT;t.fail$data((0,as._)`${r}.length ${o} ${n}`)}};xd.default=WT});var ea=M(bd=>{"use strict";Object.defineProperty(bd,"__esModule",{value:!0});var ay=Hl();ay.code='require("ajv/dist/runtime/equal").default';bd.default=ay});var cy=M($d=>{"use strict";Object.defineProperty($d,"__esModule",{value:!0});var wd=Go(),Be=ee(),GT=fe(),BT=ea(),KT={message:({params:{i:t,j:e}})=>(0,Be.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Be._)`{i: ${t}, j: ${e}}`},JT={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:KT,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,wd.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,Be._)`${i} === false`),t.ok(c);function l(){let f=e.let("i",(0,Be._)`${r}.length`),h=e.let("j");t.setParams({i:f,j:h}),e.assign(c,!0),e.if((0,Be._)`${f} > 1`,()=>(d()?m:y)(f,h))}function d(){return u.length>0&&!u.some(f=>f==="object"||f==="array")}function m(f,h){let _=e.name("item"),p=(0,wd.checkDataTypes)(u,_,a.opts.strictNumbers,wd.DataType.Wrong),g=e.const("indices",(0,Be._)`{}`);e.for((0,Be._)`;${f}--;`,()=>{e.let(_,(0,Be._)`${r}[${f}]`),e.if(p,(0,Be._)`continue`),u.length>1&&e.if((0,Be._)`typeof ${_} == "string"`,(0,Be._)`${_} += "_"`),e.if((0,Be._)`typeof ${g}[${_}] == "number"`,()=>{e.assign(h,(0,Be._)`${g}[${_}]`),t.error(),e.assign(c,!1).break()}).code((0,Be._)`${g}[${_}] = ${f}`)})}function y(f,h){let _=(0,GT.useFunc)(e,BT.default),p=e.name("outer");e.label(p).for((0,Be._)`;${f}--;`,()=>e.for((0,Be._)`${h} = ${f}; ${h}--;`,()=>e.if((0,Be._)`${_}(${r}[${f}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(p)})))}}};$d.default=JT});var uy=M(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});var kd=ee(),QT=fe(),XT=ea(),YT={message:"must be equal to constant",params:({schemaCode:t})=>(0,kd._)`{allowedValue: ${t}}`},ez={keyword:"const",$data:!0,error:YT,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,kd._)`!${(0,QT.useFunc)(e,XT.default)}(${r}, ${o})`):t.fail((0,kd._)`${s} !== ${r}`)}};Sd.default=ez});var ly=M(Td=>{"use strict";Object.defineProperty(Td,"__esModule",{value:!0});var cs=ee(),tz=fe(),rz=ea(),nz={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,cs._)`{allowedValues: ${t}}`},oz={keyword:"enum",schemaType:"array",$data:!0,error:nz,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,tz.useFunc)(e,rz.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 y=e.const("vSchema",s);l=(0,cs.or)(...o.map((f,h)=>m(y,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,y=>e.if((0,cs._)`${u()}(${r}, ${y})`,()=>e.assign(l,!0).break()))}function m(y,f){let h=o[f];return typeof h=="object"&&h!==null?(0,cs._)`${u()}(${r}, ${y}[${f}])`:(0,cs._)`${r} === ${h}`}}};Td.default=oz});var dy=M(zd=>{"use strict";Object.defineProperty(zd,"__esModule",{value:!0});var sz=Xg(),iz=Yg(),az=ry(),cz=ny(),uz=oy(),lz=sy(),dz=iy(),pz=cy(),fz=uy(),mz=ly(),hz=[sz.default,iz.default,az.default,cz.default,uz.default,lz.default,dz.default,pz.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},fz.default,mz.default];zd.default=hz});var Pd=M(us=>{"use strict";Object.defineProperty(us,"__esModule",{value:!0});us.validateAdditionalItems=void 0;var yn=ee(),Ed=fe(),gz={message:({params:{len:t}})=>(0,yn.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,yn._)`{limit: ${t}}`},yz={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:gz,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,Ed.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}py(t,n)}};function py(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,yn._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,yn._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,Ed.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,yn._)`${a} <= ${e.length}`);r.if((0,yn.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:Ed.Type.Num},u),i.allErrors||r.if((0,yn.not)(u),()=>r.break())})}}us.validateAdditionalItems=py;us.default=yz});var Id=M(ls=>{"use strict";Object.defineProperty(ls,"__esModule",{value:!0});ls.validateTuple=void 0;var fy=ee(),ta=fe(),_z=zt(),vz={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return my(t,"additionalItems",e);r.items=!0,!(0,ta.alwaysValidSchema)(r,e)&&t.ok((0,_z.validateArray)(t))}};function my(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=ta.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,fy._)`${s}.length`);r.forEach((d,m)=>{(0,ta.alwaysValidSchema)(a,d)||(n.if((0,fy._)`${u} > ${m}`,()=>t.subschema({keyword:i,schemaProp:m,dataProp:m},c)),t.ok(c))});function l(d){let{opts:m,errSchemaPath:y}=a,f=r.length,h=f===d.minItems&&(f===d.maxItems||d[e]===!1);if(m.strictTuples&&!h){let _=`"${i}" is ${f}-tuple, but minItems or maxItems/${e} are not specified or different at path "${y}"`;(0,ta.checkStrictMode)(a,_,m.strictTuples)}}}ls.validateTuple=my;ls.default=vz});var hy=M(Rd=>{"use strict";Object.defineProperty(Rd,"__esModule",{value:!0});var xz=Id(),bz={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,xz.validateTuple)(t,"items")};Rd.default=bz});var yy=M(Md=>{"use strict";Object.defineProperty(Md,"__esModule",{value:!0});var gy=ee(),wz=fe(),$z=zt(),kz=Pd(),Sz={message:({params:{len:t}})=>(0,gy.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,gy._)`{limit: ${t}}`},Tz={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:Sz,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,wz.alwaysValidSchema)(n,e)&&(o?(0,kz.validateAdditionalItems)(t,o):t.ok((0,$z.validateArray)(t)))}};Md.default=Tz});var _y=M(Od=>{"use strict";Object.defineProperty(Od,"__esModule",{value:!0});var Pt=ee(),ra=fe(),zz={message:({params:{min:t,max:e}})=>e===void 0?(0,Pt.str)`must contain at least ${t} valid item(s)`:(0,Pt.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,Pt._)`{minContains: ${t}}`:(0,Pt._)`{minContains: ${t}, maxContains: ${e}}`},Ez={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:zz,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,Pt._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,ra.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,ra.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,ra.alwaysValidSchema)(s,r)){let h=(0,Pt._)`${l} >= ${i}`;a!==void 0&&(h=(0,Pt._)`${h} && ${l} <= ${a}`),t.pass(h);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?y(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,Pt._)`${o}.length > 0`,m)):(e.let(d,!1),m()),t.result(d,()=>t.reset());function m(){let h=e.name("_valid"),_=e.let("count",0);y(h,()=>e.if(h,()=>f(_)))}function y(h,_){e.forRange("i",0,l,p=>{t.subschema({keyword:"contains",dataProp:p,dataPropType:ra.Type.Num,compositeRule:!0},h),_()})}function f(h){e.code((0,Pt._)`${h}++`),a===void 0?e.if((0,Pt._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,Pt._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,Pt._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};Od.default=Ez});var by=M(Yt=>{"use strict";Object.defineProperty(Yt,"__esModule",{value:!0});Yt.validateSchemaDeps=Yt.validatePropertyDeps=Yt.error=void 0;var Ad=ee(),Pz=fe(),ds=zt();Yt.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,Ad.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,Ad._)`{property: ${t},
2
+ "use strict";var mv=Object.create;var Is=Object.defineProperty;var hv=Object.getOwnPropertyDescriptor;var gv=Object.getOwnPropertyNames;var yv=Object.getPrototypeOf,_v=Object.prototype.hasOwnProperty;var j=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Rs=(t,e)=>{for(var r in e)Is(t,r,{get:e[r],enumerable:!0})},Rp=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of gv(e))!_v.call(t,o)&&o!==r&&Is(t,o,{get:()=>e[o],enumerable:!(n=hv(e,o))||n.enumerable});return t};var mo=(t,e,r)=>(r=t!=null?mv(yv(t)):{},Rp(e||!t||!t.__esModule?Is(r,"default",{value:t,enumerable:!0}):r,t)),vv=t=>Rp(Is({},"__esModule",{value:!0}),t);var Ho=j(_e=>{"use strict";Object.defineProperty(_e,"__esModule",{value:!0});_e.regexpCode=_e.getEsmExportName=_e.getProperty=_e.safeStringify=_e.stringify=_e.strConcat=_e.addCodeArg=_e.str=_e._=_e.nil=_e._Code=_e.Name=_e.IDENTIFIER=_e._CodeOrName=void 0;var Uo=class{};_e._CodeOrName=Uo;_e.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var cn=class extends Uo{constructor(e){if(super(),!_e.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}}};_e.Name=cn;var zt=class extends Uo{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 cn&&(r[n.str]=(r[n.str]||0)+1),r),{})}};_e._Code=zt;_e.nil=new zt("");function zh(t,...e){let r=[t[0]],n=0;for(;n<e.length;)xl(r,e[n]),r.push(t[++n]);return new zt(r)}_e._=zh;var vl=new zt("+");function Eh(t,...e){let r=[Vo(t[0])],n=0;for(;n<e.length;)r.push(vl),xl(r,e[n]),r.push(vl,Vo(t[++n]));return vk(r),new zt(r)}_e.str=Eh;function xl(t,e){e instanceof zt?t.push(...e._items):e instanceof cn?t.push(e):t.push(wk(e))}_e.addCodeArg=xl;function vk(t){let e=1;for(;e<t.length-1;){if(t[e]===vl){let r=xk(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function xk(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof cn||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 cn))return`"${t}${e.slice(1)}`}function bk(t,e){return e.emptyStr()?t:t.emptyStr()?e:Eh`${t}${e}`}_e.strConcat=bk;function wk(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Vo(Array.isArray(t)?t.join(","):t)}function $k(t){return new zt(Vo(t))}_e.stringify=$k;function Vo(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}_e.safeStringify=Vo;function kk(t){return typeof t=="string"&&_e.IDENTIFIER.test(t)?new zt(`.${t}`):zh`[${t}]`}_e.getProperty=kk;function Sk(t){if(typeof t=="string"&&_e.IDENTIFIER.test(t))return new zt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}_e.getEsmExportName=Sk;function Tk(t){return new zt(t.toString())}_e.regexpCode=Tk});var $l=j(pt=>{"use strict";Object.defineProperty(pt,"__esModule",{value:!0});pt.ValueScope=pt.ValueScopeName=pt.Scope=pt.varKinds=pt.UsedValueState=void 0;var dt=Ho(),bl=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},Oi;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(Oi||(pt.UsedValueState=Oi={}));pt.varKinds={const:new dt.Name("const"),let:new dt.Name("let"),var:new dt.Name("var")};var Mi=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof dt.Name?e:this.name(e)}name(e){return new dt.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}}};pt.Scope=Mi;var Ci=class extends dt.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,dt._)`.${new dt.Name(r)}[${n}]`}};pt.ValueScopeName=Ci;var zk=(0,dt._)`\n`,wl=class extends Mi{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?zk:dt.nil}}get(){return this._scope}name(e){return new Ci(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,dt._)`${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=dt.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,Oi.Started);let l=r(u);if(l){let d=this.opts.es5?pt.varKinds.var:pt.varKinds.const;s=(0,dt._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,dt._)`${s}${l}${this.opts._n}`;else throw new bl(u);c.set(u,Oi.Completed)})}return s}};pt.ValueScope=wl});var re=j(oe=>{"use strict";Object.defineProperty(oe,"__esModule",{value:!0});oe.or=oe.and=oe.not=oe.CodeGen=oe.operators=oe.varKinds=oe.ValueScopeName=oe.ValueScope=oe.Scope=oe.Name=oe.regexpCode=oe.stringify=oe.getProperty=oe.nil=oe.strConcat=oe.str=oe._=void 0;var pe=Ho(),jt=$l(),Sr=Ho();Object.defineProperty(oe,"_",{enumerable:!0,get:function(){return Sr._}});Object.defineProperty(oe,"str",{enumerable:!0,get:function(){return Sr.str}});Object.defineProperty(oe,"strConcat",{enumerable:!0,get:function(){return Sr.strConcat}});Object.defineProperty(oe,"nil",{enumerable:!0,get:function(){return Sr.nil}});Object.defineProperty(oe,"getProperty",{enumerable:!0,get:function(){return Sr.getProperty}});Object.defineProperty(oe,"stringify",{enumerable:!0,get:function(){return Sr.stringify}});Object.defineProperty(oe,"regexpCode",{enumerable:!0,get:function(){return Sr.regexpCode}});Object.defineProperty(oe,"Name",{enumerable:!0,get:function(){return Sr.Name}});var Zi=$l();Object.defineProperty(oe,"Scope",{enumerable:!0,get:function(){return Zi.Scope}});Object.defineProperty(oe,"ValueScope",{enumerable:!0,get:function(){return Zi.ValueScope}});Object.defineProperty(oe,"ValueScopeName",{enumerable:!0,get:function(){return Zi.ValueScopeName}});Object.defineProperty(oe,"varKinds",{enumerable:!0,get:function(){return Zi.varKinds}});oe.operators={GT:new pe._Code(">"),GTE:new pe._Code(">="),LT:new pe._Code("<"),LTE:new pe._Code("<="),EQ:new pe._Code("==="),NEQ:new pe._Code("!=="),NOT:new pe._Code("!"),OR:new pe._Code("||"),AND:new pe._Code("&&"),ADD:new pe._Code("+")};var cr=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},kl=class extends cr{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?jt.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=Dn(this.rhs,e,r)),this}get names(){return this.rhs instanceof pe._CodeOrName?this.rhs.names:{}}},Ai=class extends cr{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 pe.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=Dn(this.rhs,e,r),this}get names(){let e=this.lhs instanceof pe.Name?{}:{...this.lhs.names};return ji(e,this.rhs)}},Sl=class extends Ai{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},Tl=class extends cr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},zl=class extends cr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},El=class extends cr{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},Pl=class extends cr{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=Dn(this.code,e,r),this}get names(){return this.code instanceof pe._CodeOrName?this.code.names:{}}},Wo=class extends cr{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)=>dn(e,r.names),{})}},ur=class extends Wo{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Il=class extends Wo{},Zn=class extends ur{};Zn.kind="else";var un=class t extends ur{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 Zn(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(Ph(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=Dn(this.condition,e,r),this}get names(){let e=super.names;return ji(e,this.condition),this.else&&dn(e,this.else.names),e}};un.kind="if";var ln=class extends ur{};ln.kind="for";var Rl=class extends ln{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=Dn(this.iteration,e,r),this}get names(){return dn(super.names,this.iteration.names)}},Ol=class extends ln{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?jt.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=ji(super.names,this.from);return ji(e,this.to)}},Ni=class extends ln{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=Dn(this.iterable,e,r),this}get names(){return dn(super.names,this.iterable.names)}},Go=class extends ur{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)}};Go.kind="func";var Bo=class extends Wo{render(e){return"return "+super.render(e)}};Bo.kind="return";var Ml=class extends ur{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&&dn(e,this.catch.names),this.finally&&dn(e,this.finally.names),e}},Jo=class extends ur{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Jo.kind="catch";var Ko=class extends ur{render(e){return"finally"+super.render(e)}};Ko.kind="finally";var Cl=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
3
+ `:""},this._extScope=e,this._scope=new jt.Scope({parent:e}),this._nodes=[new Il]}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 kl(e,s,n)),s}const(e,r,n){return this._def(jt.varKinds.const,e,r,n)}let(e,r,n){return this._def(jt.varKinds.let,e,r,n)}var(e,r,n){return this._def(jt.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new Ai(e,r,n))}add(e,r){return this._leafNode(new Sl(e,oe.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==pe.nil&&this._leafNode(new Pl(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,pe.addCodeArg)(r,o));return r.push("}"),new pe._Code(r)}if(e,r,n){if(this._blockNode(new un(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 un(e))}else(){return this._elseNode(new Zn)}endIf(){return this._endBlockNode(un,Zn)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new Rl(e),r)}forRange(e,r,n,o,s=this.opts.es5?jt.varKinds.var:jt.varKinds.let){let i=this._scope.toName(e);return this._for(new Ol(s,i,r,n),()=>o(i))}forOf(e,r,n,o=jt.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof pe.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,pe._)`${i}.length`,a=>{this.var(s,(0,pe._)`${i}[${a}]`),n(s)})}return this._for(new Ni("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?jt.varKinds.var:jt.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,pe._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new Ni("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(ln)}label(e){return this._leafNode(new Tl(e))}break(e){return this._leafNode(new zl(e))}return(e){let r=new Bo;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Bo)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new Ml;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new Jo(s),r(s)}return n&&(this._currNode=o.finally=new Ko,this.code(n)),this._endBlockNode(Jo,Ko)}throw(e){return this._leafNode(new El(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=pe.nil,n,o){return this._blockNode(new Go(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Go)}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 un))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}};oe.CodeGen=Cl;function dn(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function ji(t,e){return e instanceof pe._CodeOrName?dn(t,e.names):t}function Dn(t,e,r){if(t instanceof pe.Name)return n(t);if(!o(t))return t;return new pe._Code(t._items.reduce((s,i)=>(i instanceof pe.Name&&(i=n(i)),i instanceof pe._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 pe._Code&&s._items.some(i=>i instanceof pe.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 Ph(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,pe._)`!${Al(t)}`}oe.not=Ph;var Pk=Ih(oe.operators.AND);function Ik(...t){return t.reduce(Pk)}oe.and=Ik;var Rk=Ih(oe.operators.OR);function Ok(...t){return t.reduce(Rk)}oe.or=Ok;function Ih(t){return(e,r)=>e===pe.nil?r:r===pe.nil?e:(0,pe._)`${Al(e)} ${t} ${Al(r)}`}function Al(t){return t instanceof pe.Name?t:(0,pe._)`(${t})`}});var he=j(ie=>{"use strict";Object.defineProperty(ie,"__esModule",{value:!0});ie.checkStrictMode=ie.getErrorPath=ie.Type=ie.useFunc=ie.setEvaluated=ie.evaluatedPropsToName=ie.mergeEvaluated=ie.eachItem=ie.unescapeJsonPointer=ie.escapeJsonPointer=ie.escapeFragment=ie.unescapeFragment=ie.schemaRefOrVal=ie.schemaHasRulesButRef=ie.schemaHasRules=ie.checkUnknownRules=ie.alwaysValidSchema=ie.toHash=void 0;var ke=re(),Mk=Ho();function Ck(t){let e={};for(let r of t)e[r]=!0;return e}ie.toHash=Ck;function Ak(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(Mh(t,e),!Ch(e,t.self.RULES.all))}ie.alwaysValidSchema=Ak;function Mh(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]||jh(t,`unknown keyword: "${s}"`)}ie.checkUnknownRules=Mh;function Ch(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}ie.schemaHasRules=Ch;function Nk(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}ie.schemaHasRulesButRef=Nk;function jk({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,ke._)`${r}`}return(0,ke._)`${t}${e}${(0,ke.getProperty)(n)}`}ie.schemaRefOrVal=jk;function Zk(t){return Ah(decodeURIComponent(t))}ie.unescapeFragment=Zk;function Dk(t){return encodeURIComponent(jl(t))}ie.escapeFragment=Dk;function jl(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}ie.escapeJsonPointer=jl;function Ah(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}ie.unescapeJsonPointer=Ah;function qk(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}ie.eachItem=qk;function Rh({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof ke.Name?(s instanceof ke.Name?t(o,s,i):e(o,s,i),i):s instanceof ke.Name?(e(o,i,s),s):r(s,i);return a===ke.Name&&!(c instanceof ke.Name)?n(o,c):c}}ie.mergeEvaluated={props:Rh({mergeNames:(t,e,r)=>t.if((0,ke._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,ke._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,ke._)`${r} || {}`).code((0,ke._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,ke._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,ke._)`${r} || {}`),Zl(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:Nh}),items:Rh({mergeNames:(t,e,r)=>t.if((0,ke._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,ke._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,ke._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,ke._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function Nh(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,ke._)`{}`);return e!==void 0&&Zl(t,r,e),r}ie.evaluatedPropsToName=Nh;function Zl(t,e,r){Object.keys(r).forEach(n=>t.assign((0,ke._)`${e}${(0,ke.getProperty)(n)}`,!0))}ie.setEvaluated=Zl;var Oh={};function Lk(t,e){return t.scopeValue("func",{ref:e,code:Oh[e.code]||(Oh[e.code]=new Mk._Code(e.code))})}ie.useFunc=Lk;var Nl;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Nl||(ie.Type=Nl={}));function Fk(t,e,r){if(t instanceof ke.Name){let n=e===Nl.Num;return r?n?(0,ke._)`"[" + ${t} + "]"`:(0,ke._)`"['" + ${t} + "']"`:n?(0,ke._)`"/" + ${t}`:(0,ke._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,ke.getProperty)(t).toString():"/"+jl(t)}ie.getErrorPath=Fk;function jh(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}ie.checkStrictMode=jh});var lr=j(Dl=>{"use strict";Object.defineProperty(Dl,"__esModule",{value:!0});var Ye=re(),Uk={data:new Ye.Name("data"),valCxt:new Ye.Name("valCxt"),instancePath:new Ye.Name("instancePath"),parentData:new Ye.Name("parentData"),parentDataProperty:new Ye.Name("parentDataProperty"),rootData:new Ye.Name("rootData"),dynamicAnchors:new Ye.Name("dynamicAnchors"),vErrors:new Ye.Name("vErrors"),errors:new Ye.Name("errors"),this:new Ye.Name("this"),self:new Ye.Name("self"),scope:new Ye.Name("scope"),json:new Ye.Name("json"),jsonPos:new Ye.Name("jsonPos"),jsonLen:new Ye.Name("jsonLen"),jsonPart:new Ye.Name("jsonPart")};Dl.default=Uk});var Qo=j(et=>{"use strict";Object.defineProperty(et,"__esModule",{value:!0});et.extendErrors=et.resetErrorsCount=et.reportExtraError=et.reportError=et.keyword$DataError=et.keywordError=void 0;var ge=re(),Di=he(),ot=lr();et.keywordError={message:({keyword:t})=>(0,ge.str)`must pass "${t}" keyword validation`};et.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,ge.str)`"${t}" keyword must be ${e} ($data)`:(0,ge.str)`"${t}" keyword is invalid ($data)`};function Vk(t,e=et.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=qh(t,e,r);n??(i||a)?Zh(s,c):Dh(o,(0,ge._)`[${c}]`)}et.reportError=Vk;function Hk(t,e=et.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=qh(t,e,r);Zh(o,a),s||i||Dh(n,ot.default.vErrors)}et.reportExtraError=Hk;function Wk(t,e){t.assign(ot.default.errors,e),t.if((0,ge._)`${ot.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,ge._)`${ot.default.vErrors}.length`,e),()=>t.assign(ot.default.vErrors,null)))}et.resetErrorsCount=Wk;function Gk({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,ot.default.errors,a=>{t.const(i,(0,ge._)`${ot.default.vErrors}[${a}]`),t.if((0,ge._)`${i}.instancePath === undefined`,()=>t.assign((0,ge._)`${i}.instancePath`,(0,ge.strConcat)(ot.default.instancePath,s.errorPath))),t.assign((0,ge._)`${i}.schemaPath`,(0,ge.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,ge._)`${i}.schema`,r),t.assign((0,ge._)`${i}.data`,n))})}et.extendErrors=Gk;function Zh(t,e){let r=t.const("err",e);t.if((0,ge._)`${ot.default.vErrors} === null`,()=>t.assign(ot.default.vErrors,(0,ge._)`[${r}]`),(0,ge._)`${ot.default.vErrors}.push(${r})`),t.code((0,ge._)`${ot.default.errors}++`)}function Dh(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,ge._)`new ${t.ValidationError}(${e})`):(r.assign((0,ge._)`${n}.errors`,e),r.return(!1))}var pn={keyword:new ge.Name("keyword"),schemaPath:new ge.Name("schemaPath"),params:new ge.Name("params"),propertyName:new ge.Name("propertyName"),message:new ge.Name("message"),schema:new ge.Name("schema"),parentSchema:new ge.Name("parentSchema")};function qh(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,ge._)`{}`:Bk(t,e,r)}function Bk(t,e,r={}){let{gen:n,it:o}=t,s=[Jk(o,r),Kk(t,r)];return Qk(t,e,s),n.object(...s)}function Jk({errorPath:t},{instancePath:e}){let r=e?(0,ge.str)`${t}${(0,Di.getErrorPath)(e,Di.Type.Str)}`:t;return[ot.default.instancePath,(0,ge.strConcat)(ot.default.instancePath,r)]}function Kk({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,ge.str)`${e}/${t}`;return r&&(o=(0,ge.str)`${o}${(0,Di.getErrorPath)(r,Di.Type.Str)}`),[pn.schemaPath,o]}function Qk(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([pn.keyword,o],[pn.params,typeof e=="function"?e(t):e||(0,ge._)`{}`]),c.messages&&n.push([pn.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([pn.schema,i],[pn.parentSchema,(0,ge._)`${l}${d}`],[ot.default.data,s]),u&&n.push([pn.propertyName,u])}});var Fh=j(qn=>{"use strict";Object.defineProperty(qn,"__esModule",{value:!0});qn.boolOrEmptySchema=qn.topBoolOrEmptySchema=void 0;var Xk=Qo(),Yk=re(),e0=lr(),t0={message:"boolean schema is false"};function r0(t){let{gen:e,schema:r,validateName:n}=t;r===!1?Lh(t,!1):typeof r=="object"&&r.$async===!0?e.return(e0.default.data):(e.assign((0,Yk._)`${n}.errors`,null),e.return(!0))}qn.topBoolOrEmptySchema=r0;function n0(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),Lh(t)):r.var(e,!0)}qn.boolOrEmptySchema=n0;function Lh(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,Xk.reportError)(o,t0,void 0,e)}});var ql=j(Ln=>{"use strict";Object.defineProperty(Ln,"__esModule",{value:!0});Ln.getRules=Ln.isJSONType=void 0;var o0=["string","number","integer","boolean","null","object","array"],s0=new Set(o0);function i0(t){return typeof t=="string"&&s0.has(t)}Ln.isJSONType=i0;function a0(){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:{}}}Ln.getRules=a0});var Ll=j(Tr=>{"use strict";Object.defineProperty(Tr,"__esModule",{value:!0});Tr.shouldUseRule=Tr.shouldUseGroup=Tr.schemaHasRulesForType=void 0;function c0({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Uh(t,n)}Tr.schemaHasRulesForType=c0;function Uh(t,e){return e.rules.some(r=>Vh(t,r))}Tr.shouldUseGroup=Uh;function Vh(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))}Tr.shouldUseRule=Vh});var Xo=j(tt=>{"use strict";Object.defineProperty(tt,"__esModule",{value:!0});tt.reportTypeError=tt.checkDataTypes=tt.checkDataType=tt.coerceAndCheckDataType=tt.getJSONTypes=tt.getSchemaTypes=tt.DataType=void 0;var u0=ql(),l0=Ll(),d0=Qo(),ee=re(),Hh=he(),Fn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Fn||(tt.DataType=Fn={}));function p0(t){let e=Wh(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}tt.getSchemaTypes=p0;function Wh(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(u0.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}tt.getJSONTypes=Wh;function f0(t,e){let{gen:r,data:n,opts:o}=t,s=m0(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,l0.schemaHasRulesForType)(t,e[0]));if(i){let a=Ul(e,n,o.strictNumbers,Fn.Wrong);r.if(a,()=>{s.length?h0(t,e,s):Vl(t)})}return i}tt.coerceAndCheckDataType=f0;var Gh=new Set(["string","number","integer","boolean","null"]);function m0(t,e){return e?t.filter(r=>Gh.has(r)||e==="array"&&r==="array"):[]}function h0(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,ee._)`typeof ${o}`),a=n.let("coerced",(0,ee._)`undefined`);s.coerceTypes==="array"&&n.if((0,ee._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,ee._)`${o}[0]`).assign(i,(0,ee._)`typeof ${o}`).if(Ul(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,ee._)`${a} !== undefined`);for(let u of r)(Gh.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),Vl(t),n.endIf(),n.if((0,ee._)`${a} !== undefined`,()=>{n.assign(o,a),g0(t,a)});function c(u){switch(u){case"string":n.elseIf((0,ee._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,ee._)`"" + ${o}`).elseIf((0,ee._)`${o} === null`).assign(a,(0,ee._)`""`);return;case"number":n.elseIf((0,ee._)`${i} == "boolean" || ${o} === null
4
+ || (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,ee._)`+${o}`);return;case"integer":n.elseIf((0,ee._)`${i} === "boolean" || ${o} === null
5
+ || (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,ee._)`+${o}`);return;case"boolean":n.elseIf((0,ee._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,ee._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,ee._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,ee._)`${i} === "string" || ${i} === "number"
6
+ || ${i} === "boolean" || ${o} === null`).assign(a,(0,ee._)`[${o}]`)}}}function g0({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,ee._)`${e} !== undefined`,()=>t.assign((0,ee._)`${e}[${r}]`,n))}function Fl(t,e,r,n=Fn.Correct){let o=n===Fn.Correct?ee.operators.EQ:ee.operators.NEQ,s;switch(t){case"null":return(0,ee._)`${e} ${o} null`;case"array":s=(0,ee._)`Array.isArray(${e})`;break;case"object":s=(0,ee._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,ee._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,ee._)`typeof ${e} ${o} ${t}`}return n===Fn.Correct?s:(0,ee.not)(s);function i(a=ee.nil){return(0,ee.and)((0,ee._)`typeof ${e} == "number"`,a,r?(0,ee._)`isFinite(${e})`:ee.nil)}}tt.checkDataType=Fl;function Ul(t,e,r,n){if(t.length===1)return Fl(t[0],e,r,n);let o,s=(0,Hh.toHash)(t);if(s.array&&s.object){let i=(0,ee._)`typeof ${e} != "object"`;o=s.null?i:(0,ee._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=ee.nil;s.number&&delete s.integer;for(let i in s)o=(0,ee.and)(o,Fl(i,e,r,n));return o}tt.checkDataTypes=Ul;var y0={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,ee._)`{type: ${t}}`:(0,ee._)`{type: ${e}}`};function Vl(t){let e=_0(t);(0,d0.reportError)(e,y0)}tt.reportTypeError=Vl;function _0(t){let{gen:e,data:r,schema:n}=t,o=(0,Hh.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var Jh=j(qi=>{"use strict";Object.defineProperty(qi,"__esModule",{value:!0});qi.assignDefaults=void 0;var Un=re(),v0=he();function x0(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)Bh(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>Bh(t,s,o.default))}qi.assignDefaults=x0;function Bh(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,Un._)`${s}${(0,Un.getProperty)(e)}`;if(o){(0,v0.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,Un._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,Un._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,Un._)`${a} = ${(0,Un.stringify)(r)}`)}});var Et=j($e=>{"use strict";Object.defineProperty($e,"__esModule",{value:!0});$e.validateUnion=$e.validateArray=$e.usePattern=$e.callValidateCode=$e.schemaProperties=$e.allSchemaProperties=$e.noPropertyInData=$e.propertyInData=$e.isOwnProperty=$e.hasPropFunc=$e.reportMissingProp=$e.checkMissingProp=$e.checkReportMissingProp=void 0;var Ee=re(),Hl=he(),zr=lr(),b0=he();function w0(t,e){let{gen:r,data:n,it:o}=t;r.if(Gl(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Ee._)`${e}`},!0),t.error()})}$e.checkReportMissingProp=w0;function $0({gen:t,data:e,it:{opts:r}},n,o){return(0,Ee.or)(...n.map(s=>(0,Ee.and)(Gl(t,e,s,r.ownProperties),(0,Ee._)`${o} = ${s}`)))}$e.checkMissingProp=$0;function k0(t,e){t.setParams({missingProperty:e},!0),t.error()}$e.reportMissingProp=k0;function Kh(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Ee._)`Object.prototype.hasOwnProperty`})}$e.hasPropFunc=Kh;function Wl(t,e,r){return(0,Ee._)`${Kh(t)}.call(${e}, ${r})`}$e.isOwnProperty=Wl;function S0(t,e,r,n){let o=(0,Ee._)`${e}${(0,Ee.getProperty)(r)} !== undefined`;return n?(0,Ee._)`${o} && ${Wl(t,e,r)}`:o}$e.propertyInData=S0;function Gl(t,e,r,n){let o=(0,Ee._)`${e}${(0,Ee.getProperty)(r)} === undefined`;return n?(0,Ee.or)(o,(0,Ee.not)(Wl(t,e,r))):o}$e.noPropertyInData=Gl;function Qh(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}$e.allSchemaProperties=Qh;function T0(t,e){return Qh(e).filter(r=>!(0,Hl.alwaysValidSchema)(t,e[r]))}$e.schemaProperties=T0;function z0({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?(0,Ee._)`${t}, ${e}, ${n}${o}`:e,d=[[zr.default.instancePath,(0,Ee.strConcat)(zr.default.instancePath,s)],[zr.default.parentData,i.parentData],[zr.default.parentDataProperty,i.parentDataProperty],[zr.default.rootData,zr.default.rootData]];i.opts.dynamicRef&&d.push([zr.default.dynamicAnchors,zr.default.dynamicAnchors]);let f=(0,Ee._)`${l}, ${r.object(...d)}`;return c!==Ee.nil?(0,Ee._)`${a}.call(${c}, ${f})`:(0,Ee._)`${a}(${f})`}$e.callValidateCode=z0;var E0=(0,Ee._)`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,Ee._)`${o.code==="new RegExp"?E0:(0,b0.useFunc)(t,o)}(${r}, ${n})`})}$e.usePattern=P0;function I0(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,Ee._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:Hl.Type.Num},s),e.if((0,Ee.not)(s),a)})}}$e.validateArray=I0;function R0(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,Hl.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,Ee._)`${i} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,Ee.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}$e.validateUnion=R0});var eg=j(Kt=>{"use strict";Object.defineProperty(Kt,"__esModule",{value:!0});Kt.validateKeywordUsage=Kt.validSchemaType=Kt.funcKeywordCode=Kt.macroKeywordCode=void 0;var st=re(),fn=lr(),O0=Et(),M0=Qo();function C0(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=Yh(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:st.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}Kt.macroKeywordCode=C0;function A0(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;j0(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=Yh(n,o,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)g(),e.modifying&&Xh(t),h(()=>t.error());else{let _=e.async?y():p();e.modifying&&Xh(t),h(()=>N0(t,_))}}function y(){let _=n.let("ruleErrs",null);return n.try(()=>g((0,st._)`await `),$=>n.assign(d,!1).if((0,st._)`${$} instanceof ${c.ValidationError}`,()=>n.assign(_,(0,st._)`${$}.errors`),()=>n.throw($))),_}function p(){let _=(0,st._)`${l}.errors`;return n.assign(_,null),g(st.nil),_}function g(_=e.async?(0,st._)`await `:st.nil){let $=c.opts.passContext?fn.default.this:fn.default.self,S=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,st._)`${_}${(0,O0.callValidateCode)(t,l,$,S)}`,e.modifying)}function h(_){var $;n.if((0,st.not)(($=e.valid)!==null&&$!==void 0?$:d),_)}}Kt.funcKeywordCode=A0;function Xh(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,st._)`${n.parentData}[${n.parentDataProperty}]`))}function N0(t,e){let{gen:r}=t;r.if((0,st._)`Array.isArray(${e})`,()=>{r.assign(fn.default.vErrors,(0,st._)`${fn.default.vErrors} === null ? ${e} : ${fn.default.vErrors}.concat(${e})`).assign(fn.default.errors,(0,st._)`${fn.default.vErrors}.length`),(0,M0.extendErrors)(t)},()=>t.error())}function j0({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Yh(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,st.stringify)(r)})}function Z0(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")}Kt.validSchemaType=Z0;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)}}Kt.validateKeywordUsage=D0});var rg=j(Er=>{"use strict";Object.defineProperty(Er,"__esModule",{value:!0});Er.extendSubschemaMode=Er.extendSubschemaData=Er.getSubschema=void 0;var Qt=re(),tg=he();function q0(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,Qt._)`${t.schemaPath}${(0,Qt.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,Qt._)`${t.schemaPath}${(0,Qt.getProperty)(e)}${(0,Qt.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,tg.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')}Er.getSubschema=q0;function L0(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,f=a.let("data",(0,Qt._)`${e.data}${(0,Qt.getProperty)(r)}`,!0);c(f),t.errorPath=(0,Qt.str)`${u}${(0,tg.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,Qt._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof Qt.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]}}Er.extendSubschemaData=L0;function F0(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}Er.extendSubschemaMode=F0});var Bl=j((CA,ng)=>{"use strict";ng.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 sg=j((AA,og)=>{"use strict";var Pr=og.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(){};Li(e,n,o,t,"",t)};Pr.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Pr.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Pr.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Pr.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 Li(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 Pr.arrayKeywords)for(var f=0;f<d.length;f++)Li(t,e,r,d[f],o+"/"+l+"/"+f,s,o,l,n,f)}else if(l in Pr.propsKeywords){if(d&&typeof d=="object")for(var y in d)Li(t,e,r,d[y],o+"/"+l+"/"+U0(y),s,o,l,n,y)}else(l in Pr.keywords||t.allKeys&&!(l in Pr.skipKeywords))&&Li(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function U0(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Yo=j(ft=>{"use strict";Object.defineProperty(ft,"__esModule",{value:!0});ft.getSchemaRefs=ft.resolveUrl=ft.normalizeId=ft._getFullPath=ft.getFullPath=ft.inlineRef=void 0;var V0=he(),H0=Bl(),W0=sg(),G0=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function B0(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Jl(t):e?ig(t)<=e:!1}ft.inlineRef=B0;var J0=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Jl(t){for(let e in t){if(J0.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 ig(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!G0.has(r)&&(typeof t[r]=="object"&&(0,V0.eachItem)(t[r],n=>e+=ig(n)),e===1/0))return 1/0}return e}function ag(t,e="",r){r!==!1&&(e=Vn(e));let n=t.parse(e);return cg(t,n)}ft.getFullPath=ag;function cg(t,e){return t.serialize(e).split("#")[0]+"#"}ft._getFullPath=cg;var K0=/#\/?$/;function Vn(t){return t?t.replace(K0,""):""}ft.normalizeId=Vn;function Q0(t,e,r){return r=Vn(r),t.resolve(e,r)}ft.resolveUrl=Q0;var X0=/^[a-z_][-a-z0-9._]*$/i;function Y0(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Vn(t[r]||e),s={"":o},i=ag(n,o,!1),a={},c=new Set;return W0(t,{allKeys:!0},(d,f,y,p)=>{if(p===void 0)return;let g=i+f,h=s[p];typeof d[r]=="string"&&(h=_.call(this,d[r])),$.call(this,d.$anchor),$.call(this,d.$dynamicAnchor),s[f]=h;function _(S){let m=this.opts.uriResolver.resolve;if(S=Vn(h?m(h,S):S),c.has(S))throw l(S);c.add(S);let v=this.refs[S];return typeof v=="string"&&(v=this.refs[v]),typeof v=="object"?u(d,v.schema,S):S!==Vn(g)&&(S[0]==="#"?(u(d,a[S],S),a[S]=d):this.refs[S]=g),S}function $(S){if(typeof S=="string"){if(!X0.test(S))throw new Error(`invalid anchor "${S}"`);_.call(this,`#${S}`)}}}),a;function u(d,f,y){if(f!==void 0&&!H0(d,f))throw l(y)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}ft.getSchemaRefs=Y0});var rs=j(Ir=>{"use strict";Object.defineProperty(Ir,"__esModule",{value:!0});Ir.getData=Ir.KeywordCxt=Ir.validateFunctionCode=void 0;var fg=Fh(),ug=Xo(),Ql=Ll(),Fi=Xo(),eS=Jh(),ts=eg(),Kl=rg(),V=re(),X=lr(),tS=Yo(),dr=he(),es=Qo();function rS(t){if(gg(t)&&(yg(t),hg(t))){sS(t);return}mg(t,()=>(0,fg.topBoolOrEmptySchema)(t))}Ir.validateFunctionCode=rS;function mg({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,V._)`${X.default.data}, ${X.default.valCxt}`,n.$async,()=>{t.code((0,V._)`"use strict"; ${lg(r,o)}`),oS(t,o),t.code(s)}):t.func(e,(0,V._)`${X.default.data}, ${nS(o)}`,n.$async,()=>t.code(lg(r,o)).code(s))}function nS(t){return(0,V._)`{${X.default.instancePath}="", ${X.default.parentData}, ${X.default.parentDataProperty}, ${X.default.rootData}=${X.default.data}${t.dynamicRef?(0,V._)`, ${X.default.dynamicAnchors}={}`:V.nil}}={}`}function oS(t,e){t.if(X.default.valCxt,()=>{t.var(X.default.instancePath,(0,V._)`${X.default.valCxt}.${X.default.instancePath}`),t.var(X.default.parentData,(0,V._)`${X.default.valCxt}.${X.default.parentData}`),t.var(X.default.parentDataProperty,(0,V._)`${X.default.valCxt}.${X.default.parentDataProperty}`),t.var(X.default.rootData,(0,V._)`${X.default.valCxt}.${X.default.rootData}`),e.dynamicRef&&t.var(X.default.dynamicAnchors,(0,V._)`${X.default.valCxt}.${X.default.dynamicAnchors}`)},()=>{t.var(X.default.instancePath,(0,V._)`""`),t.var(X.default.parentData,(0,V._)`undefined`),t.var(X.default.parentDataProperty,(0,V._)`undefined`),t.var(X.default.rootData,X.default.data),e.dynamicRef&&t.var(X.default.dynamicAnchors,(0,V._)`{}`)})}function sS(t){let{schema:e,opts:r,gen:n}=t;mg(t,()=>{r.$comment&&e.$comment&&vg(t),lS(t),n.let(X.default.vErrors,null),n.let(X.default.errors,0),r.unevaluated&&iS(t),_g(t),fS(t)})}function iS(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,V._)`${r}.evaluated`),e.if((0,V._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,V._)`${t.evaluated}.props`,(0,V._)`undefined`)),e.if((0,V._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,V._)`${t.evaluated}.items`,(0,V._)`undefined`))}function lg(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,V._)`/*# sourceURL=${r} */`:V.nil}function aS(t,e){if(gg(t)&&(yg(t),hg(t))){cS(t,e);return}(0,fg.boolOrEmptySchema)(t,e)}function hg({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 gg(t){return typeof t.schema!="boolean"}function cS(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&vg(t),dS(t),pS(t);let s=n.const("_errs",X.default.errors);_g(t,s),n.var(e,(0,V._)`${s} === ${X.default.errors}`)}function yg(t){(0,dr.checkUnknownRules)(t),uS(t)}function _g(t,e){if(t.opts.jtd)return dg(t,[],!1,e);let r=(0,ug.getSchemaTypes)(t.schema),n=(0,ug.coerceAndCheckDataType)(t,r);dg(t,r,!n,e)}function uS(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,dr.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function lS(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,dr.checkStrictMode)(t,"default is ignored in the schema root")}function dS(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,tS.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function pS(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function vg({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,V._)`${X.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,V.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,V._)`${X.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function fS(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,V._)`${X.default.errors} === 0`,()=>e.return(X.default.data),()=>e.throw((0,V._)`new ${o}(${X.default.vErrors})`)):(e.assign((0,V._)`${n}.errors`,X.default.vErrors),s.unevaluated&&mS(t),e.return((0,V._)`${X.default.errors} === 0`))}function mS({gen:t,evaluated:e,props:r,items:n}){r instanceof V.Name&&t.assign((0,V._)`${e}.props`,r),n instanceof V.Name&&t.assign((0,V._)`${e}.items`,n)}function dg(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,dr.schemaHasRulesButRef)(s,l))){o.block(()=>bg(t,"$ref",l.all.$ref.definition));return}c.jtd||hS(t,e),o.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,Ql.shouldUseGroup)(s,f)&&(f.type?(o.if((0,Fi.checkDataType)(f.type,i,c.strictNumbers)),pg(t,f),e.length===1&&e[0]===f.type&&r&&(o.else(),(0,Fi.reportTypeError)(t)),o.endIf()):pg(t,f),a||o.if((0,V._)`${X.default.errors} === ${n||0}`))}}function pg(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,eS.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Ql.shouldUseRule)(n,s)&&bg(t,s.keyword,s.definition,e.type)})}function hS(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(gS(t,e),t.opts.allowUnionTypes||yS(t,e),_S(t,t.dataTypes))}function gS(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{xg(t.dataTypes,r)||Xl(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),xS(t,e)}}function yS(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Xl(t,"use allowUnionTypes to allow union type keyword")}function _S(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Ql.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>vS(e,i))&&Xl(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function vS(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function xg(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function xS(t,e){let r=[];for(let n of t.dataTypes)xg(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Xl(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,dr.checkStrictMode)(t,e,t.opts.strictTypes)}var Ui=class{constructor(e,r,n){if((0,ts.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,dr.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",wg(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,ts.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",X.default.errors))}result(e,r,n){this.failResult((0,V.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,V.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,V._)`${r} !== undefined && (${(0,V.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?es.reportExtraError:es.reportError)(this,this.def.error,r)}$dataError(){(0,es.reportError)(this,this.def.$dataError||es.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,es.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=V.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=V.nil,r=V.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,V.or)((0,V._)`${o} === undefined`,r)),e!==V.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==V.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,V.or)(i(),a());function i(){if(n.length){if(!(r instanceof V.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,V._)`${(0,Fi.checkDataTypes)(c,r,s.opts.strictNumbers,Fi.DataType.Wrong)}`}return V.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,V._)`!${c}(${r})`}return V.nil}}subschema(e,r){let n=(0,Kl.getSubschema)(this.it,e);(0,Kl.extendSubschemaData)(n,this.it,e),(0,Kl.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return aS(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=dr.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=dr.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,V.Name)),!0}};Ir.KeywordCxt=Ui;function bg(t,e,r,n){let o=new Ui(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,ts.funcKeywordCode)(o,r):"macro"in r?(0,ts.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,ts.funcKeywordCode)(o,r)}var bS=/^\/(?:[^~]|~0|~1)*$/,wS=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function wg(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return X.default.rootData;if(t[0]==="/"){if(!bS.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=X.default.rootData}else{let u=wS.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,V._)`${s}${(0,V.getProperty)((0,dr.unescapeJsonPointer)(u))}`,i=(0,V._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}Ir.getData=wg});var Vi=j(ed=>{"use strict";Object.defineProperty(ed,"__esModule",{value:!0});var Yl=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};ed.default=Yl});var ns=j(nd=>{"use strict";Object.defineProperty(nd,"__esModule",{value:!0});var td=Yo(),rd=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,td.resolveUrl)(e,r,n),this.missingSchema=(0,td.normalizeId)((0,td.getFullPath)(e,this.missingRef))}};nd.default=rd});var Wi=j(Pt=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:!0});Pt.resolveSchema=Pt.getCompilingSchema=Pt.resolveRef=Pt.compileSchema=Pt.SchemaEnv=void 0;var Zt=re(),$S=Vi(),mn=lr(),Dt=Yo(),$g=he(),kS=rs(),Hn=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,Dt.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};Pt.SchemaEnv=Hn;function sd(t){let e=kg.call(this,t);if(e)return e;let r=(0,Dt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new Zt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:$S.default,code:(0,Zt._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:mn.default.data,parentData:mn.default.parentData,parentDataProperty:mn.default.parentDataProperty,dataNames:[mn.default.data],dataPathArr:[Zt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Zt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Zt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Zt._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,kS.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(mn.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let y=new Function(`${mn.default.self}`,`${mn.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:y}),y.errors=null,y.schema=t.schema,y.schemaEnv=t,t.$async&&(y.$async=!0),this.opts.code.source===!0&&(y.source={validateName:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:p,items:g}=u;y.evaluated={props:p instanceof Zt.Name?void 0:p,items:g instanceof Zt.Name?void 0:g,dynamicProps:p instanceof Zt.Name,dynamicItems:g instanceof Zt.Name},y.source&&(y.source.evaluated=(0,Zt.stringify)(y.evaluated))}return t.validate=y,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)}}Pt.compileSchema=sd;function SS(t,e,r){var n;r=(0,Dt.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 Hn({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=TS.call(this,s)}Pt.resolveRef=SS;function TS(t){return(0,Dt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:sd.call(this,t)}function kg(t){for(let e of this._compilations)if(zS(e,t))return e}Pt.getCompilingSchema=kg;function zS(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]||Hi.call(this,t,e)}function Hi(t,e){let r=this.opts.uriResolver.parse(e),n=(0,Dt._getFullPath)(this.opts.uriResolver,r),o=(0,Dt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return od.call(this,r,t);let s=(0,Dt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Hi.call(this,t,i);return typeof a?.schema!="object"?void 0:od.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||sd.call(this,i),s===(0,Dt.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,Dt.resolveUrl)(this.opts.uriResolver,o,u)),new Hn({schema:a,schemaId:c,root:t,baseId:o})}return od.call(this,r,i)}}Pt.resolveSchema=Hi;var PS=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function od(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,$g.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!PS.has(a)&&u&&(e=(0,Dt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,$g.schemaHasRulesButRef)(r,this.RULES)){let a=(0,Dt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=Hi.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new Hn({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var Sg=j((LA,IS)=>{IS.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 ad=j((FA,Pg)=>{"use strict";var RS=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),zg=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 id(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 Tg(t){return t.length=0,!0}function MS(t,e,r){if(t.length){let n=id(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function CS(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=MS;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=Tg}else{o.push(u);continue}}return o.length&&(a===Tg?r.zone=o.join(""):i?n.push(o.join("")):n.push(id(o))),r.address=n.join(""),r}function Eg(t){if(AS(t,":")<2)return{host:t,isIPV6:!1};let e=CS(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 NS(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 jS(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 ZS(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!zg(r)){let n=Eg(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}Pg.exports={nonSimpleDomain:OS,recomposeAuthority:ZS,normalizeComponentEncoding:jS,removeDotSegments:NS,isIPv4:zg,isUUID:RS,normalizeIPv6:Eg,stringArrayToHexStripped:id}});var Cg=j((UA,Mg)=>{"use strict";var{isUUID:DS}=ad(),qS=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,LS=["http","https","ws","wss","urn","urn:uuid"];function FS(t){return LS.indexOf(t)!==-1}function cd(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 Ig(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function Rg(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 US(t){return t.secure=cd(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function VS(t){if((t.port===(cd(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 HS(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(qS);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=ud(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function WS(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=ud(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 GS(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 BS(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Og={scheme:"http",domainHost:!0,parse:Ig,serialize:Rg},JS={scheme:"https",domainHost:Og.domainHost,parse:Ig,serialize:Rg},Gi={scheme:"ws",domainHost:!0,parse:US,serialize:VS},KS={scheme:"wss",domainHost:Gi.domainHost,parse:Gi.parse,serialize:Gi.serialize},QS={scheme:"urn",parse:HS,serialize:WS,skipNormalize:!0},XS={scheme:"urn:uuid",parse:GS,serialize:BS,skipNormalize:!0},Bi={http:Og,https:JS,ws:Gi,wss:KS,urn:QS,"urn:uuid":XS};Object.setPrototypeOf(Bi,null);function ud(t){return t&&(Bi[t]||Bi[t.toLowerCase()])||void 0}Mg.exports={wsIsSecure:cd,SCHEMES:Bi,isValidSchemeName:FS,getSchemeHandler:ud}});var jg=j((VA,Ki)=>{"use strict";var{normalizeIPv6:YS,removeDotSegments:os,recomposeAuthority:eT,normalizeComponentEncoding:Ji,isIPv4:tT,nonSimpleDomain:rT}=ad(),{SCHEMES:nT,getSchemeHandler:Ag}=Cg();function oT(t,e){return typeof t=="string"?t=Xt(pr(t,e),e):typeof t=="object"&&(t=pr(Xt(t,e),e)),t}function sT(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=Ng(pr(t,n),pr(e,n),n,!0);return n.skipEscape=!0,Xt(o,n)}function Ng(t,e,r,n){let o={};return n||(t=pr(Xt(t,r),r),e=pr(Xt(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=os(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=os(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=os(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=os(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 iT(t,e,r){return typeof t=="string"?(t=unescape(t),t=Xt(Ji(pr(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Xt(Ji(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Xt(Ji(pr(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Xt(Ji(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function Xt(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=Ag(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=eT(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=os(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 aT=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function pr(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(aT);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(tT(n.host)===!1){let c=YS(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=Ag(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&rT(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 ld={SCHEMES:nT,normalize:oT,resolve:sT,resolveComponent:Ng,equal:iT,serialize:Xt,parse:pr};Ki.exports=ld;Ki.exports.default=ld;Ki.exports.fastUri=ld});var Dg=j(dd=>{"use strict";Object.defineProperty(dd,"__esModule",{value:!0});var Zg=jg();Zg.code='require("ajv/dist/runtime/uri").default';dd.default=Zg});var Gg=j(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 cT=rs();Object.defineProperty(Je,"KeywordCxt",{enumerable:!0,get:function(){return cT.KeywordCxt}});var Wn=re();Object.defineProperty(Je,"_",{enumerable:!0,get:function(){return Wn._}});Object.defineProperty(Je,"str",{enumerable:!0,get:function(){return Wn.str}});Object.defineProperty(Je,"stringify",{enumerable:!0,get:function(){return Wn.stringify}});Object.defineProperty(Je,"nil",{enumerable:!0,get:function(){return Wn.nil}});Object.defineProperty(Je,"Name",{enumerable:!0,get:function(){return Wn.Name}});Object.defineProperty(Je,"CodeGen",{enumerable:!0,get:function(){return Wn.CodeGen}});var uT=Vi(),Vg=ns(),lT=ql(),ss=Wi(),dT=re(),is=Yo(),Qi=Xo(),fd=he(),qg=Sg(),pT=Dg(),Hg=(t,e)=>new RegExp(t,e);Hg.code="new RegExp";var fT=["removeAdditional","useDefaults","coerceTypes"],mT=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),hT={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."},gT={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Lg=200;function yT(t){var e,r,n,o,s,i,a,c,u,l,d,f,y,p,g,h,_,$,S,m,v,k,T,z,R;let E=t.strict,C=(e=t.code)===null||e===void 0?void 0:e.optimize,ye=C===!0||C===void 0?1:C||0,ve=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Hg,Ae=(o=t.uriResolver)!==null&&o!==void 0?o:pT.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:E)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:E)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:E)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:E)!==null&&f!==void 0?f:"log",strictRequired:(p=(y=t.strictRequired)!==null&&y!==void 0?y:E)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:ye,regExp:ve}:{optimize:ye,regExp:ve},loopRequired:(g=t.loopRequired)!==null&&g!==void 0?g:Lg,loopEnum:(h=t.loopEnum)!==null&&h!==void 0?h:Lg,meta:(_=t.meta)!==null&&_!==void 0?_:!0,messages:($=t.messages)!==null&&$!==void 0?$:!0,inlineRefs:(S=t.inlineRefs)!==null&&S!==void 0?S:!0,schemaId:(m=t.schemaId)!==null&&m!==void 0?m:"$id",addUsedSchema:(v=t.addUsedSchema)!==null&&v!==void 0?v:!0,validateSchema:(k=t.validateSchema)!==null&&k!==void 0?k:!0,validateFormats:(T=t.validateFormats)!==null&&T!==void 0?T:!0,unicodeRegExp:(z=t.unicodeRegExp)!==null&&z!==void 0?z:!0,int32range:(R=t.int32range)!==null&&R!==void 0?R:!0,uriResolver:Ae}}var as=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...yT(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new dT.ValueScope({scope:{},prefixes:mT,es5:r,lines:n}),this.logger=$T(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,lT.getRules)(),Fg.call(this,hT,e,"NOT SUPPORTED"),Fg.call(this,gT,e,"DEPRECATED","warn"),this._metaOpts=bT.call(this),e.formats&&vT.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&xT.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),_T.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=qg;n==="id"&&(o={...qg},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 f=this._addSchema(l,d);return f.validate||i.call(this,f)}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 Vg.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,is.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=Ug.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new ss.SchemaEnv({schema:{},schemaId:n});if(r=ss.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=Ug.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,is.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(ST.call(this,n,r),!r)return(0,fd.eachItem)(n,s=>pd.call(this,s)),this;zT.call(this,r);let o={...r,type:(0,Qi.getJSONTypes)(r.type),schemaType:(0,Qi.getJSONTypes)(r.schemaType)};return(0,fd.eachItem)(n,o.type.length===0?s=>pd.call(this,s,o):s=>o.type.forEach(i=>pd.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]=Wg(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,is.normalizeId)(i||n);let u=is.getSchemaRefs.call(this,e,n);return c=new ss.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):ss.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{ss.compileSchema.call(this,e)}finally{this.opts=r}}};as.ValidationError=uT.default;as.MissingRefError=Vg.default;Je.default=as;function Fg(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 Ug(t){return t=(0,is.normalizeId)(t),this.schemas[t]||this.refs[t]}function _T(){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 vT(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function xT(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 bT(){let t={...this.opts};for(let e of fT)delete t[e];return t}var wT={log(){},warn(){},error(){}};function $T(t){if(t===!1)return wT;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 kT=/^[a-z_$][a-z0-9_$:-]*$/i;function ST(t,e){let{RULES:r}=this;if((0,fd.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!kT.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 pd(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,Qi.getJSONTypes)(e.type),schemaType:(0,Qi.getJSONTypes)(e.schemaType)}};e.before?TT.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 TT(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 zT(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=Wg(e)),t.validateSchema=this.compile(e,!0))}var ET={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Wg(t){return{anyOf:[t,ET]}}});var Bg=j(md=>{"use strict";Object.defineProperty(md,"__esModule",{value:!0});var PT={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};md.default=PT});var Xg=j(hn=>{"use strict";Object.defineProperty(hn,"__esModule",{value:!0});hn.callRef=hn.getValidate=void 0;var IT=ns(),Jg=Et(),mt=re(),Gn=lr(),Kg=Wi(),Xi=he(),RT={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=Kg.resolveRef.call(c,u,o,r);if(l===void 0)throw new IT.default(n.opts.uriResolver,o,r);if(l instanceof Kg.SchemaEnv)return f(l);return y(l);function d(){if(s===u)return Yi(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return Yi(t,(0,mt._)`${p}.validate`,u,u.$async)}function f(p){let g=Qg(t,p);Yi(t,g,p,p.$async)}function y(p){let g=e.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,mt.stringify)(p)}:{ref:p}),h=e.name("valid"),_=t.subschema({schema:p,dataTypes:[],schemaPath:mt.nil,topSchemaRef:g,errSchemaPath:r},h);t.mergeEvaluated(_),t.ok(h)}}};function Qg(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,mt._)`${r.scopeValue("wrapper",{ref:e})}.validate`}hn.getValidate=Qg;function Yi(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?Gn.default.this:mt.nil;n?l():d();function l(){if(!a.$async)throw new Error("async schema referenced by sync schema");let p=o.let("valid");o.try(()=>{o.code((0,mt._)`await ${(0,Jg.callValidateCode)(t,e,u)}`),y(e),i||o.assign(p,!0)},g=>{o.if((0,mt._)`!(${g} instanceof ${s.ValidationError})`,()=>o.throw(g)),f(g),i||o.assign(p,!1)}),t.ok(p)}function d(){t.result((0,Jg.callValidateCode)(t,e,u),()=>y(e),()=>f(e))}function f(p){let g=(0,mt._)`${p}.errors`;o.assign(Gn.default.vErrors,(0,mt._)`${Gn.default.vErrors} === null ? ${g} : ${Gn.default.vErrors}.concat(${g})`),o.assign(Gn.default.errors,(0,mt._)`${Gn.default.vErrors}.length`)}function y(p){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=Xi.mergeEvaluated.props(o,h.props,s.props));else{let _=o.var("props",(0,mt._)`${p}.evaluated.props`);s.props=Xi.mergeEvaluated.props(o,_,s.props,mt.Name)}if(s.items!==!0)if(h&&!h.dynamicItems)h.items!==void 0&&(s.items=Xi.mergeEvaluated.items(o,h.items,s.items));else{let _=o.var("items",(0,mt._)`${p}.evaluated.items`);s.items=Xi.mergeEvaluated.items(o,_,s.items,mt.Name)}}}hn.callRef=Yi;hn.default=RT});var Yg=j(hd=>{"use strict";Object.defineProperty(hd,"__esModule",{value:!0});var OT=Bg(),MT=Xg(),CT=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",OT.default,MT.default];hd.default=CT});var ey=j(gd=>{"use strict";Object.defineProperty(gd,"__esModule",{value:!0});var ea=re(),Rr=ea.operators,ta={maximum:{okStr:"<=",ok:Rr.LTE,fail:Rr.GT},minimum:{okStr:">=",ok:Rr.GTE,fail:Rr.LT},exclusiveMaximum:{okStr:"<",ok:Rr.LT,fail:Rr.GTE},exclusiveMinimum:{okStr:">",ok:Rr.GT,fail:Rr.LTE}},AT={message:({keyword:t,schemaCode:e})=>(0,ea.str)`must be ${ta[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,ea._)`{comparison: ${ta[t].okStr}, limit: ${e}}`},NT={keyword:Object.keys(ta),type:"number",schemaType:"number",$data:!0,error:AT,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,ea._)`${r} ${ta[e].fail} ${n} || isNaN(${r})`)}};gd.default=NT});var ty=j(yd=>{"use strict";Object.defineProperty(yd,"__esModule",{value:!0});var cs=re(),jT={message:({schemaCode:t})=>(0,cs.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,cs._)`{multipleOf: ${t}}`},ZT={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:jT,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,cs._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,cs._)`${i} !== parseInt(${i})`;t.fail$data((0,cs._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};yd.default=ZT});var ny=j(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});function ry(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}_d.default=ry;ry.code='require("ajv/dist/runtime/ucs2length").default'});var oy=j(vd=>{"use strict";Object.defineProperty(vd,"__esModule",{value:!0});var gn=re(),DT=he(),qT=ny(),LT={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,gn.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,gn._)`{limit: ${t}}`},FT={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:LT,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?gn.operators.GT:gn.operators.LT,i=o.opts.unicode===!1?(0,gn._)`${r}.length`:(0,gn._)`${(0,DT.useFunc)(t.gen,qT.default)}(${r})`;t.fail$data((0,gn._)`${i} ${s} ${n}`)}};vd.default=FT});var sy=j(xd=>{"use strict";Object.defineProperty(xd,"__esModule",{value:!0});var UT=Et(),VT=he(),Bn=re(),HT={message:({schemaCode:t})=>(0,Bn.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Bn._)`{pattern: ${t}}`},WT={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:HT,code(t){let{gen:e,data:r,$data:n,schema:o,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=i.opts.code,u=c.code==="new RegExp"?(0,Bn._)`new RegExp`:(0,VT.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,Bn._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,Bn._)`!${l}`)}else{let c=(0,UT.usePattern)(t,o);t.fail$data((0,Bn._)`!${c}.test(${r})`)}}};xd.default=WT});var iy=j(bd=>{"use strict";Object.defineProperty(bd,"__esModule",{value:!0});var us=re(),GT={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,us.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,us._)`{limit: ${t}}`},BT={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:GT,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?us.operators.GT:us.operators.LT;t.fail$data((0,us._)`Object.keys(${r}).length ${o} ${n}`)}};bd.default=BT});var ay=j(wd=>{"use strict";Object.defineProperty(wd,"__esModule",{value:!0});var ls=Et(),ds=re(),JT=he(),KT={message:({params:{missingProperty:t}})=>(0,ds.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,ds._)`{missingProperty: ${t}}`},QT={keyword:"required",type:"object",schemaType:"array",$data:!0,error:KT,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 y=t.parentSchema.properties,{definedProperties:p}=t.it;for(let g of r)if(y?.[g]===void 0&&!p.has(g)){let h=i.schemaEnv.baseId+i.errSchemaPath,_=`required property "${g}" is not defined at "${h}" (strictRequired)`;(0,JT.checkStrictMode)(i,_,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(ds.nil,d);else for(let y of r)(0,ls.checkReportMissingProp)(t,y)}function l(){let y=e.let("missing");if(c||s){let p=e.let("valid",!0);t.block$data(p,()=>f(y,p)),t.ok(p)}else e.if((0,ls.checkMissingProp)(t,r,y)),(0,ls.reportMissingProp)(t,y),e.else()}function d(){e.forOf("prop",n,y=>{t.setParams({missingProperty:y}),e.if((0,ls.noPropertyInData)(e,o,y,a.ownProperties),()=>t.error())})}function f(y,p){t.setParams({missingProperty:y}),e.forOf(y,n,()=>{e.assign(p,(0,ls.propertyInData)(e,o,y,a.ownProperties)),e.if((0,ds.not)(p),()=>{t.error(),e.break()})},ds.nil)}}};wd.default=QT});var cy=j($d=>{"use strict";Object.defineProperty($d,"__esModule",{value:!0});var ps=re(),XT={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,ps.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,ps._)`{limit: ${t}}`},YT={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:XT,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?ps.operators.GT:ps.operators.LT;t.fail$data((0,ps._)`${r}.length ${o} ${n}`)}};$d.default=YT});var ra=j(kd=>{"use strict";Object.defineProperty(kd,"__esModule",{value:!0});var uy=Bl();uy.code='require("ajv/dist/runtime/equal").default';kd.default=uy});var ly=j(Td=>{"use strict";Object.defineProperty(Td,"__esModule",{value:!0});var Sd=Xo(),Ke=re(),ez=he(),tz=ra(),rz={message:({params:{i:t,j:e}})=>(0,Ke.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Ke._)`{i: ${t}, j: ${e}}`},nz={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:rz,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,Sd.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,Ke._)`${i} === false`),t.ok(c);function l(){let p=e.let("i",(0,Ke._)`${r}.length`),g=e.let("j");t.setParams({i:p,j:g}),e.assign(c,!0),e.if((0,Ke._)`${p} > 1`,()=>(d()?f:y)(p,g))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function f(p,g){let h=e.name("item"),_=(0,Sd.checkDataTypes)(u,h,a.opts.strictNumbers,Sd.DataType.Wrong),$=e.const("indices",(0,Ke._)`{}`);e.for((0,Ke._)`;${p}--;`,()=>{e.let(h,(0,Ke._)`${r}[${p}]`),e.if(_,(0,Ke._)`continue`),u.length>1&&e.if((0,Ke._)`typeof ${h} == "string"`,(0,Ke._)`${h} += "_"`),e.if((0,Ke._)`typeof ${$}[${h}] == "number"`,()=>{e.assign(g,(0,Ke._)`${$}[${h}]`),t.error(),e.assign(c,!1).break()}).code((0,Ke._)`${$}[${h}] = ${p}`)})}function y(p,g){let h=(0,ez.useFunc)(e,tz.default),_=e.name("outer");e.label(_).for((0,Ke._)`;${p}--;`,()=>e.for((0,Ke._)`${g} = ${p}; ${g}--;`,()=>e.if((0,Ke._)`${h}(${r}[${p}], ${r}[${g}])`,()=>{t.error(),e.assign(c,!1).break(_)})))}}};Td.default=nz});var dy=j(Ed=>{"use strict";Object.defineProperty(Ed,"__esModule",{value:!0});var zd=re(),oz=he(),sz=ra(),iz={message:"must be equal to constant",params:({schemaCode:t})=>(0,zd._)`{allowedValue: ${t}}`},az={keyword:"const",$data:!0,error:iz,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,zd._)`!${(0,oz.useFunc)(e,sz.default)}(${r}, ${o})`):t.fail((0,zd._)`${s} !== ${r}`)}};Ed.default=az});var py=j(Pd=>{"use strict";Object.defineProperty(Pd,"__esModule",{value:!0});var fs=re(),cz=he(),uz=ra(),lz={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,fs._)`{allowedValues: ${t}}`},dz={keyword:"enum",schemaType:"array",$data:!0,error:lz,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,cz.useFunc)(e,uz.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 y=e.const("vSchema",s);l=(0,fs.or)(...o.map((p,g)=>f(y,g)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,y=>e.if((0,fs._)`${u()}(${r}, ${y})`,()=>e.assign(l,!0).break()))}function f(y,p){let g=o[p];return typeof g=="object"&&g!==null?(0,fs._)`${u()}(${r}, ${y}[${p}])`:(0,fs._)`${r} === ${g}`}}};Pd.default=dz});var fy=j(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});var pz=ey(),fz=ty(),mz=oy(),hz=sy(),gz=iy(),yz=ay(),_z=cy(),vz=ly(),xz=dy(),bz=py(),wz=[pz.default,fz.default,mz.default,hz.default,gz.default,yz.default,_z.default,vz.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},xz.default,bz.default];Id.default=wz});var Od=j(ms=>{"use strict";Object.defineProperty(ms,"__esModule",{value:!0});ms.validateAdditionalItems=void 0;var yn=re(),Rd=he(),$z={message:({params:{len:t}})=>(0,yn.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,yn._)`{limit: ${t}}`},kz={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:$z,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,Rd.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}my(t,n)}};function my(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,yn._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,yn._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,Rd.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,yn._)`${a} <= ${e.length}`);r.if((0,yn.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:Rd.Type.Num},u),i.allErrors||r.if((0,yn.not)(u),()=>r.break())})}}ms.validateAdditionalItems=my;ms.default=kz});var Md=j(hs=>{"use strict";Object.defineProperty(hs,"__esModule",{value:!0});hs.validateTuple=void 0;var hy=re(),na=he(),Sz=Et(),Tz={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return gy(t,"additionalItems",e);r.items=!0,!(0,na.alwaysValidSchema)(r,e)&&t.ok((0,Sz.validateArray)(t))}};function gy(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=na.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,hy._)`${s}.length`);r.forEach((d,f)=>{(0,na.alwaysValidSchema)(a,d)||(n.if((0,hy._)`${u} > ${f}`,()=>t.subschema({keyword:i,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:y}=a,p=r.length,g=p===d.minItems&&(p===d.maxItems||d[e]===!1);if(f.strictTuples&&!g){let h=`"${i}" is ${p}-tuple, but minItems or maxItems/${e} are not specified or different at path "${y}"`;(0,na.checkStrictMode)(a,h,f.strictTuples)}}}hs.validateTuple=gy;hs.default=Tz});var yy=j(Cd=>{"use strict";Object.defineProperty(Cd,"__esModule",{value:!0});var zz=Md(),Ez={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,zz.validateTuple)(t,"items")};Cd.default=Ez});var vy=j(Ad=>{"use strict";Object.defineProperty(Ad,"__esModule",{value:!0});var _y=re(),Pz=he(),Iz=Et(),Rz=Od(),Oz={message:({params:{len:t}})=>(0,_y.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,_y._)`{limit: ${t}}`},Mz={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:Oz,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,Pz.alwaysValidSchema)(n,e)&&(o?(0,Rz.validateAdditionalItems)(t,o):t.ok((0,Iz.validateArray)(t)))}};Ad.default=Mz});var xy=j(Nd=>{"use strict";Object.defineProperty(Nd,"__esModule",{value:!0});var It=re(),oa=he(),Cz={message:({params:{min:t,max:e}})=>e===void 0?(0,It.str)`must contain at least ${t} valid item(s)`:(0,It.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,It._)`{minContains: ${t}}`:(0,It._)`{minContains: ${t}, maxContains: ${e}}`},Az={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:Cz,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,It._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,oa.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,oa.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,oa.alwaysValidSchema)(s,r)){let g=(0,It._)`${l} >= ${i}`;a!==void 0&&(g=(0,It._)`${g} && ${l} <= ${a}`),t.pass(g);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?y(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,It._)`${o}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let g=e.name("_valid"),h=e.let("count",0);y(g,()=>e.if(g,()=>p(h)))}function y(g,h){e.forRange("i",0,l,_=>{t.subschema({keyword:"contains",dataProp:_,dataPropType:oa.Type.Num,compositeRule:!0},g),h()})}function p(g){e.code((0,It._)`${g}++`),a===void 0?e.if((0,It._)`${g} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,It._)`${g} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,It._)`${g} >= ${i}`,()=>e.assign(d,!0)))}}};Nd.default=Az});var $y=j(Yt=>{"use strict";Object.defineProperty(Yt,"__esModule",{value:!0});Yt.validateSchemaDeps=Yt.validatePropertyDeps=Yt.error=void 0;var jd=re(),Nz=he(),gs=Et();Yt.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,jd.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,jd._)`{property: ${t},
7
7
  missingProperty: ${n},
8
8
  depsCount: ${e},
9
- deps: ${r}}`};var Iz={keyword:"dependencies",type:"object",schemaType:"object",error:Yt.error,code(t){let[e,r]=Rz(t);vy(t,e),xy(t,r)}};function Rz({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 vy(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,ds.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,ds.checkReportMissingProp)(t,u)}):(r.if((0,Ad._)`${c} && (${(0,ds.checkMissingProp)(t,a,s)})`),(0,ds.reportMissingProp)(t,s),r.else())}}Yt.validatePropertyDeps=vy;function xy(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,Pz.alwaysValidSchema)(s,e[a])||(r.if((0,ds.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))}Yt.validateSchemaDeps=xy;Yt.default=Iz});var $y=M(Cd=>{"use strict";Object.defineProperty(Cd,"__esModule",{value:!0});var wy=ee(),Mz=fe(),Oz={message:"property name must be valid",params:({params:t})=>(0,wy._)`{propertyName: ${t.propertyName}}`},Az={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:Oz,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,Mz.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,wy.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};Cd.default=Az});var jd=M(Nd=>{"use strict";Object.defineProperty(Nd,"__esModule",{value:!0});var na=zt(),Zt=ee(),Cz=lr(),oa=fe(),Nz={message:"must NOT have additional properties",params:({params:t})=>(0,Zt._)`{additionalProperty: ${t.additionalProperty}}`},jz={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:Nz,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,oa.alwaysValidSchema)(i,r))return;let u=(0,na.allSchemaProperties)(n.properties),l=(0,na.allSchemaProperties)(n.patternProperties);d(),t.ok((0,Zt._)`${s} === ${Cz.default.errors}`);function d(){e.forIn("key",o,_=>{!u.length&&!l.length?f(_):e.if(m(_),()=>f(_))})}function m(_){let p;if(u.length>8){let g=(0,oa.schemaRefOrVal)(i,n.properties,"properties");p=(0,na.isOwnProperty)(e,g,_)}else u.length?p=(0,Zt.or)(...u.map(g=>(0,Zt._)`${_} === ${g}`)):p=Zt.nil;return l.length&&(p=(0,Zt.or)(p,...l.map(g=>(0,Zt._)`${(0,na.usePattern)(t,g)}.test(${_})`))),(0,Zt.not)(p)}function y(_){e.code((0,Zt._)`delete ${o}[${_}]`)}function f(_){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){y(_);return}if(r===!1){t.setParams({additionalProperty:_}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,oa.alwaysValidSchema)(i,r)){let p=e.name("valid");c.removeAdditional==="failing"?(h(_,p,!1),e.if((0,Zt.not)(p),()=>{t.reset(),y(_)})):(h(_,p),a||e.if((0,Zt.not)(p),()=>e.break()))}}function h(_,p,g){let v={keyword:"additionalProperties",dataProp:_,dataPropType:oa.Type.Str};g===!1&&Object.assign(v,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(v,p)}}};Nd.default=jz});var Ty=M(Dd=>{"use strict";Object.defineProperty(Dd,"__esModule",{value:!0});var Zz=Qo(),ky=zt(),Zd=fe(),Sy=jd(),Dz={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&&Sy.default.code(new Zz.KeywordCxt(s,Sy.default,"additionalProperties"));let i=(0,ky.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=Zd.mergeEvaluated.props(e,(0,Zd.toHash)(i),s.props));let a=i.filter(d=>!(0,Zd.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,ky.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)}}};Dd.default=Dz});var Iy=M(qd=>{"use strict";Object.defineProperty(qd,"__esModule",{value:!0});var zy=zt(),sa=ee(),Ey=fe(),Py=fe(),qz={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,zy.allSchemaProperties)(r),c=a.filter(h=>(0,Ey.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 sa.Name)&&(s.props=(0,Py.evaluatedPropsToName)(e,s.props));let{props:d}=s;m();function m(){for(let h of a)u&&y(h),s.allErrors?f(h):(e.var(l,!0),f(h),e.if(l))}function y(h){for(let _ in u)new RegExp(h).test(_)&&(0,Ey.checkStrictMode)(s,`property ${_} matches pattern ${h} (use allowMatchingProperties)`)}function f(h){e.forIn("key",n,_=>{e.if((0,sa._)`${(0,zy.usePattern)(t,h)}.test(${_})`,()=>{let p=c.includes(h);p||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:_,dataPropType:Py.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,sa._)`${d}[${_}]`,!0):!p&&!s.allErrors&&e.if((0,sa.not)(l),()=>e.break())})})}}};qd.default=qz});var Ry=M(Ld=>{"use strict";Object.defineProperty(Ld,"__esModule",{value:!0});var Lz=fe(),Fz={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,Lz.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"}};Ld.default=Fz});var My=M(Fd=>{"use strict";Object.defineProperty(Fd,"__esModule",{value:!0});var Uz=zt(),Vz={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:Uz.validateUnion,error:{message:"must match a schema in anyOf"}};Fd.default=Vz});var Oy=M(Ud=>{"use strict";Object.defineProperty(Ud,"__esModule",{value:!0});var ia=ee(),Hz=fe(),Wz={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,ia._)`{passingSchemas: ${t.passing}}`},Gz={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:Wz,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 m;(0,Hz.alwaysValidSchema)(o,l)?e.var(c,!0):m=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,ia._)`${c} && ${i}`).assign(i,!1).assign(a,(0,ia._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),m&&t.mergeEvaluated(m,ia.Name)})})}}};Ud.default=Gz});var Ay=M(Vd=>{"use strict";Object.defineProperty(Vd,"__esModule",{value:!0});var Bz=fe(),Kz={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,Bz.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Vd.default=Kz});var jy=M(Hd=>{"use strict";Object.defineProperty(Hd,"__esModule",{value:!0});var aa=ee(),Ny=fe(),Jz={message:({params:t})=>(0,aa.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,aa._)`{failingKeyword: ${t.ifClause}}`},Qz={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:Jz,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,Ny.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=Cy(n,"then"),s=Cy(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,aa.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 m=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(m,i),d?e.assign(d,(0,aa._)`${l}`):t.setParams({ifClause:l})}}}};function Cy(t,e){let r=t.schema[e];return r!==void 0&&!(0,Ny.alwaysValidSchema)(t,r)}Hd.default=Qz});var Zy=M(Wd=>{"use strict";Object.defineProperty(Wd,"__esModule",{value:!0});var Xz=fe(),Yz={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,Xz.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Wd.default=Yz});var Dy=M(Gd=>{"use strict";Object.defineProperty(Gd,"__esModule",{value:!0});var eE=Pd(),tE=hy(),rE=Id(),nE=yy(),oE=_y(),sE=by(),iE=$y(),aE=jd(),cE=Ty(),uE=Iy(),lE=Ry(),dE=My(),pE=Oy(),fE=Ay(),mE=jy(),hE=Zy();function gE(t=!1){let e=[lE.default,dE.default,pE.default,fE.default,mE.default,hE.default,iE.default,aE.default,sE.default,cE.default,uE.default];return t?e.push(tE.default,nE.default):e.push(eE.default,rE.default),e.push(oE.default),e}Gd.default=gE});var qy=M(Bd=>{"use strict";Object.defineProperty(Bd,"__esModule",{value:!0});var Ne=ee(),yE={message:({schemaCode:t})=>(0,Ne.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,Ne._)`{format: ${t}}`},_E={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:yE,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?m():y();function m(){let f=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,Ne._)`${f}[${i}]`),_=r.let("fType"),p=r.let("format");r.if((0,Ne._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(_,(0,Ne._)`${h}.type || "string"`).assign(p,(0,Ne._)`${h}.validate`),()=>r.assign(_,(0,Ne._)`"string"`).assign(p,h)),t.fail$data((0,Ne.or)(g(),v()));function g(){return c.strictSchema===!1?Ne.nil:(0,Ne._)`${i} && !${p}`}function v(){let x=l.$async?(0,Ne._)`(${h}.async ? await ${p}(${n}) : ${p}(${n}))`:(0,Ne._)`${p}(${n})`,b=(0,Ne._)`(typeof ${p} == "function" ? ${x} : ${p}.test(${n}))`;return(0,Ne._)`${p} && ${p} !== true && ${_} === ${e} && !${b}`}}function y(){let f=d.formats[s];if(!f){g();return}if(f===!0)return;let[h,_,p]=v(f);h===e&&t.pass(x());function g(){if(c.strictSchema===!1){d.logger.warn(b());return}throw new Error(b());function b(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function v(b){let S=b instanceof RegExp?(0,Ne.regexpCode)(b):c.code.formats?(0,Ne._)`${c.code.formats}${(0,Ne.getProperty)(s)}`:void 0,E=r.scopeValue("formats",{key:s,ref:b,code:S});return typeof b=="object"&&!(b instanceof RegExp)?[b.type||"string",b.validate,(0,Ne._)`${E}.validate`]:["string",b,E]}function x(){if(typeof f=="object"&&!(f instanceof RegExp)&&f.async){if(!l.$async)throw new Error("async format in sync schema");return(0,Ne._)`await ${p}(${n})`}return typeof _=="function"?(0,Ne._)`${p}(${n})`:(0,Ne._)`${p}.test(${n})`}}}};Bd.default=_E});var Ly=M(Kd=>{"use strict";Object.defineProperty(Kd,"__esModule",{value:!0});var vE=qy(),xE=[vE.default];Kd.default=xE});var Fy=M(Bn=>{"use strict";Object.defineProperty(Bn,"__esModule",{value:!0});Bn.contentVocabulary=Bn.metadataVocabulary=void 0;Bn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Bn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Vy=M(Jd=>{"use strict";Object.defineProperty(Jd,"__esModule",{value:!0});var bE=Qg(),wE=dy(),$E=Dy(),kE=Ly(),Uy=Fy(),SE=[bE.default,wE.default,(0,$E.default)(),kE.default,Uy.metadataVocabulary,Uy.contentVocabulary];Jd.default=SE});var Wy=M(ca=>{"use strict";Object.defineProperty(ca,"__esModule",{value:!0});ca.DiscrError=void 0;var Hy;(function(t){t.Tag="tag",t.Mapping="mapping"})(Hy||(ca.DiscrError=Hy={}))});var By=M(Xd=>{"use strict";Object.defineProperty(Xd,"__esModule",{value:!0});var Kn=ee(),Qd=Wy(),Gy=Ui(),TE=Xo(),zE=fe(),EE={message:({params:{discrError:t,tagName:e}})=>t===Qd.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Kn._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},PE={keyword:"discriminator",type:"object",schemaType:"object",error:EE,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,Kn._)`${r}${(0,Kn.getProperty)(a)}`);e.if((0,Kn._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:Qd.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let y=m();e.if(!1);for(let f in y)e.elseIf((0,Kn._)`${u} === ${f}`),e.assign(c,d(y[f]));e.else(),t.error(!1,{discrError:Qd.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(y){let f=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:y},f);return t.mergeEvaluated(h,Kn.Name),f}function m(){var y;let f={},h=p(o),_=!0;for(let x=0;x<i.length;x++){let b=i[x];if(b?.$ref&&!(0,zE.schemaHasRulesButRef)(b,s.self.RULES)){let E=b.$ref;if(b=Gy.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,E),b instanceof Gy.SchemaEnv&&(b=b.schema),b===void 0)throw new TE.default(s.opts.uriResolver,s.baseId,E)}let S=(y=b?.properties)===null||y===void 0?void 0:y[a];if(typeof S!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);_=_&&(h||p(b)),g(S,x)}if(!_)throw new Error(`discriminator: "${a}" must be required`);return f;function p({required:x}){return Array.isArray(x)&&x.includes(a)}function g(x,b){if(x.const)v(x.const,b);else if(x.enum)for(let S of x.enum)v(S,b);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function v(x,b){if(typeof x!="string"||x in f)throw new Error(`discriminator: "${a}" values must be unique strings`);f[x]=b}}}};Xd.default=PE});var Ky=M((S1,IE)=>{IE.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 ep=M((ze,Yd)=>{"use strict";Object.defineProperty(ze,"__esModule",{value:!0});ze.MissingRefError=ze.ValidationError=ze.CodeGen=ze.Name=ze.nil=ze.stringify=ze.str=ze._=ze.KeywordCxt=ze.Ajv=void 0;var RE=Hg(),ME=Vy(),OE=By(),Jy=Ky(),AE=["/properties"],ua="http://json-schema.org/draft-07/schema",Jn=class extends RE.default{_addVocabularies(){super._addVocabularies(),ME.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(OE.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Jy,AE):Jy;this.addMetaSchema(e,ua,!1),this.refs["http://json-schema.org/schema"]=ua}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(ua)?ua:void 0)}};ze.Ajv=Jn;Yd.exports=ze=Jn;Yd.exports.Ajv=Jn;Object.defineProperty(ze,"__esModule",{value:!0});ze.default=Jn;var CE=Qo();Object.defineProperty(ze,"KeywordCxt",{enumerable:!0,get:function(){return CE.KeywordCxt}});var Qn=ee();Object.defineProperty(ze,"_",{enumerable:!0,get:function(){return Qn._}});Object.defineProperty(ze,"str",{enumerable:!0,get:function(){return Qn.str}});Object.defineProperty(ze,"stringify",{enumerable:!0,get:function(){return Qn.stringify}});Object.defineProperty(ze,"nil",{enumerable:!0,get:function(){return Qn.nil}});Object.defineProperty(ze,"Name",{enumerable:!0,get:function(){return Qn.Name}});Object.defineProperty(ze,"CodeGen",{enumerable:!0,get:function(){return Qn.CodeGen}});var NE=Li();Object.defineProperty(ze,"ValidationError",{enumerable:!0,get:function(){return NE.default}});var jE=Xo();Object.defineProperty(ze,"MissingRefError",{enumerable:!0,get:function(){return jE.default}})});var o_=M(tr=>{"use strict";Object.defineProperty(tr,"__esModule",{value:!0});tr.formatNames=tr.fastFormats=tr.fullFormats=void 0;function er(t,e){return{validate:t,compare:e}}tr.fullFormats={date:er(e_,op),time:er(rp(!0),sp),"date-time":er(Qy(!0),r_),"iso-time":er(rp(),t_),"iso-date-time":er(Qy(),n_),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:UE,"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:JE,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:VE,int32:{type:"number",validate:GE},int64:{type:"number",validate:BE},float:{type:"number",validate:Yy},double:{type:"number",validate:Yy},password:!0,binary:!0};tr.fastFormats={...tr.fullFormats,date:er(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,op),time:er(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,sp),"date-time":er(/^\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,r_),"iso-time":er(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,t_),"iso-date-time":er(/^\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,n_),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};tr.formatNames=Object.keys(tr.fullFormats);function ZE(t){return t%4===0&&(t%100!==0||t%400===0)}var DE=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,qE=[0,31,28,31,30,31,30,31,31,30,31,30,31];function e_(t){let e=DE.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:qE[n])}function op(t,e){if(t&&e)return t>e?1:t<e?-1:0}var tp=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function rp(t){return function(r){let n=tp.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,m=o-u*c-(d<0?1:0);return(m===23||m===-1)&&(d===59||d===-1)&&i<61}}function sp(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 t_(t,e){if(!(t&&e))return;let r=tp.exec(t),n=tp.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 np=/t|\s/i;function Qy(t){let e=rp(t);return function(n){let o=n.split(np);return o.length===2&&e_(o[0])&&e(o[1])}}function r_(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function n_(t,e){if(!(t&&e))return;let[r,n]=t.split(np),[o,s]=e.split(np),i=op(r,o);if(i!==void 0)return i||sp(n,s)}var LE=/\/|:/,FE=/^(?:[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 UE(t){return LE.test(t)&&FE.test(t)}var Xy=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function VE(t){return Xy.lastIndex=0,Xy.test(t)}var HE=-(2**31),WE=2**31-1;function GE(t){return Number.isInteger(t)&&t<=WE&&t>=HE}function BE(t){return Number.isInteger(t)}function Yy(){return!0}var KE=/[^\\]\\Z/;function JE(t){if(KE.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var s_=M(Xn=>{"use strict";Object.defineProperty(Xn,"__esModule",{value:!0});Xn.formatLimitDefinition=void 0;var QE=ep(),Dt=ee(),Rr=Dt.operators,la={formatMaximum:{okStr:"<=",ok:Rr.LTE,fail:Rr.GT},formatMinimum:{okStr:">=",ok:Rr.GTE,fail:Rr.LT},formatExclusiveMaximum:{okStr:"<",ok:Rr.LT,fail:Rr.GTE},formatExclusiveMinimum:{okStr:">",ok:Rr.GT,fail:Rr.LTE}},XE={message:({keyword:t,schemaCode:e})=>(0,Dt.str)`should be ${la[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Dt._)`{comparison: ${la[t].okStr}, limit: ${e}}`};Xn.formatLimitDefinition={keyword:Object.keys(la),type:"string",schemaType:"string",$data:!0,error:XE,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 m=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),y=e.const("fmt",(0,Dt._)`${m}[${c.schemaCode}]`);t.fail$data((0,Dt.or)((0,Dt._)`typeof ${y} != "object"`,(0,Dt._)`${y} instanceof RegExp`,(0,Dt._)`typeof ${y}.compare != "function"`,d(y)))}function l(){let m=c.schema,y=a.formats[m];if(!y||y===!0)return;if(typeof y!="object"||y instanceof RegExp||typeof y.compare!="function")throw new Error(`"${o}": format "${m}" does not define "compare" function`);let f=e.scopeValue("formats",{key:m,ref:y,code:i.code.formats?(0,Dt._)`${i.code.formats}${(0,Dt.getProperty)(m)}`:void 0});t.fail$data(d(f))}function d(m){return(0,Dt._)`${m}.compare(${r}, ${n}) ${la[o].fail} 0`}},dependencies:["format"]};var YE=t=>(t.addKeyword(Xn.formatLimitDefinition),t);Xn.default=YE});var u_=M((ps,c_)=>{"use strict";Object.defineProperty(ps,"__esModule",{value:!0});var Yn=o_(),eP=s_(),ip=ee(),i_=new ip.Name("fullFormats"),tP=new ip.Name("fastFormats"),ap=(t,e={keywords:!0})=>{if(Array.isArray(e))return a_(t,e,Yn.fullFormats,i_),t;let[r,n]=e.mode==="fast"?[Yn.fastFormats,tP]:[Yn.fullFormats,i_],o=e.formats||Yn.formatNames;return a_(t,o,r,n),e.keywords&&(0,eP.default)(t),t};ap.get=(t,e="full")=>{let n=(e==="fast"?Yn.fastFormats:Yn.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function a_(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,ip._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}c_.exports=ps=ap;Object.defineProperty(ps,"__esModule",{value:!0});ps.default=ap});var dI={};zs(dI,{log:()=>Ss});module.exports=fv(dI);var P={};zs(P,{BRAND:()=>Dv,DIRTY:()=>Zr,EMPTY_PATH:()=>yv,INVALID:()=>V,NEVER:()=>wx,OK:()=>Qe,ParseStatus:()=>Fe,Schema:()=>Y,ZodAny:()=>gr,ZodArray:()=>ir,ZodBigInt:()=>qr,ZodBoolean:()=>Lr,ZodBranded:()=>po,ZodCatch:()=>Xr,ZodDate:()=>Fr,ZodDefault:()=>Qr,ZodDiscriminatedUnion:()=>Is,ZodEffects:()=>wt,ZodEnum:()=>Kr,ZodError:()=>it,ZodFirstPartyTypeKind:()=>z,ZodFunction:()=>Ms,ZodIntersection:()=>Wr,ZodIssueCode:()=>T,ZodLazy:()=>Gr,ZodLiteral:()=>Br,ZodMap:()=>zn,ZodNaN:()=>Pn,ZodNativeEnum:()=>Jr,ZodNever:()=>Rt,ZodNull:()=>Vr,ZodNullable:()=>Bt,ZodNumber:()=>Dr,ZodObject:()=>ct,ZodOptional:()=>at,ZodParsedType:()=>O,ZodPipeline:()=>fo,ZodPromise:()=>yr,ZodReadonly:()=>Yr,ZodRecord:()=>Rs,ZodSchema:()=>Y,ZodSet:()=>En,ZodString:()=>hr,ZodSymbol:()=>Sn,ZodTransformer:()=>wt,ZodTuple:()=>Gt,ZodType:()=>Y,ZodUndefined:()=>Ur,ZodUnion:()=>Hr,ZodUnknown:()=>sr,ZodVoid:()=>Tn,addIssueToContext:()=>R,any:()=>Bv,array:()=>Xv,bigint:()=>Uv,boolean:()=>qp,coerce:()=>bx,custom:()=>jp,date:()=>Vv,datetimeRegex:()=>Cp,defaultErrorMap:()=>nr,discriminatedUnion:()=>tx,effect:()=>fx,enum:()=>lx,function:()=>ax,getErrorMap:()=>wn,getParsedType:()=>Wt,instanceof:()=>Lv,intersection:()=>rx,isAborted:()=>Es,isAsync:()=>$n,isDirty:()=>Ps,isValid:()=>mr,late:()=>qv,lazy:()=>cx,literal:()=>ux,makeIssue:()=>lo,map:()=>sx,nan:()=>Fv,nativeEnum:()=>dx,never:()=>Jv,null:()=>Gv,nullable:()=>hx,number:()=>Dp,object:()=>ja,objectUtil:()=>Aa,oboolean:()=>xx,onumber:()=>vx,optional:()=>mx,ostring:()=>_x,pipeline:()=>yx,preprocess:()=>gx,promise:()=>px,quotelessJson:()=>mv,record:()=>ox,set:()=>ix,setErrorMap:()=>gv,strictObject:()=>Yv,string:()=>Zp,symbol:()=>Hv,transformer:()=>fx,tuple:()=>nx,undefined:()=>Wv,union:()=>ex,unknown:()=>Kv,util:()=>se,void:()=>Qv});var se;(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})(se||(se={}));var Aa;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Aa||(Aa={}));var O=se.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Wt=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 T=se.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"]),mv=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),it=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,se.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()}};it.create=t=>new it(t);var hv=(t,e)=>{let r;switch(t.code){case T.invalid_type:t.received===O.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case T.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,se.jsonStringifyReplacer)}`;break;case T.unrecognized_keys:r=`Unrecognized key(s) in object: ${se.joinValues(t.keys,", ")}`;break;case T.invalid_union:r="Invalid input";break;case T.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${se.joinValues(t.options)}`;break;case T.invalid_enum_value:r=`Invalid enum value. Expected ${se.joinValues(t.options)}, received '${t.received}'`;break;case T.invalid_arguments:r="Invalid function arguments";break;case T.invalid_return_type:r="Invalid function return type";break;case T.invalid_date:r="Invalid date";break;case T.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}"`:se.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case T.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 T.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 T.custom:r="Invalid input";break;case T.invalid_intersection_types:r="Intersection results could not be merged";break;case T.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case T.not_finite:r="Number must be finite";break;default:r=e.defaultError,se.assertNever(t)}return{message:r}},nr=hv;var Ip=nr;function gv(t){Ip=t}function wn(){return Ip}var lo=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}},yv=[];function R(t,e){let r=wn(),n=lo({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===nr?void 0:nr].filter(o=>!!o)});t.common.issues.push(n)}var Fe=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 V;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 V;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}}},V=Object.freeze({status:"aborted"}),Zr=t=>({status:"dirty",value:t}),Qe=t=>({status:"valid",value:t}),Es=t=>t.status==="aborted",Ps=t=>t.status==="dirty",mr=t=>t.status==="valid",$n=t=>typeof Promise<"u"&&t instanceof Promise;var N;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(N||(N={}));var bt=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}},Rp=(t,e)=>{if(mr(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 it(t.common.issues);return this._error=r,this._error}}};function J(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 Y=class{get description(){return this._def.description}_getType(e){return Wt(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:Wt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Fe,ctx:{common:e.parent.common,data:e.data,parsedType:Wt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if($n(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:Wt(e)},o=this._parseSync({data:e,path:n.path,parent:n});return Rp(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Wt(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return mr(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=>mr(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:Wt(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await($n(o)?o:Promise.resolve(o));return Rp(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:T.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 wt({schema:this,typeName:z.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 at.create(this,this._def)}nullable(){return Bt.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return ir.create(this)}promise(){return yr.create(this,this._def)}or(e){return Hr.create([this,e],this._def)}and(e){return Wr.create(this,e,this._def)}transform(e){return new wt({...J(this._def),schema:this,typeName:z.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new Qr({...J(this._def),innerType:this,defaultValue:r,typeName:z.ZodDefault})}brand(){return new po({typeName:z.ZodBranded,type:this,...J(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Xr({...J(this._def),innerType:this,catchValue:r,typeName:z.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return fo.create(this,e)}readonly(){return Yr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},_v=/^c[^\s-]{8,}$/i,vv=/^[0-9a-z]+$/,xv=/^[0-9A-HJKMNP-TV-Z]{26}$/i,bv=/^[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,wv=/^[a-z0-9_-]{21}$/i,$v=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,kv=/^[-+]?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)?)??$/,Sv=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Tv="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Ca,zv=/^(?:(?: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])$/,Ev=/^(?:(?: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])$/,Pv=/^(([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]))$/,Iv=/^(([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])$/,Rv=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Mv=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Op="((\\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])))",Ov=new RegExp(`^${Op}$`);function Ap(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 Av(t){return new RegExp(`^${Ap(t)}$`)}function Cp(t){let e=`${Op}T${Ap(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 Cv(t,e){return!!((e==="v4"||!e)&&zv.test(t)||(e==="v6"||!e)&&Pv.test(t))}function Nv(t,e){if(!$v.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 jv(t,e){return!!((e==="v4"||!e)&&Ev.test(t)||(e==="v6"||!e)&&Iv.test(t))}var hr=class t extends Y{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==O.string){let s=this._getOrReturnCtx(e);return R(s,{code:T.invalid_type,expected:O.string,received:s.parsedType}),V}let n=new Fe,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),R(o,{code:T.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),R(o,{code:T.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?R(o,{code:T.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&R(o,{code:T.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")Sv.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"email",code:T.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")Ca||(Ca=new RegExp(Tv,"u")),Ca.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"emoji",code:T.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")bv.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"uuid",code:T.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")wv.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"nanoid",code:T.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")_v.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"cuid",code:T.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")vv.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"cuid2",code:T.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")xv.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"ulid",code:T.invalid_string,message:s.message}),n.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{o=this._getOrReturnCtx(e,o),R(o,{validation:"url",code:T.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),R(o,{validation:"regex",code:T.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),R(o,{code:T.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),R(o,{code:T.invalid_string,validation:{startsWith:s.value},message:s.message}),n.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(o=this._getOrReturnCtx(e,o),R(o,{code:T.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?Cp(s).test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{code:T.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?Ov.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{code:T.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?Av(s).test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{code:T.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?kv.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"duration",code:T.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?Cv(e.data,s.version)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"ip",code:T.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?Nv(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"jwt",code:T.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?jv(e.data,s.version)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"cidr",code:T.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?Rv.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"base64",code:T.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?Mv.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"base64url",code:T.invalid_string,message:s.message}),n.dirty()):se.assertNever(s);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(o=>e.test(o),{validation:r,code:T.invalid_string,...N.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...N.errToObj(e)})}url(e){return this._addCheck({kind:"url",...N.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...N.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...N.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...N.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...N.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...N.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...N.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...N.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...N.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...N.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...N.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...N.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,...N.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,...N.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...N.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...N.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...N.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...N.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...N.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...N.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...N.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...N.errToObj(r)})}nonempty(e){return this.min(1,N.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}};hr.create=t=>new hr({checks:[],typeName:z.ZodString,coerce:t?.coerce??!1,...J(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 Dr=class t extends Y{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 R(s,{code:T.invalid_type,expected:O.number,received:s.parsedType}),V}let n,o=new Fe;for(let s of this._def.checks)s.kind==="int"?se.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),R(n,{code:T.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),R(n,{code:T.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),R(n,{code:T.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),R(n,{code:T.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),R(n,{code:T.not_finite,message:s.message}),o.dirty()):se.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,N.toString(r))}gt(e,r){return this.setLimit("min",e,!1,N.toString(r))}lte(e,r){return this.setLimit("max",e,!0,N.toString(r))}lt(e,r){return this.setLimit("max",e,!1,N.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:N.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:N.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:N.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:N.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:N.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:N.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:N.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:N.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:N.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:N.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"&&se.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)}};Dr.create=t=>new Dr({checks:[],typeName:z.ZodNumber,coerce:t?.coerce||!1,...J(t)});var qr=class t extends Y{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 Fe;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),R(n,{code:T.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),R(n,{code:T.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),R(n,{code:T.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):se.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return R(r,{code:T.invalid_type,expected:O.bigint,received:r.parsedType}),V}gte(e,r){return this.setLimit("min",e,!0,N.toString(r))}gt(e,r){return this.setLimit("min",e,!1,N.toString(r))}lte(e,r){return this.setLimit("max",e,!0,N.toString(r))}lt(e,r){return this.setLimit("max",e,!1,N.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:N.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:N.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:N.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:N.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:N.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:N.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}};qr.create=t=>new qr({checks:[],typeName:z.ZodBigInt,coerce:t?.coerce??!1,...J(t)});var Lr=class extends Y{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==O.boolean){let n=this._getOrReturnCtx(e);return R(n,{code:T.invalid_type,expected:O.boolean,received:n.parsedType}),V}return Qe(e.data)}};Lr.create=t=>new Lr({typeName:z.ZodBoolean,coerce:t?.coerce||!1,...J(t)});var Fr=class t extends Y{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==O.date){let s=this._getOrReturnCtx(e);return R(s,{code:T.invalid_type,expected:O.date,received:s.parsedType}),V}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return R(s,{code:T.invalid_date}),V}let n=new Fe,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),R(o,{code:T.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),R(o,{code:T.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):se.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:N.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:N.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}};Fr.create=t=>new Fr({checks:[],coerce:t?.coerce||!1,typeName:z.ZodDate,...J(t)});var Sn=class extends Y{_parse(e){if(this._getType(e)!==O.symbol){let n=this._getOrReturnCtx(e);return R(n,{code:T.invalid_type,expected:O.symbol,received:n.parsedType}),V}return Qe(e.data)}};Sn.create=t=>new Sn({typeName:z.ZodSymbol,...J(t)});var Ur=class extends Y{_parse(e){if(this._getType(e)!==O.undefined){let n=this._getOrReturnCtx(e);return R(n,{code:T.invalid_type,expected:O.undefined,received:n.parsedType}),V}return Qe(e.data)}};Ur.create=t=>new Ur({typeName:z.ZodUndefined,...J(t)});var Vr=class extends Y{_parse(e){if(this._getType(e)!==O.null){let n=this._getOrReturnCtx(e);return R(n,{code:T.invalid_type,expected:O.null,received:n.parsedType}),V}return Qe(e.data)}};Vr.create=t=>new Vr({typeName:z.ZodNull,...J(t)});var gr=class extends Y{constructor(){super(...arguments),this._any=!0}_parse(e){return Qe(e.data)}};gr.create=t=>new gr({typeName:z.ZodAny,...J(t)});var sr=class extends Y{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Qe(e.data)}};sr.create=t=>new sr({typeName:z.ZodUnknown,...J(t)});var Rt=class extends Y{_parse(e){let r=this._getOrReturnCtx(e);return R(r,{code:T.invalid_type,expected:O.never,received:r.parsedType}),V}};Rt.create=t=>new Rt({typeName:z.ZodNever,...J(t)});var Tn=class extends Y{_parse(e){if(this._getType(e)!==O.undefined){let n=this._getOrReturnCtx(e);return R(n,{code:T.invalid_type,expected:O.void,received:n.parsedType}),V}return Qe(e.data)}};Tn.create=t=>new Tn({typeName:z.ZodVoid,...J(t)});var ir=class t extends Y{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==O.array)return R(r,{code:T.invalid_type,expected:O.array,received:r.parsedType}),V;if(o.exactLength!==null){let i=r.data.length>o.exactLength.value,a=r.data.length<o.exactLength.value;(i||a)&&(R(r,{code:i?T.too_big:T.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&&(R(r,{code:T.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&&(R(r,{code:T.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 bt(r,i,r.path,a)))).then(i=>Fe.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new bt(r,i,r.path,a)));return Fe.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:N.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:N.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:N.toString(r)}})}nonempty(e){return this.min(1,e)}};ir.create=(t,e)=>new ir({type:t,minLength:null,maxLength:null,exactLength:null,typeName:z.ZodArray,...J(e)});function kn(t){if(t instanceof ct){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=at.create(kn(n))}return new ct({...t._def,shape:()=>e})}else return t instanceof ir?new ir({...t._def,type:kn(t.element)}):t instanceof at?at.create(kn(t.unwrap())):t instanceof Bt?Bt.create(kn(t.unwrap())):t instanceof Gt?Gt.create(t.items.map(e=>kn(e))):t}var ct=class t extends Y{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=se.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 R(u,{code:T.invalid_type,expected:O.object,received:u.parsedType}),V}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof Rt&&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 bt(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof Rt){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&&(R(o,{code:T.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 bt(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,m=await l.value;u.push({key:d,value:m,alwaysSet:l.alwaysSet})}return u}).then(u=>Fe.mergeObjectSync(n,u)):Fe.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return N.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:N.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:z.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 se.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 se.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return kn(this)}partial(e){let r={};for(let n of se.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 se.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof at;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return Np(se.objectKeys(this.shape))}};ct.create=(t,e)=>new ct({shape:()=>t,unknownKeys:"strip",catchall:Rt.create(),typeName:z.ZodObject,...J(e)});ct.strictCreate=(t,e)=>new ct({shape:()=>t,unknownKeys:"strict",catchall:Rt.create(),typeName:z.ZodObject,...J(e)});ct.lazycreate=(t,e)=>new ct({shape:t,unknownKeys:"strip",catchall:Rt.create(),typeName:z.ZodObject,...J(e)});var Hr=class extends Y{_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 it(a.ctx.common.issues));return R(r,{code:T.invalid_union,unionErrors:i}),V}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 it(c));return R(r,{code:T.invalid_union,unionErrors:a}),V}}get options(){return this._def.options}};Hr.create=(t,e)=>new Hr({options:t,typeName:z.ZodUnion,...J(e)});var or=t=>t instanceof Gr?or(t.schema):t instanceof wt?or(t.innerType()):t instanceof Br?[t.value]:t instanceof Kr?t.options:t instanceof Jr?se.objectValues(t.enum):t instanceof Qr?or(t._def.innerType):t instanceof Ur?[void 0]:t instanceof Vr?[null]:t instanceof at?[void 0,...or(t.unwrap())]:t instanceof Bt?[null,...or(t.unwrap())]:t instanceof po||t instanceof Yr?or(t.unwrap()):t instanceof Xr?or(t._def.innerType):[],Is=class t extends Y{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.object)return R(r,{code:T.invalid_type,expected:O.object,received:r.parsedType}),V;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}):(R(r,{code:T.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),V)}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=or(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:z.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...J(n)})}};function Na(t,e){let r=Wt(t),n=Wt(e);if(t===e)return{valid:!0,data:t};if(r===O.object&&n===O.object){let o=se.objectKeys(e),s=se.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=Na(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=Na(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 Wr=class extends Y{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(Es(s)||Es(i))return V;let a=Na(s.value,i.value);return a.valid?((Ps(s)||Ps(i))&&r.dirty(),{status:r.value,value:a.data}):(R(n,{code:T.invalid_intersection_types}),V)};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}))}};Wr.create=(t,e,r)=>new Wr({left:t,right:e,typeName:z.ZodIntersection,...J(r)});var Gt=class t extends Y{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.array)return R(n,{code:T.invalid_type,expected:O.array,received:n.parsedType}),V;if(n.data.length<this._def.items.length)return R(n,{code:T.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),V;!this._def.rest&&n.data.length>this._def.items.length&&(R(n,{code:T.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 bt(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>Fe.mergeArray(r,i)):Fe.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};Gt.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Gt({items:t,typeName:z.ZodTuple,rest:null,...J(e)})};var Rs=class t extends Y{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 R(n,{code:T.invalid_type,expected:O.object,received:n.parsedType}),V;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in n.data)o.push({key:s._parse(new bt(n,a,n.path,a)),value:i._parse(new bt(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Fe.mergeObjectAsync(r,o):Fe.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof Y?new t({keyType:e,valueType:r,typeName:z.ZodRecord,...J(n)}):new t({keyType:hr.create(),valueType:e,typeName:z.ZodRecord,...J(r)})}},zn=class extends Y{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 R(n,{code:T.invalid_type,expected:O.map,received:n.parsedType}),V;let o=this._def.keyType,s=this._def.valueType,i=[...n.data.entries()].map(([a,c],u)=>({key:o._parse(new bt(n,a,n.path,[u,"key"])),value:s._parse(new bt(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 V;(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 V;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};zn.create=(t,e,r)=>new zn({valueType:e,keyType:t,typeName:z.ZodMap,...J(r)});var En=class t extends Y{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.set)return R(n,{code:T.invalid_type,expected:O.set,received:n.parsedType}),V;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(R(n,{code:T.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&&(R(n,{code:T.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 V;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 bt(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:N.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:N.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};En.create=(t,e)=>new En({valueType:t,minSize:null,maxSize:null,typeName:z.ZodSet,...J(e)});var Ms=class t extends Y{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.function)return R(r,{code:T.invalid_type,expected:O.function,received:r.parsedType}),V;function n(a,c){return lo({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,wn(),nr].filter(u=>!!u),issueData:{code:T.invalid_arguments,argumentsError:c}})}function o(a,c){return lo({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,wn(),nr].filter(u=>!!u),issueData:{code:T.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},i=r.data;if(this._def.returns instanceof yr){let a=this;return Qe(async function(...c){let u=new it([]),l=await a._def.args.parseAsync(c,s).catch(y=>{throw u.addIssue(n(c,y)),u}),d=await Reflect.apply(i,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(y=>{throw u.addIssue(o(d,y)),u})})}else{let a=this;return Qe(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new it([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new it([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:Gt.create(e).rest(sr.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||Gt.create([]).rest(sr.create()),returns:r||sr.create(),typeName:z.ZodFunction,...J(n)})}},Gr=class extends Y{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})}};Gr.create=(t,e)=>new Gr({getter:t,typeName:z.ZodLazy,...J(e)});var Br=class extends Y{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return R(r,{received:r.data,code:T.invalid_literal,expected:this._def.value}),V}return{status:"valid",value:e.data}}get value(){return this._def.value}};Br.create=(t,e)=>new Br({value:t,typeName:z.ZodLiteral,...J(e)});function Np(t,e){return new Kr({values:t,typeName:z.ZodEnum,...J(e)})}var Kr=class t extends Y{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return R(r,{expected:se.joinValues(n),received:r.parsedType,code:T.invalid_type}),V}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 R(r,{received:r.data,code:T.invalid_enum_value,options:n}),V}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})}};Kr.create=Np;var Jr=class extends Y{_parse(e){let r=se.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==O.string&&n.parsedType!==O.number){let o=se.objectValues(r);return R(n,{expected:se.joinValues(o),received:n.parsedType,code:T.invalid_type}),V}if(this._cache||(this._cache=new Set(se.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=se.objectValues(r);return R(n,{received:n.data,code:T.invalid_enum_value,options:o}),V}return Qe(e.data)}get enum(){return this._def.values}};Jr.create=(t,e)=>new Jr({values:t,typeName:z.ZodNativeEnum,...J(e)});var yr=class extends Y{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.promise&&r.common.async===!1)return R(r,{code:T.invalid_type,expected:O.promise,received:r.parsedType}),V;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})))}};yr.create=(t,e)=>new yr({type:t,typeName:z.ZodPromise,...J(e)});var wt=class extends Y{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===z.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=>{R(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 V;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?V:c.status==="dirty"?Zr(c.value):r.value==="dirty"?Zr(c.value):c});{if(r.value==="aborted")return V;let a=this._def.schema._parseSync({data:i,path:n.path,parent:n});return a.status==="aborted"?V:a.status==="dirty"?Zr(a.value):r.value==="dirty"?Zr(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"?V:(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"?V:(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(!mr(i))return V;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=>mr(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):V);se.assertNever(o)}};wt.create=(t,e,r)=>new wt({schema:t,typeName:z.ZodEffects,effect:e,...J(r)});wt.createWithPreprocess=(t,e,r)=>new wt({schema:e,effect:{type:"preprocess",transform:t},typeName:z.ZodEffects,...J(r)});var at=class extends Y{_parse(e){return this._getType(e)===O.undefined?Qe(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};at.create=(t,e)=>new at({innerType:t,typeName:z.ZodOptional,...J(e)});var Bt=class extends Y{_parse(e){return this._getType(e)===O.null?Qe(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Bt.create=(t,e)=>new Bt({innerType:t,typeName:z.ZodNullable,...J(e)});var Qr=class extends Y{_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}};Qr.create=(t,e)=>new Qr({innerType:t,typeName:z.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...J(e)});var Xr=class extends Y{_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 $n(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new it(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new it(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Xr.create=(t,e)=>new Xr({innerType:t,typeName:z.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...J(e)});var Pn=class extends Y{_parse(e){if(this._getType(e)!==O.nan){let n=this._getOrReturnCtx(e);return R(n,{code:T.invalid_type,expected:O.nan,received:n.parsedType}),V}return{status:"valid",value:e.data}}};Pn.create=t=>new Pn({typeName:z.ZodNaN,...J(t)});var Dv=Symbol("zod_brand"),po=class extends Y{_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}},fo=class t extends Y{_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"?V:s.status==="dirty"?(r.dirty(),Zr(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"?V: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:z.ZodPipeline})}},Yr=class extends Y{_parse(e){let r=this._def.innerType._parse(e),n=o=>(mr(o)&&(o.value=Object.freeze(o.value)),o);return $n(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};Yr.create=(t,e)=>new Yr({innerType:t,typeName:z.ZodReadonly,...J(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 jp(t,e={},r){return t?gr.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})}}):gr.create()}var qv={object:ct.lazycreate},z;(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"})(z||(z={}));var Lv=(t,e={message:`Input not instance of ${t.name}`})=>jp(r=>r instanceof t,e),Zp=hr.create,Dp=Dr.create,Fv=Pn.create,Uv=qr.create,qp=Lr.create,Vv=Fr.create,Hv=Sn.create,Wv=Ur.create,Gv=Vr.create,Bv=gr.create,Kv=sr.create,Jv=Rt.create,Qv=Tn.create,Xv=ir.create,ja=ct.create,Yv=ct.strictCreate,ex=Hr.create,tx=Is.create,rx=Wr.create,nx=Gt.create,ox=Rs.create,sx=zn.create,ix=En.create,ax=Ms.create,cx=Gr.create,ux=Br.create,lx=Kr.create,dx=Jr.create,px=yr.create,fx=wt.create,mx=at.create,hx=Bt.create,gx=wt.createWithPreprocess,yx=fo.create,_x=()=>Zp().optional(),vx=()=>Dp().optional(),xx=()=>qp().optional(),bx={string:t=>hr.create({...t,coerce:!0}),number:t=>Dr.create({...t,coerce:!0}),boolean:t=>Lr.create({...t,coerce:!0}),bigint:t=>qr.create({...t,coerce:!0}),date:t=>Fr.create({...t,coerce:!0})};var wx=V;var $x=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 kx=Symbol("zod_brand"),ar=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Os={};function gt(t){return t&&Object.assign(Os,t),Os}var ie={};zs(ie,{BIGINT_FORMAT_RANGES:()=>Fp,Class:()=>Da,NUMBER_FORMAT_RANGES:()=>Wa,aborted:()=>tn,allowsEval:()=>Ua,assert:()=>Px,assertEqual:()=>Sx,assertIs:()=>zx,assertNever:()=>Ex,assertNotEqual:()=>Tx,assignProp:()=>Fa,cached:()=>go,captureStackTrace:()=>Cs,cleanEnum:()=>Fx,cleanRegex:()=>_o,clone:()=>yt,createTransparentProxy:()=>Cx,defineLazy:()=>$e,esc:()=>en,escapeRegex:()=>_r,extend:()=>Zx,finalizeIssue:()=>Mt,floatSafeRemainder:()=>La,getElementAtPath:()=>Ix,getEnumValues:()=>ho,getLengthableOrigin:()=>vo,getParsedType:()=>Ax,getSizableOrigin:()=>Up,isObject:()=>In,isPlainObject:()=>Rn,issue:()=>Ga,joinValues:()=>As,jsonStringifyReplacer:()=>qa,merge:()=>Dx,normalizeParams:()=>H,nullish:()=>yo,numKeys:()=>Ox,omit:()=>jx,optionalKeys:()=>Ha,partial:()=>qx,pick:()=>Nx,prefixIssues:()=>Kt,primitiveTypes:()=>Lp,promiseAllObject:()=>Rx,propertyKeyTypes:()=>Va,randomString:()=>Mx,required:()=>Lx,stringifyPrimitive:()=>Ns,unwrapMessage:()=>mo});function Sx(t){return t}function Tx(t){return t}function zx(t){}function Ex(t){throw new Error}function Px(t){}function ho(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 As(t,e="|"){return t.map(r=>Ns(r)).join(e)}function qa(t,e){return typeof e=="bigint"?e.toString():e}function go(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function yo(t){return t==null}function _o(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function La(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 $e(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 Fa(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function Ix(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function Rx(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 Mx(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function en(t){return JSON.stringify(t)}var Cs=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function In(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Ua=go(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function Rn(t){if(In(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(In(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function Ox(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var Ax=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}`)}},Va=new Set(["string","number","symbol"]),Lp=new Set(["string","number","bigint","boolean","symbol","undefined"]);function _r(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function yt(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function H(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 Cx(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 Ns(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Ha(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Wa={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]},Fp={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function Nx(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 yt(t,{...t._zod.def,shape:r,checks:[]})}function jx(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 yt(t,{...t._zod.def,shape:r,checks:[]})}function Zx(t,e){if(!Rn(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 Fa(this,"shape",n),n},checks:[]};return yt(t,r)}function Dx(t,e){return yt(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Fa(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function qx(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 yt(e,{...e._zod.def,shape:o,checks:[]})}function Lx(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 yt(e,{...e._zod.def,shape:o,checks:[]})}function tn(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function Kt(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function mo(t){return typeof t=="string"?t:t?.message}function Mt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=mo(t.inst?._zod.def?.error?.(t))??mo(e?.error?.(t))??mo(r.customError?.(t))??mo(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Up(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function vo(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Ga(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function Fx(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var Da=class{constructor(...e){}};var Vp=(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,qa,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},js=$("$ZodError",Vp),xo=$("$ZodError",Vp,{Parent:Error});function Ba(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 Ka(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 Ja=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 ar;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>Mt(c,s,gt())));throw Cs(a,o?.callee),a}return i.value},Qa=Ja(xo),Xa=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=>Mt(c,s,gt())));throw Cs(a,o?.callee),a}return i.value},Ya=Xa(xo),ec=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 ar;return s.issues.length?{success:!1,error:new(t??js)(s.issues.map(i=>Mt(i,o,gt())))}:{success:!0,data:s.value}},rn=ec(xo),tc=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=>Mt(i,o,gt())))}:{success:!0,data:s.value}},nn=tc(xo);var Hp=/^[cC][^\s-]{8,}$/,Wp=/^[0-9a-z]+$/,Gp=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Bp=/^[0-9a-vA-V]{20}$/,Kp=/^[A-Za-z0-9]{27}$/,Jp=/^[a-zA-Z0-9_-]{21}$/,Qp=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Xp=/^([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})$/,rc=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 Yp=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var Vx="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function ef(){return new RegExp(Vx,"u")}var tf=/^(?:(?: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])$/,rf=/^(([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})$/,nf=/^((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])$/,of=/^(([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])$/,sf=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,nc=/^[A-Za-z0-9_-]*$/,af=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var cf=/^\+(?:[0-9]){6,14}[0-9]$/,uf="(?:(?:\\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])))",lf=new RegExp(`^${uf}$`);function df(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 pf(t){return new RegExp(`^${df(t)}$`)}function ff(t){let e=df({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(`^${uf}T(?:${n})$`)}var mf=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var hf=/^\d+$/,gf=/^-?\d+(?:\.\d+)?/i,yf=/true|false/i,_f=/null/i;var vf=/^[^A-Z]*$/,xf=/^[^a-z]*$/;var Ue=$("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),bf={number:"number",bigint:"bigint",object:"date"},oc=$("$ZodCheckLessThan",(t,e)=>{Ue.init(t,e);let r=bf[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})}}),sc=$("$ZodCheckGreaterThan",(t,e)=>{Ue.init(t,e);let r=bf[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})}}),wf=$("$ZodCheckMultipleOf",(t,e)=>{Ue.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):La(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})}}),$f=$("$ZodCheckNumberFormat",(t,e)=>{Ue.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=Wa[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=hf)}),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 kf=$("$ZodCheckMaxLength",(t,e)=>{var r;Ue.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!yo(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=vo(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),Sf=$("$ZodCheckMinLength",(t,e)=>{var r;Ue.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!yo(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=vo(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),Tf=$("$ZodCheckLengthEquals",(t,e)=>{var r;Ue.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!yo(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=vo(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})}}),bo=$("$ZodCheckStringFormat",(t,e)=>{var r,n;Ue.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=()=>{})}),zf=$("$ZodCheckRegex",(t,e)=>{bo.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})}}),Ef=$("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=vf),bo.init(t,e)}),Pf=$("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=xf),bo.init(t,e)}),If=$("$ZodCheckIncludes",(t,e)=>{Ue.init(t,e);let r=_r(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})}}),Rf=$("$ZodCheckStartsWith",(t,e)=>{Ue.init(t,e);let r=new RegExp(`^${_r(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)=>{Ue.init(t,e);let r=new RegExp(`.*${_r(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 Of=$("$ZodCheckOverwrite",(t,e)=>{Ue.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Ds=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 jz={keyword:"dependencies",type:"object",schemaType:"object",error:Yt.error,code(t){let[e,r]=Zz(t);by(t,e),wy(t,r)}};function Zz({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 by(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,gs.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,gs.checkReportMissingProp)(t,u)}):(r.if((0,jd._)`${c} && (${(0,gs.checkMissingProp)(t,a,s)})`),(0,gs.reportMissingProp)(t,s),r.else())}}Yt.validatePropertyDeps=by;function wy(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,Nz.alwaysValidSchema)(s,e[a])||(r.if((0,gs.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))}Yt.validateSchemaDeps=wy;Yt.default=jz});var Sy=j(Zd=>{"use strict";Object.defineProperty(Zd,"__esModule",{value:!0});var ky=re(),Dz=he(),qz={message:"property name must be valid",params:({params:t})=>(0,ky._)`{propertyName: ${t.propertyName}}`},Lz={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:qz,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,Dz.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,ky.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};Zd.default=Lz});var qd=j(Dd=>{"use strict";Object.defineProperty(Dd,"__esModule",{value:!0});var sa=Et(),qt=re(),Fz=lr(),ia=he(),Uz={message:"must NOT have additional properties",params:({params:t})=>(0,qt._)`{additionalProperty: ${t.additionalProperty}}`},Vz={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:Uz,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,ia.alwaysValidSchema)(i,r))return;let u=(0,sa.allSchemaProperties)(n.properties),l=(0,sa.allSchemaProperties)(n.patternProperties);d(),t.ok((0,qt._)`${s} === ${Fz.default.errors}`);function d(){e.forIn("key",o,h=>{!u.length&&!l.length?p(h):e.if(f(h),()=>p(h))})}function f(h){let _;if(u.length>8){let $=(0,ia.schemaRefOrVal)(i,n.properties,"properties");_=(0,sa.isOwnProperty)(e,$,h)}else u.length?_=(0,qt.or)(...u.map($=>(0,qt._)`${h} === ${$}`)):_=qt.nil;return l.length&&(_=(0,qt.or)(_,...l.map($=>(0,qt._)`${(0,sa.usePattern)(t,$)}.test(${h})`))),(0,qt.not)(_)}function y(h){e.code((0,qt._)`delete ${o}[${h}]`)}function p(h){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){y(h);return}if(r===!1){t.setParams({additionalProperty:h}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,ia.alwaysValidSchema)(i,r)){let _=e.name("valid");c.removeAdditional==="failing"?(g(h,_,!1),e.if((0,qt.not)(_),()=>{t.reset(),y(h)})):(g(h,_),a||e.if((0,qt.not)(_),()=>e.break()))}}function g(h,_,$){let S={keyword:"additionalProperties",dataProp:h,dataPropType:ia.Type.Str};$===!1&&Object.assign(S,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(S,_)}}};Dd.default=Vz});var Ey=j(Fd=>{"use strict";Object.defineProperty(Fd,"__esModule",{value:!0});var Hz=rs(),Ty=Et(),Ld=he(),zy=qd(),Wz={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&&zy.default.code(new Hz.KeywordCxt(s,zy.default,"additionalProperties"));let i=(0,Ty.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=Ld.mergeEvaluated.props(e,(0,Ld.toHash)(i),s.props));let a=i.filter(d=>!(0,Ld.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,Ty.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)}}};Fd.default=Wz});var Oy=j(Ud=>{"use strict";Object.defineProperty(Ud,"__esModule",{value:!0});var Py=Et(),aa=re(),Iy=he(),Ry=he(),Gz={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,Py.allSchemaProperties)(r),c=a.filter(g=>(0,Iy.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 aa.Name)&&(s.props=(0,Ry.evaluatedPropsToName)(e,s.props));let{props:d}=s;f();function f(){for(let g of a)u&&y(g),s.allErrors?p(g):(e.var(l,!0),p(g),e.if(l))}function y(g){for(let h in u)new RegExp(g).test(h)&&(0,Iy.checkStrictMode)(s,`property ${h} matches pattern ${g} (use allowMatchingProperties)`)}function p(g){e.forIn("key",n,h=>{e.if((0,aa._)`${(0,Py.usePattern)(t,g)}.test(${h})`,()=>{let _=c.includes(g);_||t.subschema({keyword:"patternProperties",schemaProp:g,dataProp:h,dataPropType:Ry.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,aa._)`${d}[${h}]`,!0):!_&&!s.allErrors&&e.if((0,aa.not)(l),()=>e.break())})})}}};Ud.default=Gz});var My=j(Vd=>{"use strict";Object.defineProperty(Vd,"__esModule",{value:!0});var Bz=he(),Jz={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,Bz.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"}};Vd.default=Jz});var Cy=j(Hd=>{"use strict";Object.defineProperty(Hd,"__esModule",{value:!0});var Kz=Et(),Qz={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:Kz.validateUnion,error:{message:"must match a schema in anyOf"}};Hd.default=Qz});var Ay=j(Wd=>{"use strict";Object.defineProperty(Wd,"__esModule",{value:!0});var ca=re(),Xz=he(),Yz={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,ca._)`{passingSchemas: ${t.passing}}`},eE={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:Yz,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 f;(0,Xz.alwaysValidSchema)(o,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,ca._)`${c} && ${i}`).assign(i,!1).assign(a,(0,ca._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),f&&t.mergeEvaluated(f,ca.Name)})})}}};Wd.default=eE});var Ny=j(Gd=>{"use strict";Object.defineProperty(Gd,"__esModule",{value:!0});var tE=he(),rE={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,tE.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Gd.default=rE});var Dy=j(Bd=>{"use strict";Object.defineProperty(Bd,"__esModule",{value:!0});var ua=re(),Zy=he(),nE={message:({params:t})=>(0,ua.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,ua._)`{failingKeyword: ${t.ifClause}}`},oE={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:nE,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,Zy.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=jy(n,"then"),s=jy(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,ua.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 f=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(f,i),d?e.assign(d,(0,ua._)`${l}`):t.setParams({ifClause:l})}}}};function jy(t,e){let r=t.schema[e];return r!==void 0&&!(0,Zy.alwaysValidSchema)(t,r)}Bd.default=oE});var qy=j(Jd=>{"use strict";Object.defineProperty(Jd,"__esModule",{value:!0});var sE=he(),iE={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,sE.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Jd.default=iE});var Ly=j(Kd=>{"use strict";Object.defineProperty(Kd,"__esModule",{value:!0});var aE=Od(),cE=yy(),uE=Md(),lE=vy(),dE=xy(),pE=$y(),fE=Sy(),mE=qd(),hE=Ey(),gE=Oy(),yE=My(),_E=Cy(),vE=Ay(),xE=Ny(),bE=Dy(),wE=qy();function $E(t=!1){let e=[yE.default,_E.default,vE.default,xE.default,bE.default,wE.default,fE.default,mE.default,pE.default,hE.default,gE.default];return t?e.push(cE.default,lE.default):e.push(aE.default,uE.default),e.push(dE.default),e}Kd.default=$E});var Fy=j(Qd=>{"use strict";Object.defineProperty(Qd,"__esModule",{value:!0});var De=re(),kE={message:({schemaCode:t})=>(0,De.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,De._)`{format: ${t}}`},SE={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:kE,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?f():y();function f(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),g=r.const("fDef",(0,De._)`${p}[${i}]`),h=r.let("fType"),_=r.let("format");r.if((0,De._)`typeof ${g} == "object" && !(${g} instanceof RegExp)`,()=>r.assign(h,(0,De._)`${g}.type || "string"`).assign(_,(0,De._)`${g}.validate`),()=>r.assign(h,(0,De._)`"string"`).assign(_,g)),t.fail$data((0,De.or)($(),S()));function $(){return c.strictSchema===!1?De.nil:(0,De._)`${i} && !${_}`}function S(){let m=l.$async?(0,De._)`(${g}.async ? await ${_}(${n}) : ${_}(${n}))`:(0,De._)`${_}(${n})`,v=(0,De._)`(typeof ${_} == "function" ? ${m} : ${_}.test(${n}))`;return(0,De._)`${_} && ${_} !== true && ${h} === ${e} && !${v}`}}function y(){let p=d.formats[s];if(!p){$();return}if(p===!0)return;let[g,h,_]=S(p);g===e&&t.pass(m());function $(){if(c.strictSchema===!1){d.logger.warn(v());return}throw new Error(v());function v(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function S(v){let k=v instanceof RegExp?(0,De.regexpCode)(v):c.code.formats?(0,De._)`${c.code.formats}${(0,De.getProperty)(s)}`:void 0,T=r.scopeValue("formats",{key:s,ref:v,code:k});return typeof v=="object"&&!(v instanceof RegExp)?[v.type||"string",v.validate,(0,De._)`${T}.validate`]:["string",v,T]}function m(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,De._)`await ${_}(${n})`}return typeof h=="function"?(0,De._)`${_}(${n})`:(0,De._)`${_}.test(${n})`}}}};Qd.default=SE});var Uy=j(Xd=>{"use strict";Object.defineProperty(Xd,"__esModule",{value:!0});var TE=Fy(),zE=[TE.default];Xd.default=zE});var Vy=j(Jn=>{"use strict";Object.defineProperty(Jn,"__esModule",{value:!0});Jn.contentVocabulary=Jn.metadataVocabulary=void 0;Jn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Jn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Wy=j(Yd=>{"use strict";Object.defineProperty(Yd,"__esModule",{value:!0});var EE=Yg(),PE=fy(),IE=Ly(),RE=Uy(),Hy=Vy(),OE=[EE.default,PE.default,(0,IE.default)(),RE.default,Hy.metadataVocabulary,Hy.contentVocabulary];Yd.default=OE});var By=j(la=>{"use strict";Object.defineProperty(la,"__esModule",{value:!0});la.DiscrError=void 0;var Gy;(function(t){t.Tag="tag",t.Mapping="mapping"})(Gy||(la.DiscrError=Gy={}))});var Ky=j(tp=>{"use strict";Object.defineProperty(tp,"__esModule",{value:!0});var Kn=re(),ep=By(),Jy=Wi(),ME=ns(),CE=he(),AE={message:({params:{discrError:t,tagName:e}})=>t===ep.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Kn._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},NE={keyword:"discriminator",type:"object",schemaType:"object",error:AE,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,Kn._)`${r}${(0,Kn.getProperty)(a)}`);e.if((0,Kn._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:ep.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let y=f();e.if(!1);for(let p in y)e.elseIf((0,Kn._)`${u} === ${p}`),e.assign(c,d(y[p]));e.else(),t.error(!1,{discrError:ep.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(y){let p=e.name("valid"),g=t.subschema({keyword:"oneOf",schemaProp:y},p);return t.mergeEvaluated(g,Kn.Name),p}function f(){var y;let p={},g=_(o),h=!0;for(let m=0;m<i.length;m++){let v=i[m];if(v?.$ref&&!(0,CE.schemaHasRulesButRef)(v,s.self.RULES)){let T=v.$ref;if(v=Jy.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,T),v instanceof Jy.SchemaEnv&&(v=v.schema),v===void 0)throw new ME.default(s.opts.uriResolver,s.baseId,T)}let k=(y=v?.properties)===null||y===void 0?void 0:y[a];if(typeof k!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);h=h&&(g||_(v)),$(k,m)}if(!h)throw new Error(`discriminator: "${a}" must be required`);return p;function _({required:m}){return Array.isArray(m)&&m.includes(a)}function $(m,v){if(m.const)S(m.const,v);else if(m.enum)for(let k of m.enum)S(k,v);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function S(m,v){if(typeof m!="string"||m in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[m]=v}}}};tp.default=NE});var Qy=j((O1,jE)=>{jE.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 np=j((Pe,rp)=>{"use strict";Object.defineProperty(Pe,"__esModule",{value:!0});Pe.MissingRefError=Pe.ValidationError=Pe.CodeGen=Pe.Name=Pe.nil=Pe.stringify=Pe.str=Pe._=Pe.KeywordCxt=Pe.Ajv=void 0;var ZE=Gg(),DE=Wy(),qE=Ky(),Xy=Qy(),LE=["/properties"],da="http://json-schema.org/draft-07/schema",Qn=class extends ZE.default{_addVocabularies(){super._addVocabularies(),DE.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(qE.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Xy,LE):Xy;this.addMetaSchema(e,da,!1),this.refs["http://json-schema.org/schema"]=da}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(da)?da:void 0)}};Pe.Ajv=Qn;rp.exports=Pe=Qn;rp.exports.Ajv=Qn;Object.defineProperty(Pe,"__esModule",{value:!0});Pe.default=Qn;var FE=rs();Object.defineProperty(Pe,"KeywordCxt",{enumerable:!0,get:function(){return FE.KeywordCxt}});var Xn=re();Object.defineProperty(Pe,"_",{enumerable:!0,get:function(){return Xn._}});Object.defineProperty(Pe,"str",{enumerable:!0,get:function(){return Xn.str}});Object.defineProperty(Pe,"stringify",{enumerable:!0,get:function(){return Xn.stringify}});Object.defineProperty(Pe,"nil",{enumerable:!0,get:function(){return Xn.nil}});Object.defineProperty(Pe,"Name",{enumerable:!0,get:function(){return Xn.Name}});Object.defineProperty(Pe,"CodeGen",{enumerable:!0,get:function(){return Xn.CodeGen}});var UE=Vi();Object.defineProperty(Pe,"ValidationError",{enumerable:!0,get:function(){return UE.default}});var VE=ns();Object.defineProperty(Pe,"MissingRefError",{enumerable:!0,get:function(){return VE.default}})});var i_=j(tr=>{"use strict";Object.defineProperty(tr,"__esModule",{value:!0});tr.formatNames=tr.fastFormats=tr.fullFormats=void 0;function er(t,e){return{validate:t,compare:e}}tr.fullFormats={date:er(r_,ap),time:er(sp(!0),cp),"date-time":er(Yy(!0),o_),"iso-time":er(sp(),n_),"iso-date-time":er(Yy(),s_),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:KE,"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:nP,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:QE,int32:{type:"number",validate:eP},int64:{type:"number",validate:tP},float:{type:"number",validate:t_},double:{type:"number",validate:t_},password:!0,binary:!0};tr.fastFormats={...tr.fullFormats,date:er(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,ap),time:er(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,cp),"date-time":er(/^\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,o_),"iso-time":er(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,n_),"iso-date-time":er(/^\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,s_),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};tr.formatNames=Object.keys(tr.fullFormats);function HE(t){return t%4===0&&(t%100!==0||t%400===0)}var WE=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,GE=[0,31,28,31,30,31,30,31,31,30,31,30,31];function r_(t){let e=WE.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&&HE(r)?29:GE[n])}function ap(t,e){if(t&&e)return t>e?1:t<e?-1:0}var op=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function sp(t){return function(r){let n=op.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,f=o-u*c-(d<0?1:0);return(f===23||f===-1)&&(d===59||d===-1)&&i<61}}function cp(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 n_(t,e){if(!(t&&e))return;let r=op.exec(t),n=op.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 ip=/t|\s/i;function Yy(t){let e=sp(t);return function(n){let o=n.split(ip);return o.length===2&&r_(o[0])&&e(o[1])}}function o_(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function s_(t,e){if(!(t&&e))return;let[r,n]=t.split(ip),[o,s]=e.split(ip),i=ap(r,o);if(i!==void 0)return i||cp(n,s)}var BE=/\/|:/,JE=/^(?:[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 KE(t){return BE.test(t)&&JE.test(t)}var e_=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function QE(t){return e_.lastIndex=0,e_.test(t)}var XE=-(2**31),YE=2**31-1;function eP(t){return Number.isInteger(t)&&t<=YE&&t>=XE}function tP(t){return Number.isInteger(t)}function t_(){return!0}var rP=/[^\\]\\Z/;function nP(t){if(rP.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var a_=j(Yn=>{"use strict";Object.defineProperty(Yn,"__esModule",{value:!0});Yn.formatLimitDefinition=void 0;var oP=np(),Lt=re(),Or=Lt.operators,pa={formatMaximum:{okStr:"<=",ok:Or.LTE,fail:Or.GT},formatMinimum:{okStr:">=",ok:Or.GTE,fail:Or.LT},formatExclusiveMaximum:{okStr:"<",ok:Or.LT,fail:Or.GTE},formatExclusiveMinimum:{okStr:">",ok:Or.GT,fail:Or.LTE}},sP={message:({keyword:t,schemaCode:e})=>(0,Lt.str)`should be ${pa[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Lt._)`{comparison: ${pa[t].okStr}, limit: ${e}}`};Yn.formatLimitDefinition={keyword:Object.keys(pa),type:"string",schemaType:"string",$data:!0,error:sP,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 oP.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),y=e.const("fmt",(0,Lt._)`${f}[${c.schemaCode}]`);t.fail$data((0,Lt.or)((0,Lt._)`typeof ${y} != "object"`,(0,Lt._)`${y} instanceof RegExp`,(0,Lt._)`typeof ${y}.compare != "function"`,d(y)))}function l(){let f=c.schema,y=a.formats[f];if(!y||y===!0)return;if(typeof y!="object"||y instanceof RegExp||typeof y.compare!="function")throw new Error(`"${o}": format "${f}" does not define "compare" function`);let p=e.scopeValue("formats",{key:f,ref:y,code:i.code.formats?(0,Lt._)`${i.code.formats}${(0,Lt.getProperty)(f)}`:void 0});t.fail$data(d(p))}function d(f){return(0,Lt._)`${f}.compare(${r}, ${n}) ${pa[o].fail} 0`}},dependencies:["format"]};var iP=t=>(t.addKeyword(Yn.formatLimitDefinition),t);Yn.default=iP});var d_=j((ys,l_)=>{"use strict";Object.defineProperty(ys,"__esModule",{value:!0});var eo=i_(),aP=a_(),up=re(),c_=new up.Name("fullFormats"),cP=new up.Name("fastFormats"),lp=(t,e={keywords:!0})=>{if(Array.isArray(e))return u_(t,e,eo.fullFormats,c_),t;let[r,n]=e.mode==="fast"?[eo.fastFormats,cP]:[eo.fullFormats,c_],o=e.formats||eo.formatNames;return u_(t,o,r,n),e.keywords&&(0,aP.default)(t),t};lp.get=(t,e="full")=>{let n=(e==="fast"?eo.fastFormats:eo.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function u_(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,up._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}l_.exports=ys=lp;Object.defineProperty(ys,"__esModule",{value:!0});ys.default=lp});var _I={};Rs(_I,{log:()=>Ps});module.exports=vv(_I);var M={};Rs(M,{BRAND:()=>Hv,DIRTY:()=>Zr,EMPTY_PATH:()=>$v,INVALID:()=>B,NEVER:()=>Ex,OK:()=>Xe,ParseStatus:()=>Ve,Schema:()=>te,ZodAny:()=>yr,ZodArray:()=>ir,ZodBigInt:()=>qr,ZodBoolean:()=>Lr,ZodBranded:()=>go,ZodCatch:()=>Xr,ZodDate:()=>Fr,ZodDefault:()=>Qr,ZodDiscriminatedUnion:()=>Cs,ZodEffects:()=>$t,ZodEnum:()=>Jr,ZodError:()=>at,ZodFirstPartyTypeKind:()=>O,ZodFunction:()=>Ns,ZodIntersection:()=>Wr,ZodIssueCode:()=>P,ZodLazy:()=>Gr,ZodLiteral:()=>Br,ZodMap:()=>Tn,ZodNaN:()=>En,ZodNativeEnum:()=>Kr,ZodNever:()=>Mt,ZodNull:()=>Vr,ZodNullable:()=>Bt,ZodNumber:()=>Dr,ZodObject:()=>ut,ZodOptional:()=>ct,ZodParsedType:()=>Z,ZodPipeline:()=>yo,ZodPromise:()=>_r,ZodReadonly:()=>Yr,ZodRecord:()=>As,ZodSchema:()=>te,ZodSet:()=>zn,ZodString:()=>gr,ZodSymbol:()=>kn,ZodTransformer:()=>$t,ZodTuple:()=>Gt,ZodType:()=>te,ZodUndefined:()=>Ur,ZodUnion:()=>Hr,ZodUnknown:()=>sr,ZodVoid:()=>Sn,addIssueToContext:()=>A,any:()=>ex,array:()=>ox,bigint:()=>Jv,boolean:()=>Fp,coerce:()=>zx,custom:()=>Dp,date:()=>Kv,datetimeRegex:()=>jp,defaultErrorMap:()=>nr,discriminatedUnion:()=>ax,effect:()=>vx,enum:()=>gx,function:()=>fx,getErrorMap:()=>bn,getParsedType:()=>Wt,instanceof:()=>Gv,intersection:()=>cx,isAborted:()=>Os,isAsync:()=>wn,isDirty:()=>Ms,isValid:()=>hr,late:()=>Wv,lazy:()=>mx,literal:()=>hx,makeIssue:()=>ho,map:()=>dx,nan:()=>Bv,nativeEnum:()=>yx,never:()=>rx,null:()=>Yv,nullable:()=>bx,number:()=>Lp,object:()=>La,objectUtil:()=>Za,oboolean:()=>Tx,onumber:()=>Sx,optional:()=>xx,ostring:()=>kx,pipeline:()=>$x,preprocess:()=>wx,promise:()=>_x,quotelessJson:()=>xv,record:()=>lx,set:()=>px,setErrorMap:()=>wv,strictObject:()=>sx,string:()=>qp,symbol:()=>Qv,transformer:()=>vx,tuple:()=>ux,undefined:()=>Xv,union:()=>ix,unknown:()=>tx,util:()=>ae,void:()=>nx});var ae;(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})(ae||(ae={}));var Za;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Za||(Za={}));var Z=ae.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Wt=t=>{switch(typeof t){case"undefined":return Z.undefined;case"string":return Z.string;case"number":return Number.isNaN(t)?Z.nan:Z.number;case"boolean":return Z.boolean;case"function":return Z.function;case"bigint":return Z.bigint;case"symbol":return Z.symbol;case"object":return Array.isArray(t)?Z.array:t===null?Z.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?Z.promise:typeof Map<"u"&&t instanceof Map?Z.map:typeof Set<"u"&&t instanceof Set?Z.set:typeof Date<"u"&&t instanceof Date?Z.date:Z.object;default:return Z.unknown}};var P=ae.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"]),xv=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),at=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,ae.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()}};at.create=t=>new at(t);var bv=(t,e)=>{let r;switch(t.code){case P.invalid_type:t.received===Z.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case P.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,ae.jsonStringifyReplacer)}`;break;case P.unrecognized_keys:r=`Unrecognized key(s) in object: ${ae.joinValues(t.keys,", ")}`;break;case P.invalid_union:r="Invalid input";break;case P.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${ae.joinValues(t.options)}`;break;case P.invalid_enum_value:r=`Invalid enum value. Expected ${ae.joinValues(t.options)}, received '${t.received}'`;break;case P.invalid_arguments:r="Invalid function arguments";break;case P.invalid_return_type:r="Invalid function return type";break;case P.invalid_date:r="Invalid date";break;case P.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}"`:ae.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case P.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 P.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 P.custom:r="Invalid input";break;case P.invalid_intersection_types:r="Intersection results could not be merged";break;case P.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case P.not_finite:r="Number must be finite";break;default:r=e.defaultError,ae.assertNever(t)}return{message:r}},nr=bv;var Op=nr;function wv(t){Op=t}function bn(){return Op}var ho=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}},$v=[];function A(t,e){let r=bn(),n=ho({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===nr?void 0:nr].filter(o=>!!o)});t.common.issues.push(n)}var Ve=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 B;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 B;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}}},B=Object.freeze({status:"aborted"}),Zr=t=>({status:"dirty",value:t}),Xe=t=>({status:"valid",value:t}),Os=t=>t.status==="aborted",Ms=t=>t.status==="dirty",hr=t=>t.status==="valid",wn=t=>typeof Promise<"u"&&t instanceof Promise;var q;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(q||(q={}));var wt=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}},Mp=(t,e)=>{if(hr(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 at(t.common.issues);return this._error=r,this._error}}};function Y(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 te=class{get description(){return this._def.description}_getType(e){return Wt(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:Wt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Ve,ctx:{common:e.parent.common,data:e.data,parsedType:Wt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(wn(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:Wt(e)},o=this._parseSync({data:e,path:n.path,parent:n});return Mp(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Wt(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return hr(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=>hr(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:Wt(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(wn(o)?o:Promise.resolve(o));return Mp(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:P.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:O.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 ct.create(this,this._def)}nullable(){return Bt.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return ir.create(this)}promise(){return _r.create(this,this._def)}or(e){return Hr.create([this,e],this._def)}and(e){return Wr.create(this,e,this._def)}transform(e){return new $t({...Y(this._def),schema:this,typeName:O.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new Qr({...Y(this._def),innerType:this,defaultValue:r,typeName:O.ZodDefault})}brand(){return new go({typeName:O.ZodBranded,type:this,...Y(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Xr({...Y(this._def),innerType:this,catchValue:r,typeName:O.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return yo.create(this,e)}readonly(){return Yr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},kv=/^c[^\s-]{8,}$/i,Sv=/^[0-9a-z]+$/,Tv=/^[0-9A-HJKMNP-TV-Z]{26}$/i,zv=/^[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,Pv=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Iv=/^[-+]?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)?)??$/,Rv=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Ov="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Da,Mv=/^(?:(?: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])$/,Cv=/^(?:(?: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]))$/,Nv=/^(([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])$/,jv=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Zv=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Ap="((\\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(`^${Ap}$`);function Np(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 qv(t){return new RegExp(`^${Np(t)}$`)}function jp(t){let e=`${Ap}T${Np(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 Lv(t,e){return!!((e==="v4"||!e)&&Mv.test(t)||(e==="v6"||!e)&&Av.test(t))}function Fv(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 Uv(t,e){return!!((e==="v4"||!e)&&Cv.test(t)||(e==="v6"||!e)&&Nv.test(t))}var gr=class t extends te{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==Z.string){let s=this._getOrReturnCtx(e);return A(s,{code:P.invalid_type,expected:Z.string,received:s.parsedType}),B}let n=new Ve,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),A(o,{code:P.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),A(o,{code:P.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?A(o,{code:P.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&A(o,{code:P.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")Rv.test(e.data)||(o=this._getOrReturnCtx(e,o),A(o,{validation:"email",code:P.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")Da||(Da=new RegExp(Ov,"u")),Da.test(e.data)||(o=this._getOrReturnCtx(e,o),A(o,{validation:"emoji",code:P.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")zv.test(e.data)||(o=this._getOrReturnCtx(e,o),A(o,{validation:"uuid",code:P.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")Ev.test(e.data)||(o=this._getOrReturnCtx(e,o),A(o,{validation:"nanoid",code:P.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")kv.test(e.data)||(o=this._getOrReturnCtx(e,o),A(o,{validation:"cuid",code:P.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")Sv.test(e.data)||(o=this._getOrReturnCtx(e,o),A(o,{validation:"cuid2",code:P.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")Tv.test(e.data)||(o=this._getOrReturnCtx(e,o),A(o,{validation:"ulid",code:P.invalid_string,message:s.message}),n.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{o=this._getOrReturnCtx(e,o),A(o,{validation:"url",code:P.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),A(o,{validation:"regex",code:P.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),A(o,{code:P.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),A(o,{code:P.invalid_string,validation:{startsWith:s.value},message:s.message}),n.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(o=this._getOrReturnCtx(e,o),A(o,{code:P.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?jp(s).test(e.data)||(o=this._getOrReturnCtx(e,o),A(o,{code:P.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?Dv.test(e.data)||(o=this._getOrReturnCtx(e,o),A(o,{code:P.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?qv(s).test(e.data)||(o=this._getOrReturnCtx(e,o),A(o,{code:P.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?Iv.test(e.data)||(o=this._getOrReturnCtx(e,o),A(o,{validation:"duration",code:P.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?Lv(e.data,s.version)||(o=this._getOrReturnCtx(e,o),A(o,{validation:"ip",code:P.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?Fv(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),A(o,{validation:"jwt",code:P.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?Uv(e.data,s.version)||(o=this._getOrReturnCtx(e,o),A(o,{validation:"cidr",code:P.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?jv.test(e.data)||(o=this._getOrReturnCtx(e,o),A(o,{validation:"base64",code:P.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?Zv.test(e.data)||(o=this._getOrReturnCtx(e,o),A(o,{validation:"base64url",code:P.invalid_string,message:s.message}),n.dirty()):ae.assertNever(s);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(o=>e.test(o),{validation:r,code:P.invalid_string,...q.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...q.errToObj(e)})}url(e){return this._addCheck({kind:"url",...q.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...q.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...q.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...q.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...q.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...q.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...q.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...q.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...q.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...q.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...q.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...q.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,...q.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,...q.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...q.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...q.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...q.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...q.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...q.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...q.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...q.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...q.errToObj(r)})}nonempty(e){return this.min(1,q.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}};gr.create=t=>new gr({checks:[],typeName:O.ZodString,coerce:t?.coerce??!1,...Y(t)});function Vv(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 Dr=class t extends te{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)!==Z.number){let s=this._getOrReturnCtx(e);return A(s,{code:P.invalid_type,expected:Z.number,received:s.parsedType}),B}let n,o=new Ve;for(let s of this._def.checks)s.kind==="int"?ae.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),A(n,{code:P.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),A(n,{code:P.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),A(n,{code:P.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?Vv(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),A(n,{code:P.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),A(n,{code:P.not_finite,message:s.message}),o.dirty()):ae.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,q.toString(r))}gt(e,r){return this.setLimit("min",e,!1,q.toString(r))}lte(e,r){return this.setLimit("max",e,!0,q.toString(r))}lt(e,r){return this.setLimit("max",e,!1,q.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:q.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:q.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:q.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:q.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:q.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:q.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:q.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:q.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:q.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:q.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"&&ae.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)}};Dr.create=t=>new Dr({checks:[],typeName:O.ZodNumber,coerce:t?.coerce||!1,...Y(t)});var qr=class t extends te{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)!==Z.bigint)return this._getInvalidInput(e);let n,o=new Ve;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),A(n,{code:P.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),A(n,{code:P.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),A(n,{code:P.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):ae.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return A(r,{code:P.invalid_type,expected:Z.bigint,received:r.parsedType}),B}gte(e,r){return this.setLimit("min",e,!0,q.toString(r))}gt(e,r){return this.setLimit("min",e,!1,q.toString(r))}lte(e,r){return this.setLimit("max",e,!0,q.toString(r))}lt(e,r){return this.setLimit("max",e,!1,q.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:q.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:q.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:q.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:q.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:q.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:q.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}};qr.create=t=>new qr({checks:[],typeName:O.ZodBigInt,coerce:t?.coerce??!1,...Y(t)});var Lr=class extends te{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==Z.boolean){let n=this._getOrReturnCtx(e);return A(n,{code:P.invalid_type,expected:Z.boolean,received:n.parsedType}),B}return Xe(e.data)}};Lr.create=t=>new Lr({typeName:O.ZodBoolean,coerce:t?.coerce||!1,...Y(t)});var Fr=class t extends te{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==Z.date){let s=this._getOrReturnCtx(e);return A(s,{code:P.invalid_type,expected:Z.date,received:s.parsedType}),B}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return A(s,{code:P.invalid_date}),B}let n=new Ve,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),A(o,{code:P.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),A(o,{code:P.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):ae.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:q.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:q.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}};Fr.create=t=>new Fr({checks:[],coerce:t?.coerce||!1,typeName:O.ZodDate,...Y(t)});var kn=class extends te{_parse(e){if(this._getType(e)!==Z.symbol){let n=this._getOrReturnCtx(e);return A(n,{code:P.invalid_type,expected:Z.symbol,received:n.parsedType}),B}return Xe(e.data)}};kn.create=t=>new kn({typeName:O.ZodSymbol,...Y(t)});var Ur=class extends te{_parse(e){if(this._getType(e)!==Z.undefined){let n=this._getOrReturnCtx(e);return A(n,{code:P.invalid_type,expected:Z.undefined,received:n.parsedType}),B}return Xe(e.data)}};Ur.create=t=>new Ur({typeName:O.ZodUndefined,...Y(t)});var Vr=class extends te{_parse(e){if(this._getType(e)!==Z.null){let n=this._getOrReturnCtx(e);return A(n,{code:P.invalid_type,expected:Z.null,received:n.parsedType}),B}return Xe(e.data)}};Vr.create=t=>new Vr({typeName:O.ZodNull,...Y(t)});var yr=class extends te{constructor(){super(...arguments),this._any=!0}_parse(e){return Xe(e.data)}};yr.create=t=>new yr({typeName:O.ZodAny,...Y(t)});var sr=class extends te{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Xe(e.data)}};sr.create=t=>new sr({typeName:O.ZodUnknown,...Y(t)});var Mt=class extends te{_parse(e){let r=this._getOrReturnCtx(e);return A(r,{code:P.invalid_type,expected:Z.never,received:r.parsedType}),B}};Mt.create=t=>new Mt({typeName:O.ZodNever,...Y(t)});var Sn=class extends te{_parse(e){if(this._getType(e)!==Z.undefined){let n=this._getOrReturnCtx(e);return A(n,{code:P.invalid_type,expected:Z.void,received:n.parsedType}),B}return Xe(e.data)}};Sn.create=t=>new Sn({typeName:O.ZodVoid,...Y(t)});var ir=class t extends te{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==Z.array)return A(r,{code:P.invalid_type,expected:Z.array,received:r.parsedType}),B;if(o.exactLength!==null){let i=r.data.length>o.exactLength.value,a=r.data.length<o.exactLength.value;(i||a)&&(A(r,{code:i?P.too_big:P.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&&(A(r,{code:P.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&&(A(r,{code:P.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 wt(r,i,r.path,a)))).then(i=>Ve.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new wt(r,i,r.path,a)));return Ve.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:q.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:q.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:q.toString(r)}})}nonempty(e){return this.min(1,e)}};ir.create=(t,e)=>new ir({type:t,minLength:null,maxLength:null,exactLength:null,typeName:O.ZodArray,...Y(e)});function $n(t){if(t instanceof ut){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=ct.create($n(n))}return new ut({...t._def,shape:()=>e})}else return t instanceof ir?new ir({...t._def,type:$n(t.element)}):t instanceof ct?ct.create($n(t.unwrap())):t instanceof Bt?Bt.create($n(t.unwrap())):t instanceof Gt?Gt.create(t.items.map(e=>$n(e))):t}var ut=class t extends te{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=ae.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==Z.object){let u=this._getOrReturnCtx(e);return A(u,{code:P.invalid_type,expected:Z.object,received:u.parsedType}),B}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof Mt&&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 wt(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof Mt){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&&(A(o,{code:P.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 wt(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,f=await l.value;u.push({key:d,value:f,alwaysSet:l.alwaysSet})}return u}).then(u=>Ve.mergeObjectSync(n,u)):Ve.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return q.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:q.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:O.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 ae.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 ae.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return $n(this)}partial(e){let r={};for(let n of ae.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 ae.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof ct;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return Zp(ae.objectKeys(this.shape))}};ut.create=(t,e)=>new ut({shape:()=>t,unknownKeys:"strip",catchall:Mt.create(),typeName:O.ZodObject,...Y(e)});ut.strictCreate=(t,e)=>new ut({shape:()=>t,unknownKeys:"strict",catchall:Mt.create(),typeName:O.ZodObject,...Y(e)});ut.lazycreate=(t,e)=>new ut({shape:t,unknownKeys:"strip",catchall:Mt.create(),typeName:O.ZodObject,...Y(e)});var Hr=class extends te{_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 at(a.ctx.common.issues));return A(r,{code:P.invalid_union,unionErrors:i}),B}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 at(c));return A(r,{code:P.invalid_union,unionErrors:a}),B}}get options(){return this._def.options}};Hr.create=(t,e)=>new Hr({options:t,typeName:O.ZodUnion,...Y(e)});var or=t=>t instanceof Gr?or(t.schema):t instanceof $t?or(t.innerType()):t instanceof Br?[t.value]:t instanceof Jr?t.options:t instanceof Kr?ae.objectValues(t.enum):t instanceof Qr?or(t._def.innerType):t instanceof Ur?[void 0]:t instanceof Vr?[null]:t instanceof ct?[void 0,...or(t.unwrap())]:t instanceof Bt?[null,...or(t.unwrap())]:t instanceof go||t instanceof Yr?or(t.unwrap()):t instanceof Xr?or(t._def.innerType):[],Cs=class t extends te{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==Z.object)return A(r,{code:P.invalid_type,expected:Z.object,received:r.parsedType}),B;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}):(A(r,{code:P.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),B)}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=or(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:O.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...Y(n)})}};function qa(t,e){let r=Wt(t),n=Wt(e);if(t===e)return{valid:!0,data:t};if(r===Z.object&&n===Z.object){let o=ae.objectKeys(e),s=ae.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=qa(t[a],e[a]);if(!c.valid)return{valid:!1};i[a]=c.data}return{valid:!0,data:i}}else if(r===Z.array&&n===Z.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=qa(i,a);if(!c.valid)return{valid:!1};o.push(c.data)}return{valid:!0,data:o}}else return r===Z.date&&n===Z.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var Wr=class extends te{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(Os(s)||Os(i))return B;let a=qa(s.value,i.value);return a.valid?((Ms(s)||Ms(i))&&r.dirty(),{status:r.value,value:a.data}):(A(n,{code:P.invalid_intersection_types}),B)};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}))}};Wr.create=(t,e,r)=>new Wr({left:t,right:e,typeName:O.ZodIntersection,...Y(r)});var Gt=class t extends te{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==Z.array)return A(n,{code:P.invalid_type,expected:Z.array,received:n.parsedType}),B;if(n.data.length<this._def.items.length)return A(n,{code:P.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),B;!this._def.rest&&n.data.length>this._def.items.length&&(A(n,{code:P.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 wt(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>Ve.mergeArray(r,i)):Ve.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};Gt.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Gt({items:t,typeName:O.ZodTuple,rest:null,...Y(e)})};var As=class t extends te{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!==Z.object)return A(n,{code:P.invalid_type,expected:Z.object,received:n.parsedType}),B;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in n.data)o.push({key:s._parse(new wt(n,a,n.path,a)),value:i._parse(new wt(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Ve.mergeObjectAsync(r,o):Ve.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof te?new t({keyType:e,valueType:r,typeName:O.ZodRecord,...Y(n)}):new t({keyType:gr.create(),valueType:e,typeName:O.ZodRecord,...Y(r)})}},Tn=class extends te{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!==Z.map)return A(n,{code:P.invalid_type,expected:Z.map,received:n.parsedType}),B;let o=this._def.keyType,s=this._def.valueType,i=[...n.data.entries()].map(([a,c],u)=>({key:o._parse(new wt(n,a,n.path,[u,"key"])),value:s._parse(new wt(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 B;(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 B;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};Tn.create=(t,e,r)=>new Tn({valueType:e,keyType:t,typeName:O.ZodMap,...Y(r)});var zn=class t extends te{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==Z.set)return A(n,{code:P.invalid_type,expected:Z.set,received:n.parsedType}),B;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(A(n,{code:P.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&&(A(n,{code:P.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 B;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 wt(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:q.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:q.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};zn.create=(t,e)=>new zn({valueType:t,minSize:null,maxSize:null,typeName:O.ZodSet,...Y(e)});var Ns=class t extends te{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==Z.function)return A(r,{code:P.invalid_type,expected:Z.function,received:r.parsedType}),B;function n(a,c){return ho({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,bn(),nr].filter(u=>!!u),issueData:{code:P.invalid_arguments,argumentsError:c}})}function o(a,c){return ho({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,bn(),nr].filter(u=>!!u),issueData:{code:P.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},i=r.data;if(this._def.returns instanceof _r){let a=this;return Xe(async function(...c){let u=new at([]),l=await a._def.args.parseAsync(c,s).catch(y=>{throw u.addIssue(n(c,y)),u}),d=await Reflect.apply(i,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(y=>{throw u.addIssue(o(d,y)),u})})}else{let a=this;return Xe(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new at([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new at([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:Gt.create(e).rest(sr.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||Gt.create([]).rest(sr.create()),returns:r||sr.create(),typeName:O.ZodFunction,...Y(n)})}},Gr=class extends te{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})}};Gr.create=(t,e)=>new Gr({getter:t,typeName:O.ZodLazy,...Y(e)});var Br=class extends te{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return A(r,{received:r.data,code:P.invalid_literal,expected:this._def.value}),B}return{status:"valid",value:e.data}}get value(){return this._def.value}};Br.create=(t,e)=>new Br({value:t,typeName:O.ZodLiteral,...Y(e)});function Zp(t,e){return new Jr({values:t,typeName:O.ZodEnum,...Y(e)})}var Jr=class t extends te{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return A(r,{expected:ae.joinValues(n),received:r.parsedType,code:P.invalid_type}),B}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 A(r,{received:r.data,code:P.invalid_enum_value,options:n}),B}return Xe(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})}};Jr.create=Zp;var Kr=class extends te{_parse(e){let r=ae.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==Z.string&&n.parsedType!==Z.number){let o=ae.objectValues(r);return A(n,{expected:ae.joinValues(o),received:n.parsedType,code:P.invalid_type}),B}if(this._cache||(this._cache=new Set(ae.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=ae.objectValues(r);return A(n,{received:n.data,code:P.invalid_enum_value,options:o}),B}return Xe(e.data)}get enum(){return this._def.values}};Kr.create=(t,e)=>new Kr({values:t,typeName:O.ZodNativeEnum,...Y(e)});var _r=class extends te{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==Z.promise&&r.common.async===!1)return A(r,{code:P.invalid_type,expected:Z.promise,received:r.parsedType}),B;let n=r.parsedType===Z.promise?r.data:Promise.resolve(r.data);return Xe(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};_r.create=(t,e)=>new _r({type:t,typeName:O.ZodPromise,...Y(e)});var $t=class extends te{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===O.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=>{A(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 B;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?B:c.status==="dirty"?Zr(c.value):r.value==="dirty"?Zr(c.value):c});{if(r.value==="aborted")return B;let a=this._def.schema._parseSync({data:i,path:n.path,parent:n});return a.status==="aborted"?B:a.status==="dirty"?Zr(a.value):r.value==="dirty"?Zr(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"?B:(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"?B:(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(!hr(i))return B;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=>hr(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):B);ae.assertNever(o)}};$t.create=(t,e,r)=>new $t({schema:t,typeName:O.ZodEffects,effect:e,...Y(r)});$t.createWithPreprocess=(t,e,r)=>new $t({schema:e,effect:{type:"preprocess",transform:t},typeName:O.ZodEffects,...Y(r)});var ct=class extends te{_parse(e){return this._getType(e)===Z.undefined?Xe(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};ct.create=(t,e)=>new ct({innerType:t,typeName:O.ZodOptional,...Y(e)});var Bt=class extends te{_parse(e){return this._getType(e)===Z.null?Xe(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Bt.create=(t,e)=>new Bt({innerType:t,typeName:O.ZodNullable,...Y(e)});var Qr=class extends te{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===Z.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};Qr.create=(t,e)=>new Qr({innerType:t,typeName:O.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...Y(e)});var Xr=class extends te{_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 wn(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new at(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new at(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Xr.create=(t,e)=>new Xr({innerType:t,typeName:O.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...Y(e)});var En=class extends te{_parse(e){if(this._getType(e)!==Z.nan){let n=this._getOrReturnCtx(e);return A(n,{code:P.invalid_type,expected:Z.nan,received:n.parsedType}),B}return{status:"valid",value:e.data}}};En.create=t=>new En({typeName:O.ZodNaN,...Y(t)});var Hv=Symbol("zod_brand"),go=class extends te{_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}},yo=class t extends te{_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"?B:s.status==="dirty"?(r.dirty(),Zr(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"?B: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:O.ZodPipeline})}},Yr=class extends te{_parse(e){let r=this._def.innerType._parse(e),n=o=>(hr(o)&&(o.value=Object.freeze(o.value)),o);return wn(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};Yr.create=(t,e)=>new Yr({innerType:t,typeName:O.ZodReadonly,...Y(e)});function Cp(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function Dp(t,e={},r){return t?yr.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=Cp(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=Cp(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):yr.create()}var Wv={object:ut.lazycreate},O;(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"})(O||(O={}));var Gv=(t,e={message:`Input not instance of ${t.name}`})=>Dp(r=>r instanceof t,e),qp=gr.create,Lp=Dr.create,Bv=En.create,Jv=qr.create,Fp=Lr.create,Kv=Fr.create,Qv=kn.create,Xv=Ur.create,Yv=Vr.create,ex=yr.create,tx=sr.create,rx=Mt.create,nx=Sn.create,ox=ir.create,La=ut.create,sx=ut.strictCreate,ix=Hr.create,ax=Cs.create,cx=Wr.create,ux=Gt.create,lx=As.create,dx=Tn.create,px=zn.create,fx=Ns.create,mx=Gr.create,hx=Br.create,gx=Jr.create,yx=Kr.create,_x=_r.create,vx=$t.create,xx=ct.create,bx=Bt.create,wx=$t.createWithPreprocess,$x=yo.create,kx=()=>qp().optional(),Sx=()=>Lp().optional(),Tx=()=>Fp().optional(),zx={string:t=>gr.create({...t,coerce:!0}),number:t=>Dr.create({...t,coerce:!0}),boolean:t=>Lr.create({...t,coerce:!0}),bigint:t=>qr.create({...t,coerce:!0}),date:t=>Fr.create({...t,coerce:!0})};var Ex=B;var Px=Object.freeze({status:"aborted"});function w(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 Ix=Symbol("zod_brand"),ar=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},js={};function yt(t){return t&&Object.assign(js,t),js}var ue={};Rs(ue,{BIGINT_FORMAT_RANGES:()=>Vp,Class:()=>Ua,NUMBER_FORMAT_RANGES:()=>Ka,aborted:()=>tn,allowsEval:()=>Ga,assert:()=>Ax,assertEqual:()=>Rx,assertIs:()=>Mx,assertNever:()=>Cx,assertNotEqual:()=>Ox,assignProp:()=>Wa,cached:()=>xo,captureStackTrace:()=>Ds,cleanEnum:()=>Bx,cleanRegex:()=>wo,clone:()=>_t,createTransparentProxy:()=>Lx,defineLazy:()=>Se,esc:()=>en,escapeRegex:()=>vr,extend:()=>Vx,finalizeIssue:()=>Ct,floatSafeRemainder:()=>Ha,getElementAtPath:()=>Nx,getEnumValues:()=>vo,getLengthableOrigin:()=>$o,getParsedType:()=>qx,getSizableOrigin:()=>Hp,isObject:()=>Pn,isPlainObject:()=>In,issue:()=>Qa,joinValues:()=>Zs,jsonStringifyReplacer:()=>Va,merge:()=>Hx,normalizeParams:()=>J,nullish:()=>bo,numKeys:()=>Dx,omit:()=>Ux,optionalKeys:()=>Ja,partial:()=>Wx,pick:()=>Fx,prefixIssues:()=>Jt,primitiveTypes:()=>Up,promiseAllObject:()=>jx,propertyKeyTypes:()=>Ba,randomString:()=>Zx,required:()=>Gx,stringifyPrimitive:()=>qs,unwrapMessage:()=>_o});function Rx(t){return t}function Ox(t){return t}function Mx(t){}function Cx(t){throw new Error}function Ax(t){}function vo(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 Zs(t,e="|"){return t.map(r=>qs(r)).join(e)}function Va(t,e){return typeof e=="bigint"?e.toString():e}function xo(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function bo(t){return t==null}function wo(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Ha(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 Se(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 Wa(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function Nx(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function jx(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 Zx(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function en(t){return JSON.stringify(t)}var Ds=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function Pn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Ga=xo(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function In(t){if(Pn(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(Pn(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 qx=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}`)}},Ba=new Set(["string","number","symbol"]),Up=new Set(["string","number","bigint","boolean","symbol","undefined"]);function vr(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function _t(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function J(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 Lx(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 qs(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Ja(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Ka={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]},Vp={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function Fx(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 _t(t,{...t._zod.def,shape:r,checks:[]})}function Ux(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 _t(t,{...t._zod.def,shape:r,checks:[]})}function Vx(t,e){if(!In(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 Wa(this,"shape",n),n},checks:[]};return _t(t,r)}function Hx(t,e){return _t(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Wa(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function Wx(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 _t(e,{...e._zod.def,shape:o,checks:[]})}function Gx(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 _t(e,{...e._zod.def,shape:o,checks:[]})}function tn(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function Jt(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function _o(t){return typeof t=="string"?t:t?.message}function Ct(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=_o(t.inst?._zod.def?.error?.(t))??_o(e?.error?.(t))??_o(r.customError?.(t))??_o(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Hp(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function $o(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Qa(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function Bx(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var Ua=class{constructor(...e){}};var Wp=(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,Va,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Ls=w("$ZodError",Wp),ko=w("$ZodError",Wp,{Parent:Error});function Xa(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 Ya(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 ec=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 ar;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>Ct(c,s,yt())));throw Ds(a,o?.callee),a}return i.value},tc=ec(ko),rc=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=>Ct(c,s,yt())));throw Ds(a,o?.callee),a}return i.value},nc=rc(ko),oc=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 ar;return s.issues.length?{success:!1,error:new(t??Ls)(s.issues.map(i=>Ct(i,o,yt())))}:{success:!0,data:s.value}},rn=oc(ko),sc=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=>Ct(i,o,yt())))}:{success:!0,data:s.value}},nn=sc(ko);var Gp=/^[cC][^\s-]{8,}$/,Bp=/^[0-9a-z]+$/,Jp=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Kp=/^[0-9a-vA-V]{20}$/,Qp=/^[A-Za-z0-9]{27}$/,Xp=/^[a-zA-Z0-9_-]{21}$/,Yp=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var ef=/^([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})$/,ic=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 tf=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var Kx="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function rf(){return new RegExp(Kx,"u")}var nf=/^(?:(?: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])$/,of=/^(([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})$/,sf=/^((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])$/,af=/^(([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])$/,cf=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,ac=/^[A-Za-z0-9_-]*$/,uf=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var lf=/^\+(?:[0-9]){6,14}[0-9]$/,df="(?:(?:\\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])))",pf=new RegExp(`^${df}$`);function ff(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 mf(t){return new RegExp(`^${ff(t)}$`)}function hf(t){let e=ff({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(`^${df}T(?:${n})$`)}var gf=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var yf=/^\d+$/,_f=/^-?\d+(?:\.\d+)?/i,vf=/true|false/i,xf=/null/i;var bf=/^[^A-Z]*$/,wf=/^[^a-z]*$/;var He=w("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),$f={number:"number",bigint:"bigint",object:"date"},cc=w("$ZodCheckLessThan",(t,e)=>{He.init(t,e);let r=$f[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})}}),uc=w("$ZodCheckGreaterThan",(t,e)=>{He.init(t,e);let r=$f[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})}}),kf=w("$ZodCheckMultipleOf",(t,e)=>{He.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):Ha(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})}}),Sf=w("$ZodCheckNumberFormat",(t,e)=>{He.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=Ka[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=yf)}),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 Tf=w("$ZodCheckMaxLength",(t,e)=>{var r;He.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!bo(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=$o(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),zf=w("$ZodCheckMinLength",(t,e)=>{var r;He.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!bo(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=$o(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),Ef=w("$ZodCheckLengthEquals",(t,e)=>{var r;He.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!bo(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=$o(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})}}),So=w("$ZodCheckStringFormat",(t,e)=>{var r,n;He.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=()=>{})}),Pf=w("$ZodCheckRegex",(t,e)=>{So.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})}}),If=w("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=bf),So.init(t,e)}),Rf=w("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=wf),So.init(t,e)}),Of=w("$ZodCheckIncludes",(t,e)=>{He.init(t,e);let r=vr(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})}}),Mf=w("$ZodCheckStartsWith",(t,e)=>{He.init(t,e);let r=new RegExp(`^${vr(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})}}),Cf=w("$ZodCheckEndsWith",(t,e)=>{He.init(t,e);let r=new RegExp(`.*${vr(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 Af=w("$ZodCheckOverwrite",(t,e)=>{He.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Us=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 Cf={major:4,minor:0,patch:0};var xe=$("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=Cf;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=tn(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,m=l._zod.check(s);if(m instanceof Promise&&a?.async===!1)throw new ar;if(u||m instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await m,s.issues.length!==d&&(c||(c=tn(s,d)))});else{if(s.issues.length===d)continue;c||(c=tn(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 ar;return a.then(c=>o(c,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=rn(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return nn(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),wo=$("$ZodString",(t,e)=>{xe.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??mf(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}}),ke=$("$ZodStringFormat",(t,e)=>{bo.init(t,e),wo.init(t,e)}),ac=$("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Xp),ke.init(t,e)}),cc=$("$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=rc(n))}else e.pattern??(e.pattern=rc());ke.init(t,e)}),uc=$("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Yp),ke.init(t,e)}),lc=$("$ZodURL",(t,e)=>{ke.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:af.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})}}}),dc=$("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=ef()),ke.init(t,e)}),pc=$("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Jp),ke.init(t,e)}),fc=$("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Hp),ke.init(t,e)}),mc=$("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Wp),ke.init(t,e)}),hc=$("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Gp),ke.init(t,e)}),gc=$("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Bp),ke.init(t,e)}),yc=$("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Kp),ke.init(t,e)}),Hf=$("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=ff(e)),ke.init(t,e)}),Wf=$("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=lf),ke.init(t,e)}),Gf=$("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=pf(e)),ke.init(t,e)}),Bf=$("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Qp),ke.init(t,e)}),_c=$("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=tf),ke.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),vc=$("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=rf),ke.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})}}}),xc=$("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=nf),ke.init(t,e)}),bc=$("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=of),ke.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 Kf(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var wc=$("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=sf),ke.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Kf(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function Hx(t){if(!nc.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Kf(r)}var $c=$("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=nc),ke.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{Hx(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),kc=$("$ZodE164",(t,e)=>{e.pattern??(e.pattern=cf),ke.init(t,e)});function Wx(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 Sc=$("$ZodJWT",(t,e)=>{ke.init(t,e),t._zod.check=r=>{Wx(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var Ls=$("$ZodNumber",(t,e)=>{xe.init(t,e),t._zod.pattern=t._zod.bag.pattern??gf,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}}),Tc=$("$ZodNumber",(t,e)=>{$f.init(t,e),Ls.init(t,e)}),zc=$("$ZodBoolean",(t,e)=>{xe.init(t,e),t._zod.pattern=yf,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 Ec=$("$ZodNull",(t,e)=>{xe.init(t,e),t._zod.pattern=_f,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 Pc=$("$ZodUnknown",(t,e)=>{xe.init(t,e),t._zod.parse=r=>r}),Ic=$("$ZodNever",(t,e)=>{xe.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function Nf(t,e,r){t.issues.length&&e.issues.push(...Kt(r,t.issues)),e.value[r]=t.value}var Rc=$("$ZodArray",(t,e)=>{xe.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=>Nf(u,r,i))):Nf(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function qs(t,e,r){t.issues.length&&e.issues.push(...Kt(r,t.issues)),e.value[r]=t.value}function jf(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(...Kt(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var Fs=$("$ZodObject",(t,e)=>{xe.init(t,e);let r=go(()=>{let d=Object.keys(e.shape);for(let y of d)if(!(e.shape[y]instanceof xe))throw new Error(`Invalid element at key "${y}": expected a Zod schema`);let m=Ha(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(m)}});$e(t._zod,"propValues",()=>{let d=e.shape,m={};for(let y in d){let f=d[y]._zod;if(f.values){m[y]??(m[y]=new Set);for(let h of f.values)m[y].add(h)}}return m});let n=d=>{let m=new Ds(["shape","payload","ctx"]),y=r.value,f=g=>{let v=en(g);return`shape[${v}]._zod.run({ value: input[${v}], issues: [] }, ctx)`};m.write("const input = payload.value;");let h=Object.create(null),_=0;for(let g of y.keys)h[g]=`key_${_++}`;m.write("const newResult = {}");for(let g of y.keys)if(y.optionalKeys.has(g)){let v=h[g];m.write(`const ${v} = ${f(g)};`);let x=en(g);m.write(`
12
- if (${v}.issues.length) {
13
- if (input[${x}] === undefined) {
14
- if (${x} in input) {
15
- newResult[${x}] = undefined;
11
+ `))}};var jf={major:4,minor:0,patch:0};var we=w("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=jf;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=tn(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,f=l._zod.check(s);if(f instanceof Promise&&a?.async===!1)throw new ar;if(u||f instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await f,s.issues.length!==d&&(c||(c=tn(s,d)))});else{if(s.issues.length===d)continue;c||(c=tn(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 ar;return a.then(c=>o(c,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=rn(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return nn(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),To=w("$ZodString",(t,e)=>{we.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??gf(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}}),Te=w("$ZodStringFormat",(t,e)=>{So.init(t,e),To.init(t,e)}),dc=w("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=ef),Te.init(t,e)}),pc=w("$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=ic(n))}else e.pattern??(e.pattern=ic());Te.init(t,e)}),fc=w("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=tf),Te.init(t,e)}),mc=w("$ZodURL",(t,e)=>{Te.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:uf.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})}}}),hc=w("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=rf()),Te.init(t,e)}),gc=w("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Xp),Te.init(t,e)}),yc=w("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Gp),Te.init(t,e)}),_c=w("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Bp),Te.init(t,e)}),vc=w("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Jp),Te.init(t,e)}),xc=w("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Kp),Te.init(t,e)}),bc=w("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Qp),Te.init(t,e)}),Gf=w("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=hf(e)),Te.init(t,e)}),Bf=w("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=pf),Te.init(t,e)}),Jf=w("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=mf(e)),Te.init(t,e)}),Kf=w("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Yp),Te.init(t,e)}),wc=w("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=nf),Te.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),$c=w("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=of),Te.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})}}}),kc=w("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=sf),Te.init(t,e)}),Sc=w("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=af),Te.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 Qf(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var Tc=w("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=cf),Te.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Qf(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function Qx(t){if(!ac.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Qf(r)}var zc=w("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=ac),Te.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{Qx(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),Ec=w("$ZodE164",(t,e)=>{e.pattern??(e.pattern=lf),Te.init(t,e)});function Xx(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 Pc=w("$ZodJWT",(t,e)=>{Te.init(t,e),t._zod.check=r=>{Xx(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var Hs=w("$ZodNumber",(t,e)=>{we.init(t,e),t._zod.pattern=t._zod.bag.pattern??_f,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}}),Ic=w("$ZodNumber",(t,e)=>{Sf.init(t,e),Hs.init(t,e)}),Rc=w("$ZodBoolean",(t,e)=>{we.init(t,e),t._zod.pattern=vf,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 Oc=w("$ZodNull",(t,e)=>{we.init(t,e),t._zod.pattern=xf,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 Mc=w("$ZodUnknown",(t,e)=>{we.init(t,e),t._zod.parse=r=>r}),Cc=w("$ZodNever",(t,e)=>{we.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function Zf(t,e,r){t.issues.length&&e.issues.push(...Jt(r,t.issues)),e.value[r]=t.value}var Ac=w("$ZodArray",(t,e)=>{we.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=>Zf(u,r,i))):Zf(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function Vs(t,e,r){t.issues.length&&e.issues.push(...Jt(r,t.issues)),e.value[r]=t.value}function Df(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(...Jt(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var Ws=w("$ZodObject",(t,e)=>{we.init(t,e);let r=xo(()=>{let d=Object.keys(e.shape);for(let y of d)if(!(e.shape[y]instanceof we))throw new Error(`Invalid element at key "${y}": expected a Zod schema`);let f=Ja(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(f)}});Se(t._zod,"propValues",()=>{let d=e.shape,f={};for(let y in d){let p=d[y]._zod;if(p.values){f[y]??(f[y]=new Set);for(let g of p.values)f[y].add(g)}}return f});let n=d=>{let f=new Us(["shape","payload","ctx"]),y=r.value,p=$=>{let S=en($);return`shape[${S}]._zod.run({ value: input[${S}], issues: [] }, ctx)`};f.write("const input = payload.value;");let g=Object.create(null),h=0;for(let $ of y.keys)g[$]=`key_${h++}`;f.write("const newResult = {}");for(let $ of y.keys)if(y.optionalKeys.has($)){let S=g[$];f.write(`const ${S} = ${p($)};`);let m=en($);f.write(`
12
+ if (${S}.issues.length) {
13
+ if (input[${m}] === undefined) {
14
+ if (${m} in input) {
15
+ newResult[${m}] = undefined;
16
16
  }
17
17
  } else {
18
18
  payload.issues = payload.issues.concat(
19
- ${v}.issues.map((iss) => ({
19
+ ${S}.issues.map((iss) => ({
20
20
  ...iss,
21
- path: iss.path ? [${x}, ...iss.path] : [${x}],
21
+ path: iss.path ? [${m}, ...iss.path] : [${m}],
22
22
  }))
23
23
  );
24
24
  }
25
- } else if (${v}.value === undefined) {
26
- if (${x} in input) newResult[${x}] = undefined;
25
+ } else if (${S}.value === undefined) {
26
+ if (${m} in input) newResult[${m}] = undefined;
27
27
  } else {
28
- newResult[${x}] = ${v}.value;
28
+ newResult[${m}] = ${S}.value;
29
29
  }
30
- `)}else{let v=h[g];m.write(`const ${v} = ${f(g)};`),m.write(`
31
- if (${v}.issues.length) payload.issues = payload.issues.concat(${v}.issues.map(iss => ({
30
+ `)}else{let S=g[$];f.write(`const ${S} = ${p($)};`),f.write(`
31
+ if (${S}.issues.length) payload.issues = payload.issues.concat(${S}.issues.map(iss => ({
32
32
  ...iss,
33
- path: iss.path ? [${en(g)}, ...iss.path] : [${en(g)}]
34
- })));`),m.write(`newResult[${en(g)}] = ${v}.value`)}m.write("payload.value = newResult;"),m.write("return payload;");let p=m.compile();return(g,v)=>p(d,g,v)},o,s=In,i=!Os.jitless,c=i&&Ua.value,u=e.catchall,l;t._zod.parse=(d,m)=>{l??(l=r.value);let y=d.value;if(!s(y))return d.issues.push({expected:"object",code:"invalid_type",input:y,inst:t}),d;let f=[];if(i&&c&&m?.async===!1&&m.jitless!==!0)o||(o=n(e.shape)),d=o(d,m);else{d.value={};let v=l.shape;for(let x of l.keys){let b=v[x],S=b._zod.run({value:y[x],issues:[]},m),E=b._zod.optin==="optional"&&b._zod.optout==="optional";S instanceof Promise?f.push(S.then(F=>E?jf(F,d,x,y):qs(F,d,x))):E?jf(S,d,x,y):qs(S,d,x)}}if(!u)return f.length?Promise.all(f).then(()=>d):d;let h=[],_=l.keySet,p=u._zod,g=p.def.type;for(let v of Object.keys(y)){if(_.has(v))continue;if(g==="never"){h.push(v);continue}let x=p.run({value:y[v],issues:[]},m);x instanceof Promise?f.push(x.then(b=>qs(b,d,v))):qs(x,d,v)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:y,inst:t}),f.length?Promise.all(f).then(()=>d):d}});function Zf(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=>Mt(s,n,gt())))}),e}var Us=$("$ZodUnion",(t,e)=>{xe.init(t,e),$e(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),$e(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),$e(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),$e(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=>_o(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=>Zf(i,r,t,n)):Zf(s,r,t,n)}}),Mc=$("$ZodDiscriminatedUnion",(t,e)=>{Us.init(t,e);let r=t._zod.parse;$e(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=go(()=>{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(!In(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)}}),Oc=$("$ZodIntersection",(t,e)=>{xe.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])=>Df(r,c,u)):Df(r,s,i)}});function ic(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(Rn(t)&&Rn(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=ic(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=ic(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 Df(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),tn(t))return t;let n=ic(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 Ac=$("$ZodRecord",(t,e)=>{xe.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!Rn(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(...Kt(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...Kt(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=>Mt(u,n,gt())),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(...Kt(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...Kt(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}});var Cc=$("$ZodEnum",(t,e)=>{xe.init(t,e);let r=ho(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Va.has(typeof n)).map(n=>typeof n=="string"?_r(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}}),Nc=$("$ZodLiteral",(t,e)=>{xe.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?_r(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 jc=$("$ZodTransform",(t,e)=>{xe.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 ar;return r.value=o,r}}),Zc=$("$ZodOptional",(t,e)=>{xe.init(t,e),t._zod.optin="optional",t._zod.optout="optional",$e(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),$e(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${_o(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)}),Dc=$("$ZodNullable",(t,e)=>{xe.init(t,e),$e(t._zod,"optin",()=>e.innerType._zod.optin),$e(t._zod,"optout",()=>e.innerType._zod.optout),$e(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${_o(r.source)}|null)$`):void 0}),$e(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)}),qc=$("$ZodDefault",(t,e)=>{xe.init(t,e),t._zod.optin="optional",$e(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=>qf(s,e)):qf(o,e)}});function qf(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Lc=$("$ZodPrefault",(t,e)=>{xe.init(t,e),t._zod.optin="optional",$e(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))}),Fc=$("$ZodNonOptional",(t,e)=>{xe.init(t,e),$e(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=>Lf(s,t)):Lf(o,t)}});function Lf(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 Uc=$("$ZodCatch",(t,e)=>{xe.init(t,e),t._zod.optin="optional",$e(t._zod,"optout",()=>e.innerType._zod.optout),$e(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=>Mt(i,n,gt()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>Mt(s,n,gt()))},input:r.value}),r.issues=[]),r)}});var Vc=$("$ZodPipe",(t,e)=>{xe.init(t,e),$e(t._zod,"values",()=>e.in._zod.values),$e(t._zod,"optin",()=>e.in._zod.optin),$e(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=>Ff(s,e,n)):Ff(o,e,n)}});function Ff(t,e,r){return tn(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Hc=$("$ZodReadonly",(t,e)=>{xe.init(t,e),$e(t._zod,"propValues",()=>e.innerType._zod.propValues),$e(t._zod,"values",()=>e.innerType._zod.values),$e(t._zod,"optin",()=>e.innerType._zod.optin),$e(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(Uf):Uf(o)}});function Uf(t){return t.value=Object.freeze(t.value),t}var Wc=$("$ZodCustom",(t,e)=>{Ue.init(t,e),xe.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=>Vf(s,r,n,t));Vf(o,r,n,t)}});function Vf(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(Ga(o))}}var Gx=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},Bx=()=>{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 ${Gx(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${Ns(n.values[0])}`:`Invalid option: expected one of ${As(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":""}: ${As(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 Jf(){return{localeError:Bx()}}var Kx=Symbol("ZodOutput"),Jx=Symbol("ZodInput"),$o=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 Qf(){return new $o}var vr=Qf();function Gc(t,e){return new t({type:"string",...H(e)})}function Bc(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...H(e)})}function Vs(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...H(e)})}function Kc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...H(e)})}function Jc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...H(e)})}function Qc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...H(e)})}function Xc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...H(e)})}function Yc(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...H(e)})}function eu(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...H(e)})}function tu(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...H(e)})}function ru(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...H(e)})}function nu(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...H(e)})}function ou(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...H(e)})}function su(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...H(e)})}function iu(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...H(e)})}function au(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...H(e)})}function cu(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...H(e)})}function uu(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...H(e)})}function lu(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...H(e)})}function du(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...H(e)})}function pu(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...H(e)})}function fu(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...H(e)})}function mu(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...H(e)})}function Xf(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...H(e)})}function Yf(t,e){return new t({type:"string",format:"date",check:"string_format",...H(e)})}function em(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...H(e)})}function tm(t,e){return new t({type:"string",format:"duration",check:"string_format",...H(e)})}function hu(t,e){return new t({type:"number",checks:[],...H(e)})}function gu(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...H(e)})}function yu(t,e){return new t({type:"boolean",...H(e)})}function _u(t,e){return new t({type:"null",...H(e)})}function vu(t){return new t({type:"unknown"})}function xu(t,e){return new t({type:"never",...H(e)})}function Hs(t,e){return new oc({check:"less_than",...H(e),value:t,inclusive:!1})}function ko(t,e){return new oc({check:"less_than",...H(e),value:t,inclusive:!0})}function Ws(t,e){return new sc({check:"greater_than",...H(e),value:t,inclusive:!1})}function So(t,e){return new sc({check:"greater_than",...H(e),value:t,inclusive:!0})}function Gs(t,e){return new wf({check:"multiple_of",...H(e),value:t})}function Bs(t,e){return new kf({check:"max_length",...H(e),maximum:t})}function Mn(t,e){return new Sf({check:"min_length",...H(e),minimum:t})}function Ks(t,e){return new Tf({check:"length_equals",...H(e),length:t})}function bu(t,e){return new zf({check:"string_format",format:"regex",...H(e),pattern:t})}function wu(t){return new Ef({check:"string_format",format:"lowercase",...H(t)})}function $u(t){return new Pf({check:"string_format",format:"uppercase",...H(t)})}function ku(t,e){return new If({check:"string_format",format:"includes",...H(e),includes:t})}function Su(t,e){return new Rf({check:"string_format",format:"starts_with",...H(e),prefix:t})}function Tu(t,e){return new Mf({check:"string_format",format:"ends_with",...H(e),suffix:t})}function on(t){return new Of({check:"overwrite",tx:t})}function zu(t){return on(e=>e.normalize(t))}function Eu(){return on(t=>t.trim())}function Pu(){return on(t=>t.toLowerCase())}function Iu(){return on(t=>t.toUpperCase())}function rm(t,e,r){return new t({type:"array",element:e,...H(r)})}function Ru(t,e,r){let n=H(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function Mu(t,e,r){return new t({type:"custom",check:"custom",fn:e,...H(r)})}var Js=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??vr,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},m=e._zod.parent;if(m)a.ref=m,this.process(m,d),this.seen.get(m).isParent=!0;else{let y=a.schema;switch(o.type){case"string":{let f=y;f.type="string";let{minimum:h,maximum:_,format:p,patterns:g,contentEncoding:v}=e._zod.bag;if(typeof h=="number"&&(f.minLength=h),typeof _=="number"&&(f.maxLength=_),p&&(f.format=s[p]??p,f.format===""&&delete f.format),v&&(f.contentEncoding=v),g&&g.size>0){let x=[...g];x.length===1?f.pattern=x[0].source:x.length>1&&(a.schema.allOf=[...x.map(b=>({...this.target==="draft-7"?{type:"string"}:{},pattern:b.source}))])}break}case"number":{let f=y,{minimum:h,maximum:_,format:p,multipleOf:g,exclusiveMaximum:v,exclusiveMinimum:x}=e._zod.bag;typeof p=="string"&&p.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 _=="number"&&(f.maximum=_,typeof v=="number"&&(v<=_?delete f.maximum:delete f.exclusiveMaximum)),typeof g=="number"&&(f.multipleOf=g);break}case"boolean":{let f=y;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":{y.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":{y.not={};break}case"date":{if(this.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema");break}case"array":{let f=y,{minimum:h,maximum:_}=e._zod.bag;typeof h=="number"&&(f.minItems=h),typeof _=="number"&&(f.maxItems=_),f.type="array",f.items=this.process(o.element,{...d,path:[...d.path,"items"]});break}case"object":{let f=y;f.type="object",f.properties={};let h=o.shape;for(let g in h)f.properties[g]=this.process(h[g],{...d,path:[...d.path,"properties",g]});let _=new Set(Object.keys(h)),p=new Set([..._].filter(g=>{let v=o.shape[g]._zod;return this.io==="input"?v.optin===void 0:v.optout===void 0}));p.size>0&&(f.required=Array.from(p)),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=y;f.anyOf=o.options.map((h,_)=>this.process(h,{...d,path:[...d.path,"anyOf",_]}));break}case"intersection":{let f=y,h=this.process(o.left,{...d,path:[...d.path,"allOf",0]}),_=this.process(o.right,{...d,path:[...d.path,"allOf",1]}),p=v=>"allOf"in v&&Object.keys(v).length===1,g=[...p(h)?h.allOf:[h],...p(_)?_.allOf:[_]];f.allOf=g;break}case"tuple":{let f=y;f.type="array";let h=o.items.map((g,v)=>this.process(g,{...d,path:[...d.path,"prefixItems",v]}));if(this.target==="draft-2020-12"?f.prefixItems=h:f.items=h,o.rest){let g=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?f.items=g:f.additionalItems=g}o.rest&&(f.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:_,maximum:p}=e._zod.bag;typeof _=="number"&&(f.minItems=_),typeof p=="number"&&(f.maxItems=p);break}case"record":{let f=y;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=y,h=ho(o.entries);h.every(_=>typeof _=="number")&&(f.type="number"),h.every(_=>typeof _=="string")&&(f.type="string"),f.enum=h;break}case"literal":{let f=y,h=[];for(let _ of o.values)if(_===void 0){if(this.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof _=="bigint"){if(this.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");h.push(Number(_))}else h.push(_);if(h.length!==0)if(h.length===1){let _=h[0];f.type=_===null?"null":typeof _,f.const=_}else h.every(_=>typeof _=="number")&&(f.type="number"),h.every(_=>typeof _=="string")&&(f.type="string"),h.every(_=>typeof _=="boolean")&&(f.type="string"),h.every(_=>_===null)&&(f.type="null"),f.enum=h;break}case"file":{let f=y,h={type:"string",format:"binary",contentEncoding:"binary"},{minimum:_,maximum:p,mime:g}=e._zod.bag;_!==void 0&&(h.minLength=_),p!==void 0&&(h.maxLength=p),g?g.length===1?(h.contentMediaType=g[0],Object.assign(f,h)):f.anyOf=g.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);y.anyOf=[f,{type:"null"}];break}case"nonoptional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"success":{let f=y;f.type="boolean";break}case"default":{this.process(o.innerType,d),a.ref=o.innerType,y.default=JSON.parse(JSON.stringify(o.defaultValue));break}case"prefault":{this.process(o.innerType,d),a.ref=o.innerType,this.io==="input"&&(y._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")}y.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=y,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,y.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"&&De(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,_=n.external.uri??(g=>g);if(h)return{ref:_(h)};let p=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=p,{defId:p,ref:`${_("__shared")}#/${d}/${p}`}}if(l[1]===o)return{ref:"#"};let y=`#/${d}/`,f=l[1].schema.id??`__schema${this.counter++}`;return{defId:f,ref:y+f}},i=l=>{if(l[1].schema.$ref)return;let d=l[1],{ref:m,defId:y}=s(l);d.def={...d.schema},y&&(d.defId=y);let f=d.schema;for(let h in f)delete f[h];f.$ref=m};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 ? [${en($)}, ...iss.path] : [${en($)}]
34
+ })));`),f.write(`newResult[${en($)}] = ${S}.value`)}f.write("payload.value = newResult;"),f.write("return payload;");let _=f.compile();return($,S)=>_(d,$,S)},o,s=Pn,i=!js.jitless,c=i&&Ga.value,u=e.catchall,l;t._zod.parse=(d,f)=>{l??(l=r.value);let y=d.value;if(!s(y))return d.issues.push({expected:"object",code:"invalid_type",input:y,inst:t}),d;let p=[];if(i&&c&&f?.async===!1&&f.jitless!==!0)o||(o=n(e.shape)),d=o(d,f);else{d.value={};let S=l.shape;for(let m of l.keys){let v=S[m],k=v._zod.run({value:y[m],issues:[]},f),T=v._zod.optin==="optional"&&v._zod.optout==="optional";k instanceof Promise?p.push(k.then(z=>T?Df(z,d,m,y):Vs(z,d,m))):T?Df(k,d,m,y):Vs(k,d,m)}}if(!u)return p.length?Promise.all(p).then(()=>d):d;let g=[],h=l.keySet,_=u._zod,$=_.def.type;for(let S of Object.keys(y)){if(h.has(S))continue;if($==="never"){g.push(S);continue}let m=_.run({value:y[S],issues:[]},f);m instanceof Promise?p.push(m.then(v=>Vs(v,d,S))):Vs(m,d,S)}return g.length&&d.issues.push({code:"unrecognized_keys",keys:g,input:y,inst:t}),p.length?Promise.all(p).then(()=>d):d}});function qf(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=>Ct(s,n,yt())))}),e}var Gs=w("$ZodUnion",(t,e)=>{we.init(t,e),Se(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),Se(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),Se(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),Se(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=>wo(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=>qf(i,r,t,n)):qf(s,r,t,n)}}),Nc=w("$ZodDiscriminatedUnion",(t,e)=>{Gs.init(t,e);let r=t._zod.parse;Se(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=xo(()=>{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(!Pn(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)}}),jc=w("$ZodIntersection",(t,e)=>{we.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])=>Lf(r,c,u)):Lf(r,s,i)}});function lc(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(In(t)&&In(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=lc(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=lc(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 Lf(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),tn(t))return t;let n=lc(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 Zc=w("$ZodRecord",(t,e)=>{we.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!In(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(...Jt(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...Jt(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=>Ct(u,n,yt())),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(...Jt(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...Jt(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}});var Dc=w("$ZodEnum",(t,e)=>{we.init(t,e);let r=vo(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Ba.has(typeof n)).map(n=>typeof n=="string"?vr(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}}),qc=w("$ZodLiteral",(t,e)=>{we.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?vr(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 Lc=w("$ZodTransform",(t,e)=>{we.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 ar;return r.value=o,r}}),Fc=w("$ZodOptional",(t,e)=>{we.init(t,e),t._zod.optin="optional",t._zod.optout="optional",Se(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),Se(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${wo(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)}),Uc=w("$ZodNullable",(t,e)=>{we.init(t,e),Se(t._zod,"optin",()=>e.innerType._zod.optin),Se(t._zod,"optout",()=>e.innerType._zod.optout),Se(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${wo(r.source)}|null)$`):void 0}),Se(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)}),Vc=w("$ZodDefault",(t,e)=>{we.init(t,e),t._zod.optin="optional",Se(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=>Ff(s,e)):Ff(o,e)}});function Ff(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Hc=w("$ZodPrefault",(t,e)=>{we.init(t,e),t._zod.optin="optional",Se(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))}),Wc=w("$ZodNonOptional",(t,e)=>{we.init(t,e),Se(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=>Uf(s,t)):Uf(o,t)}});function Uf(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 Gc=w("$ZodCatch",(t,e)=>{we.init(t,e),t._zod.optin="optional",Se(t._zod,"optout",()=>e.innerType._zod.optout),Se(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=>Ct(i,n,yt()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>Ct(s,n,yt()))},input:r.value}),r.issues=[]),r)}});var Bc=w("$ZodPipe",(t,e)=>{we.init(t,e),Se(t._zod,"values",()=>e.in._zod.values),Se(t._zod,"optin",()=>e.in._zod.optin),Se(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=>Vf(s,e,n)):Vf(o,e,n)}});function Vf(t,e,r){return tn(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Jc=w("$ZodReadonly",(t,e)=>{we.init(t,e),Se(t._zod,"propValues",()=>e.innerType._zod.propValues),Se(t._zod,"values",()=>e.innerType._zod.values),Se(t._zod,"optin",()=>e.innerType._zod.optin),Se(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(Hf):Hf(o)}});function Hf(t){return t.value=Object.freeze(t.value),t}var Kc=w("$ZodCustom",(t,e)=>{He.init(t,e),we.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=>Wf(s,r,n,t));Wf(o,r,n,t)}});function Wf(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(Qa(o))}}var Yx=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},eb=()=>{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 ${Yx(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${qs(n.values[0])}`:`Invalid option: expected one of ${Zs(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":""}: ${Zs(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 Xf(){return{localeError:eb()}}var tb=Symbol("ZodOutput"),rb=Symbol("ZodInput"),zo=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 Yf(){return new zo}var xr=Yf();function Qc(t,e){return new t({type:"string",...J(e)})}function Xc(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...J(e)})}function Bs(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...J(e)})}function Yc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...J(e)})}function eu(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...J(e)})}function tu(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...J(e)})}function ru(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...J(e)})}function nu(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...J(e)})}function ou(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...J(e)})}function su(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...J(e)})}function iu(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...J(e)})}function au(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...J(e)})}function cu(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...J(e)})}function uu(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...J(e)})}function lu(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...J(e)})}function du(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...J(e)})}function pu(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...J(e)})}function fu(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...J(e)})}function mu(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...J(e)})}function hu(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...J(e)})}function gu(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...J(e)})}function yu(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...J(e)})}function _u(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...J(e)})}function em(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...J(e)})}function tm(t,e){return new t({type:"string",format:"date",check:"string_format",...J(e)})}function rm(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...J(e)})}function nm(t,e){return new t({type:"string",format:"duration",check:"string_format",...J(e)})}function vu(t,e){return new t({type:"number",checks:[],...J(e)})}function xu(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...J(e)})}function bu(t,e){return new t({type:"boolean",...J(e)})}function wu(t,e){return new t({type:"null",...J(e)})}function $u(t){return new t({type:"unknown"})}function ku(t,e){return new t({type:"never",...J(e)})}function Js(t,e){return new cc({check:"less_than",...J(e),value:t,inclusive:!1})}function Eo(t,e){return new cc({check:"less_than",...J(e),value:t,inclusive:!0})}function Ks(t,e){return new uc({check:"greater_than",...J(e),value:t,inclusive:!1})}function Po(t,e){return new uc({check:"greater_than",...J(e),value:t,inclusive:!0})}function Qs(t,e){return new kf({check:"multiple_of",...J(e),value:t})}function Xs(t,e){return new Tf({check:"max_length",...J(e),maximum:t})}function Rn(t,e){return new zf({check:"min_length",...J(e),minimum:t})}function Ys(t,e){return new Ef({check:"length_equals",...J(e),length:t})}function Su(t,e){return new Pf({check:"string_format",format:"regex",...J(e),pattern:t})}function Tu(t){return new If({check:"string_format",format:"lowercase",...J(t)})}function zu(t){return new Rf({check:"string_format",format:"uppercase",...J(t)})}function Eu(t,e){return new Of({check:"string_format",format:"includes",...J(e),includes:t})}function Pu(t,e){return new Mf({check:"string_format",format:"starts_with",...J(e),prefix:t})}function Iu(t,e){return new Cf({check:"string_format",format:"ends_with",...J(e),suffix:t})}function on(t){return new Af({check:"overwrite",tx:t})}function Ru(t){return on(e=>e.normalize(t))}function Ou(){return on(t=>t.trim())}function Mu(){return on(t=>t.toLowerCase())}function Cu(){return on(t=>t.toUpperCase())}function om(t,e,r){return new t({type:"array",element:e,...J(r)})}function Au(t,e,r){let n=J(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function Nu(t,e,r){return new t({type:"custom",check:"custom",fn:e,...J(r)})}var ei=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??xr,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},f=e._zod.parent;if(f)a.ref=f,this.process(f,d),this.seen.get(f).isParent=!0;else{let y=a.schema;switch(o.type){case"string":{let p=y;p.type="string";let{minimum:g,maximum:h,format:_,patterns:$,contentEncoding:S}=e._zod.bag;if(typeof g=="number"&&(p.minLength=g),typeof h=="number"&&(p.maxLength=h),_&&(p.format=s[_]??_,p.format===""&&delete p.format),S&&(p.contentEncoding=S),$&&$.size>0){let m=[...$];m.length===1?p.pattern=m[0].source:m.length>1&&(a.schema.allOf=[...m.map(v=>({...this.target==="draft-7"?{type:"string"}:{},pattern:v.source}))])}break}case"number":{let p=y,{minimum:g,maximum:h,format:_,multipleOf:$,exclusiveMaximum:S,exclusiveMinimum:m}=e._zod.bag;typeof _=="string"&&_.includes("int")?p.type="integer":p.type="number",typeof m=="number"&&(p.exclusiveMinimum=m),typeof g=="number"&&(p.minimum=g,typeof m=="number"&&(m>=g?delete p.minimum:delete p.exclusiveMinimum)),typeof S=="number"&&(p.exclusiveMaximum=S),typeof h=="number"&&(p.maximum=h,typeof S=="number"&&(S<=h?delete p.maximum:delete p.exclusiveMaximum)),typeof $=="number"&&(p.multipleOf=$);break}case"boolean":{let p=y;p.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":{y.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":{y.not={};break}case"date":{if(this.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema");break}case"array":{let p=y,{minimum:g,maximum:h}=e._zod.bag;typeof g=="number"&&(p.minItems=g),typeof h=="number"&&(p.maxItems=h),p.type="array",p.items=this.process(o.element,{...d,path:[...d.path,"items"]});break}case"object":{let p=y;p.type="object",p.properties={};let g=o.shape;for(let $ in g)p.properties[$]=this.process(g[$],{...d,path:[...d.path,"properties",$]});let h=new Set(Object.keys(g)),_=new Set([...h].filter($=>{let S=o.shape[$]._zod;return this.io==="input"?S.optin===void 0:S.optout===void 0}));_.size>0&&(p.required=Array.from(_)),o.catchall?._zod.def.type==="never"?p.additionalProperties=!1:o.catchall?o.catchall&&(p.additionalProperties=this.process(o.catchall,{...d,path:[...d.path,"additionalProperties"]})):this.io==="output"&&(p.additionalProperties=!1);break}case"union":{let p=y;p.anyOf=o.options.map((g,h)=>this.process(g,{...d,path:[...d.path,"anyOf",h]}));break}case"intersection":{let p=y,g=this.process(o.left,{...d,path:[...d.path,"allOf",0]}),h=this.process(o.right,{...d,path:[...d.path,"allOf",1]}),_=S=>"allOf"in S&&Object.keys(S).length===1,$=[..._(g)?g.allOf:[g],..._(h)?h.allOf:[h]];p.allOf=$;break}case"tuple":{let p=y;p.type="array";let g=o.items.map(($,S)=>this.process($,{...d,path:[...d.path,"prefixItems",S]}));if(this.target==="draft-2020-12"?p.prefixItems=g:p.items=g,o.rest){let $=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?p.items=$:p.additionalItems=$}o.rest&&(p.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:h,maximum:_}=e._zod.bag;typeof h=="number"&&(p.minItems=h),typeof _=="number"&&(p.maxItems=_);break}case"record":{let p=y;p.type="object",p.propertyNames=this.process(o.keyType,{...d,path:[...d.path,"propertyNames"]}),p.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 p=y,g=vo(o.entries);g.every(h=>typeof h=="number")&&(p.type="number"),g.every(h=>typeof h=="string")&&(p.type="string"),p.enum=g;break}case"literal":{let p=y,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];p.type=h===null?"null":typeof h,p.const=h}else g.every(h=>typeof h=="number")&&(p.type="number"),g.every(h=>typeof h=="string")&&(p.type="string"),g.every(h=>typeof h=="boolean")&&(p.type="string"),g.every(h=>h===null)&&(p.type="null"),p.enum=g;break}case"file":{let p=y,g={type:"string",format:"binary",contentEncoding:"binary"},{minimum:h,maximum:_,mime:$}=e._zod.bag;h!==void 0&&(g.minLength=h),_!==void 0&&(g.maxLength=_),$?$.length===1?(g.contentMediaType=$[0],Object.assign(p,g)):p.anyOf=$.map(S=>({...g,contentMediaType:S})):Object.assign(p,g);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let p=this.process(o.innerType,d);y.anyOf=[p,{type:"null"}];break}case"nonoptional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"success":{let p=y;p.type="boolean";break}case"default":{this.process(o.innerType,d),a.ref=o.innerType,y.default=JSON.parse(JSON.stringify(o.defaultValue));break}case"prefault":{this.process(o.innerType,d),a.ref=o.innerType,this.io==="input"&&(y._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break}case"catch":{this.process(o.innerType,d),a.ref=o.innerType;let p;try{p=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}y.default=p;break}case"nan":{if(this.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{let p=y,g=e._zod.pattern;if(!g)throw new Error("Pattern not found in template literal");p.type="string",p.pattern=g.source;break}case"pipe":{let p=this.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;this.process(p,d),a.ref=p;break}case"readonly":{this.process(o.innerType,d),a.ref=o.innerType,y.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 p=e._zod.innerType;this.process(p,d),a.ref=p;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"&&Le(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??($=>$);if(g)return{ref:h(g)};let _=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=_,{defId:_,ref:`${h("__shared")}#/${d}/${_}`}}if(l[1]===o)return{ref:"#"};let y=`#/${d}/`,p=l[1].schema.id??`__schema${this.counter++}`;return{defId:p,ref:y+p}},i=l=>{if(l[1].schema.$ref)return;let d=l[1],{ref:f,defId:y}=s(l);d.def={...d.schema},y&&(d.defId=y);let p=d.schema;for(let g in p)delete p[g];p.$ref=f};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 y=n.external.registry.get(l[0])?.id;if(e!==l[0]&&y){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 m=this.seen.get(l),y=m.def??m.schema,f={...y};if(m.ref===null)return;let h=m.ref;if(m.ref=null,h){a(h,d);let _=this.seen.get(h).schema;_.$ref&&d.target==="draft-7"?(y.allOf=y.allOf??[],y.allOf.push(_)):(Object.assign(y,_),Object.assign(y,f))}m.isParent||this.override({zodSchema:l,jsonSchema:y,path:m.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 Ou(t,e){if(t instanceof $o){let n=new Js(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 Js(e);return r.process(t),r.emit(t,e)}function De(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 De(o.element,r);case"object":{for(let s in o.shape)if(De(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(De(s,r))return!0;return!1}case"intersection":return De(o.left,r)||De(o.right,r);case"tuple":{for(let s of o.items)if(De(s,r))return!0;return!!(o.rest&&De(o.rest,r))}case"record":return De(o.keyType,r)||De(o.valueType,r);case"map":return De(o.keyType,r)||De(o.valueType,r);case"set":return De(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return De(o.innerType,r);case"lazy":return De(o.getter(),r);case"default":return De(o.innerType,r);case"prefault":return De(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return De(o.in,r)||De(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var Rb=$("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");xe.init(t,e),t.def=e,t.parse=(r,n)=>Qa(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>rn(t,r,n),t.parseAsync=async(r,n)=>Ya(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>nn(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)=>yt(t,r,n),t.brand=()=>t,t.register=(r,n)=>(r.add(t,n),t)});var Mb=$("ZodMiniObject",(t,e)=>{Fs.init(t,e),Rb.init(t,e),ie.defineLazy(t,"shape",()=>e.shape)});function Au(t,e){let r={type:"object",get shape(){return ie.assignProp(this,"shape",{...t}),this.shape},...ie.normalizeParams(e)};return new Mb(r)}function $t(t){return!!t._zod}function an(t){let e=Object.values(t);if(e.length===0)return Au({});let r=e.every($t),n=e.every(o=>!$t(o));if(r)return Au(t);if(n)return ja(t);throw new Error("Mixed Zod versions detected in object shape.")}function xr(t,e){return $t(t)?rn(t,e):t.safeParse(e)}async function Qs(t,e){return $t(t)?await nn(t,e):await t.safeParseAsync(e)}function br(t){if(!t)return;let e;if($t(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function On(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 an(t)}}if($t(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 Xs(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 om(t){return t.description}function sm(t){if($t(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function Ys(t){if($t(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 To={};zs(To,{ZodISODate:()=>am,ZodISODateTime:()=>im,ZodISODuration:()=>um,ZodISOTime:()=>cm,date:()=>Nu,datetime:()=>Cu,duration:()=>Zu,time:()=>ju});var im=$("ZodISODateTime",(t,e)=>{Hf.init(t,e),Ee.init(t,e)});function Cu(t){return Xf(im,t)}var am=$("ZodISODate",(t,e)=>{Wf.init(t,e),Ee.init(t,e)});function Nu(t){return Yf(am,t)}var cm=$("ZodISOTime",(t,e)=>{Gf.init(t,e),Ee.init(t,e)});function ju(t){return em(cm,t)}var um=$("ZodISODuration",(t,e)=>{Bf.init(t,e),Ee.init(t,e)});function Zu(t){return tm(um,t)}var lm=(t,e)=>{js.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Ka(t,r)},flatten:{value:r=>Ba(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},LR=$("ZodError",lm),zo=$("ZodError",lm,{Parent:Error});var dm=Ja(zo),pm=Xa(zo),fm=ec(zo),mm=tc(zo);var Oe=$("ZodType",(t,e)=>(xe.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)=>yt(t,r,n),t.brand=()=>t,t.register=(r,n)=>(r.add(t,n),t),t.parse=(r,n)=>dm(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>fm(t,r,n),t.parseAsync=async(r,n)=>pm(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>mm(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(Pw(r,n)),t.superRefine=r=>t.check(Iw(r)),t.overwrite=r=>t.check(on(r)),t.optional=()=>Me(t),t.nullable=()=>ym(t),t.nullish=()=>Me(ym(t)),t.nonoptional=r=>ww(t,r),t.array=()=>ae(t),t.or=r=>Se([t,r]),t.and=r=>ti(t,r),t.transform=r=>qu(t,wm(r)),t.default=r=>vw(t,r),t.prefault=r=>bw(t,r),t.catch=r=>kw(t,r),t.pipe=r=>qu(t,r),t.readonly=()=>zw(t),t.describe=r=>{let n=t.clone();return vr.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return vr.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return vr.get(t);let n=t.clone();return vr.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),_m=$("_ZodString",(t,e)=>{wo.init(t,e),Oe.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(bu(...n)),t.includes=(...n)=>t.check(ku(...n)),t.startsWith=(...n)=>t.check(Su(...n)),t.endsWith=(...n)=>t.check(Tu(...n)),t.min=(...n)=>t.check(Mn(...n)),t.max=(...n)=>t.check(Bs(...n)),t.length=(...n)=>t.check(Ks(...n)),t.nonempty=(...n)=>t.check(Mn(1,...n)),t.lowercase=n=>t.check(wu(n)),t.uppercase=n=>t.check($u(n)),t.trim=()=>t.check(Eu()),t.normalize=(...n)=>t.check(zu(...n)),t.toLowerCase=()=>t.check(Pu()),t.toUpperCase=()=>t.check(Iu())}),Lb=$("ZodString",(t,e)=>{wo.init(t,e),_m.init(t,e),t.email=r=>t.check(Bc(Fb,r)),t.url=r=>t.check(Yc(Ub,r)),t.jwt=r=>t.check(mu(ow,r)),t.emoji=r=>t.check(eu(Vb,r)),t.guid=r=>t.check(Vs(hm,r)),t.uuid=r=>t.check(Kc(ei,r)),t.uuidv4=r=>t.check(Jc(ei,r)),t.uuidv6=r=>t.check(Qc(ei,r)),t.uuidv7=r=>t.check(Xc(ei,r)),t.nanoid=r=>t.check(tu(Hb,r)),t.guid=r=>t.check(Vs(hm,r)),t.cuid=r=>t.check(ru(Wb,r)),t.cuid2=r=>t.check(nu(Gb,r)),t.ulid=r=>t.check(ou(Bb,r)),t.base64=r=>t.check(du(tw,r)),t.base64url=r=>t.check(pu(rw,r)),t.xid=r=>t.check(su(Kb,r)),t.ksuid=r=>t.check(iu(Jb,r)),t.ipv4=r=>t.check(au(Qb,r)),t.ipv6=r=>t.check(cu(Xb,r)),t.cidrv4=r=>t.check(uu(Yb,r)),t.cidrv6=r=>t.check(lu(ew,r)),t.e164=r=>t.check(fu(nw,r)),t.datetime=r=>t.check(Cu(r)),t.date=r=>t.check(Nu(r)),t.time=r=>t.check(ju(r)),t.duration=r=>t.check(Zu(r))});function w(t){return Gc(Lb,t)}var Ee=$("ZodStringFormat",(t,e)=>{ke.init(t,e),_m.init(t,e)}),Fb=$("ZodEmail",(t,e)=>{uc.init(t,e),Ee.init(t,e)});var hm=$("ZodGUID",(t,e)=>{ac.init(t,e),Ee.init(t,e)});var ei=$("ZodUUID",(t,e)=>{cc.init(t,e),Ee.init(t,e)});var Ub=$("ZodURL",(t,e)=>{lc.init(t,e),Ee.init(t,e)});var Vb=$("ZodEmoji",(t,e)=>{dc.init(t,e),Ee.init(t,e)});var Hb=$("ZodNanoID",(t,e)=>{pc.init(t,e),Ee.init(t,e)});var Wb=$("ZodCUID",(t,e)=>{fc.init(t,e),Ee.init(t,e)});var Gb=$("ZodCUID2",(t,e)=>{mc.init(t,e),Ee.init(t,e)});var Bb=$("ZodULID",(t,e)=>{hc.init(t,e),Ee.init(t,e)});var Kb=$("ZodXID",(t,e)=>{gc.init(t,e),Ee.init(t,e)});var Jb=$("ZodKSUID",(t,e)=>{yc.init(t,e),Ee.init(t,e)});var Qb=$("ZodIPv4",(t,e)=>{_c.init(t,e),Ee.init(t,e)});var Xb=$("ZodIPv6",(t,e)=>{vc.init(t,e),Ee.init(t,e)});var Yb=$("ZodCIDRv4",(t,e)=>{xc.init(t,e),Ee.init(t,e)});var ew=$("ZodCIDRv6",(t,e)=>{bc.init(t,e),Ee.init(t,e)});var tw=$("ZodBase64",(t,e)=>{wc.init(t,e),Ee.init(t,e)});var rw=$("ZodBase64URL",(t,e)=>{$c.init(t,e),Ee.init(t,e)});var nw=$("ZodE164",(t,e)=>{kc.init(t,e),Ee.init(t,e)});var ow=$("ZodJWT",(t,e)=>{Sc.init(t,e),Ee.init(t,e)});var vm=$("ZodNumber",(t,e)=>{Ls.init(t,e),Oe.init(t,e),t.gt=(n,o)=>t.check(Ws(n,o)),t.gte=(n,o)=>t.check(So(n,o)),t.min=(n,o)=>t.check(So(n,o)),t.lt=(n,o)=>t.check(Hs(n,o)),t.lte=(n,o)=>t.check(ko(n,o)),t.max=(n,o)=>t.check(ko(n,o)),t.int=n=>t.check(gm(n)),t.safe=n=>t.check(gm(n)),t.positive=n=>t.check(Ws(0,n)),t.nonnegative=n=>t.check(So(0,n)),t.negative=n=>t.check(Hs(0,n)),t.nonpositive=n=>t.check(ko(0,n)),t.multipleOf=(n,o)=>t.check(Gs(n,o)),t.step=(n,o)=>t.check(Gs(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 _e(t){return hu(vm,t)}var sw=$("ZodNumberFormat",(t,e)=>{Tc.init(t,e),vm.init(t,e)});function gm(t){return gu(sw,t)}var iw=$("ZodBoolean",(t,e)=>{zc.init(t,e),Oe.init(t,e)});function Le(t){return yu(iw,t)}var aw=$("ZodNull",(t,e)=>{Ec.init(t,e),Oe.init(t,e)});function Lu(t){return _u(aw,t)}var cw=$("ZodUnknown",(t,e)=>{Pc.init(t,e),Oe.init(t,e)});function Pe(){return vu(cw)}var uw=$("ZodNever",(t,e)=>{Ic.init(t,e),Oe.init(t,e)});function lw(t){return xu(uw,t)}var dw=$("ZodArray",(t,e)=>{Rc.init(t,e),Oe.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(Mn(r,n)),t.nonempty=r=>t.check(Mn(1,r)),t.max=(r,n)=>t.check(Bs(r,n)),t.length=(r,n)=>t.check(Ks(r,n)),t.unwrap=()=>t.element});function ae(t,e){return rm(dw,t,e)}var xm=$("ZodObject",(t,e)=>{Fs.init(t,e),Oe.init(t,e),ie.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>ut(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:Pe()}),t.loose=()=>t.clone({...t._zod.def,catchall:Pe()}),t.strict=()=>t.clone({...t._zod.def,catchall:lw()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>ie.extend(t,r),t.merge=r=>ie.merge(t,r),t.pick=r=>ie.pick(t,r),t.omit=r=>ie.omit(t,r),t.partial=(...r)=>ie.partial($m,t,r[0]),t.required=(...r)=>ie.required(km,t,r[0])});function A(t,e){let r={type:"object",get shape(){return ie.assignProp(this,"shape",{...t}),this.shape},...ie.normalizeParams(e)};return new xm(r)}function tt(t,e){return new xm({type:"object",get shape(){return ie.assignProp(this,"shape",{...t}),this.shape},catchall:Pe(),...ie.normalizeParams(e)})}var bm=$("ZodUnion",(t,e)=>{Us.init(t,e),Oe.init(t,e),t.options=e.options});function Se(t,e){return new bm({type:"union",options:t,...ie.normalizeParams(e)})}var pw=$("ZodDiscriminatedUnion",(t,e)=>{bm.init(t,e),Mc.init(t,e)});function Fu(t,e,r){return new pw({type:"union",options:e,discriminator:t,...ie.normalizeParams(r)})}var fw=$("ZodIntersection",(t,e)=>{Oc.init(t,e),Oe.init(t,e)});function ti(t,e){return new fw({type:"intersection",left:t,right:e})}var mw=$("ZodRecord",(t,e)=>{Ac.init(t,e),Oe.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function Ie(t,e,r){return new mw({type:"record",keyType:t,valueType:e,...ie.normalizeParams(r)})}var Du=$("ZodEnum",(t,e)=>{Cc.init(t,e),Oe.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 Du({...e,checks:[],...ie.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 Du({...e,checks:[],...ie.normalizeParams(o),entries:s})}});function ut(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Du({type:"enum",entries:r,...ie.normalizeParams(e)})}var hw=$("ZodLiteral",(t,e)=>{Nc.init(t,e),Oe.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 q(t,e){return new hw({type:"literal",values:Array.isArray(t)?t:[t],...ie.normalizeParams(e)})}var gw=$("ZodTransform",(t,e)=>{jc.init(t,e),Oe.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(ie.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(ie.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 wm(t){return new gw({type:"transform",transform:t})}var $m=$("ZodOptional",(t,e)=>{Zc.init(t,e),Oe.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Me(t){return new $m({type:"optional",innerType:t})}var yw=$("ZodNullable",(t,e)=>{Dc.init(t,e),Oe.init(t,e),t.unwrap=()=>t._zod.def.innerType});function ym(t){return new yw({type:"nullable",innerType:t})}var _w=$("ZodDefault",(t,e)=>{qc.init(t,e),Oe.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function vw(t,e){return new _w({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var xw=$("ZodPrefault",(t,e)=>{Lc.init(t,e),Oe.init(t,e),t.unwrap=()=>t._zod.def.innerType});function bw(t,e){return new xw({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var km=$("ZodNonOptional",(t,e)=>{Fc.init(t,e),Oe.init(t,e),t.unwrap=()=>t._zod.def.innerType});function ww(t,e){return new km({type:"nonoptional",innerType:t,...ie.normalizeParams(e)})}var $w=$("ZodCatch",(t,e)=>{Uc.init(t,e),Oe.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function kw(t,e){return new $w({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var Sw=$("ZodPipe",(t,e)=>{Vc.init(t,e),Oe.init(t,e),t.in=e.in,t.out=e.out});function qu(t,e){return new Sw({type:"pipe",in:t,out:e})}var Tw=$("ZodReadonly",(t,e)=>{Hc.init(t,e),Oe.init(t,e)});function zw(t){return new Tw({type:"readonly",innerType:t})}var Sm=$("ZodCustom",(t,e)=>{Wc.init(t,e),Oe.init(t,e)});function Ew(t){let e=new Ue({check:"custom"});return e._zod.check=t,e}function Tm(t,e){return Ru(Sm,t??(()=>!0),e)}function Pw(t,e={}){return Mu(Sm,t,e)}function Iw(t){let e=Ew(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(ie.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(ie.issue(o))}},t(r.value,r)));return e}function Uu(t,e){return qu(wm(t),e)}gt(Jf());var Hu="2025-11-25";var zm=[Hu,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],wr="io.modelcontextprotocol/related-task",ni="2.0",Ve=Tm(t=>t!==null&&(typeof t=="object"||typeof t=="function")),Em=Se([w(),_e().int()]),Pm=w(),tM=tt({ttl:Se([_e(),Lu()]).optional(),pollInterval:_e().optional()}),Rw=A({ttl:_e().optional()}),Mw=A({taskId:w()}),Wu=tt({progressToken:Em.optional(),[wr]:Mw.optional()}),_t=A({_meta:Wu.optional()}),Eo=_t.extend({task:Rw.optional()}),Im=t=>Eo.safeParse(t).success,He=A({method:w(),params:_t.loose().optional()}),kt=A({_meta:Wu.optional()}),St=A({method:w(),params:kt.loose().optional()}),We=tt({_meta:Wu.optional()}),oi=Se([w(),_e().int()]),Rm=A({jsonrpc:q(ni),id:oi,...He.shape}).strict(),Gu=t=>Rm.safeParse(t).success,Mm=A({jsonrpc:q(ni),...St.shape}).strict(),Om=t=>Mm.safeParse(t).success,Bu=A({jsonrpc:q(ni),id:oi,result:We}).strict(),Po=t=>Bu.safeParse(t).success;var U;(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"})(U||(U={}));var Ku=A({jsonrpc:q(ni),id:oi.optional(),error:A({code:_e().int(),message:w(),data:Pe().optional()})}).strict();var Am=t=>Ku.safeParse(t).success;var Cm=Se([Rm,Mm,Bu,Ku]),rM=Se([Bu,Ku]),si=We.strict(),Ow=kt.extend({requestId:oi.optional(),reason:w().optional()}),ii=St.extend({method:q("notifications/cancelled"),params:Ow}),Aw=A({src:w(),mimeType:w().optional(),sizes:ae(w()).optional(),theme:ut(["light","dark"]).optional()}),Io=A({icons:ae(Aw).optional()}),An=A({name:w(),title:w().optional()}),Nm=An.extend({...An.shape,...Io.shape,version:w(),websiteUrl:w().optional(),description:w().optional()}),Cw=ti(A({applyDefaults:Le().optional()}),Ie(w(),Pe())),Nw=Uu(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,ti(A({form:Cw.optional(),url:Ve.optional()}),Ie(w(),Pe()).optional())),jw=tt({list:Ve.optional(),cancel:Ve.optional(),requests:tt({sampling:tt({createMessage:Ve.optional()}).optional(),elicitation:tt({create:Ve.optional()}).optional()}).optional()}),Zw=tt({list:Ve.optional(),cancel:Ve.optional(),requests:tt({tools:tt({call:Ve.optional()}).optional()}).optional()}),Dw=A({experimental:Ie(w(),Ve).optional(),sampling:A({context:Ve.optional(),tools:Ve.optional()}).optional(),elicitation:Nw.optional(),roots:A({listChanged:Le().optional()}).optional(),tasks:jw.optional()}),qw=_t.extend({protocolVersion:w(),capabilities:Dw,clientInfo:Nm}),Ju=He.extend({method:q("initialize"),params:qw});var Lw=A({experimental:Ie(w(),Ve).optional(),logging:Ve.optional(),completions:Ve.optional(),prompts:A({listChanged:Le().optional()}).optional(),resources:A({subscribe:Le().optional(),listChanged:Le().optional()}).optional(),tools:A({listChanged:Le().optional()}).optional(),tasks:Zw.optional()}),Fw=We.extend({protocolVersion:w(),capabilities:Lw,serverInfo:Nm,instructions:w().optional()}),Qu=St.extend({method:q("notifications/initialized"),params:kt.optional()});var ai=He.extend({method:q("ping"),params:_t.optional()}),Uw=A({progress:_e(),total:Me(_e()),message:Me(w())}),Vw=A({...kt.shape,...Uw.shape,progressToken:Em}),ci=St.extend({method:q("notifications/progress"),params:Vw}),Hw=_t.extend({cursor:Pm.optional()}),Ro=He.extend({params:Hw.optional()}),Mo=We.extend({nextCursor:Pm.optional()}),Ww=ut(["working","input_required","completed","failed","cancelled"]),Oo=A({taskId:w(),status:Ww,ttl:Se([_e(),Lu()]),createdAt:w(),lastUpdatedAt:w(),pollInterval:Me(_e()),statusMessage:Me(w())}),Cn=We.extend({task:Oo}),Gw=kt.merge(Oo),Ao=St.extend({method:q("notifications/tasks/status"),params:Gw}),ui=He.extend({method:q("tasks/get"),params:_t.extend({taskId:w()})}),li=We.merge(Oo),di=He.extend({method:q("tasks/result"),params:_t.extend({taskId:w()})}),nM=We.loose(),pi=Ro.extend({method:q("tasks/list")}),fi=Mo.extend({tasks:ae(Oo)}),mi=He.extend({method:q("tasks/cancel"),params:_t.extend({taskId:w()})}),jm=We.merge(Oo),Zm=A({uri:w(),mimeType:Me(w()),_meta:Ie(w(),Pe()).optional()}),Dm=Zm.extend({text:w()}),Xu=w().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),qm=Zm.extend({blob:Xu}),Co=ut(["user","assistant"]),Nn=A({audience:ae(Co).optional(),priority:_e().min(0).max(1).optional(),lastModified:To.datetime({offset:!0}).optional()}),Lm=A({...An.shape,...Io.shape,uri:w(),description:Me(w()),mimeType:Me(w()),annotations:Nn.optional(),_meta:Me(tt({}))}),Bw=A({...An.shape,...Io.shape,uriTemplate:w(),description:Me(w()),mimeType:Me(w()),annotations:Nn.optional(),_meta:Me(tt({}))}),hi=Ro.extend({method:q("resources/list")}),Kw=Mo.extend({resources:ae(Lm)}),gi=Ro.extend({method:q("resources/templates/list")}),Jw=Mo.extend({resourceTemplates:ae(Bw)}),Yu=_t.extend({uri:w()}),Qw=Yu,yi=He.extend({method:q("resources/read"),params:Qw}),Xw=We.extend({contents:ae(Se([Dm,qm]))}),Yw=St.extend({method:q("notifications/resources/list_changed"),params:kt.optional()}),e$=Yu,t$=He.extend({method:q("resources/subscribe"),params:e$}),r$=Yu,n$=He.extend({method:q("resources/unsubscribe"),params:r$}),o$=kt.extend({uri:w()}),s$=St.extend({method:q("notifications/resources/updated"),params:o$}),i$=A({name:w(),description:Me(w()),required:Me(Le())}),a$=A({...An.shape,...Io.shape,description:Me(w()),arguments:Me(ae(i$)),_meta:Me(tt({}))}),_i=Ro.extend({method:q("prompts/list")}),c$=Mo.extend({prompts:ae(a$)}),u$=_t.extend({name:w(),arguments:Ie(w(),w()).optional()}),vi=He.extend({method:q("prompts/get"),params:u$}),el=A({type:q("text"),text:w(),annotations:Nn.optional(),_meta:Ie(w(),Pe()).optional()}),tl=A({type:q("image"),data:Xu,mimeType:w(),annotations:Nn.optional(),_meta:Ie(w(),Pe()).optional()}),rl=A({type:q("audio"),data:Xu,mimeType:w(),annotations:Nn.optional(),_meta:Ie(w(),Pe()).optional()}),l$=A({type:q("tool_use"),name:w(),id:w(),input:Ie(w(),Pe()),_meta:Ie(w(),Pe()).optional()}),d$=A({type:q("resource"),resource:Se([Dm,qm]),annotations:Nn.optional(),_meta:Ie(w(),Pe()).optional()}),p$=Lm.extend({type:q("resource_link")}),nl=Se([el,tl,rl,p$,d$]),f$=A({role:Co,content:nl}),m$=We.extend({description:w().optional(),messages:ae(f$)}),h$=St.extend({method:q("notifications/prompts/list_changed"),params:kt.optional()}),g$=A({title:w().optional(),readOnlyHint:Le().optional(),destructiveHint:Le().optional(),idempotentHint:Le().optional(),openWorldHint:Le().optional()}),y$=A({taskSupport:ut(["required","optional","forbidden"]).optional()}),Fm=A({...An.shape,...Io.shape,description:w().optional(),inputSchema:A({type:q("object"),properties:Ie(w(),Ve).optional(),required:ae(w()).optional()}).catchall(Pe()),outputSchema:A({type:q("object"),properties:Ie(w(),Ve).optional(),required:ae(w()).optional()}).catchall(Pe()).optional(),annotations:g$.optional(),execution:y$.optional(),_meta:Ie(w(),Pe()).optional()}),xi=Ro.extend({method:q("tools/list")}),_$=Mo.extend({tools:ae(Fm)}),bi=We.extend({content:ae(nl).default([]),structuredContent:Ie(w(),Pe()).optional(),isError:Le().optional()}),oM=bi.or(We.extend({toolResult:Pe()})),v$=Eo.extend({name:w(),arguments:Ie(w(),Pe()).optional()}),jn=He.extend({method:q("tools/call"),params:v$}),x$=St.extend({method:q("notifications/tools/list_changed"),params:kt.optional()}),sM=A({autoRefresh:Le().default(!0),debounceMs:_e().int().nonnegative().default(300)}),No=ut(["debug","info","notice","warning","error","critical","alert","emergency"]),b$=_t.extend({level:No}),ol=He.extend({method:q("logging/setLevel"),params:b$}),w$=kt.extend({level:No,logger:w().optional(),data:Pe()}),$$=St.extend({method:q("notifications/message"),params:w$}),k$=A({name:w().optional()}),S$=A({hints:ae(k$).optional(),costPriority:_e().min(0).max(1).optional(),speedPriority:_e().min(0).max(1).optional(),intelligencePriority:_e().min(0).max(1).optional()}),T$=A({mode:ut(["auto","required","none"]).optional()}),z$=A({type:q("tool_result"),toolUseId:w().describe("The unique identifier for the corresponding tool call."),content:ae(nl).default([]),structuredContent:A({}).loose().optional(),isError:Le().optional(),_meta:Ie(w(),Pe()).optional()}),E$=Fu("type",[el,tl,rl]),ri=Fu("type",[el,tl,rl,l$,z$]),P$=A({role:Co,content:Se([ri,ae(ri)]),_meta:Ie(w(),Pe()).optional()}),I$=Eo.extend({messages:ae(P$),modelPreferences:S$.optional(),systemPrompt:w().optional(),includeContext:ut(["none","thisServer","allServers"]).optional(),temperature:_e().optional(),maxTokens:_e().int(),stopSequences:ae(w()).optional(),metadata:Ve.optional(),tools:ae(Fm).optional(),toolChoice:T$.optional()}),R$=He.extend({method:q("sampling/createMessage"),params:I$}),sl=We.extend({model:w(),stopReason:Me(ut(["endTurn","stopSequence","maxTokens"]).or(w())),role:Co,content:E$}),il=We.extend({model:w(),stopReason:Me(ut(["endTurn","stopSequence","maxTokens","toolUse"]).or(w())),role:Co,content:Se([ri,ae(ri)])}),M$=A({type:q("boolean"),title:w().optional(),description:w().optional(),default:Le().optional()}),O$=A({type:q("string"),title:w().optional(),description:w().optional(),minLength:_e().optional(),maxLength:_e().optional(),format:ut(["email","uri","date","date-time"]).optional(),default:w().optional()}),A$=A({type:ut(["number","integer"]),title:w().optional(),description:w().optional(),minimum:_e().optional(),maximum:_e().optional(),default:_e().optional()}),C$=A({type:q("string"),title:w().optional(),description:w().optional(),enum:ae(w()),default:w().optional()}),N$=A({type:q("string"),title:w().optional(),description:w().optional(),oneOf:ae(A({const:w(),title:w()})),default:w().optional()}),j$=A({type:q("string"),title:w().optional(),description:w().optional(),enum:ae(w()),enumNames:ae(w()).optional(),default:w().optional()}),Z$=Se([C$,N$]),D$=A({type:q("array"),title:w().optional(),description:w().optional(),minItems:_e().optional(),maxItems:_e().optional(),items:A({type:q("string"),enum:ae(w())}),default:ae(w()).optional()}),q$=A({type:q("array"),title:w().optional(),description:w().optional(),minItems:_e().optional(),maxItems:_e().optional(),items:A({anyOf:ae(A({const:w(),title:w()}))}),default:ae(w()).optional()}),L$=Se([D$,q$]),F$=Se([j$,Z$,L$]),U$=Se([F$,M$,O$,A$]),V$=Eo.extend({mode:q("form").optional(),message:w(),requestedSchema:A({type:q("object"),properties:Ie(w(),U$),required:ae(w()).optional()})}),H$=Eo.extend({mode:q("url"),message:w(),elicitationId:w(),url:w().url()}),W$=Se([V$,H$]),G$=He.extend({method:q("elicitation/create"),params:W$}),B$=kt.extend({elicitationId:w()}),K$=St.extend({method:q("notifications/elicitation/complete"),params:B$}),wi=We.extend({action:ut(["accept","decline","cancel"]),content:Uu(t=>t===null?void 0:t,Ie(w(),Se([w(),_e(),Le(),ae(w())])).optional())}),J$=A({type:q("ref/resource"),uri:w()});var Q$=A({type:q("ref/prompt"),name:w()}),X$=_t.extend({ref:Se([Q$,J$]),argument:A({name:w(),value:w()}),context:A({arguments:Ie(w(),w()).optional()}).optional()}),$i=He.extend({method:q("completion/complete"),params:X$});function Um(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function Vm(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var Y$=We.extend({completion:tt({values:ae(w()).max(100),total:Me(_e().int()),hasMore:Me(Le())})}),ek=A({uri:w().startsWith("file://"),name:w().optional(),_meta:Ie(w(),Pe()).optional()}),tk=He.extend({method:q("roots/list"),params:_t.optional()}),al=We.extend({roots:ae(ek)}),rk=St.extend({method:q("notifications/roots/list_changed"),params:kt.optional()}),iM=Se([ai,Ju,$i,ol,vi,_i,hi,gi,yi,t$,n$,jn,xi,ui,di,pi,mi]),aM=Se([ii,ci,Qu,rk,Ao]),cM=Se([si,sl,il,wi,al,li,fi,Cn]),uM=Se([ai,R$,G$,tk,ui,di,pi,mi]),lM=Se([ii,ci,$$,s$,Yw,x$,h$,Ao,K$]),dM=Se([si,Fw,Y$,m$,c$,Kw,Jw,Xw,bi,_$,li,fi,Cn]),Z=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===U.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Vu(o.elicitations,r)}return new t(e,r,n)}},Vu=class extends Z{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(U.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function $r(t){return t==="completed"||t==="failed"||t==="cancelled"}var Wm=Symbol("Let zodToJsonSchema decide on which parser to use");var Hm={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"},Gm=t=>typeof t=="string"?{...Hm,name:t}:{...Hm,...t};var Bm=t=>{let e=Gm(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 cl(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function ce(t,e,r,n,o){t[e]=r,cl(t,e,n,o)}var ki=(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 Re(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?ki(e,t.currentPath):e.join("/")}}function Km(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==z.ZodAny&&(r.items=W(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&ce(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&ce(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(ce(r,"minItems",t.exactLength.value,t.exactLength.message,e),ce(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}function Jm(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?ce(r,"minimum",n.value,n.message,e):ce(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),ce(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?ce(r,"maximum",n.value,n.message,e):ce(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),ce(r,"maximum",n.value,n.message,e));break;case"multipleOf":ce(r,"multipleOf",n.value,n.message,e);break}return r}function Qm(){return{type:"boolean"}}function Si(t,e){return W(t.type._def,e)}var Xm=(t,e)=>W(t.innerType._def,e);function ul(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>ul(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 nk(t,e)}}var nk=(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":ce(r,"minimum",n.value,n.message,e);break;case"max":ce(r,"maximum",n.value,n.message,e);break}return r};function Ym(t,e){return{...W(t.innerType._def,e),default:t.defaultValue()}}function eh(t,e){return e.effectStrategy==="input"?W(t.schema._def,e):Re(e)}function th(t){return{type:"string",enum:Array.from(t.values)}}var ok=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function rh(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(ok(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 nh(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 ll,Ot={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:()=>(ll===void 0&&(ll=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),ll),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 Ti(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":ce(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":ce(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":At(r,"email",n.message,e);break;case"format:idn-email":At(r,"idn-email",n.message,e);break;case"pattern:zod":rt(r,Ot.email,n.message,e);break}break;case"url":At(r,"uri",n.message,e);break;case"uuid":At(r,"uuid",n.message,e);break;case"regex":rt(r,n.regex,n.message,e);break;case"cuid":rt(r,Ot.cuid,n.message,e);break;case"cuid2":rt(r,Ot.cuid2,n.message,e);break;case"startsWith":rt(r,RegExp(`^${dl(n.value,e)}`),n.message,e);break;case"endsWith":rt(r,RegExp(`${dl(n.value,e)}$`),n.message,e);break;case"datetime":At(r,"date-time",n.message,e);break;case"date":At(r,"date",n.message,e);break;case"time":At(r,"time",n.message,e);break;case"duration":At(r,"duration",n.message,e);break;case"length":ce(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),ce(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{rt(r,RegExp(dl(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&At(r,"ipv4",n.message,e),n.version!=="v4"&&At(r,"ipv6",n.message,e);break}case"base64url":rt(r,Ot.base64url,n.message,e);break;case"jwt":rt(r,Ot.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&rt(r,Ot.ipv4Cidr,n.message,e),n.version!=="v4"&&rt(r,Ot.ipv6Cidr,n.message,e);break}case"emoji":rt(r,Ot.emoji(),n.message,e);break;case"ulid":{rt(r,Ot.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{At(r,"binary",n.message,e);break}case"contentEncoding:base64":{ce(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{rt(r,Ot.base64,n.message,e);break}}break}case"nanoid":rt(r,Ot.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function dl(t,e){return e.patternStrategy==="escape"?ik(t):t}var sk=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function ik(t){let e="";for(let r=0;r<t.length;r++)sk.has(t[r])||(e+="\\"),e+=t[r];return e}function At(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}}})):ce(t,"format",e,r,n)}function rt(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:oh(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):ce(t,"pattern",oh(e,n),r,n)}function oh(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 y=n.external.registry.get(l[0])?.id;if(e!==l[0]&&y){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 f=this.seen.get(l),y=f.def??f.schema,p={...y};if(f.ref===null)return;let g=f.ref;if(f.ref=null,g){a(g,d);let h=this.seen.get(g).schema;h.$ref&&d.target==="draft-7"?(y.allOf=y.allOf??[],y.allOf.push(h)):(Object.assign(y,h),Object.assign(y,p))}f.isParent||this.override({zodSchema:l,jsonSchema:y,path:f.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 ju(t,e){if(t instanceof zo){let n=new ei(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 ei(e);return r.process(t),r.emit(t,e)}function Le(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 Le(o.element,r);case"object":{for(let s in o.shape)if(Le(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(Le(s,r))return!0;return!1}case"intersection":return Le(o.left,r)||Le(o.right,r);case"tuple":{for(let s of o.items)if(Le(s,r))return!0;return!!(o.rest&&Le(o.rest,r))}case"record":return Le(o.keyType,r)||Le(o.valueType,r);case"map":return Le(o.keyType,r)||Le(o.valueType,r);case"set":return Le(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return Le(o.innerType,r);case"lazy":return Le(o.getter(),r);case"default":return Le(o.innerType,r);case"prefault":return Le(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return Le(o.in,r)||Le(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var jb=w("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");we.init(t,e),t.def=e,t.parse=(r,n)=>tc(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>rn(t,r,n),t.parseAsync=async(r,n)=>nc(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>nn(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)=>_t(t,r,n),t.brand=()=>t,t.register=(r,n)=>(r.add(t,n),t)});var Zb=w("ZodMiniObject",(t,e)=>{Ws.init(t,e),jb.init(t,e),ue.defineLazy(t,"shape",()=>e.shape)});function Zu(t,e){let r={type:"object",get shape(){return ue.assignProp(this,"shape",{...t}),this.shape},...ue.normalizeParams(e)};return new Zb(r)}function kt(t){return!!t._zod}function an(t){let e=Object.values(t);if(e.length===0)return Zu({});let r=e.every(kt),n=e.every(o=>!kt(o));if(r)return Zu(t);if(n)return La(t);throw new Error("Mixed Zod versions detected in object shape.")}function br(t,e){return kt(t)?rn(t,e):t.safeParse(e)}async function ti(t,e){return kt(t)?await nn(t,e):await t.safeParseAsync(e)}function wr(t){if(!t)return;let e;if(kt(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function On(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 an(t)}}if(kt(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 ri(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 im(t){return t.description}function am(t){if(kt(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function ni(t){if(kt(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 Io={};Rs(Io,{ZodISODate:()=>um,ZodISODateTime:()=>cm,ZodISODuration:()=>dm,ZodISOTime:()=>lm,date:()=>qu,datetime:()=>Du,duration:()=>Fu,time:()=>Lu});var cm=w("ZodISODateTime",(t,e)=>{Gf.init(t,e),Re.init(t,e)});function Du(t){return em(cm,t)}var um=w("ZodISODate",(t,e)=>{Bf.init(t,e),Re.init(t,e)});function qu(t){return tm(um,t)}var lm=w("ZodISOTime",(t,e)=>{Jf.init(t,e),Re.init(t,e)});function Lu(t){return rm(lm,t)}var dm=w("ZodISODuration",(t,e)=>{Kf.init(t,e),Re.init(t,e)});function Fu(t){return nm(dm,t)}var pm=(t,e)=>{Ls.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Ya(t,r)},flatten:{value:r=>Xa(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},BR=w("ZodError",pm),Ro=w("ZodError",pm,{Parent:Error});var fm=ec(Ro),mm=rc(Ro),hm=oc(Ro),gm=sc(Ro);var je=w("ZodType",(t,e)=>(we.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)=>_t(t,r,n),t.brand=()=>t,t.register=(r,n)=>(r.add(t,n),t),t.parse=(r,n)=>fm(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>hm(t,r,n),t.parseAsync=async(r,n)=>mm(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>gm(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(Aw(r,n)),t.superRefine=r=>t.check(Nw(r)),t.overwrite=r=>t.check(on(r)),t.optional=()=>Ne(t),t.nullable=()=>vm(t),t.nullish=()=>Ne(vm(t)),t.nonoptional=r=>Ew(t,r),t.array=()=>le(t),t.or=r=>ze([t,r]),t.and=r=>si(t,r),t.transform=r=>Vu(t,km(r)),t.default=r=>Sw(t,r),t.prefault=r=>zw(t,r),t.catch=r=>Iw(t,r),t.pipe=r=>Vu(t,r),t.readonly=()=>Mw(t),t.describe=r=>{let n=t.clone();return xr.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return xr.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return xr.get(t);let n=t.clone();return xr.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),xm=w("_ZodString",(t,e)=>{To.init(t,e),je.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(Su(...n)),t.includes=(...n)=>t.check(Eu(...n)),t.startsWith=(...n)=>t.check(Pu(...n)),t.endsWith=(...n)=>t.check(Iu(...n)),t.min=(...n)=>t.check(Rn(...n)),t.max=(...n)=>t.check(Xs(...n)),t.length=(...n)=>t.check(Ys(...n)),t.nonempty=(...n)=>t.check(Rn(1,...n)),t.lowercase=n=>t.check(Tu(n)),t.uppercase=n=>t.check(zu(n)),t.trim=()=>t.check(Ou()),t.normalize=(...n)=>t.check(Ru(...n)),t.toLowerCase=()=>t.check(Mu()),t.toUpperCase=()=>t.check(Cu())}),Gb=w("ZodString",(t,e)=>{To.init(t,e),xm.init(t,e),t.email=r=>t.check(Xc(Bb,r)),t.url=r=>t.check(nu(Jb,r)),t.jwt=r=>t.check(_u(lw,r)),t.emoji=r=>t.check(ou(Kb,r)),t.guid=r=>t.check(Bs(ym,r)),t.uuid=r=>t.check(Yc(oi,r)),t.uuidv4=r=>t.check(eu(oi,r)),t.uuidv6=r=>t.check(tu(oi,r)),t.uuidv7=r=>t.check(ru(oi,r)),t.nanoid=r=>t.check(su(Qb,r)),t.guid=r=>t.check(Bs(ym,r)),t.cuid=r=>t.check(iu(Xb,r)),t.cuid2=r=>t.check(au(Yb,r)),t.ulid=r=>t.check(cu(ew,r)),t.base64=r=>t.check(hu(aw,r)),t.base64url=r=>t.check(gu(cw,r)),t.xid=r=>t.check(uu(tw,r)),t.ksuid=r=>t.check(lu(rw,r)),t.ipv4=r=>t.check(du(nw,r)),t.ipv6=r=>t.check(pu(ow,r)),t.cidrv4=r=>t.check(fu(sw,r)),t.cidrv6=r=>t.check(mu(iw,r)),t.e164=r=>t.check(yu(uw,r)),t.datetime=r=>t.check(Du(r)),t.date=r=>t.check(qu(r)),t.time=r=>t.check(Lu(r)),t.duration=r=>t.check(Fu(r))});function b(t){return Qc(Gb,t)}var Re=w("ZodStringFormat",(t,e)=>{Te.init(t,e),xm.init(t,e)}),Bb=w("ZodEmail",(t,e)=>{fc.init(t,e),Re.init(t,e)});var ym=w("ZodGUID",(t,e)=>{dc.init(t,e),Re.init(t,e)});var oi=w("ZodUUID",(t,e)=>{pc.init(t,e),Re.init(t,e)});var Jb=w("ZodURL",(t,e)=>{mc.init(t,e),Re.init(t,e)});var Kb=w("ZodEmoji",(t,e)=>{hc.init(t,e),Re.init(t,e)});var Qb=w("ZodNanoID",(t,e)=>{gc.init(t,e),Re.init(t,e)});var Xb=w("ZodCUID",(t,e)=>{yc.init(t,e),Re.init(t,e)});var Yb=w("ZodCUID2",(t,e)=>{_c.init(t,e),Re.init(t,e)});var ew=w("ZodULID",(t,e)=>{vc.init(t,e),Re.init(t,e)});var tw=w("ZodXID",(t,e)=>{xc.init(t,e),Re.init(t,e)});var rw=w("ZodKSUID",(t,e)=>{bc.init(t,e),Re.init(t,e)});var nw=w("ZodIPv4",(t,e)=>{wc.init(t,e),Re.init(t,e)});var ow=w("ZodIPv6",(t,e)=>{$c.init(t,e),Re.init(t,e)});var sw=w("ZodCIDRv4",(t,e)=>{kc.init(t,e),Re.init(t,e)});var iw=w("ZodCIDRv6",(t,e)=>{Sc.init(t,e),Re.init(t,e)});var aw=w("ZodBase64",(t,e)=>{Tc.init(t,e),Re.init(t,e)});var cw=w("ZodBase64URL",(t,e)=>{zc.init(t,e),Re.init(t,e)});var uw=w("ZodE164",(t,e)=>{Ec.init(t,e),Re.init(t,e)});var lw=w("ZodJWT",(t,e)=>{Pc.init(t,e),Re.init(t,e)});var bm=w("ZodNumber",(t,e)=>{Hs.init(t,e),je.init(t,e),t.gt=(n,o)=>t.check(Ks(n,o)),t.gte=(n,o)=>t.check(Po(n,o)),t.min=(n,o)=>t.check(Po(n,o)),t.lt=(n,o)=>t.check(Js(n,o)),t.lte=(n,o)=>t.check(Eo(n,o)),t.max=(n,o)=>t.check(Eo(n,o)),t.int=n=>t.check(_m(n)),t.safe=n=>t.check(_m(n)),t.positive=n=>t.check(Ks(0,n)),t.nonnegative=n=>t.check(Po(0,n)),t.negative=n=>t.check(Js(0,n)),t.nonpositive=n=>t.check(Eo(0,n)),t.multipleOf=(n,o)=>t.check(Qs(n,o)),t.step=(n,o)=>t.check(Qs(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 be(t){return vu(bm,t)}var dw=w("ZodNumberFormat",(t,e)=>{Ic.init(t,e),bm.init(t,e)});function _m(t){return xu(dw,t)}var pw=w("ZodBoolean",(t,e)=>{Rc.init(t,e),je.init(t,e)});function Ue(t){return bu(pw,t)}var fw=w("ZodNull",(t,e)=>{Oc.init(t,e),je.init(t,e)});function Hu(t){return wu(fw,t)}var mw=w("ZodUnknown",(t,e)=>{Mc.init(t,e),je.init(t,e)});function Oe(){return $u(mw)}var hw=w("ZodNever",(t,e)=>{Cc.init(t,e),je.init(t,e)});function gw(t){return ku(hw,t)}var yw=w("ZodArray",(t,e)=>{Ac.init(t,e),je.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(Rn(r,n)),t.nonempty=r=>t.check(Rn(1,r)),t.max=(r,n)=>t.check(Xs(r,n)),t.length=(r,n)=>t.check(Ys(r,n)),t.unwrap=()=>t.element});function le(t,e){return om(yw,t,e)}var wm=w("ZodObject",(t,e)=>{Ws.init(t,e),je.init(t,e),ue.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>lt(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:Oe()}),t.loose=()=>t.clone({...t._zod.def,catchall:Oe()}),t.strict=()=>t.clone({...t._zod.def,catchall:gw()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>ue.extend(t,r),t.merge=r=>ue.merge(t,r),t.pick=r=>ue.pick(t,r),t.omit=r=>ue.omit(t,r),t.partial=(...r)=>ue.partial(Sm,t,r[0]),t.required=(...r)=>ue.required(Tm,t,r[0])});function D(t,e){let r={type:"object",get shape(){return ue.assignProp(this,"shape",{...t}),this.shape},...ue.normalizeParams(e)};return new wm(r)}function rt(t,e){return new wm({type:"object",get shape(){return ue.assignProp(this,"shape",{...t}),this.shape},catchall:Oe(),...ue.normalizeParams(e)})}var $m=w("ZodUnion",(t,e)=>{Gs.init(t,e),je.init(t,e),t.options=e.options});function ze(t,e){return new $m({type:"union",options:t,...ue.normalizeParams(e)})}var _w=w("ZodDiscriminatedUnion",(t,e)=>{$m.init(t,e),Nc.init(t,e)});function Wu(t,e,r){return new _w({type:"union",options:e,discriminator:t,...ue.normalizeParams(r)})}var vw=w("ZodIntersection",(t,e)=>{jc.init(t,e),je.init(t,e)});function si(t,e){return new vw({type:"intersection",left:t,right:e})}var xw=w("ZodRecord",(t,e)=>{Zc.init(t,e),je.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function Me(t,e,r){return new xw({type:"record",keyType:t,valueType:e,...ue.normalizeParams(r)})}var Uu=w("ZodEnum",(t,e)=>{Dc.init(t,e),je.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 Uu({...e,checks:[],...ue.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 Uu({...e,checks:[],...ue.normalizeParams(o),entries:s})}});function lt(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Uu({type:"enum",entries:r,...ue.normalizeParams(e)})}var bw=w("ZodLiteral",(t,e)=>{qc.init(t,e),je.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 U(t,e){return new bw({type:"literal",values:Array.isArray(t)?t:[t],...ue.normalizeParams(e)})}var ww=w("ZodTransform",(t,e)=>{Lc.init(t,e),je.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(ue.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(ue.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 km(t){return new ww({type:"transform",transform:t})}var Sm=w("ZodOptional",(t,e)=>{Fc.init(t,e),je.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Ne(t){return new Sm({type:"optional",innerType:t})}var $w=w("ZodNullable",(t,e)=>{Uc.init(t,e),je.init(t,e),t.unwrap=()=>t._zod.def.innerType});function vm(t){return new $w({type:"nullable",innerType:t})}var kw=w("ZodDefault",(t,e)=>{Vc.init(t,e),je.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function Sw(t,e){return new kw({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var Tw=w("ZodPrefault",(t,e)=>{Hc.init(t,e),je.init(t,e),t.unwrap=()=>t._zod.def.innerType});function zw(t,e){return new Tw({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var Tm=w("ZodNonOptional",(t,e)=>{Wc.init(t,e),je.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Ew(t,e){return new Tm({type:"nonoptional",innerType:t,...ue.normalizeParams(e)})}var Pw=w("ZodCatch",(t,e)=>{Gc.init(t,e),je.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function Iw(t,e){return new Pw({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var Rw=w("ZodPipe",(t,e)=>{Bc.init(t,e),je.init(t,e),t.in=e.in,t.out=e.out});function Vu(t,e){return new Rw({type:"pipe",in:t,out:e})}var Ow=w("ZodReadonly",(t,e)=>{Jc.init(t,e),je.init(t,e)});function Mw(t){return new Ow({type:"readonly",innerType:t})}var zm=w("ZodCustom",(t,e)=>{Kc.init(t,e),je.init(t,e)});function Cw(t){let e=new He({check:"custom"});return e._zod.check=t,e}function Em(t,e){return Au(zm,t??(()=>!0),e)}function Aw(t,e={}){return Nu(zm,t,e)}function Nw(t){let e=Cw(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(ue.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(ue.issue(o))}},t(r.value,r)));return e}function Gu(t,e){return Vu(km(t),e)}yt(Xf());var Ju="2025-11-25";var Pm=[Ju,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],$r="io.modelcontextprotocol/related-task",ai="2.0",We=Em(t=>t!==null&&(typeof t=="object"||typeof t=="function")),Im=ze([b(),be().int()]),Rm=b(),cO=rt({ttl:ze([be(),Hu()]).optional(),pollInterval:be().optional()}),jw=D({ttl:be().optional()}),Zw=D({taskId:b()}),Ku=rt({progressToken:Im.optional(),[$r]:Zw.optional()}),vt=D({_meta:Ku.optional()}),Oo=vt.extend({task:jw.optional()}),Om=t=>Oo.safeParse(t).success,Ge=D({method:b(),params:vt.loose().optional()}),St=D({_meta:Ku.optional()}),Tt=D({method:b(),params:St.loose().optional()}),Be=rt({_meta:Ku.optional()}),ci=ze([b(),be().int()]),Mm=D({jsonrpc:U(ai),id:ci,...Ge.shape}).strict(),Qu=t=>Mm.safeParse(t).success,Cm=D({jsonrpc:U(ai),...Tt.shape}).strict(),Am=t=>Cm.safeParse(t).success,Xu=D({jsonrpc:U(ai),id:ci,result:Be}).strict(),Mo=t=>Xu.safeParse(t).success;var W;(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"})(W||(W={}));var Yu=D({jsonrpc:U(ai),id:ci.optional(),error:D({code:be().int(),message:b(),data:Oe().optional()})}).strict();var Nm=t=>Yu.safeParse(t).success;var jm=ze([Mm,Cm,Xu,Yu]),uO=ze([Xu,Yu]),ui=Be.strict(),Dw=St.extend({requestId:ci.optional(),reason:b().optional()}),li=Tt.extend({method:U("notifications/cancelled"),params:Dw}),qw=D({src:b(),mimeType:b().optional(),sizes:le(b()).optional(),theme:lt(["light","dark"]).optional()}),Co=D({icons:le(qw).optional()}),Mn=D({name:b(),title:b().optional()}),Zm=Mn.extend({...Mn.shape,...Co.shape,version:b(),websiteUrl:b().optional(),description:b().optional()}),Lw=si(D({applyDefaults:Ue().optional()}),Me(b(),Oe())),Fw=Gu(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,si(D({form:Lw.optional(),url:We.optional()}),Me(b(),Oe()).optional())),Uw=rt({list:We.optional(),cancel:We.optional(),requests:rt({sampling:rt({createMessage:We.optional()}).optional(),elicitation:rt({create:We.optional()}).optional()}).optional()}),Vw=rt({list:We.optional(),cancel:We.optional(),requests:rt({tools:rt({call:We.optional()}).optional()}).optional()}),Hw=D({experimental:Me(b(),We).optional(),sampling:D({context:We.optional(),tools:We.optional()}).optional(),elicitation:Fw.optional(),roots:D({listChanged:Ue().optional()}).optional(),tasks:Uw.optional()}),Ww=vt.extend({protocolVersion:b(),capabilities:Hw,clientInfo:Zm}),el=Ge.extend({method:U("initialize"),params:Ww});var Gw=D({experimental:Me(b(),We).optional(),logging:We.optional(),completions:We.optional(),prompts:D({listChanged:Ue().optional()}).optional(),resources:D({subscribe:Ue().optional(),listChanged:Ue().optional()}).optional(),tools:D({listChanged:Ue().optional()}).optional(),tasks:Vw.optional()}),Bw=Be.extend({protocolVersion:b(),capabilities:Gw,serverInfo:Zm,instructions:b().optional()}),tl=Tt.extend({method:U("notifications/initialized"),params:St.optional()});var di=Ge.extend({method:U("ping"),params:vt.optional()}),Jw=D({progress:be(),total:Ne(be()),message:Ne(b())}),Kw=D({...St.shape,...Jw.shape,progressToken:Im}),pi=Tt.extend({method:U("notifications/progress"),params:Kw}),Qw=vt.extend({cursor:Rm.optional()}),Ao=Ge.extend({params:Qw.optional()}),No=Be.extend({nextCursor:Rm.optional()}),Xw=lt(["working","input_required","completed","failed","cancelled"]),jo=D({taskId:b(),status:Xw,ttl:ze([be(),Hu()]),createdAt:b(),lastUpdatedAt:b(),pollInterval:Ne(be()),statusMessage:Ne(b())}),Cn=Be.extend({task:jo}),Yw=St.merge(jo),Zo=Tt.extend({method:U("notifications/tasks/status"),params:Yw}),fi=Ge.extend({method:U("tasks/get"),params:vt.extend({taskId:b()})}),mi=Be.merge(jo),hi=Ge.extend({method:U("tasks/result"),params:vt.extend({taskId:b()})}),lO=Be.loose(),gi=Ao.extend({method:U("tasks/list")}),yi=No.extend({tasks:le(jo)}),_i=Ge.extend({method:U("tasks/cancel"),params:vt.extend({taskId:b()})}),Dm=Be.merge(jo),qm=D({uri:b(),mimeType:Ne(b()),_meta:Me(b(),Oe()).optional()}),Lm=qm.extend({text:b()}),rl=b().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),Fm=qm.extend({blob:rl}),Do=lt(["user","assistant"]),An=D({audience:le(Do).optional(),priority:be().min(0).max(1).optional(),lastModified:Io.datetime({offset:!0}).optional()}),Um=D({...Mn.shape,...Co.shape,uri:b(),description:Ne(b()),mimeType:Ne(b()),annotations:An.optional(),_meta:Ne(rt({}))}),e$=D({...Mn.shape,...Co.shape,uriTemplate:b(),description:Ne(b()),mimeType:Ne(b()),annotations:An.optional(),_meta:Ne(rt({}))}),vi=Ao.extend({method:U("resources/list")}),t$=No.extend({resources:le(Um)}),xi=Ao.extend({method:U("resources/templates/list")}),r$=No.extend({resourceTemplates:le(e$)}),nl=vt.extend({uri:b()}),n$=nl,bi=Ge.extend({method:U("resources/read"),params:n$}),o$=Be.extend({contents:le(ze([Lm,Fm]))}),s$=Tt.extend({method:U("notifications/resources/list_changed"),params:St.optional()}),i$=nl,a$=Ge.extend({method:U("resources/subscribe"),params:i$}),c$=nl,u$=Ge.extend({method:U("resources/unsubscribe"),params:c$}),l$=St.extend({uri:b()}),d$=Tt.extend({method:U("notifications/resources/updated"),params:l$}),p$=D({name:b(),description:Ne(b()),required:Ne(Ue())}),f$=D({...Mn.shape,...Co.shape,description:Ne(b()),arguments:Ne(le(p$)),_meta:Ne(rt({}))}),wi=Ao.extend({method:U("prompts/list")}),m$=No.extend({prompts:le(f$)}),h$=vt.extend({name:b(),arguments:Me(b(),b()).optional()}),$i=Ge.extend({method:U("prompts/get"),params:h$}),ol=D({type:U("text"),text:b(),annotations:An.optional(),_meta:Me(b(),Oe()).optional()}),sl=D({type:U("image"),data:rl,mimeType:b(),annotations:An.optional(),_meta:Me(b(),Oe()).optional()}),il=D({type:U("audio"),data:rl,mimeType:b(),annotations:An.optional(),_meta:Me(b(),Oe()).optional()}),g$=D({type:U("tool_use"),name:b(),id:b(),input:Me(b(),Oe()),_meta:Me(b(),Oe()).optional()}),y$=D({type:U("resource"),resource:ze([Lm,Fm]),annotations:An.optional(),_meta:Me(b(),Oe()).optional()}),_$=Um.extend({type:U("resource_link")}),al=ze([ol,sl,il,_$,y$]),v$=D({role:Do,content:al}),x$=Be.extend({description:b().optional(),messages:le(v$)}),b$=Tt.extend({method:U("notifications/prompts/list_changed"),params:St.optional()}),w$=D({title:b().optional(),readOnlyHint:Ue().optional(),destructiveHint:Ue().optional(),idempotentHint:Ue().optional(),openWorldHint:Ue().optional()}),$$=D({taskSupport:lt(["required","optional","forbidden"]).optional()}),Vm=D({...Mn.shape,...Co.shape,description:b().optional(),inputSchema:D({type:U("object"),properties:Me(b(),We).optional(),required:le(b()).optional()}).catchall(Oe()),outputSchema:D({type:U("object"),properties:Me(b(),We).optional(),required:le(b()).optional()}).catchall(Oe()).optional(),annotations:w$.optional(),execution:$$.optional(),_meta:Me(b(),Oe()).optional()}),ki=Ao.extend({method:U("tools/list")}),k$=No.extend({tools:le(Vm)}),Si=Be.extend({content:le(al).default([]),structuredContent:Me(b(),Oe()).optional(),isError:Ue().optional()}),dO=Si.or(Be.extend({toolResult:Oe()})),S$=Oo.extend({name:b(),arguments:Me(b(),Oe()).optional()}),Nn=Ge.extend({method:U("tools/call"),params:S$}),T$=Tt.extend({method:U("notifications/tools/list_changed"),params:St.optional()}),pO=D({autoRefresh:Ue().default(!0),debounceMs:be().int().nonnegative().default(300)}),qo=lt(["debug","info","notice","warning","error","critical","alert","emergency"]),z$=vt.extend({level:qo}),cl=Ge.extend({method:U("logging/setLevel"),params:z$}),E$=St.extend({level:qo,logger:b().optional(),data:Oe()}),P$=Tt.extend({method:U("notifications/message"),params:E$}),I$=D({name:b().optional()}),R$=D({hints:le(I$).optional(),costPriority:be().min(0).max(1).optional(),speedPriority:be().min(0).max(1).optional(),intelligencePriority:be().min(0).max(1).optional()}),O$=D({mode:lt(["auto","required","none"]).optional()}),M$=D({type:U("tool_result"),toolUseId:b().describe("The unique identifier for the corresponding tool call."),content:le(al).default([]),structuredContent:D({}).loose().optional(),isError:Ue().optional(),_meta:Me(b(),Oe()).optional()}),C$=Wu("type",[ol,sl,il]),ii=Wu("type",[ol,sl,il,g$,M$]),A$=D({role:Do,content:ze([ii,le(ii)]),_meta:Me(b(),Oe()).optional()}),N$=Oo.extend({messages:le(A$),modelPreferences:R$.optional(),systemPrompt:b().optional(),includeContext:lt(["none","thisServer","allServers"]).optional(),temperature:be().optional(),maxTokens:be().int(),stopSequences:le(b()).optional(),metadata:We.optional(),tools:le(Vm).optional(),toolChoice:O$.optional()}),j$=Ge.extend({method:U("sampling/createMessage"),params:N$}),Lo=Be.extend({model:b(),stopReason:Ne(lt(["endTurn","stopSequence","maxTokens"]).or(b())),role:Do,content:C$}),ul=Be.extend({model:b(),stopReason:Ne(lt(["endTurn","stopSequence","maxTokens","toolUse"]).or(b())),role:Do,content:ze([ii,le(ii)])}),Z$=D({type:U("boolean"),title:b().optional(),description:b().optional(),default:Ue().optional()}),D$=D({type:U("string"),title:b().optional(),description:b().optional(),minLength:be().optional(),maxLength:be().optional(),format:lt(["email","uri","date","date-time"]).optional(),default:b().optional()}),q$=D({type:lt(["number","integer"]),title:b().optional(),description:b().optional(),minimum:be().optional(),maximum:be().optional(),default:be().optional()}),L$=D({type:U("string"),title:b().optional(),description:b().optional(),enum:le(b()),default:b().optional()}),F$=D({type:U("string"),title:b().optional(),description:b().optional(),oneOf:le(D({const:b(),title:b()})),default:b().optional()}),U$=D({type:U("string"),title:b().optional(),description:b().optional(),enum:le(b()),enumNames:le(b()).optional(),default:b().optional()}),V$=ze([L$,F$]),H$=D({type:U("array"),title:b().optional(),description:b().optional(),minItems:be().optional(),maxItems:be().optional(),items:D({type:U("string"),enum:le(b())}),default:le(b()).optional()}),W$=D({type:U("array"),title:b().optional(),description:b().optional(),minItems:be().optional(),maxItems:be().optional(),items:D({anyOf:le(D({const:b(),title:b()}))}),default:le(b()).optional()}),G$=ze([H$,W$]),B$=ze([U$,V$,G$]),J$=ze([B$,Z$,D$,q$]),K$=Oo.extend({mode:U("form").optional(),message:b(),requestedSchema:D({type:U("object"),properties:Me(b(),J$),required:le(b()).optional()})}),Q$=Oo.extend({mode:U("url"),message:b(),elicitationId:b(),url:b().url()}),X$=ze([K$,Q$]),Y$=Ge.extend({method:U("elicitation/create"),params:X$}),ek=St.extend({elicitationId:b()}),tk=Tt.extend({method:U("notifications/elicitation/complete"),params:ek}),jn=Be.extend({action:lt(["accept","decline","cancel"]),content:Gu(t=>t===null?void 0:t,Me(b(),ze([b(),be(),Ue(),le(b())])).optional())}),rk=D({type:U("ref/resource"),uri:b()});var nk=D({type:U("ref/prompt"),name:b()}),ok=vt.extend({ref:ze([nk,rk]),argument:D({name:b(),value:b()}),context:D({arguments:Me(b(),b()).optional()}).optional()}),Ti=Ge.extend({method:U("completion/complete"),params:ok});function Hm(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function Wm(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var sk=Be.extend({completion:rt({values:le(b()).max(100),total:Ne(be().int()),hasMore:Ne(Ue())})}),ik=D({uri:b().startsWith("file://"),name:b().optional(),_meta:Me(b(),Oe()).optional()}),ak=Ge.extend({method:U("roots/list"),params:vt.optional()}),ll=Be.extend({roots:le(ik)}),ck=Tt.extend({method:U("notifications/roots/list_changed"),params:St.optional()}),fO=ze([di,el,Ti,cl,$i,wi,vi,xi,bi,a$,u$,Nn,ki,fi,hi,gi,_i]),mO=ze([li,pi,tl,ck,Zo]),hO=ze([ui,Lo,ul,jn,ll,mi,yi,Cn]),gO=ze([di,j$,Y$,ak,fi,hi,gi,_i]),yO=ze([li,pi,P$,d$,s$,T$,b$,Zo,tk]),_O=ze([ui,Bw,sk,x$,m$,t$,r$,o$,Si,k$,mi,yi,Cn]),L=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===W.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Bu(o.elicitations,r)}return new t(e,r,n)}},Bu=class extends L{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(W.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function kr(t){return t==="completed"||t==="failed"||t==="cancelled"}var Bm=Symbol("Let zodToJsonSchema decide on which parser to use");var Gm={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"},Jm=t=>typeof t=="string"?{...Gm,name:t}:{...Gm,...t};var Km=t=>{let e=Jm(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 dl(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function de(t,e,r,n,o){t[e]=r,dl(t,e,n,o)}var zi=(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 Ce(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?zi(e,t.currentPath):e.join("/")}}function Qm(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==O.ZodAny&&(r.items=K(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&de(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&de(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(de(r,"minItems",t.exactLength.value,t.exactLength.message,e),de(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}function Xm(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?de(r,"minimum",n.value,n.message,e):de(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),de(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?de(r,"maximum",n.value,n.message,e):de(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),de(r,"maximum",n.value,n.message,e));break;case"multipleOf":de(r,"multipleOf",n.value,n.message,e);break}return r}function Ym(){return{type:"boolean"}}function Ei(t,e){return K(t.type._def,e)}var eh=(t,e)=>K(t.innerType._def,e);function pl(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>pl(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 uk(t,e)}}var uk=(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":de(r,"minimum",n.value,n.message,e);break;case"max":de(r,"maximum",n.value,n.message,e);break}return r};function th(t,e){return{...K(t.innerType._def,e),default:t.defaultValue()}}function rh(t,e){return e.effectStrategy==="input"?K(t.schema._def,e):Ce(e)}function nh(t){return{type:"string",enum:Array.from(t.values)}}var lk=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function oh(t,e){let r=[K(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),K(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(lk(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 sh(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 fl,At={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:()=>(fl===void 0&&(fl=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),fl),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 Pi(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":de(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":de(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":Nt(r,"email",n.message,e);break;case"format:idn-email":Nt(r,"idn-email",n.message,e);break;case"pattern:zod":nt(r,At.email,n.message,e);break}break;case"url":Nt(r,"uri",n.message,e);break;case"uuid":Nt(r,"uuid",n.message,e);break;case"regex":nt(r,n.regex,n.message,e);break;case"cuid":nt(r,At.cuid,n.message,e);break;case"cuid2":nt(r,At.cuid2,n.message,e);break;case"startsWith":nt(r,RegExp(`^${ml(n.value,e)}`),n.message,e);break;case"endsWith":nt(r,RegExp(`${ml(n.value,e)}$`),n.message,e);break;case"datetime":Nt(r,"date-time",n.message,e);break;case"date":Nt(r,"date",n.message,e);break;case"time":Nt(r,"time",n.message,e);break;case"duration":Nt(r,"duration",n.message,e);break;case"length":de(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),de(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{nt(r,RegExp(ml(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&Nt(r,"ipv4",n.message,e),n.version!=="v4"&&Nt(r,"ipv6",n.message,e);break}case"base64url":nt(r,At.base64url,n.message,e);break;case"jwt":nt(r,At.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&nt(r,At.ipv4Cidr,n.message,e),n.version!=="v4"&&nt(r,At.ipv6Cidr,n.message,e);break}case"emoji":nt(r,At.emoji(),n.message,e);break;case"ulid":{nt(r,At.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{Nt(r,"binary",n.message,e);break}case"contentEncoding:base64":{de(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{nt(r,At.base64,n.message,e);break}}break}case"nanoid":nt(r,At.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function ml(t,e){return e.patternStrategy==="escape"?pk(t):t}var dk=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function pk(t){let e="";for(let r=0;r<t.length;r++)dk.has(t[r])||(e+="\\"),e+=t[r];return e}function Nt(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}}})):de(t,"format",e,r,n)}function nt(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:ih(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):de(t,"pattern",ih(e,n),r,n)}function ih(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 zi(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===z.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]})??Re(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===z.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=Ti(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===z.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===z.ZodBranded&&t.keyType._def.type._def.typeName===z.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=Si(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function sh(t,e){if(e.mapStrategy==="record")return zi(t,e);let r=W(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||Re(e),n=W(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||Re(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function ih(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 ah(t){return t.target==="openAi"?void 0:{not:Re({...t,currentPath:[...t.currentPath,"not"]})}}function ch(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var jo={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function lh(t,e){if(e.target==="openApi3")return uh(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in jo&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=jo[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 uh(t,e)}var uh=(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 dh(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:jo[t.innerType._def.typeName],nullable:!0}:{type:[jo[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 ph(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",cl(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?ce(r,"minimum",n.value,n.message,e):ce(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),ce(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?ce(r,"maximum",n.value,n.message,e):ce(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),ce(r,"maximum",n.value,n.message,e));break;case"multipleOf":ce(r,"multipleOf",n.value,n.message,e);break}return r}function fh(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=ck(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=ak(t,e);return i!==void 0&&(n.additionalProperties=i),n}function ak(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 ck(t){try{return t.isOptional()}catch{return!0}}var mh=(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:Re(e)},r]}:Re(e)};var hh=(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 gh(t,e){return W(t.type._def,e)}function yh(t,e){let n={type:"array",uniqueItems:!0,items:W(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&ce(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&ce(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}function _h(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 vh(t){return{not:Re(t)}}function xh(t){return Re(t)}var bh=(t,e)=>W(t.innerType._def,e);var wh=(t,e,r)=>{switch(e){case z.ZodString:return Ti(t,r);case z.ZodNumber:return ph(t,r);case z.ZodObject:return fh(t,r);case z.ZodBigInt:return Jm(t,r);case z.ZodBoolean:return Qm();case z.ZodDate:return ul(t,r);case z.ZodUndefined:return vh(r);case z.ZodNull:return ch(r);case z.ZodArray:return Km(t,r);case z.ZodUnion:case z.ZodDiscriminatedUnion:return lh(t,r);case z.ZodIntersection:return rh(t,r);case z.ZodTuple:return _h(t,r);case z.ZodRecord:return zi(t,r);case z.ZodLiteral:return nh(t,r);case z.ZodEnum:return th(t);case z.ZodNativeEnum:return ih(t);case z.ZodNullable:return dh(t,r);case z.ZodOptional:return mh(t,r);case z.ZodMap:return sh(t,r);case z.ZodSet:return yh(t,r);case z.ZodLazy:return()=>t.getter()._def;case z.ZodPromise:return gh(t,r);case z.ZodNaN:case z.ZodNever:return ah(r);case z.ZodEffects:return eh(t,r);case z.ZodAny:return Re(r);case z.ZodUnknown:return xh(r);case z.ZodDefault:return Ym(t,r);case z.ZodBranded:return Si(t,r);case z.ZodReadonly:return bh(t,r);case z.ZodCatch:return Xm(t,r);case z.ZodPipeline:return hh(t,r);case z.ZodFunction:case z.ZodVoid:case z.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!==Wm)return a}if(n&&!r){let a=uk(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=wh(t,t.typeName,e),i=typeof s=="function"?W(s(),e):s;if(i&&lk(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var uk=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:ki(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`),Re(e)):e.$refStrategy==="seen"?Re(e):void 0}},lk=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var pl=(t,e)=>{let r=Bm(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)??Re(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)??Re(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 dk(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function fl(t,e){return $t(t)?Ou(t,{target:dk(e?.target),io:e?.pipeStrategy??"input"}):pl(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function ml(t){let r=br(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Ys(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function hl(t,e){let r=xr(t,e);if(!r.success)throw r.error;return r.data}var pk=6e4,Ei=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(ii,r=>{this._oncancel(r)}),this.setNotificationHandler(ci,r=>{this._onprogress(r)}),this.setRequestHandler(ai,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(ui,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new Z(U.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(di,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,m=new Z(d.error.code,d.error.message,d.error.data);l(m)}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 Z(U.InvalidParams,`Task not found: ${s}`);if(!$r(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if($r(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[wr]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(pi,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 Z(U.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(mi,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new Z(U.InvalidParams,`Task not found: ${r.params.taskId}`);if($r(o.status))throw new Z(U.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 Z(U.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof Z?o:new Z(U.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),Z.fromError(U.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)||Am(s)?this._onresponse(s):Gu(s)?this._onrequest(s,i):Om(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=Z.fromError(U.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?.[wr]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:U.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=Im(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,m)=>{if(i.signal.aborted)throw new Z(U.ConnectionClosed,"Request was cancelled");let y={...m,relatedRequestId:e.id};s&&!y.relatedTask&&(y.relatedTask={taskId:s});let f=y.relatedTask?.taskId??s;return f&&c&&await c.updateTaskStatus(f,"input_required"),await this.request(l,d,y)},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:U.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 Z(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=Z.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 Z?i:new Z(U.InternalError,String(i))}}return}let s;try{let i=await this.request(e,Cn,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new Z(U.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},$r(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new Z(U.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new Z(U.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 Z?i:new Z(U.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=g=>{l(g)};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(g){d(g);return}n?.signal?.throwIfAborted();let m=this._requestMessageId++,y={...e,jsonrpc:"2.0",id:m};n?.onprogress&&(this._progressHandlers.set(m,n.onprogress),y.params={...e.params,_meta:{...e.params?._meta||{},progressToken:m}}),a&&(y.params={...y.params,task:a}),c&&(y.params={...y.params,_meta:{...y.params?._meta||{},[wr]:c}});let f=g=>{this._responseHandlers.delete(m),this._progressHandlers.delete(m),this._cleanupTimeout(m),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:m,reason:String(g)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(x=>this._onerror(new Error(`Failed to send cancellation: ${x}`)));let v=g instanceof Z?g:new Z(U.RequestTimeout,String(g));l(v)};this._responseHandlers.set(m,g=>{if(!n?.signal?.aborted){if(g instanceof Error)return l(g);try{let v=xr(r,g.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??pk,_=()=>f(Z.fromError(U.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(m,h,n?.maxTotalTimeout,_,n?.resetTimeoutOnProgress??!1);let p=c?.taskId;if(p){let g=v=>{let x=this._responseHandlers.get(m);x?x(v):this._onerror(new Error(`Response handler missing for side-channeled request ${m}`))};this._requestResolvers.set(m,g),this._enqueueTaskMessage(p,{type:"request",message:y,timestamp:Date.now()}).catch(v=>{this._cleanupTimeout(m),l(v)})}else this._transport.send(y,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(g=>{this._cleanupTimeout(m),l(g)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},li,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},fi,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},jm,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||{},[wr]: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||{},[wr]: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||{},[wr]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=ml(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=hl(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=ml(e);this._notificationHandlers.set(n,o=>{let s=hl(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"&&Gu(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new Z(U.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 Z(U.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new Z(U.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 Z(U.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=Ao.parse({method:"notifications/tasks/status",params:a});await this.notification(c),$r(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 Z(U.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if($r(a.status))throw new Z(U.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=Ao.parse({method:"notifications/tasks/status",params:c});await this.notification(u),$r(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function $h(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function kh(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];$h(i)&&$h(s)?r[o]={...i,...s}:r[o]=s}return r}var l_=uo(ep(),1),d_=uo(u_(),1);function rP(){let t=new l_.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,d_.default)(t),t}var da=class{constructor(e){this._ajv=e??rP()}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 pa=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 p_(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 f_(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 fa=class extends Ei{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(No.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 da,this.setRequestHandler(Ju,n=>this._oninitialize(n)),this.setNotificationHandler(Qu,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(ol,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=No.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new pa(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=kh(this._capabilities,e)}setRequestHandler(e,r){let o=br(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if($t(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=xr(jn,c);if(!l.success){let f=l.error instanceof Error?l.error.message:String(l.error);throw new Z(U.InvalidParams,`Invalid tools/call request: ${f}`)}let{params:d}=l.data,m=await Promise.resolve(r(c,u));if(d.task){let f=xr(Cn,m);if(!f.success){let h=f.error instanceof Error?f.error.message:String(f.error);throw new Z(U.InvalidParams,`Invalid task creation result: ${h}`)}return f.data}let y=xr(bi,m);if(!y.success){let f=y.error instanceof Error?y.error.message:String(y.error);throw new Z(U.InvalidParams,`Invalid tools/call result: ${f}`)}return y.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){f_(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&p_(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:zm.includes(r)?r:Hu,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"},si)}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},il,r):this.request({method:"sampling/createMessage",params:e},sl,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},wi,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},wi,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new Z(U.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof Z?i:new Z(U.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},al,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 h_=Symbol.for("mcp.completable");function cp(t){return!!t&&typeof t=="object"&&h_ in t}function g_(t){return t[h_]?.complete}var m_;(function(t){t.Completable="McpCompletable"})(m_||(m_={}));var nP=/^[A-Za-z0-9._-]{1,128}$/;function oP(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"),!nP.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 sP(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 up(t){let e=oP(t);return sP(t,e.warnings),e.isValid}var ma=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 ha=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 fa(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new ma(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(Mr(xi)),this.server.assertCanSetRequestHandler(Mr(jn)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(xi,()=>({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=On(r.inputSchema);return o?fl(o,{strictUnions:!0,pipeStrategy:"input"}):iP})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=On(r.outputSchema);o&&(n.outputSchema=fl(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(jn,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new Z(U.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new Z(U.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 Z(U.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new Z(U.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 Z&&n.code===U.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=On(e.inputSchema)??e.inputSchema,i=await Qs(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=Xs(a);throw new Z(U.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 Z(U.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=On(e.outputSchema),s=await Qs(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=Xs(i);throw new Z(U.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(m=>setTimeout(m,l));let d=await n.taskStore.getTask(c);if(!d)throw new Z(U.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(Mr($i)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler($i,async e=>{switch(e.params.ref.type){case"ref/prompt":return Um(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return Vm(e),this.handleResourceCompletion(e,e.params.ref);default:throw new Z(U.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new Z(U.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new Z(U.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return fs;let s=br(n.argsSchema)?.[e.params.argument.name];if(!cp(s))return fs;let i=g_(s);if(!i)return fs;let a=await i(e.params.argument.value,e.params.context);return __(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 fs;throw new Z(U.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return fs;let s=await o(e.params.argument.value,e.params.context);return __(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(Mr(hi)),this.server.assertCanSetRequestHandler(Mr(gi)),this.server.assertCanSetRequestHandler(Mr(yi)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(hi,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(gi,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(yi,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new Z(U.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 Z(U.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(Mr(_i)),this.server.assertCanSetRequestHandler(Mr(vi)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(_i,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?cP(r.argsSchema):void 0}))})),this.server.setRequestHandler(vi,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new Z(U.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new Z(U.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=On(n.argsSchema),s=await Qs(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=Xs(c);throw new Z(U.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:an(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=an(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 at?c._def?.innerType:c;return cp(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){up(e);let l={title:r,description:n,inputSchema:y_(o),outputSchema:y_(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"&&up(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=an(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=an(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];lp(c)?(o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!lp(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 iP={type:"object",properties:{}};function v_(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function aP(t){return"_def"in t||"_zod"in t||v_(t)}function lp(t){return typeof t!="object"||t===null||aP(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(v_)}function y_(t){if(t)return lp(t)?an(t):t}function cP(t){let e=br(t);return e?Object.entries(e).map(([r,n])=>{let o=om(n),s=sm(n);return{name:r,description:o,required:!s}}):[]}function Mr(t){let r=br(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Ys(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function __(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var fs={completion:{values:[],hasMore:!1}};var dp=uo(require("node:process"),1);var ga=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),uP(r)}clear(){this._buffer=void 0}};function uP(t){return Cm.parse(JSON.parse(t))}function x_(t){return JSON.stringify(t)+`
42
- `}var ya=class{constructor(e=dp.default.stdin,r=dp.default.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new ga,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=x_(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};var Or={"#fef08a":"yellow","#fca5a5":"red","#93c5fd":"blue"};function qt(t){return t==="answered"||t==="done"||t==="failed"||t==="wontfix"}function ms(t){return t==="red"?"fix":t==="blue"?"question":"highlight"}function b_(){return{version:"1.0",updatedAt:new Date().toISOString(),impls:[],artifacts:[],dependencies:[],checkpoints:[]}}function mt(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 pp=class extends Error{constructor(r,n,o){super(n);this.code=r;this.details=o;this.name="SharedError"}},fp=class extends pp{constructor(e,r){super("PARSE_JSON",`Failed to parse JSON in ${e}`,r),this.name="SharedJsonParseError"}};function w_(t,e){try{return JSON.parse(t)}catch(r){throw new fp(e,{raw:t,cause:r instanceof Error?r.message:String(r)})}}function qe(t,e=120){return t.length>e?t.slice(0,e)+"...":t}function mp(t){return JSON.parse(t.replace(/^\uFEFF/,""))}function hp(t){return t==="red"?"fix":t==="blue"?"question":"important"}function gp(t,e,r={}){let n=[],o=new Set,{floatingMemos:s=[]}=r;for(let i of e){let a=i.color.startsWith("#")?Or[i.color]||"red":i.color,c=hp(a),u=a==="red"?"#fca5a5":a==="blue"?"#93c5fd":"#fef08a",l=i.section.trim(),d=t.findIndex((m,y)=>!o.has(y)&&m.color===u&&m.section.trim()===l);if(d>=0){o.add(d);let m=t[d];n.push({type:c,text:m.text,section:i.section||m.section||"",context:m.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=Or[a.color]||"yellow";n.push({type:hp(c),text:a.text,section:a.section||"",context:a.context||"",feedback:""})}for(let i of s)i.text.trim()&&n.push({type:hp(i.color),text:"",section:"",context:"",feedback:i.text});return n}function rr(t){return t.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/\n/g,"&#10;").replace(/-->/g,"--&#62;")}function xa(t){return t.replace(/--&#62;/g,"-->").replace(/&#10;/g,`
43
- `).replace(/&quot;/g,'"').replace(/&amp;/g,"&")}function Lt(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 lP=/^<!-- USER_MEMO\s+id="([^"]+)"(?:\s+color="([^"]+)")?(?:\s+status="([^"]+)")?(?:\s+anchorText="([^"]*)")?\s*:\s*(.*?)\s*-->$/,dP=/^<!-- USER_MEMO\s*$/,pP=/^-->$/,fP=/^<!-- GATE\s*$/,mP=/^-->$/,hP=/^<!-- PLAN_CURSOR\s*$/,gP=/^-->$/,yP=/^<!-- CHECKPOINT\s+id="([^"]+)"\s+time="([^"]+)"\s+note="([^"]*)"\s+fixes=(\d+)\s+questions=(\d+)\s+highlights=(\d+)\s+sections="([^"]*)" -->$/,_P=/^---\s*\n([\s\S]*?)\n---\s*\n/,vP=/^<!-- @memo\s+id="([^"]+)"(?:\s+color="([^"]+)")?(?:\s+date="([^"]+)")?\s*-->$/,xP=/^<!-- @\/memo -->$/,bP=/^<!--$/,wP=/MD Feedback/,$P=/^<!-- \/?(USER_FEEDBACK_NOTES|@\/?feedback-notes)\b.*-->$/,kP=/^<!-- REVIEW_RESPONSE\s+to="([^"]+)"\s*-->$/,SP=/^<!-- \/REVIEW_RESPONSE\s*-->$/,TP=/^<!-- MEMO_IMPL\s*$/,zP=/^-->$/,EP=/^<!-- MEMO_ARTIFACT\s*$/,PP=/^-->$/,IP=/^<!-- MEMO_DEPENDENCY\s+id="([^"]+)"\s+from="([^"]+)"\s+to="([^"]+)"\s+type="([^"]+)" -->$/,_a=/<!-- HIGHLIGHT_MARK color="([^"]*)" text="([^"]*)" anchor="([^"]*)" -->/g,RP=10,S_=8,MP=3;function gs(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 eo(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 hs(t){let e={};for(let r of t){let n=r.trim().match(/^(\w+)="([^"]*)"$/);n&&(e[n[1]]=xa(n[2]))}return e}function st(t,e){let r="",n=t,o=n.match(_P);o&&(r=o[0],n=n.slice(o[0].length));let s=n.split(`
44
- `),i=[],a=[],c=[],u=[],l=[],d=[],m=[],y=[],f=null,h=null,_=new Set,p=0;for(;p<s.length;){let I=s[p],j=I.trim(),te=j.match(kP);if(te){h={id:`resp_${te[1]}`,to:te[1],bodyStartIdx:i.length,bodyEndIdx:-1},p++;continue}if(SP.test(j)){h&&(h.bodyEndIdx=i.length-1,c.push(h),h=null),p++;continue}let Q=j.match(lP);if(Q){if(_.has(Q[1])){p++;continue}_.add(Q[1]);let Ce=Q[4]?xa(Q[4]):yp(i),C=k_(i),Ze=Q[2]||"red",Ht=Q[3]||"open";a.push({id:Q[1],type:ms(Ze),status:Ht,owner:"human",source:"generic",color:Ze,text:Q[5].replace(/--\u200B>/g,"-->"),anchorText:Ce||"",anchor:C>=0?`L${C+1}|${Lt(i[C]||"")}`:"",createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()}),p++;continue}if(dP.test(j)){let Ce=[];for(p++;p<s.length&&!pP.test(s[p].trim());)Ce.push(s[p]),p++;p++;let C=hs(Ce);if(C.id&&_.has(C.id))continue;C.id&&_.add(C.id);let Ze=C.anchorText||yp(i)||"",Ht={id:C.id||"memo_parse_tmp",type:C.type||"fix",status:C.status||"open",owner:C.owner||"human",source:C.source||"generic",color:C.color||"red",text:C.text||"",anchorText:Ze,anchor:C.anchor||"",createdAt:C.createdAt||new Date().toISOString(),updatedAt:C.updatedAt||new Date().toISOString()},{lineIdx:xt,confidence:co}=_p(i,Ht),iv=xt>=0?`L${xt+1}|${Lt(i[xt]||"")}`:C.anchor||"",av=xt>=0&&!gs(i[xt])?i[xt].trim().slice(0,80):Ze;a.push({id:C.id||mt("memo"),type:C.type||ms(C.color||"red"),status:C.status||"open",owner:C.owner||"human",source:C.source||"generic",color:C.color||"red",text:C.text||"",anchorText:av,anchor:iv,createdAt:C.createdAt||new Date().toISOString(),updatedAt:C.updatedAt||new Date().toISOString(),...C.rejectReason?{rejectReason:C.rejectReason}:{},anchorConfidence:co});continue}if(fP.test(j)){let Ce=[];for(p++;p<s.length&&!mP.test(s[p].trim());)Ce.push(s[p]),p++;p++;let C=hs(Ce),Ze=C.override;y.push({id:C.id||mt("gate"),type:C.type||"custom",status:C.status||"blocked",blockedBy:C.blockedBy?C.blockedBy.split(",").map(Ht=>Ht.trim()).filter(Boolean):[],canProceedIf:C.canProceedIf||"",doneDefinition:C.doneDefinition||"",...Ze?{override:Ze}:{}});continue}if(hP.test(j)){let Ce=[];for(p++;p<s.length&&!gP.test(s[p].trim());)Ce.push(s[p]),p++;p++;let C=hs(Ce);f={taskId:C.taskId||"",step:C.step||"",nextAction:C.nextAction||"",lastSeenHash:C.lastSeenHash||"",updatedAt:C.updatedAt||new Date().toISOString()};continue}if(TP.test(j)){let Ce=[];for(p++;p<s.length&&!zP.test(s[p].trim());)Ce.push(s[p]),p++;p++;let C=hs(Ce),Ze=[];try{Ze=w_(C.operations||"[]","MEMO_IMPL.operations")}catch{}u.push({id:C.id||mt("impl",{separator:"_"}),memoId:C.memoId||"",status:C.status||"applied",operations:Ze,summary:C.summary||"",appliedAt:C.appliedAt||new Date().toISOString()});continue}if(EP.test(j)){let Ce=[];for(p++;p<s.length&&!PP.test(s[p].trim());)Ce.push(s[p]),p++;p++;let C=hs(Ce);l.push({id:C.id||mt("art",{separator:"_"}),memoId:C.memoId||"",files:C.files?C.files.split(",").map(Ze=>Ze.trim()).filter(Boolean):[],linkedAt:C.linkedAt||new Date().toISOString()});continue}let je=j.match(IP);if(je){d.push({id:je[1],from:je[2],to:je[3],type:je[4]}),p++;continue}let Je=j.match(yP);if(Je){m.push({id:Je[1],timestamp:Je[2],note:Je[3],fixes:parseInt(Je[4],10),questions:parseInt(Je[5],10),highlights:parseInt(Je[6],10),sectionsReviewed:Je[7]?Je[7].split(","):[]}),p++;continue}let Vt=j.match(vP);if(Vt){let Ce=[],C=yp(i),Ze=k_(i);for(p++;p<s.length&&!xP.test(s[p].trim());)Ce.push(s[p]),p++;p++;let Ht=Ce.map(xt=>xt.replace(/^<!--\s*/,"").replace(/\s*-->$/,"")).join(`
45
- `).trim();a.push({id:Vt[1],type:ms(Vt[2]||"red"),status:"open",owner:"human",source:"generic",color:Vt[2]||"red",text:Ht,anchorText:C||"",anchor:Ze>=0?`L${Ze+1}|${Lt(i[Ze]||"")}`:"",createdAt:Vt[3]||new Date().toISOString(),updatedAt:Vt[3]||new Date().toISOString()});continue}if(bP.test(j)&&p+1<s.length&&wP.test(s[p+1])){for(;p<s.length&&!s[p].includes("-->");)p++;p++;continue}if($P.test(j)){p++;continue}i.push(I),p++}for(;i.length>0&&i[i.length-1].trim()==="";)i.pop();h&&(h.bodyEndIdx=i.length-1,c.push(h));let g=new Set(c.map(I=>I.to));for(let I of a)I.status==="open"&&g.has(I.id)&&(I.status="needs_review");let v=I=>I.replace(/^#+\s*/,"").trim(),x=.7,b=I=>new Set(I.toLowerCase().split(/\s+/).filter(Boolean)),S=(I,j)=>{if(I.size===0&&j.size===0)return 1;let te=0;for(let je of I)j.has(je)&&te++;let Q=I.size+j.size-te;return Q===0?0:te/Q},E=new Set,F=[];for(let I of a.filter(j=>j.color==="red"||j.color==="blue")){let j=v(I.anchorText),te=v(I.text);E.add(`${I.color}|${j}`),I.text&&E.add(`${I.color}|${te}`),j&&F.push({color:I.color,words:b(j)}),te&&F.push({color:I.color,words:b(te)})}let ye=(I,j)=>{if(!j)return!1;let te=b(j);for(let Q of F)if(Q.color===I&&S(te,Q.words)>=x)return!0;return!1},B={red:a.some(I=>I.color==="red"&&I.source!=="recovered-highlight"),blue:a.some(I=>I.color==="blue"&&I.source!=="recovered-highlight")};_a.lastIndex=0;let G;for(;(G=_a.exec(n))!==null;){let I=ZP(G[1]);if(I!=="red"&&I!=="blue"||B[I])continue;let j=va(G[2]).trim(),te=va(G[3]).trim();if(!j&&!te)continue;let Q=te?`${I}|${v(te)}`:"",je=j?`${I}|${v(j)}`:"";if(Q&&E.has(Q)||je&&E.has(je)||ye(I,v(te))||ye(I,v(j)))continue;let Je=te||j;if(Je.includes("anchorText=")||Je.includes("<!-- ")||Je.length<S_)continue;let Vt=Je.slice(0,40),Ce=eo(Vt),C=Vt?i.findIndex(co=>!gs(co)&&(co.includes(Vt)||eo(co).includes(Ce))):-1;if(C<0)continue;let Ze=`L${C+1}|${Lt(i[C]||"")}`,Ht=new Date().toISOString(),xt=`memo_recovered_${Lt(`${I}|${Je}|${j}`)}`;_.has(xt)||(_.add(xt),a.push({id:xt,type:ms(I),status:"open",owner:"human",source:"recovered-highlight",color:I,text:j,anchorText:Je,anchor:Ze,createdAt:Ht,updatedAt:Ht}),Q&&E.add(Q),je&&E.add(je))}let me=i.filter(I=>!gs(I)),ne=me.join(`
46
- `),ge=me.map(I=>eo(I)).join(`
47
- `),k=a.filter(I=>{if(I.source!=="recovered-highlight")return!0;if(I.anchorText.includes("<!-- HIGHLIGHT_MARK")||I.anchorText.includes("<!-- USER_MEMO")||I.anchorText.includes("<!-- MEMO_IMPL")||I.anchorConfidence==="line_number"||I.anchorConfidence==="fallback")return!1;let j=(I.anchorText.trim()||I.text.trim()).slice(0,40);if(!j)return!0;let te=eo(j);return!!(ne.includes(j)||ge.includes(te))}),D={frontmatter:r,body:i.join(`
48
- `),memos:k,responses:c,impls:u,artifacts:l,dependencies:d,checkpoints:m,gates:y,cursor:f};if(!e)return D;let he=(I,j)=>{let te=new Set(I.map(Q=>Q.id));return[...I,...j.filter(Q=>!te.has(Q.id))]};return D.impls=he(D.impls,e.impls||[]),D.artifacts=he(D.artifacts,e.artifacts||[]),D.dependencies=he(D.dependencies,e.dependencies||[]),D.checkpoints=he(D.checkpoints,e.checkpoints||[]),D}function OP(t){let e=t.split(`
49
- `),n=e.filter(o=>!gs(o)).join(`
50
- `);return e.filter(o=>{_a.lastIndex=0;let s=_a.exec(o.trim());if(!s)return!0;let i=va(s[3]).trim(),a=va(s[2]).trim(),c=(i||a).slice(0,40);return c?n.includes(c):!0}).join(`
51
- `)}function to(t){let e=[];t.frontmatter&&e.push(t.frontmatter.trimEnd());let r=OP(t.body),n=jP(r,t.memos,t.responses||[]);e.push(n);for(let d of t.gates)e.push(AP(d));t.cursor&&e.push(CP(t.cursor));let o=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 Ii(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===O.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:K(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??Ce(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:K(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===O.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=Pi(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===O.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===O.ZodBranded&&t.keyType._def.type._def.typeName===O.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=Ei(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function ah(t,e){if(e.mapStrategy==="record")return Ii(t,e);let r=K(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||Ce(e),n=K(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||Ce(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function ch(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 uh(t){return t.target==="openAi"?void 0:{not:Ce({...t,currentPath:[...t.currentPath,"not"]})}}function lh(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Fo={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function ph(t,e){if(e.target==="openApi3")return dh(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in Fo&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=Fo[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 dh(t,e)}var dh=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((n,o)=>K(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 fh(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:Fo[t.innerType._def.typeName],nullable:!0}:{type:[Fo[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=K(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=K(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function mh(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",dl(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?de(r,"minimum",n.value,n.message,e):de(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),de(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?de(r,"maximum",n.value,n.message,e):de(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),de(r,"maximum",n.value,n.message,e));break;case"multipleOf":de(r,"multipleOf",n.value,n.message,e);break}return r}function hh(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=mk(c);u&&r&&(c._def.typeName==="ZodOptional"&&(c=c._def.innerType),c.isNullable()||(c=c.nullable()),u=!1);let l=K(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=fk(t,e);return i!==void 0&&(n.additionalProperties=i),n}function fk(t,e){if(t.catchall._def.typeName!=="ZodNever")return K(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 mk(t){try{return t.isOptional()}catch{return!0}}var gh=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return K(t.innerType._def,e);let r=K(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:Ce(e)},r]}:Ce(e)};var yh=(t,e)=>{if(e.pipeStrategy==="input")return K(t.in._def,e);if(e.pipeStrategy==="output")return K(t.out._def,e);let r=K(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),n=K(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(o=>o!==void 0)}};function _h(t,e){return K(t.type._def,e)}function vh(t,e){let n={type:"array",uniqueItems:!0,items:K(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&de(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&de(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}function xh(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,n)=>K(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:K(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,n)=>K(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}function bh(t){return{not:Ce(t)}}function wh(t){return Ce(t)}var $h=(t,e)=>K(t.innerType._def,e);var kh=(t,e,r)=>{switch(e){case O.ZodString:return Pi(t,r);case O.ZodNumber:return mh(t,r);case O.ZodObject:return hh(t,r);case O.ZodBigInt:return Xm(t,r);case O.ZodBoolean:return Ym();case O.ZodDate:return pl(t,r);case O.ZodUndefined:return bh(r);case O.ZodNull:return lh(r);case O.ZodArray:return Qm(t,r);case O.ZodUnion:case O.ZodDiscriminatedUnion:return ph(t,r);case O.ZodIntersection:return oh(t,r);case O.ZodTuple:return xh(t,r);case O.ZodRecord:return Ii(t,r);case O.ZodLiteral:return sh(t,r);case O.ZodEnum:return nh(t);case O.ZodNativeEnum:return ch(t);case O.ZodNullable:return fh(t,r);case O.ZodOptional:return gh(t,r);case O.ZodMap:return ah(t,r);case O.ZodSet:return vh(t,r);case O.ZodLazy:return()=>t.getter()._def;case O.ZodPromise:return _h(t,r);case O.ZodNaN:case O.ZodNever:return uh(r);case O.ZodEffects:return rh(t,r);case O.ZodAny:return Ce(r);case O.ZodUnknown:return wh(r);case O.ZodDefault:return th(t,r);case O.ZodBranded:return Ei(t,r);case O.ZodReadonly:return $h(t,r);case O.ZodCatch:return eh(t,r);case O.ZodPipeline:return yh(t,r);case O.ZodFunction:case O.ZodVoid:case O.ZodSymbol:return;default:return(n=>{})(e)}};function K(t,e,r=!1){let n=e.seen.get(t);if(e.override){let a=e.override?.(t,e,n,r);if(a!==Bm)return a}if(n&&!r){let a=hk(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=kh(t,t.typeName,e),i=typeof s=="function"?K(s(),e):s;if(i&&gk(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var hk=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:zi(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`),Ce(e)):e.$refStrategy==="seen"?Ce(e):void 0}},gk=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var hl=(t,e)=>{let r=Km(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((c,[u,l])=>({...c,[u]:K(l._def,{...r,currentPath:[...r.basePath,r.definitionPath,u]},!0)??Ce(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=K(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??Ce(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 yk(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function gl(t,e){return kt(t)?ju(t,{target:yk(e?.target),io:e?.pipeStrategy??"input"}):hl(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function yl(t){let r=wr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=ni(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function _l(t,e){let r=br(t,e);if(!r.success)throw r.error;return r.data}var _k=6e4,Ri=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(li,r=>{this._oncancel(r)}),this.setNotificationHandler(pi,r=>{this._onprogress(r)}),this.setRequestHandler(di,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(fi,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new L(W.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(hi,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,f=new L(d.error.code,d.error.message,d.error.data);l(f)}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 L(W.InvalidParams,`Task not found: ${s}`);if(!kr(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(kr(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[$r]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(gi,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 L(W.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(_i,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new L(W.InvalidParams,`Task not found: ${r.params.taskId}`);if(kr(o.status))throw new L(W.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 L(W.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof L?o:new L(W.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),L.fromError(W.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),Mo(s)||Nm(s)?this._onresponse(s):Qu(s)?this._onrequest(s,i):Am(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=L.fromError(W.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?.[$r]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:W.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=Om(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,f)=>{if(i.signal.aborted)throw new L(W.ConnectionClosed,"Request was cancelled");let y={...f,relatedRequestId:e.id};s&&!y.relatedTask&&(y.relatedTask={taskId:s});let p=y.relatedTask?.taskId??s;return p&&c&&await c.updateTaskStatus(p,"input_required"),await this.request(l,d,y)},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:W.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),Mo(e))n(e);else{let i=new L(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(Mo(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),Mo(e))o(e);else{let i=L.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 L?i:new L(W.InternalError,String(i))}}return}let s;try{let i=await this.request(e,Cn,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new L(W.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},kr(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new L(W.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new L(W.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 L?i:new L(W.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 f=this._requestMessageId++,y={...e,jsonrpc:"2.0",id:f};n?.onprogress&&(this._progressHandlers.set(f,n.onprogress),y.params={...e.params,_meta:{...e.params?._meta||{},progressToken:f}}),a&&(y.params={...y.params,task:a}),c&&(y.params={...y.params,_meta:{...y.params?._meta||{},[$r]:c}});let p=$=>{this._responseHandlers.delete(f),this._progressHandlers.delete(f),this._cleanupTimeout(f),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:f,reason:String($)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(m=>this._onerror(new Error(`Failed to send cancellation: ${m}`)));let S=$ instanceof L?$:new L(W.RequestTimeout,String($));l(S)};this._responseHandlers.set(f,$=>{if(!n?.signal?.aborted){if($ instanceof Error)return l($);try{let S=br(r,$.result);S.success?u(S.data):l(S.error)}catch(S){l(S)}}}),n?.signal?.addEventListener("abort",()=>{p(n?.signal?.reason)});let g=n?.timeout??_k,h=()=>p(L.fromError(W.RequestTimeout,"Request timed out",{timeout:g}));this._setupTimeout(f,g,n?.maxTotalTimeout,h,n?.resetTimeoutOnProgress??!1);let _=c?.taskId;if(_){let $=S=>{let m=this._responseHandlers.get(f);m?m(S):this._onerror(new Error(`Response handler missing for side-channeled request ${f}`))};this._requestResolvers.set(f,$),this._enqueueTaskMessage(_,{type:"request",message:y,timestamp:Date.now()}).catch(S=>{this._cleanupTimeout(f),l(S)})}else this._transport.send(y,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch($=>{this._cleanupTimeout(f),l($)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},mi,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},yi,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},Dm,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||{},[$r]: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||{},[$r]: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||{},[$r]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=yl(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=_l(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=yl(e);this._notificationHandlers.set(n,o=>{let s=_l(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"&&Qu(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new L(W.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 L(W.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new L(W.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 L(W.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=Zo.parse({method:"notifications/tasks/status",params:a});await this.notification(c),kr(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 L(W.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(kr(a.status))throw new L(W.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=Zo.parse({method:"notifications/tasks/status",params:c});await this.notification(u),kr(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function Sh(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function Th(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 p_=mo(np(),1),f_=mo(d_(),1);function uP(){let t=new p_.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,f_.default)(t),t}var fa=class{constructor(e){this._ajv=e??uP()}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 ma=class{constructor(e){this._server=e}requestStream(e,r,n){return this._server.requestStream(e,r,n)}createMessageStream(e,r){let n=this._server.getClientCapabilities();if((e.tools||e.toolChoice)&&!n?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let o=e.messages[e.messages.length-1],s=Array.isArray(o.content)?o.content:[o.content],i=s.some(l=>l.type==="tool_result"),a=e.messages.length>1?e.messages[e.messages.length-2]:void 0,c=a?Array.isArray(a.content)?a.content:[a.content]:[],u=c.some(l=>l.type==="tool_use");if(i){if(s.some(l=>l.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!u)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(u){let l=new Set(c.filter(f=>f.type==="tool_use").map(f=>f.id)),d=new Set(s.filter(f=>f.type==="tool_result").map(f=>f.toolUseId));if(l.size!==d.size||![...l].every(f=>d.has(f)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return this.requestStream({method:"sampling/createMessage",params:e},Lo,r)}elicitInputStream(e,r){let n=this._server.getClientCapabilities(),o=e.mode??"form";switch(o){case"url":{if(!n?.elicitation?.url)throw new Error("Client does not support url elicitation.");break}case"form":{if(!n?.elicitation?.form)throw new Error("Client does not support form elicitation.");break}}let s=o==="form"&&e.mode===void 0?{...e,mode:"form"}:e;return this.requestStream({method:"elicitation/create",params:s},jn,r)}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 m_(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 h_(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 ha=class extends Ri{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(qo.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 fa,this.setRequestHandler(el,n=>this._oninitialize(n)),this.setNotificationHandler(tl,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(cl,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=qo.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new ma(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=Th(this._capabilities,e)}setRequestHandler(e,r){let o=wr(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(kt(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=br(Nn,c);if(!l.success){let p=l.error instanceof Error?l.error.message:String(l.error);throw new L(W.InvalidParams,`Invalid tools/call request: ${p}`)}let{params:d}=l.data,f=await Promise.resolve(r(c,u));if(d.task){let p=br(Cn,f);if(!p.success){let g=p.error instanceof Error?p.error.message:String(p.error);throw new L(W.InvalidParams,`Invalid task creation result: ${g}`)}return p.data}let y=br(Si,f);if(!y.success){let p=y.error instanceof Error?y.error.message:String(y.error);throw new L(W.InvalidParams,`Invalid tools/call result: ${p}`)}return y.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){h_(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&m_(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:Pm.includes(r)?r:Ju,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"},ui)}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},ul,r):this.request({method:"sampling/createMessage",params:e},Lo,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},jn,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},jn,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new L(W.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof L?i:new L(W.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},ll,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 y_=Symbol.for("mcp.completable");function dp(t){return!!t&&typeof t=="object"&&y_ in t}function __(t){return t[y_]?.complete}var g_;(function(t){t.Completable="McpCompletable"})(g_||(g_={}));var lP=/^[A-Za-z0-9._-]{1,128}$/;function dP(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"),!lP.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 pP(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 pp(t){let e=dP(t);return pP(t,e.warnings),e.isValid}var ga=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 ya=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 ha(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new ga(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(Mr(ki)),this.server.assertCanSetRequestHandler(Mr(Nn)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(ki,()=>({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=On(r.inputSchema);return o?gl(o,{strictUnions:!0,pipeStrategy:"input"}):fP})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=On(r.outputSchema);o&&(n.outputSchema=gl(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(Nn,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new L(W.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new L(W.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 L(W.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new L(W.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 L&&n.code===W.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=On(e.inputSchema)??e.inputSchema,i=await ti(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=ri(a);throw new L(W.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 L(W.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=On(e.outputSchema),s=await ti(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=ri(i);throw new L(W.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(f=>setTimeout(f,l));let d=await n.taskStore.getTask(c);if(!d)throw new L(W.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(Mr(Ti)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(Ti,async e=>{switch(e.params.ref.type){case"ref/prompt":return Hm(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return Wm(e),this.handleResourceCompletion(e,e.params.ref);default:throw new L(W.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new L(W.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new L(W.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return _s;let s=wr(n.argsSchema)?.[e.params.argument.name];if(!dp(s))return _s;let i=__(s);if(!i)return _s;let a=await i(e.params.argument.value,e.params.context);return x_(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 _s;throw new L(W.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return _s;let s=await o(e.params.argument.value,e.params.context);return x_(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(Mr(vi)),this.server.assertCanSetRequestHandler(Mr(xi)),this.server.assertCanSetRequestHandler(Mr(bi)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(vi,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(xi,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(bi,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new L(W.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 L(W.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(Mr(wi)),this.server.assertCanSetRequestHandler(Mr($i)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(wi,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?hP(r.argsSchema):void 0}))})),this.server.setRequestHandler($i,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new L(W.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new L(W.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=On(n.argsSchema),s=await ti(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=ri(c);throw new L(W.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:an(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=an(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 ct?c._def?.innerType:c;return dp(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){pp(e);let l={title:r,description:n,inputSchema:v_(o),outputSchema:v_(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"&&pp(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=an(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=an(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];fp(c)?(o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!fp(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 fP={type:"object",properties:{}};function b_(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function mP(t){return"_def"in t||"_zod"in t||b_(t)}function fp(t){return typeof t!="object"||t===null||mP(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(b_)}function v_(t){if(t)return fp(t)?an(t):t}function hP(t){let e=wr(t);return e?Object.entries(e).map(([r,n])=>{let o=im(n),s=am(n);return{name:r,description:o,required:!s}}):[]}function Mr(t){let r=wr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=ni(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function x_(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var _s={completion:{values:[],hasMore:!1}};var mp=mo(require("node:process"),1);var _a=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),gP(r)}clear(){this._buffer=void 0}};function gP(t){return jm.parse(JSON.parse(t))}function w_(t){return JSON.stringify(t)+`
42
+ `}var va=class{constructor(e=mp.default.stdin,r=mp.default.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new _a,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=w_(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};var Cr={"#fef08a":"yellow","#fca5a5":"red","#93c5fd":"blue"};function Ft(t){return t==="answered"||t==="done"||t==="failed"||t==="wontfix"}function vs(t){return t==="red"?"fix":t==="blue"?"question":"highlight"}function $_(){return{version:"1.0",updatedAt:new Date().toISOString(),impls:[],artifacts:[],dependencies:[],checkpoints:[]}}function ht(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 hp=class extends Error{constructor(r,n,o){super(n);this.code=r;this.details=o;this.name="SharedError"}},gp=class extends hp{constructor(e,r){super("PARSE_JSON",`Failed to parse JSON in ${e}`,r),this.name="SharedJsonParseError"}};function k_(t,e){try{return JSON.parse(t)}catch(r){throw new gp(e,{raw:t,cause:r instanceof Error?r.message:String(r)})}}function Fe(t,e=120){return t.length>e?t.slice(0,e)+"...":t}function yp(t){return JSON.parse(t.replace(/^\uFEFF/,""))}function _p(t){return t==="red"?"fix":t==="blue"?"question":"important"}function vp(t,e,r={}){let n=[],o=new Set,{floatingMemos:s=[]}=r;for(let i of e){let a=i.color.startsWith("#")?Cr[i.color]||"red":i.color,c=_p(a),u=a==="red"?"#fca5a5":a==="blue"?"#93c5fd":"#fef08a",l=i.section.trim(),d=t.findIndex((f,y)=>!o.has(y)&&f.color===u&&f.section.trim()===l);if(d>=0){o.add(d);let f=t[d];n.push({type:c,text:f.text,section:i.section||f.section||"",context:f.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=Cr[a.color]||"yellow";n.push({type:_p(c),text:a.text,section:a.section||"",context:a.context||"",feedback:""})}for(let i of s)i.text.trim()&&n.push({type:_p(i.color),text:"",section:"",context:"",feedback:i.text});return n}function rr(t){return t.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/\n/g,"&#10;").replace(/-->/g,"--&#62;")}function wa(t){return t.replace(/--&#62;/g,"-->").replace(/&#10;/g,`
43
+ `).replace(/&quot;/g,'"').replace(/&amp;/g,"&")}function Ut(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 yP=/^<!-- USER_MEMO\s+id="([^"]+)"(?:\s+color="([^"]+)")?(?:\s+status="([^"]+)")?(?:\s+anchorText="([^"]*)")?\s*:\s*(.*?)\s*-->$/,_P=/^<!-- USER_MEMO\s*$/,vP=/^-->$/,xP=/^<!-- GATE\s*$/,bP=/^-->$/,wP=/^<!-- PLAN_CURSOR\s*$/,$P=/^-->$/,kP=/^<!-- CHECKPOINT\s+id="([^"]+)"\s+time="([^"]+)"\s+note="([^"]*)"\s+fixes=(\d+)\s+questions=(\d+)\s+highlights=(\d+)\s+sections="([^"]*)" -->$/,SP=/^---\s*\n([\s\S]*?)\n---\s*\n/,TP=/^<!-- @memo\s+id="([^"]+)"(?:\s+color="([^"]+)")?(?:\s+date="([^"]+)")?\s*-->$/,zP=/^<!-- @\/memo -->$/,EP=/^<!--$/,PP=/MD Feedback/,IP=/^<!-- \/?(USER_FEEDBACK_NOTES|@\/?feedback-notes)\b.*-->$/,RP=/^<!-- REVIEW_RESPONSE\s+to="([^"]+)"\s*-->$/,OP=/^<!-- \/REVIEW_RESPONSE\s*-->$/,MP=/^<!-- MEMO_IMPL\s*$/,CP=/^-->$/,AP=/^<!-- MEMO_ARTIFACT\s*$/,NP=/^-->$/,jP=/^<!-- MEMO_DEPENDENCY\s+id="([^"]+)"\s+from="([^"]+)"\s+to="([^"]+)"\s+type="([^"]+)" -->$/,xa=/<!-- HIGHLIGHT_MARK color="([^"]*)" text="([^"]*)" anchor="([^"]*)" -->/g,ZP=10,z_=8,DP=3;function bs(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 to(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 xs(t){let e={};for(let r of t){let n=r.trim().match(/^(\w+)="([^"]*)"$/);n&&(e[n[1]]=wa(n[2]))}return e}function it(t,e){let r="",n=t,o=n.match(SP);o&&(r=o[0],n=n.slice(o[0].length));let s=n.split(`
44
+ `),i=[],a=[],c=[],u=[],l=[],d=[],f=[],y=[],p=null,g=null,h=new Set,_=0;for(;_<s.length;){let x=s[_],I=x.trim(),G=I.match(RP);if(G){g={id:`resp_${G[1]}`,to:G[1],bodyStartIdx:i.length,bodyEndIdx:-1},_++;continue}if(OP.test(I)){g&&(g.bodyEndIdx=i.length-1,c.push(g),g=null),_++;continue}let Q=I.match(yP);if(Q){if(h.has(Q[1])){_++;continue}h.add(Q[1]);let me=Q[4]?wa(Q[4]):xp(i),N=T_(i),qe=Q[2]||"red",Ht=Q[3]||"open";a.push({id:Q[1],type:vs(qe),status:Ht,owner:"human",source:"generic",color:qe,text:Q[5].replace(/--\u200B>/g,"-->"),anchorText:me||"",anchor:N>=0?`L${N+1}|${Ut(i[N]||"")}`:"",createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()}),_++;continue}if(_P.test(I)){let me=[];for(_++;_<s.length&&!vP.test(s[_].trim());)me.push(s[_]),_++;_++;let N=xs(me);if(N.id&&h.has(N.id))continue;N.id&&h.add(N.id);let qe=N.anchorText||xp(i)||"",Ht={id:N.id||"memo_parse_tmp",type:N.type||"fix",status:N.status||"open",owner:N.owner||"human",source:N.source||"generic",color:N.color||"red",text:N.text||"",anchorText:qe,anchor:N.anchor||"",createdAt:N.createdAt||new Date().toISOString(),updatedAt:N.updatedAt||new Date().toISOString()},{lineIdx:bt,confidence:fo}=bp(i,Ht),pv=bt>=0?`L${bt+1}|${Ut(i[bt]||"")}`:N.anchor||"",fv=bt>=0&&!bs(i[bt])?i[bt].trim().slice(0,80):qe;a.push({id:N.id||ht("memo"),type:N.type||vs(N.color||"red"),status:N.status||"open",owner:N.owner||"human",source:N.source||"generic",color:N.color||"red",text:N.text||"",anchorText:fv,anchor:pv,createdAt:N.createdAt||new Date().toISOString(),updatedAt:N.updatedAt||new Date().toISOString(),...N.rejectReason?{rejectReason:N.rejectReason}:{},anchorConfidence:fo});continue}if(xP.test(I)){let me=[];for(_++;_<s.length&&!bP.test(s[_].trim());)me.push(s[_]),_++;_++;let N=xs(me),qe=N.override;y.push({id:N.id||ht("gate"),type:N.type||"custom",status:N.status||"blocked",blockedBy:N.blockedBy?N.blockedBy.split(",").map(Ht=>Ht.trim()).filter(Boolean):[],canProceedIf:N.canProceedIf||"",doneDefinition:N.doneDefinition||"",...qe?{override:qe}:{}});continue}if(wP.test(I)){let me=[];for(_++;_<s.length&&!$P.test(s[_].trim());)me.push(s[_]),_++;_++;let N=xs(me);p={taskId:N.taskId||"",step:N.step||"",nextAction:N.nextAction||"",lastSeenHash:N.lastSeenHash||"",updatedAt:N.updatedAt||new Date().toISOString()};continue}if(MP.test(I)){let me=[];for(_++;_<s.length&&!CP.test(s[_].trim());)me.push(s[_]),_++;_++;let N=xs(me),qe=[];try{qe=k_(N.operations||"[]","MEMO_IMPL.operations")}catch{}u.push({id:N.id||ht("impl",{separator:"_"}),memoId:N.memoId||"",status:N.status||"applied",operations:qe,summary:N.summary||"",appliedAt:N.appliedAt||new Date().toISOString()});continue}if(AP.test(I)){let me=[];for(_++;_<s.length&&!NP.test(s[_].trim());)me.push(s[_]),_++;_++;let N=xs(me);l.push({id:N.id||ht("art",{separator:"_"}),memoId:N.memoId||"",files:N.files?N.files.split(",").map(qe=>qe.trim()).filter(Boolean):[],linkedAt:N.linkedAt||new Date().toISOString()});continue}let F=I.match(jP);if(F){d.push({id:F[1],from:F[2],to:F[3],type:F[4]}),_++;continue}let ce=I.match(kP);if(ce){f.push({id:ce[1],timestamp:ce[2],note:ce[3],fixes:parseInt(ce[4],10),questions:parseInt(ce[5],10),highlights:parseInt(ce[6],10),sectionsReviewed:ce[7]?ce[7].split(","):[]}),_++;continue}let H=I.match(TP);if(H){let me=[],N=xp(i),qe=T_(i);for(_++;_<s.length&&!zP.test(s[_].trim());)me.push(s[_]),_++;_++;let Ht=me.map(bt=>bt.replace(/^<!--\s*/,"").replace(/\s*-->$/,"")).join(`
45
+ `).trim();a.push({id:H[1],type:vs(H[2]||"red"),status:"open",owner:"human",source:"generic",color:H[2]||"red",text:Ht,anchorText:N||"",anchor:qe>=0?`L${qe+1}|${Ut(i[qe]||"")}`:"",createdAt:H[3]||new Date().toISOString(),updatedAt:H[3]||new Date().toISOString()});continue}if(EP.test(I)&&_+1<s.length&&PP.test(s[_+1])){for(;_<s.length&&!s[_].includes("-->");)_++;_++;continue}if(IP.test(I)){_++;continue}i.push(x),_++}for(;i.length>0&&i[i.length-1].trim()==="";)i.pop();g&&(g.bodyEndIdx=i.length-1,c.push(g));let $=new Set(c.map(x=>x.to));for(let x of a)x.status==="open"&&$.has(x.id)&&(x.status="needs_review");let S=x=>x.replace(/^#+\s*/,"").trim(),m=.7,v=x=>new Set(x.toLowerCase().split(/\s+/).filter(Boolean)),k=(x,I)=>{if(x.size===0&&I.size===0)return 1;let G=0;for(let F of x)I.has(F)&&G++;let Q=x.size+I.size-G;return Q===0?0:G/Q},T=new Set,z=[];for(let x of a.filter(I=>I.color==="red"||I.color==="blue")){let I=S(x.anchorText),G=S(x.text);T.add(`${x.color}|${I}`),x.text&&T.add(`${x.color}|${G}`),I&&z.push({color:x.color,words:v(I)}),G&&z.push({color:x.color,words:v(G)})}let R=(x,I)=>{if(!I)return!1;let G=v(I);for(let Q of z)if(Q.color===x&&k(G,Q.words)>=m)return!0;return!1},E={red:a.some(x=>x.color==="red"&&x.source!=="recovered-highlight"),blue:a.some(x=>x.color==="blue"&&x.source!=="recovered-highlight")};xa.lastIndex=0;let C;for(;(C=xa.exec(n))!==null;){let x=HP(C[1]);if(x!=="red"&&x!=="blue"||E[x])continue;let I=ba(C[2]).trim(),G=ba(C[3]).trim();if(!I&&!G)continue;let Q=G?`${x}|${S(G)}`:"",F=I?`${x}|${S(I)}`:"";if(Q&&T.has(Q)||F&&T.has(F)||R(x,S(G))||R(x,S(I)))continue;let ce=G||I;if(ce.includes("anchorText=")||ce.includes("<!-- ")||ce.length<z_)continue;let H=ce.slice(0,40),me=to(H),N=H?i.findIndex(fo=>!bs(fo)&&(fo.includes(H)||to(fo).includes(me))):-1;if(N<0)continue;let qe=`L${N+1}|${Ut(i[N]||"")}`,Ht=new Date().toISOString(),bt=`memo_recovered_${Ut(`${x}|${ce}|${I}`)}`;h.has(bt)||(h.add(bt),a.push({id:bt,type:vs(x),status:"open",owner:"human",source:"recovered-highlight",color:x,text:I,anchorText:ce,anchor:qe,createdAt:Ht,updatedAt:Ht}),Q&&T.add(Q),F&&T.add(F))}let ye=i.filter(x=>!bs(x)),ve=ye.join(`
46
+ `),Ae=ye.map(x=>to(x)).join(`
47
+ `),Ie=a.filter(x=>{if(x.source!=="recovered-highlight")return!0;if(x.anchorText.includes("<!-- HIGHLIGHT_MARK")||x.anchorText.includes("<!-- USER_MEMO")||x.anchorText.includes("<!-- MEMO_IMPL")||x.anchorConfidence==="line_number"||x.anchorConfidence==="fallback")return!1;let I=(x.anchorText.trim()||x.text.trim()).slice(0,40);if(!I)return!0;let G=to(I);return!!(ve.includes(I)||Ae.includes(G))}),ne={frontmatter:r,body:i.join(`
48
+ `),memos:Ie,responses:c,impls:u,artifacts:l,dependencies:d,checkpoints:f,gates:y,cursor:p};if(!e)return ne;let xe=(x,I)=>{let G=new Set(x.map(Q=>Q.id));return[...x,...I.filter(Q=>!G.has(Q.id))]};return ne.impls=xe(ne.impls,e.impls||[]),ne.artifacts=xe(ne.artifacts,e.artifacts||[]),ne.dependencies=xe(ne.dependencies,e.dependencies||[]),ne.checkpoints=xe(ne.checkpoints,e.checkpoints||[]),ne}function qP(t){let e=t.split(`
49
+ `),n=e.filter(o=>!bs(o)).join(`
50
+ `);return e.filter(o=>{xa.lastIndex=0;let s=xa.exec(o.trim());if(!s)return!0;let i=ba(s[3]).trim(),a=ba(s[2]).trim(),c=(i||a).slice(0,40);return c?n.includes(c):!0}).join(`
51
+ `)}function ro(t){let e=[];t.frontmatter&&e.push(t.frontmatter.trimEnd());let r=qP(t.body),n=VP(r,t.memos,t.responses||[]);e.push(n);for(let d of t.gates)e.push(LP(d));t.cursor&&e.push(FP(t.cursor));let o=e.join(`
52
52
 
53
53
  `)+`
54
- `,s=[...t.impls||[]].sort((d,m)=>d.id.localeCompare(m.id)),i=[...t.artifacts||[]].sort((d,m)=>d.id.localeCompare(m.id)),a=[...t.dependencies||[]].sort((d,m)=>d.id.localeCompare(m.id)),c=[...t.checkpoints||[]].sort((d,m)=>d.id.localeCompare(m.id));if(!(s.length>0||i.length>0||a.length>0||c.length>0))return{markdown:o,sidecar:null};let l=b_();return l.impls=s,l.artifacts=i,l.dependencies=a,l.checkpoints=c,l.updatedAt=new Date().toISOString(),{markdown:o,sidecar:l}}function $_(t){let e=["<!-- USER_MEMO",` id="${rr(t.id)}"`,` type="${t.type}"`,` status="${t.status}"`,` owner="${t.owner}"`,` source="${rr(t.source)}"`,` color="${t.color}"`,` text="${rr(t.text)}"`,` anchorText="${rr(t.anchorText)}"`,` anchor="${rr(t.anchor)}"`,` createdAt="${t.createdAt}"`,` updatedAt="${t.updatedAt}"`];return t.rejectReason&&e.push(` rejectReason="${rr(t.rejectReason)}"`),t.anchorConfidence&&e.push(` anchorConfidence="${t.anchorConfidence}"`),e.push("-->"),e.join(`
55
- `)}function AP(t){let e=["<!-- GATE",` id="${t.id}"`,` type="${t.type}"`,` status="${t.status}"`,` blockedBy="${t.blockedBy.join(",")}"`,` canProceedIf="${rr(t.canProceedIf)}"`,` doneDefinition="${rr(t.doneDefinition)}"`];return t.override&&e.push(` override="${t.override}"`),e.push("-->"),e.join(`
56
- `)}function CP(t){return["<!-- PLAN_CURSOR",` taskId="${t.taskId}"`,` step="${t.step}"`,` nextAction="${rr(t.nextAction)}"`,` lastSeenHash="${t.lastSeenHash}"`,` updatedAt="${t.updatedAt}"`,"-->"].join(`
57
- `)}function T_(t){let e=t.sectionsReviewed.join(",");return`<!-- CHECKPOINT id="${t.id}" time="${t.timestamp}" note="${rr(t.note)}" fixes=${t.fixes} questions=${t.questions} highlights=${t.highlights} sections="${e}" -->`}function NP(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 jP(t,e,r){if(e.length===0&&r.length===0)return t;let n=t.split(`
58
- `),o=new Map,s=[];for(let u of e){let{lineIdx:l,confidence:d}=_p(n,u),m=u.anchor;if(u.anchorConfidence=d,l>=0){let y=`L${l+1}|${Lt(n[l])}`;y!==m&&(u.anchor=y);let f=NP(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,m)=>d.id.localeCompare(m.id));for(let d of l)c.push($_(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($_(u));return c.join(`
59
- `)}function _p(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&&Lt(t[n])===o)return{lineIdx:n,confidence:"exact"};for(let s=1;s<=RP;s++)for(let i of[n-s,n+s])if(i>=0&&i<t.length&&Lt(t[i])===o)return{lineIdx:i,confidence:"nearby"}}}if(e.anchorText){let r=e.anchorText.trim();if(r.length>=S_){let n=eo(r),o=[];for(let s=0;s<t.length;s++)gs(t[s])||(t[s].includes(r)||eo(t[s]).includes(n))&&o.push(s);if(o.length>=1&&o.length<=MP){if(o.length===1)return{lineIdx:o[0],confidence:"text"};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 vp(t,e){return _p(t,e).lineIdx}function yp(t){for(let e=t.length-1;e>=0;e--)if(t[e].trim())return t[e].trim();return null}function k_(t){for(let e=t.length-1;e>=0;e--)if(t[e].trim())return e;return-1}function ba(t){return Lt(t)}function xp(t){let e=t.split(`
60
- `),r=[],n=!1,o=-1,s=!1;for(let i=0;i<e.length;i++){if(e[i].trim().startsWith("```")){s=!s;continue}if(s)continue;let c=0,u=e[i];for(;c<u.length;)if(n){let l=u.indexOf("<!--",c),d=u.indexOf("-->",c);if(d!==-1&&(l===-1||d<l))n=!1,c=d+3;else if(l!==-1)r.push(`Nested comment at line ${i+1} (outer comment opened at line ${o})`),c=l+4;else break}else{let l=u.indexOf("<!--",c);if(l===-1)break;let d=u.indexOf("-->",l+4);if(d!==-1){c=d+3;continue}n=!0,o=i+1,c=l+4}}return n&&r.push(`Unclosed comment opened at line ${o}`),{valid:r.length===0,errors:r}}function z_(t){let e=t.split(`
61
- `),r=[],n=[],o=!1,s=!1,i=[],a=!1;for(let l=0;l<e.length;l++){let d=e[l].trim();if(d.startsWith("```")){s=!s,r.push(e[l]);continue}if(s){r.push(e[l]);continue}if(o)d.startsWith("<!-- USER_MEMO")?(a=!0,i=[e[l]]):a?(i.push(e[l]),d==="-->"&&(n.push(...i),a=!1,i=[],o=!1)):(d.includes("-->")&&(o=!1),r.push(e[l]));else{let m=e[l].indexOf("<!--");m!==-1&&e[l].indexOf("-->",m+4)===-1&&(o=!0),r.push(e[l])}}if(n.length===0)return null;let c=[...r,...n].join(`
62
- `);return xp(c).valid?c:null}function va(t){return xa(t).replace(/&#39;/g,"'").replace(/&lt;/g,"<").replace(/&gt;/g,">")}function ZP(t){let e=t.toLowerCase();if(e==="red"||e==="blue"||e==="yellow")return e;let r=Or[e];return r==="red"||r==="blue"||r==="yellow"?r:null}var DP='<!-- CHECKPOINT id="([^"]+)" time="([^"]+)" note="([^"]*)" fixes=(\\d+) questions=(\\d+) highlights=(\\d+) sections="([^"]*)" -->';function _n(t){let e=[],r=new RegExp(DP,"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 E_(t){return t.length===0?"":t.map(e=>`- [ ] ${e}`).join(`
63
- `)}function Ar(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(`- "${qe(c.text,120)}"${u} \u2192 ${c.feedback}`):c.feedback?i.push(`- ${c.feedback}${u}`):c.text&&i.push(`- Fix: "${qe(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(`- "${qe(c.text,120)}"${u} \u2014 ${c.feedback}`):c.feedback?i.push(`- ${c.feedback}${u}`):c.text&&i.push(`- Question about: "${qe(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(`- "${qe(c.text,80)}"${c.section?` (${c.section})`:""}`),c.feedback&&i.push(`- ${c.feedback}`);i.push("")}return r.length>0&&(i.push("### Checklist"),i.push(E_(r)),i.push("")),i.push("When all items are complete, delete this section."),i.join(`
64
- `)}function FP(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(`- "${qe(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||qe(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(`
65
- `)}function UP(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(`- "${qe(u.text,120)}"${l} \u2192 ${u.feedback}`):u.feedback?i.push(`- ${u.feedback}${l}`):u.text&&i.push(`- "${qe(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(`- "${qe(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(`- "${qe(u.text,80)}"`),u.feedback&&i.push(`- ${u.feedback}`);i.push("")}return r.length>0&&(i.push("## Checklist"),i.push(E_(r)),i.push("")),i.push("---"),i.push("*Generated by [md-feedback](https://github.com/yeominux/md-feedback). Delete when done.*"),i.join(`
66
- `)}var VP={cursor:FP,generic:UP,"claude-code":Ar,codex:Ar,copilot:Ar,cline:Ar,windsurf:Ar,"roo-code":Ar,gemini:Ar,antigravity:Ar};function P_(t,e,r,n,o,s){let i=gp(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(`
67
- `);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=VP[s];return l(t,e,r,a,c,u)}function ro(t){let e=0,r=0,n=0,o=st(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 vn(t){let e=t.split(`
54
+ `,s=[...t.impls||[]].sort((d,f)=>d.id.localeCompare(f.id)),i=[...t.artifacts||[]].sort((d,f)=>d.id.localeCompare(f.id)),a=[...t.dependencies||[]].sort((d,f)=>d.id.localeCompare(f.id)),c=[...t.checkpoints||[]].sort((d,f)=>d.id.localeCompare(f.id));if(!(s.length>0||i.length>0||a.length>0||c.length>0))return{markdown:o,sidecar:null};let l=$_();return l.impls=s,l.artifacts=i,l.dependencies=a,l.checkpoints=c,l.updatedAt=new Date().toISOString(),{markdown:o,sidecar:l}}function S_(t){let e=["<!-- USER_MEMO",` id="${rr(t.id)}"`,` type="${t.type}"`,` status="${t.status}"`,` owner="${t.owner}"`,` source="${rr(t.source)}"`,` color="${t.color}"`,` text="${rr(t.text)}"`,` anchorText="${rr(t.anchorText)}"`,` anchor="${rr(t.anchor)}"`,` createdAt="${t.createdAt}"`,` updatedAt="${t.updatedAt}"`];return t.rejectReason&&e.push(` rejectReason="${rr(t.rejectReason)}"`),t.anchorConfidence&&e.push(` anchorConfidence="${t.anchorConfidence}"`),e.push("-->"),e.join(`
55
+ `)}function LP(t){let e=["<!-- GATE",` id="${t.id}"`,` type="${t.type}"`,` status="${t.status}"`,` blockedBy="${t.blockedBy.join(",")}"`,` canProceedIf="${rr(t.canProceedIf)}"`,` doneDefinition="${rr(t.doneDefinition)}"`];return t.override&&e.push(` override="${t.override}"`),e.push("-->"),e.join(`
56
+ `)}function FP(t){return["<!-- PLAN_CURSOR",` taskId="${t.taskId}"`,` step="${t.step}"`,` nextAction="${rr(t.nextAction)}"`,` lastSeenHash="${t.lastSeenHash}"`,` updatedAt="${t.updatedAt}"`,"-->"].join(`
57
+ `)}function E_(t){let e=t.sectionsReviewed.join(",");return`<!-- CHECKPOINT id="${t.id}" time="${t.timestamp}" note="${rr(t.note)}" fixes=${t.fixes} questions=${t.questions} highlights=${t.highlights} sections="${e}" -->`}function UP(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 VP(t,e,r){if(e.length===0&&r.length===0)return t;let n=t.split(`
58
+ `),o=new Map,s=[];for(let u of e){let{lineIdx:l,confidence:d}=bp(n,u),f=u.anchor;if(u.anchorConfidence=d,l>=0){let y=`L${l+1}|${Ut(n[l])}`;y!==f&&(u.anchor=y);let p=UP(n,l),g=o.get(p)||[];g.push(u),o.set(p,g)}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,f)=>d.id.localeCompare(f.id));for(let d of l)c.push(S_(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(S_(u));return c.join(`
59
+ `)}function bp(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&&Ut(t[n])===o)return{lineIdx:n,confidence:"exact"};for(let s=1;s<=ZP;s++)for(let i of[n-s,n+s])if(i>=0&&i<t.length&&Ut(t[i])===o)return{lineIdx:i,confidence:"nearby"}}}if(e.anchorText){let r=e.anchorText.trim();if(r.length>=z_){let n=to(r),o=[];for(let s=0;s<t.length;s++)bs(t[s])||(t[s].includes(r)||to(t[s]).includes(n))&&o.push(s);if(o.length>=1&&o.length<=DP){if(o.length===1)return{lineIdx:o[0],confidence:"text"};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 wp(t,e){return bp(t,e).lineIdx}function xp(t){for(let e=t.length-1;e>=0;e--)if(t[e].trim())return t[e].trim();return null}function T_(t){for(let e=t.length-1;e>=0;e--)if(t[e].trim())return e;return-1}function $a(t){return Ut(t)}function $p(t){let e=t.split(`
60
+ `),r=[],n=!1,o=-1,s=!1;for(let i=0;i<e.length;i++){if(e[i].trim().startsWith("```")){s=!s;continue}if(s)continue;let c=0,u=e[i];for(;c<u.length;)if(n){let l=u.indexOf("<!--",c),d=u.indexOf("-->",c);if(d!==-1&&(l===-1||d<l))n=!1,c=d+3;else if(l!==-1)r.push(`Nested comment at line ${i+1} (outer comment opened at line ${o})`),c=l+4;else break}else{let l=u.indexOf("<!--",c);if(l===-1)break;let d=u.indexOf("-->",l+4);if(d!==-1){c=d+3;continue}n=!0,o=i+1,c=l+4}}return n&&r.push(`Unclosed comment opened at line ${o}`),{valid:r.length===0,errors:r}}function P_(t){let e=t.split(`
61
+ `),r=[],n=[],o=!1,s=!1,i=[],a=!1;for(let l=0;l<e.length;l++){let d=e[l].trim();if(d.startsWith("```")){s=!s,r.push(e[l]);continue}if(s){r.push(e[l]);continue}if(o)d.startsWith("<!-- USER_MEMO")?(a=!0,i=[e[l]]):a?(i.push(e[l]),d==="-->"&&(n.push(...i),a=!1,i=[],o=!1)):(d.includes("-->")&&(o=!1),r.push(e[l]));else{let f=e[l].indexOf("<!--");f!==-1&&e[l].indexOf("-->",f+4)===-1&&(o=!0),r.push(e[l])}}if(n.length===0)return null;let c=[...r,...n].join(`
62
+ `);return $p(c).valid?c:null}function ba(t){return wa(t).replace(/&#39;/g,"'").replace(/&lt;/g,"<").replace(/&gt;/g,">")}function HP(t){let e=t.toLowerCase();if(e==="red"||e==="blue"||e==="yellow")return e;let r=Cr[e];return r==="red"||r==="blue"||r==="yellow"?r:null}var WP='<!-- CHECKPOINT id="([^"]+)" time="([^"]+)" note="([^"]*)" fixes=(\\d+) questions=(\\d+) highlights=(\\d+) sections="([^"]*)" -->';function _n(t){let e=[],r=new RegExp(WP,"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 I_(t){return t.length===0?"":t.map(e=>`- [ ] ${e}`).join(`
63
+ `)}function Ar(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(`- "${Fe(c.text,120)}"${u} \u2192 ${c.feedback}`):c.feedback?i.push(`- ${c.feedback}${u}`):c.text&&i.push(`- Fix: "${Fe(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(`- "${Fe(c.text,120)}"${u} \u2014 ${c.feedback}`):c.feedback?i.push(`- ${c.feedback}${u}`):c.text&&i.push(`- Question about: "${Fe(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(`- "${Fe(c.text,80)}"${c.section?` (${c.section})`:""}`),c.feedback&&i.push(`- ${c.feedback}`);i.push("")}return r.length>0&&(i.push("### Checklist"),i.push(I_(r)),i.push("")),i.push("When all items are complete, delete this section."),i.join(`
64
+ `)}function JP(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(`- "${Fe(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||Fe(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(`
65
+ `)}function KP(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(`- "${Fe(u.text,120)}"${l} \u2192 ${u.feedback}`):u.feedback?i.push(`- ${u.feedback}${l}`):u.text&&i.push(`- "${Fe(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(`- "${Fe(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(`- "${Fe(u.text,80)}"`),u.feedback&&i.push(`- ${u.feedback}`);i.push("")}return r.length>0&&(i.push("## Checklist"),i.push(I_(r)),i.push("")),i.push("---"),i.push("*Generated by [md-feedback](https://github.com/yeominux/md-feedback). Delete when done.*"),i.join(`
66
+ `)}var QP={cursor:JP,generic:KP,"claude-code":Ar,codex:Ar,copilot:Ar,cline:Ar,windsurf:Ar,"roo-code":Ar,gemini:Ar,antigravity:Ar};function R_(t,e,r,n,o,s){let i=vp(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(`
67
+ `);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=QP[s];return l(t,e,r,a,c,u)}function no(t){let e=0,r=0,n=0,o=it(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 vn(t){let e=t.split(`
68
68
  `),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 xn(t){let e=[];for(let r of t.split(`
69
- `)){let n=r.match(/^## (.+)/);n&&e.push(n[1].trim())}return e}function bp(t,e){let r=ro(t),n=vn(t),o={id:mt("ckpt",{separator:"_"}),timestamp:new Date().toISOString(),note:e,fixes:r.fixes,questions:r.questions,highlights:r.highlights,sectionsReviewed:n},s=T_(o),a=t.trimEnd()+`
69
+ `)){let n=r.match(/^## (.+)/);n&&e.push(n[1].trim())}return e}function kp(t,e){let r=no(t),n=vn(t),o={id:ht("ckpt",{separator:"_"}),timestamp:new Date().toISOString(),note:e,fixes:r.fixes,questions:r.questions,highlights:r.highlights,sectionsReviewed:n},s=E_(o),a=t.trimEnd()+`
70
70
 
71
71
  `+s+`
72
- `;return{checkpoint:o,updatedMarkdown:a}}function wa(t,e){let r=_n(t),n=ro(t),o=vn(t),s=xn(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=[];HP(t,a,c,u);let l=[];for(let m of c)l.push(`Resolve: ${m.feedback||m.text}`);let d=s.filter(m=>!o.includes(m));for(let m of d)l.push(`Review uncovered: ${m} section`);return{meta:i,decisions:a,openQuestions:c,keyPoints:u,checkpoints:r,nextSteps:l}}function HP(t,e,r,n){let o=t.split(`
73
- `),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 m=u[1].match(/color="([^"]+)"/),y=m?m[1]:"red",f=u[2].replace(/--\u200B>/g,"-->"),h="";for(let p=i-1;p>=0;p--)if(o[p].trim()&&!o[p].includes("<!-- ")){h=o[p].trim(),h=h.replace(/<\/?mark[^>]*>/g,"");break}let _={section:s,text:h,feedback:f};y==="red"?e.push(_):y==="blue"?r.push(_):n.push(_);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 m={};for(let p of d){let g=p.trim().match(/^(\w+)="([^"]*)"$/);g&&(m[g[1]]=g[2])}let y=m.color||"red",f=(m.text||"").replace(/--\u200B>/g,"-->"),h="";if(m.anchorText)h=m.anchorText.replace(/<\/?mark[^>]*>/g,"");else for(let p=i-1;p>=0;p--)if(o[p].trim()&&!o[p].includes("<!-- ")){h=o[p].trim().replace(/<\/?mark[^>]*>/g,"");break}let _={section:s,text:h,feedback:f};y==="red"?e.push(_):y==="blue"?r.push(_):n.push(_);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 m,y;if(l.length===2)m=l[1],y="yellow";else{let h=(l[1]||l[2]||"").trim();y=Or[h]||"yellow",m=l[3]}let f={section:s,text:m,feedback:""};y==="red"?e.push(f):y==="blue"?r.push(f):n.push(f)}}}function $a(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}** "${qe(o.text,60)}" \u2192 ${o.feedback}`):o.feedback?r.push(`${n+1}. **${s}** ${o.feedback}`):o.text&&r.push(`${n+1}. **${s}** "${qe(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}** "${qe(o.text,60)}" \u2014 ${o.feedback}`):o.feedback?r.push(`${n+1}. **${s}** ${o.feedback}`):o.text&&r.push(`${n+1}. **${s}** "${qe(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}** "${qe(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(`
74
- `)}function I_(t){let e=t.split(`
75
- `),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 m=u.match(/\*\*File\*\*:\s*`([^`]+)`/);m&&(n.file=m[1]);let y=u.match(/\*\*Started\*\*:\s*(.+)/);y&&(n.startedAt=y[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 _=u.match(/\*\*Annotations\*\*:\s*(\d+)\s*fix,\s*(\d+)\s*question,\s*(\d+)\s*highlight/);_&&(n.totalFixes=parseInt(_[1],10),n.totalQuestions=parseInt(_[2],10),n.totalHighlights=parseInt(_[3],10))}let d=u.match(/^\d+\.\s+\*\*\[([^\]]*)\]\*\*\s+(.+)/);if(d){let m=d[1],y=d[2],f=y.match(/"([^"]+)"\s*→\s*(.+)/),h=y.match(/"([^"]+)"\s*—\s*(.+)/),_;if(f)_={section:m,text:f[1],feedback:f[2]};else if(h)_={section:m,text:h[1],feedback:h[2]};else{let p=y.match(/"([^"]+)"/);_={section:m,text:p?p[1]:"",feedback:p?"":y}}r.startsWith("Decisions")?o.push(_):r.startsWith("Open Questions")?s.push(_):r.startsWith("Key Points")&&i.push(_)}if(r.startsWith("Progress Checkpoints")){let m=u.match(/^\|\s*(\d+)\s*\|\s*([^|]+)\|\s*([^|]*)\|\s*(\d+)\s*\|\s*(\d+)\s*\|\s*(\d+)\s*\|/);m&&a.push({id:`ckpt_restored_${m[1]}`,timestamp:m[2].trim(),note:m[3].trim(),fixes:parseInt(m[4],10),questions:parseInt(m[5],10),highlights:parseInt(m[6],10),sectionsReviewed:[]})}if(r.startsWith("Next Steps")){let m=u.match(/^- \[ \]\s+(.+)/);m&&c.push(m[1])}}return n.file?{meta:n,decisions:o,openQuestions:s,keyPoints:i,checkpoints:a,nextSteps:c}:null}function WP(t,e){return t.blockedBy.length>0&&t.blockedBy.map(o=>e.find(s=>s.id===o)).filter(o=>o!=null&&!qt(o.status)).length>0?"blocked":e.some(n=>!qt(n.status))?"proceed":"done"}function Ft(t,e){return t.map(r=>({...r,status:r.override||WP(r,e)}))}function R_(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,qt(x.status)&&c++;let u=t.length>0?c/t.length:0,l={},d=0,m=0,y=0;for(let x of e)l[x.status]=(l[x.status]||0)+1,x.status==="applied"&&d++,x.status==="reverted"&&m++,x.status==="failed"&&y++;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 b of x.files)h.add(b);let _=s.filter(x=>x.type==="blocks").length,p=null;n.length>0&&(p=n.reduce((x,b)=>b.timestamp>x?b.timestamp:x,n[0].timestamp));let g=null,v=t.filter(x=>qt(x.status)&&x.createdAt&&x.updatedAt);if(v.length>0){let x=0,b=0;for(let S of v){let E=new Date(S.createdAt).getTime(),F=new Date(S.updatedAt).getTime();!isNaN(E)&&!isNaN(F)&&F>E&&(x+=F-E,b++)}b>0&&(g=x/b)}return{totalMemos:t.length,byStatus:i,byType:a,resolutionRate:u,totalImpls:e.length,implsByStatus:l,appliedCount:d,revertedCount:m,failedCount:y,totalGates:r.length,gatesByStatus:f,totalArtifacts:o.length,linkedFiles:h.size,totalDependencies:s.length,blockingChains:_,totalCheckpoints:n.length,lastCheckpoint:p,avgResolutionTime:g}}var vt=class extends Error{constructor(r,n,o){super(n);this.code=r;this.details=o;this.name="ToolError"}},ys=class extends vt{constructor(e,r){super("FILE_SAFETY",e,r),this.name="FileSafetyError"}},ka=class extends vt{constructor(e){super("FILE_NOT_FOUND",`File not found: ${e}`,{file:e}),this.name="FileNotFoundError"}},Sa=class extends vt{constructor(e,r){super("FILE_READ",`Cannot read file ${e}${r?`: ${r}`:""}`,{file:e,...r?{cause:r}:{}}),this.name="FileReadError"}},_s=class extends vt{constructor(e,r){super("FILE_WRITE",`Cannot write file ${e}${r?`: ${r}`:""}`,{file:e,...r?{cause:r}:{}}),this.name="FileWriteError"}};var Cr=class extends vt{constructor(e,r){super("PATCH_APPLY",e,r),this.name="PatchApplyError"}},Ut=class extends vt{constructor(e){super("MEMO_NOT_FOUND",`Memo not found: ${e}`,{memoId:e}),this.name="MemoNotFoundError"}},ve=class extends vt{constructor(e,r){super("OPERATION_INVALID",e,r),this.name="OperationValidationError"}},vs=class extends vt{constructor(e,r){super("ANCHOR_NOT_FOUND",`Anchor text not found: "${e}"`,{anchorText:e,matchCount:0,...r??{}}),this.name="AnchorNotFoundError"}},xs=class extends vt{constructor(e,r){super("COMMENT_INTEGRITY",e,r),this.name="CommentIntegrityError"}},Ta=class extends vt{constructor(e){super("HANDOFF_INVALID","Not a valid handoff document",{file:e}),this.name="InvalidHandoffError"}};function wp(t){return t instanceof vt?{error:t.message,code:t.code,type:t.name,...t.details?{details:t.details}:{}}:t instanceof Error?{error:t.message}:{error:String(t)}}var M_={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."}},GP={...M_};function O_(t=process.env){return t.MD_FEEDBACK_POLICY_PROFILE?.trim().toLowerCase()==="strict"?"strict":"default"}function A_(t){return t==="strict"?GP:M_}function C_(t=O_()){let e=A_(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 za(t,e,r,n=O_()){let s=A_(n)[t];if(!s.allowedMemoTypes.includes(r))throw new ve(`${t} supports only ${s.allowedMemoTypes.join(", ")} memos. ${s.guidance}`,{memoId:e,memoType:r,action:t,policyProfile:n,allowedMemoTypes:s.allowedMemoTypes})}var It=require("node:fs"),kp=require("node:path"),Ra=require("node:crypto");var le=require("fs"),Ae=require("path"),Pa=require("node:crypto");var N_=uo(require("node:path")),fr=require("node:fs"),Ea=new Map,BP=5e3,KP=20,JP=3e4;function QP(t){return new Promise(e=>setTimeout(e,t))}async function XP(t,e=BP){let r=Date.now();for(;;)try{let n=(0,fr.openSync)(t,"wx");return()=>{try{(0,fr.closeSync)(n)}catch{}try{(0,fr.unlinkSync)(t)}catch{}}}catch(n){if(n.code!=="EEXIST")throw n;try{let s=(0,fr.statSync)(t);if(Date.now()-s.mtimeMs>JP){try{(0,fr.unlinkSync)(t)}catch{}continue}}catch{continue}if(Date.now()-r>e)throw new Error(`File lock timeout for ${t}`);await QP(KP)}}async function Ke(t,e){let r=N_.default.resolve(t),n=`${r}.md-feedback.lock`;for(;Ea.has(r);)await Ea.get(r);let o;Ea.set(r,new Promise(i=>{o=i}));let s=await XP(n);try{return await e()}finally{s(),Ea.delete(r),o()}}var YP=20;function bs(t){return(0,Ae.isAbsolute)(t)?t:(0,Ae.resolve)(process.cwd(),t)}function Ia(t){let e=bs(t);if(!(0,le.existsSync)(e))throw new ka(e);try{return(0,le.readFileSync)(e,"utf-8")}catch(r){throw new Sa(e,r instanceof Error?r.message:String(r))}}function j_(t,e){let r=bs(t),n=(0,Ae.dirname)(r),o=(0,Ae.join)(n,`.mf-tmp-${(0,Pa.randomBytes)(6).toString("hex")}`);try{(0,le.writeFileSync)(o,e,"utf-8"),(0,le.renameSync)(o,r)}catch(s){try{(0,le.unlinkSync)(o)}catch{}throw new _s(r,s instanceof Error?s.message:String(s))}}function Nr(t){let e=bs(t),r=(0,Ae.join)((0,Ae.dirname)(e),".md-feedback");return(0,le.existsSync)(r)||(0,le.mkdirSync)(r,{recursive:!0}),r}function ws(t,e){let r=Nr(t),n=(0,Ae.join)(r,"snapshots");(0,le.existsSync)(n)||(0,le.mkdirSync)(n,{recursive:!0});let o=new Date().toISOString().replace(/[:.]/g,"-"),s=(0,Ae.join)(n,`snapshot-${o}.md`);(0,le.writeFileSync)(s,e,"utf-8");let i=(0,le.readdirSync)(n).filter(a=>a.startsWith("snapshot-")).sort();for(;i.length>YP;)try{(0,le.unlinkSync)((0,Ae.join)(n,i.shift()))}catch{}return s}function Z_(t){let e=Nr(t),r=(0,Ae.join)(e,"progress.json");if(!(0,le.existsSync)(r))return[];try{return JSON.parse((0,le.readFileSync)(r,"utf-8"))}catch{return[]}}async function D_(t,e){let r=Nr(t),n=(0,Ae.join)(r,"progress.json");await Ke(n,async()=>{let o=[];if((0,le.existsSync)(n))try{o=JSON.parse((0,le.readFileSync)(n,"utf-8"))}catch{o=[]}o.push(e);let s=`${n}.tmp-${(0,Pa.randomBytes)(6).toString("hex")}`;(0,le.writeFileSync)(s,JSON.stringify(o,null,2),"utf-8"),(0,le.renameSync)(s,n)})}function no(t,e){let r=Nr(t),n=(0,Ae.join)(r,"metadata.json"),o=`${n}.tmp-${(0,Pa.randomBytes)(6).toString("hex")}`;try{(0,le.writeFileSync)(o,JSON.stringify(e,null,2),"utf-8"),(0,le.renameSync)(o,n)}catch(s){try{(0,le.unlinkSync)(o)}catch{}throw new _s(n,s instanceof Error?s.message:String(s))}}function oo(t){let e=bs(t),r=(0,Ae.join)((0,Ae.dirname)(e),".md-feedback","metadata.json"),n=null;if((0,le.existsSync)(r))try{let i=JSON.parse((0,le.readFileSync)(r,"utf-8"));n={version:"1.0",updatedAt:typeof i.updatedAt=="string"?i.updatedAt:new Date().toISOString(),impls:Array.isArray(i.impls)?i.impls:[],artifacts:Array.isArray(i.artifacts)?i.artifacts:[],dependencies:Array.isArray(i.dependencies)?i.dependencies:[],checkpoints:Array.isArray(i.checkpoints)?i.checkpoints:[]}}catch{n=null}let o=eI(t);if(!n&&!o)return null;if(!n)return{version:"1.0",updatedAt:new Date().toISOString(),impls:o?.impls||[],artifacts:[],dependencies:[],checkpoints:o?.checkpoints||[]};if(!o)return n;let s=(i,a)=>{let c=new Set(i.map(u=>u.id));return[...i,...a.filter(u=>!c.has(u.id))]};return{...n,impls:s(n.impls,o.impls||[]),checkpoints:s(n.checkpoints,o.checkpoints||[])}}function eI(t){let e=bs(t),r=(0,Ae.join)((0,Ae.dirname)(e),".md-feedback","operational-meta.json");if(!(0,le.existsSync)(r))return null;try{return JSON.parse((0,le.readFileSync)(r,"utf-8"))}catch{return null}}function q_(t,e){let r=Nr(t),n=(0,Ae.join)(r,"transactions");(0,le.existsSync)(n)||(0,le.mkdirSync)(n,{recursive:!0});let o=new Date().toISOString().replace(/[:.]/g,"-"),s=(0,Ae.join)(n,`tx-${o}.json`);return(0,le.writeFileSync)(s,JSON.stringify(e,null,2),"utf-8"),s}var $s=["scope","root_cause","implementation","verification"],tI={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"]},rI=new Set(["batch_apply","rollback_memo"]);function L_(t){return(0,kp.join)(Nr(t),"workflow.json")}function F_(t){return(0,kp.join)(Nr(t),"severity.json")}function U_(t=process.env){return t.MD_FEEDBACK_WORKFLOW_ENFORCEMENT?.trim().toLowerCase()==="strict"?"strict":"off"}function V_(t){let e=F_(t);if(!(0,It.existsSync)(e))return{version:"1.0",overrides:{},updatedAt:new Date().toISOString()};try{let r=mp((0,It.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 nI(t,e){let r=F_(t),n=`${r}.tmp-${(0,Ra.randomBytes)(6).toString("hex")}`;(0,It.writeFileSync)(n,JSON.stringify(e,null,2),"utf-8"),(0,It.renameSync)(n,r)}function oI(t){return t==="fix"?"blocking":"non_blocking"}function H_(t,e,r){let o={version:"1.0",overrides:{...V_(t).overrides,[e]:r},updatedAt:new Date().toISOString()};return nI(t,o),o}function Sp(t){let e=Ia(t),r=st(e),n=V_(t).overrides,o=r.memos.filter(s=>!qt(s.status)).filter(s=>(n[s.id]??oI(s.type))==="blocking").map(s=>s.id);return{overrides:n,unresolvedBlockingMemos:o}}function Ma(t,e){let r=L_(t),n=`${r}.tmp-${(0,Ra.randomBytes)(6).toString("hex")}`;(0,It.writeFileSync)(n,JSON.stringify(e,null,2),"utf-8"),(0,It.renameSync)(n,r)}function $p(){return{version:"1.0",phase:"scope",status:"active",transitions:[],pendingCheckpoint:null,approvals:[],approvalGrant:null,updatedAt:new Date().toISOString()}}function sI(t){let e=L_(t);if(!(0,It.existsSync)(e))return $p();try{let r=mp((0,It.readFileSync)(e,"utf-8")),n=r.phase,o=Array.isArray(r.transitions)?r.transitions:[];return!n||!$s.includes(n)?$p():{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 $p()}}function jr(t){let e=sI(t);return e.transitions.length===0&&e.phase==="scope"&&Ma(t,e),e}function ht(t,e){let r=jr(t);if(U_()!=="strict")return r;let n=tI[e];if(!n||n.includes(r.phase))return r;throw new ve(`Tool "${e}" is not allowed in phase "${r.phase}".`,{tool:e,currentPhase:r.phase,allowedPhases:n})}function W_(t,e){let r=jr(t),n=e(r);return Ma(t,n),n}function Tp(t,e,r){return W_(t,n=>n.pendingCheckpoint&&n.pendingCheckpoint.tool===e?n:{...n,pendingCheckpoint:{id:`chk_${(0,Ra.randomBytes)(4).toString("hex")}`,tool:e,reason:r,requestedAt:new Date().toISOString()},updatedAt:new Date().toISOString()})}function G_(t,e,r,n){return W_(t,o=>{let s=o.pendingCheckpoint;if(!s||s.tool!==e)throw new ve(`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 zp(t,e,r){if(U_()!=="strict"||!rI.has(e))return jr(t);let n=jr(t);if(n.approvalGrant&&!n.approvalGrant.consumed&&n.approvalGrant.tool===e){let s={...n,approvalGrant:{...n.approvalGrant,consumed:!0},updatedAt:new Date().toISOString()};return Ma(t,s),s}let o=Tp(t,e,r);throw new ve(`Approval required before high-risk tool "${e}".`,{tool:e,reason:r,pendingCheckpoint:o.pendingCheckpoint})}function B_(t,e,r,n){let o=jr(t);if(e===o.phase)return o;let s=$s.indexOf(o.phase);if($s.indexOf(e)!==s+1)throw new ve(`Invalid workflow transition: ${o.phase} -> ${e}. Expected next phase: ${$s[s+1]??"none"}.`,{currentPhase:o.phase,requestedPhase:e,expectedNextPhase:$s[s+1]??null});if(e==="verification"){let c=Sp(t);if(c.unresolvedBlockingMemos.length>0)throw new ve("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 Ma(t,a),a}function K_(t,e){let{safeRead:r,splitWithSidecar:n,wrapTool:o,listDocuments:s}=e,i=a=>typeof n=="function"?n(a):st(r(a));t.tool("list_documents","List markdown files in the workspace. Optionally filter to only files that already contain annotations.",{annotatedOnly:P.boolean().optional().default(!1).describe("If true, return only files containing USER_MEMO/HIGHLIGHT_MARK annotations"),maxFiles:P.number().int().min(1).max(5e3).optional().default(500).describe("Maximum number of files to return")},async({annotatedOnly:a,maxFiles:c})=>o(async()=>{let u=s({annotatedOnly:a,maxFiles:c});return{content:[{type:"text",text:JSON.stringify({files:u,total:u.length},null,2)}]}})),t.tool("get_policy_status","Return current runtime policy profile and memo-action routing rules.",{},async()=>o(async()=>{let a=C_();return{content:[{type:"text",text:JSON.stringify({policy:a},null,2)}]}})),t.tool("get_workflow_status","Return current workflow phase and transition history for a document.",{file:P.string().describe("Path to the annotated markdown file")},async({file:a})=>o(async()=>{r(a);let c=jr(a);return{content:[{type:"text",text:JSON.stringify({workflow:c},null,2)}]}})),t.tool("get_severity_status","Return memo severity overrides and unresolved blocking memo IDs for the document.",{file:P.string().describe("Path to the annotated markdown file")},async({file:a})=>o(async()=>{r(a);let c=Sp(a);return{content:[{type:"text",text:JSON.stringify({severity:c},null,2)}]}})),t.tool("get_checkpoints","List all checkpoints in an annotated markdown file.",{file:P.string().describe("Path to the annotated markdown file")},async({file:a})=>o(async()=>{let c=r(a),u=_n(c);return{content:[{type:"text",text:JSON.stringify({checkpoints:u},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:P.string().describe("Path to the annotated markdown file"),target:P.enum(["standalone","claude-md","cursor-rules"]).optional().describe("Output format target (default: standalone)")},async({file:a,target:c})=>o(async()=>{let u=r(a),l=wa(u,a);return{content:[{type:"text",text:$a(l,c||"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:P.string().describe("Path to the annotated markdown file")},async({file:a})=>o(async()=>{let c=r(a),u=ro(c),l=_n(c),d=vn(c),m={file:a,annotations:u,checkpointCount:l.length,lastCheckpoint:l.length>0?l[l.length-1].timestamp:null,sectionsReviewed:d};return{content:[{type:"text",text:JSON.stringify(m,null,2)}]}})),t.tool("pickup_handoff","Parse an existing handoff document to resume a review session. Returns structured data for session continuity.",{file:P.string().describe("Path to the handoff markdown file")},async({file:a})=>o(async()=>{let c=r(a),u=I_(c);if(!u)throw new Ta(a);return{content:[{type:"text",text:JSON.stringify(u,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:P.string().describe("Path to the annotated markdown file")},async({file:a})=>o(async()=>{let u=i(a).memos.map(l=>({id:l.id,type:l.type,status:l.status,owner:l.owner,source:l.source,color:l.color,text:l.text,anchorText:l.anchorText,anchor:l.anchor,createdAt:l.createdAt,updatedAt:l.updatedAt}));return{content:[{type:"text",text:JSON.stringify({annotations:u,total:u.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:P.string().describe("Path to the annotated markdown file"),includeBody:P.boolean().optional().default(!1).describe("Include full bodyMd content (larger payload)")},async({file:a,includeBody:c})=>o(async()=>{let u=r(a),l=i(a),d=xn(u),m=vn(u),y=Ft(l.gates,l.memos),f=0,h=0,_=0,p=0,g=0,v=0,x=0,b=0,S=0,E=0;for(let G of l.memos)G.status==="open"?f++:G.status==="in_progress"?h++:G.status==="needs_review"?_++:G.status==="answered"?p++:G.status==="done"?g++:G.status==="failed"?v++:G.status==="wontfix"&&x++,G.type==="fix"?b++:G.type==="question"?S++:E++;let F=0;for(let G of y)G.status==="blocked"&&F++;let ye={version:"0.4.0",file:a,bodyMd:c?l.body:"",memos:l.memos,checkpoints:l.checkpoints,gates:y,cursor:l.cursor,sections:{all:d,reviewed:m,uncovered:d.filter(G=>!m.includes(G))},impls:l.impls,artifacts:l.artifacts,dependencies:l.dependencies,summary:{total:l.memos.length,open:f,inProgress:h,needsReview:_,answered:p,done:g,failed:v,wontfix:x,blocked:F,fixes:b,questions:S,highlights:E}},B=R_(l.memos,l.impls,y,l.checkpoints,l.artifacts,l.dependencies);return{content:[{type:"text",text:JSON.stringify({...ye,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:P.string().describe("Path to the annotated markdown file")},async({file:a})=>o(async()=>{let c=i(a),u=Ft(c.gates,c.memos);return{content:[{type:"text",text:JSON.stringify({gates:u,summary:{total:u.length,blocked:u.filter(l=>l.status==="blocked").length,proceed:u.filter(l=>l.status==="proceed").length,done:u.filter(l=>l.status==="done").length}},null,2)}]}}))}function J_(t,e){let{safeRead:r,splitWithSidecar:n,wrapTool:o}=e,s=i=>typeof n=="function"?n(i):st(r(i));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:P.string().describe("Path to the annotated markdown file"),target:P.enum(["claude-code","cursor","codex","copilot","cline","windsurf","roo-code","gemini","antigravity","generic","handoff"]).describe("Target AI tool format")},async({file:i,target:a})=>o(async()=>{let c=r(i);if(a==="handoff"){let p=wa(c,i);return{content:[{type:"text",text:$a(p,"standalone")}]}}let l=s(i).memos,d=xn(c),m=d[0]||"Plan Review",y={red:"#fca5a5",blue:"#93c5fd",yellow:"#fef08a"},f=l.map(p=>({text:p.anchorText||"",color:y[p.color]||"#fef08a",section:"",context:""})),h=l.map(p=>({id:p.id,text:p.text,color:p.color,section:"",context:p.anchorText||""}));return{content:[{type:"text",text:P_(m,i,d,f,h,a)}]}})),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:P.string().describe("Path to the annotated markdown file"),memoId:P.string().optional().describe("Optional memo ID to filter by \u2014 if omitted, returns all changes")},async({file:i,memoId:a})=>o(async()=>{let c=s(i),u=a?c.impls.filter(m=>m.memoId===a):c.impls,l=Z_(i),d=a?l.filter(m=>m.memoId===a):l;return{content:[{type:"text",text:JSON.stringify({impls:u,progress:d},null,2)}]}}))}function Q_(t,e){K_(t,e),J_(t,e)}var bn=require("node:fs");function X_(t,e){let{safeRead:r,safeWrite:n,splitWithSidecar:o,mergeAndWrite:s,wrapTool:i,ensureDefaultGate:a,updateCursorFromMemos:c,applyUnifiedDiff:u}=e,l=p=>{if(typeof o=="function")return o(p);let g=r(p);return st(g,oo(p))},d=(p,g)=>{if(typeof s=="function"){s(p,g);return}let v=to(g);v.sidecar&&no(p,v.sidecar),n(p,v.markdown)},m=(p,g)=>{let v=xp(p);if(v.valid)return p;if(g==="preflight"){let x=z_(p);if(x!==null)return x;throw new xs(`Preflight comment integrity check failed (auto-repair unsuccessful): ${v.errors.join("; ")}`,{phase:g,errors:v.errors})}throw new xs(`Postflight comment integrity check failed: ${v.errors.join("; ")}`,{phase:g,errors:v.errors})},y=(p,g,v,x)=>{if(x<1)return{replaced:!1,output:p};let b=0,S=0;for(;;){let E=p.indexOf(g,b);if(E===-1)return{replaced:!1,output:p};if(S++,S===x)return{replaced:!0,output:`${p.slice(0,E)}${v}${p.slice(E+g.length)}`};b=E+g.length}},f=(p,g)=>{if(!g)return 0;let v=0,x=0;for(;;){let b=p.indexOf(g,x);if(b===-1)return v;v++,x=b+g.length}},h=(p,g)=>{let v=E=>/^#{1,6}\s+/.test(E),x=Math.max(0,Math.min(g,Math.max(p.length-1,0))),b=0;for(let E=x;E>=0;E--)if(v(p[E])){b=E;break}let S=p.length;for(let E=x+1;E<p.length;E++)if(v(p[E])){S=E;break}return{start:b,end:S}},_=(p,g,v,x,b,S,E)=>{if(S==="body"){let D=f(p,g);if(x)return{output:p.split(g).join(v),matchCount:D};let he=y(p,g,v,b??1);return he.replaced?{output:he.output,matchCount:D}:{output:p,matchCount:D}}let F=p.split(`
76
- `),ye=vp(F,E),{start:B,end:G}=h(F,ye>=0?ye:0),me=F.slice(B,G).join(`
77
- `),ne=f(me,g),ge=me;if(x)ge=me.split(g).join(v);else{let D=y(me,g,v,b??1);if(!D.replaced)return{output:p,matchCount:ne};ge=D.output}let k=ge.split(`
78
- `);return F.splice(B,G-B,...k),{output:F.join(`
79
- `),matchCount:ne}};t.tool("create_checkpoint","Create a review checkpoint in an annotated markdown file. Records current annotation counts and reviewed sections.",{file:P.string().describe("Path to the annotated markdown file"),note:P.string().describe('Checkpoint note (e.g., "Phase 1 review done")')},async({file:p,note:g})=>Ke(p,async()=>i(async()=>{ht(p,"create_checkpoint");let v=r(p),{checkpoint:x}=bp(v,g),b=l(p);return b.checkpoints.push(x),d(p,b),{content:[{type:"text",text:JSON.stringify({checkpoint:x},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:P.string().describe("Path to the annotated markdown file"),anchorText:P.string().describe("The exact text in the document to annotate (must exist in the file)"),type:P.enum(["fix","question","highlight"]).describe("fix = needs change, question = needs clarification, highlight = mark for reference"),text:P.string().describe("The review feedback or note to attach"),occurrence:P.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:g,type:v,text:x,occurrence:b})=>Ke(p,async()=>i(async()=>{ht(p,"create_annotation");let S=l(p),E=S.body.split(`
80
- `),F=-1;if(b){let ne=0;for(let ge=0;ge<E.length;ge++)if(E[ge].includes(g)&&(ne++,ne===b)){F=ge;break}if(F===-1){let ge=ne===0?{occurrenceRequested:b,matchCount:ne}:{occurrenceRequested:b,matchCount:ne};throw new vs(g,ge)}}else{let ne=[];for(let ge=0;ge<E.length;ge++)E[ge].includes(g)&&ne.push(ge);if(ne.length===0)throw new vs(g,{occurrenceRequested:null,matchCount:0});if(ne.length===1)F=ne[0];else{let ge=ne.find(k=>E[k].trim()===g.trim());if(ge!==void 0)F=ge;else{let k=ne[0],D=1/0;for(let he of ne){let I=E[he].length-g.length;I<D&&(D=I,k=he)}F=k}}}let ye=Lt(E[F]),B=F+1,G=v==="fix"?"red":v==="question"?"blue":"yellow",me={id:mt("memo"),type:v,status:"open",owner:"agent",source:"mcp",color:G,text:x,anchorText:g,anchor:`L${B}:L${B}|${ye}`,createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()};return S.memos.push(me),a(S),S.gates=Ft(S.gates,S.memos),c(S,me.id,`Created ${v}: "${x.slice(0,50)}"`),d(p,S),{content:[{type:"text",text:JSON.stringify({memo:me,gateStatus:S.gates[0]?.status,totalMemos:S.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:P.string().describe("Path to the annotated markdown file"),memoId:P.string().describe("The memo ID to respond to"),response:P.string().describe("The response text (markdown supported)")},async({file:p,memoId:g,response:v})=>Ke(p,async()=>i(async()=>{ht(p,"respond_to_memo");let x=l(p),b=x.memos.find(E=>E.id===g);if(!b)throw new Ut(g);za("respond_to_memo",g,b.type);let S=x.responses.find(E=>E.to===g);if(S){let E=x.body.split(`
81
- `),F=v.split(`
82
- `),ye=S.bodyStartIdx,B=S.bodyEndIdx,G=B>=ye?B-ye+1:0;E.splice(ye,G,...F),S.bodyEndIdx=ye+F.length-1;let me=F.length-G;if(me!==0)for(let ne of x.responses)ne!==S&&ne.bodyStartIdx>ye&&(ne.bodyStartIdx+=me,ne.bodyEndIdx+=me);x.body=E.join(`
83
- `)}else{let E=x.body.split(`
84
- `),F=vp(E,b),ye=F>=0?F:E.length-1,B=v.split(`
85
- `),G=ye+1;E.splice(G,0,...B);for(let me of x.responses)me.bodyStartIdx>=G&&(me.bodyStartIdx+=B.length,me.bodyEndIdx+=B.length);x.body=E.join(`
86
- `),x.responses.push({id:`resp_${g}`,to:g,bodyStartIdx:G,bodyEndIdx:G+B.length-1})}return(b.status==="open"||b.status==="in_progress")&&(b.status="needs_review",b.updatedAt=new Date().toISOString()),x.gates.length>0&&(x.gates=Ft(x.gates,x.memos)),d(p,x),{content:[{type:"text",text:JSON.stringify({memoId:g,status:b.status,responseInserted:!0,totalResponses:x.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:P.string().describe("Path to the annotated markdown file"),memoId:P.string().describe("The memo ID to update"),status:P.enum(["open","in_progress","needs_review"]).describe("New status. Terminal statuses (answered, done, failed, wontfix) require human approval via VS Code."),owner:P.enum(["human","agent","tool"]).optional().describe("Optionally change the owner")},async({file:p,memoId:g,status:v,owner:x})=>Ke(p,async()=>i(async()=>{ht(p,"update_memo_status");let b=l(p),S=b.memos.find(E=>E.id===g);if(!S)throw new Ut(g);return S.status=v,x&&(S.owner=x),S.updatedAt=new Date().toISOString(),a(b),b.gates=Ft(b.gates,b.memos),c(b,g),d(p,b),{content:[{type:"text",text:JSON.stringify({memo:S,gatesUpdated:b.gates.length,cursor:b.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:P.string().describe("Path to the annotated markdown file"),taskId:P.string().describe("Current task ID"),step:P.string().describe('Current step (e.g., "3/7" or "Phase 2")'),nextAction:P.string().describe("Description of the next action to take")},async({file:p,taskId:g,step:v,nextAction:x})=>Ke(p,async()=>i(async()=>{ht(p,"update_cursor");let b=l(p);if(b.memos.length>0&&!b.memos.some(S=>S.id===g))throw new ve(`Task ID not found: "${g}". Valid IDs: ${b.memos.map(S=>S.id).join(", ")}`,{taskId:g,validTaskIds:b.memos.map(S=>S.id)});return b.cursor={taskId:g,step:v,nextAction:x,lastSeenHash:ba(b.body),updatedAt:new Date().toISOString()},d(p,b),{content:[{type:"text",text:JSON.stringify({cursor:b.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:P.string().describe("Path to the annotated markdown file"),memoId:P.string().describe("The memo ID to apply implementation to"),action:P.enum(["text_replace","file_patch","file_create"]).describe("Type of implementation action"),dryRun:P.boolean().optional().default(!1).describe("If true, return preview without writing"),oldText:P.string().optional().describe("For text_replace: the text to find and replace"),newText:P.string().optional().describe("For text_replace: the replacement text"),occurrence:P.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:P.boolean().optional().default(!1).describe("For text_replace: replace all occurrences instead of one"),scope:P.enum(["body","section"]).optional().default("body").describe("For text_replace: replacement scope (body = whole document body, section = heading section around memo anchor)"),targetFile:P.string().optional().describe("For file_patch/file_create: target file path"),patch:P.string().optional().describe("For file_patch: unified diff patch content"),content:P.string().optional().describe("For file_create: the file content to write")},async({file:p,memoId:g,action:v,dryRun:x,oldText:b,newText:S,occurrence:E,replaceAll:F,scope:ye,targetFile:B,patch:G,content:me})=>Ke(p,async()=>i(async()=>{ht(p,"apply_memo");let ne=r(p),ge=m(ne,"preflight"),k=oo(p),D=st(ge,k),he=D.memos.find(Q=>Q.id===g);if(!he)throw new Ut(g);za("apply_memo",g,he.type);let I;if(v==="text_replace"){if(!b||S===void 0)throw new ve("text_replace requires oldText and newText",{memoId:g,action:v});I={type:"text_replace",file:"",before:b,after:S}}else if(v==="file_patch"){if(!B||!G)throw new ve("file_patch requires targetFile and patch",{memoId:g,action:v});I={type:"file_patch",file:B,patch:G}}else{if(!B||me===void 0)throw new ve("file_create requires targetFile and content",{memoId:g,action:v});I={type:"file_create",file:B,content:me}}let j={id:mt("impl",{separator:"_"}),memoId:g,status:"applied",operations:[I],summary:`${v} for ${g}`,appliedAt:new Date().toISOString()};if(x)return{content:[{type:"text",text:JSON.stringify({dryRun:!0,impl:j,operation:I,memo:{id:he.id,status:he.status}},null,2)}]};if(ws(p,ge),v==="text_replace"){let Q=ye??"body";if(Q==="body"&&!D.body.includes(b))throw new ve("oldText not found in document body",{memoId:g,action:v,scope:Q});let je=_(D.body,b,S,F??!1,E,Q,he);if(je.matchCount===0)throw new ve(`oldText not found in ${Q==="section"?"memo section":"document body"}`,{memoId:g,action:v,scope:Q});if(!F&&je.matchCount>1&&E===void 0)throw new ve("Ambiguous text_replace: oldText appears multiple times; set occurrence or replaceAll=true",{memoId:g,action:v,matchCount:je.matchCount,scope:Q});D.body=je.output}else if(v==="file_patch"){if(!(0,bn.existsSync)(B))throw new ve(`Target file not found for file_patch: ${B}`,{memoId:g,action:v,targetFile:B});let Q=r(B),je=u(Q,G,B);ws(B,Q),n(B,je)}else v==="file_create"&&n(B,me);D.impls.push(j),he.status="needs_review",he.updatedAt=new Date().toISOString(),D.gates.length>0&&(D.gates=Ft(D.gates,D.memos)),c(D,g);let te=to(D);return m(te.markdown,"postflight"),te.sidecar&&no(p,te.sidecar),n(p,te.markdown),{content:[{type:"text",text:JSON.stringify({impl:j,memo:{id:he.id,status:he.status},gatesUpdated:D.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:P.string().describe("Path to the annotated markdown file"),memoId:P.string().describe("The memo ID to link artifacts to"),files:P.array(P.string()).describe("Array of relative file paths to link")},async({file:p,memoId:g,files:v})=>Ke(p,async()=>i(async()=>{ht(p,"link_artifacts");let x=l(p);if(!x.memos.find(E=>E.id===g))throw new Ut(g);let S={id:mt("art",{separator:"_"}),memoId:g,files:v,linkedAt:new Date().toISOString()};return x.artifacts.push(S),d(p,x),{content:[{type:"text",text:JSON.stringify({artifact:S},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:P.string().describe("Path to the annotated markdown file"),memoId:P.string().describe("The memo ID to update progress for"),status:P.enum(["in_progress","needs_review"]).describe("New progress status. Terminal statuses (done, failed) require human approval via VS Code."),message:P.string().describe("Progress message describing what was done or what failed")},async({file:p,memoId:g,status:v,message:x})=>Ke(p,async()=>i(async()=>{ht(p,"update_memo_progress");let b=l(p),S=b.memos.find(F=>F.id===g);if(!S)throw new Ut(g);S.status=v,S.updatedAt=new Date().toISOString();let E={memoId:g,status:v,message:x,timestamp:new Date().toISOString()};return await D_(p,E),b.gates.length>0&&(b.gates=Ft(b.gates,b.memos)),c(b,g),d(p,b),{content:[{type:"text",text:JSON.stringify({memo:{id:S.id,status:S.status},progressEntry:E,gatesUpdated:b.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:P.string().describe("Path to the annotated markdown file"),memoId:P.string().describe("The memo ID to rollback")},async({file:p,memoId:g})=>Ke(p,async()=>i(async()=>{ht(p,"rollback_memo"),zp(p,"rollback_memo","Rollback is high-risk because it can revert prior implementation state.");let v=l(p),x=v.memos.find(E=>E.id===g);if(!x)throw new Ut(g);let b=v.impls.filter(E=>E.memoId===g&&E.status==="applied");if(b.length===0)throw new ve(`No applied implementation found for memo: ${g}`,{memoId:g});let S=b[b.length-1];for(let E of S.operations)if(E.type==="text_replace"&&v.body.includes(E.after)){let F=y(v.body,E.after,E.before,1);F.replaced&&(v.body=F.output)}return S.status="reverted",x.status="open",x.updatedAt=new Date().toISOString(),v.gates.length>0&&(v.gates=Ft(v.gates,v.memos)),c(v,g),d(p,v),{content:[{type:"text",text:JSON.stringify({rolledBack:S.id,memo:{id:x.id,status:x.status},gatesUpdated:v.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:P.string().describe("Path to the annotated markdown file"),operations:P.array(P.object({memoId:P.string().describe("The memo ID to apply implementation to"),action:P.enum(["text_replace","file_patch","file_create"]).describe("Type of implementation action"),oldText:P.string().optional().describe("For text_replace: the text to find and replace"),newText:P.string().optional().describe("For text_replace: the replacement text"),occurrence:P.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:P.boolean().optional().describe("For text_replace: replace all occurrences instead of one"),scope:P.enum(["body","section"]).optional().describe("For text_replace: replacement scope (body = whole document body, section = heading section around memo anchor)"),targetFile:P.string().optional().describe("For file_patch/file_create: target file path"),patch:P.string().optional().describe("For file_patch: unified diff patch content"),content:P.string().optional().describe("For file_create: the file content to write")})).describe("Array of operations to apply")},async({file:p,operations:g})=>Ke(p,async()=>i(async()=>{ht(p,"batch_apply"),zp(p,"batch_apply","Batch apply is high-risk because it can modify multiple files in one transaction.");let v=r(p),x=m(v,"preflight"),b=oo(p),S=st(x,b),E=[],F=new Map,ye=new Map,B=[],G=[];for(let k=0;k<g.length;k++){let D=g[k],he=D.scope??"body";if(D.action==="text_replace"&&he==="body"&&D.oldText){let I=S.body.indexOf(D.oldText);B.push({idx:k,op:D,position:I})}else G.push({idx:k,op:D})}B.sort((k,D)=>D.position-k.position);let me=[...B.map(k=>k.op),...G.map(k=>k.op)];for(let k of me){let D=S.memos.find(j=>j.id===k.memoId);if(!D)throw new Ut(k.memoId);za("batch_apply",k.memoId,D.type);let he;if(k.action==="text_replace"){if(!k.oldText||k.newText===void 0)throw new ve(`Operation failed (${k.memoId}): text_replace requires oldText and newText`,{memoId:k.memoId,action:k.action});he={type:"text_replace",file:"",before:k.oldText,after:k.newText};let j=k.scope??"body";if(j==="body"&&!S.body.includes(k.oldText))throw new ve(`Operation failed (${k.memoId}): oldText not found in body`,{memoId:k.memoId,action:k.action,scope:j});let te=_(S.body,k.oldText,k.newText,k.replaceAll??!1,k.occurrence,j,D);if(te.matchCount===0)throw new ve(`Operation failed (${k.memoId}): oldText not found in ${j==="section"?"memo section":"body"}`,{memoId:k.memoId,action:k.action,scope:j});if(!k.replaceAll&&te.matchCount>1&&k.occurrence===void 0)throw new ve(`Operation failed (${k.memoId}): ambiguous text_replace; set occurrence or replaceAll=true`,{memoId:k.memoId,action:k.action,matchCount:te.matchCount,scope:j});if(S.body=te.output,k.replaceAll)for(let Q of S.memos)Q.anchorText&&Q.anchorText.includes(k.oldText)&&(Q.anchorText=Q.anchorText.split(k.oldText).join(k.newText))}else if(k.action==="file_patch"){if(!k.targetFile||!k.patch)throw new ve(`Operation failed (${k.memoId}): file_patch requires targetFile and patch`,{memoId:k.memoId,action:k.action});he={type:"file_patch",file:k.targetFile,patch:k.patch};let j=F.has(k.targetFile)?F.get(k.targetFile):(0,bn.existsSync)(k.targetFile)?r(k.targetFile):null;if(j===null)throw new ve(`Operation failed (${k.memoId}): target file not found for file_patch (${k.targetFile})`,{memoId:k.memoId,action:k.action,targetFile:k.targetFile});let te=u(j,k.patch,k.targetFile);F.set(k.targetFile,te)}else{if(!k.targetFile||k.content===void 0)throw new ve(`Operation failed (${k.memoId}): file_create requires targetFile and content`,{memoId:k.memoId,action:k.action});if((0,bn.existsSync)(k.targetFile)&&!F.has(k.targetFile))throw new ve(`Operation failed (${k.memoId}): file_create target already exists (${k.targetFile})`,{memoId:k.memoId,action:k.action,targetFile:k.targetFile});he={type:"file_create",file:k.targetFile,content:k.content},F.set(k.targetFile,k.content)}let I={id:mt("impl",{separator:"_"}),memoId:k.memoId,status:"applied",operations:[he],summary:`${k.action} for ${k.memoId}`,appliedAt:new Date().toISOString()};S.impls.push(I),D.status="needs_review",D.updatedAt=new Date().toISOString(),E.push({memoId:k.memoId,implId:I.id,status:"applied"})}S.gates.length>0&&(S.gates=Ft(S.gates,S.memos)),c(S,g[0]?.memoId||"");let ne=to(S);m(ne.markdown,"postflight"),ye.set(p,x);for(let k of F.keys())(0,bn.existsSync)(k)&&ye.set(k,r(k));ws(p,x);for(let[k,D]of ye.entries())k!==p&&ws(k,D);let ge=[];try{ne.sidecar&&no(p,ne.sidecar);for(let[k,D]of F.entries())n(k,D),ge.push(k);n(p,ne.markdown),ge.push(p)}catch(k){let D=[];for(let he=ge.length-1;he>=0;he--){let I=ge[he],j=ye.get(I);if(j!==void 0)try{n(I,j)}catch(te){D.push(`${I}: ${String(te)}`)}else try{(0,bn.unlinkSync)(I)}catch(te){D.push(`${I}: ${String(te)}`)}}throw D.length>0?new ve(`Batch apply failed and rollback had errors: ${D.join(" | ")}`,{rollbackErrors:D}):k}return q_(p,{type:"batch_apply",results:E,timestamp:new Date().toISOString()}),{content:[{type:"text",text:JSON.stringify({results:E,gatesUpdated:S.gates.length,cursor:S.cursor},null,2)}]}}))),t.tool("advance_workflow_phase","Advance workflow phase in strict sequence: scope -> root_cause -> implementation -> verification.",{file:P.string().describe("Path to the annotated markdown file"),toPhase:P.enum(["root_cause","implementation","verification"]).describe("Next phase to move to"),note:P.string().optional().describe("Optional transition note")},async({file:p,toPhase:g,note:v})=>Ke(p,async()=>i(async()=>{let x=B_(p,g,"advance_workflow_phase",v);return{content:[{type:"text",text:JSON.stringify({workflow:x},null,2)}]}}))),t.tool("set_memo_severity","Set severity override for a memo. Defaults remain: fix=blocking, question/highlight=non_blocking.",{file:P.string().describe("Path to the annotated markdown file"),memoId:P.string().describe("Memo ID to classify"),severity:P.enum(["blocking","non_blocking"]).describe("Severity override")},async({file:p,memoId:g,severity:v})=>Ke(p,async()=>i(async()=>{if(ht(p,"set_memo_severity"),!l(p).memos.find(E=>E.id===g))throw new Ut(g);let S=H_(p,g,v);return{content:[{type:"text",text:JSON.stringify({memoId:g,severity:v,severityState:S},null,2)}]}}))),t.tool("request_approval_checkpoint","Create an approval checkpoint for a high-risk action before execution.",{file:P.string().describe("Path to the annotated markdown file"),tool:P.string().describe("High-risk tool name (e.g., batch_apply, rollback_memo)"),reason:P.string().describe("Reason for approval request")},async({file:p,tool:g,reason:v})=>Ke(p,async()=>i(async()=>{ht(p,"request_approval_checkpoint");let x=Tp(p,g,v);return{content:[{type:"text",text:JSON.stringify({workflow:x},null,2)}]}}))),t.tool("approve_checkpoint","Approve a pending high-risk checkpoint. Grants one execution for the approved tool.",{file:P.string().describe("Path to the annotated markdown file"),tool:P.string().describe("Tool name being approved"),approvedBy:P.string().describe("Approver identity"),reason:P.string().describe("Approval rationale")},async({file:p,tool:g,approvedBy:v,reason:x})=>Ke(p,async()=>i(async()=>{ht(p,"approve_checkpoint");let b=G_(p,g,v,x);return{content:[{type:"text",text:JSON.stringify({workflow:b},null,2)}]}})))}var so=uo(require("node:path")),ks=require("node:fs"),iI=["**/.env",".env","**/.env.*",".env.*","**/credentials*","credentials*","**/secrets*","secrets*","**/*.pem","*.pem","**/*.key","*.key","**/*.p12","*.p12","**/node_modules/**","node_modules/**","**/.git/**",".git/**"];function ev(t){return{workspaceRoot:t||process.env.MD_FEEDBACK_WORKSPACE||process.cwd(),blocklist:[...iI],allowlist:[]}}function aI(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 Y_(t,e){return t.some(r=>aI(r,e))}function Ep(t,e){let r=so.default.resolve(t.workspaceRoot,e),n=so.default.resolve(t.workspaceRoot);if(!r.startsWith(n+so.default.sep)&&r!==n)return{safe:!1,reason:`Path "${e}" resolves outside workspace root`};if((0,ks.existsSync)(r))try{let s=(0,ks.realpathSync)(r),i=(0,ks.realpathSync)(n);if(!s.startsWith(i+so.default.sep)&&s!==i)return{safe:!1,reason:`Path "${e}" resolves outside workspace via symlink`}}catch{}let o=so.default.relative(n,r).replace(/\\/g,"/");return Y_(t.blocklist,o)?{safe:!1,reason:`Path "${e}" matches blocklist pattern`}:t.allowlist.length>0&&!Y_(t.allowlist,o)?{safe:!1,reason:`Path "${e}" not in allowlist`}:{safe:!0}}var io=require("node:fs"),ao=require("node:path");function tv(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 cI=new Set([".git","node_modules",".md-feedback","dist","build"]);function Oa(t,e={}){let r=e.annotatedOnly??!1,n=e.maxFiles??500,o=(0,ao.resolve)(t),s=[];function i(a){if(s.length>=n)return;let c=(0,io.readdirSync)(a,{withFileTypes:!0});for(let u of c){if(s.length>=n)return;let l=(0,ao.join)(a,u.name);if(u.isDirectory()){if(cI.has(u.name))continue;i(l);continue}if(!u.isFile()||!u.name.toLowerCase().endsWith(".md"))continue;let d=(0,ao.relative)(o,l).replace(/\\/g,"/");if(!r){s.push(d);continue}try{let m=(0,io.readFileSync)(l,"utf-8");(m.includes("<!-- USER_MEMO")||m.includes("<!-- HIGHLIGHT_MARK"))&&s.push(d)}catch{}}}try{(0,io.statSync)(o).isDirectory()&&i(o)}catch{return[]}return s}function rv(t={}){let{workspace:e,log:r}=t,n=ev(e);function o(f){let h=Ep(n,f);if(!h.safe)throw new ys(h.reason,{file:f});return Ia(f)}function s(f,h){let _=Ep(n,f);if(!_.safe)throw new ys(_.reason,{file:f});j_(f,h)}function i(f){let h=o(f),_=oo(f);return st(h,_)}function a(f,h){let _=to(h);_.sidecar&&no(f,_.sidecar),s(f,_.markdown)}function c(f){return Oa(n.workspaceRoot,f)}function u(f){return{content:[{type:"text",text:JSON.stringify(wp(f))}],isError:!0}}async function l(f){try{return await f()}catch(h){if(r){let _=wp(h);r(`tool error: ${JSON.stringify(_)}`)}return u(h)}}function d(f){f.gates.length===0&&f.memos.length>0&&f.gates.push({id:mt("gate"),type:"merge",status:"blocked",blockedBy:[],canProceedIf:"",doneDefinition:"All review annotations resolved"})}function m(f,h,_){let p=f.memos.filter(x=>qt(x.status)).length,g=f.memos.filter(x=>x.status!=="open").length,v=f.memos.filter(x=>!qt(x.status));f.cursor={taskId:h,step:`${g} applied, ${p}/${f.memos.length} resolved`,nextAction:_??(v.length===0?"All annotations resolved \u2014 review complete":`Resolve: ${v.map(x=>x.id).slice(0,3).join(", ")}${v.length>3?"...":""}`),lastSeenHash:ba(f.body),updatedAt:new Date().toISOString()}}function y(f,h,_){let p=f.split(`
87
- `),g=h.split(`
88
- `),v=[],x=0,b=0,S=!1;for(;b<g.length;){let F=g[b].match(/^@@ -(\d+)(?:,(\d+))? \+(\d+)(?:,(\d+))? @@/);if(!F){b++;continue}S=!0;let B=Number(F[1])-1;if(B<x||B>p.length)throw new Cr(`Invalid patch hunk range for ${_}`,{file:_});for(v.push(...p.slice(x,B)),x=B,b++;b<g.length&&!g[b].startsWith("@@ ");){let G=g[b];if(G.startsWith("\")){b++;continue}let me=G[0],ne=G.slice(1);if(me===" "){if(x>=p.length||p[x]!==ne)throw new Cr(`Patch context mismatch in ${_}`,{file:_});v.push(ne),x++}else if(me==="-"){if(x>=p.length||p[x]!==ne)throw new Cr(`Patch delete mismatch in ${_}`,{file:_});x++}else if(me==="+")v.push(ne);else throw new Cr(`Unsupported patch line in ${_}: "${G}"`,{file:_});b++}}if(!S)throw new Cr(`Invalid unified diff for ${_}: no hunks found`,{file:_});return v.push(...p.slice(x)),v.join(`
89
- `)}return{safeRead:o,safeWrite:s,splitWithSidecar:i,mergeAndWrite:a,listDocuments:c,wrapTool:l,ensureDefaultGate:d,updateCursorFromMemos:m,applyUnifiedDiff:y}}function nv(t,e,r){let n=rv({workspace:e,log:r});Q_(t,n),X_(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}
90
- `)}function uI(){return tv(process.argv,process.env)}var ov=uI(),sv=new ha({name:"md-feedback",version:"1.5.3"});nv(sv,ov,Ss);async function lI(){let t=new ya;await sv.connect(t);let e=ov||process.cwd();Oa(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.3 ready (stdio) workspace=${e}`)}lI().catch(t=>{Ss(`fatal: ${t}`),process.exit(1)});0&&(module.exports={log});
72
+ `;return{checkpoint:o,updatedMarkdown:a}}function ka(t,e){let r=_n(t),n=no(t),o=vn(t),s=xn(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=[];XP(t,a,c,u);let l=[];for(let f of c)l.push(`Resolve: ${f.feedback||f.text}`);let d=s.filter(f=>!o.includes(f));for(let f of d)l.push(`Review uncovered: ${f} section`);return{meta:i,decisions:a,openQuestions:c,keyPoints:u,checkpoints:r,nextSteps:l}}function XP(t,e,r,n){let o=t.split(`
73
+ `),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 f=u[1].match(/color="([^"]+)"/),y=f?f[1]:"red",p=u[2].replace(/--\u200B>/g,"-->"),g="";for(let _=i-1;_>=0;_--)if(o[_].trim()&&!o[_].includes("<!-- ")){g=o[_].trim(),g=g.replace(/<\/?mark[^>]*>/g,"");break}let h={section:s,text:g,feedback:p};y==="red"?e.push(h):y==="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 f={};for(let _ of d){let $=_.trim().match(/^(\w+)="([^"]*)"$/);$&&(f[$[1]]=$[2])}let y=f.color||"red",p=(f.text||"").replace(/--\u200B>/g,"-->"),g="";if(f.anchorText)g=f.anchorText.replace(/<\/?mark[^>]*>/g,"");else for(let _=i-1;_>=0;_--)if(o[_].trim()&&!o[_].includes("<!-- ")){g=o[_].trim().replace(/<\/?mark[^>]*>/g,"");break}let h={section:s,text:g,feedback:p};y==="red"?e.push(h):y==="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 f,y;if(l.length===2)f=l[1],y="yellow";else{let g=(l[1]||l[2]||"").trim();y=Cr[g]||"yellow",f=l[3]}let p={section:s,text:f,feedback:""};y==="red"?e.push(p):y==="blue"?r.push(p):n.push(p)}}}function Sa(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}** "${Fe(o.text,60)}" \u2192 ${o.feedback}`):o.feedback?r.push(`${n+1}. **${s}** ${o.feedback}`):o.text&&r.push(`${n+1}. **${s}** "${Fe(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}** "${Fe(o.text,60)}" \u2014 ${o.feedback}`):o.feedback?r.push(`${n+1}. **${s}** ${o.feedback}`):o.text&&r.push(`${n+1}. **${s}** "${Fe(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}** "${Fe(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(`
74
+ `)}function O_(t){let e=t.split(`
75
+ `),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 f=u.match(/\*\*File\*\*:\s*`([^`]+)`/);f&&(n.file=f[1]);let y=u.match(/\*\*Started\*\*:\s*(.+)/);y&&(n.startedAt=y[1].trim());let p=u.match(/\*\*Last checkpoint\*\*:\s*(.+)/);p&&(n.lastCheckpoint=p[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 f=d[1],y=d[2],p=y.match(/"([^"]+)"\s*→\s*(.+)/),g=y.match(/"([^"]+)"\s*—\s*(.+)/),h;if(p)h={section:f,text:p[1],feedback:p[2]};else if(g)h={section:f,text:g[1],feedback:g[2]};else{let _=y.match(/"([^"]+)"/);h={section:f,text:_?_[1]:"",feedback:_?"":y}}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 f=u.match(/^\|\s*(\d+)\s*\|\s*([^|]+)\|\s*([^|]*)\|\s*(\d+)\s*\|\s*(\d+)\s*\|\s*(\d+)\s*\|/);f&&a.push({id:`ckpt_restored_${f[1]}`,timestamp:f[2].trim(),note:f[3].trim(),fixes:parseInt(f[4],10),questions:parseInt(f[5],10),highlights:parseInt(f[6],10),sectionsReviewed:[]})}if(r.startsWith("Next Steps")){let f=u.match(/^- \[ \]\s+(.+)/);f&&c.push(f[1])}}return n.file?{meta:n,decisions:o,openQuestions:s,keyPoints:i,checkpoints:a,nextSteps:c}:null}function YP(t,e){return t.blockedBy.length>0&&t.blockedBy.map(o=>e.find(s=>s.id===o)).filter(o=>o!=null&&!Ft(o.status)).length>0?"blocked":e.some(n=>!Ft(n.status))?"proceed":"done"}function Rt(t,e){return t.map(r=>({...r,status:r.override||YP(r,e)}))}function M_(t,e,r,n,o,s){let i={},a={},c=0;for(let m of t)i[m.status]=(i[m.status]||0)+1,a[m.type]=(a[m.type]||0)+1,Ft(m.status)&&c++;let u=t.length>0?c/t.length:0,l={},d=0,f=0,y=0;for(let m of e)l[m.status]=(l[m.status]||0)+1,m.status==="applied"&&d++,m.status==="reverted"&&f++,m.status==="failed"&&y++;let p={};for(let m of r)p[m.status]=(p[m.status]||0)+1;let g=new Set;for(let m of o)for(let v of m.files)g.add(v);let h=s.filter(m=>m.type==="blocks").length,_=null;n.length>0&&(_=n.reduce((m,v)=>v.timestamp>m?v.timestamp:m,n[0].timestamp));let $=null,S=t.filter(m=>Ft(m.status)&&m.createdAt&&m.updatedAt);if(S.length>0){let m=0,v=0;for(let k of S){let T=new Date(k.createdAt).getTime(),z=new Date(k.updatedAt).getTime();!isNaN(T)&&!isNaN(z)&&z>T&&(m+=z-T,v++)}v>0&&($=m/v)}return{totalMemos:t.length,byStatus:i,byType:a,resolutionRate:u,totalImpls:e.length,implsByStatus:l,appliedCount:d,revertedCount:f,failedCount:y,totalGates:r.length,gatesByStatus:p,totalArtifacts:o.length,linkedFiles:g.size,totalDependencies:s.length,blockingChains:h,totalCheckpoints:n.length,lastCheckpoint:_,avgResolutionTime:$}}var xt=class extends Error{constructor(r,n,o){super(n);this.code=r;this.details=o;this.name="ToolError"}},ws=class extends xt{constructor(e,r){super("FILE_SAFETY",e,r),this.name="FileSafetyError"}},Ta=class extends xt{constructor(e){super("FILE_NOT_FOUND",`File not found: ${e}`,{file:e}),this.name="FileNotFoundError"}},za=class extends xt{constructor(e,r){super("FILE_READ",`Cannot read file ${e}${r?`: ${r}`:""}`,{file:e,...r?{cause:r}:{}}),this.name="FileReadError"}},$s=class extends xt{constructor(e,r){super("FILE_WRITE",`Cannot write file ${e}${r?`: ${r}`:""}`,{file:e,...r?{cause:r}:{}}),this.name="FileWriteError"}};var Nr=class extends xt{constructor(e,r){super("PATCH_APPLY",e,r),this.name="PatchApplyError"}},Vt=class extends xt{constructor(e,r){let n=r?.length?`. Available memos: ${r.slice(0,10).join(", ")}${r.length>10?` (+${r.length-10} more)`:""}`:". Use list_annotations to see available memos.";super("MEMO_NOT_FOUND",`Memo not found: ${e}${n}`,{memoId:e,availableMemoIds:r?.slice(0,10)}),this.name="MemoNotFoundError"}},se=class extends xt{constructor(e,r){super("OPERATION_INVALID",e,r),this.name="OperationValidationError"}},ks=class extends xt{constructor(e,r){super("ANCHOR_NOT_FOUND",`Anchor text not found: "${e}". Recovery steps: 1) Call get_document_structure(includeBody=true) to verify exact text. 2) Check for whitespace/encoding differences. 3) Use a shorter, unique substring. 4) If text was edited, re-read the document for current content.`,{anchorText:e,matchCount:0,...r??{}}),this.name="AnchorNotFoundError"}},Ss=class extends xt{constructor(e,r){super("COMMENT_INTEGRITY",e,r),this.name="CommentIntegrityError"}};var Ea=class extends xt{constructor(e){super("HANDOFF_INVALID","Not a valid handoff document",{file:e}),this.name="InvalidHandoffError"}};function Sp(t){return t instanceof xt?{error:t.message,code:t.code,type:t.name,...t.details?{details:t.details}:{}}:t instanceof Error?{error:t.message}:{error:String(t)}}var C_={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."}},eI={...C_};function A_(t=process.env){return t.MD_FEEDBACK_POLICY_PROFILE?.trim().toLowerCase()==="strict"?"strict":"default"}function N_(t){return t==="strict"?eI:C_}function j_(t=A_()){let e=N_(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 Pa(t,e,r,n=A_()){let s=N_(n)[t];if(!s.allowedMemoTypes.includes(r))throw new se(`${t} supports only ${s.allowedMemoTypes.join(", ")} memos. ${s.guidance}`,{memoId:e,memoType:r,action:t,policyProfile:n,allowedMemoTypes:s.allowedMemoTypes})}var Ot=require("node:fs"),zp=require("node:path"),Ma=require("node:crypto");var fe=require("fs"),Ze=require("path"),Ra=require("node:crypto");var Z_=mo(require("node:path")),fr=require("node:fs"),Ia=new Map,tI=5e3,rI=20,nI=3e4;function oI(t){return new Promise(e=>setTimeout(e,t))}async function sI(t,e=tI){let r=Date.now();for(;;)try{let n=(0,fr.openSync)(t,"wx");return()=>{try{(0,fr.closeSync)(n)}catch{}try{(0,fr.unlinkSync)(t)}catch{}}}catch(n){if(n.code!=="EEXIST")throw n;try{let s=(0,fr.statSync)(t);if(Date.now()-s.mtimeMs>nI){try{(0,fr.unlinkSync)(t)}catch{}continue}}catch{continue}if(Date.now()-r>e)throw new Error(`File lock timeout for ${t}`);await oI(rI)}}async function Qe(t,e){let r=Z_.default.resolve(t),n=`${r}.md-feedback.lock`;for(;Ia.has(r);)await Ia.get(r);let o;Ia.set(r,new Promise(i=>{o=i}));let s=await sI(n);try{return await e()}finally{s(),Ia.delete(r),o()}}var iI=20;function Ts(t){return(0,Ze.isAbsolute)(t)?t:(0,Ze.resolve)(process.cwd(),t)}function Oa(t){let e=Ts(t);if(!(0,fe.existsSync)(e))throw new Ta(e);try{return(0,fe.readFileSync)(e,"utf-8")}catch(r){throw new za(e,r instanceof Error?r.message:String(r))}}function D_(t,e){let r=Ts(t),n=(0,Ze.dirname)(r),o=(0,Ze.join)(n,`.mf-tmp-${(0,Ra.randomBytes)(6).toString("hex")}`);try{(0,fe.writeFileSync)(o,e,"utf-8"),(0,fe.renameSync)(o,r)}catch(s){try{(0,fe.unlinkSync)(o)}catch{}throw new $s(r,s instanceof Error?s.message:String(s))}}function jr(t){let e=Ts(t),r=(0,Ze.join)((0,Ze.dirname)(e),".md-feedback");return(0,fe.existsSync)(r)||(0,fe.mkdirSync)(r,{recursive:!0}),r}function oo(t,e){let r=jr(t),n=(0,Ze.join)(r,"snapshots");(0,fe.existsSync)(n)||(0,fe.mkdirSync)(n,{recursive:!0});let o=new Date().toISOString().replace(/[:.]/g,"-"),s=(0,Ze.join)(n,`snapshot-${o}.md`);(0,fe.writeFileSync)(s,e,"utf-8");let i=(0,fe.readdirSync)(n).filter(a=>a.startsWith("snapshot-")).sort();for(;i.length>iI;)try{(0,fe.unlinkSync)((0,Ze.join)(n,i.shift()))}catch{}return s}function q_(t){let e=jr(t),r=(0,Ze.join)(e,"progress.json");if(!(0,fe.existsSync)(r))return[];try{return JSON.parse((0,fe.readFileSync)(r,"utf-8"))}catch{return[]}}async function L_(t,e){let r=jr(t),n=(0,Ze.join)(r,"progress.json");await Qe(n,async()=>{let o=[];if((0,fe.existsSync)(n))try{o=JSON.parse((0,fe.readFileSync)(n,"utf-8"))}catch{o=[]}o.push(e);let s=`${n}.tmp-${(0,Ra.randomBytes)(6).toString("hex")}`;(0,fe.writeFileSync)(s,JSON.stringify(o,null,2),"utf-8"),(0,fe.renameSync)(s,n)})}function so(t,e){let r=jr(t),n=(0,Ze.join)(r,"metadata.json"),o=`${n}.tmp-${(0,Ra.randomBytes)(6).toString("hex")}`;try{(0,fe.writeFileSync)(o,JSON.stringify(e,null,2),"utf-8"),(0,fe.renameSync)(o,n)}catch(s){try{(0,fe.unlinkSync)(o)}catch{}throw new $s(n,s instanceof Error?s.message:String(s))}}function io(t){let e=Ts(t),r=(0,Ze.join)((0,Ze.dirname)(e),".md-feedback","metadata.json"),n=null;if((0,fe.existsSync)(r))try{let i=JSON.parse((0,fe.readFileSync)(r,"utf-8"));n={version:"1.0",updatedAt:typeof i.updatedAt=="string"?i.updatedAt:new Date().toISOString(),impls:Array.isArray(i.impls)?i.impls:[],artifacts:Array.isArray(i.artifacts)?i.artifacts:[],dependencies:Array.isArray(i.dependencies)?i.dependencies:[],checkpoints:Array.isArray(i.checkpoints)?i.checkpoints:[]}}catch{n=null}let o=aI(t);if(!n&&!o)return null;if(!n)return{version:"1.0",updatedAt:new Date().toISOString(),impls:o?.impls||[],artifacts:[],dependencies:[],checkpoints:o?.checkpoints||[]};if(!o)return n;let s=(i,a)=>{let c=new Set(i.map(u=>u.id));return[...i,...a.filter(u=>!c.has(u.id))]};return{...n,impls:s(n.impls,o.impls||[]),checkpoints:s(n.checkpoints,o.checkpoints||[])}}function aI(t){let e=Ts(t),r=(0,Ze.join)((0,Ze.dirname)(e),".md-feedback","operational-meta.json");if(!(0,fe.existsSync)(r))return null;try{return JSON.parse((0,fe.readFileSync)(r,"utf-8"))}catch{return null}}function F_(t,e){let r=jr(t),n=(0,Ze.join)(r,"transactions");(0,fe.existsSync)(n)||(0,fe.mkdirSync)(n,{recursive:!0});let o=new Date().toISOString().replace(/[:.]/g,"-"),s=(0,Ze.join)(n,`tx-${o}.json`);return(0,fe.writeFileSync)(s,JSON.stringify(e,null,2),"utf-8"),s}var zs=["scope","root_cause","implementation","verification"],cI={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"]},uI=new Set(["batch_apply","rollback_memo"]);function U_(t){return(0,zp.join)(jr(t),"workflow.json")}function V_(t){return(0,zp.join)(jr(t),"severity.json")}function H_(t=process.env){return t.MD_FEEDBACK_WORKFLOW_ENFORCEMENT?.trim().toLowerCase()==="strict"?"strict":"off"}function W_(t){let e=V_(t);if(!(0,Ot.existsSync)(e))return{version:"1.0",overrides:{},updatedAt:new Date().toISOString()};try{let r=yp((0,Ot.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 lI(t,e){let r=V_(t),n=`${r}.tmp-${(0,Ma.randomBytes)(6).toString("hex")}`;(0,Ot.writeFileSync)(n,JSON.stringify(e,null,2),"utf-8"),(0,Ot.renameSync)(n,r)}function dI(t){return t==="fix"?"blocking":"non_blocking"}function G_(t,e,r){let o={version:"1.0",overrides:{...W_(t).overrides,[e]:r},updatedAt:new Date().toISOString()};return lI(t,o),o}function Ca(t){let e=Oa(t),r=it(e),n=W_(t).overrides,o=r.memos.filter(s=>!Ft(s.status)).filter(s=>(n[s.id]??dI(s.type))==="blocking").map(s=>s.id);return{overrides:n,unresolvedBlockingMemos:o}}function Aa(t,e){let r=U_(t),n=`${r}.tmp-${(0,Ma.randomBytes)(6).toString("hex")}`;(0,Ot.writeFileSync)(n,JSON.stringify(e,null,2),"utf-8"),(0,Ot.renameSync)(n,r)}function Tp(){return{version:"1.0",phase:"scope",status:"active",transitions:[],pendingCheckpoint:null,approvals:[],approvalGrant:null,updatedAt:new Date().toISOString()}}function pI(t){let e=U_(t);if(!(0,Ot.existsSync)(e))return Tp();try{let r=yp((0,Ot.readFileSync)(e,"utf-8")),n=r.phase,o=Array.isArray(r.transitions)?r.transitions:[];return!n||!zs.includes(n)?Tp():{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 Tp()}}function mr(t){let e=pI(t);return e.transitions.length===0&&e.phase==="scope"&&Aa(t,e),e}function gt(t,e){let r=mr(t);if(H_()!=="strict")return r;let n=cI[e];if(!n||n.includes(r.phase))return r;throw new se(`Tool "${e}" is not allowed in phase "${r.phase}".`,{tool:e,currentPhase:r.phase,allowedPhases:n})}function B_(t,e){let r=mr(t),n=e(r);return Aa(t,n),n}function Ep(t,e,r){return B_(t,n=>n.pendingCheckpoint&&n.pendingCheckpoint.tool===e?n:{...n,pendingCheckpoint:{id:`chk_${(0,Ma.randomBytes)(4).toString("hex")}`,tool:e,reason:r,requestedAt:new Date().toISOString()},updatedAt:new Date().toISOString()})}function J_(t,e,r,n){return B_(t,o=>{let s=o.pendingCheckpoint;if(!s||s.tool!==e)throw new se(`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 Pp(t,e,r){if(H_()!=="strict"||!uI.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 Aa(t,s),s}let o=Ep(t,e,r);throw new se(`Approval required before high-risk tool "${e}".`,{tool:e,reason:r,pendingCheckpoint:o.pendingCheckpoint})}function K_(t,e,r,n){let o=mr(t);if(e===o.phase)return o;let s=zs.indexOf(o.phase);if(zs.indexOf(e)!==s+1)throw new se(`Invalid workflow transition: ${o.phase} -> ${e}. Expected next phase: ${zs[s+1]??"none"}.`,{currentPhase:o.phase,requestedPhase:e,expectedNextPhase:zs[s+1]??null});if(e==="verification"){let c=Ca(t);if(c.unresolvedBlockingMemos.length>0)throw new se("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 Aa(t,a),a}function Q_(t,e){let{safeRead:r,splitWithSidecar:n,wrapTool:o,listDocuments:s}=e,i=a=>typeof n=="function"?n(a):it(r(a));t.tool("list_documents","List markdown files in the workspace. Optionally filter to only files that already contain annotations.",{annotatedOnly:M.boolean().optional().default(!1).describe("If true, return only files containing USER_MEMO/HIGHLIGHT_MARK annotations"),maxFiles:M.number().int().min(1).max(5e3).optional().default(500).describe("Maximum number of files to return")},async({annotatedOnly:a,maxFiles:c})=>o(async()=>{let u=s({annotatedOnly:a,maxFiles:c});return{content:[{type:"text",text:JSON.stringify({files:u,total:u.length},null,2)}]}})),t.tool("get_policy_status","Return current runtime policy profile and memo-action routing rules.",{},async()=>o(async()=>{let a=j_();return{content:[{type:"text",text:JSON.stringify({policy:a},null,2)}]}})),t.tool("get_workflow_status","Return current workflow phase and transition history for a document.",{file:M.string().describe("Path to the annotated markdown file")},async({file:a})=>o(async()=>{r(a);let c=mr(a);return{content:[{type:"text",text:JSON.stringify({workflow:c},null,2)}]}})),t.tool("get_severity_status","Return memo severity overrides and unresolved blocking memo IDs for the document.",{file:M.string().describe("Path to the annotated markdown file")},async({file:a})=>o(async()=>{r(a);let c=Ca(a);return{content:[{type:"text",text:JSON.stringify({severity:c},null,2)}]}})),t.tool("get_checkpoints","List all checkpoints in an annotated markdown file.",{file:M.string().describe("Path to the annotated markdown file")},async({file:a})=>o(async()=>{let c=r(a),u=_n(c);return{content:[{type:"text",text:JSON.stringify({checkpoints:u},null,2)}]}})),t.tool("generate_handoff","Generate a structured handoff document from an annotated markdown file for session continuity. Outputs explicit fields, numbers, and lists to resist LLM context compression. Use pickup_handoff to parse the result in a new session.",{file:M.string().describe("Path to the annotated markdown file"),outputFormat:M.enum(["standalone","claude-md","cursor-rules"]).optional().describe("Output format (default: standalone)")},async({file:a,outputFormat:c})=>o(async()=>{let u=r(a),l=ka(u,a);return{content:[{type:"text",text:Sa(l,c||"standalone")}]}})),t.tool("get_review_status","Get current review session status: annotation counts, checkpoints, and reviewed sections. Returns counts and metadata only (no individual memos). For memo details use list_annotations; for full document parse use get_document_structure.",{file:M.string().describe("Path to the annotated markdown file")},async({file:a})=>o(async()=>{let c=r(a),u=no(c),l=_n(c),d=vn(c),f={file:a,annotations:u,checkpointCount:l.length,lastCheckpoint:l.length>0?l[l.length-1].timestamp:null,sectionsReviewed:d};return{content:[{type:"text",text:JSON.stringify(f,null,2)}]}})),t.tool("get_overview","Return a consolidated overview for one document: review counts, gate summary, workflow phase, and blocking memo IDs. Start here \u2014 this is the recommended first query when working with a document.",{file:M.string().describe("Path to the annotated markdown file"),includeOpenMemoIds:M.boolean().optional().default(!0).describe("Include open/needs_review memo IDs in the response")},async({file:a,includeOpenMemoIds:c})=>o(async()=>{let u=i(a),l=Rt(u.gates,u.memos),d=mr(a),f=Ca(a),y={total:u.memos.length,open:u.memos.filter(h=>h.status==="open").length,inProgress:u.memos.filter(h=>h.status==="in_progress").length,needsReview:u.memos.filter(h=>h.status==="needs_review").length,answered:u.memos.filter(h=>h.status==="answered").length,done:u.memos.filter(h=>h.status==="done").length,failed:u.memos.filter(h=>h.status==="failed").length,wontfix:u.memos.filter(h=>h.status==="wontfix").length,fixes:u.memos.filter(h=>h.type==="fix").length,questions:u.memos.filter(h=>h.type==="question").length,highlights:u.memos.filter(h=>h.type==="highlight").length},p=c?u.memos.filter(h=>h.status==="open"||h.status==="in_progress"||h.status==="needs_review").map(h=>({id:h.id,type:h.type,status:h.status})):[],g={file:a,summary:y,workflow:{phase:d.phase,approvalRequired:!!d.pendingCheckpoint,pendingApprovalTool:d.pendingCheckpoint?.tool??null},gates:{total:l.length,blocked:l.filter(h=>h.status==="blocked").length,proceed:l.filter(h=>h.status==="proceed").length,done:l.filter(h=>h.status==="done").length},severity:{overrides:f.overrides,unresolvedBlockingMemos:f.unresolvedBlockingMemos},openMemos:p};return{content:[{type:"text",text:JSON.stringify(g,null,2)}]}})),t.tool("pickup_handoff","Parse an existing handoff document to resume a review session. Returns structured data for session continuity.",{file:M.string().describe("Path to the handoff markdown file")},async({file:a})=>o(async()=>{let c=r(a),u=O_(c);if(!u)throw new Ea(a);return{content:[{type:"text",text:JSON.stringify(u,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:M.string().describe("Path to the annotated markdown file")},async({file:a})=>o(async()=>{let u=i(a).memos.map(l=>({id:l.id,type:l.type,status:l.status,owner:l.owner,source:l.source,color:l.color,text:l.text,anchorText:l.anchorText,anchor:l.anchor,createdAt:l.createdAt,updatedAt:l.updatedAt}));return{content:[{type:"text",text:JSON.stringify({annotations:u,total:u.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:M.string().describe("Path to the annotated markdown file"),includeBody:M.boolean().optional().default(!1).describe("Include full bodyMd content (larger payload). Set true when you need to search or modify the document body text.")},async({file:a,includeBody:c})=>o(async()=>{let u=r(a),l=i(a),d=xn(u),f=vn(u),y=Rt(l.gates,l.memos),p=0,g=0,h=0,_=0,$=0,S=0,m=0,v=0,k=0,T=0;for(let C of l.memos)C.status==="open"?p++:C.status==="in_progress"?g++:C.status==="needs_review"?h++:C.status==="answered"?_++:C.status==="done"?$++:C.status==="failed"?S++:C.status==="wontfix"&&m++,C.type==="fix"?v++:C.type==="question"?k++:T++;let z=0;for(let C of y)C.status==="blocked"&&z++;let R={version:"0.4.0",file:a,bodyMd:c?l.body:"",memos:l.memos,checkpoints:l.checkpoints,gates:y,cursor:l.cursor,sections:{all:d,reviewed:f,uncovered:d.filter(C=>!f.includes(C))},impls:l.impls,artifacts:l.artifacts,dependencies:l.dependencies,summary:{total:l.memos.length,open:p,inProgress:g,needsReview:h,answered:_,done:$,failed:S,wontfix:m,blocked:z,fixes:v,questions:k,highlights:T}},E=M_(l.memos,l.impls,y,l.checkpoints,l.artifacts,l.dependencies);return{content:[{type:"text",text:JSON.stringify({...R,metrics:E},null,2)}]}})),t.tool("evaluate_gates","Evaluate all gates in a markdown file against current memo statuses. Returns { gates: Gate[], summary: { total, blocked, proceed, done } } without modifying the file.",{file:M.string().describe("Path to the annotated markdown file")},async({file:a})=>o(async()=>{let c=i(a),u=Rt(c.gates,c.memos);return{content:[{type:"text",text:JSON.stringify({gates:u,summary:{total:u.length,blocked:u.filter(l=>l.status==="blocked").length,proceed:u.filter(l=>l.status==="proceed").length,done:u.filter(l=>l.status==="done").length}},null,2)}]}}))}function X_(t,e){let{safeRead:r,splitWithSidecar:n,wrapTool:o}=e,s=i=>typeof n=="function"?n(i):it(r(i));t.tool("export_review",`Export review feedback formatted for a specific AI coding tool. Returns markdown ready to save to the tool's config file (e.g. CLAUDE.md, .cursorrules). Use "handoff" target for session-continuity documents.`,{file:M.string().describe("Path to the annotated markdown file"),target:M.enum(["claude-code","cursor","codex","copilot","cline","windsurf","roo-code","gemini","antigravity","generic","handoff"]).describe("Target AI tool format. Each generates tool-specific instruction syntax.")},async({file:i,target:a})=>o(async()=>{let c=r(i);if(a==="handoff"){let _=ka(c,i);return{content:[{type:"text",text:Sa(_,"standalone")}]}}let l=s(i).memos,d=xn(c),f=d[0]||"Plan Review",y={red:"#fca5a5",blue:"#93c5fd",yellow:"#fef08a"},p=l.map(_=>({text:_.anchorText||"",color:y[_.color]||"#fef08a",section:"",context:""})),g=l.map(_=>({id:_.id,text:_.text,color:_.color,section:"",context:_.anchorText||""}));return{content:[{type:"text",text:R_(f,i,d,p,g,a)}]}})),t.tool("get_memo_changes","Get implementation history and progress for a memo. Returns { impls: MemoImpl[], progress: ProgressEntry[] } from document metadata and .md-feedback/progress.json. Omit memoId to return all changes across all memos.",{file:M.string().describe("Path to the annotated markdown file"),memoId:M.string().optional().describe("Optional memo ID to filter by \u2014 if omitted, returns all changes")},async({file:i,memoId:a})=>o(async()=>{let c=s(i),u=a?c.impls.filter(f=>f.memoId===a):c.impls,l=q_(i),d=a?l.filter(f=>f.memoId===a):l;return{content:[{type:"text",text:JSON.stringify({impls:u,progress:d},null,2)}]}}))}function Y_(t,e){Q_(t,e),X_(t,e)}var ev=require("node:fs"),ao=require("node:path");function tv(t,e){let{safeRead:r,safeWrite:n,splitWithSidecar:o,mergeAndWrite:s,wrapTool:i,ensureDefaultGate:a,updateCursorFromMemos:c,applyUnifiedDiff:u}=e,l=m=>{if(typeof o=="function")return o(m);let v=r(m);return it(v,io(m))},d=(m,v)=>{if(typeof s=="function"){s(m,v);return}let k=ro(v);k.sidecar&&so(m,k.sidecar),n(m,k.markdown)},f=(m,v)=>{let k=$p(m);if(k.valid)return m;if(v==="preflight"){let T=P_(m);if(T!==null)return T;throw new Ss(`Preflight comment integrity check failed (auto-repair unsuccessful): ${k.errors.join("; ")}`,{phase:v,errors:k.errors})}throw new Ss(`Postflight comment integrity check failed: ${k.errors.join("; ")}`,{phase:v,errors:k.errors})},y=(m,v,k,T)=>{if(T<1)return{replaced:!1,output:m};let z=0,R=0;for(;;){let E=m.indexOf(v,z);if(E===-1)return{replaced:!1,output:m};if(R++,R===T)return{replaced:!0,output:`${m.slice(0,E)}${k}${m.slice(E+v.length)}`};z=E+v.length}},p=(m,v)=>{if(!v)return 0;let k=0,T=0;for(;;){let z=m.indexOf(v,T);if(z===-1)return k;k++,T=z+v.length}},g=(m,v)=>{let k=E=>/^#{1,6}\s+/.test(E),T=Math.max(0,Math.min(v,Math.max(m.length-1,0))),z=0;for(let E=T;E>=0;E--)if(k(m[E])){z=E;break}let R=m.length;for(let E=T+1;E<m.length;E++)if(k(m[E])){R=E;break}return{start:z,end:R}},h=(m,v,k,T,z,R,E)=>{if(R==="body"){let I=p(m,v);if(T)return{output:m.split(v).join(k),matchCount:I};let G=y(m,v,k,z??1);return G.replaced?{output:G.output,matchCount:I}:{output:m,matchCount:I}}let C=m.split(`
76
+ `),ye=wp(C,E),{start:ve,end:Ae}=g(C,ye>=0?ye:0),Ie=C.slice(ve,Ae).join(`
77
+ `),ne=p(Ie,v),xe=Ie;if(T)xe=Ie.split(v).join(k);else{let I=y(Ie,v,k,z??1);if(!I.replaced)return{output:m,matchCount:ne};xe=I.output}let x=xe.split(`
78
+ `);return C.splice(ve,Ae-ve,...x),{output:C.join(`
79
+ `),matchCount:ne}},_=(m,v,k,T,z)=>{let R=p(m,v);if(T)return{output:m.split(v).join(k),matchCount:R};let E=y(m,v,k,z??1);return E.replaced?{output:E.output,matchCount:R}:{output:m,matchCount:R}},$=(m,v,k,T,z)=>{let R=C=>{let ye=C.trim();return(0,ao.isAbsolute)(ye)?ye:(0,ao.resolve)((0,ao.dirname)(m),ye)};if(T&&T.trim().length>0)return R(T);let E=[...new Set(v.artifacts.filter(C=>C.memoId===k).flatMap(C=>C.files).map(R).filter(Boolean))];if(E.length===1)return E[0];throw E.length>1?new se(`${z} targetFile is ambiguous for memo ${k}; provide targetFile explicitly.`,{memoId:k,action:z,candidateFiles:E}):new se(`${z} requires targetFile. Link a single artifact via link_artifacts or provide targetFile explicitly.`,{memoId:k,action:z})},S=m=>{try{return r(m)}catch{return null}};t.tool("create_checkpoint","Create a review checkpoint in an annotated markdown file. Records current annotation counts and reviewed sections. [Phases: verification]",{file:M.string().describe("Path to the annotated markdown file"),note:M.string().describe('Checkpoint note (e.g., "Phase 1 review done")')},async({file:m,note:v})=>Qe(m,async()=>i(async()=>{gt(m,"create_checkpoint");let k=r(m),{checkpoint:T}=kp(k,v),z=l(m);return z.checkpoints.push(T),d(m,z),{content:[{type:"text",text:JSON.stringify({checkpoint:T},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. [Phases: scope, root_cause]",{file:M.string().describe("Path to the annotated markdown file"),anchorText:M.string().describe("The exact text in the document to annotate (must exist in the file)"),type:M.enum(["fix","question","highlight"]).describe("fix = needs change, question = needs clarification, highlight = mark for reference"),text:M.string().describe("The review feedback or note to attach"),occurrence:M.number().int().min(1).optional().describe("Which occurrence of anchorText to annotate (1-indexed, default 1). Use when the same text appears multiple times \u2014 e.g., occurrence=2 annotates the second match.")},async({file:m,anchorText:v,type:k,text:T,occurrence:z})=>Qe(m,async()=>i(async()=>{gt(m,"create_annotation");let R=l(m),E=R.body.split(`
80
+ `),C=-1;if(z){let ne=0;for(let xe=0;xe<E.length;xe++)if(E[xe].includes(v)&&(ne++,ne===z)){C=xe;break}if(C===-1){let xe=ne===0?{occurrenceRequested:z,matchCount:ne}:{occurrenceRequested:z,matchCount:ne};throw new ks(v,xe)}}else{let ne=[];for(let xe=0;xe<E.length;xe++)E[xe].includes(v)&&ne.push(xe);if(ne.length===0)throw new ks(v,{occurrenceRequested:null,matchCount:0});if(ne.length===1)C=ne[0];else{let xe=ne.find(x=>E[x].trim()===v.trim());if(xe!==void 0)C=xe;else{let x=ne[0],I=1/0;for(let G of ne){let Q=E[G].length-v.length;Q<I&&(I=Q,x=G)}C=x}}}let ye=Ut(E[C]),ve=C+1,Ae=k==="fix"?"red":k==="question"?"blue":"yellow",Ie={id:ht("memo"),type:k,status:"open",owner:"agent",source:"mcp",color:Ae,text:T,anchorText:v,anchor:`L${ve}:L${ve}|${ye}`,createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()};return R.memos.push(Ie),a(R),R.gates=Rt(R.gates,R.memos),c(R,Ie.id,`Created ${k}: "${T.slice(0,50)}"`),d(m,R),{content:[{type:"text",text:JSON.stringify({memo:Ie,gateStatus:R.gates[0]?.status,totalMemos:R.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. [Phases: root_cause, implementation]`,{file:M.string().describe("Path to the annotated markdown file"),memoId:M.string().describe("The memo ID to respond to"),response:M.string().describe("The response text (markdown supported)")},async({file:m,memoId:v,response:k})=>Qe(m,async()=>i(async()=>{gt(m,"respond_to_memo");let T=l(m),z=T.memos.find(E=>E.id===v);if(!z)throw new Vt(v,T.memos.map(E=>E.id));Pa("respond_to_memo",v,z.type);let R=T.responses.find(E=>E.to===v);if(R){let E=T.body.split(`
81
+ `),C=k.split(`
82
+ `),ye=R.bodyStartIdx,ve=R.bodyEndIdx,Ae=ve>=ye?ve-ye+1:0;E.splice(ye,Ae,...C),R.bodyEndIdx=ye+C.length-1;let Ie=C.length-Ae;if(Ie!==0)for(let ne of T.responses)ne!==R&&ne.bodyStartIdx>ye&&(ne.bodyStartIdx+=Ie,ne.bodyEndIdx+=Ie);T.body=E.join(`
83
+ `)}else{let E=T.body.split(`
84
+ `),C=wp(E,z),ye=C>=0?C:E.length-1,ve=k.split(`
85
+ `),Ae=ye+1;E.splice(Ae,0,...ve);for(let Ie of T.responses)Ie.bodyStartIdx>=Ae&&(Ie.bodyStartIdx+=ve.length,Ie.bodyEndIdx+=ve.length);T.body=E.join(`
86
+ `),T.responses.push({id:`resp_${v}`,to:v,bodyStartIdx:Ae,bodyEndIdx:Ae+ve.length-1})}return(z.status==="open"||z.status==="in_progress")&&(z.status="needs_review",z.updatedAt=new Date().toISOString()),T.gates.length>0&&(T.gates=Rt(T.gates,T.memos)),d(m,T),{content:[{type:"text",text:JSON.stringify({memoId:v,status:z.status,responseInserted:!0,totalResponses:T.responses.length},null,2)}]}}))),t.tool("update_memo_status","Update the status of a memo annotation. Agent-settable statuses: open, in_progress, needs_review. Human-only statuses (set via VS Code approval): answered, done, failed, wontfix. Writes the change back to the markdown file and returns the updated memo. [Phases: implementation, verification]",{file:M.string().describe("Path to the annotated markdown file"),memoId:M.string().describe("The memo ID to update"),status:M.enum(["open","in_progress","needs_review"]).describe("New status. Terminal statuses (answered, done, failed, wontfix) require human approval via VS Code."),owner:M.enum(["human","agent","tool"]).optional().describe("Optionally change the owner")},async({file:m,memoId:v,status:k,owner:T})=>Qe(m,async()=>i(async()=>{gt(m,"update_memo_status");let z=l(m),R=z.memos.find(E=>E.id===v);if(!R)throw new Vt(v,z.memos.map(E=>E.id));return R.status=k,T&&(R.owner=T),R.updatedAt=new Date().toISOString(),a(z),z.gates=Rt(z.gates,z.memos),c(z,v),d(m,z),{content:[{type:"text",text:JSON.stringify({memo:R,gatesUpdated:z.gates.length,cursor:z.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. [Phases: implementation, verification]',{file:M.string().describe("Path to the annotated markdown file"),taskId:M.string().describe("Current task ID (must be a valid memo ID from the document, e.g. memo_abc123)"),step:M.string().describe('Current step (e.g., "3/7" or "Phase 2")'),nextAction:M.string().describe("Description of the next action to take")},async({file:m,taskId:v,step:k,nextAction:T})=>Qe(m,async()=>i(async()=>{gt(m,"update_cursor");let z=l(m);if(z.memos.length>0&&!z.memos.some(R=>R.id===v))throw new se(`Task ID not found: "${v}". Valid IDs: ${z.memos.map(R=>R.id).join(", ")}`,{taskId:v,validTaskIds:z.memos.map(R=>R.id)});return z.cursor={taskId:v,step:k,nextAction:T,lastSeenHash:$a(z.body),updatedAt:new Date().toISOString()},d(m,z),{content:[{type:"text",text:JSON.stringify({cursor:z.cursor},null,2)}]}}))),t.tool("apply_memo","Apply an implementation action to a memo. Supports text_replace (markdown body), artifact_text_replace (linked source file), 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. [Phases: implementation]",{file:M.string().describe("Path to the annotated markdown file"),memoId:M.string().describe("The memo ID to apply implementation to"),action:M.enum(["text_replace","artifact_text_replace","file_patch","file_create"]).describe("Type of implementation action"),dryRun:M.boolean().optional().default(!1).describe("If true, return preview without writing"),oldText:M.string().optional().describe("For text_replace: the text to find and replace"),newText:M.string().optional().describe("For text_replace: the replacement text"),occurrence:M.number().int().min(1).optional().describe("For text_replace: which occurrence to replace (1-indexed, e.g., occurrence=2 replaces the second match). Required when oldText appears multiple times unless replaceAll=true"),replaceAll:M.boolean().optional().default(!1).describe("For text_replace: replace all occurrences instead of one"),scope:M.enum(["body","section"]).optional().default("body").describe('For text_replace: replacement scope. "body" searches the whole document; "section" limits to the heading section around the memo anchor (safer for targeted edits)'),targetFile:M.string().optional().describe("For artifact_text_replace/file_patch/file_create: target file path (optional when exactly one artifact is linked to the memo)"),patch:M.string().optional().describe("For file_patch: unified diff patch content"),content:M.string().optional().describe("For file_create: the file content to write")},async({file:m,memoId:v,action:k,dryRun:T,oldText:z,newText:R,occurrence:E,replaceAll:C,scope:ye,targetFile:ve,patch:Ae,content:Ie})=>Qe(m,async()=>i(async()=>{gt(m,"apply_memo");let ne=r(m),xe=f(ne,"preflight"),x=io(m),I=it(xe,x),G=I.memos.find(H=>H.id===v);if(!G)throw new Vt(v,I.memos.map(H=>H.id));Pa("apply_memo",v,G.type);let Q;if(k==="text_replace"){if(!z||R===void 0)throw new se("text_replace requires oldText and newText",{memoId:v,action:k});Q={type:"text_replace",file:"",before:z,after:R}}else if(k==="artifact_text_replace"){if(!z||R===void 0)throw new se("artifact_text_replace requires oldText and newText",{memoId:v,action:k});Q={type:"text_replace",file:$(m,I,v,ve,k),before:z,after:R}}else if(k==="file_patch"){let H=$(m,I,v,ve,k);if(!Ae)throw new se("file_patch requires patch",{memoId:v,action:k,targetFile:H});Q={type:"file_patch",file:H,patch:Ae}}else{let H=$(m,I,v,ve,k);if(Ie===void 0)throw new se("file_create requires content",{memoId:v,action:k,targetFile:H});Q={type:"file_create",file:H,content:Ie}}let F={id:ht("impl",{separator:"_"}),memoId:v,status:"applied",operations:[Q],summary:`${k} for ${v}`,appliedAt:new Date().toISOString()};if(T)return{content:[{type:"text",text:JSON.stringify({dryRun:!0,applied:!1,impl:F,operation:Q,memo:{id:G.id,status:G.status}},null,2)}]};if(oo(m,xe),k==="text_replace"){let H=ye??"body";if(H==="body"&&!I.body.includes(z))throw new se("oldText not found in document body",{memoId:v,action:k,scope:H});let me=h(I.body,z,R,C??!1,E,H,G);if(me.matchCount===0)throw new se(`oldText not found in ${H==="section"?"memo section":"document body"}`,{memoId:v,action:k,scope:H});if(!C&&me.matchCount>1&&E===void 0)throw new se("Ambiguous text_replace: oldText appears multiple times; set occurrence or replaceAll=true",{memoId:v,action:k,matchCount:me.matchCount,scope:H});I.body=me.output}else if(k==="artifact_text_replace"){let H=Q.file,me=S(H);if(me===null)throw new se(`Target file not found for artifact_text_replace: ${H}`,{memoId:v,action:k,targetFile:H});let N=_(me,z,R,C??!1,E);if(N.matchCount===0)throw new se("oldText not found in targetFile",{memoId:v,action:k,targetFile:H});if(!C&&N.matchCount>1&&E===void 0)throw new se("Ambiguous artifact_text_replace: oldText appears multiple times; set occurrence or replaceAll=true",{memoId:v,action:k,matchCount:N.matchCount,targetFile:H});oo(H,me),n(H,N.output)}else if(k==="file_patch"){let H=Q.file,me=S(H);if(me===null)throw new se(`Target file not found for file_patch: ${H}`,{memoId:v,action:k,targetFile:H});let N=u(me,Ae,H);oo(H,me),n(H,N)}else k==="file_create"&&n(Q.file,Ie);I.impls.push(F),G.status="needs_review",G.updatedAt=new Date().toISOString(),I.gates.length>0&&(I.gates=Rt(I.gates,I.memos)),c(I,v);let ce=ro(I);return f(ce.markdown,"postflight"),ce.sidecar&&so(m,ce.sidecar),n(m,ce.markdown),{content:[{type:"text",text:JSON.stringify({impl:F,memo:{id:G.id,status:G.status},gatesUpdated:I.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. [Phases: implementation, verification]",{file:M.string().describe("Path to the annotated markdown file"),memoId:M.string().describe("The memo ID to link artifacts to"),files:M.array(M.string()).describe("Array of relative file paths to link")},async({file:m,memoId:v,files:k})=>Qe(m,async()=>i(async()=>{gt(m,"link_artifacts");let T=l(m);if(!T.memos.find(E=>E.id===v))throw new Vt(v,T.memos.map(E=>E.id));let R={id:ht("art",{separator:"_"}),memoId:v,files:k,linkedAt:new Date().toISOString()};return T.artifacts.push(R),d(m,T),{content:[{type:"text",text:JSON.stringify({artifact:R},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. [Phases: implementation, verification]",{file:M.string().describe("Path to the annotated markdown file"),memoId:M.string().describe("The memo ID to update progress for"),status:M.enum(["in_progress","needs_review"]).describe("New progress status. Terminal statuses (done, failed) require human approval via VS Code."),message:M.string().describe("Progress message describing what was done or what failed")},async({file:m,memoId:v,status:k,message:T})=>Qe(m,async()=>i(async()=>{gt(m,"update_memo_progress");let z=l(m),R=z.memos.find(C=>C.id===v);if(!R)throw new Vt(v,z.memos.map(C=>C.id));R.status=k,R.updatedAt=new Date().toISOString();let E={memoId:v,status:k,message:T,timestamp:new Date().toISOString()};return await L_(m,E),z.gates.length>0&&(z.gates=Rt(z.gates,z.memos)),c(z,v),d(m,z),{content:[{type:"text",text:JSON.stringify({memo:{id:R.id,status:R.status},progressEntry:E,gatesUpdated:z.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. Note: file_patch and file_create operations are not automatically reversible \u2014 use snapshot files for those. [Phases: implementation]",{file:M.string().describe("Path to the annotated markdown file"),memoId:M.string().describe("The memo ID to rollback")},async({file:m,memoId:v})=>Qe(m,async()=>i(async()=>{gt(m,"rollback_memo"),Pp(m,"rollback_memo","Rollback is high-risk because it can revert prior implementation state.");let k=l(m),T=k.memos.find(E=>E.id===v);if(!T)throw new Vt(v,k.memos.map(E=>E.id));let z=k.impls.filter(E=>E.memoId===v&&E.status==="applied");if(z.length===0)throw new se(`No applied implementation found for memo: ${v}`,{memoId:v});let R=z[z.length-1];for(let E of R.operations)if(E.type==="text_replace"&&k.body.includes(E.after)){let C=y(k.body,E.after,E.before,1);C.replaced&&(k.body=C.output)}return R.status="reverted",T.status="open",T.updatedAt=new Date().toISOString(),k.gates.length>0&&(k.gates=Rt(k.gates,k.memos)),c(k,v),d(m,k),{content:[{type:"text",text:JSON.stringify({rolledBack:R.id,memo:{id:T.id,status:T.status},gatesUpdated:k.gates.length},null,2)}]}}))),t.tool("batch_apply","Apply multiple implementation operations in a single atomic transaction. Parses the document once, applies all operations sequentially, then writes once. If any operation fails, all changes are rolled back. Each operation follows the same format as apply_memo. [Phases: implementation]",{file:M.string().describe("Path to the annotated markdown file"),operations:M.array(M.object({memoId:M.string().describe("The memo ID to apply implementation to"),action:M.enum(["text_replace","artifact_text_replace","file_patch","file_create"]).describe("Type of implementation action"),oldText:M.string().optional().describe("For text_replace: the text to find and replace"),newText:M.string().optional().describe("For text_replace: the replacement text"),occurrence:M.number().int().min(1).optional().describe("For text_replace: which occurrence to replace (1-indexed, e.g., occurrence=2 replaces the second match). Required when oldText appears multiple times unless replaceAll=true"),replaceAll:M.boolean().optional().describe("For text_replace: replace all occurrences instead of one"),scope:M.enum(["body","section"]).optional().describe("For text_replace: replacement scope (body = whole document body, section = heading section around memo anchor)"),targetFile:M.string().optional().describe("For artifact_text_replace/file_patch/file_create: target file path (optional when exactly one artifact is linked to the memo)"),patch:M.string().optional().describe("For file_patch: unified diff patch content"),content:M.string().optional().describe("For file_create: the file content to write")})).describe("Array of operations to apply")},async({file:m,operations:v})=>Qe(m,async()=>i(async()=>{gt(m,"batch_apply"),Pp(m,"batch_apply","Batch apply is high-risk because it can modify multiple files in one transaction.");let k=r(m),T=f(k,"preflight"),z=io(m),R=it(T,z),E=[],C=new Map,ye=new Map,ve=[],Ae=[];for(let x=0;x<v.length;x++){let I=v[x],G=I.scope??"body";if(I.action==="text_replace"&&G==="body"&&I.oldText){let Q=R.body.indexOf(I.oldText);ve.push({idx:x,op:I,position:Q})}else Ae.push({idx:x,op:I})}ve.sort((x,I)=>I.position-x.position);let Ie=[...ve.map(x=>x.op),...Ae.map(x=>x.op)];for(let x of Ie){let I=R.memos.find(F=>F.id===x.memoId);if(!I)throw new Vt(x.memoId,R.memos.map(F=>F.id));Pa("batch_apply",x.memoId,I.type);let G;if(x.action==="text_replace"){if(!x.oldText||x.newText===void 0)throw new se(`Operation failed (${x.memoId}): text_replace requires oldText and newText`,{memoId:x.memoId,action:x.action});G={type:"text_replace",file:"",before:x.oldText,after:x.newText};let F=x.scope??"body";if(F==="body"&&!R.body.includes(x.oldText))throw new se(`Operation failed (${x.memoId}): oldText not found in body`,{memoId:x.memoId,action:x.action,scope:F});let ce=h(R.body,x.oldText,x.newText,x.replaceAll??!1,x.occurrence,F,I);if(ce.matchCount===0)throw new se(`Operation failed (${x.memoId}): oldText not found in ${F==="section"?"memo section":"body"}`,{memoId:x.memoId,action:x.action,scope:F});if(!x.replaceAll&&ce.matchCount>1&&x.occurrence===void 0)throw new se(`Operation failed (${x.memoId}): ambiguous text_replace; set occurrence or replaceAll=true`,{memoId:x.memoId,action:x.action,matchCount:ce.matchCount,scope:F});if(R.body=ce.output,x.replaceAll)for(let H of R.memos)H.anchorText&&H.anchorText.includes(x.oldText)&&(H.anchorText=H.anchorText.split(x.oldText).join(x.newText))}else if(x.action==="artifact_text_replace"){if(!x.oldText||x.newText===void 0)throw new se(`Operation failed (${x.memoId}): artifact_text_replace requires oldText and newText`,{memoId:x.memoId,action:x.action});let F=$(m,R,x.memoId,x.targetFile,x.action);G={type:"text_replace",file:F,before:x.oldText,after:x.newText};let ce=C.has(F)?C.get(F):S(F);if(ce===null)throw new se(`Operation failed (${x.memoId}): target file not found for artifact_text_replace (${F})`,{memoId:x.memoId,action:x.action,targetFile:F});let H=_(ce,x.oldText,x.newText,x.replaceAll??!1,x.occurrence);if(H.matchCount===0)throw new se(`Operation failed (${x.memoId}): oldText not found in targetFile`,{memoId:x.memoId,action:x.action,targetFile:F});if(!x.replaceAll&&H.matchCount>1&&x.occurrence===void 0)throw new se(`Operation failed (${x.memoId}): ambiguous artifact_text_replace; set occurrence or replaceAll=true`,{memoId:x.memoId,action:x.action,matchCount:H.matchCount,targetFile:F});C.set(F,H.output)}else if(x.action==="file_patch"){let F=$(m,R,x.memoId,x.targetFile,x.action);if(!x.patch)throw new se(`Operation failed (${x.memoId}): file_patch requires patch`,{memoId:x.memoId,action:x.action,targetFile:F});G={type:"file_patch",file:F,patch:x.patch};let ce=C.has(F)?C.get(F):S(F);if(ce===null)throw new se(`Operation failed (${x.memoId}): target file not found for file_patch (${F})`,{memoId:x.memoId,action:x.action,targetFile:F});let H=u(ce,x.patch,F);C.set(F,H)}else{let F=$(m,R,x.memoId,x.targetFile,x.action);if(x.content===void 0)throw new se(`Operation failed (${x.memoId}): file_create requires content`,{memoId:x.memoId,action:x.action,targetFile:F});if(S(F)!==null&&!C.has(F))throw new se(`Operation failed (${x.memoId}): file_create target already exists (${F})`,{memoId:x.memoId,action:x.action,targetFile:F});G={type:"file_create",file:F,content:x.content},C.set(F,x.content)}let Q={id:ht("impl",{separator:"_"}),memoId:x.memoId,status:"applied",operations:[G],summary:`${x.action} for ${x.memoId}`,appliedAt:new Date().toISOString()};R.impls.push(Q),I.status="needs_review",I.updatedAt=new Date().toISOString(),E.push({memoId:x.memoId,implId:Q.id,status:"applied"})}R.gates.length>0&&(R.gates=Rt(R.gates,R.memos)),c(R,v[0]?.memoId||"");let ne=ro(R);f(ne.markdown,"postflight"),ye.set(m,T);for(let x of C.keys()){let I=S(x);I!==null&&ye.set(x,I)}oo(m,T);for(let[x,I]of ye.entries())x!==m&&oo(x,I);let xe=[];try{ne.sidecar&&so(m,ne.sidecar);for(let[x,I]of C.entries())n(x,I),xe.push(x);n(m,ne.markdown),xe.push(m)}catch(x){let I=[];for(let G=xe.length-1;G>=0;G--){let Q=xe[G],F=ye.get(Q);if(F!==void 0)try{n(Q,F)}catch(ce){I.push(`${Q}: ${String(ce)}`)}else try{(0,ev.unlinkSync)(Q)}catch(ce){I.push(`${Q}: ${String(ce)}`)}}throw I.length>0?new se(`Batch apply failed and rollback had errors: ${I.join(" | ")}`,{rollbackErrors:I}):x}return F_(m,{type:"batch_apply",results:E,timestamp:new Date().toISOString()}),{content:[{type:"text",text:JSON.stringify({appliedCount:E.length,results:E,gatesUpdated:R.gates.length,cursor:R.cursor},null,2)}]}}))),t.tool("advance_workflow_phase","Advance workflow phase in strict sequence: scope -> root_cause -> implementation -> verification.",{file:M.string().describe("Path to the annotated markdown file"),toPhase:M.enum(["root_cause","implementation","verification"]).describe("Next phase to move to"),note:M.string().optional().describe("Optional transition note")},async({file:m,toPhase:v,note:k})=>Qe(m,async()=>i(async()=>{let T=K_(m,v,"advance_workflow_phase",k);return{content:[{type:"text",text:JSON.stringify({workflow:T},null,2)}]}}))),t.tool("set_memo_severity","Set severity override for a memo. Defaults remain: fix=blocking, question/highlight=non_blocking. [Phases: all]",{file:M.string().describe("Path to the annotated markdown file"),memoId:M.string().describe("Memo ID to classify"),severity:M.enum(["blocking","non_blocking"]).describe("Severity override")},async({file:m,memoId:v,severity:k})=>Qe(m,async()=>i(async()=>{gt(m,"set_memo_severity");let T=l(m);if(!T.memos.find(E=>E.id===v))throw new Vt(v,T.memos.map(E=>E.id));let R=G_(m,v,k);return{content:[{type:"text",text:JSON.stringify({memoId:v,severity:k,severityState:R},null,2)}]}}))),t.tool("request_approval_checkpoint","Create an approval checkpoint for a high-risk action before execution. [Phases: all]",{file:M.string().describe("Path to the annotated markdown file"),tool:M.string().describe("High-risk tool name (e.g., batch_apply, rollback_memo)"),reason:M.string().describe("Reason for approval request")},async({file:m,tool:v,reason:k})=>Qe(m,async()=>i(async()=>{gt(m,"request_approval_checkpoint");let T=Ep(m,v,k);return{content:[{type:"text",text:JSON.stringify({workflow:T},null,2)}]}}))),t.tool("approve_checkpoint","Approve a pending high-risk checkpoint. Grants one execution for the approved tool.",{file:M.string().describe("Path to the annotated markdown file"),tool:M.string().describe("Tool name being approved"),approvedBy:M.string().describe("Approver identity"),reason:M.string().describe("Approval rationale")},async({file:m,tool:v,approvedBy:k,reason:T})=>Qe(m,async()=>i(async()=>{gt(m,"approve_checkpoint");let z=J_(m,v,k,T);return{content:[{type:"text",text:JSON.stringify({workflow:z},null,2)}]}})))}var rv=require("node:child_process"),co=require("node:fs"),Na=require("node:path");function nv(t,e){t.tool("run_pipeline","Run the full L1->L5 agent pipeline for a GitHub issue. Spawns agent-run.mjs and returns NDJSON events for each stage (L1 Scout, L2 Execute, L3 Validate, L4 Integrate, L5 Review). [Phases: any]",{issue_number:M.number().int().positive().describe("GitHub issue number to process"),dry_run:M.boolean().optional().describe("If true, only show routing without executing")},async({issue_number:r,dry_run:n})=>{let s=[(0,Na.resolve)(e,"scripts/agent-run.mjs"),String(r),"--pipeline","--json"];n&&s.push("--dry-run");let i=10*60*1e3;return new Promise(a=>{let c=[],u=(0,rv.spawn)("node",s,{cwd:e,stdio:["pipe","pipe","pipe"]}),l=setTimeout(()=>{u.kill("SIGTERM"),c.push(JSON.stringify({stage:"error",message:"Pipeline timed out after 10 minutes"}))},i);u.stdout.on("data",d=>{let f=d.toString().split(`
87
+ `).filter(Boolean);c.push(...f)}),u.stderr.on("data",d=>{c.push(JSON.stringify({stage:"error",message:d.toString().trim()}))}),u.on("error",d=>{clearTimeout(l),a({content:[{type:"text",text:JSON.stringify({error:d.message})}]})}),u.on("close",d=>{clearTimeout(l),a({content:[{type:"text",text:JSON.stringify({exit_code:d,events:c.map(f=>{try{return JSON.parse(f)}catch{return{raw:f}}})},null,2)}]})})})}),t.tool("get_pipeline_status","Get the status and artifacts of the most recent pipeline run for a GitHub issue. Returns scout plan and validation results if available. [Phases: any]",{issue_number:M.number().int().positive().describe("GitHub issue number")},async({issue_number:r})=>{let n=(0,Na.resolve)(e,`.agent-pipeline/${r}/scout.md`),o=(0,Na.resolve)(e,`.agent-pipeline/${r}/validate.md`),s={issue:r};return(0,co.existsSync)(n)?(s.scout=(0,co.readFileSync)(n,"utf8").slice(0,2e3),s.l1="complete"):s.l1="not_run",(0,co.existsSync)(o)?(s.validation=(0,co.readFileSync)(o,"utf8").slice(0,1e3),s.l3="complete"):s.l3="not_run",{content:[{type:"text",text:JSON.stringify(s,null,2)}]}})}var uo=mo(require("node:path")),Es=require("node:fs"),fI=["**/.env",".env","**/.env.*",".env.*","**/credentials*","credentials*","**/secrets*","secrets*","**/*.pem","*.pem","**/*.key","*.key","**/*.p12","*.p12","**/node_modules/**","node_modules/**","**/.git/**",".git/**"];function iv(t){return{workspaceRoot:t||process.env.MD_FEEDBACK_WORKSPACE||process.cwd(),blocklist:[...fI],allowlist:[]}}function mI(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 ov(t,e){return t.some(r=>mI(r,e))}function sv(t,e){if(process.platform==="win32"){let r=t.toLowerCase(),n=e.toLowerCase();return r.startsWith(n+uo.default.sep.toLowerCase())||r===n}return t.startsWith(e+uo.default.sep)||t===e}function Ip(t,e){let r=uo.default.resolve(t.workspaceRoot,e),n=uo.default.resolve(t.workspaceRoot);if(!sv(r,n))return{safe:!1,reason:`Path "${e}" resolves outside workspace root`};if((0,Es.existsSync)(r))try{let s=(0,Es.realpathSync)(r),i=(0,Es.realpathSync)(n);if(!sv(s,i))return{safe:!1,reason:`Path "${e}" resolves outside workspace via symlink`}}catch{}let o=uo.default.relative(n,r).replace(/\\/g,"/");return ov(t.blocklist,o)?{safe:!1,reason:`Path "${e}" matches blocklist pattern`}:t.allowlist.length>0&&!ov(t.allowlist,o)?{safe:!1,reason:`Path "${e}" not in allowlist`}:{safe:!0}}var lo=require("node:fs"),po=require("node:path");function av(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 hI=new Set([".git","node_modules",".md-feedback","dist","build",".vscode",".idea","__pycache__",".next",".nuxt","coverage"]);function ja(t,e={}){let r=e.annotatedOnly??!1,n=e.maxFiles??500,o=(0,po.resolve)(t),s=[];function i(a){if(s.length>=n)return;let c=(0,lo.readdirSync)(a,{withFileTypes:!0});for(let u of c){if(s.length>=n)return;let l=(0,po.join)(a,u.name);if(u.isDirectory()){if(hI.has(u.name))continue;i(l);continue}if(!u.isFile()||!u.name.toLowerCase().endsWith(".md"))continue;let d=(0,po.relative)(o,l).replace(/\\/g,"/");if(!r){s.push(d);continue}try{let f=(0,lo.readFileSync)(l,"utf-8");(f.includes("<!-- USER_MEMO")||f.includes("<!-- HIGHLIGHT_MARK"))&&s.push(d)}catch{}}}try{(0,lo.statSync)(o).isDirectory()&&i(o)}catch{return[]}return s}function cv(t={}){let{workspace:e,log:r}=t,n=iv(e);function o(p){let g=Ip(n,p);if(!g.safe)throw new ws(g.reason,{file:p});return Oa(p)}function s(p,g){let h=Ip(n,p);if(!h.safe)throw new ws(h.reason,{file:p});D_(p,g)}function i(p){let g=o(p),h=io(p);return it(g,h)}function a(p,g){let h=ro(g);h.sidecar&&so(p,h.sidecar),s(p,h.markdown)}function c(p){return ja(n.workspaceRoot,p)}function u(p){return{content:[{type:"text",text:JSON.stringify(Sp(p))}],isError:!0}}async function l(p){try{return await p()}catch(g){if(r){let h=Sp(g);r(`tool error: ${JSON.stringify(h)}`)}return u(g)}}function d(p){p.gates.length===0&&p.memos.length>0&&p.gates.push({id:ht("gate"),type:"merge",status:"blocked",blockedBy:[],canProceedIf:"",doneDefinition:"All review annotations resolved"})}function f(p,g,h){let _=p.memos.filter(m=>Ft(m.status)).length,$=p.memos.filter(m=>m.status!=="open").length,S=p.memos.filter(m=>!Ft(m.status));p.cursor={taskId:g,step:`${$} applied, ${_}/${p.memos.length} resolved`,nextAction:h??(S.length===0?"All annotations resolved \u2014 review complete":`Resolve: ${S.map(m=>m.id).slice(0,3).join(", ")}${S.length>3?"...":""}`),lastSeenHash:$a(p.body),updatedAt:new Date().toISOString()}}function y(p,g,h){let _=p.split(`
88
+ `),$=g.split(`
89
+ `),S=[],m=0,v=0,k=!1;for(;v<$.length;){let z=$[v].match(/^@@ -(\d+)(?:,(\d+))? \+(\d+)(?:,(\d+))? @@/);if(!z){v++;continue}k=!0;let E=Number(z[1])-1;if(E<m||E>_.length)throw new Nr(`Invalid patch hunk range for ${h}`,{file:h});for(S.push(..._.slice(m,E)),m=E,v++;v<$.length&&!$[v].startsWith("@@ ");){let C=$[v];if(C.startsWith("\")){v++;continue}let ye=C[0],ve=C.slice(1);if(ye===" "){if(m>=_.length||_[m]!==ve)throw new Nr(`Patch context mismatch in ${h}`,{file:h});S.push(ve),m++}else if(ye==="-"){if(m>=_.length||_[m]!==ve)throw new Nr(`Patch delete mismatch in ${h}`,{file:h});m++}else if(ye==="+")S.push(ve);else throw new Nr(`Unsupported patch line in ${h}: "${C}"`,{file:h});v++}}if(!k)throw new Nr(`Invalid unified diff for ${h}: no hunks found`,{file:h});return S.push(..._.slice(m)),S.join(`
90
+ `)}return{safeRead:o,safeWrite:s,splitWithSidecar:i,mergeAndWrite:a,listDocuments:c,wrapTool:l,ensureDefaultGate:d,updateCursorFromMemos:f,applyUnifiedDiff:y}}function uv(t,e,r){let n=cv({workspace:e,log:r});Y_(t,n),tv(t,{safeRead:n.safeRead,safeWrite:n.safeWrite,wrapTool:n.wrapTool,ensureDefaultGate:n.ensureDefaultGate,updateCursorFromMemos:n.updateCursorFromMemos,applyUnifiedDiff:n.applyUnifiedDiff}),nv(t,e||process.cwd())}function Ps(t){process.stderr.write(`[md-feedback] ${t}
91
+ `)}function gI(){return av(process.argv,process.env)}var lv=gI(),dv=new ya({name:"md-feedback",version:"1.5.4",description:"Annotation-based review workflow for markdown documents. Create, apply, and track review memos through a structured plan-first lifecycle."});uv(dv,lv,Ps);async function yI(){let t=new va;await dv.connect(t);let e=lv||process.cwd();ja(e,{annotatedOnly:!1,maxFiles:200}).length===0&&Ps(`warning: no markdown files found in workspace=${e}. create/open a .md file to use annotation tools.`),Ps(`v1.5.4 ready (stdio) workspace=${e}`)}yI().catch(t=>{Ps(`fatal: ${t}`),process.exit(1)});0&&(module.exports={log});