keepmind 1.3.1 → 1.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.codex-plugin/plugin.json +1 -1
- package/dist/npx-cli/index.js +118 -118
- package/dist/opencode-plugin/index.js +1 -1
- package/package.json +1 -1
- package/plugin/.claude-plugin/plugin.json +1 -1
- package/plugin/.codex-plugin/plugin.json +1 -1
- package/plugin/hooks/hooks.json +0 -12
- package/plugin/package.json +1 -1
- package/plugin/scripts/context-generator.cjs +47 -47
- package/plugin/scripts/hook-client.cjs +28 -26
- package/plugin/scripts/mcp-server.cjs +14 -14
- package/plugin/scripts/transcript-watcher.cjs +1 -1
- package/plugin/scripts/worker-service.cjs +246 -244
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
"use strict";var dy=Object.create;var Ys=Object.defineProperty;var py=Object.getOwnPropertyDescriptor;var fy=Object.getOwnPropertyNames;var my=Object.getPrototypeOf,hy=Object.prototype.hasOwnProperty;var w=(t,e)=>()=>{try{return e||t((e={exports:{}}).exports,e),e.exports}catch(r){throw e=0,r}},Lu=(t,e)=>{for(var r in e)Ys(t,r,{get:e[r],enumerable:!0})},gy=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of fy(e))!hy.call(t,o)&&o!==r&&Ys(t,o,{get:()=>e[o],enumerable:!(n=py(e,o))||n.enumerable});return t};var Ft=(t,e,r)=>(r=t!=null?dy(my(t)):{},gy(e||!t||!t.__esModule?Ys(r,"default",{value:t,enumerable:!0}):r,t));var vn=w(F=>{"use strict";Object.defineProperty(F,"__esModule",{value:!0});F.regexpCode=F.getEsmExportName=F.getProperty=F.safeStringify=F.stringify=F.strConcat=F.addCodeArg=F.str=F._=F.nil=F._Code=F.Name=F.IDENTIFIER=F._CodeOrName=void 0;var yn=class{};F._CodeOrName=yn;F.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Vt=class extends yn{constructor(e){if(super(),!F.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}}};F.Name=Vt;var He=class extends yn{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 Vt&&(r[n.str]=(r[n.str]||0)+1),r),{})}};F._Code=He;F.nil=new He("");function sm(t,...e){let r=[t[0]],n=0;for(;n<e.length;)_a(r,e[n]),r.push(t[++n]);return new He(r)}F._=sm;var ga=new He("+");function im(t,...e){let r=[Sn(t[0])],n=0;for(;n<e.length;)r.push(ga),_a(r,e[n]),r.push(ga,Sn(t[++n]));return Bb(r),new He(r)}F.str=im;function _a(t,e){e instanceof He?t.push(...e._items):e instanceof Vt?t.push(e):t.push(Qb(e))}F.addCodeArg=_a;function Bb(t){let e=1;for(;e<t.length-1;){if(t[e]===ga){let r=Yb(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function Yb(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Vt||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 Vt))return`"${t}${e.slice(1)}`}function Xb(t,e){return e.emptyStr()?t:t.emptyStr()?e:im`${t}${e}`}F.strConcat=Xb;function Qb(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Sn(Array.isArray(t)?t.join(","):t)}function eE(t){return new He(Sn(t))}F.stringify=eE;function Sn(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}F.safeStringify=Sn;function tE(t){return typeof t=="string"&&F.IDENTIFIER.test(t)?new He(`.${t}`):sm`[${t}]`}F.getProperty=tE;function rE(t){if(typeof t=="string"&&F.IDENTIFIER.test(t))return new He(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}F.getEsmExportName=rE;function nE(t){return new He(t.toString())}F.regexpCode=nE});var va=w(Me=>{"use strict";Object.defineProperty(Me,"__esModule",{value:!0});Me.ValueScope=Me.ValueScopeName=Me.Scope=Me.varKinds=Me.UsedValueState=void 0;var Ae=vn(),ya=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},Go;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(Go||(Me.UsedValueState=Go={}));Me.varKinds={const:new Ae.Name("const"),let:new Ae.Name("let"),var:new Ae.Name("var")};var Ko=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Ae.Name?e:this.name(e)}name(e){return new Ae.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}}};Me.Scope=Ko;var Jo=class extends Ae.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Ae._)`.${new Ae.Name(r)}[${n}]`}};Me.ValueScopeName=Jo;var oE=(0,Ae._)`\n`,Sa=class extends Ko{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?oE:Ae.nil}}get(){return this._scope}name(e){return new Jo(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,Ae._)`${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=Ae.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,Go.Started);let l=r(u);if(l){let d=this.opts.es5?Me.varKinds.var:Me.varKinds.const;s=(0,Ae._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,Ae._)`${s}${l}${this.opts._n}`;else throw new ya(u);c.set(u,Go.Completed)})}return s}};Me.ValueScope=Sa});var A=w(M=>{"use strict";Object.defineProperty(M,"__esModule",{value:!0});M.or=M.and=M.not=M.CodeGen=M.operators=M.varKinds=M.ValueScopeName=M.ValueScope=M.Scope=M.Name=M.regexpCode=M.stringify=M.getProperty=M.nil=M.strConcat=M.str=M._=void 0;var L=vn(),Xe=va(),Ot=vn();Object.defineProperty(M,"_",{enumerable:!0,get:function(){return Ot._}});Object.defineProperty(M,"str",{enumerable:!0,get:function(){return Ot.str}});Object.defineProperty(M,"strConcat",{enumerable:!0,get:function(){return Ot.strConcat}});Object.defineProperty(M,"nil",{enumerable:!0,get:function(){return Ot.nil}});Object.defineProperty(M,"getProperty",{enumerable:!0,get:function(){return Ot.getProperty}});Object.defineProperty(M,"stringify",{enumerable:!0,get:function(){return Ot.stringify}});Object.defineProperty(M,"regexpCode",{enumerable:!0,get:function(){return Ot.regexpCode}});Object.defineProperty(M,"Name",{enumerable:!0,get:function(){return Ot.Name}});var Qo=va();Object.defineProperty(M,"Scope",{enumerable:!0,get:function(){return Qo.Scope}});Object.defineProperty(M,"ValueScope",{enumerable:!0,get:function(){return Qo.ValueScope}});Object.defineProperty(M,"ValueScopeName",{enumerable:!0,get:function(){return Qo.ValueScopeName}});Object.defineProperty(M,"varKinds",{enumerable:!0,get:function(){return Qo.varKinds}});M.operators={GT:new L._Code(">"),GTE:new L._Code(">="),LT:new L._Code("<"),LTE:new L._Code("<="),EQ:new L._Code("==="),NEQ:new L._Code("!=="),NOT:new L._Code("!"),OR:new L._Code("||"),AND:new L._Code("&&"),ADD:new L._Code("+")};var yt=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},ba=class extends yt{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Xe.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=vr(this.rhs,e,r)),this}get names(){return this.rhs instanceof L._CodeOrName?this.rhs.names:{}}},Bo=class extends yt{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 L.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=vr(this.rhs,e,r),this}get names(){let e=this.lhs instanceof L.Name?{}:{...this.lhs.names};return Xo(e,this.rhs)}},Ea=class extends Bo{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},wa=class extends yt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},ka=class extends yt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},xa=class extends yt{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},$a=class extends yt{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=vr(this.code,e,r),this}get names(){return this.code instanceof L._CodeOrName?this.code.names:{}}},bn=class extends yt{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)||(sE(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Jt(e,r.names),{})}},St=class extends bn{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Pa=class extends bn{},Sr=class extends St{};Sr.kind="else";var Gt=class t extends St{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 Sr(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(am(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=vr(this.condition,e,r),this}get names(){let e=super.names;return Xo(e,this.condition),this.else&&Jt(e,this.else.names),e}};Gt.kind="if";var Kt=class extends St{};Kt.kind="for";var Ta=class extends Kt{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=vr(this.iteration,e,r),this}get names(){return Jt(super.names,this.iteration.names)}},za=class extends Kt{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?Xe.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=Xo(super.names,this.from);return Xo(e,this.to)}},Yo=class extends Kt{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=vr(this.iterable,e,r),this}get names(){return Jt(super.names,this.iterable.names)}},En=class extends St{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)}};En.kind="func";var wn=class extends bn{render(e){return"return "+super.render(e)}};wn.kind="return";var Ra=class extends St{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&&Jt(e,this.catch.names),this.finally&&Jt(e,this.finally.names),e}},kn=class extends St{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};kn.kind="catch";var xn=class extends St{render(e){return"finally"+super.render(e)}};xn.kind="finally";var Ia=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
3
|
-
`:""},this._extScope=e,this._scope=new Xe.Scope({parent:e}),this._nodes=[new Pa]}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 ba(e,s,n)),s}const(e,r,n){return this._def(Xe.varKinds.const,e,r,n)}let(e,r,n){return this._def(Xe.varKinds.let,e,r,n)}var(e,r,n){return this._def(Xe.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new Bo(e,r,n))}add(e,r){return this._leafNode(new Ea(e,M.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==L.nil&&this._leafNode(new $a(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,L.addCodeArg)(r,o));return r.push("}"),new L._Code(r)}if(e,r,n){if(this._blockNode(new Gt(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 Gt(e))}else(){return this._elseNode(new Sr)}endIf(){return this._endBlockNode(Gt,Sr)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new Ta(e),r)}forRange(e,r,n,o,s=this.opts.es5?Xe.varKinds.var:Xe.varKinds.let){let i=this._scope.toName(e);return this._for(new za(s,i,r,n),()=>o(i))}forOf(e,r,n,o=Xe.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof L.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,L._)`${i}.length`,a=>{this.var(s,(0,L._)`${i}[${a}]`),n(s)})}return this._for(new Yo("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?Xe.varKinds.var:Xe.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,L._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new Yo("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(Kt)}label(e){return this._leafNode(new wa(e))}break(e){return this._leafNode(new ka(e))}return(e){let r=new wn;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(wn)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new Ra;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new kn(s),r(s)}return n&&(this._currNode=o.finally=new xn,this.code(n)),this._endBlockNode(kn,xn)}throw(e){return this._leafNode(new xa(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=L.nil,n,o){return this._blockNode(new En(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(En)}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 Gt))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}};M.CodeGen=Ia;function Jt(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Xo(t,e){return e instanceof L._CodeOrName?Jt(t,e.names):t}function vr(t,e,r){if(t instanceof L.Name)return n(t);if(!o(t))return t;return new L._Code(t._items.reduce((s,i)=>(i instanceof L.Name&&(i=n(i)),i instanceof L._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 L._Code&&s._items.some(i=>i instanceof L.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function sE(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function am(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,L._)`!${Oa(t)}`}M.not=am;var iE=cm(M.operators.AND);function aE(...t){return t.reduce(iE)}M.and=aE;var cE=cm(M.operators.OR);function uE(...t){return t.reduce(cE)}M.or=uE;function cm(t){return(e,r)=>e===L.nil?r:r===L.nil?e:(0,L._)`${Oa(e)} ${t} ${Oa(r)}`}function Oa(t){return t instanceof L.Name?t:(0,L._)`(${t})`}});var q=w(C=>{"use strict";Object.defineProperty(C,"__esModule",{value:!0});C.checkStrictMode=C.getErrorPath=C.Type=C.useFunc=C.setEvaluated=C.evaluatedPropsToName=C.mergeEvaluated=C.eachItem=C.unescapeJsonPointer=C.escapeJsonPointer=C.escapeFragment=C.unescapeFragment=C.schemaRefOrVal=C.schemaHasRulesButRef=C.schemaHasRules=C.checkUnknownRules=C.alwaysValidSchema=C.toHash=void 0;var K=A(),lE=vn();function dE(t){let e={};for(let r of t)e[r]=!0;return e}C.toHash=dE;function pE(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(dm(t,e),!pm(e,t.self.RULES.all))}C.alwaysValidSchema=pE;function dm(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]||hm(t,`unknown keyword: "${s}"`)}C.checkUnknownRules=dm;function pm(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}C.schemaHasRules=pm;function fE(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}C.schemaHasRulesButRef=fE;function mE({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,K._)`${r}`}return(0,K._)`${t}${e}${(0,K.getProperty)(n)}`}C.schemaRefOrVal=mE;function hE(t){return fm(decodeURIComponent(t))}C.unescapeFragment=hE;function gE(t){return encodeURIComponent(Ma(t))}C.escapeFragment=gE;function Ma(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}C.escapeJsonPointer=Ma;function fm(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}C.unescapeJsonPointer=fm;function _E(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}C.eachItem=_E;function um({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof K.Name?(s instanceof K.Name?t(o,s,i):e(o,s,i),i):s instanceof K.Name?(e(o,i,s),s):r(s,i);return a===K.Name&&!(c instanceof K.Name)?n(o,c):c}}C.mergeEvaluated={props:um({mergeNames:(t,e,r)=>t.if((0,K._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,K._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,K._)`${r} || {}`).code((0,K._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,K._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,K._)`${r} || {}`),Ca(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:mm}),items:um({mergeNames:(t,e,r)=>t.if((0,K._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,K._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,K._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,K._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function mm(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,K._)`{}`);return e!==void 0&&Ca(t,r,e),r}C.evaluatedPropsToName=mm;function Ca(t,e,r){Object.keys(r).forEach(n=>t.assign((0,K._)`${e}${(0,K.getProperty)(n)}`,!0))}C.setEvaluated=Ca;var lm={};function yE(t,e){return t.scopeValue("func",{ref:e,code:lm[e.code]||(lm[e.code]=new lE._Code(e.code))})}C.useFunc=yE;var Aa;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Aa||(C.Type=Aa={}));function SE(t,e,r){if(t instanceof K.Name){let n=e===Aa.Num;return r?n?(0,K._)`"[" + ${t} + "]"`:(0,K._)`"['" + ${t} + "']"`:n?(0,K._)`"/" + ${t}`:(0,K._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,K.getProperty)(t).toString():"/"+Ma(t)}C.getErrorPath=SE;function hm(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}C.checkStrictMode=hm});var vt=w(Na=>{"use strict";Object.defineProperty(Na,"__esModule",{value:!0});var be=A(),vE={data:new be.Name("data"),valCxt:new be.Name("valCxt"),instancePath:new be.Name("instancePath"),parentData:new be.Name("parentData"),parentDataProperty:new be.Name("parentDataProperty"),rootData:new be.Name("rootData"),dynamicAnchors:new be.Name("dynamicAnchors"),vErrors:new be.Name("vErrors"),errors:new be.Name("errors"),this:new be.Name("this"),self:new be.Name("self"),scope:new be.Name("scope"),json:new be.Name("json"),jsonPos:new be.Name("jsonPos"),jsonLen:new be.Name("jsonLen"),jsonPart:new be.Name("jsonPart")};Na.default=vE});var $n=w(Ee=>{"use strict";Object.defineProperty(Ee,"__esModule",{value:!0});Ee.extendErrors=Ee.resetErrorsCount=Ee.reportExtraError=Ee.reportError=Ee.keyword$DataError=Ee.keywordError=void 0;var Z=A(),es=q(),ze=vt();Ee.keywordError={message:({keyword:t})=>(0,Z.str)`must pass "${t}" keyword validation`};Ee.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Z.str)`"${t}" keyword must be ${e} ($data)`:(0,Z.str)`"${t}" keyword is invalid ($data)`};function bE(t,e=Ee.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=ym(t,e,r);n??(i||a)?gm(s,c):_m(o,(0,Z._)`[${c}]`)}Ee.reportError=bE;function EE(t,e=Ee.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=ym(t,e,r);gm(o,a),s||i||_m(n,ze.default.vErrors)}Ee.reportExtraError=EE;function wE(t,e){t.assign(ze.default.errors,e),t.if((0,Z._)`${ze.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Z._)`${ze.default.vErrors}.length`,e),()=>t.assign(ze.default.vErrors,null)))}Ee.resetErrorsCount=wE;function kE({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,ze.default.errors,a=>{t.const(i,(0,Z._)`${ze.default.vErrors}[${a}]`),t.if((0,Z._)`${i}.instancePath === undefined`,()=>t.assign((0,Z._)`${i}.instancePath`,(0,Z.strConcat)(ze.default.instancePath,s.errorPath))),t.assign((0,Z._)`${i}.schemaPath`,(0,Z.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,Z._)`${i}.schema`,r),t.assign((0,Z._)`${i}.data`,n))})}Ee.extendErrors=kE;function gm(t,e){let r=t.const("err",e);t.if((0,Z._)`${ze.default.vErrors} === null`,()=>t.assign(ze.default.vErrors,(0,Z._)`[${r}]`),(0,Z._)`${ze.default.vErrors}.push(${r})`),t.code((0,Z._)`${ze.default.errors}++`)}function _m(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,Z._)`new ${t.ValidationError}(${e})`):(r.assign((0,Z._)`${n}.errors`,e),r.return(!1))}var Bt={keyword:new Z.Name("keyword"),schemaPath:new Z.Name("schemaPath"),params:new Z.Name("params"),propertyName:new Z.Name("propertyName"),message:new Z.Name("message"),schema:new Z.Name("schema"),parentSchema:new Z.Name("parentSchema")};function ym(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Z._)`{}`:xE(t,e,r)}function xE(t,e,r={}){let{gen:n,it:o}=t,s=[$E(o,r),PE(t,r)];return TE(t,e,s),n.object(...s)}function $E({errorPath:t},{instancePath:e}){let r=e?(0,Z.str)`${t}${(0,es.getErrorPath)(e,es.Type.Str)}`:t;return[ze.default.instancePath,(0,Z.strConcat)(ze.default.instancePath,r)]}function PE({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,Z.str)`${e}/${t}`;return r&&(o=(0,Z.str)`${o}${(0,es.getErrorPath)(r,es.Type.Str)}`),[Bt.schemaPath,o]}function TE(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([Bt.keyword,o],[Bt.params,typeof e=="function"?e(t):e||(0,Z._)`{}`]),c.messages&&n.push([Bt.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Bt.schema,i],[Bt.parentSchema,(0,Z._)`${l}${d}`],[ze.default.data,s]),u&&n.push([Bt.propertyName,u])}});var vm=w(br=>{"use strict";Object.defineProperty(br,"__esModule",{value:!0});br.boolOrEmptySchema=br.topBoolOrEmptySchema=void 0;var zE=$n(),RE=A(),IE=vt(),OE={message:"boolean schema is false"};function AE(t){let{gen:e,schema:r,validateName:n}=t;r===!1?Sm(t,!1):typeof r=="object"&&r.$async===!0?e.return(IE.default.data):(e.assign((0,RE._)`${n}.errors`,null),e.return(!0))}br.topBoolOrEmptySchema=AE;function ME(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),Sm(t)):r.var(e,!0)}br.boolOrEmptySchema=ME;function Sm(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,zE.reportError)(o,OE,void 0,e)}});var Da=w(Er=>{"use strict";Object.defineProperty(Er,"__esModule",{value:!0});Er.getRules=Er.isJSONType=void 0;var CE=["string","number","integer","boolean","null","object","array"],NE=new Set(CE);function DE(t){return typeof t=="string"&&NE.has(t)}Er.isJSONType=DE;function jE(){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:{}}}Er.getRules=jE});var ja=w(At=>{"use strict";Object.defineProperty(At,"__esModule",{value:!0});At.shouldUseRule=At.shouldUseGroup=At.schemaHasRulesForType=void 0;function LE({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&bm(t,n)}At.schemaHasRulesForType=LE;function bm(t,e){return e.rules.some(r=>Em(t,r))}At.shouldUseGroup=bm;function Em(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))}At.shouldUseRule=Em});var Pn=w(we=>{"use strict";Object.defineProperty(we,"__esModule",{value:!0});we.reportTypeError=we.checkDataTypes=we.checkDataType=we.coerceAndCheckDataType=we.getJSONTypes=we.getSchemaTypes=we.DataType=void 0;var UE=Da(),qE=ja(),ZE=$n(),O=A(),wm=q(),wr;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(wr||(we.DataType=wr={}));function FE(t){let e=km(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}we.getSchemaTypes=FE;function km(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(UE.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}we.getJSONTypes=km;function HE(t,e){let{gen:r,data:n,opts:o}=t,s=WE(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,qE.schemaHasRulesForType)(t,e[0]));if(i){let a=Ua(e,n,o.strictNumbers,wr.Wrong);r.if(a,()=>{s.length?VE(t,e,s):qa(t)})}return i}we.coerceAndCheckDataType=HE;var xm=new Set(["string","number","integer","boolean","null"]);function WE(t,e){return e?t.filter(r=>xm.has(r)||e==="array"&&r==="array"):[]}function VE(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,O._)`typeof ${o}`),a=n.let("coerced",(0,O._)`undefined`);s.coerceTypes==="array"&&n.if((0,O._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,O._)`${o}[0]`).assign(i,(0,O._)`typeof ${o}`).if(Ua(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,O._)`${a} !== undefined`);for(let u of r)(xm.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),qa(t),n.endIf(),n.if((0,O._)`${a} !== undefined`,()=>{n.assign(o,a),GE(t,a)});function c(u){switch(u){case"string":n.elseIf((0,O._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,O._)`"" + ${o}`).elseIf((0,O._)`${o} === null`).assign(a,(0,O._)`""`);return;case"number":n.elseIf((0,O._)`${i} == "boolean" || ${o} === null
|
|
3
|
+
`:""},this._extScope=e,this._scope=new Xe.Scope({parent:e}),this._nodes=[new Pa]}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 ba(e,s,n)),s}const(e,r,n){return this._def(Xe.varKinds.const,e,r,n)}let(e,r,n){return this._def(Xe.varKinds.let,e,r,n)}var(e,r,n){return this._def(Xe.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new Bo(e,r,n))}add(e,r){return this._leafNode(new Ea(e,M.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==L.nil&&this._leafNode(new $a(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,L.addCodeArg)(r,o));return r.push("}"),new L._Code(r)}if(e,r,n){if(this._blockNode(new Gt(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 Gt(e))}else(){return this._elseNode(new Sr)}endIf(){return this._endBlockNode(Gt,Sr)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new Ta(e),r)}forRange(e,r,n,o,s=this.opts.es5?Xe.varKinds.var:Xe.varKinds.let){let i=this._scope.toName(e);return this._for(new za(s,i,r,n),()=>o(i))}forOf(e,r,n,o=Xe.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof L.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,L._)`${i}.length`,a=>{this.var(s,(0,L._)`${i}[${a}]`),n(s)})}return this._for(new Yo("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?Xe.varKinds.var:Xe.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,L._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new Yo("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(Kt)}label(e){return this._leafNode(new wa(e))}break(e){return this._leafNode(new ka(e))}return(e){let r=new wn;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(wn)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new Ra;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new kn(s),r(s)}return n&&(this._currNode=o.finally=new xn,this.code(n)),this._endBlockNode(kn,xn)}throw(e){return this._leafNode(new xa(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=L.nil,n,o){return this._blockNode(new En(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(En)}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 Gt))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}};M.CodeGen=Ia;function Jt(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Xo(t,e){return e instanceof L._CodeOrName?Jt(t,e.names):t}function vr(t,e,r){if(t instanceof L.Name)return n(t);if(!o(t))return t;return new L._Code(t._items.reduce((s,i)=>(i instanceof L.Name&&(i=n(i)),i instanceof L._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 L._Code&&s._items.some(i=>i instanceof L.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function sE(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function am(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,L._)`!${Oa(t)}`}M.not=am;var iE=cm(M.operators.AND);function aE(...t){return t.reduce(iE)}M.and=aE;var cE=cm(M.operators.OR);function uE(...t){return t.reduce(cE)}M.or=uE;function cm(t){return(e,r)=>e===L.nil?r:r===L.nil?e:(0,L._)`${Oa(e)} ${t} ${Oa(r)}`}function Oa(t){return t instanceof L.Name?t:(0,L._)`(${t})`}});var q=w(C=>{"use strict";Object.defineProperty(C,"__esModule",{value:!0});C.checkStrictMode=C.getErrorPath=C.Type=C.useFunc=C.setEvaluated=C.evaluatedPropsToName=C.mergeEvaluated=C.eachItem=C.unescapeJsonPointer=C.escapeJsonPointer=C.escapeFragment=C.unescapeFragment=C.schemaRefOrVal=C.schemaHasRulesButRef=C.schemaHasRules=C.checkUnknownRules=C.alwaysValidSchema=C.toHash=void 0;var K=A(),lE=vn();function dE(t){let e={};for(let r of t)e[r]=!0;return e}C.toHash=dE;function pE(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(dm(t,e),!pm(e,t.self.RULES.all))}C.alwaysValidSchema=pE;function dm(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]||hm(t,`unknown keyword: "${s}"`)}C.checkUnknownRules=dm;function pm(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}C.schemaHasRules=pm;function fE(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}C.schemaHasRulesButRef=fE;function mE({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,K._)`${r}`}return(0,K._)`${t}${e}${(0,K.getProperty)(n)}`}C.schemaRefOrVal=mE;function hE(t){return fm(decodeURIComponent(t))}C.unescapeFragment=hE;function gE(t){return encodeURIComponent(Ma(t))}C.escapeFragment=gE;function Ma(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}C.escapeJsonPointer=Ma;function fm(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}C.unescapeJsonPointer=fm;function _E(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}C.eachItem=_E;function um({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof K.Name?(s instanceof K.Name?t(o,s,i):e(o,s,i),i):s instanceof K.Name?(e(o,i,s),s):r(s,i);return a===K.Name&&!(c instanceof K.Name)?n(o,c):c}}C.mergeEvaluated={props:um({mergeNames:(t,e,r)=>t.if((0,K._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,K._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,K._)`${r} || {}`).code((0,K._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,K._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,K._)`${r} || {}`),Ca(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:mm}),items:um({mergeNames:(t,e,r)=>t.if((0,K._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,K._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,K._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,K._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function mm(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,K._)`{}`);return e!==void 0&&Ca(t,r,e),r}C.evaluatedPropsToName=mm;function Ca(t,e,r){Object.keys(r).forEach(n=>t.assign((0,K._)`${e}${(0,K.getProperty)(n)}`,!0))}C.setEvaluated=Ca;var lm={};function yE(t,e){return t.scopeValue("func",{ref:e,code:lm[e.code]||(lm[e.code]=new lE._Code(e.code))})}C.useFunc=yE;var Aa;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Aa||(C.Type=Aa={}));function SE(t,e,r){if(t instanceof K.Name){let n=e===Aa.Num;return r?n?(0,K._)`"[" + ${t} + "]"`:(0,K._)`"['" + ${t} + "']"`:n?(0,K._)`"/" + ${t}`:(0,K._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,K.getProperty)(t).toString():"/"+Ma(t)}C.getErrorPath=SE;function hm(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}C.checkStrictMode=hm});var vt=w(Da=>{"use strict";Object.defineProperty(Da,"__esModule",{value:!0});var be=A(),vE={data:new be.Name("data"),valCxt:new be.Name("valCxt"),instancePath:new be.Name("instancePath"),parentData:new be.Name("parentData"),parentDataProperty:new be.Name("parentDataProperty"),rootData:new be.Name("rootData"),dynamicAnchors:new be.Name("dynamicAnchors"),vErrors:new be.Name("vErrors"),errors:new be.Name("errors"),this:new be.Name("this"),self:new be.Name("self"),scope:new be.Name("scope"),json:new be.Name("json"),jsonPos:new be.Name("jsonPos"),jsonLen:new be.Name("jsonLen"),jsonPart:new be.Name("jsonPart")};Da.default=vE});var $n=w(Ee=>{"use strict";Object.defineProperty(Ee,"__esModule",{value:!0});Ee.extendErrors=Ee.resetErrorsCount=Ee.reportExtraError=Ee.reportError=Ee.keyword$DataError=Ee.keywordError=void 0;var Z=A(),es=q(),ze=vt();Ee.keywordError={message:({keyword:t})=>(0,Z.str)`must pass "${t}" keyword validation`};Ee.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Z.str)`"${t}" keyword must be ${e} ($data)`:(0,Z.str)`"${t}" keyword is invalid ($data)`};function bE(t,e=Ee.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=ym(t,e,r);n??(i||a)?gm(s,c):_m(o,(0,Z._)`[${c}]`)}Ee.reportError=bE;function EE(t,e=Ee.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=ym(t,e,r);gm(o,a),s||i||_m(n,ze.default.vErrors)}Ee.reportExtraError=EE;function wE(t,e){t.assign(ze.default.errors,e),t.if((0,Z._)`${ze.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Z._)`${ze.default.vErrors}.length`,e),()=>t.assign(ze.default.vErrors,null)))}Ee.resetErrorsCount=wE;function kE({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,ze.default.errors,a=>{t.const(i,(0,Z._)`${ze.default.vErrors}[${a}]`),t.if((0,Z._)`${i}.instancePath === undefined`,()=>t.assign((0,Z._)`${i}.instancePath`,(0,Z.strConcat)(ze.default.instancePath,s.errorPath))),t.assign((0,Z._)`${i}.schemaPath`,(0,Z.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,Z._)`${i}.schema`,r),t.assign((0,Z._)`${i}.data`,n))})}Ee.extendErrors=kE;function gm(t,e){let r=t.const("err",e);t.if((0,Z._)`${ze.default.vErrors} === null`,()=>t.assign(ze.default.vErrors,(0,Z._)`[${r}]`),(0,Z._)`${ze.default.vErrors}.push(${r})`),t.code((0,Z._)`${ze.default.errors}++`)}function _m(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,Z._)`new ${t.ValidationError}(${e})`):(r.assign((0,Z._)`${n}.errors`,e),r.return(!1))}var Bt={keyword:new Z.Name("keyword"),schemaPath:new Z.Name("schemaPath"),params:new Z.Name("params"),propertyName:new Z.Name("propertyName"),message:new Z.Name("message"),schema:new Z.Name("schema"),parentSchema:new Z.Name("parentSchema")};function ym(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Z._)`{}`:xE(t,e,r)}function xE(t,e,r={}){let{gen:n,it:o}=t,s=[$E(o,r),PE(t,r)];return TE(t,e,s),n.object(...s)}function $E({errorPath:t},{instancePath:e}){let r=e?(0,Z.str)`${t}${(0,es.getErrorPath)(e,es.Type.Str)}`:t;return[ze.default.instancePath,(0,Z.strConcat)(ze.default.instancePath,r)]}function PE({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,Z.str)`${e}/${t}`;return r&&(o=(0,Z.str)`${o}${(0,es.getErrorPath)(r,es.Type.Str)}`),[Bt.schemaPath,o]}function TE(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([Bt.keyword,o],[Bt.params,typeof e=="function"?e(t):e||(0,Z._)`{}`]),c.messages&&n.push([Bt.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Bt.schema,i],[Bt.parentSchema,(0,Z._)`${l}${d}`],[ze.default.data,s]),u&&n.push([Bt.propertyName,u])}});var vm=w(br=>{"use strict";Object.defineProperty(br,"__esModule",{value:!0});br.boolOrEmptySchema=br.topBoolOrEmptySchema=void 0;var zE=$n(),RE=A(),IE=vt(),OE={message:"boolean schema is false"};function AE(t){let{gen:e,schema:r,validateName:n}=t;r===!1?Sm(t,!1):typeof r=="object"&&r.$async===!0?e.return(IE.default.data):(e.assign((0,RE._)`${n}.errors`,null),e.return(!0))}br.topBoolOrEmptySchema=AE;function ME(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),Sm(t)):r.var(e,!0)}br.boolOrEmptySchema=ME;function Sm(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,zE.reportError)(o,OE,void 0,e)}});var Na=w(Er=>{"use strict";Object.defineProperty(Er,"__esModule",{value:!0});Er.getRules=Er.isJSONType=void 0;var CE=["string","number","integer","boolean","null","object","array"],DE=new Set(CE);function NE(t){return typeof t=="string"&&DE.has(t)}Er.isJSONType=NE;function jE(){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:{}}}Er.getRules=jE});var ja=w(At=>{"use strict";Object.defineProperty(At,"__esModule",{value:!0});At.shouldUseRule=At.shouldUseGroup=At.schemaHasRulesForType=void 0;function LE({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&bm(t,n)}At.schemaHasRulesForType=LE;function bm(t,e){return e.rules.some(r=>Em(t,r))}At.shouldUseGroup=bm;function Em(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))}At.shouldUseRule=Em});var Pn=w(we=>{"use strict";Object.defineProperty(we,"__esModule",{value:!0});we.reportTypeError=we.checkDataTypes=we.checkDataType=we.coerceAndCheckDataType=we.getJSONTypes=we.getSchemaTypes=we.DataType=void 0;var UE=Na(),qE=ja(),ZE=$n(),O=A(),wm=q(),wr;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(wr||(we.DataType=wr={}));function FE(t){let e=km(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}we.getSchemaTypes=FE;function km(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(UE.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}we.getJSONTypes=km;function HE(t,e){let{gen:r,data:n,opts:o}=t,s=WE(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,qE.schemaHasRulesForType)(t,e[0]));if(i){let a=Ua(e,n,o.strictNumbers,wr.Wrong);r.if(a,()=>{s.length?VE(t,e,s):qa(t)})}return i}we.coerceAndCheckDataType=HE;var xm=new Set(["string","number","integer","boolean","null"]);function WE(t,e){return e?t.filter(r=>xm.has(r)||e==="array"&&r==="array"):[]}function VE(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,O._)`typeof ${o}`),a=n.let("coerced",(0,O._)`undefined`);s.coerceTypes==="array"&&n.if((0,O._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,O._)`${o}[0]`).assign(i,(0,O._)`typeof ${o}`).if(Ua(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,O._)`${a} !== undefined`);for(let u of r)(xm.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),qa(t),n.endIf(),n.if((0,O._)`${a} !== undefined`,()=>{n.assign(o,a),GE(t,a)});function c(u){switch(u){case"string":n.elseIf((0,O._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,O._)`"" + ${o}`).elseIf((0,O._)`${o} === null`).assign(a,(0,O._)`""`);return;case"number":n.elseIf((0,O._)`${i} == "boolean" || ${o} === null
|
|
4
4
|
|| (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,O._)`+${o}`);return;case"integer":n.elseIf((0,O._)`${i} === "boolean" || ${o} === null
|
|
5
5
|
|| (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,O._)`+${o}`);return;case"boolean":n.elseIf((0,O._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,O._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,O._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,O._)`${i} === "string" || ${i} === "number"
|
|
6
|
-
|| ${i} === "boolean" || ${o} === null`).assign(a,(0,O._)`[${o}]`)}}}function GE({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,O._)`${e} !== undefined`,()=>t.assign((0,O._)`${e}[${r}]`,n))}function La(t,e,r,n=wr.Correct){let o=n===wr.Correct?O.operators.EQ:O.operators.NEQ,s;switch(t){case"null":return(0,O._)`${e} ${o} null`;case"array":s=(0,O._)`Array.isArray(${e})`;break;case"object":s=(0,O._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,O._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,O._)`typeof ${e} ${o} ${t}`}return n===wr.Correct?s:(0,O.not)(s);function i(a=O.nil){return(0,O.and)((0,O._)`typeof ${e} == "number"`,a,r?(0,O._)`isFinite(${e})`:O.nil)}}we.checkDataType=La;function Ua(t,e,r,n){if(t.length===1)return La(t[0],e,r,n);let o,s=(0,wm.toHash)(t);if(s.array&&s.object){let i=(0,O._)`typeof ${e} != "object"`;o=s.null?i:(0,O._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=O.nil;s.number&&delete s.integer;for(let i in s)o=(0,O.and)(o,La(i,e,r,n));return o}we.checkDataTypes=Ua;var KE={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,O._)`{type: ${t}}`:(0,O._)`{type: ${e}}`};function qa(t){let e=JE(t);(0,ZE.reportError)(e,KE)}we.reportTypeError=qa;function JE(t){let{gen:e,data:r,schema:n}=t,o=(0,wm.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var Pm=w(ts=>{"use strict";Object.defineProperty(ts,"__esModule",{value:!0});ts.assignDefaults=void 0;var kr=A(),BE=q();function YE(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)$m(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>$m(t,s,o.default))}ts.assignDefaults=YE;function $m(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,kr._)`${s}${(0,kr.getProperty)(e)}`;if(o){(0,BE.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,kr._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,kr._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,kr._)`${a} = ${(0,kr.stringify)(r)}`)}});var We=w(G=>{"use strict";Object.defineProperty(G,"__esModule",{value:!0});G.validateUnion=G.validateArray=G.usePattern=G.callValidateCode=G.schemaProperties=G.allSchemaProperties=G.noPropertyInData=G.propertyInData=G.isOwnProperty=G.hasPropFunc=G.reportMissingProp=G.checkMissingProp=G.checkReportMissingProp=void 0;var ee=A(),Za=q(),Mt=vt(),XE=q();function QE(t,e){let{gen:r,data:n,it:o}=t;r.if(Ha(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,ee._)`${e}`},!0),t.error()})}G.checkReportMissingProp=QE;function ew({gen:t,data:e,it:{opts:r}},n,o){return(0,ee.or)(...n.map(s=>(0,ee.and)(Ha(t,e,s,r.ownProperties),(0,ee._)`${o} = ${s}`)))}G.checkMissingProp=ew;function tw(t,e){t.setParams({missingProperty:e},!0),t.error()}G.reportMissingProp=tw;function Tm(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,ee._)`Object.prototype.hasOwnProperty`})}G.hasPropFunc=Tm;function Fa(t,e,r){return(0,ee._)`${Tm(t)}.call(${e}, ${r})`}G.isOwnProperty=Fa;function rw(t,e,r,n){let o=(0,ee._)`${e}${(0,ee.getProperty)(r)} !== undefined`;return n?(0,ee._)`${o} && ${Fa(t,e,r)}`:o}G.propertyInData=rw;function Ha(t,e,r,n){let o=(0,ee._)`${e}${(0,ee.getProperty)(r)} === undefined`;return n?(0,ee.or)(o,(0,ee.not)(Fa(t,e,r))):o}G.noPropertyInData=Ha;function zm(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}G.allSchemaProperties=zm;function nw(t,e){return zm(e).filter(r=>!(0,Za.alwaysValidSchema)(t,e[r]))}G.schemaProperties=nw;function ow({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=[[Mt.default.instancePath,(0,ee.strConcat)(Mt.default.instancePath,s)],[Mt.default.parentData,i.parentData],[Mt.default.parentDataProperty,i.parentDataProperty],[Mt.default.rootData,Mt.default.rootData]];i.opts.dynamicRef&&d.push([Mt.default.dynamicAnchors,Mt.default.dynamicAnchors]);let p=(0,ee._)`${l}, ${r.object(...d)}`;return c!==ee.nil?(0,ee._)`${a}.call(${c}, ${p})`:(0,ee._)`${a}(${p})`}G.callValidateCode=ow;var sw=(0,ee._)`new RegExp`;function iw({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"?sw:(0,XE.useFunc)(t,o)}(${r}, ${n})`})}G.usePattern=iw;function aw(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:Za.Type.Num},s),e.if((0,ee.not)(s),a)})}}G.validateArray=aw;function cw(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,Za.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))}G.validateUnion=cw});var Om=w(st=>{"use strict";Object.defineProperty(st,"__esModule",{value:!0});st.validateKeywordUsage=st.validSchemaType=st.funcKeywordCode=st.macroKeywordCode=void 0;var Re=A(),Yt=vt(),uw=We(),lw=$n();function dw(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=Im(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:Re.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}st.macroKeywordCode=dw;function pw(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;mw(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=Im(n,o,u),d=n.let("valid");t.block$data(d,p),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function p(){if(e.errors===!1)_(),e.modifying&&Rm(t),S(()=>t.error());else{let b=e.async?f():m();e.modifying&&Rm(t),S(()=>fw(t,b))}}function f(){let b=n.let("ruleErrs",null);return n.try(()=>_((0,Re._)`await `),E=>n.assign(d,!1).if((0,Re._)`${E} instanceof ${c.ValidationError}`,()=>n.assign(b,(0,Re._)`${E}.errors`),()=>n.throw(E))),b}function m(){let b=(0,Re._)`${l}.errors`;return n.assign(b,null),_(Re.nil),b}function _(b=e.async?(0,Re._)`await `:Re.nil){let E=c.opts.passContext?Yt.default.this:Yt.default.self,v=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,Re._)`${b}${(0,uw.callValidateCode)(t,l,E,v)}`,e.modifying)}function S(b){var E;n.if((0,Re.not)((E=e.valid)!==null&&E!==void 0?E:d),b)}}st.funcKeywordCode=pw;function Rm(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Re._)`${n.parentData}[${n.parentDataProperty}]`))}function fw(t,e){let{gen:r}=t;r.if((0,Re._)`Array.isArray(${e})`,()=>{r.assign(Yt.default.vErrors,(0,Re._)`${Yt.default.vErrors} === null ? ${e} : ${Yt.default.vErrors}.concat(${e})`).assign(Yt.default.errors,(0,Re._)`${Yt.default.vErrors}.length`),(0,lw.extendErrors)(t)},()=>t.error())}function mw({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Im(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,Re.stringify)(r)})}function hw(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")}st.validSchemaType=hw;function gw({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)}}st.validateKeywordUsage=gw});var Mm=w(Ct=>{"use strict";Object.defineProperty(Ct,"__esModule",{value:!0});Ct.extendSubschemaMode=Ct.extendSubschemaData=Ct.getSubschema=void 0;var it=A(),Am=q();function _w(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,it._)`${t.schemaPath}${(0,it.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,it._)`${t.schemaPath}${(0,it.getProperty)(e)}${(0,it.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Am.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')}Ct.getSubschema=_w;function yw(t,e,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,p=a.let("data",(0,it._)`${e.data}${(0,it.getProperty)(r)}`,!0);c(p),t.errorPath=(0,it.str)`${u}${(0,Am.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,it._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof it.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]}}Ct.extendSubschemaData=yw;function Sw(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}Ct.extendSubschemaMode=Sw});var Wa=w((eC,Cm)=>{"use strict";Cm.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 Dm=w((tC,Nm)=>{"use strict";var Nt=Nm.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(){};rs(e,n,o,t,"",t)};Nt.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Nt.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Nt.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Nt.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 rs(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 Nt.arrayKeywords)for(var p=0;p<d.length;p++)rs(t,e,r,d[p],o+"/"+l+"/"+p,s,o,l,n,p)}else if(l in Nt.propsKeywords){if(d&&typeof d=="object")for(var f in d)rs(t,e,r,d[f],o+"/"+l+"/"+vw(f),s,o,l,n,f)}else(l in Nt.keywords||t.allKeys&&!(l in Nt.skipKeywords))&&rs(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function vw(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Tn=w(Ce=>{"use strict";Object.defineProperty(Ce,"__esModule",{value:!0});Ce.getSchemaRefs=Ce.resolveUrl=Ce.normalizeId=Ce._getFullPath=Ce.getFullPath=Ce.inlineRef=void 0;var bw=q(),Ew=Wa(),ww=Dm(),kw=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function xw(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Va(t):e?jm(t)<=e:!1}Ce.inlineRef=xw;var $w=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Va(t){for(let e in t){if($w.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Va)||typeof r=="object"&&Va(r))return!0}return!1}function jm(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!kw.has(r)&&(typeof t[r]=="object"&&(0,bw.eachItem)(t[r],n=>e+=jm(n)),e===1/0))return 1/0}return e}function Lm(t,e="",r){r!==!1&&(e=xr(e));let n=t.parse(e);return Um(t,n)}Ce.getFullPath=Lm;function Um(t,e){return t.serialize(e).split("#")[0]+"#"}Ce._getFullPath=Um;var Pw=/#\/?$/;function xr(t){return t?t.replace(Pw,""):""}Ce.normalizeId=xr;function Tw(t,e,r){return r=xr(r),t.resolve(e,r)}Ce.resolveUrl=Tw;var zw=/^[a-z_][-a-z0-9._]*$/i;function Rw(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=xr(t[r]||e),s={"":o},i=Lm(n,o,!1),a={},c=new Set;return ww(t,{allKeys:!0},(d,p,f,m)=>{if(m===void 0)return;let _=i+p,S=s[m];typeof d[r]=="string"&&(S=b.call(this,d[r])),E.call(this,d.$anchor),E.call(this,d.$dynamicAnchor),s[p]=S;function b(v){let $=this.opts.uriResolver.resolve;if(v=xr(S?$(S,v):v),c.has(v))throw l(v);c.add(v);let x=this.refs[v];return typeof x=="string"&&(x=this.refs[x]),typeof x=="object"?u(d,x.schema,v):v!==xr(_)&&(v[0]==="#"?(u(d,a[v],v),a[v]=d):this.refs[v]=_),v}function E(v){if(typeof v=="string"){if(!zw.test(v))throw new Error(`invalid anchor "${v}"`);b.call(this,`#${v}`)}}}),a;function u(d,p,f){if(p!==void 0&&!Ew(d,p))throw l(f)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Ce.getSchemaRefs=Rw});var In=w(Dt=>{"use strict";Object.defineProperty(Dt,"__esModule",{value:!0});Dt.getData=Dt.KeywordCxt=Dt.validateFunctionCode=void 0;var Wm=vm(),qm=Pn(),Ka=ja(),ns=Pn(),Iw=Pm(),Rn=Om(),Ga=Mm(),T=A(),R=vt(),Ow=Tn(),bt=q(),zn=$n();function Aw(t){if(Km(t)&&(Jm(t),Gm(t))){Nw(t);return}Vm(t,()=>(0,Wm.topBoolOrEmptySchema)(t))}Dt.validateFunctionCode=Aw;function Vm({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,T._)`${R.default.data}, ${R.default.valCxt}`,n.$async,()=>{t.code((0,T._)`"use strict"; ${Zm(r,o)}`),Cw(t,o),t.code(s)}):t.func(e,(0,T._)`${R.default.data}, ${Mw(o)}`,n.$async,()=>t.code(Zm(r,o)).code(s))}function Mw(t){return(0,T._)`{${R.default.instancePath}="", ${R.default.parentData}, ${R.default.parentDataProperty}, ${R.default.rootData}=${R.default.data}${t.dynamicRef?(0,T._)`, ${R.default.dynamicAnchors}={}`:T.nil}}={}`}function Cw(t,e){t.if(R.default.valCxt,()=>{t.var(R.default.instancePath,(0,T._)`${R.default.valCxt}.${R.default.instancePath}`),t.var(R.default.parentData,(0,T._)`${R.default.valCxt}.${R.default.parentData}`),t.var(R.default.parentDataProperty,(0,T._)`${R.default.valCxt}.${R.default.parentDataProperty}`),t.var(R.default.rootData,(0,T._)`${R.default.valCxt}.${R.default.rootData}`),e.dynamicRef&&t.var(R.default.dynamicAnchors,(0,T._)`${R.default.valCxt}.${R.default.dynamicAnchors}`)},()=>{t.var(R.default.instancePath,(0,T._)`""`),t.var(R.default.parentData,(0,T._)`undefined`),t.var(R.default.parentDataProperty,(0,T._)`undefined`),t.var(R.default.rootData,R.default.data),e.dynamicRef&&t.var(R.default.dynamicAnchors,(0,T._)`{}`)})}function Nw(t){let{schema:e,opts:r,gen:n}=t;Vm(t,()=>{r.$comment&&e.$comment&&Ym(t),qw(t),n.let(R.default.vErrors,null),n.let(R.default.errors,0),r.unevaluated&&Dw(t),Bm(t),Hw(t)})}function Dw(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,T._)`${r}.evaluated`),e.if((0,T._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,T._)`${t.evaluated}.props`,(0,T._)`undefined`)),e.if((0,T._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,T._)`${t.evaluated}.items`,(0,T._)`undefined`))}function Zm(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,T._)`/*# sourceURL=${r} */`:T.nil}function jw(t,e){if(Km(t)&&(Jm(t),Gm(t))){Lw(t,e);return}(0,Wm.boolOrEmptySchema)(t,e)}function Gm({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 Km(t){return typeof t.schema!="boolean"}function Lw(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&Ym(t),Zw(t),Fw(t);let s=n.const("_errs",R.default.errors);Bm(t,s),n.var(e,(0,T._)`${s} === ${R.default.errors}`)}function Jm(t){(0,bt.checkUnknownRules)(t),Uw(t)}function Bm(t,e){if(t.opts.jtd)return Fm(t,[],!1,e);let r=(0,qm.getSchemaTypes)(t.schema),n=(0,qm.coerceAndCheckDataType)(t,r);Fm(t,r,!n,e)}function Uw(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,bt.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function qw(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,bt.checkStrictMode)(t,"default is ignored in the schema root")}function Zw(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,Ow.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function Fw(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function Ym({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,T._)`${R.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,T.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,T._)`${R.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function Hw(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,T._)`${R.default.errors} === 0`,()=>e.return(R.default.data),()=>e.throw((0,T._)`new ${o}(${R.default.vErrors})`)):(e.assign((0,T._)`${n}.errors`,R.default.vErrors),s.unevaluated&&Ww(t),e.return((0,T._)`${R.default.errors} === 0`))}function Ww({gen:t,evaluated:e,props:r,items:n}){r instanceof T.Name&&t.assign((0,T._)`${e}.props`,r),n instanceof T.Name&&t.assign((0,T._)`${e}.items`,n)}function Fm(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,bt.schemaHasRulesButRef)(s,l))){o.block(()=>Qm(t,"$ref",l.all.$ref.definition));return}c.jtd||Vw(t,e),o.block(()=>{for(let p of l.rules)d(p);d(l.post)});function d(p){(0,Ka.shouldUseGroup)(s,p)&&(p.type?(o.if((0,ns.checkDataType)(p.type,i,c.strictNumbers)),Hm(t,p),e.length===1&&e[0]===p.type&&r&&(o.else(),(0,ns.reportTypeError)(t)),o.endIf()):Hm(t,p),a||o.if((0,T._)`${R.default.errors} === ${n||0}`))}}function Hm(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,Iw.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Ka.shouldUseRule)(n,s)&&Qm(t,s.keyword,s.definition,e.type)})}function Vw(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(Gw(t,e),t.opts.allowUnionTypes||Kw(t,e),Jw(t,t.dataTypes))}function Gw(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{Xm(t.dataTypes,r)||Ja(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),Yw(t,e)}}function Kw(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Ja(t,"use allowUnionTypes to allow union type keyword")}function Jw(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Ka.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>Bw(e,i))&&Ja(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function Bw(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function Xm(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function Yw(t,e){let r=[];for(let n of t.dataTypes)Xm(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Ja(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,bt.checkStrictMode)(t,e,t.opts.strictTypes)}var os=class{constructor(e,r,n){if((0,Rn.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,bt.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",eh(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Rn.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",R.default.errors))}result(e,r,n){this.failResult((0,T.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,T.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,T._)`${r} !== undefined && (${(0,T.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?zn.reportExtraError:zn.reportError)(this,this.def.error,r)}$dataError(){(0,zn.reportError)(this,this.def.$dataError||zn.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,zn.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=T.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=T.nil,r=T.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,T.or)((0,T._)`${o} === undefined`,r)),e!==T.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==T.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,T.or)(i(),a());function i(){if(n.length){if(!(r instanceof T.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,T._)`${(0,ns.checkDataTypes)(c,r,s.opts.strictNumbers,ns.DataType.Wrong)}`}return T.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,T._)`!${c}(${r})`}return T.nil}}subschema(e,r){let n=(0,Ga.getSubschema)(this.it,e);(0,Ga.extendSubschemaData)(n,this.it,e),(0,Ga.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return jw(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=bt.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=bt.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,T.Name)),!0}};Dt.KeywordCxt=os;function Qm(t,e,r,n){let o=new os(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Rn.funcKeywordCode)(o,r):"macro"in r?(0,Rn.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Rn.funcKeywordCode)(o,r)}var Xw=/^\/(?:[^~]|~0|~1)*$/,Qw=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function eh(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return R.default.rootData;if(t[0]==="/"){if(!Xw.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=R.default.rootData}else{let u=Qw.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,T._)`${s}${(0,T.getProperty)((0,bt.unescapeJsonPointer)(u))}`,i=(0,T._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}Dt.getData=eh});var ss=w(Ya=>{"use strict";Object.defineProperty(Ya,"__esModule",{value:!0});var Ba=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Ya.default=Ba});var On=w(ec=>{"use strict";Object.defineProperty(ec,"__esModule",{value:!0});var Xa=Tn(),Qa=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,Xa.resolveUrl)(e,r,n),this.missingSchema=(0,Xa.normalizeId)((0,Xa.getFullPath)(e,this.missingRef))}};ec.default=Qa});var as=w(Ve=>{"use strict";Object.defineProperty(Ve,"__esModule",{value:!0});Ve.resolveSchema=Ve.getCompilingSchema=Ve.resolveRef=Ve.compileSchema=Ve.SchemaEnv=void 0;var Qe=A(),ek=ss(),Xt=vt(),et=Tn(),th=q(),tk=In(),$r=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,et.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};Ve.SchemaEnv=$r;function rc(t){let e=rh.call(this,t);if(e)return e;let r=(0,et.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new Qe.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:ek.default,code:(0,Qe._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:Xt.default.data,parentData:Xt.default.parentData,parentDataProperty:Xt.default.parentDataProperty,dataNames:[Xt.default.data],dataPathArr:[Qe.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Qe.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Qe.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Qe._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,tk.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(Xt.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let f=new Function(`${Xt.default.self}`,`${Xt.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:f}),f.errors=null,f.schema=t.schema,f.schemaEnv=t,t.$async&&(f.$async=!0),this.opts.code.source===!0&&(f.source={validateName:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:m,items:_}=u;f.evaluated={props:m instanceof Qe.Name?void 0:m,items:_ instanceof Qe.Name?void 0:_,dynamicProps:m instanceof Qe.Name,dynamicItems:_ instanceof Qe.Name},f.source&&(f.source.evaluated=(0,Qe.stringify)(f.evaluated))}return t.validate=f,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)}}Ve.compileSchema=rc;function rk(t,e,r){var n;r=(0,et.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=sk.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 $r({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=nk.call(this,s)}Ve.resolveRef=rk;function nk(t){return(0,et.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:rc.call(this,t)}function rh(t){for(let e of this._compilations)if(ok(e,t))return e}Ve.getCompilingSchema=rh;function ok(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function sk(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||is.call(this,t,e)}function is(t,e){let r=this.opts.uriResolver.parse(e),n=(0,et._getFullPath)(this.opts.uriResolver,r),o=(0,et.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return tc.call(this,r,t);let s=(0,et.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=is.call(this,t,i);return typeof a?.schema!="object"?void 0:tc.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||rc.call(this,i),s===(0,et.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,et.resolveUrl)(this.opts.uriResolver,o,u)),new $r({schema:a,schemaId:c,root:t,baseId:o})}return tc.call(this,r,i)}}Ve.resolveSchema=is;var ik=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function tc(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,th.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!ik.has(a)&&u&&(e=(0,et.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,th.schemaHasRulesButRef)(r,this.RULES)){let a=(0,et.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=is.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new $r({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var nh=w((aC,ak)=>{ak.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 sc=w((cC,uh)=>{"use strict";var ck=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),sh=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),nc=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),ih=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),uk=RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);function oc(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 lk=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function oh(t){return t.length=0,!0}function dk(t,e,r){if(t.length){let n=oc(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function pk(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=dk;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=oh}else{o.push(u);continue}}return o.length&&(a===oh?r.zone=o.join(""):i?n.push(o.join("")):n.push(oc(o))),r.address=n.join(""),r}function ah(t){if(fk(t,":")<2)return{host:t,isIPV6:!1};let e=pk(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 fk(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function mk(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("")}var hk={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},gk=/[@/?#:]/g,_k=/[@/?#]/g;function ch(t,e){let r=e?_k:gk;return r.lastIndex=0,t.replace(r,n=>hk[n])}function yk(t,e=!1){if(t.indexOf("%")===-1)return t;let r="";for(let n=0;n<t.length;n++){if(t[n]==="%"&&n+2<t.length){let o=t.slice(n+1,n+3);if(nc(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));e&&ih(i)?r+=i:r+="%"+s,n+=2;continue}}r+=t[n]}return r}function Sk(t){let e="";for(let r=0;r<t.length;r++){if(t[r]==="%"&&r+2<t.length){let n=t.slice(r+1,r+3);if(nc(n)){let o=n.toUpperCase(),s=String.fromCharCode(parseInt(o,16));s!=="."&&ih(s)?e+=s:e+="%"+o,r+=2;continue}}uk(t[r])?e+=t[r]:e+=escape(t[r])}return e}function vk(t){let e="";for(let r=0;r<t.length;r++){if(t[r]==="%"&&r+2<t.length){let n=t.slice(r+1,r+3);if(nc(n)){e+="%"+n.toUpperCase(),r+=2;continue}}e+=escape(t[r])}return e}function bk(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!sh(r)){let n=ah(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=ch(r,!1)}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}uh.exports={nonSimpleDomain:lk,recomposeAuthority:bk,reescapeHostDelimiters:ch,normalizePercentEncoding:yk,normalizePathEncoding:Sk,escapePreservingEscapes:vk,removeDotSegments:mk,isIPv4:sh,isUUID:ck,normalizeIPv6:ah,stringArrayToHexStripped:oc}});var mh=w((uC,fh)=>{"use strict";var{isUUID:Ek}=sc(),wk=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,kk=["http","https","ws","wss","urn","urn:uuid"];function xk(t){return kk.indexOf(t)!==-1}function ic(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 lh(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function dh(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 $k(t){return t.secure=ic(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function Pk(t){if((t.port===(ic(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 Tk(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(wk);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=ac(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function zk(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=ac(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 Rk(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!Ek(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function Ik(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var ph={scheme:"http",domainHost:!0,parse:lh,serialize:dh},Ok={scheme:"https",domainHost:ph.domainHost,parse:lh,serialize:dh},cs={scheme:"ws",domainHost:!0,parse:$k,serialize:Pk},Ak={scheme:"wss",domainHost:cs.domainHost,parse:cs.parse,serialize:cs.serialize},Mk={scheme:"urn",parse:Tk,serialize:zk,skipNormalize:!0},Ck={scheme:"urn:uuid",parse:Rk,serialize:Ik,skipNormalize:!0},us={http:ph,https:Ok,ws:cs,wss:Ak,urn:Mk,"urn:uuid":Ck};Object.setPrototypeOf(us,null);function ac(t){return t&&(us[t]||us[t.toLowerCase()])||void 0}fh.exports={wsIsSecure:ic,SCHEMES:us,isValidSchemeName:xk,getSchemeHandler:ac}});var vh=w((lC,ls)=>{"use strict";var{normalizeIPv6:Nk,removeDotSegments:An,recomposeAuthority:Dk,normalizePercentEncoding:jk,normalizePathEncoding:Lk,escapePreservingEscapes:Uk,reescapeHostDelimiters:qk,isIPv4:Zk,nonSimpleDomain:Fk}=sc(),{SCHEMES:Hk,getSchemeHandler:gh}=mh();function Wk(t,e){return typeof t=="string"?t=Bk(t,e):typeof t=="object"&&(t=Pr(Qt(t,e),e)),t}function Vk(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=_h(Pr(t,n),Pr(e,n),n,!0);return n.skipEscape=!0,Qt(o,n)}function _h(t,e,r,n){let o={};return n||(t=Pr(Qt(t,r),r),e=Pr(Qt(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=An(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=An(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=An(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=An(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 Gk(t,e,r){let n=hh(t,r),o=hh(e,r);return n!==void 0&&o!==void 0&&n.toLowerCase()===o.toLowerCase()}function Qt(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=gh(n.scheme||r.scheme);s&&s.serialize&&s.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=jk(r.path):(r.path=Uk(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&o.push(r.scheme,":");let i=Dk(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=An(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 Kk=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Jk(t,e){if(e[2]!==void 0&&t.path&&t.path[0]!=="/")return'URI path must start with "/" when authority is present.';if(typeof t.port=="number"&&(t.port<0||t.port>65535))return"URI port is malformed."}function yh(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,s=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let i=t.match(Kk);if(i){n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]);let a=Jk(n,i);if(a!==void 0&&(n.error=n.error||a,o=!0),n.host)if(Zk(n.host)===!1){let l=Nk(n.host);n.host=l.host.toLowerCase(),s=l.isIPV6}else s=!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 c=gh(r.scheme||n.scheme);if(!r.unicodeSupport&&(!c||!c.unicodeSupport)&&n.host&&(r.domainHost||c&&c.domainHost)&&s===!1&&Fk(n.host))try{n.host=new URL("http://"+n.host).hostname}catch(u){n.error=n.error||"Host's domain name can not be converted to ASCII: "+u}if((!c||c&&!c.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=qk(unescape(n.host),s))),n.path&&(n.path=Lk(n.path)),n.fragment))try{n.fragment=encodeURI(decodeURIComponent(n.fragment))}catch{n.error=n.error||"URI malformed"}c&&c.parse&&c.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return{parsed:n,malformedAuthorityOrPort:o}}function Pr(t,e){return yh(t,e).parsed}function Bk(t,e){return Sh(t,e).normalized}function Sh(t,e){let{parsed:r,malformedAuthorityOrPort:n}=yh(t,e);return{normalized:n?t:Qt(r,e),malformedAuthorityOrPort:n}}function hh(t,e){if(typeof t=="string"){let{normalized:r,malformedAuthorityOrPort:n}=Sh(t,e);return n?void 0:r}if(typeof t=="object")return Qt(t,e)}var cc={SCHEMES:Hk,normalize:Wk,resolve:Vk,resolveComponent:_h,equal:Gk,serialize:Qt,parse:Pr};ls.exports=cc;ls.exports.default=cc;ls.exports.fastUri=cc});var Eh=w(uc=>{"use strict";Object.defineProperty(uc,"__esModule",{value:!0});var bh=vh();bh.code='require("ajv/dist/runtime/uri").default';uc.default=bh});var Rh=w(_e=>{"use strict";Object.defineProperty(_e,"__esModule",{value:!0});_e.CodeGen=_e.Name=_e.nil=_e.stringify=_e.str=_e._=_e.KeywordCxt=void 0;var Yk=In();Object.defineProperty(_e,"KeywordCxt",{enumerable:!0,get:function(){return Yk.KeywordCxt}});var Tr=A();Object.defineProperty(_e,"_",{enumerable:!0,get:function(){return Tr._}});Object.defineProperty(_e,"str",{enumerable:!0,get:function(){return Tr.str}});Object.defineProperty(_e,"stringify",{enumerable:!0,get:function(){return Tr.stringify}});Object.defineProperty(_e,"nil",{enumerable:!0,get:function(){return Tr.nil}});Object.defineProperty(_e,"Name",{enumerable:!0,get:function(){return Tr.Name}});Object.defineProperty(_e,"CodeGen",{enumerable:!0,get:function(){return Tr.CodeGen}});var Xk=ss(),Ph=On(),Qk=Da(),Mn=as(),ex=A(),Cn=Tn(),ds=Pn(),dc=q(),wh=nh(),tx=Eh(),Th=(t,e)=>new RegExp(t,e);Th.code="new RegExp";var rx=["removeAdditional","useDefaults","coerceTypes"],nx=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),ox={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."},sx={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},kh=200;function ix(t){var e,r,n,o,s,i,a,c,u,l,d,p,f,m,_,S,b,E,v,$,x,ve,xe,Zt,ir;let ce=t.strict,kt=(e=t.code)===null||e===void 0?void 0:e.optimize,Be=kt===!0||kt===void 0?1:kt||0,Zr=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Th,ly=(o=t.uriResolver)!==null&&o!==void 0?o:tx.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:ce)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:ce)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:ce)!==null&&l!==void 0?l:"log",strictTuples:(p=(d=t.strictTuples)!==null&&d!==void 0?d:ce)!==null&&p!==void 0?p:"log",strictRequired:(m=(f=t.strictRequired)!==null&&f!==void 0?f:ce)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:Be,regExp:Zr}:{optimize:Be,regExp:Zr},loopRequired:(_=t.loopRequired)!==null&&_!==void 0?_:kh,loopEnum:(S=t.loopEnum)!==null&&S!==void 0?S:kh,meta:(b=t.meta)!==null&&b!==void 0?b:!0,messages:(E=t.messages)!==null&&E!==void 0?E:!0,inlineRefs:(v=t.inlineRefs)!==null&&v!==void 0?v:!0,schemaId:($=t.schemaId)!==null&&$!==void 0?$:"$id",addUsedSchema:(x=t.addUsedSchema)!==null&&x!==void 0?x:!0,validateSchema:(ve=t.validateSchema)!==null&&ve!==void 0?ve:!0,validateFormats:(xe=t.validateFormats)!==null&&xe!==void 0?xe:!0,unicodeRegExp:(Zt=t.unicodeRegExp)!==null&&Zt!==void 0?Zt:!0,int32range:(ir=t.int32range)!==null&&ir!==void 0?ir:!0,uriResolver:ly}}var Nn=class{constructor(e={}){this.schemas={},this.refs={},this.formats=Object.create(null),this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...ix(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new ex.ValueScope({scope:{},prefixes:nx,es5:r,lines:n}),this.logger=px(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,Qk.getRules)(),xh.call(this,ox,e,"NOT SUPPORTED"),xh.call(this,sx,e,"DEPRECATED","warn"),this._metaOpts=lx.call(this),e.formats&&cx.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&ux.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),ax.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=wh;n==="id"&&(o={...wh},o.id=o.$id,delete o.$id),r&&e&&this.addMetaSchema(o,o[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let o=n(r);return"$async"in n||(this.errors=n.errors),o}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return o.call(this,e,r);async function o(l,d){await s.call(this,l.$schema);let p=this._addSchema(l,d);return p.validate||i.call(this,p)}async function s(l){l&&!this.getSchema(l)&&await o.call(this,{$ref:l},!0)}async function i(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof Ph.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,Cn.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=$h.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new Mn.SchemaEnv({schema:{},schemaId:n});if(r=Mn.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=$h.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,Cn.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(mx.call(this,n,r),!r)return(0,dc.eachItem)(n,s=>lc.call(this,s)),this;gx.call(this,r);let o={...r,type:(0,ds.getJSONTypes)(r.type),schemaType:(0,ds.getJSONTypes)(r.schemaType)};return(0,dc.eachItem)(n,o.type.length===0?s=>lc.call(this,s,o):s=>o.type.forEach(i=>lc.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]=zh(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,Cn.normalizeId)(i||n);let u=Cn.getSchemaRefs.call(this,e,n);return c=new Mn.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):Mn.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{Mn.compileSchema.call(this,e)}finally{this.opts=r}}};Nn.ValidationError=Xk.default;Nn.MissingRefError=Ph.default;_e.default=Nn;function xh(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 $h(t){return t=(0,Cn.normalizeId)(t),this.schemas[t]||this.refs[t]}function ax(){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 cx(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function ux(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 lx(){let t={...this.opts};for(let e of rx)delete t[e];return t}var dx={log(){},warn(){},error(){}};function px(t){if(t===!1)return dx;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 fx=/^[a-z_$][a-z0-9_$:-]*$/i;function mx(t,e){let{RULES:r}=this;if((0,dc.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!fx.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 lc(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,ds.getJSONTypes)(e.type),schemaType:(0,ds.getJSONTypes)(e.schemaType)}};e.before?hx.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 hx(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 gx(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=zh(e)),t.validateSchema=this.compile(e,!0))}var _x={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function zh(t){return{anyOf:[t,_x]}}});var Ih=w(pc=>{"use strict";Object.defineProperty(pc,"__esModule",{value:!0});var yx={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};pc.default=yx});var Ch=w(er=>{"use strict";Object.defineProperty(er,"__esModule",{value:!0});er.callRef=er.getValidate=void 0;var Sx=On(),Oh=We(),Ne=A(),zr=vt(),Ah=as(),ps=q(),vx={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=Ah.resolveRef.call(c,u,o,r);if(l===void 0)throw new Sx.default(n.opts.uriResolver,o,r);if(l instanceof Ah.SchemaEnv)return p(l);return f(l);function d(){if(s===u)return fs(t,i,s,s.$async);let m=e.scopeValue("root",{ref:u});return fs(t,(0,Ne._)`${m}.validate`,u,u.$async)}function p(m){let _=Mh(t,m);fs(t,_,m,m.$async)}function f(m){let _=e.scopeValue("schema",a.code.source===!0?{ref:m,code:(0,Ne.stringify)(m)}:{ref:m}),S=e.name("valid"),b=t.subschema({schema:m,dataTypes:[],schemaPath:Ne.nil,topSchemaRef:_,errSchemaPath:r},S);t.mergeEvaluated(b),t.ok(S)}}};function Mh(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Ne._)`${r.scopeValue("wrapper",{ref:e})}.validate`}er.getValidate=Mh;function fs(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?zr.default.this:Ne.nil;n?l():d();function l(){if(!a.$async)throw new Error("async schema referenced by sync schema");let m=o.let("valid");o.try(()=>{o.code((0,Ne._)`await ${(0,Oh.callValidateCode)(t,e,u)}`),f(e),i||o.assign(m,!0)},_=>{o.if((0,Ne._)`!(${_} instanceof ${s.ValidationError})`,()=>o.throw(_)),p(_),i||o.assign(m,!1)}),t.ok(m)}function d(){t.result((0,Oh.callValidateCode)(t,e,u),()=>f(e),()=>p(e))}function p(m){let _=(0,Ne._)`${m}.errors`;o.assign(zr.default.vErrors,(0,Ne._)`${zr.default.vErrors} === null ? ${_} : ${zr.default.vErrors}.concat(${_})`),o.assign(zr.default.errors,(0,Ne._)`${zr.default.vErrors}.length`)}function f(m){var _;if(!s.opts.unevaluated)return;let S=(_=r?.validate)===null||_===void 0?void 0:_.evaluated;if(s.props!==!0)if(S&&!S.dynamicProps)S.props!==void 0&&(s.props=ps.mergeEvaluated.props(o,S.props,s.props));else{let b=o.var("props",(0,Ne._)`${m}.evaluated.props`);s.props=ps.mergeEvaluated.props(o,b,s.props,Ne.Name)}if(s.items!==!0)if(S&&!S.dynamicItems)S.items!==void 0&&(s.items=ps.mergeEvaluated.items(o,S.items,s.items));else{let b=o.var("items",(0,Ne._)`${m}.evaluated.items`);s.items=ps.mergeEvaluated.items(o,b,s.items,Ne.Name)}}}er.callRef=fs;er.default=vx});var Nh=w(fc=>{"use strict";Object.defineProperty(fc,"__esModule",{value:!0});var bx=Ih(),Ex=Ch(),wx=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",bx.default,Ex.default];fc.default=wx});var Dh=w(mc=>{"use strict";Object.defineProperty(mc,"__esModule",{value:!0});var ms=A(),jt=ms.operators,hs={maximum:{okStr:"<=",ok:jt.LTE,fail:jt.GT},minimum:{okStr:">=",ok:jt.GTE,fail:jt.LT},exclusiveMaximum:{okStr:"<",ok:jt.LT,fail:jt.GTE},exclusiveMinimum:{okStr:">",ok:jt.GT,fail:jt.LTE}},kx={message:({keyword:t,schemaCode:e})=>(0,ms.str)`must be ${hs[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,ms._)`{comparison: ${hs[t].okStr}, limit: ${e}}`},xx={keyword:Object.keys(hs),type:"number",schemaType:"number",$data:!0,error:kx,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,ms._)`${r} ${hs[e].fail} ${n} || isNaN(${r})`)}};mc.default=xx});var jh=w(hc=>{"use strict";Object.defineProperty(hc,"__esModule",{value:!0});var Dn=A(),$x={message:({schemaCode:t})=>(0,Dn.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Dn._)`{multipleOf: ${t}}`},Px={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:$x,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,Dn._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,Dn._)`${i} !== parseInt(${i})`;t.fail$data((0,Dn._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};hc.default=Px});var Uh=w(gc=>{"use strict";Object.defineProperty(gc,"__esModule",{value:!0});function Lh(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}gc.default=Lh;Lh.code='require("ajv/dist/runtime/ucs2length").default'});var qh=w(_c=>{"use strict";Object.defineProperty(_c,"__esModule",{value:!0});var tr=A(),Tx=q(),zx=Uh(),Rx={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,tr.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,tr._)`{limit: ${t}}`},Ix={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:Rx,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?tr.operators.GT:tr.operators.LT,i=o.opts.unicode===!1?(0,tr._)`${r}.length`:(0,tr._)`${(0,Tx.useFunc)(t.gen,zx.default)}(${r})`;t.fail$data((0,tr._)`${i} ${s} ${n}`)}};_c.default=Ix});var Zh=w(yc=>{"use strict";Object.defineProperty(yc,"__esModule",{value:!0});var Ox=We(),Ax=q(),Rr=A(),Mx={message:({schemaCode:t})=>(0,Rr.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Rr._)`{pattern: ${t}}`},Cx={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:Mx,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,Rr._)`new RegExp`:(0,Ax.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,Rr._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,Rr._)`!${l}`)}else{let c=(0,Ox.usePattern)(t,o);t.fail$data((0,Rr._)`!${c}.test(${r})`)}}};yc.default=Cx});var Fh=w(Sc=>{"use strict";Object.defineProperty(Sc,"__esModule",{value:!0});var jn=A(),Nx={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,jn.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,jn._)`{limit: ${t}}`},Dx={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:Nx,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?jn.operators.GT:jn.operators.LT;t.fail$data((0,jn._)`Object.keys(${r}).length ${o} ${n}`)}};Sc.default=Dx});var Hh=w(vc=>{"use strict";Object.defineProperty(vc,"__esModule",{value:!0});var Ln=We(),Un=A(),jx=q(),Lx={message:({params:{missingProperty:t}})=>(0,Un.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,Un._)`{missingProperty: ${t}}`},Ux={keyword:"required",type:"object",schemaType:"array",$data:!0,error:Lx,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 f=t.parentSchema.properties,{definedProperties:m}=t.it;for(let _ of r)if(f?.[_]===void 0&&!m.has(_)){let S=i.schemaEnv.baseId+i.errSchemaPath,b=`required property "${_}" is not defined at "${S}" (strictRequired)`;(0,jx.checkStrictMode)(i,b,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(Un.nil,d);else for(let f of r)(0,Ln.checkReportMissingProp)(t,f)}function l(){let f=e.let("missing");if(c||s){let m=e.let("valid",!0);t.block$data(m,()=>p(f,m)),t.ok(m)}else e.if((0,Ln.checkMissingProp)(t,r,f)),(0,Ln.reportMissingProp)(t,f),e.else()}function d(){e.forOf("prop",n,f=>{t.setParams({missingProperty:f}),e.if((0,Ln.noPropertyInData)(e,o,f,a.ownProperties),()=>t.error())})}function p(f,m){t.setParams({missingProperty:f}),e.forOf(f,n,()=>{e.assign(m,(0,Ln.propertyInData)(e,o,f,a.ownProperties)),e.if((0,Un.not)(m),()=>{t.error(),e.break()})},Un.nil)}}};vc.default=Ux});var Wh=w(bc=>{"use strict";Object.defineProperty(bc,"__esModule",{value:!0});var qn=A(),qx={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,qn.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,qn._)`{limit: ${t}}`},Zx={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:qx,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?qn.operators.GT:qn.operators.LT;t.fail$data((0,qn._)`${r}.length ${o} ${n}`)}};bc.default=Zx});var gs=w(Ec=>{"use strict";Object.defineProperty(Ec,"__esModule",{value:!0});var Vh=Wa();Vh.code='require("ajv/dist/runtime/equal").default';Ec.default=Vh});var Gh=w(kc=>{"use strict";Object.defineProperty(kc,"__esModule",{value:!0});var wc=Pn(),ye=A(),Fx=q(),Hx=gs(),Wx={message:({params:{i:t,j:e}})=>(0,ye.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,ye._)`{i: ${t}, j: ${e}}`},Vx={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:Wx,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,wc.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,ye._)`${i} === false`),t.ok(c);function l(){let m=e.let("i",(0,ye._)`${r}.length`),_=e.let("j");t.setParams({i:m,j:_}),e.assign(c,!0),e.if((0,ye._)`${m} > 1`,()=>(d()?p:f)(m,_))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function p(m,_){let S=e.name("item"),b=(0,wc.checkDataTypes)(u,S,a.opts.strictNumbers,wc.DataType.Wrong),E=e.const("indices",(0,ye._)`{}`);e.for((0,ye._)`;${m}--;`,()=>{e.let(S,(0,ye._)`${r}[${m}]`),e.if(b,(0,ye._)`continue`),u.length>1&&e.if((0,ye._)`typeof ${S} == "string"`,(0,ye._)`${S} += "_"`),e.if((0,ye._)`typeof ${E}[${S}] == "number"`,()=>{e.assign(_,(0,ye._)`${E}[${S}]`),t.error(),e.assign(c,!1).break()}).code((0,ye._)`${E}[${S}] = ${m}`)})}function f(m,_){let S=(0,Fx.useFunc)(e,Hx.default),b=e.name("outer");e.label(b).for((0,ye._)`;${m}--;`,()=>e.for((0,ye._)`${_} = ${m}; ${_}--;`,()=>e.if((0,ye._)`${S}(${r}[${m}], ${r}[${_}])`,()=>{t.error(),e.assign(c,!1).break(b)})))}}};kc.default=Vx});var Kh=w($c=>{"use strict";Object.defineProperty($c,"__esModule",{value:!0});var xc=A(),Gx=q(),Kx=gs(),Jx={message:"must be equal to constant",params:({schemaCode:t})=>(0,xc._)`{allowedValue: ${t}}`},Bx={keyword:"const",$data:!0,error:Jx,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,xc._)`!${(0,Gx.useFunc)(e,Kx.default)}(${r}, ${o})`):t.fail((0,xc._)`${s} !== ${r}`)}};$c.default=Bx});var Jh=w(Pc=>{"use strict";Object.defineProperty(Pc,"__esModule",{value:!0});var Zn=A(),Yx=q(),Xx=gs(),Qx={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Zn._)`{allowedValues: ${t}}`},e0={keyword:"enum",schemaType:"array",$data:!0,error:Qx,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,Yx.useFunc)(e,Xx.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 f=e.const("vSchema",s);l=(0,Zn.or)(...o.map((m,_)=>p(f,_)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,f=>e.if((0,Zn._)`${u()}(${r}, ${f})`,()=>e.assign(l,!0).break()))}function p(f,m){let _=o[m];return typeof _=="object"&&_!==null?(0,Zn._)`${u()}(${r}, ${f}[${m}])`:(0,Zn._)`${r} === ${_}`}}};Pc.default=e0});var Bh=w(Tc=>{"use strict";Object.defineProperty(Tc,"__esModule",{value:!0});var t0=Dh(),r0=jh(),n0=qh(),o0=Zh(),s0=Fh(),i0=Hh(),a0=Wh(),c0=Gh(),u0=Kh(),l0=Jh(),d0=[t0.default,r0.default,n0.default,o0.default,s0.default,i0.default,a0.default,c0.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},u0.default,l0.default];Tc.default=d0});var Rc=w(Fn=>{"use strict";Object.defineProperty(Fn,"__esModule",{value:!0});Fn.validateAdditionalItems=void 0;var rr=A(),zc=q(),p0={message:({params:{len:t}})=>(0,rr.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,rr._)`{limit: ${t}}`},f0={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:p0,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,zc.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}Yh(t,n)}};function Yh(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,rr._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,rr._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,zc.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,rr._)`${a} <= ${e.length}`);r.if((0,rr.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:zc.Type.Num},u),i.allErrors||r.if((0,rr.not)(u),()=>r.break())})}}Fn.validateAdditionalItems=Yh;Fn.default=f0});var Ic=w(Hn=>{"use strict";Object.defineProperty(Hn,"__esModule",{value:!0});Hn.validateTuple=void 0;var Xh=A(),_s=q(),m0=We(),h0={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return Qh(t,"additionalItems",e);r.items=!0,!(0,_s.alwaysValidSchema)(r,e)&&t.ok((0,m0.validateArray)(t))}};function Qh(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=_s.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,Xh._)`${s}.length`);r.forEach((d,p)=>{(0,_s.alwaysValidSchema)(a,d)||(n.if((0,Xh._)`${u} > ${p}`,()=>t.subschema({keyword:i,schemaProp:p,dataProp:p},c)),t.ok(c))});function l(d){let{opts:p,errSchemaPath:f}=a,m=r.length,_=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(p.strictTuples&&!_){let S=`"${i}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${f}"`;(0,_s.checkStrictMode)(a,S,p.strictTuples)}}}Hn.validateTuple=Qh;Hn.default=h0});var eg=w(Oc=>{"use strict";Object.defineProperty(Oc,"__esModule",{value:!0});var g0=Ic(),_0={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,g0.validateTuple)(t,"items")};Oc.default=_0});var rg=w(Ac=>{"use strict";Object.defineProperty(Ac,"__esModule",{value:!0});var tg=A(),y0=q(),S0=We(),v0=Rc(),b0={message:({params:{len:t}})=>(0,tg.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,tg._)`{limit: ${t}}`},E0={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:b0,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,y0.alwaysValidSchema)(n,e)&&(o?(0,v0.validateAdditionalItems)(t,o):t.ok((0,S0.validateArray)(t)))}};Ac.default=E0});var ng=w(Mc=>{"use strict";Object.defineProperty(Mc,"__esModule",{value:!0});var Ge=A(),ys=q(),w0={message:({params:{min:t,max:e}})=>e===void 0?(0,Ge.str)`must contain at least ${t} valid item(s)`:(0,Ge.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,Ge._)`{minContains: ${t}}`:(0,Ge._)`{minContains: ${t}, maxContains: ${e}}`},k0={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:w0,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,Ge._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,ys.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,ys.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,ys.alwaysValidSchema)(s,r)){let _=(0,Ge._)`${l} >= ${i}`;a!==void 0&&(_=(0,Ge._)`${_} && ${l} <= ${a}`),t.pass(_);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?f(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,Ge._)`${o}.length > 0`,p)):(e.let(d,!1),p()),t.result(d,()=>t.reset());function p(){let _=e.name("_valid"),S=e.let("count",0);f(_,()=>e.if(_,()=>m(S)))}function f(_,S){e.forRange("i",0,l,b=>{t.subschema({keyword:"contains",dataProp:b,dataPropType:ys.Type.Num,compositeRule:!0},_),S()})}function m(_){e.code((0,Ge._)`${_}++`),a===void 0?e.if((0,Ge._)`${_} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,Ge._)`${_} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,Ge._)`${_} >= ${i}`,()=>e.assign(d,!0)))}}};Mc.default=k0});var ig=w(at=>{"use strict";Object.defineProperty(at,"__esModule",{value:!0});at.validateSchemaDeps=at.validatePropertyDeps=at.error=void 0;var Cc=A(),x0=q(),Wn=We();at.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,Cc.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,Cc._)`{property: ${t},
|
|
6
|
+
|| ${i} === "boolean" || ${o} === null`).assign(a,(0,O._)`[${o}]`)}}}function GE({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,O._)`${e} !== undefined`,()=>t.assign((0,O._)`${e}[${r}]`,n))}function La(t,e,r,n=wr.Correct){let o=n===wr.Correct?O.operators.EQ:O.operators.NEQ,s;switch(t){case"null":return(0,O._)`${e} ${o} null`;case"array":s=(0,O._)`Array.isArray(${e})`;break;case"object":s=(0,O._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,O._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,O._)`typeof ${e} ${o} ${t}`}return n===wr.Correct?s:(0,O.not)(s);function i(a=O.nil){return(0,O.and)((0,O._)`typeof ${e} == "number"`,a,r?(0,O._)`isFinite(${e})`:O.nil)}}we.checkDataType=La;function Ua(t,e,r,n){if(t.length===1)return La(t[0],e,r,n);let o,s=(0,wm.toHash)(t);if(s.array&&s.object){let i=(0,O._)`typeof ${e} != "object"`;o=s.null?i:(0,O._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=O.nil;s.number&&delete s.integer;for(let i in s)o=(0,O.and)(o,La(i,e,r,n));return o}we.checkDataTypes=Ua;var KE={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,O._)`{type: ${t}}`:(0,O._)`{type: ${e}}`};function qa(t){let e=JE(t);(0,ZE.reportError)(e,KE)}we.reportTypeError=qa;function JE(t){let{gen:e,data:r,schema:n}=t,o=(0,wm.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var Pm=w(ts=>{"use strict";Object.defineProperty(ts,"__esModule",{value:!0});ts.assignDefaults=void 0;var kr=A(),BE=q();function YE(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)$m(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>$m(t,s,o.default))}ts.assignDefaults=YE;function $m(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,kr._)`${s}${(0,kr.getProperty)(e)}`;if(o){(0,BE.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,kr._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,kr._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,kr._)`${a} = ${(0,kr.stringify)(r)}`)}});var We=w(G=>{"use strict";Object.defineProperty(G,"__esModule",{value:!0});G.validateUnion=G.validateArray=G.usePattern=G.callValidateCode=G.schemaProperties=G.allSchemaProperties=G.noPropertyInData=G.propertyInData=G.isOwnProperty=G.hasPropFunc=G.reportMissingProp=G.checkMissingProp=G.checkReportMissingProp=void 0;var ee=A(),Za=q(),Mt=vt(),XE=q();function QE(t,e){let{gen:r,data:n,it:o}=t;r.if(Ha(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,ee._)`${e}`},!0),t.error()})}G.checkReportMissingProp=QE;function ew({gen:t,data:e,it:{opts:r}},n,o){return(0,ee.or)(...n.map(s=>(0,ee.and)(Ha(t,e,s,r.ownProperties),(0,ee._)`${o} = ${s}`)))}G.checkMissingProp=ew;function tw(t,e){t.setParams({missingProperty:e},!0),t.error()}G.reportMissingProp=tw;function Tm(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,ee._)`Object.prototype.hasOwnProperty`})}G.hasPropFunc=Tm;function Fa(t,e,r){return(0,ee._)`${Tm(t)}.call(${e}, ${r})`}G.isOwnProperty=Fa;function rw(t,e,r,n){let o=(0,ee._)`${e}${(0,ee.getProperty)(r)} !== undefined`;return n?(0,ee._)`${o} && ${Fa(t,e,r)}`:o}G.propertyInData=rw;function Ha(t,e,r,n){let o=(0,ee._)`${e}${(0,ee.getProperty)(r)} === undefined`;return n?(0,ee.or)(o,(0,ee.not)(Fa(t,e,r))):o}G.noPropertyInData=Ha;function zm(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}G.allSchemaProperties=zm;function nw(t,e){return zm(e).filter(r=>!(0,Za.alwaysValidSchema)(t,e[r]))}G.schemaProperties=nw;function ow({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=[[Mt.default.instancePath,(0,ee.strConcat)(Mt.default.instancePath,s)],[Mt.default.parentData,i.parentData],[Mt.default.parentDataProperty,i.parentDataProperty],[Mt.default.rootData,Mt.default.rootData]];i.opts.dynamicRef&&d.push([Mt.default.dynamicAnchors,Mt.default.dynamicAnchors]);let p=(0,ee._)`${l}, ${r.object(...d)}`;return c!==ee.nil?(0,ee._)`${a}.call(${c}, ${p})`:(0,ee._)`${a}(${p})`}G.callValidateCode=ow;var sw=(0,ee._)`new RegExp`;function iw({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"?sw:(0,XE.useFunc)(t,o)}(${r}, ${n})`})}G.usePattern=iw;function aw(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:Za.Type.Num},s),e.if((0,ee.not)(s),a)})}}G.validateArray=aw;function cw(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,Za.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))}G.validateUnion=cw});var Om=w(st=>{"use strict";Object.defineProperty(st,"__esModule",{value:!0});st.validateKeywordUsage=st.validSchemaType=st.funcKeywordCode=st.macroKeywordCode=void 0;var Re=A(),Yt=vt(),uw=We(),lw=$n();function dw(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=Im(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:Re.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}st.macroKeywordCode=dw;function pw(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;mw(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=Im(n,o,u),d=n.let("valid");t.block$data(d,p),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function p(){if(e.errors===!1)_(),e.modifying&&Rm(t),S(()=>t.error());else{let b=e.async?f():m();e.modifying&&Rm(t),S(()=>fw(t,b))}}function f(){let b=n.let("ruleErrs",null);return n.try(()=>_((0,Re._)`await `),E=>n.assign(d,!1).if((0,Re._)`${E} instanceof ${c.ValidationError}`,()=>n.assign(b,(0,Re._)`${E}.errors`),()=>n.throw(E))),b}function m(){let b=(0,Re._)`${l}.errors`;return n.assign(b,null),_(Re.nil),b}function _(b=e.async?(0,Re._)`await `:Re.nil){let E=c.opts.passContext?Yt.default.this:Yt.default.self,v=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,Re._)`${b}${(0,uw.callValidateCode)(t,l,E,v)}`,e.modifying)}function S(b){var E;n.if((0,Re.not)((E=e.valid)!==null&&E!==void 0?E:d),b)}}st.funcKeywordCode=pw;function Rm(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Re._)`${n.parentData}[${n.parentDataProperty}]`))}function fw(t,e){let{gen:r}=t;r.if((0,Re._)`Array.isArray(${e})`,()=>{r.assign(Yt.default.vErrors,(0,Re._)`${Yt.default.vErrors} === null ? ${e} : ${Yt.default.vErrors}.concat(${e})`).assign(Yt.default.errors,(0,Re._)`${Yt.default.vErrors}.length`),(0,lw.extendErrors)(t)},()=>t.error())}function mw({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Im(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,Re.stringify)(r)})}function hw(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")}st.validSchemaType=hw;function gw({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)}}st.validateKeywordUsage=gw});var Mm=w(Ct=>{"use strict";Object.defineProperty(Ct,"__esModule",{value:!0});Ct.extendSubschemaMode=Ct.extendSubschemaData=Ct.getSubschema=void 0;var it=A(),Am=q();function _w(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,it._)`${t.schemaPath}${(0,it.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,it._)`${t.schemaPath}${(0,it.getProperty)(e)}${(0,it.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Am.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')}Ct.getSubschema=_w;function yw(t,e,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,p=a.let("data",(0,it._)`${e.data}${(0,it.getProperty)(r)}`,!0);c(p),t.errorPath=(0,it.str)`${u}${(0,Am.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,it._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof it.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]}}Ct.extendSubschemaData=yw;function Sw(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}Ct.extendSubschemaMode=Sw});var Wa=w((eC,Cm)=>{"use strict";Cm.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 Nm=w((tC,Dm)=>{"use strict";var Dt=Dm.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(){};rs(e,n,o,t,"",t)};Dt.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Dt.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Dt.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Dt.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 rs(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 Dt.arrayKeywords)for(var p=0;p<d.length;p++)rs(t,e,r,d[p],o+"/"+l+"/"+p,s,o,l,n,p)}else if(l in Dt.propsKeywords){if(d&&typeof d=="object")for(var f in d)rs(t,e,r,d[f],o+"/"+l+"/"+vw(f),s,o,l,n,f)}else(l in Dt.keywords||t.allKeys&&!(l in Dt.skipKeywords))&&rs(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function vw(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Tn=w(Ce=>{"use strict";Object.defineProperty(Ce,"__esModule",{value:!0});Ce.getSchemaRefs=Ce.resolveUrl=Ce.normalizeId=Ce._getFullPath=Ce.getFullPath=Ce.inlineRef=void 0;var bw=q(),Ew=Wa(),ww=Nm(),kw=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function xw(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Va(t):e?jm(t)<=e:!1}Ce.inlineRef=xw;var $w=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Va(t){for(let e in t){if($w.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Va)||typeof r=="object"&&Va(r))return!0}return!1}function jm(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!kw.has(r)&&(typeof t[r]=="object"&&(0,bw.eachItem)(t[r],n=>e+=jm(n)),e===1/0))return 1/0}return e}function Lm(t,e="",r){r!==!1&&(e=xr(e));let n=t.parse(e);return Um(t,n)}Ce.getFullPath=Lm;function Um(t,e){return t.serialize(e).split("#")[0]+"#"}Ce._getFullPath=Um;var Pw=/#\/?$/;function xr(t){return t?t.replace(Pw,""):""}Ce.normalizeId=xr;function Tw(t,e,r){return r=xr(r),t.resolve(e,r)}Ce.resolveUrl=Tw;var zw=/^[a-z_][-a-z0-9._]*$/i;function Rw(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=xr(t[r]||e),s={"":o},i=Lm(n,o,!1),a={},c=new Set;return ww(t,{allKeys:!0},(d,p,f,m)=>{if(m===void 0)return;let _=i+p,S=s[m];typeof d[r]=="string"&&(S=b.call(this,d[r])),E.call(this,d.$anchor),E.call(this,d.$dynamicAnchor),s[p]=S;function b(v){let $=this.opts.uriResolver.resolve;if(v=xr(S?$(S,v):v),c.has(v))throw l(v);c.add(v);let x=this.refs[v];return typeof x=="string"&&(x=this.refs[x]),typeof x=="object"?u(d,x.schema,v):v!==xr(_)&&(v[0]==="#"?(u(d,a[v],v),a[v]=d):this.refs[v]=_),v}function E(v){if(typeof v=="string"){if(!zw.test(v))throw new Error(`invalid anchor "${v}"`);b.call(this,`#${v}`)}}}),a;function u(d,p,f){if(p!==void 0&&!Ew(d,p))throw l(f)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Ce.getSchemaRefs=Rw});var In=w(Nt=>{"use strict";Object.defineProperty(Nt,"__esModule",{value:!0});Nt.getData=Nt.KeywordCxt=Nt.validateFunctionCode=void 0;var Wm=vm(),qm=Pn(),Ka=ja(),ns=Pn(),Iw=Pm(),Rn=Om(),Ga=Mm(),T=A(),R=vt(),Ow=Tn(),bt=q(),zn=$n();function Aw(t){if(Km(t)&&(Jm(t),Gm(t))){Dw(t);return}Vm(t,()=>(0,Wm.topBoolOrEmptySchema)(t))}Nt.validateFunctionCode=Aw;function Vm({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,T._)`${R.default.data}, ${R.default.valCxt}`,n.$async,()=>{t.code((0,T._)`"use strict"; ${Zm(r,o)}`),Cw(t,o),t.code(s)}):t.func(e,(0,T._)`${R.default.data}, ${Mw(o)}`,n.$async,()=>t.code(Zm(r,o)).code(s))}function Mw(t){return(0,T._)`{${R.default.instancePath}="", ${R.default.parentData}, ${R.default.parentDataProperty}, ${R.default.rootData}=${R.default.data}${t.dynamicRef?(0,T._)`, ${R.default.dynamicAnchors}={}`:T.nil}}={}`}function Cw(t,e){t.if(R.default.valCxt,()=>{t.var(R.default.instancePath,(0,T._)`${R.default.valCxt}.${R.default.instancePath}`),t.var(R.default.parentData,(0,T._)`${R.default.valCxt}.${R.default.parentData}`),t.var(R.default.parentDataProperty,(0,T._)`${R.default.valCxt}.${R.default.parentDataProperty}`),t.var(R.default.rootData,(0,T._)`${R.default.valCxt}.${R.default.rootData}`),e.dynamicRef&&t.var(R.default.dynamicAnchors,(0,T._)`${R.default.valCxt}.${R.default.dynamicAnchors}`)},()=>{t.var(R.default.instancePath,(0,T._)`""`),t.var(R.default.parentData,(0,T._)`undefined`),t.var(R.default.parentDataProperty,(0,T._)`undefined`),t.var(R.default.rootData,R.default.data),e.dynamicRef&&t.var(R.default.dynamicAnchors,(0,T._)`{}`)})}function Dw(t){let{schema:e,opts:r,gen:n}=t;Vm(t,()=>{r.$comment&&e.$comment&&Ym(t),qw(t),n.let(R.default.vErrors,null),n.let(R.default.errors,0),r.unevaluated&&Nw(t),Bm(t),Hw(t)})}function Nw(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,T._)`${r}.evaluated`),e.if((0,T._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,T._)`${t.evaluated}.props`,(0,T._)`undefined`)),e.if((0,T._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,T._)`${t.evaluated}.items`,(0,T._)`undefined`))}function Zm(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,T._)`/*# sourceURL=${r} */`:T.nil}function jw(t,e){if(Km(t)&&(Jm(t),Gm(t))){Lw(t,e);return}(0,Wm.boolOrEmptySchema)(t,e)}function Gm({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 Km(t){return typeof t.schema!="boolean"}function Lw(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&Ym(t),Zw(t),Fw(t);let s=n.const("_errs",R.default.errors);Bm(t,s),n.var(e,(0,T._)`${s} === ${R.default.errors}`)}function Jm(t){(0,bt.checkUnknownRules)(t),Uw(t)}function Bm(t,e){if(t.opts.jtd)return Fm(t,[],!1,e);let r=(0,qm.getSchemaTypes)(t.schema),n=(0,qm.coerceAndCheckDataType)(t,r);Fm(t,r,!n,e)}function Uw(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,bt.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function qw(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,bt.checkStrictMode)(t,"default is ignored in the schema root")}function Zw(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,Ow.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function Fw(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function Ym({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,T._)`${R.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,T.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,T._)`${R.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function Hw(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,T._)`${R.default.errors} === 0`,()=>e.return(R.default.data),()=>e.throw((0,T._)`new ${o}(${R.default.vErrors})`)):(e.assign((0,T._)`${n}.errors`,R.default.vErrors),s.unevaluated&&Ww(t),e.return((0,T._)`${R.default.errors} === 0`))}function Ww({gen:t,evaluated:e,props:r,items:n}){r instanceof T.Name&&t.assign((0,T._)`${e}.props`,r),n instanceof T.Name&&t.assign((0,T._)`${e}.items`,n)}function Fm(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,bt.schemaHasRulesButRef)(s,l))){o.block(()=>Qm(t,"$ref",l.all.$ref.definition));return}c.jtd||Vw(t,e),o.block(()=>{for(let p of l.rules)d(p);d(l.post)});function d(p){(0,Ka.shouldUseGroup)(s,p)&&(p.type?(o.if((0,ns.checkDataType)(p.type,i,c.strictNumbers)),Hm(t,p),e.length===1&&e[0]===p.type&&r&&(o.else(),(0,ns.reportTypeError)(t)),o.endIf()):Hm(t,p),a||o.if((0,T._)`${R.default.errors} === ${n||0}`))}}function Hm(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,Iw.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Ka.shouldUseRule)(n,s)&&Qm(t,s.keyword,s.definition,e.type)})}function Vw(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(Gw(t,e),t.opts.allowUnionTypes||Kw(t,e),Jw(t,t.dataTypes))}function Gw(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{Xm(t.dataTypes,r)||Ja(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),Yw(t,e)}}function Kw(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Ja(t,"use allowUnionTypes to allow union type keyword")}function Jw(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Ka.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>Bw(e,i))&&Ja(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function Bw(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function Xm(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function Yw(t,e){let r=[];for(let n of t.dataTypes)Xm(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Ja(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,bt.checkStrictMode)(t,e,t.opts.strictTypes)}var os=class{constructor(e,r,n){if((0,Rn.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,bt.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",eh(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Rn.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",R.default.errors))}result(e,r,n){this.failResult((0,T.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,T.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,T._)`${r} !== undefined && (${(0,T.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?zn.reportExtraError:zn.reportError)(this,this.def.error,r)}$dataError(){(0,zn.reportError)(this,this.def.$dataError||zn.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,zn.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=T.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=T.nil,r=T.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,T.or)((0,T._)`${o} === undefined`,r)),e!==T.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==T.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,T.or)(i(),a());function i(){if(n.length){if(!(r instanceof T.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,T._)`${(0,ns.checkDataTypes)(c,r,s.opts.strictNumbers,ns.DataType.Wrong)}`}return T.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,T._)`!${c}(${r})`}return T.nil}}subschema(e,r){let n=(0,Ga.getSubschema)(this.it,e);(0,Ga.extendSubschemaData)(n,this.it,e),(0,Ga.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return jw(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=bt.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=bt.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,T.Name)),!0}};Nt.KeywordCxt=os;function Qm(t,e,r,n){let o=new os(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Rn.funcKeywordCode)(o,r):"macro"in r?(0,Rn.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Rn.funcKeywordCode)(o,r)}var Xw=/^\/(?:[^~]|~0|~1)*$/,Qw=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function eh(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return R.default.rootData;if(t[0]==="/"){if(!Xw.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=R.default.rootData}else{let u=Qw.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,T._)`${s}${(0,T.getProperty)((0,bt.unescapeJsonPointer)(u))}`,i=(0,T._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}Nt.getData=eh});var ss=w(Ya=>{"use strict";Object.defineProperty(Ya,"__esModule",{value:!0});var Ba=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Ya.default=Ba});var On=w(ec=>{"use strict";Object.defineProperty(ec,"__esModule",{value:!0});var Xa=Tn(),Qa=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,Xa.resolveUrl)(e,r,n),this.missingSchema=(0,Xa.normalizeId)((0,Xa.getFullPath)(e,this.missingRef))}};ec.default=Qa});var as=w(Ve=>{"use strict";Object.defineProperty(Ve,"__esModule",{value:!0});Ve.resolveSchema=Ve.getCompilingSchema=Ve.resolveRef=Ve.compileSchema=Ve.SchemaEnv=void 0;var Qe=A(),ek=ss(),Xt=vt(),et=Tn(),th=q(),tk=In(),$r=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,et.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};Ve.SchemaEnv=$r;function rc(t){let e=rh.call(this,t);if(e)return e;let r=(0,et.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new Qe.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:ek.default,code:(0,Qe._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:Xt.default.data,parentData:Xt.default.parentData,parentDataProperty:Xt.default.parentDataProperty,dataNames:[Xt.default.data],dataPathArr:[Qe.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Qe.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Qe.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Qe._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,tk.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(Xt.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let f=new Function(`${Xt.default.self}`,`${Xt.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:f}),f.errors=null,f.schema=t.schema,f.schemaEnv=t,t.$async&&(f.$async=!0),this.opts.code.source===!0&&(f.source={validateName:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:m,items:_}=u;f.evaluated={props:m instanceof Qe.Name?void 0:m,items:_ instanceof Qe.Name?void 0:_,dynamicProps:m instanceof Qe.Name,dynamicItems:_ instanceof Qe.Name},f.source&&(f.source.evaluated=(0,Qe.stringify)(f.evaluated))}return t.validate=f,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)}}Ve.compileSchema=rc;function rk(t,e,r){var n;r=(0,et.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=sk.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 $r({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=nk.call(this,s)}Ve.resolveRef=rk;function nk(t){return(0,et.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:rc.call(this,t)}function rh(t){for(let e of this._compilations)if(ok(e,t))return e}Ve.getCompilingSchema=rh;function ok(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function sk(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||is.call(this,t,e)}function is(t,e){let r=this.opts.uriResolver.parse(e),n=(0,et._getFullPath)(this.opts.uriResolver,r),o=(0,et.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return tc.call(this,r,t);let s=(0,et.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=is.call(this,t,i);return typeof a?.schema!="object"?void 0:tc.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||rc.call(this,i),s===(0,et.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,et.resolveUrl)(this.opts.uriResolver,o,u)),new $r({schema:a,schemaId:c,root:t,baseId:o})}return tc.call(this,r,i)}}Ve.resolveSchema=is;var ik=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function tc(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,th.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!ik.has(a)&&u&&(e=(0,et.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,th.schemaHasRulesButRef)(r,this.RULES)){let a=(0,et.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=is.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new $r({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var nh=w((aC,ak)=>{ak.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 sc=w((cC,uh)=>{"use strict";var ck=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),sh=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),nc=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),ih=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),uk=RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);function oc(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 lk=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function oh(t){return t.length=0,!0}function dk(t,e,r){if(t.length){let n=oc(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function pk(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=dk;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=oh}else{o.push(u);continue}}return o.length&&(a===oh?r.zone=o.join(""):i?n.push(o.join("")):n.push(oc(o))),r.address=n.join(""),r}function ah(t){if(fk(t,":")<2)return{host:t,isIPV6:!1};let e=pk(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 fk(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function mk(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("")}var hk={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},gk=/[@/?#:]/g,_k=/[@/?#]/g;function ch(t,e){let r=e?_k:gk;return r.lastIndex=0,t.replace(r,n=>hk[n])}function yk(t,e=!1){if(t.indexOf("%")===-1)return t;let r="";for(let n=0;n<t.length;n++){if(t[n]==="%"&&n+2<t.length){let o=t.slice(n+1,n+3);if(nc(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));e&&ih(i)?r+=i:r+="%"+s,n+=2;continue}}r+=t[n]}return r}function Sk(t){let e="";for(let r=0;r<t.length;r++){if(t[r]==="%"&&r+2<t.length){let n=t.slice(r+1,r+3);if(nc(n)){let o=n.toUpperCase(),s=String.fromCharCode(parseInt(o,16));s!=="."&&ih(s)?e+=s:e+="%"+o,r+=2;continue}}uk(t[r])?e+=t[r]:e+=escape(t[r])}return e}function vk(t){let e="";for(let r=0;r<t.length;r++){if(t[r]==="%"&&r+2<t.length){let n=t.slice(r+1,r+3);if(nc(n)){e+="%"+n.toUpperCase(),r+=2;continue}}e+=escape(t[r])}return e}function bk(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!sh(r)){let n=ah(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=ch(r,!1)}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}uh.exports={nonSimpleDomain:lk,recomposeAuthority:bk,reescapeHostDelimiters:ch,normalizePercentEncoding:yk,normalizePathEncoding:Sk,escapePreservingEscapes:vk,removeDotSegments:mk,isIPv4:sh,isUUID:ck,normalizeIPv6:ah,stringArrayToHexStripped:oc}});var mh=w((uC,fh)=>{"use strict";var{isUUID:Ek}=sc(),wk=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,kk=["http","https","ws","wss","urn","urn:uuid"];function xk(t){return kk.indexOf(t)!==-1}function ic(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 lh(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function dh(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 $k(t){return t.secure=ic(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function Pk(t){if((t.port===(ic(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 Tk(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(wk);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=ac(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function zk(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=ac(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 Rk(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!Ek(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function Ik(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var ph={scheme:"http",domainHost:!0,parse:lh,serialize:dh},Ok={scheme:"https",domainHost:ph.domainHost,parse:lh,serialize:dh},cs={scheme:"ws",domainHost:!0,parse:$k,serialize:Pk},Ak={scheme:"wss",domainHost:cs.domainHost,parse:cs.parse,serialize:cs.serialize},Mk={scheme:"urn",parse:Tk,serialize:zk,skipNormalize:!0},Ck={scheme:"urn:uuid",parse:Rk,serialize:Ik,skipNormalize:!0},us={http:ph,https:Ok,ws:cs,wss:Ak,urn:Mk,"urn:uuid":Ck};Object.setPrototypeOf(us,null);function ac(t){return t&&(us[t]||us[t.toLowerCase()])||void 0}fh.exports={wsIsSecure:ic,SCHEMES:us,isValidSchemeName:xk,getSchemeHandler:ac}});var vh=w((lC,ls)=>{"use strict";var{normalizeIPv6:Dk,removeDotSegments:An,recomposeAuthority:Nk,normalizePercentEncoding:jk,normalizePathEncoding:Lk,escapePreservingEscapes:Uk,reescapeHostDelimiters:qk,isIPv4:Zk,nonSimpleDomain:Fk}=sc(),{SCHEMES:Hk,getSchemeHandler:gh}=mh();function Wk(t,e){return typeof t=="string"?t=Bk(t,e):typeof t=="object"&&(t=Pr(Qt(t,e),e)),t}function Vk(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=_h(Pr(t,n),Pr(e,n),n,!0);return n.skipEscape=!0,Qt(o,n)}function _h(t,e,r,n){let o={};return n||(t=Pr(Qt(t,r),r),e=Pr(Qt(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=An(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=An(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=An(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=An(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 Gk(t,e,r){let n=hh(t,r),o=hh(e,r);return n!==void 0&&o!==void 0&&n.toLowerCase()===o.toLowerCase()}function Qt(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=gh(n.scheme||r.scheme);s&&s.serialize&&s.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=jk(r.path):(r.path=Uk(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&o.push(r.scheme,":");let i=Nk(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=An(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 Kk=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Jk(t,e){if(e[2]!==void 0&&t.path&&t.path[0]!=="/")return'URI path must start with "/" when authority is present.';if(typeof t.port=="number"&&(t.port<0||t.port>65535))return"URI port is malformed."}function yh(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,s=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let i=t.match(Kk);if(i){n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]);let a=Jk(n,i);if(a!==void 0&&(n.error=n.error||a,o=!0),n.host)if(Zk(n.host)===!1){let l=Dk(n.host);n.host=l.host.toLowerCase(),s=l.isIPV6}else s=!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 c=gh(r.scheme||n.scheme);if(!r.unicodeSupport&&(!c||!c.unicodeSupport)&&n.host&&(r.domainHost||c&&c.domainHost)&&s===!1&&Fk(n.host))try{n.host=new URL("http://"+n.host).hostname}catch(u){n.error=n.error||"Host's domain name can not be converted to ASCII: "+u}if((!c||c&&!c.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=qk(unescape(n.host),s))),n.path&&(n.path=Lk(n.path)),n.fragment))try{n.fragment=encodeURI(decodeURIComponent(n.fragment))}catch{n.error=n.error||"URI malformed"}c&&c.parse&&c.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return{parsed:n,malformedAuthorityOrPort:o}}function Pr(t,e){return yh(t,e).parsed}function Bk(t,e){return Sh(t,e).normalized}function Sh(t,e){let{parsed:r,malformedAuthorityOrPort:n}=yh(t,e);return{normalized:n?t:Qt(r,e),malformedAuthorityOrPort:n}}function hh(t,e){if(typeof t=="string"){let{normalized:r,malformedAuthorityOrPort:n}=Sh(t,e);return n?void 0:r}if(typeof t=="object")return Qt(t,e)}var cc={SCHEMES:Hk,normalize:Wk,resolve:Vk,resolveComponent:_h,equal:Gk,serialize:Qt,parse:Pr};ls.exports=cc;ls.exports.default=cc;ls.exports.fastUri=cc});var Eh=w(uc=>{"use strict";Object.defineProperty(uc,"__esModule",{value:!0});var bh=vh();bh.code='require("ajv/dist/runtime/uri").default';uc.default=bh});var Rh=w(_e=>{"use strict";Object.defineProperty(_e,"__esModule",{value:!0});_e.CodeGen=_e.Name=_e.nil=_e.stringify=_e.str=_e._=_e.KeywordCxt=void 0;var Yk=In();Object.defineProperty(_e,"KeywordCxt",{enumerable:!0,get:function(){return Yk.KeywordCxt}});var Tr=A();Object.defineProperty(_e,"_",{enumerable:!0,get:function(){return Tr._}});Object.defineProperty(_e,"str",{enumerable:!0,get:function(){return Tr.str}});Object.defineProperty(_e,"stringify",{enumerable:!0,get:function(){return Tr.stringify}});Object.defineProperty(_e,"nil",{enumerable:!0,get:function(){return Tr.nil}});Object.defineProperty(_e,"Name",{enumerable:!0,get:function(){return Tr.Name}});Object.defineProperty(_e,"CodeGen",{enumerable:!0,get:function(){return Tr.CodeGen}});var Xk=ss(),Ph=On(),Qk=Na(),Mn=as(),ex=A(),Cn=Tn(),ds=Pn(),dc=q(),wh=nh(),tx=Eh(),Th=(t,e)=>new RegExp(t,e);Th.code="new RegExp";var rx=["removeAdditional","useDefaults","coerceTypes"],nx=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),ox={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."},sx={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},kh=200;function ix(t){var e,r,n,o,s,i,a,c,u,l,d,p,f,m,_,S,b,E,v,$,x,ve,xe,Zt,ir;let ce=t.strict,kt=(e=t.code)===null||e===void 0?void 0:e.optimize,Be=kt===!0||kt===void 0?1:kt||0,Zr=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Th,ly=(o=t.uriResolver)!==null&&o!==void 0?o:tx.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:ce)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:ce)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:ce)!==null&&l!==void 0?l:"log",strictTuples:(p=(d=t.strictTuples)!==null&&d!==void 0?d:ce)!==null&&p!==void 0?p:"log",strictRequired:(m=(f=t.strictRequired)!==null&&f!==void 0?f:ce)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:Be,regExp:Zr}:{optimize:Be,regExp:Zr},loopRequired:(_=t.loopRequired)!==null&&_!==void 0?_:kh,loopEnum:(S=t.loopEnum)!==null&&S!==void 0?S:kh,meta:(b=t.meta)!==null&&b!==void 0?b:!0,messages:(E=t.messages)!==null&&E!==void 0?E:!0,inlineRefs:(v=t.inlineRefs)!==null&&v!==void 0?v:!0,schemaId:($=t.schemaId)!==null&&$!==void 0?$:"$id",addUsedSchema:(x=t.addUsedSchema)!==null&&x!==void 0?x:!0,validateSchema:(ve=t.validateSchema)!==null&&ve!==void 0?ve:!0,validateFormats:(xe=t.validateFormats)!==null&&xe!==void 0?xe:!0,unicodeRegExp:(Zt=t.unicodeRegExp)!==null&&Zt!==void 0?Zt:!0,int32range:(ir=t.int32range)!==null&&ir!==void 0?ir:!0,uriResolver:ly}}var Dn=class{constructor(e={}){this.schemas={},this.refs={},this.formats=Object.create(null),this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...ix(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new ex.ValueScope({scope:{},prefixes:nx,es5:r,lines:n}),this.logger=px(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,Qk.getRules)(),xh.call(this,ox,e,"NOT SUPPORTED"),xh.call(this,sx,e,"DEPRECATED","warn"),this._metaOpts=lx.call(this),e.formats&&cx.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&ux.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),ax.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=wh;n==="id"&&(o={...wh},o.id=o.$id,delete o.$id),r&&e&&this.addMetaSchema(o,o[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let o=n(r);return"$async"in n||(this.errors=n.errors),o}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return o.call(this,e,r);async function o(l,d){await s.call(this,l.$schema);let p=this._addSchema(l,d);return p.validate||i.call(this,p)}async function s(l){l&&!this.getSchema(l)&&await o.call(this,{$ref:l},!0)}async function i(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof Ph.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,Cn.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=$h.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new Mn.SchemaEnv({schema:{},schemaId:n});if(r=Mn.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=$h.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,Cn.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(mx.call(this,n,r),!r)return(0,dc.eachItem)(n,s=>lc.call(this,s)),this;gx.call(this,r);let o={...r,type:(0,ds.getJSONTypes)(r.type),schemaType:(0,ds.getJSONTypes)(r.schemaType)};return(0,dc.eachItem)(n,o.type.length===0?s=>lc.call(this,s,o):s=>o.type.forEach(i=>lc.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]=zh(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,Cn.normalizeId)(i||n);let u=Cn.getSchemaRefs.call(this,e,n);return c=new Mn.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):Mn.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{Mn.compileSchema.call(this,e)}finally{this.opts=r}}};Dn.ValidationError=Xk.default;Dn.MissingRefError=Ph.default;_e.default=Dn;function xh(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 $h(t){return t=(0,Cn.normalizeId)(t),this.schemas[t]||this.refs[t]}function ax(){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 cx(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function ux(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 lx(){let t={...this.opts};for(let e of rx)delete t[e];return t}var dx={log(){},warn(){},error(){}};function px(t){if(t===!1)return dx;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 fx=/^[a-z_$][a-z0-9_$:-]*$/i;function mx(t,e){let{RULES:r}=this;if((0,dc.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!fx.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 lc(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,ds.getJSONTypes)(e.type),schemaType:(0,ds.getJSONTypes)(e.schemaType)}};e.before?hx.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 hx(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 gx(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=zh(e)),t.validateSchema=this.compile(e,!0))}var _x={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function zh(t){return{anyOf:[t,_x]}}});var Ih=w(pc=>{"use strict";Object.defineProperty(pc,"__esModule",{value:!0});var yx={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};pc.default=yx});var Ch=w(er=>{"use strict";Object.defineProperty(er,"__esModule",{value:!0});er.callRef=er.getValidate=void 0;var Sx=On(),Oh=We(),De=A(),zr=vt(),Ah=as(),ps=q(),vx={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=Ah.resolveRef.call(c,u,o,r);if(l===void 0)throw new Sx.default(n.opts.uriResolver,o,r);if(l instanceof Ah.SchemaEnv)return p(l);return f(l);function d(){if(s===u)return fs(t,i,s,s.$async);let m=e.scopeValue("root",{ref:u});return fs(t,(0,De._)`${m}.validate`,u,u.$async)}function p(m){let _=Mh(t,m);fs(t,_,m,m.$async)}function f(m){let _=e.scopeValue("schema",a.code.source===!0?{ref:m,code:(0,De.stringify)(m)}:{ref:m}),S=e.name("valid"),b=t.subschema({schema:m,dataTypes:[],schemaPath:De.nil,topSchemaRef:_,errSchemaPath:r},S);t.mergeEvaluated(b),t.ok(S)}}};function Mh(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,De._)`${r.scopeValue("wrapper",{ref:e})}.validate`}er.getValidate=Mh;function fs(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?zr.default.this:De.nil;n?l():d();function l(){if(!a.$async)throw new Error("async schema referenced by sync schema");let m=o.let("valid");o.try(()=>{o.code((0,De._)`await ${(0,Oh.callValidateCode)(t,e,u)}`),f(e),i||o.assign(m,!0)},_=>{o.if((0,De._)`!(${_} instanceof ${s.ValidationError})`,()=>o.throw(_)),p(_),i||o.assign(m,!1)}),t.ok(m)}function d(){t.result((0,Oh.callValidateCode)(t,e,u),()=>f(e),()=>p(e))}function p(m){let _=(0,De._)`${m}.errors`;o.assign(zr.default.vErrors,(0,De._)`${zr.default.vErrors} === null ? ${_} : ${zr.default.vErrors}.concat(${_})`),o.assign(zr.default.errors,(0,De._)`${zr.default.vErrors}.length`)}function f(m){var _;if(!s.opts.unevaluated)return;let S=(_=r?.validate)===null||_===void 0?void 0:_.evaluated;if(s.props!==!0)if(S&&!S.dynamicProps)S.props!==void 0&&(s.props=ps.mergeEvaluated.props(o,S.props,s.props));else{let b=o.var("props",(0,De._)`${m}.evaluated.props`);s.props=ps.mergeEvaluated.props(o,b,s.props,De.Name)}if(s.items!==!0)if(S&&!S.dynamicItems)S.items!==void 0&&(s.items=ps.mergeEvaluated.items(o,S.items,s.items));else{let b=o.var("items",(0,De._)`${m}.evaluated.items`);s.items=ps.mergeEvaluated.items(o,b,s.items,De.Name)}}}er.callRef=fs;er.default=vx});var Dh=w(fc=>{"use strict";Object.defineProperty(fc,"__esModule",{value:!0});var bx=Ih(),Ex=Ch(),wx=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",bx.default,Ex.default];fc.default=wx});var Nh=w(mc=>{"use strict";Object.defineProperty(mc,"__esModule",{value:!0});var ms=A(),jt=ms.operators,hs={maximum:{okStr:"<=",ok:jt.LTE,fail:jt.GT},minimum:{okStr:">=",ok:jt.GTE,fail:jt.LT},exclusiveMaximum:{okStr:"<",ok:jt.LT,fail:jt.GTE},exclusiveMinimum:{okStr:">",ok:jt.GT,fail:jt.LTE}},kx={message:({keyword:t,schemaCode:e})=>(0,ms.str)`must be ${hs[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,ms._)`{comparison: ${hs[t].okStr}, limit: ${e}}`},xx={keyword:Object.keys(hs),type:"number",schemaType:"number",$data:!0,error:kx,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,ms._)`${r} ${hs[e].fail} ${n} || isNaN(${r})`)}};mc.default=xx});var jh=w(hc=>{"use strict";Object.defineProperty(hc,"__esModule",{value:!0});var Nn=A(),$x={message:({schemaCode:t})=>(0,Nn.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Nn._)`{multipleOf: ${t}}`},Px={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:$x,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,Nn._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,Nn._)`${i} !== parseInt(${i})`;t.fail$data((0,Nn._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};hc.default=Px});var Uh=w(gc=>{"use strict";Object.defineProperty(gc,"__esModule",{value:!0});function Lh(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}gc.default=Lh;Lh.code='require("ajv/dist/runtime/ucs2length").default'});var qh=w(_c=>{"use strict";Object.defineProperty(_c,"__esModule",{value:!0});var tr=A(),Tx=q(),zx=Uh(),Rx={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,tr.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,tr._)`{limit: ${t}}`},Ix={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:Rx,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?tr.operators.GT:tr.operators.LT,i=o.opts.unicode===!1?(0,tr._)`${r}.length`:(0,tr._)`${(0,Tx.useFunc)(t.gen,zx.default)}(${r})`;t.fail$data((0,tr._)`${i} ${s} ${n}`)}};_c.default=Ix});var Zh=w(yc=>{"use strict";Object.defineProperty(yc,"__esModule",{value:!0});var Ox=We(),Ax=q(),Rr=A(),Mx={message:({schemaCode:t})=>(0,Rr.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Rr._)`{pattern: ${t}}`},Cx={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:Mx,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,Rr._)`new RegExp`:(0,Ax.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,Rr._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,Rr._)`!${l}`)}else{let c=(0,Ox.usePattern)(t,o);t.fail$data((0,Rr._)`!${c}.test(${r})`)}}};yc.default=Cx});var Fh=w(Sc=>{"use strict";Object.defineProperty(Sc,"__esModule",{value:!0});var jn=A(),Dx={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,jn.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,jn._)`{limit: ${t}}`},Nx={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:Dx,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?jn.operators.GT:jn.operators.LT;t.fail$data((0,jn._)`Object.keys(${r}).length ${o} ${n}`)}};Sc.default=Nx});var Hh=w(vc=>{"use strict";Object.defineProperty(vc,"__esModule",{value:!0});var Ln=We(),Un=A(),jx=q(),Lx={message:({params:{missingProperty:t}})=>(0,Un.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,Un._)`{missingProperty: ${t}}`},Ux={keyword:"required",type:"object",schemaType:"array",$data:!0,error:Lx,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 f=t.parentSchema.properties,{definedProperties:m}=t.it;for(let _ of r)if(f?.[_]===void 0&&!m.has(_)){let S=i.schemaEnv.baseId+i.errSchemaPath,b=`required property "${_}" is not defined at "${S}" (strictRequired)`;(0,jx.checkStrictMode)(i,b,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(Un.nil,d);else for(let f of r)(0,Ln.checkReportMissingProp)(t,f)}function l(){let f=e.let("missing");if(c||s){let m=e.let("valid",!0);t.block$data(m,()=>p(f,m)),t.ok(m)}else e.if((0,Ln.checkMissingProp)(t,r,f)),(0,Ln.reportMissingProp)(t,f),e.else()}function d(){e.forOf("prop",n,f=>{t.setParams({missingProperty:f}),e.if((0,Ln.noPropertyInData)(e,o,f,a.ownProperties),()=>t.error())})}function p(f,m){t.setParams({missingProperty:f}),e.forOf(f,n,()=>{e.assign(m,(0,Ln.propertyInData)(e,o,f,a.ownProperties)),e.if((0,Un.not)(m),()=>{t.error(),e.break()})},Un.nil)}}};vc.default=Ux});var Wh=w(bc=>{"use strict";Object.defineProperty(bc,"__esModule",{value:!0});var qn=A(),qx={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,qn.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,qn._)`{limit: ${t}}`},Zx={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:qx,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?qn.operators.GT:qn.operators.LT;t.fail$data((0,qn._)`${r}.length ${o} ${n}`)}};bc.default=Zx});var gs=w(Ec=>{"use strict";Object.defineProperty(Ec,"__esModule",{value:!0});var Vh=Wa();Vh.code='require("ajv/dist/runtime/equal").default';Ec.default=Vh});var Gh=w(kc=>{"use strict";Object.defineProperty(kc,"__esModule",{value:!0});var wc=Pn(),ye=A(),Fx=q(),Hx=gs(),Wx={message:({params:{i:t,j:e}})=>(0,ye.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,ye._)`{i: ${t}, j: ${e}}`},Vx={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:Wx,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,wc.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,ye._)`${i} === false`),t.ok(c);function l(){let m=e.let("i",(0,ye._)`${r}.length`),_=e.let("j");t.setParams({i:m,j:_}),e.assign(c,!0),e.if((0,ye._)`${m} > 1`,()=>(d()?p:f)(m,_))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function p(m,_){let S=e.name("item"),b=(0,wc.checkDataTypes)(u,S,a.opts.strictNumbers,wc.DataType.Wrong),E=e.const("indices",(0,ye._)`{}`);e.for((0,ye._)`;${m}--;`,()=>{e.let(S,(0,ye._)`${r}[${m}]`),e.if(b,(0,ye._)`continue`),u.length>1&&e.if((0,ye._)`typeof ${S} == "string"`,(0,ye._)`${S} += "_"`),e.if((0,ye._)`typeof ${E}[${S}] == "number"`,()=>{e.assign(_,(0,ye._)`${E}[${S}]`),t.error(),e.assign(c,!1).break()}).code((0,ye._)`${E}[${S}] = ${m}`)})}function f(m,_){let S=(0,Fx.useFunc)(e,Hx.default),b=e.name("outer");e.label(b).for((0,ye._)`;${m}--;`,()=>e.for((0,ye._)`${_} = ${m}; ${_}--;`,()=>e.if((0,ye._)`${S}(${r}[${m}], ${r}[${_}])`,()=>{t.error(),e.assign(c,!1).break(b)})))}}};kc.default=Vx});var Kh=w($c=>{"use strict";Object.defineProperty($c,"__esModule",{value:!0});var xc=A(),Gx=q(),Kx=gs(),Jx={message:"must be equal to constant",params:({schemaCode:t})=>(0,xc._)`{allowedValue: ${t}}`},Bx={keyword:"const",$data:!0,error:Jx,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,xc._)`!${(0,Gx.useFunc)(e,Kx.default)}(${r}, ${o})`):t.fail((0,xc._)`${s} !== ${r}`)}};$c.default=Bx});var Jh=w(Pc=>{"use strict";Object.defineProperty(Pc,"__esModule",{value:!0});var Zn=A(),Yx=q(),Xx=gs(),Qx={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Zn._)`{allowedValues: ${t}}`},e0={keyword:"enum",schemaType:"array",$data:!0,error:Qx,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,Yx.useFunc)(e,Xx.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 f=e.const("vSchema",s);l=(0,Zn.or)(...o.map((m,_)=>p(f,_)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,f=>e.if((0,Zn._)`${u()}(${r}, ${f})`,()=>e.assign(l,!0).break()))}function p(f,m){let _=o[m];return typeof _=="object"&&_!==null?(0,Zn._)`${u()}(${r}, ${f}[${m}])`:(0,Zn._)`${r} === ${_}`}}};Pc.default=e0});var Bh=w(Tc=>{"use strict";Object.defineProperty(Tc,"__esModule",{value:!0});var t0=Nh(),r0=jh(),n0=qh(),o0=Zh(),s0=Fh(),i0=Hh(),a0=Wh(),c0=Gh(),u0=Kh(),l0=Jh(),d0=[t0.default,r0.default,n0.default,o0.default,s0.default,i0.default,a0.default,c0.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},u0.default,l0.default];Tc.default=d0});var Rc=w(Fn=>{"use strict";Object.defineProperty(Fn,"__esModule",{value:!0});Fn.validateAdditionalItems=void 0;var rr=A(),zc=q(),p0={message:({params:{len:t}})=>(0,rr.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,rr._)`{limit: ${t}}`},f0={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:p0,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,zc.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}Yh(t,n)}};function Yh(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,rr._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,rr._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,zc.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,rr._)`${a} <= ${e.length}`);r.if((0,rr.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:zc.Type.Num},u),i.allErrors||r.if((0,rr.not)(u),()=>r.break())})}}Fn.validateAdditionalItems=Yh;Fn.default=f0});var Ic=w(Hn=>{"use strict";Object.defineProperty(Hn,"__esModule",{value:!0});Hn.validateTuple=void 0;var Xh=A(),_s=q(),m0=We(),h0={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return Qh(t,"additionalItems",e);r.items=!0,!(0,_s.alwaysValidSchema)(r,e)&&t.ok((0,m0.validateArray)(t))}};function Qh(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=_s.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,Xh._)`${s}.length`);r.forEach((d,p)=>{(0,_s.alwaysValidSchema)(a,d)||(n.if((0,Xh._)`${u} > ${p}`,()=>t.subschema({keyword:i,schemaProp:p,dataProp:p},c)),t.ok(c))});function l(d){let{opts:p,errSchemaPath:f}=a,m=r.length,_=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(p.strictTuples&&!_){let S=`"${i}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${f}"`;(0,_s.checkStrictMode)(a,S,p.strictTuples)}}}Hn.validateTuple=Qh;Hn.default=h0});var eg=w(Oc=>{"use strict";Object.defineProperty(Oc,"__esModule",{value:!0});var g0=Ic(),_0={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,g0.validateTuple)(t,"items")};Oc.default=_0});var rg=w(Ac=>{"use strict";Object.defineProperty(Ac,"__esModule",{value:!0});var tg=A(),y0=q(),S0=We(),v0=Rc(),b0={message:({params:{len:t}})=>(0,tg.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,tg._)`{limit: ${t}}`},E0={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:b0,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,y0.alwaysValidSchema)(n,e)&&(o?(0,v0.validateAdditionalItems)(t,o):t.ok((0,S0.validateArray)(t)))}};Ac.default=E0});var ng=w(Mc=>{"use strict";Object.defineProperty(Mc,"__esModule",{value:!0});var Ge=A(),ys=q(),w0={message:({params:{min:t,max:e}})=>e===void 0?(0,Ge.str)`must contain at least ${t} valid item(s)`:(0,Ge.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,Ge._)`{minContains: ${t}}`:(0,Ge._)`{minContains: ${t}, maxContains: ${e}}`},k0={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:w0,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,Ge._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,ys.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,ys.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,ys.alwaysValidSchema)(s,r)){let _=(0,Ge._)`${l} >= ${i}`;a!==void 0&&(_=(0,Ge._)`${_} && ${l} <= ${a}`),t.pass(_);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?f(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,Ge._)`${o}.length > 0`,p)):(e.let(d,!1),p()),t.result(d,()=>t.reset());function p(){let _=e.name("_valid"),S=e.let("count",0);f(_,()=>e.if(_,()=>m(S)))}function f(_,S){e.forRange("i",0,l,b=>{t.subschema({keyword:"contains",dataProp:b,dataPropType:ys.Type.Num,compositeRule:!0},_),S()})}function m(_){e.code((0,Ge._)`${_}++`),a===void 0?e.if((0,Ge._)`${_} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,Ge._)`${_} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,Ge._)`${_} >= ${i}`,()=>e.assign(d,!0)))}}};Mc.default=k0});var ig=w(at=>{"use strict";Object.defineProperty(at,"__esModule",{value:!0});at.validateSchemaDeps=at.validatePropertyDeps=at.error=void 0;var Cc=A(),x0=q(),Wn=We();at.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,Cc.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,Cc._)`{property: ${t},
|
|
7
7
|
missingProperty: ${n},
|
|
8
8
|
depsCount: ${e},
|
|
9
|
-
deps: ${r}}`};var $0={keyword:"dependencies",type:"object",schemaType:"object",error:at.error,code(t){let[e,r]=P0(t);og(t,e),sg(t,r)}};function P0({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 og(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,Wn.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,Wn.checkReportMissingProp)(t,u)}):(r.if((0,Cc._)`${c} && (${(0,Wn.checkMissingProp)(t,a,s)})`),(0,Wn.reportMissingProp)(t,s),r.else())}}at.validatePropertyDeps=og;function sg(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,x0.alwaysValidSchema)(s,e[a])||(r.if((0,Wn.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))}at.validateSchemaDeps=sg;at.default=$0});var cg=w(Nc=>{"use strict";Object.defineProperty(Nc,"__esModule",{value:!0});var ag=A(),T0=q(),z0={message:"property name must be valid",params:({params:t})=>(0,ag._)`{propertyName: ${t.propertyName}}`},R0={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:z0,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,T0.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,ag.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};Nc.default=R0});var jc=w(Dc=>{"use strict";Object.defineProperty(Dc,"__esModule",{value:!0});var Ss=We(),tt=A(),I0=vt(),vs=q(),O0={message:"must NOT have additional properties",params:({params:t})=>(0,tt._)`{additionalProperty: ${t.additionalProperty}}`},A0={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:O0,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,vs.alwaysValidSchema)(i,r))return;let u=(0,Ss.allSchemaProperties)(n.properties),l=(0,Ss.allSchemaProperties)(n.patternProperties);d(),t.ok((0,tt._)`${s} === ${I0.default.errors}`);function d(){e.forIn("key",o,S=>{!u.length&&!l.length?m(S):e.if(p(S),()=>m(S))})}function p(S){let b;if(u.length>8){let E=(0,vs.schemaRefOrVal)(i,n.properties,"properties");b=(0,Ss.isOwnProperty)(e,E,S)}else u.length?b=(0,tt.or)(...u.map(E=>(0,tt._)`${S} === ${E}`)):b=tt.nil;return l.length&&(b=(0,tt.or)(b,...l.map(E=>(0,tt._)`${(0,Ss.usePattern)(t,E)}.test(${S})`))),(0,tt.not)(b)}function f(S){e.code((0,tt._)`delete ${o}[${S}]`)}function m(S){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){f(S);return}if(r===!1){t.setParams({additionalProperty:S}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,vs.alwaysValidSchema)(i,r)){let b=e.name("valid");c.removeAdditional==="failing"?(_(S,b,!1),e.if((0,tt.not)(b),()=>{t.reset(),f(S)})):(_(S,b),a||e.if((0,tt.not)(b),()=>e.break()))}}function _(S,b,E){let v={keyword:"additionalProperties",dataProp:S,dataPropType:vs.Type.Str};E===!1&&Object.assign(v,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(v,b)}}};Dc.default=A0});var dg=w(Uc=>{"use strict";Object.defineProperty(Uc,"__esModule",{value:!0});var M0=In(),ug=We(),Lc=q(),lg=jc(),C0={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&&lg.default.code(new M0.KeywordCxt(s,lg.default,"additionalProperties"));let i=(0,ug.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=Lc.mergeEvaluated.props(e,(0,Lc.toHash)(i),s.props));let a=i.filter(d=>!(0,Lc.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,ug.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)}}};Uc.default=C0});var hg=w(qc=>{"use strict";Object.defineProperty(qc,"__esModule",{value:!0});var pg=We(),bs=A(),fg=q(),mg=q(),N0={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,pg.allSchemaProperties)(r),c=a.filter(_=>(0,fg.alwaysValidSchema)(s,r[_]));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 bs.Name)&&(s.props=(0,mg.evaluatedPropsToName)(e,s.props));let{props:d}=s;p();function p(){for(let _ of a)u&&f(_),s.allErrors?m(_):(e.var(l,!0),m(_),e.if(l))}function f(_){for(let S in u)new RegExp(_).test(S)&&(0,fg.checkStrictMode)(s,`property ${S} matches pattern ${_} (use allowMatchingProperties)`)}function m(_){e.forIn("key",n,S=>{e.if((0,bs._)`${(0,pg.usePattern)(t,_)}.test(${S})`,()=>{let b=c.includes(_);b||t.subschema({keyword:"patternProperties",schemaProp:_,dataProp:S,dataPropType:mg.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,bs._)`${d}[${S}]`,!0):!b&&!s.allErrors&&e.if((0,bs.not)(l),()=>e.break())})})}}};qc.default=N0});var gg=w(Zc=>{"use strict";Object.defineProperty(Zc,"__esModule",{value:!0});var D0=q(),j0={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,D0.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"}};Zc.default=j0});var _g=w(Fc=>{"use strict";Object.defineProperty(Fc,"__esModule",{value:!0});var L0=We(),U0={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:L0.validateUnion,error:{message:"must match a schema in anyOf"}};Fc.default=U0});var yg=w(Hc=>{"use strict";Object.defineProperty(Hc,"__esModule",{value:!0});var Es=A(),q0=q(),Z0={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Es._)`{passingSchemas: ${t.passing}}`},F0={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:Z0,code(t){let{gen:e,schema:r,parentSchema:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(o.opts.discriminator&&n.discriminator)return;let s=r,i=e.let("valid",!1),a=e.let("passing",null),c=e.name("_valid");t.setParams({passing:a}),e.block(u),t.result(i,()=>t.reset(),()=>t.error(!0));function u(){s.forEach((l,d)=>{let p;(0,q0.alwaysValidSchema)(o,l)?e.var(c,!0):p=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Es._)`${c} && ${i}`).assign(i,!1).assign(a,(0,Es._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),p&&t.mergeEvaluated(p,Es.Name)})})}}};Hc.default=F0});var Sg=w(Wc=>{"use strict";Object.defineProperty(Wc,"__esModule",{value:!0});var H0=q(),W0={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,H0.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Wc.default=W0});var Eg=w(Vc=>{"use strict";Object.defineProperty(Vc,"__esModule",{value:!0});var ws=A(),bg=q(),V0={message:({params:t})=>(0,ws.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,ws._)`{failingKeyword: ${t.ifClause}}`},G0={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:V0,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,bg.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=vg(n,"then"),s=vg(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,ws.not)(a),u("else"));t.pass(i,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(l)}function u(l,d){return()=>{let p=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(p,i),d?e.assign(d,(0,ws._)`${l}`):t.setParams({ifClause:l})}}}};function vg(t,e){let r=t.schema[e];return r!==void 0&&!(0,bg.alwaysValidSchema)(t,r)}Vc.default=G0});var wg=w(Gc=>{"use strict";Object.defineProperty(Gc,"__esModule",{value:!0});var K0=q(),J0={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,K0.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Gc.default=J0});var kg=w(Kc=>{"use strict";Object.defineProperty(Kc,"__esModule",{value:!0});var B0=Rc(),Y0=eg(),X0=Ic(),Q0=rg(),e$=ng(),t$=ig(),r$=cg(),n$=jc(),o$=dg(),s$=hg(),i$=gg(),a$=_g(),c$=yg(),u$=Sg(),l$=Eg(),d$=wg();function p$(t=!1){let e=[i$.default,a$.default,c$.default,u$.default,l$.default,d$.default,r$.default,n$.default,t$.default,o$.default,s$.default];return t?e.push(Y0.default,Q0.default):e.push(B0.default,X0.default),e.push(e$.default),e}Kc.default=p$});var xg=w(Jc=>{"use strict";Object.defineProperty(Jc,"__esModule",{value:!0});var ae=A(),f$={message:({schemaCode:t})=>(0,ae.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,ae._)`{format: ${t}}`},m$={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:f$,code(t,e){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;o?p():f();function p(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),_=r.const("fDef",(0,ae._)`${m}[${i}]`),S=r.let("fType"),b=r.let("format");r.if((0,ae._)`typeof ${_} == "object" && !(${_} instanceof RegExp)`,()=>r.assign(S,(0,ae._)`${_}.type || "string"`).assign(b,(0,ae._)`${_}.validate`),()=>r.assign(S,(0,ae._)`"string"`).assign(b,_)),t.fail$data((0,ae.or)(E(),v()));function E(){return c.strictSchema===!1?ae.nil:(0,ae._)`${i} && !${b}`}function v(){let $=l.$async?(0,ae._)`(${_}.async ? await ${b}(${n}) : ${b}(${n}))`:(0,ae._)`${b}(${n})`,x=(0,ae._)`(typeof ${b} == "function" ? ${$} : ${b}.test(${n}))`;return(0,ae._)`${b} && ${b} !== true && ${S} === ${e} && !${x}`}}function f(){let m=d.formats[s];if(!m){E();return}if(m===!0)return;let[_,S,b]=v(m);_===e&&t.pass($());function E(){if(c.strictSchema===!1){d.logger.warn(x());return}throw new Error(x());function x(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function v(x){let ve=x instanceof RegExp?(0,ae.regexpCode)(x):c.code.formats?(0,ae._)`${c.code.formats}${(0,ae.getProperty)(s)}`:void 0,xe=r.scopeValue("formats",{key:s,ref:x,code:ve});return typeof x=="object"&&!(x instanceof RegExp)?[x.type||"string",x.validate,(0,ae._)`${xe}.validate`]:["string",x,xe]}function $(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,ae._)`await ${b}(${n})`}return typeof S=="function"?(0,ae._)`${b}(${n})`:(0,ae._)`${b}.test(${n})`}}}};Jc.default=m$});var $g=w(Bc=>{"use strict";Object.defineProperty(Bc,"__esModule",{value:!0});var h$=xg(),g$=[h$.default];Bc.default=g$});var Pg=w(Ir=>{"use strict";Object.defineProperty(Ir,"__esModule",{value:!0});Ir.contentVocabulary=Ir.metadataVocabulary=void 0;Ir.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Ir.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var zg=w(Yc=>{"use strict";Object.defineProperty(Yc,"__esModule",{value:!0});var _$=Nh(),y$=Bh(),S$=kg(),v$=$g(),Tg=Pg(),b$=[_$.default,y$.default,(0,S$.default)(),v$.default,Tg.metadataVocabulary,Tg.contentVocabulary];Yc.default=b$});var Ig=w(ks=>{"use strict";Object.defineProperty(ks,"__esModule",{value:!0});ks.DiscrError=void 0;var Rg;(function(t){t.Tag="tag",t.Mapping="mapping"})(Rg||(ks.DiscrError=Rg={}))});var Ag=w(Qc=>{"use strict";Object.defineProperty(Qc,"__esModule",{value:!0});var Or=A(),Xc=Ig(),Og=as(),E$=On(),w$=q(),k$={message:({params:{discrError:t,tagName:e}})=>t===Xc.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Or._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},x$={keyword:"discriminator",type:"object",schemaType:"object",error:k$,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,Or._)`${r}${(0,Or.getProperty)(a)}`);e.if((0,Or._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:Xc.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let f=p();e.if(!1);for(let m in f)e.elseIf((0,Or._)`${u} === ${m}`),e.assign(c,d(f[m]));e.else(),t.error(!1,{discrError:Xc.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(f){let m=e.name("valid"),_=t.subschema({keyword:"oneOf",schemaProp:f},m);return t.mergeEvaluated(_,Or.Name),m}function p(){var f;let m={},_=b(o),S=!0;for(let $=0;$<i.length;$++){let x=i[$];if(x?.$ref&&!(0,w$.schemaHasRulesButRef)(x,s.self.RULES)){let xe=x.$ref;if(x=Og.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,xe),x instanceof Og.SchemaEnv&&(x=x.schema),x===void 0)throw new E$.default(s.opts.uriResolver,s.baseId,xe)}let ve=(f=x?.properties)===null||f===void 0?void 0:f[a];if(typeof ve!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);S=S&&(_||b(x)),E(ve,$)}if(!S)throw new Error(`discriminator: "${a}" must be required`);return m;function b({required:$}){return Array.isArray($)&&$.includes(a)}function E($,x){if($.const)v($.const,x);else if($.enum)for(let ve of $.enum)v(ve,x);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function v($,x){if(typeof $!="string"||$ in m)throw new Error(`discriminator: "${a}" values must be unique strings`);m[$]=x}}}};Qc.default=x$});var Mg=w((XC,$$)=>{$$.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 tu=w((te,eu)=>{"use strict";Object.defineProperty(te,"__esModule",{value:!0});te.MissingRefError=te.ValidationError=te.CodeGen=te.Name=te.nil=te.stringify=te.str=te._=te.KeywordCxt=te.Ajv=void 0;var P$=Rh(),T$=zg(),z$=Ag(),Cg=Mg(),R$=["/properties"],xs="http://json-schema.org/draft-07/schema",Ar=class extends P$.default{_addVocabularies(){super._addVocabularies(),T$.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(z$.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Cg,R$):Cg;this.addMetaSchema(e,xs,!1),this.refs["http://json-schema.org/schema"]=xs}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(xs)?xs:void 0)}};te.Ajv=Ar;eu.exports=te=Ar;eu.exports.Ajv=Ar;Object.defineProperty(te,"__esModule",{value:!0});te.default=Ar;var I$=In();Object.defineProperty(te,"KeywordCxt",{enumerable:!0,get:function(){return I$.KeywordCxt}});var Mr=A();Object.defineProperty(te,"_",{enumerable:!0,get:function(){return Mr._}});Object.defineProperty(te,"str",{enumerable:!0,get:function(){return Mr.str}});Object.defineProperty(te,"stringify",{enumerable:!0,get:function(){return Mr.stringify}});Object.defineProperty(te,"nil",{enumerable:!0,get:function(){return Mr.nil}});Object.defineProperty(te,"Name",{enumerable:!0,get:function(){return Mr.Name}});Object.defineProperty(te,"CodeGen",{enumerable:!0,get:function(){return Mr.CodeGen}});var O$=ss();Object.defineProperty(te,"ValidationError",{enumerable:!0,get:function(){return O$.default}});var A$=On();Object.defineProperty(te,"MissingRefError",{enumerable:!0,get:function(){return A$.default}})});var Fg=w(ut=>{"use strict";Object.defineProperty(ut,"__esModule",{value:!0});ut.formatNames=ut.fastFormats=ut.fullFormats=void 0;function ct(t,e){return{validate:t,compare:e}}ut.fullFormats={date:ct(Lg,su),time:ct(nu(!0),iu),"date-time":ct(Ng(!0),qg),"iso-time":ct(nu(),Ug),"iso-date-time":ct(Ng(),Zg),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:L$,"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:V$,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:U$,int32:{type:"number",validate:F$},int64:{type:"number",validate:H$},float:{type:"number",validate:jg},double:{type:"number",validate:jg},password:!0,binary:!0};ut.fastFormats={...ut.fullFormats,date:ct(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,su),time:ct(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,iu),"date-time":ct(/^\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,qg),"iso-time":ct(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Ug),"iso-date-time":ct(/^\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,Zg),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};ut.formatNames=Object.keys(ut.fullFormats);function M$(t){return t%4===0&&(t%100!==0||t%400===0)}var C$=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,N$=[0,31,28,31,30,31,30,31,31,30,31,30,31];function Lg(t){let e=C$.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&&M$(r)?29:N$[n])}function su(t,e){if(t&&e)return t>e?1:t<e?-1:0}var ru=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function nu(t){return function(r){let n=ru.exec(r);if(!n)return!1;let o=+n[1],s=+n[2],i=+n[3],a=n[4],c=n[5]==="-"?-1:1,u=+(n[6]||0),l=+(n[7]||0);if(u>23||l>59||t&&!a)return!1;if(o<=23&&s<=59&&i<60)return!0;let d=s-l*c,p=o-u*c-(d<0?1:0);return(p===23||p===-1)&&(d===59||d===-1)&&i<61}}function iu(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 Ug(t,e){if(!(t&&e))return;let r=ru.exec(t),n=ru.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 ou=/t|\s/i;function Ng(t){let e=nu(t);return function(n){let o=n.split(ou);return o.length===2&&Lg(o[0])&&e(o[1])}}function qg(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function Zg(t,e){if(!(t&&e))return;let[r,n]=t.split(ou),[o,s]=e.split(ou),i=su(r,o);if(i!==void 0)return i||iu(n,s)}var D$=/\/|:/,j$=/^(?:[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 L$(t){return D$.test(t)&&j$.test(t)}var Dg=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function U$(t){return Dg.lastIndex=0,Dg.test(t)}var q$=-(2**31),Z$=2**31-1;function F$(t){return Number.isInteger(t)&&t<=Z$&&t>=q$}function H$(t){return Number.isInteger(t)}function jg(){return!0}var W$=/[^\\]\\Z/;function V$(t){if(W$.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var Hg=w(Cr=>{"use strict";Object.defineProperty(Cr,"__esModule",{value:!0});Cr.formatLimitDefinition=void 0;var G$=tu(),rt=A(),Lt=rt.operators,$s={formatMaximum:{okStr:"<=",ok:Lt.LTE,fail:Lt.GT},formatMinimum:{okStr:">=",ok:Lt.GTE,fail:Lt.LT},formatExclusiveMaximum:{okStr:"<",ok:Lt.LT,fail:Lt.GTE},formatExclusiveMinimum:{okStr:">",ok:Lt.GT,fail:Lt.LTE}},K$={message:({keyword:t,schemaCode:e})=>(0,rt.str)`should be ${$s[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,rt._)`{comparison: ${$s[t].okStr}, limit: ${e}}`};Cr.formatLimitDefinition={keyword:Object.keys($s),type:"string",schemaType:"string",$data:!0,error:K$,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 G$.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let p=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),f=e.const("fmt",(0,rt._)`${p}[${c.schemaCode}]`);t.fail$data((0,rt.or)((0,rt._)`typeof ${f} != "object"`,(0,rt._)`${f} instanceof RegExp`,(0,rt._)`typeof ${f}.compare != "function"`,d(f)))}function l(){let p=c.schema,f=a.formats[p];if(!f||f===!0)return;if(typeof f!="object"||f instanceof RegExp||typeof f.compare!="function")throw new Error(`"${o}": format "${p}" does not define "compare" function`);let m=e.scopeValue("formats",{key:p,ref:f,code:i.code.formats?(0,rt._)`${i.code.formats}${(0,rt.getProperty)(p)}`:void 0});t.fail$data(d(m))}function d(p){return(0,rt._)`${p}.compare(${r}, ${n}) ${$s[o].fail} 0`}},dependencies:["format"]};var J$=t=>(t.addKeyword(Cr.formatLimitDefinition),t);Cr.default=J$});var Kg=w((Vn,Gg)=>{"use strict";Object.defineProperty(Vn,"__esModule",{value:!0});var Nr=Fg(),B$=Hg(),au=A(),Wg=new au.Name("fullFormats"),Y$=new au.Name("fastFormats"),cu=(t,e={keywords:!0})=>{if(Array.isArray(e))return Vg(t,e,Nr.fullFormats,Wg),t;let[r,n]=e.mode==="fast"?[Nr.fastFormats,Y$]:[Nr.fullFormats,Wg],o=e.formats||Nr.formatNames;return Vg(t,o,r,n),e.keywords&&(0,B$.default)(t),t};cu.get=(t,e="full")=>{let n=(e==="fast"?Nr.fastFormats:Nr.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function Vg(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,au._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}Gg.exports=Vn=cu;Object.defineProperty(Vn,"__esModule",{value:!0});Vn.default=cu});var De=require("fs"),ri=require("path");var D=require("path"),Xs=require("os"),Ie=require("fs");var Uu=require("url");var $y={};function _y(){return typeof __dirname<"u"?__dirname:(0,D.dirname)((0,Uu.fileURLToPath)($y.url))}var wT=_y();function Qs(){let t=process.env.KEEPMIND_DATA_DIR??process.env.CLAUDE_MEM_DATA_DIR;if(t)return t;let e=(0,D.join)((0,Xs.homedir)(),".keepmind"),r=(0,D.join)(e,"settings.json");try{if((0,Ie.existsSync)(r)){let n=JSON.parse((0,Ie.readFileSync)(r,"utf-8")),o=n.env??n,s=o.KEEPMIND_DATA_DIR??o.CLAUDE_MEM_DATA_DIR;if(s)return s}}catch{}return e}var B=Qs(),co=process.env.CLAUDE_CONFIG_DIR||(0,D.join)((0,Xs.homedir)(),".claude"),ei=(0,D.join)(co,"plugins","marketplaces","keepmind"),yy=(0,D.join)(B,"archives"),Sy=(0,D.join)(B,"logs"),vy=(0,D.join)(B,"trash"),by=(0,D.join)(B,"backups"),Ey=(0,D.join)(B,"modes"),qu=(0,D.join)(B,"settings.json"),ar=(0,D.join)(B,"keepmind.db"),Fr=(0,D.join)(B,"claude-mem.db"),wy=(0,D.join)(B,"vector-db"),Zu=(0,D.join)(B,"observer-sessions"),kT=(0,D.basename)(Zu),xT=(0,D.join)(co,"settings.json"),$T=(0,D.join)(co,"commands"),PT=(0,D.join)(co,"CLAUDE.md");function ky(){try{if((0,Ie.existsSync)(ar)||!(0,Ie.existsSync)(Fr))return(0,Ie.existsSync)(ar);for(let t of["","-wal","-shm"]){let e=Fr+t,r=ar+t;(0,Ie.existsSync)(e)&&!(0,Ie.existsSync)(r)&&(0,Ie.renameSync)(e,r)}return y.info("DB","Migrated legacy claude-mem.db to keepmind.db",{from:Fr,to:ar}),!0}catch(t){return y.warn("DB","Could not rename legacy claude-mem.db to keepmind.db (file may be locked) \u2014 falling back to legacy path",{},t instanceof Error?t:new Error(String(t))),!1}}function xy(){return ky(),!(0,Ie.existsSync)(ar)&&(0,Ie.existsSync)(Fr)?Fr:ar}var $e={dataDir:()=>B,workerPid:()=>(0,D.join)(B,"worker.pid"),workerPort:()=>(0,D.join)(B,"worker.port"),serverPid:()=>(0,D.join)(B,".server-beta.pid"),serverPort:()=>(0,D.join)(B,".server-beta.port"),serverRuntime:()=>(0,D.join)(B,".server-beta.runtime.json"),settings:()=>(0,D.join)(B,"settings.json"),database:()=>xy(),chroma:()=>(0,D.join)(B,"chroma"),combinedCerts:()=>(0,D.join)(B,"combined_certs.pem"),transcriptsConfig:()=>(0,D.join)(B,"transcript-watch.json"),transcriptsState:()=>(0,D.join)(B,"transcript-watch-state.json"),corpora:()=>(0,D.join)(B,"corpora"),supervisorRegistry:()=>(0,D.join)(B,"supervisor.json"),envFile:()=>(0,D.join)(B,".env"),logsDir:()=>Sy,archives:()=>yy,trash:()=>vy,backups:()=>by,modes:()=>Ey,vectorDb:()=>wy,observerSessions:()=>Zu};var Py=null;function Ty(t){return(Py??process.stderr.write.bind(process.stderr))(t)}function uo(t){Ty(t)}var zy=14,ni=(s=>(s[s.DEBUG=0]="DEBUG",s[s.INFO=1]="INFO",s[s.WARN=2]="WARN",s[s.ERROR=3]="ERROR",s[s.SILENT=4]="SILENT",s))(ni||{}),ti=null,oi=class{level=null;useColor;logFilePath=null;logFileInitialized=!1;constructor(){this.useColor=process.stdout.isTTY??!1}ensureLogFileInitialized(){if(!this.logFileInitialized){this.logFileInitialized=!0;try{let e=$e.logsDir();(0,De.existsSync)(e)||(0,De.mkdirSync)(e,{recursive:!0});let r=new Date().toISOString().split("T")[0];this.logFilePath=(0,ri.join)(e,`keepmind-${r}.log`),this.pruneOldLogs(e)}catch(e){console.error("[LOGGER] Failed to initialize log file:",e instanceof Error?e.message:String(e)),this.logFilePath=null}}}pruneOldLogs(e){try{let r=Date.now()-zy*24*60*60*1e3;for(let n of(0,De.readdirSync)(e)){let o=/^keepmind-(\d{4}-\d{2}-\d{2})\.log$/.exec(n);if(!o)continue;let s=Date.parse(o[1]);if(Number.isFinite(s)&&s<r)try{(0,De.unlinkSync)((0,ri.join)(e,n))}catch{}}}catch{}}getLevel(){if(this.level===null)try{let e=$e.settings();if((0,De.existsSync)(e)){let r=(0,De.readFileSync)(e,"utf-8"),o=(JSON.parse(r).CLAUDE_MEM_LOG_LEVEL||"INFO").toUpperCase();this.level=ni[o]??1}else this.level=1}catch(e){console.error("[LOGGER] Failed to load log level from settings:",e instanceof Error?e.message:String(e)),this.level=1}return this.level}formatData(e){if(e==null)return"";if(typeof e=="string")return e;if(typeof e=="number"||typeof e=="boolean")return e.toString();if(typeof e=="object"){if(e instanceof Error)return this.getLevel()===0?`${e.message}
|
|
9
|
+
deps: ${r}}`};var $0={keyword:"dependencies",type:"object",schemaType:"object",error:at.error,code(t){let[e,r]=P0(t);og(t,e),sg(t,r)}};function P0({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 og(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,Wn.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,Wn.checkReportMissingProp)(t,u)}):(r.if((0,Cc._)`${c} && (${(0,Wn.checkMissingProp)(t,a,s)})`),(0,Wn.reportMissingProp)(t,s),r.else())}}at.validatePropertyDeps=og;function sg(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,x0.alwaysValidSchema)(s,e[a])||(r.if((0,Wn.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))}at.validateSchemaDeps=sg;at.default=$0});var cg=w(Dc=>{"use strict";Object.defineProperty(Dc,"__esModule",{value:!0});var ag=A(),T0=q(),z0={message:"property name must be valid",params:({params:t})=>(0,ag._)`{propertyName: ${t.propertyName}}`},R0={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:z0,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,T0.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,ag.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};Dc.default=R0});var jc=w(Nc=>{"use strict";Object.defineProperty(Nc,"__esModule",{value:!0});var Ss=We(),tt=A(),I0=vt(),vs=q(),O0={message:"must NOT have additional properties",params:({params:t})=>(0,tt._)`{additionalProperty: ${t.additionalProperty}}`},A0={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:O0,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,vs.alwaysValidSchema)(i,r))return;let u=(0,Ss.allSchemaProperties)(n.properties),l=(0,Ss.allSchemaProperties)(n.patternProperties);d(),t.ok((0,tt._)`${s} === ${I0.default.errors}`);function d(){e.forIn("key",o,S=>{!u.length&&!l.length?m(S):e.if(p(S),()=>m(S))})}function p(S){let b;if(u.length>8){let E=(0,vs.schemaRefOrVal)(i,n.properties,"properties");b=(0,Ss.isOwnProperty)(e,E,S)}else u.length?b=(0,tt.or)(...u.map(E=>(0,tt._)`${S} === ${E}`)):b=tt.nil;return l.length&&(b=(0,tt.or)(b,...l.map(E=>(0,tt._)`${(0,Ss.usePattern)(t,E)}.test(${S})`))),(0,tt.not)(b)}function f(S){e.code((0,tt._)`delete ${o}[${S}]`)}function m(S){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){f(S);return}if(r===!1){t.setParams({additionalProperty:S}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,vs.alwaysValidSchema)(i,r)){let b=e.name("valid");c.removeAdditional==="failing"?(_(S,b,!1),e.if((0,tt.not)(b),()=>{t.reset(),f(S)})):(_(S,b),a||e.if((0,tt.not)(b),()=>e.break()))}}function _(S,b,E){let v={keyword:"additionalProperties",dataProp:S,dataPropType:vs.Type.Str};E===!1&&Object.assign(v,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(v,b)}}};Nc.default=A0});var dg=w(Uc=>{"use strict";Object.defineProperty(Uc,"__esModule",{value:!0});var M0=In(),ug=We(),Lc=q(),lg=jc(),C0={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&&lg.default.code(new M0.KeywordCxt(s,lg.default,"additionalProperties"));let i=(0,ug.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=Lc.mergeEvaluated.props(e,(0,Lc.toHash)(i),s.props));let a=i.filter(d=>!(0,Lc.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,ug.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)}}};Uc.default=C0});var hg=w(qc=>{"use strict";Object.defineProperty(qc,"__esModule",{value:!0});var pg=We(),bs=A(),fg=q(),mg=q(),D0={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,pg.allSchemaProperties)(r),c=a.filter(_=>(0,fg.alwaysValidSchema)(s,r[_]));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 bs.Name)&&(s.props=(0,mg.evaluatedPropsToName)(e,s.props));let{props:d}=s;p();function p(){for(let _ of a)u&&f(_),s.allErrors?m(_):(e.var(l,!0),m(_),e.if(l))}function f(_){for(let S in u)new RegExp(_).test(S)&&(0,fg.checkStrictMode)(s,`property ${S} matches pattern ${_} (use allowMatchingProperties)`)}function m(_){e.forIn("key",n,S=>{e.if((0,bs._)`${(0,pg.usePattern)(t,_)}.test(${S})`,()=>{let b=c.includes(_);b||t.subschema({keyword:"patternProperties",schemaProp:_,dataProp:S,dataPropType:mg.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,bs._)`${d}[${S}]`,!0):!b&&!s.allErrors&&e.if((0,bs.not)(l),()=>e.break())})})}}};qc.default=D0});var gg=w(Zc=>{"use strict";Object.defineProperty(Zc,"__esModule",{value:!0});var N0=q(),j0={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,N0.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"}};Zc.default=j0});var _g=w(Fc=>{"use strict";Object.defineProperty(Fc,"__esModule",{value:!0});var L0=We(),U0={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:L0.validateUnion,error:{message:"must match a schema in anyOf"}};Fc.default=U0});var yg=w(Hc=>{"use strict";Object.defineProperty(Hc,"__esModule",{value:!0});var Es=A(),q0=q(),Z0={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Es._)`{passingSchemas: ${t.passing}}`},F0={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:Z0,code(t){let{gen:e,schema:r,parentSchema:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(o.opts.discriminator&&n.discriminator)return;let s=r,i=e.let("valid",!1),a=e.let("passing",null),c=e.name("_valid");t.setParams({passing:a}),e.block(u),t.result(i,()=>t.reset(),()=>t.error(!0));function u(){s.forEach((l,d)=>{let p;(0,q0.alwaysValidSchema)(o,l)?e.var(c,!0):p=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Es._)`${c} && ${i}`).assign(i,!1).assign(a,(0,Es._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),p&&t.mergeEvaluated(p,Es.Name)})})}}};Hc.default=F0});var Sg=w(Wc=>{"use strict";Object.defineProperty(Wc,"__esModule",{value:!0});var H0=q(),W0={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,H0.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Wc.default=W0});var Eg=w(Vc=>{"use strict";Object.defineProperty(Vc,"__esModule",{value:!0});var ws=A(),bg=q(),V0={message:({params:t})=>(0,ws.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,ws._)`{failingKeyword: ${t.ifClause}}`},G0={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:V0,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,bg.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=vg(n,"then"),s=vg(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,ws.not)(a),u("else"));t.pass(i,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(l)}function u(l,d){return()=>{let p=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(p,i),d?e.assign(d,(0,ws._)`${l}`):t.setParams({ifClause:l})}}}};function vg(t,e){let r=t.schema[e];return r!==void 0&&!(0,bg.alwaysValidSchema)(t,r)}Vc.default=G0});var wg=w(Gc=>{"use strict";Object.defineProperty(Gc,"__esModule",{value:!0});var K0=q(),J0={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,K0.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Gc.default=J0});var kg=w(Kc=>{"use strict";Object.defineProperty(Kc,"__esModule",{value:!0});var B0=Rc(),Y0=eg(),X0=Ic(),Q0=rg(),e$=ng(),t$=ig(),r$=cg(),n$=jc(),o$=dg(),s$=hg(),i$=gg(),a$=_g(),c$=yg(),u$=Sg(),l$=Eg(),d$=wg();function p$(t=!1){let e=[i$.default,a$.default,c$.default,u$.default,l$.default,d$.default,r$.default,n$.default,t$.default,o$.default,s$.default];return t?e.push(Y0.default,Q0.default):e.push(B0.default,X0.default),e.push(e$.default),e}Kc.default=p$});var xg=w(Jc=>{"use strict";Object.defineProperty(Jc,"__esModule",{value:!0});var ae=A(),f$={message:({schemaCode:t})=>(0,ae.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,ae._)`{format: ${t}}`},m$={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:f$,code(t,e){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;o?p():f();function p(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),_=r.const("fDef",(0,ae._)`${m}[${i}]`),S=r.let("fType"),b=r.let("format");r.if((0,ae._)`typeof ${_} == "object" && !(${_} instanceof RegExp)`,()=>r.assign(S,(0,ae._)`${_}.type || "string"`).assign(b,(0,ae._)`${_}.validate`),()=>r.assign(S,(0,ae._)`"string"`).assign(b,_)),t.fail$data((0,ae.or)(E(),v()));function E(){return c.strictSchema===!1?ae.nil:(0,ae._)`${i} && !${b}`}function v(){let $=l.$async?(0,ae._)`(${_}.async ? await ${b}(${n}) : ${b}(${n}))`:(0,ae._)`${b}(${n})`,x=(0,ae._)`(typeof ${b} == "function" ? ${$} : ${b}.test(${n}))`;return(0,ae._)`${b} && ${b} !== true && ${S} === ${e} && !${x}`}}function f(){let m=d.formats[s];if(!m){E();return}if(m===!0)return;let[_,S,b]=v(m);_===e&&t.pass($());function E(){if(c.strictSchema===!1){d.logger.warn(x());return}throw new Error(x());function x(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function v(x){let ve=x instanceof RegExp?(0,ae.regexpCode)(x):c.code.formats?(0,ae._)`${c.code.formats}${(0,ae.getProperty)(s)}`:void 0,xe=r.scopeValue("formats",{key:s,ref:x,code:ve});return typeof x=="object"&&!(x instanceof RegExp)?[x.type||"string",x.validate,(0,ae._)`${xe}.validate`]:["string",x,xe]}function $(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,ae._)`await ${b}(${n})`}return typeof S=="function"?(0,ae._)`${b}(${n})`:(0,ae._)`${b}.test(${n})`}}}};Jc.default=m$});var $g=w(Bc=>{"use strict";Object.defineProperty(Bc,"__esModule",{value:!0});var h$=xg(),g$=[h$.default];Bc.default=g$});var Pg=w(Ir=>{"use strict";Object.defineProperty(Ir,"__esModule",{value:!0});Ir.contentVocabulary=Ir.metadataVocabulary=void 0;Ir.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Ir.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var zg=w(Yc=>{"use strict";Object.defineProperty(Yc,"__esModule",{value:!0});var _$=Dh(),y$=Bh(),S$=kg(),v$=$g(),Tg=Pg(),b$=[_$.default,y$.default,(0,S$.default)(),v$.default,Tg.metadataVocabulary,Tg.contentVocabulary];Yc.default=b$});var Ig=w(ks=>{"use strict";Object.defineProperty(ks,"__esModule",{value:!0});ks.DiscrError=void 0;var Rg;(function(t){t.Tag="tag",t.Mapping="mapping"})(Rg||(ks.DiscrError=Rg={}))});var Ag=w(Qc=>{"use strict";Object.defineProperty(Qc,"__esModule",{value:!0});var Or=A(),Xc=Ig(),Og=as(),E$=On(),w$=q(),k$={message:({params:{discrError:t,tagName:e}})=>t===Xc.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Or._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},x$={keyword:"discriminator",type:"object",schemaType:"object",error:k$,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,Or._)`${r}${(0,Or.getProperty)(a)}`);e.if((0,Or._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:Xc.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let f=p();e.if(!1);for(let m in f)e.elseIf((0,Or._)`${u} === ${m}`),e.assign(c,d(f[m]));e.else(),t.error(!1,{discrError:Xc.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(f){let m=e.name("valid"),_=t.subschema({keyword:"oneOf",schemaProp:f},m);return t.mergeEvaluated(_,Or.Name),m}function p(){var f;let m={},_=b(o),S=!0;for(let $=0;$<i.length;$++){let x=i[$];if(x?.$ref&&!(0,w$.schemaHasRulesButRef)(x,s.self.RULES)){let xe=x.$ref;if(x=Og.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,xe),x instanceof Og.SchemaEnv&&(x=x.schema),x===void 0)throw new E$.default(s.opts.uriResolver,s.baseId,xe)}let ve=(f=x?.properties)===null||f===void 0?void 0:f[a];if(typeof ve!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);S=S&&(_||b(x)),E(ve,$)}if(!S)throw new Error(`discriminator: "${a}" must be required`);return m;function b({required:$}){return Array.isArray($)&&$.includes(a)}function E($,x){if($.const)v($.const,x);else if($.enum)for(let ve of $.enum)v(ve,x);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function v($,x){if(typeof $!="string"||$ in m)throw new Error(`discriminator: "${a}" values must be unique strings`);m[$]=x}}}};Qc.default=x$});var Mg=w((XC,$$)=>{$$.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 tu=w((te,eu)=>{"use strict";Object.defineProperty(te,"__esModule",{value:!0});te.MissingRefError=te.ValidationError=te.CodeGen=te.Name=te.nil=te.stringify=te.str=te._=te.KeywordCxt=te.Ajv=void 0;var P$=Rh(),T$=zg(),z$=Ag(),Cg=Mg(),R$=["/properties"],xs="http://json-schema.org/draft-07/schema",Ar=class extends P$.default{_addVocabularies(){super._addVocabularies(),T$.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(z$.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Cg,R$):Cg;this.addMetaSchema(e,xs,!1),this.refs["http://json-schema.org/schema"]=xs}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(xs)?xs:void 0)}};te.Ajv=Ar;eu.exports=te=Ar;eu.exports.Ajv=Ar;Object.defineProperty(te,"__esModule",{value:!0});te.default=Ar;var I$=In();Object.defineProperty(te,"KeywordCxt",{enumerable:!0,get:function(){return I$.KeywordCxt}});var Mr=A();Object.defineProperty(te,"_",{enumerable:!0,get:function(){return Mr._}});Object.defineProperty(te,"str",{enumerable:!0,get:function(){return Mr.str}});Object.defineProperty(te,"stringify",{enumerable:!0,get:function(){return Mr.stringify}});Object.defineProperty(te,"nil",{enumerable:!0,get:function(){return Mr.nil}});Object.defineProperty(te,"Name",{enumerable:!0,get:function(){return Mr.Name}});Object.defineProperty(te,"CodeGen",{enumerable:!0,get:function(){return Mr.CodeGen}});var O$=ss();Object.defineProperty(te,"ValidationError",{enumerable:!0,get:function(){return O$.default}});var A$=On();Object.defineProperty(te,"MissingRefError",{enumerable:!0,get:function(){return A$.default}})});var Fg=w(ut=>{"use strict";Object.defineProperty(ut,"__esModule",{value:!0});ut.formatNames=ut.fastFormats=ut.fullFormats=void 0;function ct(t,e){return{validate:t,compare:e}}ut.fullFormats={date:ct(Lg,su),time:ct(nu(!0),iu),"date-time":ct(Dg(!0),qg),"iso-time":ct(nu(),Ug),"iso-date-time":ct(Dg(),Zg),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:L$,"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:V$,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:U$,int32:{type:"number",validate:F$},int64:{type:"number",validate:H$},float:{type:"number",validate:jg},double:{type:"number",validate:jg},password:!0,binary:!0};ut.fastFormats={...ut.fullFormats,date:ct(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,su),time:ct(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,iu),"date-time":ct(/^\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,qg),"iso-time":ct(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Ug),"iso-date-time":ct(/^\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,Zg),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};ut.formatNames=Object.keys(ut.fullFormats);function M$(t){return t%4===0&&(t%100!==0||t%400===0)}var C$=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,D$=[0,31,28,31,30,31,30,31,31,30,31,30,31];function Lg(t){let e=C$.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&&M$(r)?29:D$[n])}function su(t,e){if(t&&e)return t>e?1:t<e?-1:0}var ru=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function nu(t){return function(r){let n=ru.exec(r);if(!n)return!1;let o=+n[1],s=+n[2],i=+n[3],a=n[4],c=n[5]==="-"?-1:1,u=+(n[6]||0),l=+(n[7]||0);if(u>23||l>59||t&&!a)return!1;if(o<=23&&s<=59&&i<60)return!0;let d=s-l*c,p=o-u*c-(d<0?1:0);return(p===23||p===-1)&&(d===59||d===-1)&&i<61}}function iu(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 Ug(t,e){if(!(t&&e))return;let r=ru.exec(t),n=ru.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 ou=/t|\s/i;function Dg(t){let e=nu(t);return function(n){let o=n.split(ou);return o.length===2&&Lg(o[0])&&e(o[1])}}function qg(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function Zg(t,e){if(!(t&&e))return;let[r,n]=t.split(ou),[o,s]=e.split(ou),i=su(r,o);if(i!==void 0)return i||iu(n,s)}var N$=/\/|:/,j$=/^(?:[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 L$(t){return N$.test(t)&&j$.test(t)}var Ng=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function U$(t){return Ng.lastIndex=0,Ng.test(t)}var q$=-(2**31),Z$=2**31-1;function F$(t){return Number.isInteger(t)&&t<=Z$&&t>=q$}function H$(t){return Number.isInteger(t)}function jg(){return!0}var W$=/[^\\]\\Z/;function V$(t){if(W$.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var Hg=w(Cr=>{"use strict";Object.defineProperty(Cr,"__esModule",{value:!0});Cr.formatLimitDefinition=void 0;var G$=tu(),rt=A(),Lt=rt.operators,$s={formatMaximum:{okStr:"<=",ok:Lt.LTE,fail:Lt.GT},formatMinimum:{okStr:">=",ok:Lt.GTE,fail:Lt.LT},formatExclusiveMaximum:{okStr:"<",ok:Lt.LT,fail:Lt.GTE},formatExclusiveMinimum:{okStr:">",ok:Lt.GT,fail:Lt.LTE}},K$={message:({keyword:t,schemaCode:e})=>(0,rt.str)`should be ${$s[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,rt._)`{comparison: ${$s[t].okStr}, limit: ${e}}`};Cr.formatLimitDefinition={keyword:Object.keys($s),type:"string",schemaType:"string",$data:!0,error:K$,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 G$.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let p=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),f=e.const("fmt",(0,rt._)`${p}[${c.schemaCode}]`);t.fail$data((0,rt.or)((0,rt._)`typeof ${f} != "object"`,(0,rt._)`${f} instanceof RegExp`,(0,rt._)`typeof ${f}.compare != "function"`,d(f)))}function l(){let p=c.schema,f=a.formats[p];if(!f||f===!0)return;if(typeof f!="object"||f instanceof RegExp||typeof f.compare!="function")throw new Error(`"${o}": format "${p}" does not define "compare" function`);let m=e.scopeValue("formats",{key:p,ref:f,code:i.code.formats?(0,rt._)`${i.code.formats}${(0,rt.getProperty)(p)}`:void 0});t.fail$data(d(m))}function d(p){return(0,rt._)`${p}.compare(${r}, ${n}) ${$s[o].fail} 0`}},dependencies:["format"]};var J$=t=>(t.addKeyword(Cr.formatLimitDefinition),t);Cr.default=J$});var Kg=w((Vn,Gg)=>{"use strict";Object.defineProperty(Vn,"__esModule",{value:!0});var Dr=Fg(),B$=Hg(),au=A(),Wg=new au.Name("fullFormats"),Y$=new au.Name("fastFormats"),cu=(t,e={keywords:!0})=>{if(Array.isArray(e))return Vg(t,e,Dr.fullFormats,Wg),t;let[r,n]=e.mode==="fast"?[Dr.fastFormats,Y$]:[Dr.fullFormats,Wg],o=e.formats||Dr.formatNames;return Vg(t,o,r,n),e.keywords&&(0,B$.default)(t),t};cu.get=(t,e="full")=>{let n=(e==="fast"?Dr.fastFormats:Dr.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function Vg(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,au._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}Gg.exports=Vn=cu;Object.defineProperty(Vn,"__esModule",{value:!0});Vn.default=cu});var Ne=require("fs"),ri=require("path");var N=require("path"),Xs=require("os"),Ie=require("fs");var Uu=require("url");var $y={};function _y(){return typeof __dirname<"u"?__dirname:(0,N.dirname)((0,Uu.fileURLToPath)($y.url))}var wT=_y();function Qs(){let t=process.env.KEEPMIND_DATA_DIR??process.env.CLAUDE_MEM_DATA_DIR;if(t)return t;let e=(0,N.join)((0,Xs.homedir)(),".keepmind"),r=(0,N.join)(e,"settings.json");try{if((0,Ie.existsSync)(r)){let n=JSON.parse((0,Ie.readFileSync)(r,"utf-8")),o=n.env??n,s=o.KEEPMIND_DATA_DIR??o.CLAUDE_MEM_DATA_DIR;if(s)return s}}catch{}return e}var B=Qs(),co=process.env.CLAUDE_CONFIG_DIR||(0,N.join)((0,Xs.homedir)(),".claude"),ei=(0,N.join)(co,"plugins","marketplaces","keepmind"),yy=(0,N.join)(B,"archives"),Sy=(0,N.join)(B,"logs"),vy=(0,N.join)(B,"trash"),by=(0,N.join)(B,"backups"),Ey=(0,N.join)(B,"modes"),qu=(0,N.join)(B,"settings.json"),ar=(0,N.join)(B,"keepmind.db"),Fr=(0,N.join)(B,"claude-mem.db"),wy=(0,N.join)(B,"vector-db"),Zu=(0,N.join)(B,"observer-sessions"),kT=(0,N.basename)(Zu),xT=(0,N.join)(co,"settings.json"),$T=(0,N.join)(co,"commands"),PT=(0,N.join)(co,"CLAUDE.md");function ky(){try{if((0,Ie.existsSync)(ar)||!(0,Ie.existsSync)(Fr))return(0,Ie.existsSync)(ar);for(let t of["","-wal","-shm"]){let e=Fr+t,r=ar+t;(0,Ie.existsSync)(e)&&!(0,Ie.existsSync)(r)&&(0,Ie.renameSync)(e,r)}return y.info("DB","Migrated legacy claude-mem.db to keepmind.db",{from:Fr,to:ar}),!0}catch(t){return y.warn("DB","Could not rename legacy claude-mem.db to keepmind.db (file may be locked) \u2014 falling back to legacy path",{},t instanceof Error?t:new Error(String(t))),!1}}function xy(){return ky(),!(0,Ie.existsSync)(ar)&&(0,Ie.existsSync)(Fr)?Fr:ar}var $e={dataDir:()=>B,workerPid:()=>(0,N.join)(B,"worker.pid"),workerPort:()=>(0,N.join)(B,"worker.port"),serverPid:()=>(0,N.join)(B,".server-beta.pid"),serverPort:()=>(0,N.join)(B,".server-beta.port"),serverRuntime:()=>(0,N.join)(B,".server-beta.runtime.json"),settings:()=>(0,N.join)(B,"settings.json"),database:()=>xy(),chroma:()=>(0,N.join)(B,"chroma"),combinedCerts:()=>(0,N.join)(B,"combined_certs.pem"),transcriptsConfig:()=>(0,N.join)(B,"transcript-watch.json"),transcriptsState:()=>(0,N.join)(B,"transcript-watch-state.json"),corpora:()=>(0,N.join)(B,"corpora"),supervisorRegistry:()=>(0,N.join)(B,"supervisor.json"),envFile:()=>(0,N.join)(B,".env"),logsDir:()=>Sy,archives:()=>yy,trash:()=>vy,backups:()=>by,modes:()=>Ey,vectorDb:()=>wy,observerSessions:()=>Zu};var Py=null;function Ty(t){return(Py??process.stderr.write.bind(process.stderr))(t)}function uo(t){Ty(t)}var zy=14,ni=(s=>(s[s.DEBUG=0]="DEBUG",s[s.INFO=1]="INFO",s[s.WARN=2]="WARN",s[s.ERROR=3]="ERROR",s[s.SILENT=4]="SILENT",s))(ni||{}),ti=null,oi=class{level=null;useColor;logFilePath=null;logFileInitialized=!1;constructor(){this.useColor=process.stdout.isTTY??!1}ensureLogFileInitialized(){if(!this.logFileInitialized){this.logFileInitialized=!0;try{let e=$e.logsDir();(0,Ne.existsSync)(e)||(0,Ne.mkdirSync)(e,{recursive:!0});let r=new Date().toISOString().split("T")[0];this.logFilePath=(0,ri.join)(e,`keepmind-${r}.log`),this.pruneOldLogs(e)}catch(e){console.error("[LOGGER] Failed to initialize log file:",e instanceof Error?e.message:String(e)),this.logFilePath=null}}}pruneOldLogs(e){try{let r=Date.now()-zy*24*60*60*1e3;for(let n of(0,Ne.readdirSync)(e)){let o=/^keepmind-(\d{4}-\d{2}-\d{2})\.log$/.exec(n);if(!o)continue;let s=Date.parse(o[1]);if(Number.isFinite(s)&&s<r)try{(0,Ne.unlinkSync)((0,ri.join)(e,n))}catch{}}}catch{}}getLevel(){if(this.level===null)try{let e=$e.settings();if((0,Ne.existsSync)(e)){let r=(0,Ne.readFileSync)(e,"utf-8"),o=(JSON.parse(r).CLAUDE_MEM_LOG_LEVEL||"INFO").toUpperCase();this.level=ni[o]??1}else this.level=1}catch(e){console.error("[LOGGER] Failed to load log level from settings:",e instanceof Error?e.message:String(e)),this.level=1}return this.level}formatData(e){if(e==null)return"";if(typeof e=="string")return e;if(typeof e=="number"||typeof e=="boolean")return e.toString();if(typeof e=="object"){if(e instanceof Error)return this.getLevel()===0?`${e.message}
|
|
10
10
|
${e.stack}`:e.message;if(Array.isArray(e))return`[${e.length} items]`;let r=Object.keys(e);return r.length===0?"{}":r.length<=3?JSON.stringify(e):`{${r.length} keys: ${r.slice(0,3).join(", ")}...}`}return String(e)}formatTool(e,r){if(!r)return e;let n=r;if(typeof r=="string")try{n=JSON.parse(r)}catch{n=r}if(e==="Bash"&&n.command)return`${e}(${n.command})`;if(n.file_path)return`${e}(${n.file_path})`;if(n.notebook_path)return`${e}(${n.notebook_path})`;if(e==="Glob"&&n.pattern)return`${e}(${n.pattern})`;if(e==="Grep"&&n.pattern)return`${e}(${n.pattern})`;if(n.url)return`${e}(${n.url})`;if(n.query)return`${e}(${n.query})`;if(e==="Task"){if(n.subagent_type)return`${e}(${n.subagent_type})`;if(n.description)return`${e}(${n.description})`}return e==="Skill"&&n.skill?`${e}(${n.skill})`:e==="LSP"&&n.operation?`${e}(${n.operation})`:e}formatTimestamp(e){let r=e.getFullYear(),n=String(e.getMonth()+1).padStart(2,"0"),o=String(e.getDate()).padStart(2,"0"),s=String(e.getHours()).padStart(2,"0"),i=String(e.getMinutes()).padStart(2,"0"),a=String(e.getSeconds()).padStart(2,"0"),c=String(e.getMilliseconds()).padStart(3,"0");return`${r}-${n}-${o} ${s}:${i}:${a}.${c}`}log(e,r,n,o,s){if(e<this.getLevel())return;this.ensureLogFileInitialized();let i=this.formatTimestamp(new Date),a=ni[e].padEnd(5),c=r.padEnd(6),u="";o?.correlationId?u=`[${o.correlationId}] `:o?.sessionId&&(u=`[session-${o.sessionId}] `);let l="";if(s!=null)if(s instanceof Error)l=this.getLevel()===0?`
|
|
11
11
|
${s.message}
|
|
12
12
|
${s.stack}`:` ${s.message}`;else if(this.getLevel()===0&&typeof s=="object")try{l=`
|
|
13
|
-
`+JSON.stringify(s,null,2)}catch{l=" "+this.formatData(s)}else l=" "+this.formatData(s);let d="";if(o){let{sessionId:f,memorySessionId:m,correlationId:_,...S}=o;Object.keys(S).length>0&&(d=` {${Object.entries(S).map(([E,v])=>`${E}=${v}`).join(", ")}}`)}let p=`[${i}] [${a}] [${c}] ${u}${n}${d}${l}`;if(this.logFilePath)try{(0,
|
|
13
|
+
`+JSON.stringify(s,null,2)}catch{l=" "+this.formatData(s)}else l=" "+this.formatData(s);let d="";if(o){let{sessionId:f,memorySessionId:m,correlationId:_,...S}=o;Object.keys(S).length>0&&(d=` {${Object.entries(S).map(([E,v])=>`${E}=${v}`).join(", ")}}`)}let p=`[${i}] [${a}] [${c}] ${u}${n}${d}${l}`;if(this.logFilePath)try{(0,Ne.appendFileSync)(this.logFilePath,p+`
|
|
14
14
|
`,"utf8")}catch(f){uo(`[LOGGER] Failed to write to log file: ${f instanceof Error?f.message:String(f)}
|
|
15
15
|
`)}else uo(p+`
|
|
16
16
|
`)}debug(e,r,n,o){this.log(0,e,r,n,o)}info(e,r,n,o){this.log(1,e,r,n,o)}warn(e,r,n,o){this.log(2,e,r,n,o)}setErrorSink(e){ti=e}error(e,r,n,o){this.log(3,e,r,n,o),this.routeErrorToSink(r,n,o)}routeErrorToSink(e,r,n){try{if(!ti||!(n instanceof Error))return;ti(n)}catch{}}dataIn(e,r,n,o){this.info(e,`\u2192 ${r}`,n,o)}dataOut(e,r,n,o){this.info(e,`\u2190 ${r}`,n,o)}success(e,r,n,o){this.info(e,`\u2713 ${r}`,n,o)}failure(e,r,n,o){this.error(e,`\u2717 ${r}`,n,o)}happyPathError(e,r,n,o,s=""){let u=((new Error().stack||"").split(`
|
|
17
|
-
`)[2]||"").match(/at\s+(?:.*\s+)?\(?([^:]+):(\d+):(\d+)\)?/),l=u?`${u[1].split("/").pop()}:${u[2]}`:"unknown",d={...n,location:l};return this.warn(e,`[HAPPY-PATH] ${r}`,d,o),s}},y=new oi;var Fu;function g(t,e,r){function n(a,c){if(a._zod||Object.defineProperty(a,"_zod",{value:{def:c,constr:i,traits:new Set},enumerable:!1}),a._zod.traits.has(t))return;a._zod.traits.add(t),e(a,c);let u=i.prototype,l=Object.keys(u);for(let d=0;d<l.length;d++){let p=l[d];p in a||(a[p]=u[p].bind(a))}}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 ot=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},cr=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name="ZodEncodeError"}};(Fu=globalThis).__zod_globalConfig??(Fu.__zod_globalConfig={});var ur=globalThis.__zod_globalConfig;function je(t){return t&&Object.assign(ur,t),ur}var U={};Lu(U,{BIGINT_FORMAT_RANGES:()=>Gu,Class:()=>ii,NUMBER_FORMAT_RANGES:()=>pi,aborted:()=>Pt,allowsEval:()=>ui,assert:()=>My,assertEqual:()=>Ry,assertIs:()=>Oy,assertNever:()=>Ay,assertNotEqual:()=>Iy,assignProp:()=>xt,base64ToUint8Array:()=>Ju,base64urlToUint8Array:()=>Yy,cached:()=>dr,captureStackTrace:()=>fo,cleanEnum:()=>By,cleanRegex:()=>Gr,clone:()=>Ye,cloneDef:()=>Ny,createTransparentProxy:()=>Zy,defineLazy:()=>H,esc:()=>po,escapeRegex:()=>ht,explicitlyAborted:()=>fi,extend:()=>Wy,finalizeIssue:()=>qe,floatSafeRemainder:()=>ai,getElementAtPath:()=>Dy,getEnumValues:()=>Wr,getLengthableOrigin:()=>Kr,getParsedType:()=>qy,getSizableOrigin:()=>Ku,hexToUint8Array:()=>Qy,isObject:()=>Ht,isPlainObject:()=>$t,issue:()=>pr,joinValues:()=>lo,jsonStringifyReplacer:()=>lr,merge:()=>Gy,mergeDefs:()=>mt,normalizeParams:()=>z,nullish:()=>Vr,numKeys:()=>Uy,objectClone:()=>Cy,omit:()=>Hy,optionalKeys:()=>di,parsedType:()=>mi,partial:()=>Ky,pick:()=>Fy,prefixIssues:()=>gt,primitiveTypes:()=>Vu,promiseAllObject:()=>jy,propertyKeyTypes:()=>li,randomString:()=>Ly,required:()=>Jy,safeExtend:()=>Vy,shallowClone:()=>Wu,slugify:()=>ci,stringifyPrimitive:()=>mo,uint8ArrayToBase64:()=>Bu,uint8ArrayToBase64url:()=>Xy,uint8ArrayToHex:()=>eS,unwrapMessage:()=>Hr});function Ry(t){return t}function Iy(t){return t}function Oy(t){}function Ay(t){throw new Error("Unexpected value in exhaustive check")}function My(t){}function Wr(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 lo(t,e="|"){return t.map(r=>mo(r)).join(e)}function lr(t,e){return typeof e=="bigint"?e.toString():e}function dr(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function Vr(t){return t==null}function Gr(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function ai(t,e){let r=t/e,n=Math.round(r),o=Number.EPSILON*Math.max(Math.abs(r),1);return Math.abs(r-n)<o?0:r-n}var Hu=Symbol("evaluating");function H(t,e,r){let n;Object.defineProperty(t,e,{get(){if(n!==Hu)return n===void 0&&(n=Hu,n=r()),n},set(o){Object.defineProperty(t,e,{value:o})},configurable:!0})}function Cy(t){return Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t))}function xt(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function mt(...t){let e={};for(let r of t){let n=Object.getOwnPropertyDescriptors(r);Object.assign(e,n)}return Object.defineProperties({},e)}function Ny(t){return mt(t._zod.def)}function Dy(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function jy(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 Ly(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function po(t){return JSON.stringify(t)}function ci(t){return t.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var fo="captureStackTrace"in Error?Error.captureStackTrace:(...t)=>{};function Ht(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var ui=dr(()=>{if(ur.jitless||typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function $t(t){if(Ht(t)===!1)return!1;let e=t.constructor;if(e===void 0||typeof e!="function")return!0;let r=e.prototype;return!(Ht(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function Wu(t){return $t(t)?{...t}:Array.isArray(t)?[...t]:t instanceof Map?new Map(t):t instanceof Set?new Set(t):t}function Uy(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var qy=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}`)}},li=new Set(["string","number","symbol"]),Vu=new Set(["string","number","bigint","boolean","symbol","undefined"]);function ht(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Ye(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function z(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 Zy(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 mo(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function di(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var pi={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]},Gu={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function Fy(t,e){let r=t._zod.def,n=r.checks;if(n&&n.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");let s=mt(t._zod.def,{get shape(){let i={};for(let a in e){if(!(a in r.shape))throw new Error(`Unrecognized key: "${a}"`);e[a]&&(i[a]=r.shape[a])}return xt(this,"shape",i),i},checks:[]});return Ye(t,s)}function Hy(t,e){let r=t._zod.def,n=r.checks;if(n&&n.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");let s=mt(t._zod.def,{get shape(){let i={...t._zod.def.shape};for(let a in e){if(!(a in r.shape))throw new Error(`Unrecognized key: "${a}"`);e[a]&&delete i[a]}return xt(this,"shape",i),i},checks:[]});return Ye(t,s)}function Wy(t,e){if(!$t(e))throw new Error("Invalid input to extend: expected a plain object");let r=t._zod.def.checks;if(r&&r.length>0){let s=t._zod.def.shape;for(let i in e)if(Object.getOwnPropertyDescriptor(s,i)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let o=mt(t._zod.def,{get shape(){let s={...t._zod.def.shape,...e};return xt(this,"shape",s),s}});return Ye(t,o)}function Vy(t,e){if(!$t(e))throw new Error("Invalid input to safeExtend: expected a plain object");let r=mt(t._zod.def,{get shape(){let n={...t._zod.def.shape,...e};return xt(this,"shape",n),n}});return Ye(t,r)}function Gy(t,e){if(t._zod.def.checks?.length)throw new Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");let r=mt(t._zod.def,{get shape(){let n={...t._zod.def.shape,...e._zod.def.shape};return xt(this,"shape",n),n},get catchall(){return e._zod.def.catchall},checks:e._zod.def.checks??[]});return Ye(t,r)}function Ky(t,e,r){let o=e._zod.def.checks;if(o&&o.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");let i=mt(e._zod.def,{get shape(){let a=e._zod.def.shape,c={...a};if(r)for(let u in r){if(!(u in a))throw new Error(`Unrecognized key: "${u}"`);r[u]&&(c[u]=t?new t({type:"optional",innerType:a[u]}):a[u])}else for(let u in a)c[u]=t?new t({type:"optional",innerType:a[u]}):a[u];return xt(this,"shape",c),c},checks:[]});return Ye(e,i)}function Jy(t,e,r){let n=mt(e._zod.def,{get shape(){let o=e._zod.def.shape,s={...o};if(r)for(let i in r){if(!(i in s))throw new Error(`Unrecognized key: "${i}"`);r[i]&&(s[i]=new t({type:"nonoptional",innerType:o[i]}))}else for(let i in o)s[i]=new t({type:"nonoptional",innerType:o[i]});return xt(this,"shape",s),s}});return Ye(e,n)}function Pt(t,e=0){if(t.aborted===!0)return!0;for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function fi(t,e=0){if(t.aborted===!0)return!0;for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue===!1)return!0;return!1}function gt(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function Hr(t){return typeof t=="string"?t:t?.message}function qe(t,e,r){let n=t.message?t.message:Hr(t.inst?._zod.def?.error?.(t))??Hr(e?.error?.(t))??Hr(r.customError?.(t))??Hr(r.localeError?.(t))??"Invalid input",{inst:o,continue:s,input:i,...a}=t;return a.path??(a.path=[]),a.message=n,e?.reportInput&&(a.input=i),a}function Ku(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function Kr(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function mi(t){let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"nan":"number";case"object":{if(t===null)return"null";if(Array.isArray(t))return"array";let r=t;if(r&&Object.getPrototypeOf(r)!==Object.prototype&&"constructor"in r&&r.constructor)return r.constructor.name}}return e}function pr(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function By(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}function Ju(t){let e=atob(t),r=new Uint8Array(e.length);for(let n=0;n<e.length;n++)r[n]=e.charCodeAt(n);return r}function Bu(t){let e="";for(let r=0;r<t.length;r++)e+=String.fromCharCode(t[r]);return btoa(e)}function Yy(t){let e=t.replace(/-/g,"+").replace(/_/g,"/"),r="=".repeat((4-e.length%4)%4);return Ju(e+r)}function Xy(t){return Bu(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function Qy(t){let e=t.replace(/^0x/,"");if(e.length%2!==0)throw new Error("Invalid hex string length");let r=new Uint8Array(e.length/2);for(let n=0;n<e.length;n+=2)r[n/2]=Number.parseInt(e.slice(n,n+2),16);return r}function eS(t){return Array.from(t).map(e=>e.toString(16).padStart(2,"0")).join("")}var ii=class{constructor(...e){}};var Yu=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),t.message=JSON.stringify(e,lr,2),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},ho=g("$ZodError",Yu),hi=g("$ZodError",Yu,{Parent:Error});function Xu(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 Qu(t,e=r=>r.message){let r={_errors:[]},n=(o,s=[])=>{for(let i of o.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map(a=>n({issues:a},[...s,...i.path]));else if(i.code==="invalid_key")n({issues:i.issues},[...s,...i.path]);else if(i.code==="invalid_element")n({issues:i.issues},[...s,...i.path]);else{let a=[...s,...i.path];if(a.length===0)r._errors.push(e(i));else{let c=r,u=0;for(;u<a.length;){let l=a[u];u===a.length-1?(c[l]=c[l]||{_errors:[]},c[l]._errors.push(e(i))):c[l]=c[l]||{_errors:[]},c=c[l],u++}}}};return n(t),r}var go=t=>(e,r,n,o)=>{let s=n?{...n,async:!1}:{async:!1},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise)throw new ot;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>qe(c,s,je())));throw fo(a,o?.callee),a}return i.value};var _o=t=>async(e,r,n,o)=>{let s=n?{...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=>qe(c,s,je())));throw fo(a,o?.callee),a}return i.value};var Jr=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 ot;return s.issues.length?{success:!1,error:new(t??ho)(s.issues.map(i=>qe(i,o,je())))}:{success:!0,data:s.value}},Br=Jr(hi),Yr=t=>async(e,r,n)=>{let o=n?{...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=>qe(i,o,je())))}:{success:!0,data:s.value}},yo=Yr(hi),el=t=>(e,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return go(t)(e,r,o)};var tl=t=>(e,r,n)=>go(t)(e,r,n);var rl=t=>async(e,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return _o(t)(e,r,o)};var nl=t=>async(e,r,n)=>_o(t)(e,r,n);var ol=t=>(e,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return Jr(t)(e,r,o)};var sl=t=>(e,r,n)=>Jr(t)(e,r,n);var il=t=>async(e,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return Yr(t)(e,r,o)};var al=t=>async(e,r,n)=>Yr(t)(e,r,n);var cl=/^[cC][0-9a-z]{6,}$/,ul=/^[0-9a-z]+$/,ll=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,dl=/^[0-9a-vA-V]{20}$/,pl=/^[A-Za-z0-9]{27}$/,fl=/^[a-zA-Z0-9_-]{21}$/,ml=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var hl=/^([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})$/,gi=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|ffffffff-ffff-ffff-ffff-ffffffffffff)$/;var gl=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var rS="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function _l(){return new RegExp(rS,"u")}var yl=/^(?:(?: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])$/,Sl=/^(([0-9a-fA-F]{1,4}:){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}|:))$/;var vl=/^((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])$/,bl=/^(([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])$/,El=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,_i=/^[A-Za-z0-9_-]*$/;var wl=/^https?$/,kl=/^\+[1-9]\d{6,14}$/,xl="(?:(?:\\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])))",$l=new RegExp(`^${xl}$`);function Pl(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 Tl(t){return new RegExp(`^${Pl(t)}$`)}function zl(t){let e=Pl({precision:t.precision}),r=["Z"];t.local&&r.push(""),t.offset&&r.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let n=`${e}(?:${r.join("|")})`;return new RegExp(`^${xl}T(?:${n})$`)}var Rl=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var Il=/^-?\d+$/,yi=/^-?\d+(?:\.\d+)?$/,Ol=/^(?:true|false)$/i,Al=/^null$/i;var Ml=/^[^A-Z]*$/,Cl=/^[^a-z]*$/;var fe=g("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),Nl={number:"number",bigint:"bigint",object:"date"},Si=g("$ZodCheckLessThan",(t,e)=>{fe.init(t,e);let r=Nl[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:typeof e.value=="object"?e.value.getTime():e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),vi=g("$ZodCheckGreaterThan",(t,e)=>{fe.init(t,e);let r=Nl[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:typeof e.value=="object"?e.value.getTime():e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),Dl=g("$ZodCheckMultipleOf",(t,e)=>{fe.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):ai(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})}}),jl=g("$ZodCheckNumberFormat",(t,e)=>{fe.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=pi[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=Il)}),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",continue:!1,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,inclusive:!0,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,inclusive:!0,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,inclusive:!0,inst:t,continue:!e.abort})}});var Ll=g("$ZodCheckMaxLength",(t,e)=>{var r;fe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Vr(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=Kr(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),Ul=g("$ZodCheckMinLength",(t,e)=>{var r;fe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Vr(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=Kr(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),ql=g("$ZodCheckLengthEquals",(t,e)=>{var r;fe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Vr(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=Kr(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})}}),Xr=g("$ZodCheckStringFormat",(t,e)=>{var r,n;fe.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=()=>{})}),Zl=g("$ZodCheckRegex",(t,e)=>{Xr.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})}}),Fl=g("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=Ml),Xr.init(t,e)}),Hl=g("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=Cl),Xr.init(t,e)}),Wl=g("$ZodCheckIncludes",(t,e)=>{fe.init(t,e);let r=ht(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})}}),Vl=g("$ZodCheckStartsWith",(t,e)=>{fe.init(t,e);let r=new RegExp(`^${ht(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})}}),Gl=g("$ZodCheckEndsWith",(t,e)=>{fe.init(t,e);let r=new RegExp(`.*${ht(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 Kl=g("$ZodCheckOverwrite",(t,e)=>{fe.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var vo=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(`
|
|
17
|
+
`)[2]||"").match(/at\s+(?:.*\s+)?\(?([^:]+):(\d+):(\d+)\)?/),l=u?`${u[1].split("/").pop()}:${u[2]}`:"unknown",d={...n,location:l};return this.warn(e,`[HAPPY-PATH] ${r}`,d,o),s}},y=new oi;var Fu;function g(t,e,r){function n(a,c){if(a._zod||Object.defineProperty(a,"_zod",{value:{def:c,constr:i,traits:new Set},enumerable:!1}),a._zod.traits.has(t))return;a._zod.traits.add(t),e(a,c);let u=i.prototype,l=Object.keys(u);for(let d=0;d<l.length;d++){let p=l[d];p in a||(a[p]=u[p].bind(a))}}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 ot=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},cr=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name="ZodEncodeError"}};(Fu=globalThis).__zod_globalConfig??(Fu.__zod_globalConfig={});var ur=globalThis.__zod_globalConfig;function je(t){return t&&Object.assign(ur,t),ur}var U={};Lu(U,{BIGINT_FORMAT_RANGES:()=>Gu,Class:()=>ii,NUMBER_FORMAT_RANGES:()=>pi,aborted:()=>Pt,allowsEval:()=>ui,assert:()=>My,assertEqual:()=>Ry,assertIs:()=>Oy,assertNever:()=>Ay,assertNotEqual:()=>Iy,assignProp:()=>xt,base64ToUint8Array:()=>Ju,base64urlToUint8Array:()=>Yy,cached:()=>dr,captureStackTrace:()=>fo,cleanEnum:()=>By,cleanRegex:()=>Gr,clone:()=>Ye,cloneDef:()=>Dy,createTransparentProxy:()=>Zy,defineLazy:()=>H,esc:()=>po,escapeRegex:()=>ht,explicitlyAborted:()=>fi,extend:()=>Wy,finalizeIssue:()=>qe,floatSafeRemainder:()=>ai,getElementAtPath:()=>Ny,getEnumValues:()=>Wr,getLengthableOrigin:()=>Kr,getParsedType:()=>qy,getSizableOrigin:()=>Ku,hexToUint8Array:()=>Qy,isObject:()=>Ht,isPlainObject:()=>$t,issue:()=>pr,joinValues:()=>lo,jsonStringifyReplacer:()=>lr,merge:()=>Gy,mergeDefs:()=>mt,normalizeParams:()=>z,nullish:()=>Vr,numKeys:()=>Uy,objectClone:()=>Cy,omit:()=>Hy,optionalKeys:()=>di,parsedType:()=>mi,partial:()=>Ky,pick:()=>Fy,prefixIssues:()=>gt,primitiveTypes:()=>Vu,promiseAllObject:()=>jy,propertyKeyTypes:()=>li,randomString:()=>Ly,required:()=>Jy,safeExtend:()=>Vy,shallowClone:()=>Wu,slugify:()=>ci,stringifyPrimitive:()=>mo,uint8ArrayToBase64:()=>Bu,uint8ArrayToBase64url:()=>Xy,uint8ArrayToHex:()=>eS,unwrapMessage:()=>Hr});function Ry(t){return t}function Iy(t){return t}function Oy(t){}function Ay(t){throw new Error("Unexpected value in exhaustive check")}function My(t){}function Wr(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 lo(t,e="|"){return t.map(r=>mo(r)).join(e)}function lr(t,e){return typeof e=="bigint"?e.toString():e}function dr(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function Vr(t){return t==null}function Gr(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function ai(t,e){let r=t/e,n=Math.round(r),o=Number.EPSILON*Math.max(Math.abs(r),1);return Math.abs(r-n)<o?0:r-n}var Hu=Symbol("evaluating");function H(t,e,r){let n;Object.defineProperty(t,e,{get(){if(n!==Hu)return n===void 0&&(n=Hu,n=r()),n},set(o){Object.defineProperty(t,e,{value:o})},configurable:!0})}function Cy(t){return Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t))}function xt(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function mt(...t){let e={};for(let r of t){let n=Object.getOwnPropertyDescriptors(r);Object.assign(e,n)}return Object.defineProperties({},e)}function Dy(t){return mt(t._zod.def)}function Ny(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function jy(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 Ly(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function po(t){return JSON.stringify(t)}function ci(t){return t.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var fo="captureStackTrace"in Error?Error.captureStackTrace:(...t)=>{};function Ht(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var ui=dr(()=>{if(ur.jitless||typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function $t(t){if(Ht(t)===!1)return!1;let e=t.constructor;if(e===void 0||typeof e!="function")return!0;let r=e.prototype;return!(Ht(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function Wu(t){return $t(t)?{...t}:Array.isArray(t)?[...t]:t instanceof Map?new Map(t):t instanceof Set?new Set(t):t}function Uy(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var qy=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}`)}},li=new Set(["string","number","symbol"]),Vu=new Set(["string","number","bigint","boolean","symbol","undefined"]);function ht(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Ye(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function z(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 Zy(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 mo(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function di(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var pi={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]},Gu={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function Fy(t,e){let r=t._zod.def,n=r.checks;if(n&&n.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");let s=mt(t._zod.def,{get shape(){let i={};for(let a in e){if(!(a in r.shape))throw new Error(`Unrecognized key: "${a}"`);e[a]&&(i[a]=r.shape[a])}return xt(this,"shape",i),i},checks:[]});return Ye(t,s)}function Hy(t,e){let r=t._zod.def,n=r.checks;if(n&&n.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");let s=mt(t._zod.def,{get shape(){let i={...t._zod.def.shape};for(let a in e){if(!(a in r.shape))throw new Error(`Unrecognized key: "${a}"`);e[a]&&delete i[a]}return xt(this,"shape",i),i},checks:[]});return Ye(t,s)}function Wy(t,e){if(!$t(e))throw new Error("Invalid input to extend: expected a plain object");let r=t._zod.def.checks;if(r&&r.length>0){let s=t._zod.def.shape;for(let i in e)if(Object.getOwnPropertyDescriptor(s,i)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let o=mt(t._zod.def,{get shape(){let s={...t._zod.def.shape,...e};return xt(this,"shape",s),s}});return Ye(t,o)}function Vy(t,e){if(!$t(e))throw new Error("Invalid input to safeExtend: expected a plain object");let r=mt(t._zod.def,{get shape(){let n={...t._zod.def.shape,...e};return xt(this,"shape",n),n}});return Ye(t,r)}function Gy(t,e){if(t._zod.def.checks?.length)throw new Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");let r=mt(t._zod.def,{get shape(){let n={...t._zod.def.shape,...e._zod.def.shape};return xt(this,"shape",n),n},get catchall(){return e._zod.def.catchall},checks:e._zod.def.checks??[]});return Ye(t,r)}function Ky(t,e,r){let o=e._zod.def.checks;if(o&&o.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");let i=mt(e._zod.def,{get shape(){let a=e._zod.def.shape,c={...a};if(r)for(let u in r){if(!(u in a))throw new Error(`Unrecognized key: "${u}"`);r[u]&&(c[u]=t?new t({type:"optional",innerType:a[u]}):a[u])}else for(let u in a)c[u]=t?new t({type:"optional",innerType:a[u]}):a[u];return xt(this,"shape",c),c},checks:[]});return Ye(e,i)}function Jy(t,e,r){let n=mt(e._zod.def,{get shape(){let o=e._zod.def.shape,s={...o};if(r)for(let i in r){if(!(i in s))throw new Error(`Unrecognized key: "${i}"`);r[i]&&(s[i]=new t({type:"nonoptional",innerType:o[i]}))}else for(let i in o)s[i]=new t({type:"nonoptional",innerType:o[i]});return xt(this,"shape",s),s}});return Ye(e,n)}function Pt(t,e=0){if(t.aborted===!0)return!0;for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function fi(t,e=0){if(t.aborted===!0)return!0;for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue===!1)return!0;return!1}function gt(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function Hr(t){return typeof t=="string"?t:t?.message}function qe(t,e,r){let n=t.message?t.message:Hr(t.inst?._zod.def?.error?.(t))??Hr(e?.error?.(t))??Hr(r.customError?.(t))??Hr(r.localeError?.(t))??"Invalid input",{inst:o,continue:s,input:i,...a}=t;return a.path??(a.path=[]),a.message=n,e?.reportInput&&(a.input=i),a}function Ku(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function Kr(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function mi(t){let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"nan":"number";case"object":{if(t===null)return"null";if(Array.isArray(t))return"array";let r=t;if(r&&Object.getPrototypeOf(r)!==Object.prototype&&"constructor"in r&&r.constructor)return r.constructor.name}}return e}function pr(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function By(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}function Ju(t){let e=atob(t),r=new Uint8Array(e.length);for(let n=0;n<e.length;n++)r[n]=e.charCodeAt(n);return r}function Bu(t){let e="";for(let r=0;r<t.length;r++)e+=String.fromCharCode(t[r]);return btoa(e)}function Yy(t){let e=t.replace(/-/g,"+").replace(/_/g,"/"),r="=".repeat((4-e.length%4)%4);return Ju(e+r)}function Xy(t){return Bu(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function Qy(t){let e=t.replace(/^0x/,"");if(e.length%2!==0)throw new Error("Invalid hex string length");let r=new Uint8Array(e.length/2);for(let n=0;n<e.length;n+=2)r[n/2]=Number.parseInt(e.slice(n,n+2),16);return r}function eS(t){return Array.from(t).map(e=>e.toString(16).padStart(2,"0")).join("")}var ii=class{constructor(...e){}};var Yu=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),t.message=JSON.stringify(e,lr,2),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},ho=g("$ZodError",Yu),hi=g("$ZodError",Yu,{Parent:Error});function Xu(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 Qu(t,e=r=>r.message){let r={_errors:[]},n=(o,s=[])=>{for(let i of o.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map(a=>n({issues:a},[...s,...i.path]));else if(i.code==="invalid_key")n({issues:i.issues},[...s,...i.path]);else if(i.code==="invalid_element")n({issues:i.issues},[...s,...i.path]);else{let a=[...s,...i.path];if(a.length===0)r._errors.push(e(i));else{let c=r,u=0;for(;u<a.length;){let l=a[u];u===a.length-1?(c[l]=c[l]||{_errors:[]},c[l]._errors.push(e(i))):c[l]=c[l]||{_errors:[]},c=c[l],u++}}}};return n(t),r}var go=t=>(e,r,n,o)=>{let s=n?{...n,async:!1}:{async:!1},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise)throw new ot;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>qe(c,s,je())));throw fo(a,o?.callee),a}return i.value};var _o=t=>async(e,r,n,o)=>{let s=n?{...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=>qe(c,s,je())));throw fo(a,o?.callee),a}return i.value};var Jr=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 ot;return s.issues.length?{success:!1,error:new(t??ho)(s.issues.map(i=>qe(i,o,je())))}:{success:!0,data:s.value}},Br=Jr(hi),Yr=t=>async(e,r,n)=>{let o=n?{...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=>qe(i,o,je())))}:{success:!0,data:s.value}},yo=Yr(hi),el=t=>(e,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return go(t)(e,r,o)};var tl=t=>(e,r,n)=>go(t)(e,r,n);var rl=t=>async(e,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return _o(t)(e,r,o)};var nl=t=>async(e,r,n)=>_o(t)(e,r,n);var ol=t=>(e,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return Jr(t)(e,r,o)};var sl=t=>(e,r,n)=>Jr(t)(e,r,n);var il=t=>async(e,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return Yr(t)(e,r,o)};var al=t=>async(e,r,n)=>Yr(t)(e,r,n);var cl=/^[cC][0-9a-z]{6,}$/,ul=/^[0-9a-z]+$/,ll=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,dl=/^[0-9a-vA-V]{20}$/,pl=/^[A-Za-z0-9]{27}$/,fl=/^[a-zA-Z0-9_-]{21}$/,ml=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var hl=/^([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})$/,gi=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|ffffffff-ffff-ffff-ffff-ffffffffffff)$/;var gl=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var rS="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function _l(){return new RegExp(rS,"u")}var yl=/^(?:(?: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])$/,Sl=/^(([0-9a-fA-F]{1,4}:){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}|:))$/;var vl=/^((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])$/,bl=/^(([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])$/,El=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,_i=/^[A-Za-z0-9_-]*$/;var wl=/^https?$/,kl=/^\+[1-9]\d{6,14}$/,xl="(?:(?:\\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])))",$l=new RegExp(`^${xl}$`);function Pl(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 Tl(t){return new RegExp(`^${Pl(t)}$`)}function zl(t){let e=Pl({precision:t.precision}),r=["Z"];t.local&&r.push(""),t.offset&&r.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let n=`${e}(?:${r.join("|")})`;return new RegExp(`^${xl}T(?:${n})$`)}var Rl=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var Il=/^-?\d+$/,yi=/^-?\d+(?:\.\d+)?$/,Ol=/^(?:true|false)$/i,Al=/^null$/i;var Ml=/^[^A-Z]*$/,Cl=/^[^a-z]*$/;var fe=g("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),Dl={number:"number",bigint:"bigint",object:"date"},Si=g("$ZodCheckLessThan",(t,e)=>{fe.init(t,e);let r=Dl[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:typeof e.value=="object"?e.value.getTime():e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),vi=g("$ZodCheckGreaterThan",(t,e)=>{fe.init(t,e);let r=Dl[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:typeof e.value=="object"?e.value.getTime():e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),Nl=g("$ZodCheckMultipleOf",(t,e)=>{fe.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):ai(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})}}),jl=g("$ZodCheckNumberFormat",(t,e)=>{fe.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=pi[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=Il)}),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",continue:!1,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,inclusive:!0,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,inclusive:!0,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,inclusive:!0,inst:t,continue:!e.abort})}});var Ll=g("$ZodCheckMaxLength",(t,e)=>{var r;fe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Vr(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=Kr(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),Ul=g("$ZodCheckMinLength",(t,e)=>{var r;fe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Vr(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=Kr(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),ql=g("$ZodCheckLengthEquals",(t,e)=>{var r;fe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Vr(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=Kr(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})}}),Xr=g("$ZodCheckStringFormat",(t,e)=>{var r,n;fe.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=()=>{})}),Zl=g("$ZodCheckRegex",(t,e)=>{Xr.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})}}),Fl=g("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=Ml),Xr.init(t,e)}),Hl=g("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=Cl),Xr.init(t,e)}),Wl=g("$ZodCheckIncludes",(t,e)=>{fe.init(t,e);let r=ht(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})}}),Vl=g("$ZodCheckStartsWith",(t,e)=>{fe.init(t,e);let r=new RegExp(`^${ht(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})}}),Gl=g("$ZodCheckEndsWith",(t,e)=>{fe.init(t,e);let r=new RegExp(`.*${ht(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 Kl=g("$ZodCheckOverwrite",(t,e)=>{fe.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var vo=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(`
|
|
18
18
|
`).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(`
|
|
19
|
-
`))}};var Bl={major:4,minor:4,patch:3};var Y=g("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=Bl;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=(i,a,c)=>{let u=Pt(i),l;for(let d of a){if(d._zod.def.when){if(fi(i)||!d._zod.def.when(i))continue}else if(u)continue;let p=i.issues.length,f=d._zod.check(i);if(f instanceof Promise&&c?.async===!1)throw new ot;if(l||f instanceof Promise)l=(l??Promise.resolve()).then(async()=>{await f,i.issues.length!==p&&(u||(u=Pt(i,p)))});else{if(i.issues.length===p)continue;u||(u=Pt(i,p))}}return l?l.then(()=>i):i},s=(i,a,c)=>{if(Pt(i))return i.aborted=!0,i;let u=o(a,n,c);if(u instanceof Promise){if(c.async===!1)throw new ot;return u.then(l=>t._zod.parse(l,c))}return t._zod.parse(u,c)};t._zod.run=(i,a)=>{if(a.skipChecks)return t._zod.parse(i,a);if(a.direction==="backward"){let u=t._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return u instanceof Promise?u.then(l=>s(l,i,a)):s(u,i,a)}let c=t._zod.parse(i,a);if(c instanceof Promise){if(a.async===!1)throw new ot;return c.then(u=>o(u,n,a))}return o(c,n,a)}}H(t,"~standard",()=>({validate:o=>{try{let s=Br(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return yo(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}))}),wo=g("$ZodString",(t,e)=>{Y.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??Rl(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}}),X=g("$ZodStringFormat",(t,e)=>{Xr.init(t,e),wo.init(t,e)}),sd=g("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=hl),X.init(t,e)}),id=g("$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=gi(n))}else e.pattern??(e.pattern=gi());X.init(t,e)}),ad=g("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=gl),X.init(t,e)}),cd=g("$ZodURL",(t,e)=>{X.init(t,e),t._zod.check=r=>{try{let n=r.value.trim();if(!e.normalize&&e.protocol?.source===wl.source&&!/^https?:\/\//i.test(n)){r.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:r.value,inst:t,continue:!e.abort});return}let o=new URL(n);e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(o.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:e.hostname.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})),e.normalize?r.value=o.href:r.value=n;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:t,continue:!e.abort})}}}),ud=g("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=_l()),X.init(t,e)}),ld=g("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=fl),X.init(t,e)}),dd=g("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=cl),X.init(t,e)}),pd=g("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=ul),X.init(t,e)}),fd=g("$ZodULID",(t,e)=>{e.pattern??(e.pattern=ll),X.init(t,e)}),md=g("$ZodXID",(t,e)=>{e.pattern??(e.pattern=dl),X.init(t,e)}),hd=g("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=pl),X.init(t,e)}),gd=g("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=zl(e)),X.init(t,e)}),_d=g("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=$l),X.init(t,e)}),yd=g("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=Tl(e)),X.init(t,e)}),Sd=g("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=ml),X.init(t,e)}),vd=g("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=yl),X.init(t,e),t._zod.bag.format="ipv4"}),bd=g("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=Sl),X.init(t,e),t._zod.bag.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})}}});var Ed=g("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=vl),X.init(t,e)}),wd=g("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=bl),X.init(t,e),t._zod.check=r=>{let n=r.value.split("/");try{if(n.length!==2)throw new Error;let[o,s]=n;if(!s)throw new Error;let i=Number(s);if(`${i}`!==s)throw new Error;if(i<0||i>128)throw new Error;new URL(`http://[${o}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});function kd(t){if(t==="")return!0;if(/\s/.test(t)||t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var xd=g("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=El),X.init(t,e),t._zod.bag.contentEncoding="base64",t._zod.check=r=>{kd(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function sS(t){if(!_i.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return kd(r)}var $d=g("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=_i),X.init(t,e),t._zod.bag.contentEncoding="base64url",t._zod.check=r=>{sS(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),Pd=g("$ZodE164",(t,e)=>{e.pattern??(e.pattern=kl),X.init(t,e)});function iS(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 Td=g("$ZodJWT",(t,e)=>{X.init(t,e),t._zod.check=r=>{iS(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var Ei=g("$ZodNumber",(t,e)=>{Y.init(t,e),t._zod.pattern=t._zod.bag.pattern??yi,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}}),zd=g("$ZodNumberFormat",(t,e)=>{jl.init(t,e),Ei.init(t,e)}),Rd=g("$ZodBoolean",(t,e)=>{Y.init(t,e),t._zod.pattern=Ol,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 Id=g("$ZodNull",(t,e)=>{Y.init(t,e),t._zod.pattern=Al,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 Od=g("$ZodUnknown",(t,e)=>{Y.init(t,e),t._zod.parse=r=>r}),Ad=g("$ZodNever",(t,e)=>{Y.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function Yl(t,e,r){t.issues.length&&e.issues.push(...gt(r,t.issues)),e.value[r]=t.value}var Md=g("$ZodArray",(t,e)=>{Y.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=>Yl(u,r,i))):Yl(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function Eo(t,e,r,n,o,s){let i=r in n;if(t.issues.length){if(o&&s&&!i)return;e.issues.push(...gt(r,t.issues))}if(!i&&!o){t.issues.length||e.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[r]});return}t.value===void 0?i&&(e.value[r]=void 0):e.value[r]=t.value}function Cd(t){let e=Object.keys(t.shape);for(let n of e)if(!t.shape?.[n]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${n}": expected a Zod schema`);let r=di(t.shape);return{...t,keys:e,keySet:new Set(e),numKeys:e.length,optionalKeys:new Set(r)}}function
|
|
19
|
+
`))}};var Bl={major:4,minor:4,patch:3};var Y=g("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=Bl;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=(i,a,c)=>{let u=Pt(i),l;for(let d of a){if(d._zod.def.when){if(fi(i)||!d._zod.def.when(i))continue}else if(u)continue;let p=i.issues.length,f=d._zod.check(i);if(f instanceof Promise&&c?.async===!1)throw new ot;if(l||f instanceof Promise)l=(l??Promise.resolve()).then(async()=>{await f,i.issues.length!==p&&(u||(u=Pt(i,p)))});else{if(i.issues.length===p)continue;u||(u=Pt(i,p))}}return l?l.then(()=>i):i},s=(i,a,c)=>{if(Pt(i))return i.aborted=!0,i;let u=o(a,n,c);if(u instanceof Promise){if(c.async===!1)throw new ot;return u.then(l=>t._zod.parse(l,c))}return t._zod.parse(u,c)};t._zod.run=(i,a)=>{if(a.skipChecks)return t._zod.parse(i,a);if(a.direction==="backward"){let u=t._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return u instanceof Promise?u.then(l=>s(l,i,a)):s(u,i,a)}let c=t._zod.parse(i,a);if(c instanceof Promise){if(a.async===!1)throw new ot;return c.then(u=>o(u,n,a))}return o(c,n,a)}}H(t,"~standard",()=>({validate:o=>{try{let s=Br(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return yo(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}))}),wo=g("$ZodString",(t,e)=>{Y.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??Rl(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}}),X=g("$ZodStringFormat",(t,e)=>{Xr.init(t,e),wo.init(t,e)}),sd=g("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=hl),X.init(t,e)}),id=g("$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=gi(n))}else e.pattern??(e.pattern=gi());X.init(t,e)}),ad=g("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=gl),X.init(t,e)}),cd=g("$ZodURL",(t,e)=>{X.init(t,e),t._zod.check=r=>{try{let n=r.value.trim();if(!e.normalize&&e.protocol?.source===wl.source&&!/^https?:\/\//i.test(n)){r.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:r.value,inst:t,continue:!e.abort});return}let o=new URL(n);e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(o.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:e.hostname.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})),e.normalize?r.value=o.href:r.value=n;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:t,continue:!e.abort})}}}),ud=g("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=_l()),X.init(t,e)}),ld=g("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=fl),X.init(t,e)}),dd=g("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=cl),X.init(t,e)}),pd=g("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=ul),X.init(t,e)}),fd=g("$ZodULID",(t,e)=>{e.pattern??(e.pattern=ll),X.init(t,e)}),md=g("$ZodXID",(t,e)=>{e.pattern??(e.pattern=dl),X.init(t,e)}),hd=g("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=pl),X.init(t,e)}),gd=g("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=zl(e)),X.init(t,e)}),_d=g("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=$l),X.init(t,e)}),yd=g("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=Tl(e)),X.init(t,e)}),Sd=g("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=ml),X.init(t,e)}),vd=g("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=yl),X.init(t,e),t._zod.bag.format="ipv4"}),bd=g("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=Sl),X.init(t,e),t._zod.bag.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})}}});var Ed=g("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=vl),X.init(t,e)}),wd=g("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=bl),X.init(t,e),t._zod.check=r=>{let n=r.value.split("/");try{if(n.length!==2)throw new Error;let[o,s]=n;if(!s)throw new Error;let i=Number(s);if(`${i}`!==s)throw new Error;if(i<0||i>128)throw new Error;new URL(`http://[${o}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});function kd(t){if(t==="")return!0;if(/\s/.test(t)||t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var xd=g("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=El),X.init(t,e),t._zod.bag.contentEncoding="base64",t._zod.check=r=>{kd(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function sS(t){if(!_i.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return kd(r)}var $d=g("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=_i),X.init(t,e),t._zod.bag.contentEncoding="base64url",t._zod.check=r=>{sS(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),Pd=g("$ZodE164",(t,e)=>{e.pattern??(e.pattern=kl),X.init(t,e)});function iS(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 Td=g("$ZodJWT",(t,e)=>{X.init(t,e),t._zod.check=r=>{iS(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var Ei=g("$ZodNumber",(t,e)=>{Y.init(t,e),t._zod.pattern=t._zod.bag.pattern??yi,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}}),zd=g("$ZodNumberFormat",(t,e)=>{jl.init(t,e),Ei.init(t,e)}),Rd=g("$ZodBoolean",(t,e)=>{Y.init(t,e),t._zod.pattern=Ol,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 Id=g("$ZodNull",(t,e)=>{Y.init(t,e),t._zod.pattern=Al,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 Od=g("$ZodUnknown",(t,e)=>{Y.init(t,e),t._zod.parse=r=>r}),Ad=g("$ZodNever",(t,e)=>{Y.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function Yl(t,e,r){t.issues.length&&e.issues.push(...gt(r,t.issues)),e.value[r]=t.value}var Md=g("$ZodArray",(t,e)=>{Y.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=>Yl(u,r,i))):Yl(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function Eo(t,e,r,n,o,s){let i=r in n;if(t.issues.length){if(o&&s&&!i)return;e.issues.push(...gt(r,t.issues))}if(!i&&!o){t.issues.length||e.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[r]});return}t.value===void 0?i&&(e.value[r]=void 0):e.value[r]=t.value}function Cd(t){let e=Object.keys(t.shape);for(let n of e)if(!t.shape?.[n]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${n}": expected a Zod schema`);let r=di(t.shape);return{...t,keys:e,keySet:new Set(e),numKeys:e.length,optionalKeys:new Set(r)}}function Dd(t,e,r,n,o,s){let i=[],a=o.keySet,c=o.catchall._zod,u=c.def.type,l=c.optin==="optional",d=c.optout==="optional";for(let p in e){if(p==="__proto__"||a.has(p))continue;if(u==="never"){i.push(p);continue}let f=c.run({value:e[p],issues:[]},n);f instanceof Promise?t.push(f.then(m=>Eo(m,r,p,e,l,d))):Eo(f,r,p,e,l,d)}return i.length&&r.issues.push({code:"unrecognized_keys",keys:i,input:e,inst:s}),t.length?Promise.all(t).then(()=>r):r}var aS=g("$ZodObject",(t,e)=>{if(Y.init(t,e),!Object.getOwnPropertyDescriptor(e,"shape")?.get){let a=e.shape;Object.defineProperty(e,"shape",{get:()=>{let c={...a};return Object.defineProperty(e,"shape",{value:c}),c}})}let n=dr(()=>Cd(e));H(t._zod,"propValues",()=>{let a=e.shape,c={};for(let u in a){let l=a[u]._zod;if(l.values){c[u]??(c[u]=new Set);for(let d of l.values)c[u].add(d)}}return c});let o=Ht,s=e.catchall,i;t._zod.parse=(a,c)=>{i??(i=n.value);let u=a.value;if(!o(u))return a.issues.push({expected:"object",code:"invalid_type",input:u,inst:t}),a;a.value={};let l=[],d=i.shape;for(let p of i.keys){let f=d[p],m=f._zod.optin==="optional",_=f._zod.optout==="optional",S=f._zod.run({value:u[p],issues:[]},c);S instanceof Promise?l.push(S.then(b=>Eo(b,a,p,u,m,_))):Eo(S,a,p,u,m,_)}return s?Dd(l,u,a,c,n.value,t):l.length?Promise.all(l).then(()=>a):a}}),Nd=g("$ZodObjectJIT",(t,e)=>{aS.init(t,e);let r=t._zod.parse,n=dr(()=>Cd(e)),o=p=>{let f=new vo(["shape","payload","ctx"]),m=n.value,_=v=>{let $=po(v);return`shape[${$}]._zod.run({ value: input[${$}], issues: [] }, ctx)`};f.write("const input = payload.value;");let S=Object.create(null),b=0;for(let v of m.keys)S[v]=`key_${b++}`;f.write("const newResult = {};");for(let v of m.keys){let $=S[v],x=po(v),ve=p[v],xe=ve?._zod?.optin==="optional",Zt=ve?._zod?.optout==="optional";f.write(`const ${$} = ${_(v)};`),xe&&Zt?f.write(`
|
|
20
20
|
if (${$}.issues.length) {
|
|
21
21
|
if (${x} in input) {
|
|
22
22
|
payload.issues = payload.issues.concat(${$}.issues.map(iss => ({
|
|
@@ -75,12 +75,12 @@ ${s.stack}`:` ${s.message}`;else if(this.getLevel()===0&&typeof s=="object")try{
|
|
|
75
75
|
}
|
|
76
76
|
}
|
|
77
77
|
|
|
78
|
-
`)}f.write("payload.value = newResult;"),f.write("return payload;");let E=f.compile();return(v,$)=>E(p,v,$)},s,i=Ht,a=!ur.jitless,u=a&&ui.value,l=e.catchall,d;t._zod.parse=(p,f)=>{d??(d=n.value);let m=p.value;return i(m)?a&&u&&f?.async===!1&&f.jitless!==!0?(s||(s=o(e.shape)),p=s(p,f),l?Nd([],m,p,f,d,t):p):r(p,f):(p.issues.push({expected:"object",code:"invalid_type",input:m,inst:t}),p)}});function Xl(t,e,r,n){for(let s of t)if(s.issues.length===0)return e.value=s.value,e;let o=t.filter(s=>!Pt(s));return o.length===1?(e.value=o[0].value,o[0]):(e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(s=>s.issues.map(i=>qe(i,n,je())))}),e)}var wi=g("$ZodUnion",(t,e)=>{Y.init(t,e),H(t._zod,"optin",()=>e.options.some(n=>n._zod.optin==="optional")?"optional":void 0),H(t._zod,"optout",()=>e.options.some(n=>n._zod.optout==="optional")?"optional":void 0),H(t._zod,"values",()=>{if(e.options.every(n=>n._zod.values))return new Set(e.options.flatMap(n=>Array.from(n._zod.values)))}),H(t._zod,"pattern",()=>{if(e.options.every(n=>n._zod.pattern)){let n=e.options.map(o=>o._zod.pattern);return new RegExp(`^(${n.map(o=>Gr(o.source)).join("|")})$`)}});let r=e.options.length===1?e.options[0]._zod.run:null;t._zod.parse=(n,o)=>{if(r)return r(n,o);let s=!1,i=[];for(let a of e.options){let c=a._zod.run({value:n.value,issues:[]},o);if(c instanceof Promise)i.push(c),s=!0;else{if(c.issues.length===0)return c;i.push(c)}}return s?Promise.all(i).then(a=>Xl(a,n,t,o)):Xl(i,n,t,o)}});var jd=g("$ZodDiscriminatedUnion",(t,e)=>{e.inclusive=!1,wi.init(t,e);let r=t._zod.parse;H(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=dr(()=>{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(!Ht(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||s.direction==="backward"?r(o,s):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:e.discriminator,options:Array.from(n.value.keys()),input:i,path:[e.discriminator],inst:t}),o)}}),Ld=g("$ZodIntersection",(t,e)=>{Y.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])=>Ql(r,c,u)):Ql(r,s,i)}});function bi(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($t(t)&&$t(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=bi(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=bi(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 Ql(t,e,r){let n=new Map,o;for(let a of e.issues)if(a.code==="unrecognized_keys"){o??(o=a);for(let c of a.keys)n.has(c)||n.set(c,{}),n.get(c).l=!0}else t.issues.push(a);for(let a of r.issues)if(a.code==="unrecognized_keys")for(let c of a.keys)n.has(c)||n.set(c,{}),n.get(c).r=!0;else t.issues.push(a);let s=[...n].filter(([,a])=>a.l&&a.r).map(([a])=>a);if(s.length&&o&&t.issues.push({...o,keys:s}),Pt(t))return t;let i=bi(e.value,r.value);if(!i.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(i.mergeErrorPath)}`);return t.value=i.data,t}var Ud=g("$ZodRecord",(t,e)=>{Y.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!$t(o))return r.issues.push({expected:"record",code:"invalid_type",input:o,inst:t}),r;let s=[],i=e.keyType._zod.values;if(i){r.value={};let a=new Set;for(let u of i)if(typeof u=="string"||typeof u=="number"||typeof u=="symbol"){a.add(typeof u=="number"?u.toString():u);let l=e.keyType._zod.run({value:u,issues:[]},n);if(l instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(l.issues.length){r.issues.push({code:"invalid_key",origin:"record",issues:l.issues.map(f=>qe(f,n,je())),input:u,path:[u],inst:t});continue}let d=l.value,p=e.valueType._zod.run({value:o[u],issues:[]},n);p instanceof Promise?s.push(p.then(f=>{f.issues.length&&r.issues.push(...gt(u,f.issues)),r.value[d]=f.value})):(p.issues.length&&r.issues.push(...gt(u,p.issues)),r.value[d]=p.value)}let c;for(let u in o)a.has(u)||(c=c??[],c.push(u));c&&c.length>0&&r.issues.push({code:"unrecognized_keys",input:o,inst:t,keys:c})}else{r.value={};for(let a of Reflect.ownKeys(o)){if(a==="__proto__"||!Object.prototype.propertyIsEnumerable.call(o,a))continue;let c=e.keyType._zod.run({value:a,issues:[]},n);if(c instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof a=="string"&&yi.test(a)&&c.issues.length){let d=e.keyType._zod.run({value:Number(a),issues:[]},n);if(d instanceof Promise)throw new Error("Async schemas not supported in object keys currently");d.issues.length===0&&(c=d)}if(c.issues.length){e.mode==="loose"?r.value[a]=o[a]:r.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map(d=>qe(d,n,je())),input:a,path:[a],inst:t});continue}let l=e.valueType._zod.run({value:o[a],issues:[]},n);l instanceof Promise?s.push(l.then(d=>{d.issues.length&&r.issues.push(...gt(a,d.issues)),r.value[c.value]=d.value})):(l.issues.length&&r.issues.push(...gt(a,l.issues)),r.value[c.value]=l.value)}}return s.length?Promise.all(s).then(()=>r):r}});var qd=g("$ZodEnum",(t,e)=>{Y.init(t,e);let r=Wr(e.entries),n=new Set(r);t._zod.values=n,t._zod.pattern=new RegExp(`^(${r.filter(o=>li.has(typeof o)).map(o=>typeof o=="string"?ht(o):o.toString()).join("|")})$`),t._zod.parse=(o,s)=>{let i=o.value;return n.has(i)||o.issues.push({code:"invalid_value",values:r,input:i,inst:t}),o}}),Zd=g("$ZodLiteral",(t,e)=>{if(Y.init(t,e),e.values.length===0)throw new Error("Cannot create literal schema with no valid values");let r=new Set(e.values);t._zod.values=r,t._zod.pattern=new RegExp(`^(${e.values.map(n=>typeof n=="string"?ht(n):n?ht(n.toString()):String(n)).join("|")})$`),t._zod.parse=(n,o)=>{let s=n.value;return r.has(s)||n.issues.push({code:"invalid_value",values:e.values,input:s,inst:t}),n}});var Fd=g("$ZodTransform",(t,e)=>{Y.init(t,e),t._zod.optin="optional",t._zod.parse=(r,n)=>{if(n.direction==="backward")throw new cr(t.constructor.name);let o=e.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then(i=>(r.value=i,r.fallback=!0,r));if(o instanceof Promise)throw new ot;return r.value=o,r.fallback=!0,r}});function ed(t,e){return e===void 0&&(t.issues.length||t.fallback)?{issues:[],value:void 0}:t}var ki=g("$ZodOptional",(t,e)=>{Y.init(t,e),t._zod.optin="optional",t._zod.optout="optional",H(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),H(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Gr(r.source)})?$`):void 0}),t._zod.parse=(r,n)=>{if(e.innerType._zod.optin==="optional"){let o=r.value,s=e.innerType._zod.run(r,n);return s instanceof Promise?s.then(i=>ed(i,o)):ed(s,o)}return r.value===void 0?r:e.innerType._zod.run(r,n)}}),Hd=g("$ZodExactOptional",(t,e)=>{ki.init(t,e),H(t._zod,"values",()=>e.innerType._zod.values),H(t._zod,"pattern",()=>e.innerType._zod.pattern),t._zod.parse=(r,n)=>e.innerType._zod.run(r,n)}),Wd=g("$ZodNullable",(t,e)=>{Y.init(t,e),H(t._zod,"optin",()=>e.innerType._zod.optin),H(t._zod,"optout",()=>e.innerType._zod.optout),H(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Gr(r.source)}|null)$`):void 0}),H(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)}),Vd=g("$ZodDefault",(t,e)=>{Y.init(t,e),t._zod.optin="optional",H(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(n.direction==="backward")return e.innerType._zod.run(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=>td(s,e)):td(o,e)}});function td(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Gd=g("$ZodPrefault",(t,e)=>{Y.init(t,e),t._zod.optin="optional",H(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>(n.direction==="backward"||r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,n))}),Kd=g("$ZodNonOptional",(t,e)=>{Y.init(t,e),H(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=>rd(s,t)):rd(o,t)}});function rd(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 Jd=g("$ZodCatch",(t,e)=>{Y.init(t,e),t._zod.optin="optional",H(t._zod,"optout",()=>e.innerType._zod.optout),H(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(n.direction==="backward")return e.innerType._zod.run(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=>qe(i,n,je()))},input:r.value}),r.issues=[],r.fallback=!0),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>qe(s,n,je()))},input:r.value}),r.issues=[],r.fallback=!0),r)}});var xi=g("$ZodPipe",(t,e)=>{Y.init(t,e),H(t._zod,"values",()=>e.in._zod.values),H(t._zod,"optin",()=>e.in._zod.optin),H(t._zod,"optout",()=>e.out._zod.optout),H(t._zod,"propValues",()=>e.in._zod.propValues),t._zod.parse=(r,n)=>{if(n.direction==="backward"){let s=e.out._zod.run(r,n);return s instanceof Promise?s.then(i=>bo(i,e.in,n)):bo(s,e.in,n)}let o=e.in._zod.run(r,n);return o instanceof Promise?o.then(s=>bo(s,e.out,n)):bo(o,e.out,n)}});function bo(t,e,r){return t.issues.length?(t.aborted=!0,t):e._zod.run({value:t.value,issues:t.issues,fallback:t.fallback},r)}var Bd=g("$ZodPreprocess",(t,e)=>{xi.init(t,e)}),Yd=g("$ZodReadonly",(t,e)=>{Y.init(t,e),H(t._zod,"propValues",()=>e.innerType._zod.propValues),H(t._zod,"values",()=>e.innerType._zod.values),H(t._zod,"optin",()=>e.innerType?._zod?.optin),H(t._zod,"optout",()=>e.innerType?._zod?.optout),t._zod.parse=(r,n)=>{if(n.direction==="backward")return e.innerType._zod.run(r,n);let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(nd):nd(o)}});function nd(t){return t.value=Object.freeze(t.value),t}var Xd=g("$ZodCustom",(t,e)=>{fe.init(t,e),Y.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=>od(s,r,n,t));od(o,r,n,t)}});function od(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(pr(o))}}var cS=()=>{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"},map:{unit:"entries",verb:"to have"}};function e(o){return t[o]??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",mac:"MAC 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"},n={nan:"NaN"};return o=>{switch(o.code){case"invalid_type":{let s=n[o.expected]??o.expected,i=mi(o.input),a=n[i]??i;return`Invalid input: expected ${s}, received ${a}`}case"invalid_value":return o.values.length===1?`Invalid input: expected ${mo(o.values[0])}`:`Invalid option: expected one of ${lo(o.values,"|")}`;case"too_big":{let s=o.inclusive?"<=":"<",i=e(o.origin);return i?`Too big: expected ${o.origin??"value"} to have ${s}${o.maximum.toString()} ${i.unit??"elements"}`:`Too big: expected ${o.origin??"value"} to be ${s}${o.maximum.toString()}`}case"too_small":{let s=o.inclusive?">=":">",i=e(o.origin);return i?`Too small: expected ${o.origin} to have ${s}${o.minimum.toString()} ${i.unit}`:`Too small: expected ${o.origin} to be ${s}${o.minimum.toString()}`}case"invalid_format":{let s=o;return s.format==="starts_with"?`Invalid string: must start with "${s.prefix}"`:s.format==="ends_with"?`Invalid string: must end with "${s.suffix}"`:s.format==="includes"?`Invalid string: must include "${s.includes}"`:s.format==="regex"?`Invalid string: must match pattern ${s.pattern}`:`Invalid ${r[s.format]??o.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${o.divisor}`;case"unrecognized_keys":return`Unrecognized key${o.keys.length>1?"s":""}: ${lo(o.keys,", ")}`;case"invalid_key":return`Invalid key in ${o.origin}`;case"invalid_union":return o.options&&Array.isArray(o.options)&&o.options.length>0?`Invalid discriminator value. Expected ${o.options.map(i=>`'${i}'`).join(" | ")}`:"Invalid input";case"invalid_element":return`Invalid value in ${o.origin}`;default:return"Invalid input"}}};function Qd(){return{localeError:cS()}}var ep;var $i=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...r){let n=r[0];return this._map.set(e,n),n&&typeof n=="object"&&"id"in n&&this._idmap.set(n.id,e),this}clear(){return this._map=new WeakMap,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)??{}};delete n.id;let o={...n,...this._map.get(e)};return Object.keys(o).length?o:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function uS(){return new $i}(ep=globalThis).__zod_globalRegistry??(ep.__zod_globalRegistry=uS());var Wt=globalThis.__zod_globalRegistry;function tp(t,e){return new t({type:"string",...z(e)})}function rp(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...z(e)})}function Pi(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...z(e)})}function np(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...z(e)})}function op(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...z(e)})}function sp(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...z(e)})}function ip(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...z(e)})}function ap(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...z(e)})}function cp(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...z(e)})}function up(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...z(e)})}function lp(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...z(e)})}function dp(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...z(e)})}function pp(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...z(e)})}function fp(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...z(e)})}function mp(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...z(e)})}function hp(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...z(e)})}function gp(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...z(e)})}function _p(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...z(e)})}function yp(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...z(e)})}function Sp(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...z(e)})}function vp(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...z(e)})}function bp(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...z(e)})}function Ep(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...z(e)})}function wp(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...z(e)})}function kp(t,e){return new t({type:"string",format:"date",check:"string_format",...z(e)})}function xp(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...z(e)})}function $p(t,e){return new t({type:"string",format:"duration",check:"string_format",...z(e)})}function Pp(t,e){return new t({type:"number",checks:[],...z(e)})}function Tp(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...z(e)})}function zp(t,e){return new t({type:"boolean",...z(e)})}function Rp(t,e){return new t({type:"null",...z(e)})}function Ip(t){return new t({type:"unknown"})}function Op(t,e){return new t({type:"never",...z(e)})}function ko(t,e){return new Si({check:"less_than",...z(e),value:t,inclusive:!1})}function Qr(t,e){return new Si({check:"less_than",...z(e),value:t,inclusive:!0})}function xo(t,e){return new vi({check:"greater_than",...z(e),value:t,inclusive:!1})}function en(t,e){return new vi({check:"greater_than",...z(e),value:t,inclusive:!0})}function $o(t,e){return new Dl({check:"multiple_of",...z(e),value:t})}function Po(t,e){return new Ll({check:"max_length",...z(e),maximum:t})}function fr(t,e){return new Ul({check:"min_length",...z(e),minimum:t})}function To(t,e){return new ql({check:"length_equals",...z(e),length:t})}function Ti(t,e){return new Zl({check:"string_format",format:"regex",...z(e),pattern:t})}function zi(t){return new Fl({check:"string_format",format:"lowercase",...z(t)})}function Ri(t){return new Hl({check:"string_format",format:"uppercase",...z(t)})}function Ii(t,e){return new Wl({check:"string_format",format:"includes",...z(e),includes:t})}function Oi(t,e){return new Vl({check:"string_format",format:"starts_with",...z(e),prefix:t})}function Ai(t,e){return new Gl({check:"string_format",format:"ends_with",...z(e),suffix:t})}function Tt(t){return new Kl({check:"overwrite",tx:t})}function Mi(t){return Tt(e=>e.normalize(t))}function Ci(){return Tt(t=>t.trim())}function Ni(){return Tt(t=>t.toLowerCase())}function Di(){return Tt(t=>t.toUpperCase())}function ji(){return Tt(t=>ci(t))}function Ap(t,e,r){return new t({type:"array",element:e,...z(r)})}function Mp(t,e,r){let n=z(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function Cp(t,e,r){return new t({type:"custom",check:"custom",fn:e,...z(r)})}function Np(t,e){let r=lS(n=>(n.addIssue=o=>{if(typeof o=="string")n.issues.push(pr(o,n.value,r._zod.def));else{let s=o;s.fatal&&(s.continue=!1),s.code??(s.code="custom"),s.input??(s.input=n.value),s.inst??(s.inst=r),s.continue??(s.continue=!r._zod.def.abort),n.issues.push(pr(s))}},t(n.value,n)),e);return r}function lS(t,e){let r=new fe({check:"custom",...z(e)});return r._zod.check=t,r}function Li(t){let e=t?.target??"draft-2020-12";return e==="draft-4"&&(e="draft-04"),e==="draft-7"&&(e="draft-07"),{processors:t.processors??{},metadataRegistry:t?.metadata??Wt,target:e,unrepresentable:t?.unrepresentable??"throw",override:t?.override??(()=>{}),io:t?.io??"output",counter:0,seen:new Map,cycles:t?.cycles??"ref",reused:t?.reused??"inline",external:t?.external??void 0}}function ie(t,e,r={path:[],schemaPath:[]}){var n;let o=t._zod.def,s=e.seen.get(t);if(s)return s.count++,r.schemaPath.includes(t)&&(s.cycle=r.path),s.schema;let i={schema:{},count:1,cycle:void 0,path:r.path};e.seen.set(t,i);let a=t._zod.toJSONSchema?.();if(a)i.schema=a;else{let l={...r,schemaPath:[...r.schemaPath,t],path:r.path};if(t._zod.processJSONSchema)t._zod.processJSONSchema(e,i.schema,l);else{let p=i.schema,f=e.processors[o.type];if(!f)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${o.type}`);f(t,e,p,l)}let d=t._zod.parent;d&&(i.ref||(i.ref=d),ie(d,e,l),e.seen.get(d).isParent=!0)}let c=e.metadataRegistry.get(t);return c&&Object.assign(i.schema,c),e.io==="input"&&Pe(t)&&(delete i.schema.examples,delete i.schema.default),e.io==="input"&&"_prefault"in i.schema&&((n=i.schema).default??(n.default=i.schema._prefault)),delete i.schema._prefault,e.seen.get(t).schema}function Ui(t,e){let r=t.seen.get(e);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");let n=new Map;for(let i of t.seen.entries()){let a=t.metadataRegistry.get(i[0])?.id;if(a){let c=n.get(a);if(c&&c!==i[0])throw new Error(`Duplicate schema id "${a}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);n.set(a,i[0])}}let o=i=>{let a=t.target==="draft-2020-12"?"$defs":"definitions";if(t.external){let d=t.external.registry.get(i[0])?.id,p=t.external.uri??(m=>m);if(d)return{ref:p(d)};let f=i[1].defId??i[1].schema.id??`schema${t.counter++}`;return i[1].defId=f,{defId:f,ref:`${p("__shared")}#/${a}/${f}`}}if(i[1]===r)return{ref:"#"};let u=`#/${a}/`,l=i[1].schema.id??`__schema${t.counter++}`;return{defId:l,ref:u+l}},s=i=>{if(i[1].schema.$ref)return;let a=i[1],{ref:c,defId:u}=o(i);a.def={...a.schema},u&&(a.defId=u);let l=a.schema;for(let d in l)delete l[d];l.$ref=c};if(t.cycles==="throw")for(let i of t.seen.entries()){let a=i[1];if(a.cycle)throw new Error(`Cycle detected: #/${a.cycle?.join("/")}/<root>
|
|
78
|
+
`)}f.write("payload.value = newResult;"),f.write("return payload;");let E=f.compile();return(v,$)=>E(p,v,$)},s,i=Ht,a=!ur.jitless,u=a&&ui.value,l=e.catchall,d;t._zod.parse=(p,f)=>{d??(d=n.value);let m=p.value;return i(m)?a&&u&&f?.async===!1&&f.jitless!==!0?(s||(s=o(e.shape)),p=s(p,f),l?Dd([],m,p,f,d,t):p):r(p,f):(p.issues.push({expected:"object",code:"invalid_type",input:m,inst:t}),p)}});function Xl(t,e,r,n){for(let s of t)if(s.issues.length===0)return e.value=s.value,e;let o=t.filter(s=>!Pt(s));return o.length===1?(e.value=o[0].value,o[0]):(e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(s=>s.issues.map(i=>qe(i,n,je())))}),e)}var wi=g("$ZodUnion",(t,e)=>{Y.init(t,e),H(t._zod,"optin",()=>e.options.some(n=>n._zod.optin==="optional")?"optional":void 0),H(t._zod,"optout",()=>e.options.some(n=>n._zod.optout==="optional")?"optional":void 0),H(t._zod,"values",()=>{if(e.options.every(n=>n._zod.values))return new Set(e.options.flatMap(n=>Array.from(n._zod.values)))}),H(t._zod,"pattern",()=>{if(e.options.every(n=>n._zod.pattern)){let n=e.options.map(o=>o._zod.pattern);return new RegExp(`^(${n.map(o=>Gr(o.source)).join("|")})$`)}});let r=e.options.length===1?e.options[0]._zod.run:null;t._zod.parse=(n,o)=>{if(r)return r(n,o);let s=!1,i=[];for(let a of e.options){let c=a._zod.run({value:n.value,issues:[]},o);if(c instanceof Promise)i.push(c),s=!0;else{if(c.issues.length===0)return c;i.push(c)}}return s?Promise.all(i).then(a=>Xl(a,n,t,o)):Xl(i,n,t,o)}});var jd=g("$ZodDiscriminatedUnion",(t,e)=>{e.inclusive=!1,wi.init(t,e);let r=t._zod.parse;H(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=dr(()=>{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(!Ht(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||s.direction==="backward"?r(o,s):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:e.discriminator,options:Array.from(n.value.keys()),input:i,path:[e.discriminator],inst:t}),o)}}),Ld=g("$ZodIntersection",(t,e)=>{Y.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])=>Ql(r,c,u)):Ql(r,s,i)}});function bi(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($t(t)&&$t(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=bi(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=bi(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 Ql(t,e,r){let n=new Map,o;for(let a of e.issues)if(a.code==="unrecognized_keys"){o??(o=a);for(let c of a.keys)n.has(c)||n.set(c,{}),n.get(c).l=!0}else t.issues.push(a);for(let a of r.issues)if(a.code==="unrecognized_keys")for(let c of a.keys)n.has(c)||n.set(c,{}),n.get(c).r=!0;else t.issues.push(a);let s=[...n].filter(([,a])=>a.l&&a.r).map(([a])=>a);if(s.length&&o&&t.issues.push({...o,keys:s}),Pt(t))return t;let i=bi(e.value,r.value);if(!i.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(i.mergeErrorPath)}`);return t.value=i.data,t}var Ud=g("$ZodRecord",(t,e)=>{Y.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!$t(o))return r.issues.push({expected:"record",code:"invalid_type",input:o,inst:t}),r;let s=[],i=e.keyType._zod.values;if(i){r.value={};let a=new Set;for(let u of i)if(typeof u=="string"||typeof u=="number"||typeof u=="symbol"){a.add(typeof u=="number"?u.toString():u);let l=e.keyType._zod.run({value:u,issues:[]},n);if(l instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(l.issues.length){r.issues.push({code:"invalid_key",origin:"record",issues:l.issues.map(f=>qe(f,n,je())),input:u,path:[u],inst:t});continue}let d=l.value,p=e.valueType._zod.run({value:o[u],issues:[]},n);p instanceof Promise?s.push(p.then(f=>{f.issues.length&&r.issues.push(...gt(u,f.issues)),r.value[d]=f.value})):(p.issues.length&&r.issues.push(...gt(u,p.issues)),r.value[d]=p.value)}let c;for(let u in o)a.has(u)||(c=c??[],c.push(u));c&&c.length>0&&r.issues.push({code:"unrecognized_keys",input:o,inst:t,keys:c})}else{r.value={};for(let a of Reflect.ownKeys(o)){if(a==="__proto__"||!Object.prototype.propertyIsEnumerable.call(o,a))continue;let c=e.keyType._zod.run({value:a,issues:[]},n);if(c instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof a=="string"&&yi.test(a)&&c.issues.length){let d=e.keyType._zod.run({value:Number(a),issues:[]},n);if(d instanceof Promise)throw new Error("Async schemas not supported in object keys currently");d.issues.length===0&&(c=d)}if(c.issues.length){e.mode==="loose"?r.value[a]=o[a]:r.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map(d=>qe(d,n,je())),input:a,path:[a],inst:t});continue}let l=e.valueType._zod.run({value:o[a],issues:[]},n);l instanceof Promise?s.push(l.then(d=>{d.issues.length&&r.issues.push(...gt(a,d.issues)),r.value[c.value]=d.value})):(l.issues.length&&r.issues.push(...gt(a,l.issues)),r.value[c.value]=l.value)}}return s.length?Promise.all(s).then(()=>r):r}});var qd=g("$ZodEnum",(t,e)=>{Y.init(t,e);let r=Wr(e.entries),n=new Set(r);t._zod.values=n,t._zod.pattern=new RegExp(`^(${r.filter(o=>li.has(typeof o)).map(o=>typeof o=="string"?ht(o):o.toString()).join("|")})$`),t._zod.parse=(o,s)=>{let i=o.value;return n.has(i)||o.issues.push({code:"invalid_value",values:r,input:i,inst:t}),o}}),Zd=g("$ZodLiteral",(t,e)=>{if(Y.init(t,e),e.values.length===0)throw new Error("Cannot create literal schema with no valid values");let r=new Set(e.values);t._zod.values=r,t._zod.pattern=new RegExp(`^(${e.values.map(n=>typeof n=="string"?ht(n):n?ht(n.toString()):String(n)).join("|")})$`),t._zod.parse=(n,o)=>{let s=n.value;return r.has(s)||n.issues.push({code:"invalid_value",values:e.values,input:s,inst:t}),n}});var Fd=g("$ZodTransform",(t,e)=>{Y.init(t,e),t._zod.optin="optional",t._zod.parse=(r,n)=>{if(n.direction==="backward")throw new cr(t.constructor.name);let o=e.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then(i=>(r.value=i,r.fallback=!0,r));if(o instanceof Promise)throw new ot;return r.value=o,r.fallback=!0,r}});function ed(t,e){return e===void 0&&(t.issues.length||t.fallback)?{issues:[],value:void 0}:t}var ki=g("$ZodOptional",(t,e)=>{Y.init(t,e),t._zod.optin="optional",t._zod.optout="optional",H(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),H(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Gr(r.source)})?$`):void 0}),t._zod.parse=(r,n)=>{if(e.innerType._zod.optin==="optional"){let o=r.value,s=e.innerType._zod.run(r,n);return s instanceof Promise?s.then(i=>ed(i,o)):ed(s,o)}return r.value===void 0?r:e.innerType._zod.run(r,n)}}),Hd=g("$ZodExactOptional",(t,e)=>{ki.init(t,e),H(t._zod,"values",()=>e.innerType._zod.values),H(t._zod,"pattern",()=>e.innerType._zod.pattern),t._zod.parse=(r,n)=>e.innerType._zod.run(r,n)}),Wd=g("$ZodNullable",(t,e)=>{Y.init(t,e),H(t._zod,"optin",()=>e.innerType._zod.optin),H(t._zod,"optout",()=>e.innerType._zod.optout),H(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Gr(r.source)}|null)$`):void 0}),H(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)}),Vd=g("$ZodDefault",(t,e)=>{Y.init(t,e),t._zod.optin="optional",H(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(n.direction==="backward")return e.innerType._zod.run(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=>td(s,e)):td(o,e)}});function td(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Gd=g("$ZodPrefault",(t,e)=>{Y.init(t,e),t._zod.optin="optional",H(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>(n.direction==="backward"||r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,n))}),Kd=g("$ZodNonOptional",(t,e)=>{Y.init(t,e),H(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=>rd(s,t)):rd(o,t)}});function rd(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 Jd=g("$ZodCatch",(t,e)=>{Y.init(t,e),t._zod.optin="optional",H(t._zod,"optout",()=>e.innerType._zod.optout),H(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(n.direction==="backward")return e.innerType._zod.run(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=>qe(i,n,je()))},input:r.value}),r.issues=[],r.fallback=!0),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>qe(s,n,je()))},input:r.value}),r.issues=[],r.fallback=!0),r)}});var xi=g("$ZodPipe",(t,e)=>{Y.init(t,e),H(t._zod,"values",()=>e.in._zod.values),H(t._zod,"optin",()=>e.in._zod.optin),H(t._zod,"optout",()=>e.out._zod.optout),H(t._zod,"propValues",()=>e.in._zod.propValues),t._zod.parse=(r,n)=>{if(n.direction==="backward"){let s=e.out._zod.run(r,n);return s instanceof Promise?s.then(i=>bo(i,e.in,n)):bo(s,e.in,n)}let o=e.in._zod.run(r,n);return o instanceof Promise?o.then(s=>bo(s,e.out,n)):bo(o,e.out,n)}});function bo(t,e,r){return t.issues.length?(t.aborted=!0,t):e._zod.run({value:t.value,issues:t.issues,fallback:t.fallback},r)}var Bd=g("$ZodPreprocess",(t,e)=>{xi.init(t,e)}),Yd=g("$ZodReadonly",(t,e)=>{Y.init(t,e),H(t._zod,"propValues",()=>e.innerType._zod.propValues),H(t._zod,"values",()=>e.innerType._zod.values),H(t._zod,"optin",()=>e.innerType?._zod?.optin),H(t._zod,"optout",()=>e.innerType?._zod?.optout),t._zod.parse=(r,n)=>{if(n.direction==="backward")return e.innerType._zod.run(r,n);let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(nd):nd(o)}});function nd(t){return t.value=Object.freeze(t.value),t}var Xd=g("$ZodCustom",(t,e)=>{fe.init(t,e),Y.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=>od(s,r,n,t));od(o,r,n,t)}});function od(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(pr(o))}}var cS=()=>{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"},map:{unit:"entries",verb:"to have"}};function e(o){return t[o]??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",mac:"MAC 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"},n={nan:"NaN"};return o=>{switch(o.code){case"invalid_type":{let s=n[o.expected]??o.expected,i=mi(o.input),a=n[i]??i;return`Invalid input: expected ${s}, received ${a}`}case"invalid_value":return o.values.length===1?`Invalid input: expected ${mo(o.values[0])}`:`Invalid option: expected one of ${lo(o.values,"|")}`;case"too_big":{let s=o.inclusive?"<=":"<",i=e(o.origin);return i?`Too big: expected ${o.origin??"value"} to have ${s}${o.maximum.toString()} ${i.unit??"elements"}`:`Too big: expected ${o.origin??"value"} to be ${s}${o.maximum.toString()}`}case"too_small":{let s=o.inclusive?">=":">",i=e(o.origin);return i?`Too small: expected ${o.origin} to have ${s}${o.minimum.toString()} ${i.unit}`:`Too small: expected ${o.origin} to be ${s}${o.minimum.toString()}`}case"invalid_format":{let s=o;return s.format==="starts_with"?`Invalid string: must start with "${s.prefix}"`:s.format==="ends_with"?`Invalid string: must end with "${s.suffix}"`:s.format==="includes"?`Invalid string: must include "${s.includes}"`:s.format==="regex"?`Invalid string: must match pattern ${s.pattern}`:`Invalid ${r[s.format]??o.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${o.divisor}`;case"unrecognized_keys":return`Unrecognized key${o.keys.length>1?"s":""}: ${lo(o.keys,", ")}`;case"invalid_key":return`Invalid key in ${o.origin}`;case"invalid_union":return o.options&&Array.isArray(o.options)&&o.options.length>0?`Invalid discriminator value. Expected ${o.options.map(i=>`'${i}'`).join(" | ")}`:"Invalid input";case"invalid_element":return`Invalid value in ${o.origin}`;default:return"Invalid input"}}};function Qd(){return{localeError:cS()}}var ep;var $i=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...r){let n=r[0];return this._map.set(e,n),n&&typeof n=="object"&&"id"in n&&this._idmap.set(n.id,e),this}clear(){return this._map=new WeakMap,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)??{}};delete n.id;let o={...n,...this._map.get(e)};return Object.keys(o).length?o:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function uS(){return new $i}(ep=globalThis).__zod_globalRegistry??(ep.__zod_globalRegistry=uS());var Wt=globalThis.__zod_globalRegistry;function tp(t,e){return new t({type:"string",...z(e)})}function rp(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...z(e)})}function Pi(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...z(e)})}function np(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...z(e)})}function op(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...z(e)})}function sp(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...z(e)})}function ip(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...z(e)})}function ap(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...z(e)})}function cp(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...z(e)})}function up(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...z(e)})}function lp(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...z(e)})}function dp(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...z(e)})}function pp(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...z(e)})}function fp(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...z(e)})}function mp(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...z(e)})}function hp(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...z(e)})}function gp(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...z(e)})}function _p(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...z(e)})}function yp(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...z(e)})}function Sp(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...z(e)})}function vp(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...z(e)})}function bp(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...z(e)})}function Ep(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...z(e)})}function wp(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...z(e)})}function kp(t,e){return new t({type:"string",format:"date",check:"string_format",...z(e)})}function xp(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...z(e)})}function $p(t,e){return new t({type:"string",format:"duration",check:"string_format",...z(e)})}function Pp(t,e){return new t({type:"number",checks:[],...z(e)})}function Tp(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...z(e)})}function zp(t,e){return new t({type:"boolean",...z(e)})}function Rp(t,e){return new t({type:"null",...z(e)})}function Ip(t){return new t({type:"unknown"})}function Op(t,e){return new t({type:"never",...z(e)})}function ko(t,e){return new Si({check:"less_than",...z(e),value:t,inclusive:!1})}function Qr(t,e){return new Si({check:"less_than",...z(e),value:t,inclusive:!0})}function xo(t,e){return new vi({check:"greater_than",...z(e),value:t,inclusive:!1})}function en(t,e){return new vi({check:"greater_than",...z(e),value:t,inclusive:!0})}function $o(t,e){return new Nl({check:"multiple_of",...z(e),value:t})}function Po(t,e){return new Ll({check:"max_length",...z(e),maximum:t})}function fr(t,e){return new Ul({check:"min_length",...z(e),minimum:t})}function To(t,e){return new ql({check:"length_equals",...z(e),length:t})}function Ti(t,e){return new Zl({check:"string_format",format:"regex",...z(e),pattern:t})}function zi(t){return new Fl({check:"string_format",format:"lowercase",...z(t)})}function Ri(t){return new Hl({check:"string_format",format:"uppercase",...z(t)})}function Ii(t,e){return new Wl({check:"string_format",format:"includes",...z(e),includes:t})}function Oi(t,e){return new Vl({check:"string_format",format:"starts_with",...z(e),prefix:t})}function Ai(t,e){return new Gl({check:"string_format",format:"ends_with",...z(e),suffix:t})}function Tt(t){return new Kl({check:"overwrite",tx:t})}function Mi(t){return Tt(e=>e.normalize(t))}function Ci(){return Tt(t=>t.trim())}function Di(){return Tt(t=>t.toLowerCase())}function Ni(){return Tt(t=>t.toUpperCase())}function ji(){return Tt(t=>ci(t))}function Ap(t,e,r){return new t({type:"array",element:e,...z(r)})}function Mp(t,e,r){let n=z(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function Cp(t,e,r){return new t({type:"custom",check:"custom",fn:e,...z(r)})}function Dp(t,e){let r=lS(n=>(n.addIssue=o=>{if(typeof o=="string")n.issues.push(pr(o,n.value,r._zod.def));else{let s=o;s.fatal&&(s.continue=!1),s.code??(s.code="custom"),s.input??(s.input=n.value),s.inst??(s.inst=r),s.continue??(s.continue=!r._zod.def.abort),n.issues.push(pr(s))}},t(n.value,n)),e);return r}function lS(t,e){let r=new fe({check:"custom",...z(e)});return r._zod.check=t,r}function Li(t){let e=t?.target??"draft-2020-12";return e==="draft-4"&&(e="draft-04"),e==="draft-7"&&(e="draft-07"),{processors:t.processors??{},metadataRegistry:t?.metadata??Wt,target:e,unrepresentable:t?.unrepresentable??"throw",override:t?.override??(()=>{}),io:t?.io??"output",counter:0,seen:new Map,cycles:t?.cycles??"ref",reused:t?.reused??"inline",external:t?.external??void 0}}function ie(t,e,r={path:[],schemaPath:[]}){var n;let o=t._zod.def,s=e.seen.get(t);if(s)return s.count++,r.schemaPath.includes(t)&&(s.cycle=r.path),s.schema;let i={schema:{},count:1,cycle:void 0,path:r.path};e.seen.set(t,i);let a=t._zod.toJSONSchema?.();if(a)i.schema=a;else{let l={...r,schemaPath:[...r.schemaPath,t],path:r.path};if(t._zod.processJSONSchema)t._zod.processJSONSchema(e,i.schema,l);else{let p=i.schema,f=e.processors[o.type];if(!f)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${o.type}`);f(t,e,p,l)}let d=t._zod.parent;d&&(i.ref||(i.ref=d),ie(d,e,l),e.seen.get(d).isParent=!0)}let c=e.metadataRegistry.get(t);return c&&Object.assign(i.schema,c),e.io==="input"&&Pe(t)&&(delete i.schema.examples,delete i.schema.default),e.io==="input"&&"_prefault"in i.schema&&((n=i.schema).default??(n.default=i.schema._prefault)),delete i.schema._prefault,e.seen.get(t).schema}function Ui(t,e){let r=t.seen.get(e);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");let n=new Map;for(let i of t.seen.entries()){let a=t.metadataRegistry.get(i[0])?.id;if(a){let c=n.get(a);if(c&&c!==i[0])throw new Error(`Duplicate schema id "${a}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);n.set(a,i[0])}}let o=i=>{let a=t.target==="draft-2020-12"?"$defs":"definitions";if(t.external){let d=t.external.registry.get(i[0])?.id,p=t.external.uri??(m=>m);if(d)return{ref:p(d)};let f=i[1].defId??i[1].schema.id??`schema${t.counter++}`;return i[1].defId=f,{defId:f,ref:`${p("__shared")}#/${a}/${f}`}}if(i[1]===r)return{ref:"#"};let u=`#/${a}/`,l=i[1].schema.id??`__schema${t.counter++}`;return{defId:l,ref:u+l}},s=i=>{if(i[1].schema.$ref)return;let a=i[1],{ref:c,defId:u}=o(i);a.def={...a.schema},u&&(a.defId=u);let l=a.schema;for(let d in l)delete l[d];l.$ref=c};if(t.cycles==="throw")for(let i of t.seen.entries()){let a=i[1];if(a.cycle)throw new Error(`Cycle detected: #/${a.cycle?.join("/")}/<root>
|
|
79
79
|
|
|
80
|
-
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let i of t.seen.entries()){let a=i[1];if(e===i[0]){s(i);continue}if(t.external){let u=t.external.registry.get(i[0])?.id;if(e!==i[0]&&u){s(i);continue}}if(t.metadataRegistry.get(i[0])?.id){s(i);continue}if(a.cycle){s(i);continue}if(a.count>1&&t.reused==="ref"){s(i);continue}}}function qi(t,e){let r=t.seen.get(e);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");let n=a=>{let c=t.seen.get(a);if(c.ref===null)return;let u=c.def??c.schema,l={...u},d=c.ref;if(c.ref=null,d){n(d);let f=t.seen.get(d),m=f.schema;if(m.$ref&&(t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0")?(u.allOf=u.allOf??[],u.allOf.push(m)):Object.assign(u,m),Object.assign(u,l),a._zod.parent===d)for(let S in u)S==="$ref"||S==="allOf"||S in l||delete u[S];if(m.$ref&&f.def)for(let S in u)S==="$ref"||S==="allOf"||S in f.def&&JSON.stringify(u[S])===JSON.stringify(f.def[S])&&delete u[S]}let p=a._zod.parent;if(p&&p!==d){n(p);let f=t.seen.get(p);if(f?.schema.$ref&&(u.$ref=f.schema.$ref,f.def))for(let m in u)m==="$ref"||m==="allOf"||m in f.def&&JSON.stringify(u[m])===JSON.stringify(f.def[m])&&delete u[m]}t.override({zodSchema:a,jsonSchema:u,path:c.path??[]})};for(let a of[...t.seen.entries()].reverse())n(a[0]);let o={};if(t.target==="draft-2020-12"?o.$schema="https://json-schema.org/draft/2020-12/schema":t.target==="draft-07"?o.$schema="http://json-schema.org/draft-07/schema#":t.target==="draft-04"?o.$schema="http://json-schema.org/draft-04/schema#":t.target,t.external?.uri){let a=t.external.registry.get(e)?.id;if(!a)throw new Error("Schema is missing an `id` property");o.$id=t.external.uri(a)}Object.assign(o,r.def??r.schema);let s=t.metadataRegistry.get(e)?.id;s!==void 0&&o.id===s&&delete o.id;let i=t.external?.defs??{};for(let a of t.seen.entries()){let c=a[1];c.def&&c.defId&&(c.def.id===c.defId&&delete c.def.id,i[c.defId]=c.def)}t.external||Object.keys(i).length>0&&(t.target==="draft-2020-12"?o.$defs=i:o.definitions=i);try{let a=JSON.parse(JSON.stringify(o));return Object.defineProperty(a,"~standard",{value:{...e["~standard"],jsonSchema:{input:tn(e,"input",t.processors),output:tn(e,"output",t.processors)}},enumerable:!1,writable:!1}),a}catch{throw new Error("Error converting schema to JSON.")}}function Pe(t,e){let r=e??{seen:new Set};if(r.seen.has(t))return!1;r.seen.add(t);let n=t._zod.def;if(n.type==="transform")return!0;if(n.type==="array")return Pe(n.element,r);if(n.type==="set")return Pe(n.valueType,r);if(n.type==="lazy")return Pe(n.getter(),r);if(n.type==="promise"||n.type==="optional"||n.type==="nonoptional"||n.type==="nullable"||n.type==="readonly"||n.type==="default"||n.type==="prefault")return Pe(n.innerType,r);if(n.type==="intersection")return Pe(n.left,r)||Pe(n.right,r);if(n.type==="record"||n.type==="map")return Pe(n.keyType,r)||Pe(n.valueType,r);if(n.type==="pipe")return t._zod.traits.has("$ZodCodec")?!0:Pe(n.in,r)||Pe(n.out,r);if(n.type==="object"){for(let o in n.shape)if(Pe(n.shape[o],r))return!0;return!1}if(n.type==="union"){for(let o of n.options)if(Pe(o,r))return!0;return!1}if(n.type==="tuple"){for(let o of n.items)if(Pe(o,r))return!0;return!!(n.rest&&Pe(n.rest,r))}return!1}var Dp=(t,e={})=>r=>{let n=Li({...r,processors:e});return ie(t,n),Ui(n,t),qi(n,t)},tn=(t,e,r={})=>n=>{let{libraryOptions:o,target:s}=n??{},i=Li({...o??{},target:s,io:e,processors:r});return ie(t,i),Ui(i,t),qi(i,t)};var dS={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},jp=(t,e,r,n)=>{let o=r;o.type="string";let{minimum:s,maximum:i,format:a,patterns:c,contentEncoding:u}=t._zod.bag;if(typeof s=="number"&&(o.minLength=s),typeof i=="number"&&(o.maxLength=i),a&&(o.format=dS[a]??a,o.format===""&&delete o.format,a==="time"&&delete o.format),u&&(o.contentEncoding=u),c&&c.size>0){let l=[...c];l.length===1?o.pattern=l[0].source:l.length>1&&(o.allOf=[...l.map(d=>({...e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"?{type:"string"}:{},pattern:d.source}))])}},Lp=(t,e,r,n)=>{let o=r,{minimum:s,maximum:i,format:a,multipleOf:c,exclusiveMaximum:u,exclusiveMinimum:l}=t._zod.bag;typeof a=="string"&&a.includes("int")?o.type="integer":o.type="number";let d=typeof l=="number"&&l>=(s??Number.NEGATIVE_INFINITY),p=typeof u=="number"&&u<=(i??Number.POSITIVE_INFINITY),f=e.target==="draft-04"||e.target==="openapi-3.0";d?f?(o.minimum=l,o.exclusiveMinimum=!0):o.exclusiveMinimum=l:typeof s=="number"&&(o.minimum=s),p?f?(o.maximum=u,o.exclusiveMaximum=!0):o.exclusiveMaximum=u:typeof i=="number"&&(o.maximum=i),typeof c=="number"&&(o.multipleOf=c)},Up=(t,e,r,n)=>{r.type="boolean"};var qp=(t,e,r,n)=>{e.target==="openapi-3.0"?(r.type="string",r.nullable=!0,r.enum=[null]):r.type="null"};var Zp=(t,e,r,n)=>{r.not={}};var Fp=(t,e,r,n)=>{};var Hp=(t,e,r,n)=>{let o=t._zod.def,s=Wr(o.entries);s.every(i=>typeof i=="number")&&(r.type="number"),s.every(i=>typeof i=="string")&&(r.type="string"),r.enum=s},Wp=(t,e,r,n)=>{let o=t._zod.def,s=[];for(let i of o.values)if(i===void 0){if(e.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof i=="bigint"){if(e.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");s.push(Number(i))}else s.push(i);if(s.length!==0)if(s.length===1){let i=s[0];r.type=i===null?"null":typeof i,e.target==="draft-04"||e.target==="openapi-3.0"?r.enum=[i]:r.const=i}else s.every(i=>typeof i=="number")&&(r.type="number"),s.every(i=>typeof i=="string")&&(r.type="string"),s.every(i=>typeof i=="boolean")&&(r.type="boolean"),s.every(i=>i===null)&&(r.type="null"),r.enum=s};var Vp=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")};var Gp=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")};var Kp=(t,e,r,n)=>{let o=r,s=t._zod.def,{minimum:i,maximum:a}=t._zod.bag;typeof i=="number"&&(o.minItems=i),typeof a=="number"&&(o.maxItems=a),o.type="array",o.items=ie(s.element,e,{...n,path:[...n.path,"items"]})},Jp=(t,e,r,n)=>{let o=r,s=t._zod.def;o.type="object",o.properties={};let i=s.shape;for(let u in i)o.properties[u]=ie(i[u],e,{...n,path:[...n.path,"properties",u]});let a=new Set(Object.keys(i)),c=new Set([...a].filter(u=>{let l=s.shape[u]._zod;return e.io==="input"?l.optin===void 0:l.optout===void 0}));c.size>0&&(o.required=Array.from(c)),s.catchall?._zod.def.type==="never"?o.additionalProperties=!1:s.catchall?s.catchall&&(o.additionalProperties=ie(s.catchall,e,{...n,path:[...n.path,"additionalProperties"]})):e.io==="output"&&(o.additionalProperties=!1)},Bp=(t,e,r,n)=>{let o=t._zod.def,s=o.inclusive===!1,i=o.options.map((a,c)=>ie(a,e,{...n,path:[...n.path,s?"oneOf":"anyOf",c]}));s?r.oneOf=i:r.anyOf=i},Yp=(t,e,r,n)=>{let o=t._zod.def,s=ie(o.left,e,{...n,path:[...n.path,"allOf",0]}),i=ie(o.right,e,{...n,path:[...n.path,"allOf",1]}),a=u=>"allOf"in u&&Object.keys(u).length===1,c=[...a(s)?s.allOf:[s],...a(i)?i.allOf:[i]];r.allOf=c};var Xp=(t,e,r,n)=>{let o=r,s=t._zod.def;o.type="object";let i=s.keyType,c=i._zod.bag?.patterns;if(s.mode==="loose"&&c&&c.size>0){let l=ie(s.valueType,e,{...n,path:[...n.path,"patternProperties","*"]});o.patternProperties={};for(let d of c)o.patternProperties[d.source]=l}else(e.target==="draft-07"||e.target==="draft-2020-12")&&(o.propertyNames=ie(s.keyType,e,{...n,path:[...n.path,"propertyNames"]})),o.additionalProperties=ie(s.valueType,e,{...n,path:[...n.path,"additionalProperties"]});let u=i._zod.values;if(u){let l=[...u].filter(d=>typeof d=="string"||typeof d=="number");l.length>0&&(o.required=l)}},Qp=(t,e,r,n)=>{let o=t._zod.def,s=ie(o.innerType,e,n),i=e.seen.get(t);e.target==="openapi-3.0"?(i.ref=o.innerType,r.nullable=!0):r.anyOf=[s,{type:"null"}]},ef=(t,e,r,n)=>{let o=t._zod.def;ie(o.innerType,e,n);let s=e.seen.get(t);s.ref=o.innerType},tf=(t,e,r,n)=>{let o=t._zod.def;ie(o.innerType,e,n);let s=e.seen.get(t);s.ref=o.innerType,r.default=JSON.parse(JSON.stringify(o.defaultValue))},rf=(t,e,r,n)=>{let o=t._zod.def;ie(o.innerType,e,n);let s=e.seen.get(t);s.ref=o.innerType,e.io==="input"&&(r._prefault=JSON.parse(JSON.stringify(o.defaultValue)))},nf=(t,e,r,n)=>{let o=t._zod.def;ie(o.innerType,e,n);let s=e.seen.get(t);s.ref=o.innerType;let i;try{i=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}r.default=i},of=(t,e,r,n)=>{let o=t._zod.def,s=o.in._zod.traits.has("$ZodTransform"),i=e.io==="input"?s?o.out:o.in:o.out;ie(i,e,n);let a=e.seen.get(t);a.ref=i},sf=(t,e,r,n)=>{let o=t._zod.def;ie(o.innerType,e,n);let s=e.seen.get(t);s.ref=o.innerType,r.readOnly=!0};var Zi=(t,e,r,n)=>{let o=t._zod.def;ie(o.innerType,e,n);let s=e.seen.get(t);s.ref=o.innerType};function mr(t){return!!t._zod}function zt(t,e){return mr(t)?Br(t,e):t.safeParse(e)}function zo(t){if(!t)return;let e;if(mr(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function af(t){if(mr(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 nn={};Lu(nn,{ZodISODate:()=>uf,ZodISODateTime:()=>cf,ZodISODuration:()=>df,ZodISOTime:()=>lf,date:()=>Hi,datetime:()=>Fi,duration:()=>Vi,time:()=>Wi});var cf=g("ZodISODateTime",(t,e)=>{gd.init(t,e),re.init(t,e)});function Fi(t){return wp(cf,t)}var uf=g("ZodISODate",(t,e)=>{_d.init(t,e),re.init(t,e)});function Hi(t){return kp(uf,t)}var lf=g("ZodISOTime",(t,e)=>{yd.init(t,e),re.init(t,e)});function Wi(t){return xp(lf,t)}var df=g("ZodISODuration",(t,e)=>{Sd.init(t,e),re.init(t,e)});function Vi(t){return $p(df,t)}var vS=(t,e)=>{ho.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Qu(t,r)},flatten:{value:r=>Xu(t,r)},addIssue:{value:r=>{t.issues.push(r),t.message=JSON.stringify(t.issues,lr,2)}},addIssues:{value:r=>{t.issues.push(...r),t.message=JSON.stringify(t.issues,lr,2)}},isEmpty:{get(){return t.issues.length===0}}})};var Le=g("ZodError",vS,{Parent:Error});var pf=go(Le),ff=_o(Le),mf=Jr(Le),hf=Yr(Le),gf=el(Le),_f=tl(Le),yf=rl(Le),Sf=nl(Le),vf=ol(Le),bf=sl(Le),Ef=il(Le),wf=al(Le);var kf=new WeakMap;function on(t,e,r){let n=Object.getPrototypeOf(t),o=kf.get(n);if(o||(o=new Set,kf.set(n,o)),!o.has(e)){o.add(e);for(let s in r){let i=r[s];Object.defineProperty(n,s,{configurable:!0,enumerable:!1,get(){let a=i.bind(this);return Object.defineProperty(this,s,{configurable:!0,writable:!0,enumerable:!0,value:a}),a},set(a){Object.defineProperty(this,s,{configurable:!0,writable:!0,enumerable:!0,value:a})}})}}}var se=g("ZodType",(t,e)=>(Y.init(t,e),Object.assign(t["~standard"],{jsonSchema:{input:tn(t,"input"),output:tn(t,"output")}}),t.toJSONSchema=Dp(t,{}),t.def=e,t.type=e.type,Object.defineProperty(t,"_def",{value:e}),t.parse=(r,n)=>pf(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>mf(t,r,n),t.parseAsync=async(r,n)=>ff(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>hf(t,r,n),t.spa=t.safeParseAsync,t.encode=(r,n)=>gf(t,r,n),t.decode=(r,n)=>_f(t,r,n),t.encodeAsync=async(r,n)=>yf(t,r,n),t.decodeAsync=async(r,n)=>Sf(t,r,n),t.safeEncode=(r,n)=>vf(t,r,n),t.safeDecode=(r,n)=>bf(t,r,n),t.safeEncodeAsync=async(r,n)=>Ef(t,r,n),t.safeDecodeAsync=async(r,n)=>wf(t,r,n),on(t,"ZodType",{check(...r){let n=this.def;return this.clone(U.mergeDefs(n,{checks:[...n.checks??[],...r.map(o=>typeof o=="function"?{_zod:{check:o,def:{check:"custom"},onattach:[]}}:o)]}),{parent:!0})},with(...r){return this.check(...r)},clone(r,n){return Ye(this,r,n)},brand(){return this},register(r,n){return r.add(this,n),this},refine(r,n){return this.check(lv(r,n))},superRefine(r,n){return this.check(dv(r,n))},overwrite(r){return this.check(Tt(r))},optional(){return oe(this)},exactOptional(){return XS(this)},nullable(){return Tf(this)},nullish(){return oe(Tf(this))},nonoptional(r){return ov(this,r)},array(){return j(this)},or(r){return Q([this,r])},and(r){return Io(this,r)},transform(r){return zf(this,Cf(r))},default(r){return tv(this,r)},prefault(r){return nv(this,r)},catch(r){return iv(this,r)},pipe(r){return zf(this,r)},readonly(){return uv(this)},describe(r){let n=this.clone();return Wt.add(n,{description:r}),n},meta(...r){if(r.length===0)return Wt.get(this);let n=this.clone();return Wt.add(n,r[0]),n},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(r){return r(this)}}),Object.defineProperty(t,"description",{get(){return Wt.get(t)?.description},configurable:!0}),t)),Rf=g("_ZodString",(t,e)=>{wo.init(t,e),se.init(t,e),t._zod.processJSONSchema=(n,o,s)=>jp(t,n,o,s);let r=t._zod.bag;t.format=r.format??null,t.minLength=r.minimum??null,t.maxLength=r.maximum??null,on(t,"_ZodString",{regex(...n){return this.check(Ti(...n))},includes(...n){return this.check(Ii(...n))},startsWith(...n){return this.check(Oi(...n))},endsWith(...n){return this.check(Ai(...n))},min(...n){return this.check(fr(...n))},max(...n){return this.check(Po(...n))},length(...n){return this.check(To(...n))},nonempty(...n){return this.check(fr(1,...n))},lowercase(n){return this.check(zi(n))},uppercase(n){return this.check(Ri(n))},trim(){return this.check(Ci())},normalize(...n){return this.check(Mi(...n))},toLowerCase(){return this.check(Ni())},toUpperCase(){return this.check(Di())},slugify(){return this.check(ji())}})}),ES=g("ZodString",(t,e)=>{wo.init(t,e),Rf.init(t,e),t.email=r=>t.check(rp(wS,r)),t.url=r=>t.check(ap(kS,r)),t.jwt=r=>t.check(Ep(LS,r)),t.emoji=r=>t.check(cp(xS,r)),t.guid=r=>t.check(Pi(xf,r)),t.uuid=r=>t.check(np(Ro,r)),t.uuidv4=r=>t.check(op(Ro,r)),t.uuidv6=r=>t.check(sp(Ro,r)),t.uuidv7=r=>t.check(ip(Ro,r)),t.nanoid=r=>t.check(up($S,r)),t.guid=r=>t.check(Pi(xf,r)),t.cuid=r=>t.check(lp(PS,r)),t.cuid2=r=>t.check(dp(TS,r)),t.ulid=r=>t.check(pp(zS,r)),t.base64=r=>t.check(Sp(NS,r)),t.base64url=r=>t.check(vp(DS,r)),t.xid=r=>t.check(fp(RS,r)),t.ksuid=r=>t.check(mp(IS,r)),t.ipv4=r=>t.check(hp(OS,r)),t.ipv6=r=>t.check(gp(AS,r)),t.cidrv4=r=>t.check(_p(MS,r)),t.cidrv6=r=>t.check(yp(CS,r)),t.e164=r=>t.check(bp(jS,r)),t.datetime=r=>t.check(Fi(r)),t.date=r=>t.check(Hi(r)),t.time=r=>t.check(Wi(r)),t.duration=r=>t.check(Vi(r))});function h(t){return tp(ES,t)}var re=g("ZodStringFormat",(t,e)=>{X.init(t,e),Rf.init(t,e)}),wS=g("ZodEmail",(t,e)=>{ad.init(t,e),re.init(t,e)});var xf=g("ZodGUID",(t,e)=>{sd.init(t,e),re.init(t,e)});var Ro=g("ZodUUID",(t,e)=>{id.init(t,e),re.init(t,e)});var kS=g("ZodURL",(t,e)=>{cd.init(t,e),re.init(t,e)});var xS=g("ZodEmoji",(t,e)=>{ud.init(t,e),re.init(t,e)});var $S=g("ZodNanoID",(t,e)=>{ld.init(t,e),re.init(t,e)});var PS=g("ZodCUID",(t,e)=>{dd.init(t,e),re.init(t,e)});var TS=g("ZodCUID2",(t,e)=>{pd.init(t,e),re.init(t,e)});var zS=g("ZodULID",(t,e)=>{fd.init(t,e),re.init(t,e)});var RS=g("ZodXID",(t,e)=>{md.init(t,e),re.init(t,e)});var IS=g("ZodKSUID",(t,e)=>{hd.init(t,e),re.init(t,e)});var OS=g("ZodIPv4",(t,e)=>{vd.init(t,e),re.init(t,e)});var AS=g("ZodIPv6",(t,e)=>{bd.init(t,e),re.init(t,e)});var MS=g("ZodCIDRv4",(t,e)=>{Ed.init(t,e),re.init(t,e)});var CS=g("ZodCIDRv6",(t,e)=>{wd.init(t,e),re.init(t,e)});var NS=g("ZodBase64",(t,e)=>{xd.init(t,e),re.init(t,e)});var DS=g("ZodBase64URL",(t,e)=>{$d.init(t,e),re.init(t,e)});var jS=g("ZodE164",(t,e)=>{Pd.init(t,e),re.init(t,e)});var LS=g("ZodJWT",(t,e)=>{Td.init(t,e),re.init(t,e)});var If=g("ZodNumber",(t,e)=>{Ei.init(t,e),se.init(t,e),t._zod.processJSONSchema=(n,o,s)=>Lp(t,n,o,s),on(t,"ZodNumber",{gt(n,o){return this.check(xo(n,o))},gte(n,o){return this.check(en(n,o))},min(n,o){return this.check(en(n,o))},lt(n,o){return this.check(ko(n,o))},lte(n,o){return this.check(Qr(n,o))},max(n,o){return this.check(Qr(n,o))},int(n){return this.check($f(n))},safe(n){return this.check($f(n))},positive(n){return this.check(xo(0,n))},nonnegative(n){return this.check(en(0,n))},negative(n){return this.check(ko(0,n))},nonpositive(n){return this.check(Qr(0,n))},multipleOf(n,o){return this.check($o(n,o))},step(n,o){return this.check($o(n,o))},finite(){return this}});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 W(t){return Pp(If,t)}var US=g("ZodNumberFormat",(t,e)=>{zd.init(t,e),If.init(t,e)});function $f(t){return Tp(US,t)}var qS=g("ZodBoolean",(t,e)=>{Rd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Up(t,r,n,o)});function pe(t){return zp(qS,t)}var ZS=g("ZodNull",(t,e)=>{Id.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>qp(t,r,n,o)});function Of(t){return Rp(ZS,t)}var FS=g("ZodUnknown",(t,e)=>{Od.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Fp(t,r,n,o)});function ne(){return Ip(FS)}var HS=g("ZodNever",(t,e)=>{Ad.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Zp(t,r,n,o)});function WS(t){return Op(HS,t)}var VS=g("ZodArray",(t,e)=>{Md.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Kp(t,r,n,o),t.element=e.element,on(t,"ZodArray",{min(r,n){return this.check(fr(r,n))},nonempty(r){return this.check(fr(1,r))},max(r,n){return this.check(Po(r,n))},length(r,n){return this.check(To(r,n))},unwrap(){return this.element}})});function j(t,e){return Ap(VS,t,e)}var Af=g("ZodObject",(t,e)=>{Dd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Jp(t,r,n,o),U.defineLazy(t,"shape",()=>e.shape),on(t,"ZodObject",{keyof(){return Oe(Object.keys(this._zod.def.shape))},catchall(r){return this.clone({...this._zod.def,catchall:r})},passthrough(){return this.clone({...this._zod.def,catchall:ne()})},loose(){return this.clone({...this._zod.def,catchall:ne()})},strict(){return this.clone({...this._zod.def,catchall:WS()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(r){return U.extend(this,r)},safeExtend(r){return U.safeExtend(this,r)},merge(r){return U.merge(this,r)},pick(r){return U.pick(this,r)},omit(r){return U.omit(this,r)},partial(...r){return U.partial(Nf,this,r[0])},required(...r){return U.required(Df,this,r[0])}})});function k(t,e){let r={type:"object",shape:t??{},...U.normalizeParams(e)};return new Af(r)}function Te(t,e){return new Af({type:"object",shape:t,catchall:ne(),...U.normalizeParams(e)})}var Mf=g("ZodUnion",(t,e)=>{wi.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Bp(t,r,n,o),t.options=e.options});function Q(t,e){return new Mf({type:"union",options:t,...U.normalizeParams(e)})}var GS=g("ZodDiscriminatedUnion",(t,e)=>{Mf.init(t,e),jd.init(t,e)});function Ki(t,e,r){return new GS({type:"union",options:e,discriminator:t,...U.normalizeParams(r)})}var KS=g("ZodIntersection",(t,e)=>{Ld.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Yp(t,r,n,o)});function Io(t,e){return new KS({type:"intersection",left:t,right:e})}var Pf=g("ZodRecord",(t,e)=>{Ud.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Xp(t,r,n,o),t.keyType=e.keyType,t.valueType=e.valueType});function J(t,e,r){return!e||!e._zod?new Pf({type:"record",keyType:h(),valueType:t,...U.normalizeParams(e)}):new Pf({type:"record",keyType:t,valueType:e,...U.normalizeParams(r)})}var Gi=g("ZodEnum",(t,e)=>{qd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(n,o,s)=>Hp(t,n,o,s),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 Gi({...e,checks:[],...U.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 Gi({...e,checks:[],...U.normalizeParams(o),entries:s})}});function Oe(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Gi({type:"enum",entries:r,...U.normalizeParams(e)})}var JS=g("ZodLiteral",(t,e)=>{Zd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Wp(t,r,n,o),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 P(t,e){return new JS({type:"literal",values:Array.isArray(t)?t:[t],...U.normalizeParams(e)})}var BS=g("ZodTransform",(t,e)=>{Fd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Gp(t,r,n,o),t._zod.parse=(r,n)=>{if(n.direction==="backward")throw new cr(t.constructor.name);r.addIssue=s=>{if(typeof s=="string")r.issues.push(U.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),r.issues.push(U.issue(i))}};let o=e.transform(r.value,r);return o instanceof Promise?o.then(s=>(r.value=s,r.fallback=!0,r)):(r.value=o,r.fallback=!0,r)}});function Cf(t){return new BS({type:"transform",transform:t})}var Nf=g("ZodOptional",(t,e)=>{ki.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Zi(t,r,n,o),t.unwrap=()=>t._zod.def.innerType});function oe(t){return new Nf({type:"optional",innerType:t})}var YS=g("ZodExactOptional",(t,e)=>{Hd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Zi(t,r,n,o),t.unwrap=()=>t._zod.def.innerType});function XS(t){return new YS({type:"optional",innerType:t})}var QS=g("ZodNullable",(t,e)=>{Wd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Qp(t,r,n,o),t.unwrap=()=>t._zod.def.innerType});function Tf(t){return new QS({type:"nullable",innerType:t})}var ev=g("ZodDefault",(t,e)=>{Vd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>tf(t,r,n,o),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function tv(t,e){return new ev({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():U.shallowClone(e)}})}var rv=g("ZodPrefault",(t,e)=>{Gd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>rf(t,r,n,o),t.unwrap=()=>t._zod.def.innerType});function nv(t,e){return new rv({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():U.shallowClone(e)}})}var Df=g("ZodNonOptional",(t,e)=>{Kd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>ef(t,r,n,o),t.unwrap=()=>t._zod.def.innerType});function ov(t,e){return new Df({type:"nonoptional",innerType:t,...U.normalizeParams(e)})}var sv=g("ZodCatch",(t,e)=>{Jd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>nf(t,r,n,o),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function iv(t,e){return new sv({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var jf=g("ZodPipe",(t,e)=>{xi.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>of(t,r,n,o),t.in=e.in,t.out=e.out});function zf(t,e){return new jf({type:"pipe",in:t,out:e})}var av=g("ZodPreprocess",(t,e)=>{jf.init(t,e),Bd.init(t,e)}),cv=g("ZodReadonly",(t,e)=>{Yd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>sf(t,r,n,o),t.unwrap=()=>t._zod.def.innerType});function uv(t){return new cv({type:"readonly",innerType:t})}var Lf=g("ZodCustom",(t,e)=>{Xd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Vp(t,r,n,o)});function Uf(t,e){return Mp(Lf,t??(()=>!0),e)}function lv(t,e={}){return Cp(Lf,t,e)}function dv(t,e){return Np(t,e)}function Ji(t,e){return new av({type:"pipe",in:Cf(t),out:e})}je(Qd());var Yi="2025-11-25";var qf=[Yi,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Rt="io.modelcontextprotocol/related-task",Ao="2.0",de=Uf(t=>t!==null&&(typeof t=="object"||typeof t=="function")),Zf=Q([h(),W().int()]),Ff=h(),XR=Te({ttl:W().optional(),pollInterval:W().optional()}),pv=k({ttl:W().optional()}),fv=k({taskId:h()}),Xi=Te({progressToken:Zf.optional(),[Rt]:fv.optional()}),Ue=k({_meta:Xi.optional()}),sn=Ue.extend({task:pv.optional()}),Hf=t=>sn.safeParse(t).success,me=k({method:h(),params:Ue.loose().optional()}),Ze=k({_meta:Xi.optional()}),Fe=k({method:h(),params:Ze.loose().optional()}),he=Te({_meta:Xi.optional()}),Mo=Q([h(),W().int()]),Wf=k({jsonrpc:P(Ao),id:Mo,...me.shape}).strict(),Qi=t=>Wf.safeParse(t).success,Vf=k({jsonrpc:P(Ao),...Fe.shape}).strict(),Gf=t=>Vf.safeParse(t).success,ea=k({jsonrpc:P(Ao),id:Mo,result:he}).strict(),an=t=>ea.safeParse(t).success;var N;(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"})(N||(N={}));var ta=k({jsonrpc:P(Ao),id:Mo.optional(),error:k({code:W().int(),message:h(),data:ne().optional()})}).strict();var Kf=t=>ta.safeParse(t).success;var Jf=Q([Wf,Vf,ea,ta]),QR=Q([ea,ta]),Co=he.strict(),mv=Ze.extend({requestId:Mo.optional(),reason:h().optional()}),No=Fe.extend({method:P("notifications/cancelled"),params:mv}),hv=k({src:h(),mimeType:h().optional(),sizes:j(h()).optional(),theme:Oe(["light","dark"]).optional()}),cn=k({icons:j(hv).optional()}),hr=k({name:h(),title:h().optional()}),Bf=hr.extend({...hr.shape,...cn.shape,version:h(),websiteUrl:h().optional(),description:h().optional()}),gv=Io(k({applyDefaults:pe().optional()}),J(h(),ne())),_v=Ji(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,Io(k({form:gv.optional(),url:de.optional()}),J(h(),ne()).optional())),yv=Te({list:de.optional(),cancel:de.optional(),requests:Te({sampling:Te({createMessage:de.optional()}).optional(),elicitation:Te({create:de.optional()}).optional()}).optional()}),Sv=Te({list:de.optional(),cancel:de.optional(),requests:Te({tools:Te({call:de.optional()}).optional()}).optional()}),vv=k({experimental:J(h(),de).optional(),sampling:k({context:de.optional(),tools:de.optional()}).optional(),elicitation:_v.optional(),roots:k({listChanged:pe().optional()}).optional(),tasks:yv.optional(),extensions:J(h(),de).optional()}),bv=Ue.extend({protocolVersion:h(),capabilities:vv,clientInfo:Bf}),ra=me.extend({method:P("initialize"),params:bv});var Ev=k({experimental:J(h(),de).optional(),logging:de.optional(),completions:de.optional(),prompts:k({listChanged:pe().optional()}).optional(),resources:k({subscribe:pe().optional(),listChanged:pe().optional()}).optional(),tools:k({listChanged:pe().optional()}).optional(),tasks:Sv.optional(),extensions:J(h(),de).optional()}),wv=he.extend({protocolVersion:h(),capabilities:Ev,serverInfo:Bf,instructions:h().optional()}),na=Fe.extend({method:P("notifications/initialized"),params:Ze.optional()});var Do=me.extend({method:P("ping"),params:Ue.optional()}),kv=k({progress:W(),total:oe(W()),message:oe(h())}),xv=k({...Ze.shape,...kv.shape,progressToken:Zf}),jo=Fe.extend({method:P("notifications/progress"),params:xv}),$v=Ue.extend({cursor:Ff.optional()}),un=me.extend({params:$v.optional()}),ln=he.extend({nextCursor:Ff.optional()}),Pv=Oe(["working","input_required","completed","failed","cancelled"]),dn=k({taskId:h(),status:Pv,ttl:Q([W(),Of()]),createdAt:h(),lastUpdatedAt:h(),pollInterval:oe(W()),statusMessage:oe(h())}),gr=he.extend({task:dn}),Tv=Ze.merge(dn),pn=Fe.extend({method:P("notifications/tasks/status"),params:Tv}),Lo=me.extend({method:P("tasks/get"),params:Ue.extend({taskId:h()})}),Uo=he.merge(dn),qo=me.extend({method:P("tasks/result"),params:Ue.extend({taskId:h()})}),eI=he.loose(),Zo=un.extend({method:P("tasks/list")}),Fo=ln.extend({tasks:j(dn)}),Ho=me.extend({method:P("tasks/cancel"),params:Ue.extend({taskId:h()})}),Yf=he.merge(dn),Xf=k({uri:h(),mimeType:oe(h()),_meta:J(h(),ne()).optional()}),Qf=Xf.extend({text:h()}),oa=h().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),em=Xf.extend({blob:oa}),fn=Oe(["user","assistant"]),_r=k({audience:j(fn).optional(),priority:W().min(0).max(1).optional(),lastModified:nn.datetime({offset:!0}).optional()}),tm=k({...hr.shape,...cn.shape,uri:h(),description:oe(h()),mimeType:oe(h()),size:oe(W()),annotations:_r.optional(),_meta:oe(Te({}))}),zv=k({...hr.shape,...cn.shape,uriTemplate:h(),description:oe(h()),mimeType:oe(h()),annotations:_r.optional(),_meta:oe(Te({}))}),Rv=un.extend({method:P("resources/list")}),Iv=ln.extend({resources:j(tm)}),Ov=un.extend({method:P("resources/templates/list")}),Av=ln.extend({resourceTemplates:j(zv)}),sa=Ue.extend({uri:h()}),Mv=sa,Cv=me.extend({method:P("resources/read"),params:Mv}),Nv=he.extend({contents:j(Q([Qf,em]))}),Dv=Fe.extend({method:P("notifications/resources/list_changed"),params:Ze.optional()}),jv=sa,Lv=me.extend({method:P("resources/subscribe"),params:jv}),Uv=sa,qv=me.extend({method:P("resources/unsubscribe"),params:Uv}),Zv=Ze.extend({uri:h()}),Fv=Fe.extend({method:P("notifications/resources/updated"),params:Zv}),Hv=k({name:h(),description:oe(h()),required:oe(pe())}),Wv=k({...hr.shape,...cn.shape,description:oe(h()),arguments:oe(j(Hv)),_meta:oe(Te({}))}),Vv=un.extend({method:P("prompts/list")}),Gv=ln.extend({prompts:j(Wv)}),Kv=Ue.extend({name:h(),arguments:J(h(),h()).optional()}),Jv=me.extend({method:P("prompts/get"),params:Kv}),ia=k({type:P("text"),text:h(),annotations:_r.optional(),_meta:J(h(),ne()).optional()}),aa=k({type:P("image"),data:oa,mimeType:h(),annotations:_r.optional(),_meta:J(h(),ne()).optional()}),ca=k({type:P("audio"),data:oa,mimeType:h(),annotations:_r.optional(),_meta:J(h(),ne()).optional()}),Bv=k({type:P("tool_use"),name:h(),id:h(),input:J(h(),ne()),_meta:J(h(),ne()).optional()}),Yv=k({type:P("resource"),resource:Q([Qf,em]),annotations:_r.optional(),_meta:J(h(),ne()).optional()}),Xv=tm.extend({type:P("resource_link")}),ua=Q([ia,aa,ca,Xv,Yv]),Qv=k({role:fn,content:ua}),eb=he.extend({description:h().optional(),messages:j(Qv)}),tb=Fe.extend({method:P("notifications/prompts/list_changed"),params:Ze.optional()}),rb=k({title:h().optional(),readOnlyHint:pe().optional(),destructiveHint:pe().optional(),idempotentHint:pe().optional(),openWorldHint:pe().optional()}),nb=k({taskSupport:Oe(["required","optional","forbidden"]).optional()}),rm=k({...hr.shape,...cn.shape,description:h().optional(),inputSchema:k({type:P("object"),properties:J(h(),de).optional(),required:j(h()).optional()}).catchall(ne()),outputSchema:k({type:P("object"),properties:J(h(),de).optional(),required:j(h()).optional()}).catchall(ne()).optional(),annotations:rb.optional(),execution:nb.optional(),_meta:J(h(),ne()).optional()}),la=un.extend({method:P("tools/list")}),ob=ln.extend({tools:j(rm)}),Wo=he.extend({content:j(ua).default([]),structuredContent:J(h(),ne()).optional(),isError:pe().optional()}),tI=Wo.or(he.extend({toolResult:ne()})),sb=sn.extend({name:h(),arguments:J(h(),ne()).optional()}),mn=me.extend({method:P("tools/call"),params:sb}),ib=Fe.extend({method:P("notifications/tools/list_changed"),params:Ze.optional()}),rI=k({autoRefresh:pe().default(!0),debounceMs:W().int().nonnegative().default(300)}),hn=Oe(["debug","info","notice","warning","error","critical","alert","emergency"]),ab=Ue.extend({level:hn}),da=me.extend({method:P("logging/setLevel"),params:ab}),cb=Ze.extend({level:hn,logger:h().optional(),data:ne()}),ub=Fe.extend({method:P("notifications/message"),params:cb}),lb=k({name:h().optional()}),db=k({hints:j(lb).optional(),costPriority:W().min(0).max(1).optional(),speedPriority:W().min(0).max(1).optional(),intelligencePriority:W().min(0).max(1).optional()}),pb=k({mode:Oe(["auto","required","none"]).optional()}),fb=k({type:P("tool_result"),toolUseId:h().describe("The unique identifier for the corresponding tool call."),content:j(ua).default([]),structuredContent:k({}).loose().optional(),isError:pe().optional(),_meta:J(h(),ne()).optional()}),mb=Ki("type",[ia,aa,ca]),Oo=Ki("type",[ia,aa,ca,Bv,fb]),hb=k({role:fn,content:Q([Oo,j(Oo)]),_meta:J(h(),ne()).optional()}),gb=sn.extend({messages:j(hb),modelPreferences:db.optional(),systemPrompt:h().optional(),includeContext:Oe(["none","thisServer","allServers"]).optional(),temperature:W().optional(),maxTokens:W().int(),stopSequences:j(h()).optional(),metadata:de.optional(),tools:j(rm).optional(),toolChoice:pb.optional()}),_b=me.extend({method:P("sampling/createMessage"),params:gb}),gn=he.extend({model:h(),stopReason:oe(Oe(["endTurn","stopSequence","maxTokens"]).or(h())),role:fn,content:mb}),pa=he.extend({model:h(),stopReason:oe(Oe(["endTurn","stopSequence","maxTokens","toolUse"]).or(h())),role:fn,content:Q([Oo,j(Oo)])}),yb=k({type:P("boolean"),title:h().optional(),description:h().optional(),default:pe().optional()}),Sb=k({type:P("string"),title:h().optional(),description:h().optional(),minLength:W().optional(),maxLength:W().optional(),format:Oe(["email","uri","date","date-time"]).optional(),default:h().optional()}),vb=k({type:Oe(["number","integer"]),title:h().optional(),description:h().optional(),minimum:W().optional(),maximum:W().optional(),default:W().optional()}),bb=k({type:P("string"),title:h().optional(),description:h().optional(),enum:j(h()),default:h().optional()}),Eb=k({type:P("string"),title:h().optional(),description:h().optional(),oneOf:j(k({const:h(),title:h()})),default:h().optional()}),wb=k({type:P("string"),title:h().optional(),description:h().optional(),enum:j(h()),enumNames:j(h()).optional(),default:h().optional()}),kb=Q([bb,Eb]),xb=k({type:P("array"),title:h().optional(),description:h().optional(),minItems:W().optional(),maxItems:W().optional(),items:k({type:P("string"),enum:j(h())}),default:j(h()).optional()}),$b=k({type:P("array"),title:h().optional(),description:h().optional(),minItems:W().optional(),maxItems:W().optional(),items:k({anyOf:j(k({const:h(),title:h()}))}),default:j(h()).optional()}),Pb=Q([xb,$b]),Tb=Q([wb,kb,Pb]),zb=Q([Tb,yb,Sb,vb]),Rb=sn.extend({mode:P("form").optional(),message:h(),requestedSchema:k({type:P("object"),properties:J(h(),zb),required:j(h()).optional()})}),Ib=sn.extend({mode:P("url"),message:h(),elicitationId:h(),url:h().url()}),Ob=Q([Rb,Ib]),Ab=me.extend({method:P("elicitation/create"),params:Ob}),Mb=Ze.extend({elicitationId:h()}),Cb=Fe.extend({method:P("notifications/elicitation/complete"),params:Mb}),yr=he.extend({action:Oe(["accept","decline","cancel"]),content:Ji(t=>t===null?void 0:t,J(h(),Q([h(),W(),pe(),j(h())])).optional())}),Nb=k({type:P("ref/resource"),uri:h()});var Db=k({type:P("ref/prompt"),name:h()}),jb=Ue.extend({ref:Q([Db,Nb]),argument:k({name:h(),value:h()}),context:k({arguments:J(h(),h()).optional()}).optional()}),Lb=me.extend({method:P("completion/complete"),params:jb});var Ub=he.extend({completion:Te({values:j(h()).max(100),total:oe(W().int()),hasMore:oe(pe())})}),qb=k({uri:h().startsWith("file://"),name:h().optional(),_meta:J(h(),ne()).optional()}),Zb=me.extend({method:P("roots/list"),params:Ue.optional()}),fa=he.extend({roots:j(qb)}),Fb=Fe.extend({method:P("notifications/roots/list_changed"),params:Ze.optional()}),nI=Q([Do,ra,Lb,da,Jv,Vv,Rv,Ov,Cv,Lv,qv,mn,la,Lo,qo,Zo,Ho]),oI=Q([No,jo,na,Fb,pn]),sI=Q([Co,gn,pa,yr,fa,Uo,Fo,gr]),iI=Q([Do,_b,Ab,Zb,Lo,qo,Zo,Ho]),aI=Q([No,jo,ub,Fv,Dv,ib,tb,pn,Cb]),cI=Q([Co,wv,Ub,eb,Gv,Iv,Av,Nv,Wo,ob,Uo,Fo,gr]),I=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===N.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Bi(o.elicitations,r)}return new t(e,r,n)}},Bi=class extends I{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(N.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function It(t){return t==="completed"||t==="failed"||t==="cancelled"}var qI=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function ma(t){let r=zo(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=af(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function ha(t,e){let r=zt(t,e);if(!r.success)throw r.error;return r.data}var Jb=6e4,Vo=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(No,r=>{this._oncancel(r)}),this.setNotificationHandler(jo,r=>{this._onprogress(r)}),this.setRequestHandler(Do,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(Lo,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new I(N.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(qo,async(r,n)=>{let o=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,u=c.id,l=this._requestResolvers.get(u);if(l)if(this._requestResolvers.delete(u),a.type==="response")l(c);else{let d=c,p=new I(d.error.code,d.error.message,d.error.data);l(p)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${u}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let i=await this._taskStore.getTask(s,n.sessionId);if(!i)throw new I(N.InvalidParams,`Task not found: ${s}`);if(!It(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(It(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[Rt]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(Zo,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 I(N.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(Ho,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new I(N.InvalidParams,`Task not found: ${r.params.taskId}`);if(It(o.status))throw new I(N.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 I(N.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof I?o:new I(N.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),I.fromError(N.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),an(s)||Kf(s)?this._onresponse(s):Qi(s)?this._onrequest(s,i):Gf(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._timeoutInfo.values())clearTimeout(n.timeoutId);this._timeoutInfo.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=I.fromError(N.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?.[Rt]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:N.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=Hf(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,o?.sessionId):void 0,u={signal:i.signal,sessionId:o?.sessionId,_meta:e.params?._meta,sendNotification:async l=>{if(i.signal.aborted)return;let d={relatedRequestId:e.id};s&&(d.relatedTask={taskId:s}),await this.notification(l,d)},sendRequest:async(l,d,p)=>{if(i.signal.aborted)throw new I(N.ConnectionClosed,"Request was cancelled");let f={...p,relatedRequestId:e.id};s&&!f.relatedTask&&(f.relatedTask={taskId:s});let m=f.relatedTask?.taskId??s;return m&&c&&await c.updateTaskStatus(m,"input_required"),await this.request(l,d,f)},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:N.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.get(e.id)===i&&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),an(e))n(e);else{let i=new I(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(an(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),an(e))o(e);else{let i=I.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 I?i:new I(N.InternalError,String(i))}}return}let s;try{let i=await this.request(e,gr,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new I(N.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},It(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new I(N.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new I(N.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 I?i:new I(N.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=E=>{l(E)};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(E){d(E);return}n?.signal?.throwIfAborted();let p=this._requestMessageId++,f={...e,jsonrpc:"2.0",id:p};n?.onprogress&&(this._progressHandlers.set(p,n.onprogress),f.params={...e.params,_meta:{...e.params?._meta||{},progressToken:p}}),a&&(f.params={...f.params,task:a}),c&&(f.params={...f.params,_meta:{...f.params?._meta||{},[Rt]:c}});let m=E=>{this._responseHandlers.delete(p),this._progressHandlers.delete(p),this._cleanupTimeout(p),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:p,reason:String(E)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch($=>this._onerror(new Error(`Failed to send cancellation: ${$}`)));let v=E instanceof I?E:new I(N.RequestTimeout,String(E));l(v)};this._responseHandlers.set(p,E=>{if(!n?.signal?.aborted){if(E instanceof Error)return l(E);try{let v=zt(r,E.result);v.success?u(v.data):l(v.error)}catch(v){l(v)}}}),n?.signal?.addEventListener("abort",()=>{m(n?.signal?.reason)});let _=n?.timeout??Jb,S=()=>m(I.fromError(N.RequestTimeout,"Request timed out",{timeout:_}));this._setupTimeout(p,_,n?.maxTotalTimeout,S,n?.resetTimeoutOnProgress??!1);let b=c?.taskId;if(b){let E=v=>{let $=this._responseHandlers.get(p);$?$(v):this._onerror(new Error(`Response handler missing for side-channeled request ${p}`))};this._requestResolvers.set(p,E),this._enqueueTaskMessage(b,{type:"request",message:f,timestamp:Date.now()}).catch(v=>{this._cleanupTimeout(p),l(v)})}else this._transport.send(f,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(E=>{this._cleanupTimeout(p),l(E)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},Uo,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},Fo,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},Yf,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||{},[Rt]: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||{},[Rt]: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||{},[Rt]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=ma(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=ha(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=ma(e);this._notificationHandlers.set(n,o=>{let s=ha(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"&&Qi(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new I(N.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 I(N.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new I(N.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 I(N.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=pn.parse({method:"notifications/tasks/status",params:a});await this.notification(c),It(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 I(N.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(It(a.status))throw new I(N.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=pn.parse({method:"notifications/tasks/status",params:c});await this.notification(u),It(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function nm(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function om(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];nm(i)&&nm(s)?r[o]={...i,...s}:r[o]=s}return r}var Jg=Ft(tu(),1),Bg=Ft(Kg(),1);function X$(){let t=new Jg.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,Bg.default)(t),t}var Ps=class{constructor(e){this._ajv=e??X$()}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 Ts=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(p=>p.type==="tool_use").map(p=>p.id)),d=new Set(s.filter(p=>p.type==="tool_result").map(p=>p.toolUseId));if(l.size!==d.size||![...l].every(p=>d.has(p)))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},gn,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},yr,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 Yg(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 Xg(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 zs=class extends Vo{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(hn.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 Ps,this.setRequestHandler(ra,n=>this._oninitialize(n)),this.setNotificationHandler(na,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(da,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=hn.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new Ts(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=om(this._capabilities,e)}setRequestHandler(e,r){let o=zo(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(mr(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=zt(mn,c);if(!l.success){let m=l.error instanceof Error?l.error.message:String(l.error);throw new I(N.InvalidParams,`Invalid tools/call request: ${m}`)}let{params:d}=l.data,p=await Promise.resolve(r(c,u));if(d.task){let m=zt(gr,p);if(!m.success){let _=m.error instanceof Error?m.error.message:String(m.error);throw new I(N.InvalidParams,`Invalid task creation result: ${_}`)}return m.data}let f=zt(Wo,p);if(!f.success){let m=f.error instanceof Error?f.error.message:String(f.error);throw new I(N.InvalidParams,`Invalid tools/call result: ${m}`)}return f.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){Xg(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&Yg(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:qf.includes(r)?r:Yi,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"},Co)}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},pa,r):this.request({method:"sampling/createMessage",params:e},gn,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},yr,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},yr,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new I(N.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof I?i:new I(N.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},fa,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 uu=Ft(require("node:process"),1);var Rs=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
|
|
80
|
+
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let i of t.seen.entries()){let a=i[1];if(e===i[0]){s(i);continue}if(t.external){let u=t.external.registry.get(i[0])?.id;if(e!==i[0]&&u){s(i);continue}}if(t.metadataRegistry.get(i[0])?.id){s(i);continue}if(a.cycle){s(i);continue}if(a.count>1&&t.reused==="ref"){s(i);continue}}}function qi(t,e){let r=t.seen.get(e);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");let n=a=>{let c=t.seen.get(a);if(c.ref===null)return;let u=c.def??c.schema,l={...u},d=c.ref;if(c.ref=null,d){n(d);let f=t.seen.get(d),m=f.schema;if(m.$ref&&(t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0")?(u.allOf=u.allOf??[],u.allOf.push(m)):Object.assign(u,m),Object.assign(u,l),a._zod.parent===d)for(let S in u)S==="$ref"||S==="allOf"||S in l||delete u[S];if(m.$ref&&f.def)for(let S in u)S==="$ref"||S==="allOf"||S in f.def&&JSON.stringify(u[S])===JSON.stringify(f.def[S])&&delete u[S]}let p=a._zod.parent;if(p&&p!==d){n(p);let f=t.seen.get(p);if(f?.schema.$ref&&(u.$ref=f.schema.$ref,f.def))for(let m in u)m==="$ref"||m==="allOf"||m in f.def&&JSON.stringify(u[m])===JSON.stringify(f.def[m])&&delete u[m]}t.override({zodSchema:a,jsonSchema:u,path:c.path??[]})};for(let a of[...t.seen.entries()].reverse())n(a[0]);let o={};if(t.target==="draft-2020-12"?o.$schema="https://json-schema.org/draft/2020-12/schema":t.target==="draft-07"?o.$schema="http://json-schema.org/draft-07/schema#":t.target==="draft-04"?o.$schema="http://json-schema.org/draft-04/schema#":t.target,t.external?.uri){let a=t.external.registry.get(e)?.id;if(!a)throw new Error("Schema is missing an `id` property");o.$id=t.external.uri(a)}Object.assign(o,r.def??r.schema);let s=t.metadataRegistry.get(e)?.id;s!==void 0&&o.id===s&&delete o.id;let i=t.external?.defs??{};for(let a of t.seen.entries()){let c=a[1];c.def&&c.defId&&(c.def.id===c.defId&&delete c.def.id,i[c.defId]=c.def)}t.external||Object.keys(i).length>0&&(t.target==="draft-2020-12"?o.$defs=i:o.definitions=i);try{let a=JSON.parse(JSON.stringify(o));return Object.defineProperty(a,"~standard",{value:{...e["~standard"],jsonSchema:{input:tn(e,"input",t.processors),output:tn(e,"output",t.processors)}},enumerable:!1,writable:!1}),a}catch{throw new Error("Error converting schema to JSON.")}}function Pe(t,e){let r=e??{seen:new Set};if(r.seen.has(t))return!1;r.seen.add(t);let n=t._zod.def;if(n.type==="transform")return!0;if(n.type==="array")return Pe(n.element,r);if(n.type==="set")return Pe(n.valueType,r);if(n.type==="lazy")return Pe(n.getter(),r);if(n.type==="promise"||n.type==="optional"||n.type==="nonoptional"||n.type==="nullable"||n.type==="readonly"||n.type==="default"||n.type==="prefault")return Pe(n.innerType,r);if(n.type==="intersection")return Pe(n.left,r)||Pe(n.right,r);if(n.type==="record"||n.type==="map")return Pe(n.keyType,r)||Pe(n.valueType,r);if(n.type==="pipe")return t._zod.traits.has("$ZodCodec")?!0:Pe(n.in,r)||Pe(n.out,r);if(n.type==="object"){for(let o in n.shape)if(Pe(n.shape[o],r))return!0;return!1}if(n.type==="union"){for(let o of n.options)if(Pe(o,r))return!0;return!1}if(n.type==="tuple"){for(let o of n.items)if(Pe(o,r))return!0;return!!(n.rest&&Pe(n.rest,r))}return!1}var Np=(t,e={})=>r=>{let n=Li({...r,processors:e});return ie(t,n),Ui(n,t),qi(n,t)},tn=(t,e,r={})=>n=>{let{libraryOptions:o,target:s}=n??{},i=Li({...o??{},target:s,io:e,processors:r});return ie(t,i),Ui(i,t),qi(i,t)};var dS={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},jp=(t,e,r,n)=>{let o=r;o.type="string";let{minimum:s,maximum:i,format:a,patterns:c,contentEncoding:u}=t._zod.bag;if(typeof s=="number"&&(o.minLength=s),typeof i=="number"&&(o.maxLength=i),a&&(o.format=dS[a]??a,o.format===""&&delete o.format,a==="time"&&delete o.format),u&&(o.contentEncoding=u),c&&c.size>0){let l=[...c];l.length===1?o.pattern=l[0].source:l.length>1&&(o.allOf=[...l.map(d=>({...e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"?{type:"string"}:{},pattern:d.source}))])}},Lp=(t,e,r,n)=>{let o=r,{minimum:s,maximum:i,format:a,multipleOf:c,exclusiveMaximum:u,exclusiveMinimum:l}=t._zod.bag;typeof a=="string"&&a.includes("int")?o.type="integer":o.type="number";let d=typeof l=="number"&&l>=(s??Number.NEGATIVE_INFINITY),p=typeof u=="number"&&u<=(i??Number.POSITIVE_INFINITY),f=e.target==="draft-04"||e.target==="openapi-3.0";d?f?(o.minimum=l,o.exclusiveMinimum=!0):o.exclusiveMinimum=l:typeof s=="number"&&(o.minimum=s),p?f?(o.maximum=u,o.exclusiveMaximum=!0):o.exclusiveMaximum=u:typeof i=="number"&&(o.maximum=i),typeof c=="number"&&(o.multipleOf=c)},Up=(t,e,r,n)=>{r.type="boolean"};var qp=(t,e,r,n)=>{e.target==="openapi-3.0"?(r.type="string",r.nullable=!0,r.enum=[null]):r.type="null"};var Zp=(t,e,r,n)=>{r.not={}};var Fp=(t,e,r,n)=>{};var Hp=(t,e,r,n)=>{let o=t._zod.def,s=Wr(o.entries);s.every(i=>typeof i=="number")&&(r.type="number"),s.every(i=>typeof i=="string")&&(r.type="string"),r.enum=s},Wp=(t,e,r,n)=>{let o=t._zod.def,s=[];for(let i of o.values)if(i===void 0){if(e.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof i=="bigint"){if(e.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");s.push(Number(i))}else s.push(i);if(s.length!==0)if(s.length===1){let i=s[0];r.type=i===null?"null":typeof i,e.target==="draft-04"||e.target==="openapi-3.0"?r.enum=[i]:r.const=i}else s.every(i=>typeof i=="number")&&(r.type="number"),s.every(i=>typeof i=="string")&&(r.type="string"),s.every(i=>typeof i=="boolean")&&(r.type="boolean"),s.every(i=>i===null)&&(r.type="null"),r.enum=s};var Vp=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")};var Gp=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")};var Kp=(t,e,r,n)=>{let o=r,s=t._zod.def,{minimum:i,maximum:a}=t._zod.bag;typeof i=="number"&&(o.minItems=i),typeof a=="number"&&(o.maxItems=a),o.type="array",o.items=ie(s.element,e,{...n,path:[...n.path,"items"]})},Jp=(t,e,r,n)=>{let o=r,s=t._zod.def;o.type="object",o.properties={};let i=s.shape;for(let u in i)o.properties[u]=ie(i[u],e,{...n,path:[...n.path,"properties",u]});let a=new Set(Object.keys(i)),c=new Set([...a].filter(u=>{let l=s.shape[u]._zod;return e.io==="input"?l.optin===void 0:l.optout===void 0}));c.size>0&&(o.required=Array.from(c)),s.catchall?._zod.def.type==="never"?o.additionalProperties=!1:s.catchall?s.catchall&&(o.additionalProperties=ie(s.catchall,e,{...n,path:[...n.path,"additionalProperties"]})):e.io==="output"&&(o.additionalProperties=!1)},Bp=(t,e,r,n)=>{let o=t._zod.def,s=o.inclusive===!1,i=o.options.map((a,c)=>ie(a,e,{...n,path:[...n.path,s?"oneOf":"anyOf",c]}));s?r.oneOf=i:r.anyOf=i},Yp=(t,e,r,n)=>{let o=t._zod.def,s=ie(o.left,e,{...n,path:[...n.path,"allOf",0]}),i=ie(o.right,e,{...n,path:[...n.path,"allOf",1]}),a=u=>"allOf"in u&&Object.keys(u).length===1,c=[...a(s)?s.allOf:[s],...a(i)?i.allOf:[i]];r.allOf=c};var Xp=(t,e,r,n)=>{let o=r,s=t._zod.def;o.type="object";let i=s.keyType,c=i._zod.bag?.patterns;if(s.mode==="loose"&&c&&c.size>0){let l=ie(s.valueType,e,{...n,path:[...n.path,"patternProperties","*"]});o.patternProperties={};for(let d of c)o.patternProperties[d.source]=l}else(e.target==="draft-07"||e.target==="draft-2020-12")&&(o.propertyNames=ie(s.keyType,e,{...n,path:[...n.path,"propertyNames"]})),o.additionalProperties=ie(s.valueType,e,{...n,path:[...n.path,"additionalProperties"]});let u=i._zod.values;if(u){let l=[...u].filter(d=>typeof d=="string"||typeof d=="number");l.length>0&&(o.required=l)}},Qp=(t,e,r,n)=>{let o=t._zod.def,s=ie(o.innerType,e,n),i=e.seen.get(t);e.target==="openapi-3.0"?(i.ref=o.innerType,r.nullable=!0):r.anyOf=[s,{type:"null"}]},ef=(t,e,r,n)=>{let o=t._zod.def;ie(o.innerType,e,n);let s=e.seen.get(t);s.ref=o.innerType},tf=(t,e,r,n)=>{let o=t._zod.def;ie(o.innerType,e,n);let s=e.seen.get(t);s.ref=o.innerType,r.default=JSON.parse(JSON.stringify(o.defaultValue))},rf=(t,e,r,n)=>{let o=t._zod.def;ie(o.innerType,e,n);let s=e.seen.get(t);s.ref=o.innerType,e.io==="input"&&(r._prefault=JSON.parse(JSON.stringify(o.defaultValue)))},nf=(t,e,r,n)=>{let o=t._zod.def;ie(o.innerType,e,n);let s=e.seen.get(t);s.ref=o.innerType;let i;try{i=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}r.default=i},of=(t,e,r,n)=>{let o=t._zod.def,s=o.in._zod.traits.has("$ZodTransform"),i=e.io==="input"?s?o.out:o.in:o.out;ie(i,e,n);let a=e.seen.get(t);a.ref=i},sf=(t,e,r,n)=>{let o=t._zod.def;ie(o.innerType,e,n);let s=e.seen.get(t);s.ref=o.innerType,r.readOnly=!0};var Zi=(t,e,r,n)=>{let o=t._zod.def;ie(o.innerType,e,n);let s=e.seen.get(t);s.ref=o.innerType};function mr(t){return!!t._zod}function zt(t,e){return mr(t)?Br(t,e):t.safeParse(e)}function zo(t){if(!t)return;let e;if(mr(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function af(t){if(mr(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 nn={};Lu(nn,{ZodISODate:()=>uf,ZodISODateTime:()=>cf,ZodISODuration:()=>df,ZodISOTime:()=>lf,date:()=>Hi,datetime:()=>Fi,duration:()=>Vi,time:()=>Wi});var cf=g("ZodISODateTime",(t,e)=>{gd.init(t,e),re.init(t,e)});function Fi(t){return wp(cf,t)}var uf=g("ZodISODate",(t,e)=>{_d.init(t,e),re.init(t,e)});function Hi(t){return kp(uf,t)}var lf=g("ZodISOTime",(t,e)=>{yd.init(t,e),re.init(t,e)});function Wi(t){return xp(lf,t)}var df=g("ZodISODuration",(t,e)=>{Sd.init(t,e),re.init(t,e)});function Vi(t){return $p(df,t)}var vS=(t,e)=>{ho.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Qu(t,r)},flatten:{value:r=>Xu(t,r)},addIssue:{value:r=>{t.issues.push(r),t.message=JSON.stringify(t.issues,lr,2)}},addIssues:{value:r=>{t.issues.push(...r),t.message=JSON.stringify(t.issues,lr,2)}},isEmpty:{get(){return t.issues.length===0}}})};var Le=g("ZodError",vS,{Parent:Error});var pf=go(Le),ff=_o(Le),mf=Jr(Le),hf=Yr(Le),gf=el(Le),_f=tl(Le),yf=rl(Le),Sf=nl(Le),vf=ol(Le),bf=sl(Le),Ef=il(Le),wf=al(Le);var kf=new WeakMap;function on(t,e,r){let n=Object.getPrototypeOf(t),o=kf.get(n);if(o||(o=new Set,kf.set(n,o)),!o.has(e)){o.add(e);for(let s in r){let i=r[s];Object.defineProperty(n,s,{configurable:!0,enumerable:!1,get(){let a=i.bind(this);return Object.defineProperty(this,s,{configurable:!0,writable:!0,enumerable:!0,value:a}),a},set(a){Object.defineProperty(this,s,{configurable:!0,writable:!0,enumerable:!0,value:a})}})}}}var se=g("ZodType",(t,e)=>(Y.init(t,e),Object.assign(t["~standard"],{jsonSchema:{input:tn(t,"input"),output:tn(t,"output")}}),t.toJSONSchema=Np(t,{}),t.def=e,t.type=e.type,Object.defineProperty(t,"_def",{value:e}),t.parse=(r,n)=>pf(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>mf(t,r,n),t.parseAsync=async(r,n)=>ff(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>hf(t,r,n),t.spa=t.safeParseAsync,t.encode=(r,n)=>gf(t,r,n),t.decode=(r,n)=>_f(t,r,n),t.encodeAsync=async(r,n)=>yf(t,r,n),t.decodeAsync=async(r,n)=>Sf(t,r,n),t.safeEncode=(r,n)=>vf(t,r,n),t.safeDecode=(r,n)=>bf(t,r,n),t.safeEncodeAsync=async(r,n)=>Ef(t,r,n),t.safeDecodeAsync=async(r,n)=>wf(t,r,n),on(t,"ZodType",{check(...r){let n=this.def;return this.clone(U.mergeDefs(n,{checks:[...n.checks??[],...r.map(o=>typeof o=="function"?{_zod:{check:o,def:{check:"custom"},onattach:[]}}:o)]}),{parent:!0})},with(...r){return this.check(...r)},clone(r,n){return Ye(this,r,n)},brand(){return this},register(r,n){return r.add(this,n),this},refine(r,n){return this.check(lv(r,n))},superRefine(r,n){return this.check(dv(r,n))},overwrite(r){return this.check(Tt(r))},optional(){return oe(this)},exactOptional(){return XS(this)},nullable(){return Tf(this)},nullish(){return oe(Tf(this))},nonoptional(r){return ov(this,r)},array(){return j(this)},or(r){return Q([this,r])},and(r){return Io(this,r)},transform(r){return zf(this,Cf(r))},default(r){return tv(this,r)},prefault(r){return nv(this,r)},catch(r){return iv(this,r)},pipe(r){return zf(this,r)},readonly(){return uv(this)},describe(r){let n=this.clone();return Wt.add(n,{description:r}),n},meta(...r){if(r.length===0)return Wt.get(this);let n=this.clone();return Wt.add(n,r[0]),n},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(r){return r(this)}}),Object.defineProperty(t,"description",{get(){return Wt.get(t)?.description},configurable:!0}),t)),Rf=g("_ZodString",(t,e)=>{wo.init(t,e),se.init(t,e),t._zod.processJSONSchema=(n,o,s)=>jp(t,n,o,s);let r=t._zod.bag;t.format=r.format??null,t.minLength=r.minimum??null,t.maxLength=r.maximum??null,on(t,"_ZodString",{regex(...n){return this.check(Ti(...n))},includes(...n){return this.check(Ii(...n))},startsWith(...n){return this.check(Oi(...n))},endsWith(...n){return this.check(Ai(...n))},min(...n){return this.check(fr(...n))},max(...n){return this.check(Po(...n))},length(...n){return this.check(To(...n))},nonempty(...n){return this.check(fr(1,...n))},lowercase(n){return this.check(zi(n))},uppercase(n){return this.check(Ri(n))},trim(){return this.check(Ci())},normalize(...n){return this.check(Mi(...n))},toLowerCase(){return this.check(Di())},toUpperCase(){return this.check(Ni())},slugify(){return this.check(ji())}})}),ES=g("ZodString",(t,e)=>{wo.init(t,e),Rf.init(t,e),t.email=r=>t.check(rp(wS,r)),t.url=r=>t.check(ap(kS,r)),t.jwt=r=>t.check(Ep(LS,r)),t.emoji=r=>t.check(cp(xS,r)),t.guid=r=>t.check(Pi(xf,r)),t.uuid=r=>t.check(np(Ro,r)),t.uuidv4=r=>t.check(op(Ro,r)),t.uuidv6=r=>t.check(sp(Ro,r)),t.uuidv7=r=>t.check(ip(Ro,r)),t.nanoid=r=>t.check(up($S,r)),t.guid=r=>t.check(Pi(xf,r)),t.cuid=r=>t.check(lp(PS,r)),t.cuid2=r=>t.check(dp(TS,r)),t.ulid=r=>t.check(pp(zS,r)),t.base64=r=>t.check(Sp(DS,r)),t.base64url=r=>t.check(vp(NS,r)),t.xid=r=>t.check(fp(RS,r)),t.ksuid=r=>t.check(mp(IS,r)),t.ipv4=r=>t.check(hp(OS,r)),t.ipv6=r=>t.check(gp(AS,r)),t.cidrv4=r=>t.check(_p(MS,r)),t.cidrv6=r=>t.check(yp(CS,r)),t.e164=r=>t.check(bp(jS,r)),t.datetime=r=>t.check(Fi(r)),t.date=r=>t.check(Hi(r)),t.time=r=>t.check(Wi(r)),t.duration=r=>t.check(Vi(r))});function h(t){return tp(ES,t)}var re=g("ZodStringFormat",(t,e)=>{X.init(t,e),Rf.init(t,e)}),wS=g("ZodEmail",(t,e)=>{ad.init(t,e),re.init(t,e)});var xf=g("ZodGUID",(t,e)=>{sd.init(t,e),re.init(t,e)});var Ro=g("ZodUUID",(t,e)=>{id.init(t,e),re.init(t,e)});var kS=g("ZodURL",(t,e)=>{cd.init(t,e),re.init(t,e)});var xS=g("ZodEmoji",(t,e)=>{ud.init(t,e),re.init(t,e)});var $S=g("ZodNanoID",(t,e)=>{ld.init(t,e),re.init(t,e)});var PS=g("ZodCUID",(t,e)=>{dd.init(t,e),re.init(t,e)});var TS=g("ZodCUID2",(t,e)=>{pd.init(t,e),re.init(t,e)});var zS=g("ZodULID",(t,e)=>{fd.init(t,e),re.init(t,e)});var RS=g("ZodXID",(t,e)=>{md.init(t,e),re.init(t,e)});var IS=g("ZodKSUID",(t,e)=>{hd.init(t,e),re.init(t,e)});var OS=g("ZodIPv4",(t,e)=>{vd.init(t,e),re.init(t,e)});var AS=g("ZodIPv6",(t,e)=>{bd.init(t,e),re.init(t,e)});var MS=g("ZodCIDRv4",(t,e)=>{Ed.init(t,e),re.init(t,e)});var CS=g("ZodCIDRv6",(t,e)=>{wd.init(t,e),re.init(t,e)});var DS=g("ZodBase64",(t,e)=>{xd.init(t,e),re.init(t,e)});var NS=g("ZodBase64URL",(t,e)=>{$d.init(t,e),re.init(t,e)});var jS=g("ZodE164",(t,e)=>{Pd.init(t,e),re.init(t,e)});var LS=g("ZodJWT",(t,e)=>{Td.init(t,e),re.init(t,e)});var If=g("ZodNumber",(t,e)=>{Ei.init(t,e),se.init(t,e),t._zod.processJSONSchema=(n,o,s)=>Lp(t,n,o,s),on(t,"ZodNumber",{gt(n,o){return this.check(xo(n,o))},gte(n,o){return this.check(en(n,o))},min(n,o){return this.check(en(n,o))},lt(n,o){return this.check(ko(n,o))},lte(n,o){return this.check(Qr(n,o))},max(n,o){return this.check(Qr(n,o))},int(n){return this.check($f(n))},safe(n){return this.check($f(n))},positive(n){return this.check(xo(0,n))},nonnegative(n){return this.check(en(0,n))},negative(n){return this.check(ko(0,n))},nonpositive(n){return this.check(Qr(0,n))},multipleOf(n,o){return this.check($o(n,o))},step(n,o){return this.check($o(n,o))},finite(){return this}});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 W(t){return Pp(If,t)}var US=g("ZodNumberFormat",(t,e)=>{zd.init(t,e),If.init(t,e)});function $f(t){return Tp(US,t)}var qS=g("ZodBoolean",(t,e)=>{Rd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Up(t,r,n,o)});function pe(t){return zp(qS,t)}var ZS=g("ZodNull",(t,e)=>{Id.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>qp(t,r,n,o)});function Of(t){return Rp(ZS,t)}var FS=g("ZodUnknown",(t,e)=>{Od.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Fp(t,r,n,o)});function ne(){return Ip(FS)}var HS=g("ZodNever",(t,e)=>{Ad.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Zp(t,r,n,o)});function WS(t){return Op(HS,t)}var VS=g("ZodArray",(t,e)=>{Md.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Kp(t,r,n,o),t.element=e.element,on(t,"ZodArray",{min(r,n){return this.check(fr(r,n))},nonempty(r){return this.check(fr(1,r))},max(r,n){return this.check(Po(r,n))},length(r,n){return this.check(To(r,n))},unwrap(){return this.element}})});function j(t,e){return Ap(VS,t,e)}var Af=g("ZodObject",(t,e)=>{Nd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Jp(t,r,n,o),U.defineLazy(t,"shape",()=>e.shape),on(t,"ZodObject",{keyof(){return Oe(Object.keys(this._zod.def.shape))},catchall(r){return this.clone({...this._zod.def,catchall:r})},passthrough(){return this.clone({...this._zod.def,catchall:ne()})},loose(){return this.clone({...this._zod.def,catchall:ne()})},strict(){return this.clone({...this._zod.def,catchall:WS()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(r){return U.extend(this,r)},safeExtend(r){return U.safeExtend(this,r)},merge(r){return U.merge(this,r)},pick(r){return U.pick(this,r)},omit(r){return U.omit(this,r)},partial(...r){return U.partial(Df,this,r[0])},required(...r){return U.required(Nf,this,r[0])}})});function k(t,e){let r={type:"object",shape:t??{},...U.normalizeParams(e)};return new Af(r)}function Te(t,e){return new Af({type:"object",shape:t,catchall:ne(),...U.normalizeParams(e)})}var Mf=g("ZodUnion",(t,e)=>{wi.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Bp(t,r,n,o),t.options=e.options});function Q(t,e){return new Mf({type:"union",options:t,...U.normalizeParams(e)})}var GS=g("ZodDiscriminatedUnion",(t,e)=>{Mf.init(t,e),jd.init(t,e)});function Ki(t,e,r){return new GS({type:"union",options:e,discriminator:t,...U.normalizeParams(r)})}var KS=g("ZodIntersection",(t,e)=>{Ld.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Yp(t,r,n,o)});function Io(t,e){return new KS({type:"intersection",left:t,right:e})}var Pf=g("ZodRecord",(t,e)=>{Ud.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Xp(t,r,n,o),t.keyType=e.keyType,t.valueType=e.valueType});function J(t,e,r){return!e||!e._zod?new Pf({type:"record",keyType:h(),valueType:t,...U.normalizeParams(e)}):new Pf({type:"record",keyType:t,valueType:e,...U.normalizeParams(r)})}var Gi=g("ZodEnum",(t,e)=>{qd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(n,o,s)=>Hp(t,n,o,s),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 Gi({...e,checks:[],...U.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 Gi({...e,checks:[],...U.normalizeParams(o),entries:s})}});function Oe(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Gi({type:"enum",entries:r,...U.normalizeParams(e)})}var JS=g("ZodLiteral",(t,e)=>{Zd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Wp(t,r,n,o),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 P(t,e){return new JS({type:"literal",values:Array.isArray(t)?t:[t],...U.normalizeParams(e)})}var BS=g("ZodTransform",(t,e)=>{Fd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Gp(t,r,n,o),t._zod.parse=(r,n)=>{if(n.direction==="backward")throw new cr(t.constructor.name);r.addIssue=s=>{if(typeof s=="string")r.issues.push(U.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),r.issues.push(U.issue(i))}};let o=e.transform(r.value,r);return o instanceof Promise?o.then(s=>(r.value=s,r.fallback=!0,r)):(r.value=o,r.fallback=!0,r)}});function Cf(t){return new BS({type:"transform",transform:t})}var Df=g("ZodOptional",(t,e)=>{ki.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Zi(t,r,n,o),t.unwrap=()=>t._zod.def.innerType});function oe(t){return new Df({type:"optional",innerType:t})}var YS=g("ZodExactOptional",(t,e)=>{Hd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Zi(t,r,n,o),t.unwrap=()=>t._zod.def.innerType});function XS(t){return new YS({type:"optional",innerType:t})}var QS=g("ZodNullable",(t,e)=>{Wd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Qp(t,r,n,o),t.unwrap=()=>t._zod.def.innerType});function Tf(t){return new QS({type:"nullable",innerType:t})}var ev=g("ZodDefault",(t,e)=>{Vd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>tf(t,r,n,o),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function tv(t,e){return new ev({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():U.shallowClone(e)}})}var rv=g("ZodPrefault",(t,e)=>{Gd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>rf(t,r,n,o),t.unwrap=()=>t._zod.def.innerType});function nv(t,e){return new rv({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():U.shallowClone(e)}})}var Nf=g("ZodNonOptional",(t,e)=>{Kd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>ef(t,r,n,o),t.unwrap=()=>t._zod.def.innerType});function ov(t,e){return new Nf({type:"nonoptional",innerType:t,...U.normalizeParams(e)})}var sv=g("ZodCatch",(t,e)=>{Jd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>nf(t,r,n,o),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function iv(t,e){return new sv({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var jf=g("ZodPipe",(t,e)=>{xi.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>of(t,r,n,o),t.in=e.in,t.out=e.out});function zf(t,e){return new jf({type:"pipe",in:t,out:e})}var av=g("ZodPreprocess",(t,e)=>{jf.init(t,e),Bd.init(t,e)}),cv=g("ZodReadonly",(t,e)=>{Yd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>sf(t,r,n,o),t.unwrap=()=>t._zod.def.innerType});function uv(t){return new cv({type:"readonly",innerType:t})}var Lf=g("ZodCustom",(t,e)=>{Xd.init(t,e),se.init(t,e),t._zod.processJSONSchema=(r,n,o)=>Vp(t,r,n,o)});function Uf(t,e){return Mp(Lf,t??(()=>!0),e)}function lv(t,e={}){return Cp(Lf,t,e)}function dv(t,e){return Dp(t,e)}function Ji(t,e){return new av({type:"pipe",in:Cf(t),out:e})}je(Qd());var Yi="2025-11-25";var qf=[Yi,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Rt="io.modelcontextprotocol/related-task",Ao="2.0",de=Uf(t=>t!==null&&(typeof t=="object"||typeof t=="function")),Zf=Q([h(),W().int()]),Ff=h(),XR=Te({ttl:W().optional(),pollInterval:W().optional()}),pv=k({ttl:W().optional()}),fv=k({taskId:h()}),Xi=Te({progressToken:Zf.optional(),[Rt]:fv.optional()}),Ue=k({_meta:Xi.optional()}),sn=Ue.extend({task:pv.optional()}),Hf=t=>sn.safeParse(t).success,me=k({method:h(),params:Ue.loose().optional()}),Ze=k({_meta:Xi.optional()}),Fe=k({method:h(),params:Ze.loose().optional()}),he=Te({_meta:Xi.optional()}),Mo=Q([h(),W().int()]),Wf=k({jsonrpc:P(Ao),id:Mo,...me.shape}).strict(),Qi=t=>Wf.safeParse(t).success,Vf=k({jsonrpc:P(Ao),...Fe.shape}).strict(),Gf=t=>Vf.safeParse(t).success,ea=k({jsonrpc:P(Ao),id:Mo,result:he}).strict(),an=t=>ea.safeParse(t).success;var D;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(D||(D={}));var ta=k({jsonrpc:P(Ao),id:Mo.optional(),error:k({code:W().int(),message:h(),data:ne().optional()})}).strict();var Kf=t=>ta.safeParse(t).success;var Jf=Q([Wf,Vf,ea,ta]),QR=Q([ea,ta]),Co=he.strict(),mv=Ze.extend({requestId:Mo.optional(),reason:h().optional()}),Do=Fe.extend({method:P("notifications/cancelled"),params:mv}),hv=k({src:h(),mimeType:h().optional(),sizes:j(h()).optional(),theme:Oe(["light","dark"]).optional()}),cn=k({icons:j(hv).optional()}),hr=k({name:h(),title:h().optional()}),Bf=hr.extend({...hr.shape,...cn.shape,version:h(),websiteUrl:h().optional(),description:h().optional()}),gv=Io(k({applyDefaults:pe().optional()}),J(h(),ne())),_v=Ji(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,Io(k({form:gv.optional(),url:de.optional()}),J(h(),ne()).optional())),yv=Te({list:de.optional(),cancel:de.optional(),requests:Te({sampling:Te({createMessage:de.optional()}).optional(),elicitation:Te({create:de.optional()}).optional()}).optional()}),Sv=Te({list:de.optional(),cancel:de.optional(),requests:Te({tools:Te({call:de.optional()}).optional()}).optional()}),vv=k({experimental:J(h(),de).optional(),sampling:k({context:de.optional(),tools:de.optional()}).optional(),elicitation:_v.optional(),roots:k({listChanged:pe().optional()}).optional(),tasks:yv.optional(),extensions:J(h(),de).optional()}),bv=Ue.extend({protocolVersion:h(),capabilities:vv,clientInfo:Bf}),ra=me.extend({method:P("initialize"),params:bv});var Ev=k({experimental:J(h(),de).optional(),logging:de.optional(),completions:de.optional(),prompts:k({listChanged:pe().optional()}).optional(),resources:k({subscribe:pe().optional(),listChanged:pe().optional()}).optional(),tools:k({listChanged:pe().optional()}).optional(),tasks:Sv.optional(),extensions:J(h(),de).optional()}),wv=he.extend({protocolVersion:h(),capabilities:Ev,serverInfo:Bf,instructions:h().optional()}),na=Fe.extend({method:P("notifications/initialized"),params:Ze.optional()});var No=me.extend({method:P("ping"),params:Ue.optional()}),kv=k({progress:W(),total:oe(W()),message:oe(h())}),xv=k({...Ze.shape,...kv.shape,progressToken:Zf}),jo=Fe.extend({method:P("notifications/progress"),params:xv}),$v=Ue.extend({cursor:Ff.optional()}),un=me.extend({params:$v.optional()}),ln=he.extend({nextCursor:Ff.optional()}),Pv=Oe(["working","input_required","completed","failed","cancelled"]),dn=k({taskId:h(),status:Pv,ttl:Q([W(),Of()]),createdAt:h(),lastUpdatedAt:h(),pollInterval:oe(W()),statusMessage:oe(h())}),gr=he.extend({task:dn}),Tv=Ze.merge(dn),pn=Fe.extend({method:P("notifications/tasks/status"),params:Tv}),Lo=me.extend({method:P("tasks/get"),params:Ue.extend({taskId:h()})}),Uo=he.merge(dn),qo=me.extend({method:P("tasks/result"),params:Ue.extend({taskId:h()})}),eI=he.loose(),Zo=un.extend({method:P("tasks/list")}),Fo=ln.extend({tasks:j(dn)}),Ho=me.extend({method:P("tasks/cancel"),params:Ue.extend({taskId:h()})}),Yf=he.merge(dn),Xf=k({uri:h(),mimeType:oe(h()),_meta:J(h(),ne()).optional()}),Qf=Xf.extend({text:h()}),oa=h().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),em=Xf.extend({blob:oa}),fn=Oe(["user","assistant"]),_r=k({audience:j(fn).optional(),priority:W().min(0).max(1).optional(),lastModified:nn.datetime({offset:!0}).optional()}),tm=k({...hr.shape,...cn.shape,uri:h(),description:oe(h()),mimeType:oe(h()),size:oe(W()),annotations:_r.optional(),_meta:oe(Te({}))}),zv=k({...hr.shape,...cn.shape,uriTemplate:h(),description:oe(h()),mimeType:oe(h()),annotations:_r.optional(),_meta:oe(Te({}))}),Rv=un.extend({method:P("resources/list")}),Iv=ln.extend({resources:j(tm)}),Ov=un.extend({method:P("resources/templates/list")}),Av=ln.extend({resourceTemplates:j(zv)}),sa=Ue.extend({uri:h()}),Mv=sa,Cv=me.extend({method:P("resources/read"),params:Mv}),Dv=he.extend({contents:j(Q([Qf,em]))}),Nv=Fe.extend({method:P("notifications/resources/list_changed"),params:Ze.optional()}),jv=sa,Lv=me.extend({method:P("resources/subscribe"),params:jv}),Uv=sa,qv=me.extend({method:P("resources/unsubscribe"),params:Uv}),Zv=Ze.extend({uri:h()}),Fv=Fe.extend({method:P("notifications/resources/updated"),params:Zv}),Hv=k({name:h(),description:oe(h()),required:oe(pe())}),Wv=k({...hr.shape,...cn.shape,description:oe(h()),arguments:oe(j(Hv)),_meta:oe(Te({}))}),Vv=un.extend({method:P("prompts/list")}),Gv=ln.extend({prompts:j(Wv)}),Kv=Ue.extend({name:h(),arguments:J(h(),h()).optional()}),Jv=me.extend({method:P("prompts/get"),params:Kv}),ia=k({type:P("text"),text:h(),annotations:_r.optional(),_meta:J(h(),ne()).optional()}),aa=k({type:P("image"),data:oa,mimeType:h(),annotations:_r.optional(),_meta:J(h(),ne()).optional()}),ca=k({type:P("audio"),data:oa,mimeType:h(),annotations:_r.optional(),_meta:J(h(),ne()).optional()}),Bv=k({type:P("tool_use"),name:h(),id:h(),input:J(h(),ne()),_meta:J(h(),ne()).optional()}),Yv=k({type:P("resource"),resource:Q([Qf,em]),annotations:_r.optional(),_meta:J(h(),ne()).optional()}),Xv=tm.extend({type:P("resource_link")}),ua=Q([ia,aa,ca,Xv,Yv]),Qv=k({role:fn,content:ua}),eb=he.extend({description:h().optional(),messages:j(Qv)}),tb=Fe.extend({method:P("notifications/prompts/list_changed"),params:Ze.optional()}),rb=k({title:h().optional(),readOnlyHint:pe().optional(),destructiveHint:pe().optional(),idempotentHint:pe().optional(),openWorldHint:pe().optional()}),nb=k({taskSupport:Oe(["required","optional","forbidden"]).optional()}),rm=k({...hr.shape,...cn.shape,description:h().optional(),inputSchema:k({type:P("object"),properties:J(h(),de).optional(),required:j(h()).optional()}).catchall(ne()),outputSchema:k({type:P("object"),properties:J(h(),de).optional(),required:j(h()).optional()}).catchall(ne()).optional(),annotations:rb.optional(),execution:nb.optional(),_meta:J(h(),ne()).optional()}),la=un.extend({method:P("tools/list")}),ob=ln.extend({tools:j(rm)}),Wo=he.extend({content:j(ua).default([]),structuredContent:J(h(),ne()).optional(),isError:pe().optional()}),tI=Wo.or(he.extend({toolResult:ne()})),sb=sn.extend({name:h(),arguments:J(h(),ne()).optional()}),mn=me.extend({method:P("tools/call"),params:sb}),ib=Fe.extend({method:P("notifications/tools/list_changed"),params:Ze.optional()}),rI=k({autoRefresh:pe().default(!0),debounceMs:W().int().nonnegative().default(300)}),hn=Oe(["debug","info","notice","warning","error","critical","alert","emergency"]),ab=Ue.extend({level:hn}),da=me.extend({method:P("logging/setLevel"),params:ab}),cb=Ze.extend({level:hn,logger:h().optional(),data:ne()}),ub=Fe.extend({method:P("notifications/message"),params:cb}),lb=k({name:h().optional()}),db=k({hints:j(lb).optional(),costPriority:W().min(0).max(1).optional(),speedPriority:W().min(0).max(1).optional(),intelligencePriority:W().min(0).max(1).optional()}),pb=k({mode:Oe(["auto","required","none"]).optional()}),fb=k({type:P("tool_result"),toolUseId:h().describe("The unique identifier for the corresponding tool call."),content:j(ua).default([]),structuredContent:k({}).loose().optional(),isError:pe().optional(),_meta:J(h(),ne()).optional()}),mb=Ki("type",[ia,aa,ca]),Oo=Ki("type",[ia,aa,ca,Bv,fb]),hb=k({role:fn,content:Q([Oo,j(Oo)]),_meta:J(h(),ne()).optional()}),gb=sn.extend({messages:j(hb),modelPreferences:db.optional(),systemPrompt:h().optional(),includeContext:Oe(["none","thisServer","allServers"]).optional(),temperature:W().optional(),maxTokens:W().int(),stopSequences:j(h()).optional(),metadata:de.optional(),tools:j(rm).optional(),toolChoice:pb.optional()}),_b=me.extend({method:P("sampling/createMessage"),params:gb}),gn=he.extend({model:h(),stopReason:oe(Oe(["endTurn","stopSequence","maxTokens"]).or(h())),role:fn,content:mb}),pa=he.extend({model:h(),stopReason:oe(Oe(["endTurn","stopSequence","maxTokens","toolUse"]).or(h())),role:fn,content:Q([Oo,j(Oo)])}),yb=k({type:P("boolean"),title:h().optional(),description:h().optional(),default:pe().optional()}),Sb=k({type:P("string"),title:h().optional(),description:h().optional(),minLength:W().optional(),maxLength:W().optional(),format:Oe(["email","uri","date","date-time"]).optional(),default:h().optional()}),vb=k({type:Oe(["number","integer"]),title:h().optional(),description:h().optional(),minimum:W().optional(),maximum:W().optional(),default:W().optional()}),bb=k({type:P("string"),title:h().optional(),description:h().optional(),enum:j(h()),default:h().optional()}),Eb=k({type:P("string"),title:h().optional(),description:h().optional(),oneOf:j(k({const:h(),title:h()})),default:h().optional()}),wb=k({type:P("string"),title:h().optional(),description:h().optional(),enum:j(h()),enumNames:j(h()).optional(),default:h().optional()}),kb=Q([bb,Eb]),xb=k({type:P("array"),title:h().optional(),description:h().optional(),minItems:W().optional(),maxItems:W().optional(),items:k({type:P("string"),enum:j(h())}),default:j(h()).optional()}),$b=k({type:P("array"),title:h().optional(),description:h().optional(),minItems:W().optional(),maxItems:W().optional(),items:k({anyOf:j(k({const:h(),title:h()}))}),default:j(h()).optional()}),Pb=Q([xb,$b]),Tb=Q([wb,kb,Pb]),zb=Q([Tb,yb,Sb,vb]),Rb=sn.extend({mode:P("form").optional(),message:h(),requestedSchema:k({type:P("object"),properties:J(h(),zb),required:j(h()).optional()})}),Ib=sn.extend({mode:P("url"),message:h(),elicitationId:h(),url:h().url()}),Ob=Q([Rb,Ib]),Ab=me.extend({method:P("elicitation/create"),params:Ob}),Mb=Ze.extend({elicitationId:h()}),Cb=Fe.extend({method:P("notifications/elicitation/complete"),params:Mb}),yr=he.extend({action:Oe(["accept","decline","cancel"]),content:Ji(t=>t===null?void 0:t,J(h(),Q([h(),W(),pe(),j(h())])).optional())}),Db=k({type:P("ref/resource"),uri:h()});var Nb=k({type:P("ref/prompt"),name:h()}),jb=Ue.extend({ref:Q([Nb,Db]),argument:k({name:h(),value:h()}),context:k({arguments:J(h(),h()).optional()}).optional()}),Lb=me.extend({method:P("completion/complete"),params:jb});var Ub=he.extend({completion:Te({values:j(h()).max(100),total:oe(W().int()),hasMore:oe(pe())})}),qb=k({uri:h().startsWith("file://"),name:h().optional(),_meta:J(h(),ne()).optional()}),Zb=me.extend({method:P("roots/list"),params:Ue.optional()}),fa=he.extend({roots:j(qb)}),Fb=Fe.extend({method:P("notifications/roots/list_changed"),params:Ze.optional()}),nI=Q([No,ra,Lb,da,Jv,Vv,Rv,Ov,Cv,Lv,qv,mn,la,Lo,qo,Zo,Ho]),oI=Q([Do,jo,na,Fb,pn]),sI=Q([Co,gn,pa,yr,fa,Uo,Fo,gr]),iI=Q([No,_b,Ab,Zb,Lo,qo,Zo,Ho]),aI=Q([Do,jo,ub,Fv,Nv,ib,tb,pn,Cb]),cI=Q([Co,wv,Ub,eb,Gv,Iv,Av,Dv,Wo,ob,Uo,Fo,gr]),I=class t extends Error{constructor(e,r,n){super(`MCP error ${e}: ${r}`),this.code=e,this.data=n,this.name="McpError"}static fromError(e,r,n){if(e===D.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Bi(o.elicitations,r)}return new t(e,r,n)}},Bi=class extends I{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(D.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function It(t){return t==="completed"||t==="failed"||t==="cancelled"}var qI=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function ma(t){let r=zo(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=af(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function ha(t,e){let r=zt(t,e);if(!r.success)throw r.error;return r.data}var Jb=6e4,Vo=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(Do,r=>{this._oncancel(r)}),this.setNotificationHandler(jo,r=>{this._onprogress(r)}),this.setRequestHandler(No,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(Lo,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new I(D.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(qo,async(r,n)=>{let o=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,u=c.id,l=this._requestResolvers.get(u);if(l)if(this._requestResolvers.delete(u),a.type==="response")l(c);else{let d=c,p=new I(d.error.code,d.error.message,d.error.data);l(p)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${u}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let i=await this._taskStore.getTask(s,n.sessionId);if(!i)throw new I(D.InvalidParams,`Task not found: ${s}`);if(!It(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(It(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[Rt]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(Zo,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 I(D.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(Ho,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new I(D.InvalidParams,`Task not found: ${r.params.taskId}`);if(It(o.status))throw new I(D.InvalidParams,`Cannot cancel task in terminal status: ${o.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new I(D.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof I?o:new I(D.InvalidRequest,`Failed to cancel task: ${o instanceof Error?o.message:String(o)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,o,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(o,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:o})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),I.fromError(D.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(e){let r=this._timeoutInfo.get(e);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=s=>{n?.(s),this._onerror(s)};let o=this._transport?.onmessage;this._transport.onmessage=(s,i)=>{o?.(s,i),an(s)||Kf(s)?this._onresponse(s):Qi(s)?this._onrequest(s,i):Gf(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._timeoutInfo.values())clearTimeout(n.timeoutId);this._timeoutInfo.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=I.fromError(D.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of e.values())n(r)}_onerror(e){this.onerror?.(e)}_onnotification(e){let r=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(e)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(e,r){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,o=this._transport,s=e.params?._meta?.[Rt]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:D.MethodNotFound,message:"Method not found"}};s&&this._taskMessageQueue?this._enqueueTaskMessage(s,{type:"error",message:l,timestamp:Date.now()},o?.sessionId).catch(d=>this._onerror(new Error(`Failed to enqueue error response: ${d}`))):o?.send(l).catch(d=>this._onerror(new Error(`Failed to send an error response: ${d}`)));return}let i=new AbortController;this._requestHandlerAbortControllers.set(e.id,i);let a=Hf(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,o?.sessionId):void 0,u={signal:i.signal,sessionId:o?.sessionId,_meta:e.params?._meta,sendNotification:async l=>{if(i.signal.aborted)return;let d={relatedRequestId:e.id};s&&(d.relatedTask={taskId:s}),await this.notification(l,d)},sendRequest:async(l,d,p)=>{if(i.signal.aborted)throw new I(D.ConnectionClosed,"Request was cancelled");let f={...p,relatedRequestId:e.id};s&&!f.relatedTask&&(f.relatedTask={taskId:s});let m=f.relatedTask?.taskId??s;return m&&c&&await c.updateTaskStatus(m,"input_required"),await this.request(l,d,f)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:s,taskStore:c,taskRequestedTtl:a?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{a&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,u)).then(async l=>{if(i.signal.aborted)return;let d={result:l,jsonrpc:"2.0",id:e.id};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"response",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)},async l=>{if(i.signal.aborted)return;let d={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(l.code)?l.code:D.InternalError,message:l.message??"Internal error",...l.data!==void 0&&{data:l.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)}).catch(l=>this._onerror(new Error(`Failed to send response: ${l}`))).finally(()=>{this._requestHandlerAbortControllers.get(e.id)===i&&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),an(e))n(e);else{let i=new I(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(an(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),an(e))o(e);else{let i=I.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 I?i:new I(D.InternalError,String(i))}}return}let s;try{let i=await this.request(e,gr,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new I(D.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},It(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new I(D.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new I(D.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),n?.signal?.throwIfAborted()}}catch(i){yield{type:"error",error:i instanceof I?i:new I(D.InternalError,String(i))}}}request(e,r,n){let{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i,task:a,relatedTask:c}=n??{};return new Promise((u,l)=>{let d=E=>{l(E)};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(E){d(E);return}n?.signal?.throwIfAborted();let p=this._requestMessageId++,f={...e,jsonrpc:"2.0",id:p};n?.onprogress&&(this._progressHandlers.set(p,n.onprogress),f.params={...e.params,_meta:{...e.params?._meta||{},progressToken:p}}),a&&(f.params={...f.params,task:a}),c&&(f.params={...f.params,_meta:{...f.params?._meta||{},[Rt]:c}});let m=E=>{this._responseHandlers.delete(p),this._progressHandlers.delete(p),this._cleanupTimeout(p),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:p,reason:String(E)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch($=>this._onerror(new Error(`Failed to send cancellation: ${$}`)));let v=E instanceof I?E:new I(D.RequestTimeout,String(E));l(v)};this._responseHandlers.set(p,E=>{if(!n?.signal?.aborted){if(E instanceof Error)return l(E);try{let v=zt(r,E.result);v.success?u(v.data):l(v.error)}catch(v){l(v)}}}),n?.signal?.addEventListener("abort",()=>{m(n?.signal?.reason)});let _=n?.timeout??Jb,S=()=>m(I.fromError(D.RequestTimeout,"Request timed out",{timeout:_}));this._setupTimeout(p,_,n?.maxTotalTimeout,S,n?.resetTimeoutOnProgress??!1);let b=c?.taskId;if(b){let E=v=>{let $=this._responseHandlers.get(p);$?$(v):this._onerror(new Error(`Response handler missing for side-channeled request ${p}`))};this._requestResolvers.set(p,E),this._enqueueTaskMessage(b,{type:"request",message:f,timestamp:Date.now()}).catch(v=>{this._cleanupTimeout(p),l(v)})}else this._transport.send(f,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(E=>{this._cleanupTimeout(p),l(E)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},Uo,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},Fo,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},Yf,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||{},[Rt]: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||{},[Rt]: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||{},[Rt]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=ma(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=ha(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=ma(e);this._notificationHandlers.set(n,o=>{let s=ha(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"&&Qi(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new I(D.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(s)):this._onerror(new Error(`Resolver missing for request ${s} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(e);o?.pollInterval&&(n=o.pollInterval)}catch{}return new Promise((o,s)=>{if(r.aborted){s(new I(D.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new I(D.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async o=>{if(!e)throw new Error("No request provided");return await n.createTask(o,e.id,{method:e.method,params:e.params},r)},getTask:async o=>{let s=await n.getTask(o,r);if(!s)throw new I(D.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(o,s,i)=>{await n.storeTaskResult(o,s,i,r);let a=await n.getTask(o,r);if(a){let c=pn.parse({method:"notifications/tasks/status",params:a});await this.notification(c),It(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 I(D.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(It(a.status))throw new I(D.InvalidParams,`Cannot update task "${o}" from terminal status "${a.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(o,s,i,r);let c=await n.getTask(o,r);if(c){let u=pn.parse({method:"notifications/tasks/status",params:c});await this.notification(u),It(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function nm(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function om(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];nm(i)&&nm(s)?r[o]={...i,...s}:r[o]=s}return r}var Jg=Ft(tu(),1),Bg=Ft(Kg(),1);function X$(){let t=new Jg.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,Bg.default)(t),t}var Ps=class{constructor(e){this._ajv=e??X$()}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 Ts=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(p=>p.type==="tool_use").map(p=>p.id)),d=new Set(s.filter(p=>p.type==="tool_result").map(p=>p.toolUseId));if(l.size!==d.size||![...l].every(p=>d.has(p)))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},gn,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},yr,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 Yg(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 Xg(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 zs=class extends Vo{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(hn.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 Ps,this.setRequestHandler(ra,n=>this._oninitialize(n)),this.setNotificationHandler(na,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(da,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=hn.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new Ts(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=om(this._capabilities,e)}setRequestHandler(e,r){let o=zo(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(mr(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=zt(mn,c);if(!l.success){let m=l.error instanceof Error?l.error.message:String(l.error);throw new I(D.InvalidParams,`Invalid tools/call request: ${m}`)}let{params:d}=l.data,p=await Promise.resolve(r(c,u));if(d.task){let m=zt(gr,p);if(!m.success){let _=m.error instanceof Error?m.error.message:String(m.error);throw new I(D.InvalidParams,`Invalid task creation result: ${_}`)}return m.data}let f=zt(Wo,p);if(!f.success){let m=f.error instanceof Error?f.error.message:String(f.error);throw new I(D.InvalidParams,`Invalid tools/call result: ${m}`)}return f.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){Xg(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&Yg(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:qf.includes(r)?r:Yi,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"},Co)}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},pa,r):this.request({method:"sampling/createMessage",params:e},gn,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},yr,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},yr,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new I(D.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof I?i:new I(D.InternalError,`Error validating elicitation response: ${i instanceof Error?i.message:String(i)}`)}return s}}}createElicitationCompletionNotifier(e,r){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:e}},r)}async listRoots(e,r){return this.request({method:"roots/list",params:e},fa,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 uu=Ft(require("node:process"),1);var Rs=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
|
|
81
81
|
`);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),Q$(r)}clear(){this._buffer=void 0}};function Q$(t){return Jf.parse(JSON.parse(t))}function Qg(t){return JSON.stringify(t)+`
|
|
82
82
|
`}var Is=class{constructor(e=uu.default.stdin,r=uu.default.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new Rs,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=Qg(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};var Fs=Ft(require("path"),1),qt=require("fs");var e_=require("node:child_process");function Gn(t,e,r){return(0,e_.spawn)(t,e??[],{windowsHide:!0,...r})}var ue={DEFAULT:3e5,HEALTH_CHECK:3e3,API_REQUEST:3e4,HOOK_READINESS_WAIT:1e4,POST_SPAWN_WAIT:15e3,READINESS_WAIT:3e4,PORT_IN_USE_WAIT:3e3,WORKER_STARTUP_WAIT:1e3,PRE_RESTART_SETTLE_DELAY:2e3,POWERSHELL_COMMAND:1e4,WINDOWS_MULTIPLIER:1.5};function Et(t){return process.platform==="win32"?Math.round(t*ue.WINDOWS_MULTIPLIER):t}var dt=require("fs"),Kn=require("path"),lu=require("os");var V=require("fs");var lt=require("path");var t_=require("crypto");var eP=process.platform==="win32";function tP(t){(0,V.existsSync)(t)||(0,V.mkdirSync)(t,{recursive:!0})}function Os(t,e){let r=t;try{if((0,V.lstatSync)(t).isSymbolicLink())try{r=(0,V.realpathSync)(t)}catch{let u=(0,V.readlinkSync)(t);r=(0,lt.resolve)((0,lt.dirname)(t),u)}}catch(u){let l=u.code;if(l!=="ENOENT"&&l!=="ENOTDIR")throw u}tP((0,lt.dirname)(r));let n=(0,lt.dirname)(r),o=(0,lt.basename)(r),s=(0,lt.join)(n,`.${o}.${process.pid}.${(0,t_.randomBytes)(6).toString("hex")}.tmp`),i=Buffer.from(JSON.stringify(e,null,2)+`
|
|
83
|
-
`,"utf-8"),a;try{a=(0,V.statSync)(r).mode&511}catch{}let c;try{c=a!==void 0?(0,V.openSync)(s,"w",a):(0,V.openSync)(s,"w");let u=0;for(;u<i.length;){let l=(0,V.writeSync)(c,i,u,i.length-u);if(l===0)throw new Error(`writeSync stalled at ${u}/${i.length} bytes`);u+=l}if((0,V.fsyncSync)(c),(0,V.closeSync)(c),c=void 0,(0,V.renameSync)(s,r),!eP){let l;try{l=(0,V.openSync)(n,"r"),(0,V.fsyncSync)(l)}catch{}finally{if(l!==void 0)try{(0,V.closeSync)(l)}catch{}}}}catch(u){if(c!==void 0)try{(0,V.closeSync)(c)}catch{}try{(0,V.unlinkSync)(s)}catch{}throw u}}var nr=class{static DEFAULTS={CLAUDE_MEM_MODEL:"claude-haiku-4-5-20251001",CLAUDE_MEM_CONTEXT_OBSERVATIONS:"50",CLAUDE_MEM_WORKER_PORT:String(37700+(process.getuid?.()??77)%100),CLAUDE_MEM_WORKER_HOST:"127.0.0.1",CLAUDE_MEM_API_TIMEOUT_MS:String(Et(ue.API_REQUEST)),CLAUDE_MEM_SKIP_TOOLS:"ListMcpResourcesTool,SlashCommand,Skill,TodoWrite,AskUserQuestion",CLAUDE_MEM_PROVIDER:"claude",CLAUDE_MEM_CLAUDE_AUTH_METHOD:"subscription",CLAUDE_MEM_GEMINI_API_KEY:"",CLAUDE_MEM_GEMINI_MODEL:"gemini-2.5-flash-lite",CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED:"true",CLAUDE_MEM_GEMINI_MAX_CONTEXT_MESSAGES:"20",CLAUDE_MEM_GEMINI_MAX_TOKENS:"100000",CLAUDE_MEM_OPENROUTER_API_KEY:"",CLAUDE_MEM_OPENROUTER_MODEL:"xiaomi/mimo-v2-flash:free",CLAUDE_MEM_OPENROUTER_BASE_URL:"",CLAUDE_MEM_OPENROUTER_SITE_URL:"",CLAUDE_MEM_OPENROUTER_APP_NAME:"claude-mem",CLAUDE_MEM_OPENROUTER_MAX_CONTEXT_MESSAGES:"20",CLAUDE_MEM_OPENROUTER_MAX_TOKENS:"100000",CLAUDE_MEM_DATA_DIR:(0,Kn.join)((0,lu.homedir)(),".keepmind"),CLAUDE_MEM_LOG_LEVEL:"INFO",CLAUDE_MEM_PYTHON_VERSION:"3.13",CLAUDE_CODE_PATH:"",CLAUDE_MEM_MODE:"code",CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS:"false",CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS:"false",CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT:"false",CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT:"true",CLAUDE_MEM_CONTEXT_FULL_COUNT:"0",CLAUDE_MEM_CONTEXT_FULL_FIELD:"narrative",CLAUDE_MEM_CONTEXT_SESSION_COUNT:"5",CLAUDE_MEM_OBSERVATION_BATCH_MAX:"3",CLAUDE_MEM_MAX_CONTEXT_MESSAGES:"40",CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY:"true",CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE:"false",CLAUDE_MEM_CONTEXT_SHOW_TERMINAL_OUTPUT:"true",CLAUDE_MEM_WELCOME_HINT_ENABLED:"true",CLAUDE_MEM_FOLDER_CLAUDEMD_ENABLED:"false",CLAUDE_MEM_FOLDER_USE_LOCAL_MD:"false",CLAUDE_MEM_TRANSCRIPTS_ENABLED:"true",CLAUDE_MEM_TRANSCRIPTS_CONFIG_PATH:(0,Kn.join)((0,lu.homedir)(),".keepmind","transcript-watch.json"),CLAUDE_MEM_CODEX_TRANSCRIPT_INGESTION:"false",CLAUDE_MEM_MAX_CONCURRENT_AGENTS:"2",CLAUDE_MEM_HOOK_FAIL_LOUD_THRESHOLD:"3",CLAUDE_MEM_EXCLUDED_PROJECTS:"",CLAUDE_MEM_FOLDER_MD_EXCLUDE:"[]",CLAUDE_MEM_FOLDER_MD_SKELETON_DENYLIST:"[]",CLAUDE_MEM_SEMANTIC_INJECT:"false",CLAUDE_MEM_SEMANTIC_INJECT_LIMIT:"5",CLAUDE_MEM_TIER_ROUTING_ENABLED:"true",CLAUDE_MEM_TIER_SIMPLE_MODEL:"haiku",CLAUDE_MEM_TIER_SUMMARY_MODEL:"",CLAUDE_MEM_TIER_FAST_MODEL:"haiku",CLAUDE_MEM_TIER_SMART_MODEL:"sonnet",CLAUDE_MEM_CHROMA_ENABLED:"true",CLAUDE_MEM_TELEGRAM_ENABLED:"true",CLAUDE_MEM_TELEGRAM_BOT_TOKEN:"",CLAUDE_MEM_TELEGRAM_CHAT_ID:"",CLAUDE_MEM_TELEGRAM_TRIGGER_TYPES:"security_alert",CLAUDE_MEM_TELEGRAM_TRIGGER_CONCEPTS:"",CLAUDE_MEM_QUEUE_ENGINE:"sqlite",CLAUDE_MEM_REDIS_URL:"",CLAUDE_MEM_REDIS_HOST:"127.0.0.1",CLAUDE_MEM_REDIS_PORT:"6379",CLAUDE_MEM_REDIS_MODE:"external",CLAUDE_MEM_QUEUE_REDIS_PREFIX:`claude_mem_${process.env.CLAUDE_MEM_WORKER_PORT??String(37700+(process.getuid?.()??77)%100)}`,CLAUDE_MEM_AUTH_MODE:"api-key",CLAUDE_MEM_RUNTIME:"worker",CLAUDE_MEM_SERVER_URL:`http://127.0.0.1:${process.env.CLAUDE_MEM_SERVER_PORT??String(37877+(process.getuid?.()??77)%100)}`,CLAUDE_MEM_SERVER_API_KEY:"",CLAUDE_MEM_SERVER_PROJECT_ID:"",CLAUDE_MEM_SERVER_BETA_URL:`http://127.0.0.1:${process.env.CLAUDE_MEM_SERVER_PORT??String(37877+(process.getuid?.()??77)%100)}`,CLAUDE_MEM_SERVER_BETA_API_KEY:"",CLAUDE_MEM_SERVER_BETA_PROJECT_ID:""};static getAllDefaults(){return{...this.DEFAULTS}}static envOverride(e){let r=e.replace(/^CLAUDE_MEM_/,"KEEPMIND_");return process.env[r]??process.env[e]}static get(e){return this.envOverride(e)??this.DEFAULTS[e]}static getInt(e){let r=this.get(e);return parseInt(r,10)}static getBool(e){let r=this.get(e);return r==="true"||r===!0}static applyEnvOverrides(e){let r={...e};for(let n of Object.keys(this.DEFAULTS)){let o=this.envOverride(n);o!==void 0&&(r[n]=o)}return r}static loadFromFile(e,r=!0){try{if(!(0,dt.existsSync)(e)){let a=this.getAllDefaults();try{let c=(0,Kn.dirname)(e);(0,dt.existsSync)(c)||(0,dt.mkdirSync)(c,{recursive:!0}),Os(e,a),console.warn("[SETTINGS] Created settings file with defaults:",e)}catch(c){console.warn("[SETTINGS] Failed to create settings file, using in-memory defaults:",e,c instanceof Error?c.message:String(c))}return r?this.applyEnvOverrides(a):a}let n=(0,dt.readFileSync)(e,"utf-8"),o=JSON.parse(n.replace(/^\uFEFF/,"")),s=o;if(o.env&&typeof o.env=="object"){s=o.env;try{Os(e,s),console.warn("[SETTINGS] Migrated settings file from nested to flat schema:",e)}catch(a){console.warn("[SETTINGS] Failed to auto-migrate settings file:",e,a instanceof Error?a.message:String(a))}}let i={...this.DEFAULTS};for(let a of Object.keys(this.DEFAULTS))s[a]!==void 0&&(i[a]=s[a]);return r?this.applyEnvOverrides(i):i}catch(n){console.warn("[SETTINGS] Failed to load settings, using defaults:",e,n instanceof Error?n.message:String(n));let o=this.getAllDefaults();try{if((0,dt.existsSync)(e)){let s=`${e}.corrupt-${Date.now()}`;(0,dt.renameSync)(e,s),console.warn("[SETTINGS] Backed up corrupt settings file to:",s)}Os(e,o),console.warn("[SETTINGS] Recovered settings file with defaults:",e)}catch(s){console.warn("[SETTINGS] Failed to recover corrupt settings file:",e,s instanceof Error?s.message:String(s))}return r?this.applyEnvOverrides(o):o}}};var As=null;function Ms(){return As!==null||(As=nr.loadFromFile(qu)),As}var or=require("fs");var hu=require("child_process");var pt=require("fs"),fu=Ft(require("path"),1);var rP=["CLAUDECODE_","CLAUDE_CODE_"],nP=new Set(["CLAUDECODE","CLAUDE_CODE_SESSION","CLAUDE_CODE_ENTRYPOINT","MCP_SESSION_ID","HTTP_PROXY","HTTPS_PROXY","ALL_PROXY","NO_PROXY","http_proxy","https_proxy","all_proxy","no_proxy","npm_config_proxy","npm_config_https_proxy"]),oP=new Set(["CLAUDE_CODE_OAUTH_TOKEN","CLAUDE_CODE_GIT_BASH_PATH","CLAUDE_CODE_USE_BEDROCK","CLAUDE_CODE_USE_VERTEX","ANTHROPIC_BEDROCK_BASE_URL","AWS_REGION","AWS_PROFILE","AWS_ACCESS_KEY_ID","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN","ANTHROPIC_VERTEX_PROJECT_ID","CLOUD_ML_REGION","GOOGLE_APPLICATION_CREDENTIALS"]);function Jn(t=process.env){let e={};for(let[r,n]of Object.entries(t))if(n!==void 0){if(oP.has(r)){e[r]=n;continue}nP.has(r)||rP.some(o=>r.startsWith(o))||(e[r]=n)}return e}var sP=5e3,iP=1e3,aP=$e.supervisorRegistry();function wt(t){if(!Number.isInteger(t)||t<0||t===0)return!1;try{return process.kill(t,0),!0}catch(e){if(e instanceof Error){let r=e.code;return r==="EPERM"?!0:(y.debug("SYSTEM","PID check failed",{pid:t,code:r}),!1)}return y.warn("SYSTEM","PID check threw non-Error",{pid:t,error:String(e)}),!1}}async function Cs(t,e){let r=Date.now()+e;for(;Date.now()<r;){if(t.every(n=>!wt(n.pid)))return;await new Promise(n=>setTimeout(n,100))}}var cP=5e3,r_=new Map;function uP(t){let e=r_.get(t);if(e&&Date.now()-e.capturedAtMs<cP)return e.token;let r=null;try{let n=(0,hu.spawnSync)("powershell.exe",["-NoProfile","-NonInteractive","-Command",`(Get-CimInstance Win32_Process -Filter "ProcessId=${t}").CreationDate.ToString('yyyyMMddHHmmss.ffffff')`],{encoding:"utf-8",timeout:5e3,windowsHide:!0,env:{...Jn(process.env),LC_ALL:"C",LANG:"C"}});if(n.status===0){let o=n.stdout.trim();r=o.length>0?o:null}}catch(n){y.debug("SYSTEM","captureProcessStartToken: powershell CIM lookup failed",{pid:t,error:n instanceof Error?n.message:String(n)}),r=null}return r_.set(t,{token:r,capturedAtMs:Date.now()}),r}function n_(t){if(!Number.isInteger(t)||t<=0)return null;if(process.platform==="linux")try{let e=(0,pt.readFileSync)(`/proc/${t}/stat`,"utf-8"),r=e.lastIndexOf(") ");if(r<0)return null;let o=e.slice(r+2).split(" ")[19];return o&&/^\d+$/.test(o)?o:null}catch(e){return y.debug("SYSTEM","captureProcessStartToken: /proc read failed",{pid:t,error:e instanceof Error?e.message:String(e)}),null}if(process.platform==="win32")return uP(t);try{let e=(0,hu.spawnSync)("ps",["-p",String(t),"-o","lstart="],{encoding:"utf-8",timeout:2e3,env:{...Jn(process.env),LC_ALL:"C",LANG:"C"}});if(e.status!==0)return null;let r=e.stdout.trim();return r.length>0?r:null}catch(e){return y.debug("SYSTEM","captureProcessStartToken: ps exec failed",{pid:t,error:e instanceof Error?e.message:String(e)}),null}}function gu(t){if(!t||!wt(t.pid))return!1;if(!t.startToken)return!0;let e=n_(t.pid);if(e===null)return!0;let r=e===t.startToken;return r||y.debug("SYSTEM","verifyPidFileOwnership: start-token mismatch (PID reused)",{pid:t.pid,stored:t.startToken,current:e}),r}var mu=class{registryPath;entries=new Map;runtimeProcesses=new Map;initialized=!1;constructor(e=aP){this.registryPath=e}initialize(){if(this.initialized)return;if(this.initialized=!0,(0,pt.mkdirSync)(fu.default.dirname(this.registryPath),{recursive:!0}),!(0,pt.existsSync)(this.registryPath)){this.persist();return}try{let n=JSON.parse((0,pt.readFileSync)(this.registryPath,"utf-8")).processes??{};for(let[o,s]of Object.entries(n))this.entries.set(o,s)}catch(r){r instanceof Error?y.warn("SYSTEM","Failed to parse supervisor registry, rebuilding",{path:this.registryPath},r):y.warn("SYSTEM","Failed to parse supervisor registry, rebuilding",{path:this.registryPath,error:String(r)}),this.entries.clear()}let e=this.pruneDeadEntries();e>0&&y.info("SYSTEM","Removed dead processes from supervisor registry",{removed:e}),this.persist()}register(e,r,n){this.initialize(),this.entries.set(e,r),n&&this.runtimeProcesses.set(e,n),this.persist()}unregister(e){this.initialize();let r=this.entries.get(e);this.entries.delete(e),this.runtimeProcesses.delete(e),this.persist(),r?.type==="sdk"&&pu()}clear(){this.entries.clear(),this.runtimeProcesses.clear(),this.persist()}getAll(){return this.initialize(),Array.from(this.entries.entries()).map(([e,r])=>({id:e,...r})).sort((e,r)=>{let n=Date.parse(e.startedAt),o=Date.parse(r.startedAt);return(Number.isNaN(n)?0:n)-(Number.isNaN(o)?0:o)})}getBySession(e){let r=String(e);return this.getAll().filter(n=>n.sessionId!==void 0&&String(n.sessionId)===r)}getRuntimeProcess(e){return this.runtimeProcesses.get(e)}getByPid(e){return this.getAll().filter(r=>r.pid===e)}pruneDeadEntries(){this.initialize();let e=0,r=0;for(let[n,o]of this.entries)wt(o.pid)||(this.entries.delete(n),this.runtimeProcesses.delete(n),e+=1,o.type==="sdk"&&(r+=1));e>0&&this.persist();for(let n=0;n<r;n+=1)pu();return e}async reapSession(e){this.initialize();let r=this.getBySession(e);if(r.length===0)return 0;let n=typeof e=="number"?e:Number(e)||void 0;y.info("SYSTEM",`Reaping ${r.length} process(es) for session ${e}`,{sessionId:n,pids:r.map(i=>i.pid)});let o=r.filter(i=>wt(i.pid));for(let i of o)try{typeof i.pgid=="number"&&process.platform!=="win32"?process.kill(-i.pgid,"SIGTERM"):process.kill(i.pid,"SIGTERM")}catch(a){a instanceof Error?a.code!=="ESRCH"&&y.debug("SYSTEM",`Failed to SIGTERM session process PID ${i.pid}`,{pid:i.pid,pgid:i.pgid},a):y.warn("SYSTEM",`Failed to SIGTERM session process PID ${i.pid} (non-Error)`,{pid:i.pid,pgid:i.pgid,error:String(a)})}await Cs(o,sP);let s=o.filter(i=>wt(i.pid));for(let i of s){y.warn("SYSTEM",`Session process PID ${i.pid} did not exit after SIGTERM, sending SIGKILL`,{pid:i.pid,pgid:i.pgid,sessionId:n});try{typeof i.pgid=="number"&&process.platform!=="win32"?process.kill(-i.pgid,"SIGKILL"):process.kill(i.pid,"SIGKILL")}catch(a){a instanceof Error?a.code!=="ESRCH"&&y.debug("SYSTEM",`Failed to SIGKILL session process PID ${i.pid}`,{pid:i.pid,pgid:i.pgid},a):y.warn("SYSTEM",`Failed to SIGKILL session process PID ${i.pid} (non-Error)`,{pid:i.pid,pgid:i.pgid,error:String(a)})}}if(s.length>0){let i=Date.now()+iP;for(;Date.now()<i&&s.filter(c=>wt(c.pid)).length!==0;)await new Promise(c=>setTimeout(c,100))}for(let i of r)this.entries.delete(i.id),this.runtimeProcesses.delete(i.id);this.persist();for(let i of r)i.type==="sdk"&&pu();return y.info("SYSTEM",`Reaped ${r.length} process(es) for session ${e}`,{sessionId:n,reaped:r.length}),r.length}persist(){let e={processes:Object.fromEntries(this.entries.entries())};(0,pt.mkdirSync)(fu.default.dirname(this.registryPath),{recursive:!0}),(0,pt.writeFileSync)(this.registryPath,JSON.stringify(e,null,2))}},du=null;function Ns(){return du||(du=new mu),du}var lP=[];function pu(){let t=lP.shift();t&&t()}var s_=require("child_process"),Dr=require("fs"),i_=require("util");var dP=(0,i_.promisify)(s_.execFile),pP=$e.workerPid();async function a_(t){let e=t.currentPid??process.pid,r=t.pidFilePath??pP,n=t.registry.getAll(),o=[...n].filter(i=>i.pid!==e).sort((i,a)=>Date.parse(a.startedAt)-Date.parse(i.startedAt));for(let i of o){if(!wt(i.pid)){t.registry.unregister(i.id);continue}try{await o_(i,"SIGTERM")}catch(a){a instanceof Error?y.debug("SYSTEM","Failed to send SIGTERM to child process",{pid:i.pid,pgid:i.pgid,type:i.type},a):y.warn("SYSTEM","Failed to send SIGTERM to child process (non-Error)",{pid:i.pid,pgid:i.pgid,type:i.type,error:String(a)})}}await Cs(o,5e3);let s=o.filter(i=>wt(i.pid));for(let i of s)try{await o_(i,"SIGKILL")}catch(a){a instanceof Error?y.debug("SYSTEM","Failed to force kill child process",{pid:i.pid,pgid:i.pgid,type:i.type},a):y.warn("SYSTEM","Failed to force kill child process (non-Error)",{pid:i.pid,pgid:i.pgid,type:i.type,error:String(a)})}await Cs(s,1e3);for(let i of o)t.registry.unregister(i.id);for(let i of n.filter(a=>a.pid===e))t.registry.unregister(i.id);fP(r,e),t.registry.pruneDeadEntries()}function fP(t,e){if(!(0,Dr.existsSync)(t))return;let r=null;try{let n=JSON.parse((0,Dr.readFileSync)(t,"utf-8"));r=typeof n.pid=="number"?n.pid:null}catch(n){y.debug("SYSTEM","PID file unreadable during shutdown \u2014 leaving it (cannot prove ownership)",{pidFilePath:t,error:n instanceof Error?n.message:String(n)});return}if(r!==e){y.debug("SYSTEM","PID file not owned by this process \u2014 leaving it for its owner (restart successor?)",{pidFilePath:t,recordedPid:r,currentPid:e});return}try{(0,Dr.rmSync)(t,{force:!0})}catch(n){n instanceof Error?y.debug("SYSTEM","Failed to remove PID file during shutdown",{pidFilePath:t},n):y.warn("SYSTEM","Failed to remove PID file during shutdown (non-Error)",{pidFilePath:t,error:String(n)})}}async function o_(t,e){let{pid:r,pgid:n}=t;if(process.platform!=="win32"){if(typeof n=="number")try{process.kill(-n,e);return}catch(i){if((i instanceof Error?i.code:void 0)!=="ESRCH")throw i}try{process.kill(r,e)}catch(i){if((i instanceof Error?i.code:void 0)!=="ESRCH")throw i}return}if(e==="SIGTERM"){try{process.kill(r,e)}catch(i){if(i instanceof Error&&i.code==="ESRCH")return;throw i}return}let o=await mP();if(o){await new Promise((i,a)=>{o(r,e,c=>{if(!c){i();return}if(c.code==="ESRCH"){i();return}a(c)})});return}let s=["/PID",String(r),"/T"];e==="SIGKILL"&&s.push("/F"),await dP("taskkill",s,{timeout:ue.POWERSHELL_COMMAND,windowsHide:!0})}async function mP(){let t="tree-kill";try{let e=await import(t);return e.default??e}catch(e){return y.debug("SYSTEM","tree-kill module not available, using fallback",{},e instanceof Error?e:void 0),null}}var c_=3e4,jr=null;function hP(){let e=Ns().pruneDeadEntries();e>0&&y.info("SYSTEM",`Health check: pruned ${e} dead process(es) from registry`)}function u_(){jr===null&&(jr=setInterval(hP,c_),jr.unref(),y.debug("SYSTEM","Health checker started",{intervalMs:c_}))}function l_(){jr!==null&&(clearInterval(jr),jr=null,y.debug("SYSTEM","Health checker stopped"))}var gP=$e.workerPid(),_u=class{registry;started=!1;stopPromise=null;signalHandlersRegistered=!1;shutdownInitiated=!1;shutdownHandler=null;constructor(e){this.registry=e}async start(){if(this.started)return;if(this.registry.initialize(),Ds({logAlive:!1})==="alive")throw new Error("Worker already running");this.started=!0,u_()}configureSignalHandlers(e){if(this.shutdownHandler=e,this.signalHandlersRegistered)return;this.signalHandlersRegistered=!0;let r=async n=>{if(this.shutdownInitiated){y.warn("SYSTEM",`Received ${n} but shutdown already in progress`);return}this.shutdownInitiated=!0,y.info("SYSTEM",`Received ${n}, shutting down...`);try{this.shutdownHandler?await this.shutdownHandler():await this.stop()}catch(o){o instanceof Error?y.error("SYSTEM","Error during shutdown",{},o):y.error("SYSTEM","Error during shutdown (non-Error)",{error:String(o)});try{await this.stop()}catch(s){s instanceof Error?y.debug("SYSTEM","Supervisor shutdown fallback failed",{},s):y.debug("SYSTEM","Supervisor shutdown fallback failed",{error:String(s)})}}process.exit(0)};process.on("SIGTERM",()=>{r("SIGTERM")}),process.on("SIGINT",()=>{r("SIGINT")}),process.platform!=="win32"&&(process.argv.includes("--daemon")?process.on("SIGHUP",()=>{y.debug("SYSTEM","Ignoring SIGHUP in daemon mode")}):process.on("SIGHUP",()=>{r("SIGHUP")}))}async stop(){if(this.stopPromise){await this.stopPromise;return}l_(),this.stopPromise=a_({registry:this.registry,currentPid:process.pid}).finally(()=>{this.started=!1,this.stopPromise=null}),await this.stopPromise}assertCanSpawn(e){if(this.stopPromise!==null)throw new Error(`Supervisor is shutting down, refusing to spawn ${e}`)}registerProcess(e,r,n){this.registry.register(e,r,n)}unregisterProcess(e){this.registry.unregister(e)}getRegistry(){return this.registry}},_P=new _u(Ns());function yu(){return _P}function Ds(t={}){let e=t.pidFilePath??gP;if(!(0,or.existsSync)(e))return"missing";let r=null;try{r=JSON.parse((0,or.readFileSync)(e,"utf-8"))}catch(o){return o instanceof Error?y.warn("SYSTEM","Failed to parse worker PID file, removing it",{path:e},o):y.warn("SYSTEM","Failed to parse worker PID file, removing it",{path:e,error:String(o)}),(0,or.rmSync)(e,{force:!0}),"invalid"}return gu(r)&&r?((t.logAlive??!0)&&y.info("SYSTEM","Worker already running (PID alive)",{existingPid:r.pid,existingPort:r.port,startedAt:r.startedAt}),"alive"):(y.info("SYSTEM","Removing stale PID file (worker process is dead or PID has been reused)",{pid:r?.pid,port:r?.port,startedAt:r?.startedAt}),(0,or.rmSync)(e,{force:!0}),"stale")}var f_=Ft(require("path"),1),m_=require("os"),ke=require("fs"),h_=require("child_process");function d_(t){return t instanceof Error?t:new Error(String(t))}var rD=$e.dataDir(),ft=$e.workerPid(),nD=$e.workerPort();function p_(t){return t?/(^|[\\/])node(\.exe)?$/i.test(t.trim()):!1}function yP(t,e){let r=e==="win32"?`where ${t}`:`which ${t}`,n;try{n=(0,h_.execSync)(r,{stdio:["ignore","pipe","ignore"],encoding:"utf-8",windowsHide:!0})}catch(s){return s instanceof Error?y.debug("SYSTEM",`Binary lookup failed for ${t}`,{command:r},s):y.debug("SYSTEM",`Binary lookup failed for ${t}`,{command:r},new Error(String(s))),null}return n.split(/\r?\n/).map(s=>s.trim()).find(s=>s.length>0)||null}var Su;function g_(t={}){let e=Object.keys(t).length===0;if(e&&Su!==void 0)return Su;let r=SP(t);return e&&r!==null&&(Su=r),r}function SP(t){let e=t.platform??process.platform,r=t.execPath??process.execPath;if(p_(r))return r;let n=t.env??process.env,o=t.homeDirectory??(0,m_.homedir)(),s=t.pathExists??ke.existsSync,i=t.lookupInPath??yP,a=e==="win32"?[n.NODE,f_.default.join(o,".nvm","current","bin","node.exe"),"node"]:[n.NODE,"/usr/local/bin/node","/opt/homebrew/bin/node","/usr/bin/node","node"];for(let c of a){let u=c?.trim();if(u&&(p_(u)&&s(u)||u.toLowerCase()==="node"))return u}return i("node",e)}function __(){if(!(0,ke.existsSync)(ft))return null;try{return JSON.parse((0,ke.readFileSync)(ft,"utf-8"))}catch(t){return t instanceof Error?y.warn("SYSTEM","Failed to parse PID file",{path:ft},t):y.warn("SYSTEM","Failed to parse PID file",{path:ft},new Error(String(t))),null}}function y_(){if((0,ke.existsSync)(ft))try{(0,ke.unlinkSync)(ft)}catch(t){t instanceof Error?y.warn("SYSTEM","Failed to remove PID file",{path:ft},t):y.warn("SYSTEM","Failed to remove PID file",{path:ft},new Error(String(t)))}}function Ut(t){return process.platform==="win32"?Math.round(t*2):t}function S_(t,e,r={}){yu().assertCanSpawn("worker daemon");let n=Jn({...process.env,CLAUDE_MEM_WORKER_PORT:String(e),...r}),o=g_();if(!o){y.error("SYSTEM","Node runtime not found \u2014 ensure node is on PATH or set the NODE env var. The worker daemon runs under Node (node:sqlite).");return}if(process.platform==="win32")try{let l=Gn(o,[t,"--daemon"],{detached:!0,stdio:"ignore",windowsHide:!0,env:n});if(l.pid===void 0){y.error("SYSTEM","Worker daemon spawn produced no PID on Windows",{runtimePath:o});return}return l.unref(),l.pid}catch(l){y.error("SYSTEM","Failed to spawn worker daemon on Windows",{runtimePath:o},d_(l));return}let s="/usr/bin/setsid",i=(0,ke.existsSync)(s),u=Gn(i?s:o,i?[o,t,"--daemon"]:[t,"--daemon"],{detached:!0,stdio:"ignore",env:n});if(u.pid!==void 0)return u.unref(),u.pid}function v_(t){if(t===0)return!0;if(!Number.isInteger(t)||t<0)return!1;try{return process.kill(t,0),!0}catch(e){if(e instanceof Error){let r=e.code;if(r==="EPERM")return!0;y.debug("SYSTEM","Process not alive",{pid:t,code:r})}else y.debug("SYSTEM","Process not alive (non-Error thrown)",{pid:t},new Error(String(e)));return!1}}function b_(){try{if(!(0,ke.existsSync)(ft))return;let t=new Date;(0,ke.utimesSync)(ft,t,t)}catch{}}function E_(){return Ds({logAlive:!1})}var w_=Ft(require("net"),1);var vP=2500;async function bP(t,e,r="GET"){let n=await fetch(`http://127.0.0.1:${t}${e}`,{method:r,signal:AbortSignal.timeout(vP)}),o="";try{o=await n.text()}catch{}return{ok:n.ok,statusCode:n.status,body:o}}async function k_(t){return new Promise(e=>{let r=w_.default.createServer();r.once("error",n=>{n.code==="EADDRINUSE"||n.code==="EACCES"?e(!0):e(!1)}),r.once("listening",()=>{r.close(()=>e(!1))}),r.listen(t,"127.0.0.1")})}async function x_(t,e,r,n){let o=Date.now();for(;Date.now()-o<r;){try{if((await bP(t,e)).ok)return!0}catch(s){s instanceof Error?y.debug("SYSTEM",n,{},s):y.debug("SYSTEM",n,{error:String(s)})}await new Promise(s=>setTimeout(s,500))}return!1}function Bn(t,e=3e4){return x_(t,"/api/health",e,"Service not ready yet, will retry")}function Yn(t,e=3e4){return x_(t,"/api/readiness",e,"Worker not ready yet, will retry")}var js=require("path"),Ke=require("fs");var EP=6e4;function $_(){return(0,js.join)(Qs(),"spawn.lock")}function vu(){let t=$_(),e=JSON.stringify({pid:process.pid,startedAt:new Date().toISOString()});for(let r=0;r<2;r++)try{return(0,Ke.mkdirSync)((0,js.dirname)(t),{recursive:!0}),(0,Ke.writeFileSync)(t,e,{flag:"wx"}),!0}catch(n){if(n?.code!=="EEXIST")return!0;if(r>0)return!1;let s;try{s=(0,Ke.statSync)(t).mtimeMs}catch{continue}if(Date.now()-s<=EP)return!1;let i;try{i=(0,Ke.statSync)(t).mtimeMs}catch{continue}if(i!==s)return!1;try{(0,Ke.unlinkSync)(t)}catch{return!1}}return!1}function bu(){let t=$_();try{if(JSON.parse((0,Ke.readFileSync)(t,"utf-8")).pid!==process.pid)return;(0,Ke.unlinkSync)(t)}catch{}}function Eu(t,e,r){let n=process.env[t];if(n){let o=parseInt(n,10);if(Number.isFinite(o)&&o>=r.min&&o<=r.max)return o;y.warn("SYSTEM",`Invalid ${t}, using default`,{value:n,min:r.min,max:r.max})}return e}var RD=Eu("CLAUDE_MEM_HEALTH_TIMEOUT_MS",Et(ue.HEALTH_CHECK),{min:500,max:3e5}),ID=Eu("CLAUDE_MEM_API_TIMEOUT_MS",Et(ue.API_REQUEST),{min:500,max:3e5}),OD=Eu("CLAUDE_MEM_HOOK_READINESS_TIMEOUT_MS",Et(ue.HOOK_READINESS_WAIT),{min:0,max:3e5}),wP={min:500,max:3e5};async function wu(t,e={},r){try{return await fetch(t,{...e,signal:AbortSignal.timeout(r)})}catch(n){throw n instanceof DOMException&&n.name==="TimeoutError"?new Error(`Request timed out after ${r}ms`):n}}var Ls=null,Us=null,qs=null,Zs=null;function kP(){return Fs.default.join(nr.get("CLAUDE_MEM_DATA_DIR"),"settings.json")}function xP(t){if(!Number.isInteger(t)||t<=0)return!1;try{return process.kill(t,0),!0}catch(e){return e?.code==="EPERM"}}function $P(){try{let t=$e.workerPid();if(!(0,qt.existsSync)(t))return null;let e=JSON.parse((0,qt.readFileSync)(t,"utf-8"));return typeof e.pid!="number"||typeof e.port!="number"||!xP(e.pid)?null:e.port}catch{return null}}function ku(){return qs!==null||(qs=nr.loadFromFile(kP())),qs}function P_(t,e){if(!t)return null;let r=parseInt(t,10);return Number.isFinite(r)&&r>=e.min&&r<=e.max?r:null}function PP(t,e,r){let n=process.env[t];if(n!==void 0){let i=P_(n,r);return i!==null?i:(y.warn("SYSTEM",`Invalid ${t}, using default`,{value:n,min:r.min,max:r.max}),e)}let o=ku()[t],s=P_(o,r);return s!==null?s:(y.warn("SYSTEM",`Invalid ${t} in settings.json, using default`,{value:o,min:r.min,max:r.max}),e)}function TP(){if(Ls!==null)return Ls;let t=ku();return Ls=parseInt(t.CLAUDE_MEM_WORKER_PORT,10),Ls}function xu(){let t=$P();return t!==null?t:TP()}function zP(){return Us!==null||(Us=ku().CLAUDE_MEM_WORKER_HOST),Us}function RP(){return Zs!==null||(Zs=PP("CLAUDE_MEM_API_TIMEOUT_MS",Et(ue.API_REQUEST),wP)),Zs}function IP(t){return`http://${zP()}:${xu()}${t}`}function Xn(t,e={}){let r=e.method??"GET",n=e.timeoutMs??RP(),o=IP(t),s={method:r};return e.headers&&(s.headers=e.headers),e.body&&(s.body=e.body),n>0?wu(o,s,n):fetch(o,s)}function T_(){let t=[Fs.default.join(ei,"plugin","scripts","worker-service.cjs"),Fs.default.join(process.cwd(),"plugin","scripts","worker-service.cjs")];for(let e of t)if((0,qt.existsSync)(e))return e;return null}var z_=require("fs");function OP(t){let e=__();return e&&typeof e.port=="number"&&v_(e.pid)?e.port:t}async function AP(t,e){let r=Date.now()+e;for(;Date.now()<r;){let n=OP(t);if(await Bn(n,800))return n;await new Promise(o=>setTimeout(o,300))}return null}async function R_(t,e){if(!e)return y.error("SYSTEM","ensureWorkerStarted called with empty workerScriptPath \u2014 caller bug"),"dead";if(!(0,z_.existsSync)(e))return y.error("SYSTEM","ensureWorkerStarted: worker script not found at expected path \u2014 likely a partial install or build artifact missing",{workerScriptPath:e}),"dead";if(await Bn(t,1e3)){let a=await Yn(t,Ut(ue.READINESS_WAIT));return a||y.warn("SYSTEM","Worker is alive but readiness timed out \u2014 proceeding anyway"),y.info("SYSTEM","Worker already running and healthy (fast path)"),a?"ready":"warming"}if(E_()==="alive"){if(y.info("SYSTEM","Worker PID file points to a live process, waiting for it to become healthy"),await Bn(t,Ut(ue.POST_SPAWN_WAIT))){let c=await Yn(t,Ut(ue.READINESS_WAIT));return y.info("SYSTEM","Worker became healthy while waiting on live PID"),c?"ready":"warming"}y.warn("SYSTEM","PID file marked live but worker never became healthy within the cold-boot window \u2014 treating it as a stale/reused PID and re-spawning"),y_()}if(await k_(t)){if(y.info("SYSTEM","Port in use, waiting for worker to become healthy"),await Bn(t,Ut(ue.PORT_IN_USE_WAIT))){let c=await Yn(t,Ut(ue.READINESS_WAIT));return y.info("SYSTEM","Worker is now healthy"),c?"ready":"warming"}y.warn("SYSTEM","Configured port in use but no healthy worker \u2014 spawning anyway (worker will pick a free ephemeral port)")}let o=vu(),s=t;try{if(o){if(y.info("SYSTEM","Starting worker daemon",{workerScriptPath:e}),S_(e,t)===void 0)return y.error("SYSTEM","Failed to spawn worker daemon"),"dead"}else y.info("SYSTEM","Another launcher holds the spawn lock \u2014 skipping duplicate spawn and waiting for its worker");let a=await AP(t,Ut(ue.POST_SPAWN_WAIT));if(a===null)return y.warn("SYSTEM",o?"Worker spawned but health endpoint not responding within window \u2014 likely still starting in background":"Spawn-lock holder's worker not healthy within window \u2014 likely still starting in background"),"warming";s=a}finally{o&&bu()}let i=await Yn(s,Ut(ue.READINESS_WAIT));return i||y.warn("SYSTEM","Worker is alive but readiness timed out \u2014 proceeding anyway"),b_(),y.info("SYSTEM",o?"Worker started successfully":"Worker is up (started by another launcher)"),i?"ready":"warming"}var qr=require("node:fs/promises"),ro=require("node:path");var A_=require("node:child_process"),Se=require("node:fs"),le=require("node:path"),Iu=require("node:os"),Tu=require("node:module");var GP={},zu=typeof __filename<"u"?(0,Tu.createRequire)(__filename):(0,Tu.createRequire)(GP.url),Ru={".js":"javascript",".mjs":"javascript",".cjs":"javascript",".jsx":"tsx",".ts":"typescript",".tsx":"tsx",".py":"python",".pyw":"python",".go":"go",".rs":"rust",".rb":"ruby",".java":"java",".c":"c",".h":"c",".cpp":"cpp",".cc":"cpp",".cxx":"cpp",".hpp":"cpp",".hh":"cpp",".kt":"kotlin",".kts":"kotlin",".swift":"swift",".php":"php",".ex":"elixir",".exs":"elixir",".lua":"lua",".scala":"scala",".sc":"scala",".sh":"bash",".bash":"bash",".zsh":"bash",".hs":"haskell",".zig":"zig",".css":"css",".scss":"scss",".toml":"toml",".yml":"yaml",".yaml":"yaml",".sql":"sql",".md":"markdown",".mdx":"markdown"};function M_(t,e){let r=t.slice(t.lastIndexOf("."));return Ru[r]?Ru[r]:e.extensionToLanguage[r]?e.extensionToLanguage[r]:"unknown"}function C_(t,e){return e.languageToQueryKey[t]?e.languageToQueryKey[t]:NP(t)}var Qn=new Map,Lr={grammars:{},extensionToLanguage:{},languageToQueryKey:{}},N_=[".keepmind.json",".claude-mem.json"];function to(t){if(Qn.has(t))return Qn.get(t);let e;for(let s of N_)try{e=(0,Se.readFileSync)((0,le.join)(t,s),"utf-8");break}catch{}let r;try{if(e===void 0)throw new Error("no project config");r=JSON.parse(e)}catch{return Qn.set(t,Lr),Lr}let n=r.grammars;if(!n||typeof n!="object"||Array.isArray(n))return Qn.set(t,Lr),Lr;let o={grammars:{},extensionToLanguage:{},languageToQueryKey:{}};for(let[s,i]of Object.entries(n)){if(D_[s]||!i||typeof i!="object"||Array.isArray(i))continue;let a=i,c=a.package,u=a.extensions,l=a.query;if(!(typeof c!="string"||!Array.isArray(u))&&u.every(d=>typeof d=="string")){o.grammars[s]={package:c,extensions:u,query:typeof l=="string"?l:void 0};for(let d of u)Ru[d]||(o.extensionToLanguage[d]=s);if(typeof l=="string"){let d=(0,le.join)(t,l);try{let p=(0,Se.readFileSync)(d,"utf-8"),f=`user_${s}`;L_[f]=p,o.languageToQueryKey[s]=f}catch{y.warn("PARSER","Custom query file not found, falling back to generic",{fullQueryPath:d}),o.languageToQueryKey[s]="generic"}}else o.languageToQueryKey[s]="generic"}}return Qn.set(t,o),o}var D_={javascript:"tree-sitter-javascript",typescript:"tree-sitter-typescript/typescript",tsx:"tree-sitter-typescript/tsx",python:"tree-sitter-python",go:"tree-sitter-go",rust:"tree-sitter-rust",ruby:"tree-sitter-ruby",java:"tree-sitter-java",c:"tree-sitter-c",cpp:"tree-sitter-cpp",kotlin:"tree-sitter-kotlin",swift:"tree-sitter-swift",php:"tree-sitter-php/php",elixir:"tree-sitter-elixir",lua:"@tree-sitter-grammars/tree-sitter-lua",scala:"tree-sitter-scala",bash:"tree-sitter-bash",haskell:"tree-sitter-haskell",zig:"@tree-sitter-grammars/tree-sitter-zig",css:"tree-sitter-css",scss:"tree-sitter-scss",toml:"@tree-sitter-grammars/tree-sitter-toml",yaml:"@tree-sitter-grammars/tree-sitter-yaml",sql:"@derekstride/tree-sitter-sql",markdown:"@tree-sitter-grammars/tree-sitter-markdown"},MP={markdown:"tree-sitter-markdown"};function CP(t){let e=D_[t];if(!e)return null;let r=MP[t];if(r){try{let n=zu.resolve(e+"/package.json"),o=(0,le.join)((0,le.dirname)(n),r);if((0,Se.existsSync)((0,le.join)(o,"src")))return o}catch{}return null}try{let n=zu.resolve(e+"/package.json");return(0,le.dirname)(n)}catch{return null}}function j_(t,e){let r=CP(t);if(r)return r;if(!e)return null;let o=to(e).grammars[t];if(!o)return null;try{let s=(0,le.join)(e,"node_modules",o.package,"package.json");if((0,Se.existsSync)(s)){let i=(0,le.dirname)(s);if((0,Se.existsSync)((0,le.join)(i,"src")))return i}}catch{}return y.warn("PARSER","Grammar package not found",{language:t,package:o.package}),null}var L_={jsts:`
|
|
83
|
+
`,"utf-8"),a;try{a=(0,V.statSync)(r).mode&511}catch{}let c;try{c=a!==void 0?(0,V.openSync)(s,"w",a):(0,V.openSync)(s,"w");let u=0;for(;u<i.length;){let l=(0,V.writeSync)(c,i,u,i.length-u);if(l===0)throw new Error(`writeSync stalled at ${u}/${i.length} bytes`);u+=l}if((0,V.fsyncSync)(c),(0,V.closeSync)(c),c=void 0,(0,V.renameSync)(s,r),!eP){let l;try{l=(0,V.openSync)(n,"r"),(0,V.fsyncSync)(l)}catch{}finally{if(l!==void 0)try{(0,V.closeSync)(l)}catch{}}}}catch(u){if(c!==void 0)try{(0,V.closeSync)(c)}catch{}try{(0,V.unlinkSync)(s)}catch{}throw u}}var nr=class{static DEFAULTS={CLAUDE_MEM_MODEL:"claude-haiku-4-5-20251001",CLAUDE_MEM_CONTEXT_OBSERVATIONS:"50",CLAUDE_MEM_WORKER_PORT:String(37700+(process.getuid?.()??77)%100),CLAUDE_MEM_WORKER_HOST:"127.0.0.1",CLAUDE_MEM_API_TIMEOUT_MS:String(Et(ue.API_REQUEST)),CLAUDE_MEM_SKIP_TOOLS:"ListMcpResourcesTool,SlashCommand,Skill,TodoWrite,AskUserQuestion",CLAUDE_MEM_PROVIDER:"claude",CLAUDE_MEM_CLAUDE_AUTH_METHOD:"subscription",CLAUDE_MEM_GEMINI_API_KEY:"",CLAUDE_MEM_GEMINI_MODEL:"gemini-2.5-flash-lite",CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED:"true",CLAUDE_MEM_GEMINI_MAX_CONTEXT_MESSAGES:"20",CLAUDE_MEM_GEMINI_MAX_TOKENS:"100000",CLAUDE_MEM_OPENROUTER_API_KEY:"",CLAUDE_MEM_OPENROUTER_MODEL:"xiaomi/mimo-v2-flash:free",CLAUDE_MEM_OPENROUTER_BASE_URL:"",CLAUDE_MEM_OPENROUTER_SITE_URL:"",CLAUDE_MEM_OPENROUTER_APP_NAME:"claude-mem",CLAUDE_MEM_OPENROUTER_MAX_CONTEXT_MESSAGES:"20",CLAUDE_MEM_OPENROUTER_MAX_TOKENS:"100000",CLAUDE_MEM_DATA_DIR:(0,Kn.join)((0,lu.homedir)(),".keepmind"),CLAUDE_MEM_LOG_LEVEL:"INFO",CLAUDE_MEM_PYTHON_VERSION:"3.13",CLAUDE_CODE_PATH:"",CLAUDE_MEM_MODE:"code",CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS:"false",CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS:"false",CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT:"false",CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT:"true",CLAUDE_MEM_CONTEXT_FULL_COUNT:"0",CLAUDE_MEM_CONTEXT_FULL_FIELD:"narrative",CLAUDE_MEM_CONTEXT_SESSION_COUNT:"5",CLAUDE_MEM_OBSERVATION_BATCH_MAX:"3",CLAUDE_MEM_MAX_CONTEXT_MESSAGES:"40",CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY:"true",CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE:"false",CLAUDE_MEM_CONTEXT_SHOW_TERMINAL_OUTPUT:"true",CLAUDE_MEM_WELCOME_HINT_ENABLED:"true",CLAUDE_MEM_UPDATE_CHECK_ENABLED:"true",CLAUDE_MEM_FOLDER_CLAUDEMD_ENABLED:"false",CLAUDE_MEM_FOLDER_USE_LOCAL_MD:"false",CLAUDE_MEM_TRANSCRIPTS_ENABLED:"true",CLAUDE_MEM_TRANSCRIPTS_CONFIG_PATH:(0,Kn.join)((0,lu.homedir)(),".keepmind","transcript-watch.json"),CLAUDE_MEM_CODEX_TRANSCRIPT_INGESTION:"false",CLAUDE_MEM_MAX_CONCURRENT_AGENTS:"2",CLAUDE_MEM_HOOK_FAIL_LOUD_THRESHOLD:"3",CLAUDE_MEM_EXCLUDED_PROJECTS:"",CLAUDE_MEM_FOLDER_MD_EXCLUDE:"[]",CLAUDE_MEM_FOLDER_MD_SKELETON_DENYLIST:"[]",CLAUDE_MEM_SEMANTIC_INJECT:"false",CLAUDE_MEM_SEMANTIC_INJECT_LIMIT:"5",CLAUDE_MEM_TIER_ROUTING_ENABLED:"true",CLAUDE_MEM_TIER_SIMPLE_MODEL:"haiku",CLAUDE_MEM_TIER_SUMMARY_MODEL:"",CLAUDE_MEM_TIER_FAST_MODEL:"haiku",CLAUDE_MEM_TIER_SMART_MODEL:"sonnet",CLAUDE_MEM_CHROMA_ENABLED:"true",CLAUDE_MEM_TELEGRAM_ENABLED:"true",CLAUDE_MEM_TELEGRAM_BOT_TOKEN:"",CLAUDE_MEM_TELEGRAM_CHAT_ID:"",CLAUDE_MEM_TELEGRAM_TRIGGER_TYPES:"security_alert",CLAUDE_MEM_TELEGRAM_TRIGGER_CONCEPTS:"",CLAUDE_MEM_QUEUE_ENGINE:"sqlite",CLAUDE_MEM_REDIS_URL:"",CLAUDE_MEM_REDIS_HOST:"127.0.0.1",CLAUDE_MEM_REDIS_PORT:"6379",CLAUDE_MEM_REDIS_MODE:"external",CLAUDE_MEM_QUEUE_REDIS_PREFIX:`claude_mem_${process.env.CLAUDE_MEM_WORKER_PORT??String(37700+(process.getuid?.()??77)%100)}`,CLAUDE_MEM_AUTH_MODE:"api-key",CLAUDE_MEM_RUNTIME:"worker",CLAUDE_MEM_SERVER_URL:`http://127.0.0.1:${process.env.CLAUDE_MEM_SERVER_PORT??String(37877+(process.getuid?.()??77)%100)}`,CLAUDE_MEM_SERVER_API_KEY:"",CLAUDE_MEM_SERVER_PROJECT_ID:"",CLAUDE_MEM_SERVER_BETA_URL:`http://127.0.0.1:${process.env.CLAUDE_MEM_SERVER_PORT??String(37877+(process.getuid?.()??77)%100)}`,CLAUDE_MEM_SERVER_BETA_API_KEY:"",CLAUDE_MEM_SERVER_BETA_PROJECT_ID:""};static getAllDefaults(){return{...this.DEFAULTS}}static envOverride(e){let r=e.replace(/^CLAUDE_MEM_/,"KEEPMIND_");return process.env[r]??process.env[e]}static get(e){return this.envOverride(e)??this.DEFAULTS[e]}static getInt(e){let r=this.get(e);return parseInt(r,10)}static getBool(e){let r=this.get(e);return r==="true"||r===!0}static applyEnvOverrides(e){let r={...e};for(let n of Object.keys(this.DEFAULTS)){let o=this.envOverride(n);o!==void 0&&(r[n]=o)}return r}static loadFromFile(e,r=!0){try{if(!(0,dt.existsSync)(e)){let a=this.getAllDefaults();try{let c=(0,Kn.dirname)(e);(0,dt.existsSync)(c)||(0,dt.mkdirSync)(c,{recursive:!0}),Os(e,a),console.warn("[SETTINGS] Created settings file with defaults:",e)}catch(c){console.warn("[SETTINGS] Failed to create settings file, using in-memory defaults:",e,c instanceof Error?c.message:String(c))}return r?this.applyEnvOverrides(a):a}let n=(0,dt.readFileSync)(e,"utf-8"),o=JSON.parse(n.replace(/^\uFEFF/,"")),s=o;if(o.env&&typeof o.env=="object"){s=o.env;try{Os(e,s),console.warn("[SETTINGS] Migrated settings file from nested to flat schema:",e)}catch(a){console.warn("[SETTINGS] Failed to auto-migrate settings file:",e,a instanceof Error?a.message:String(a))}}let i={...this.DEFAULTS};for(let a of Object.keys(this.DEFAULTS))s[a]!==void 0&&(i[a]=s[a]);return r?this.applyEnvOverrides(i):i}catch(n){console.warn("[SETTINGS] Failed to load settings, using defaults:",e,n instanceof Error?n.message:String(n));let o=this.getAllDefaults();try{if((0,dt.existsSync)(e)){let s=`${e}.corrupt-${Date.now()}`;(0,dt.renameSync)(e,s),console.warn("[SETTINGS] Backed up corrupt settings file to:",s)}Os(e,o),console.warn("[SETTINGS] Recovered settings file with defaults:",e)}catch(s){console.warn("[SETTINGS] Failed to recover corrupt settings file:",e,s instanceof Error?s.message:String(s))}return r?this.applyEnvOverrides(o):o}}};var As=null;function Ms(){return As!==null||(As=nr.loadFromFile(qu)),As}var or=require("fs");var hu=require("child_process");var pt=require("fs"),fu=Ft(require("path"),1);var rP=["CLAUDECODE_","CLAUDE_CODE_"],nP=new Set(["CLAUDECODE","CLAUDE_CODE_SESSION","CLAUDE_CODE_ENTRYPOINT","MCP_SESSION_ID","HTTP_PROXY","HTTPS_PROXY","ALL_PROXY","NO_PROXY","http_proxy","https_proxy","all_proxy","no_proxy","npm_config_proxy","npm_config_https_proxy"]),oP=new Set(["CLAUDE_CODE_OAUTH_TOKEN","CLAUDE_CODE_GIT_BASH_PATH","CLAUDE_CODE_USE_BEDROCK","CLAUDE_CODE_USE_VERTEX","ANTHROPIC_BEDROCK_BASE_URL","AWS_REGION","AWS_PROFILE","AWS_ACCESS_KEY_ID","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN","ANTHROPIC_VERTEX_PROJECT_ID","CLOUD_ML_REGION","GOOGLE_APPLICATION_CREDENTIALS"]);function Jn(t=process.env){let e={};for(let[r,n]of Object.entries(t))if(n!==void 0){if(oP.has(r)){e[r]=n;continue}nP.has(r)||rP.some(o=>r.startsWith(o))||(e[r]=n)}return e}var sP=5e3,iP=1e3,aP=$e.supervisorRegistry();function wt(t){if(!Number.isInteger(t)||t<0||t===0)return!1;try{return process.kill(t,0),!0}catch(e){if(e instanceof Error){let r=e.code;return r==="EPERM"?!0:(y.debug("SYSTEM","PID check failed",{pid:t,code:r}),!1)}return y.warn("SYSTEM","PID check threw non-Error",{pid:t,error:String(e)}),!1}}async function Cs(t,e){let r=Date.now()+e;for(;Date.now()<r;){if(t.every(n=>!wt(n.pid)))return;await new Promise(n=>setTimeout(n,100))}}var cP=5e3,r_=new Map;function uP(t){let e=r_.get(t);if(e&&Date.now()-e.capturedAtMs<cP)return e.token;let r=null;try{let n=(0,hu.spawnSync)("powershell.exe",["-NoProfile","-NonInteractive","-Command",`(Get-CimInstance Win32_Process -Filter "ProcessId=${t}").CreationDate.ToString('yyyyMMddHHmmss.ffffff')`],{encoding:"utf-8",timeout:5e3,windowsHide:!0,env:{...Jn(process.env),LC_ALL:"C",LANG:"C"}});if(n.status===0){let o=n.stdout.trim();r=o.length>0?o:null}}catch(n){y.debug("SYSTEM","captureProcessStartToken: powershell CIM lookup failed",{pid:t,error:n instanceof Error?n.message:String(n)}),r=null}return r_.set(t,{token:r,capturedAtMs:Date.now()}),r}function n_(t){if(!Number.isInteger(t)||t<=0)return null;if(process.platform==="linux")try{let e=(0,pt.readFileSync)(`/proc/${t}/stat`,"utf-8"),r=e.lastIndexOf(") ");if(r<0)return null;let o=e.slice(r+2).split(" ")[19];return o&&/^\d+$/.test(o)?o:null}catch(e){return y.debug("SYSTEM","captureProcessStartToken: /proc read failed",{pid:t,error:e instanceof Error?e.message:String(e)}),null}if(process.platform==="win32")return uP(t);try{let e=(0,hu.spawnSync)("ps",["-p",String(t),"-o","lstart="],{encoding:"utf-8",timeout:2e3,env:{...Jn(process.env),LC_ALL:"C",LANG:"C"}});if(e.status!==0)return null;let r=e.stdout.trim();return r.length>0?r:null}catch(e){return y.debug("SYSTEM","captureProcessStartToken: ps exec failed",{pid:t,error:e instanceof Error?e.message:String(e)}),null}}function gu(t){if(!t||!wt(t.pid))return!1;if(!t.startToken)return!0;let e=n_(t.pid);if(e===null)return!0;let r=e===t.startToken;return r||y.debug("SYSTEM","verifyPidFileOwnership: start-token mismatch (PID reused)",{pid:t.pid,stored:t.startToken,current:e}),r}var mu=class{registryPath;entries=new Map;runtimeProcesses=new Map;initialized=!1;constructor(e=aP){this.registryPath=e}initialize(){if(this.initialized)return;if(this.initialized=!0,(0,pt.mkdirSync)(fu.default.dirname(this.registryPath),{recursive:!0}),!(0,pt.existsSync)(this.registryPath)){this.persist();return}try{let n=JSON.parse((0,pt.readFileSync)(this.registryPath,"utf-8")).processes??{};for(let[o,s]of Object.entries(n))this.entries.set(o,s)}catch(r){r instanceof Error?y.warn("SYSTEM","Failed to parse supervisor registry, rebuilding",{path:this.registryPath},r):y.warn("SYSTEM","Failed to parse supervisor registry, rebuilding",{path:this.registryPath,error:String(r)}),this.entries.clear()}let e=this.pruneDeadEntries();e>0&&y.info("SYSTEM","Removed dead processes from supervisor registry",{removed:e}),this.persist()}register(e,r,n){this.initialize(),this.entries.set(e,r),n&&this.runtimeProcesses.set(e,n),this.persist()}unregister(e){this.initialize();let r=this.entries.get(e);this.entries.delete(e),this.runtimeProcesses.delete(e),this.persist(),r?.type==="sdk"&&pu()}clear(){this.entries.clear(),this.runtimeProcesses.clear(),this.persist()}getAll(){return this.initialize(),Array.from(this.entries.entries()).map(([e,r])=>({id:e,...r})).sort((e,r)=>{let n=Date.parse(e.startedAt),o=Date.parse(r.startedAt);return(Number.isNaN(n)?0:n)-(Number.isNaN(o)?0:o)})}getBySession(e){let r=String(e);return this.getAll().filter(n=>n.sessionId!==void 0&&String(n.sessionId)===r)}getRuntimeProcess(e){return this.runtimeProcesses.get(e)}getByPid(e){return this.getAll().filter(r=>r.pid===e)}pruneDeadEntries(){this.initialize();let e=0,r=0;for(let[n,o]of this.entries)wt(o.pid)||(this.entries.delete(n),this.runtimeProcesses.delete(n),e+=1,o.type==="sdk"&&(r+=1));e>0&&this.persist();for(let n=0;n<r;n+=1)pu();return e}async reapSession(e){this.initialize();let r=this.getBySession(e);if(r.length===0)return 0;let n=typeof e=="number"?e:Number(e)||void 0;y.info("SYSTEM",`Reaping ${r.length} process(es) for session ${e}`,{sessionId:n,pids:r.map(i=>i.pid)});let o=r.filter(i=>wt(i.pid));for(let i of o)try{typeof i.pgid=="number"&&process.platform!=="win32"?process.kill(-i.pgid,"SIGTERM"):process.kill(i.pid,"SIGTERM")}catch(a){a instanceof Error?a.code!=="ESRCH"&&y.debug("SYSTEM",`Failed to SIGTERM session process PID ${i.pid}`,{pid:i.pid,pgid:i.pgid},a):y.warn("SYSTEM",`Failed to SIGTERM session process PID ${i.pid} (non-Error)`,{pid:i.pid,pgid:i.pgid,error:String(a)})}await Cs(o,sP);let s=o.filter(i=>wt(i.pid));for(let i of s){y.warn("SYSTEM",`Session process PID ${i.pid} did not exit after SIGTERM, sending SIGKILL`,{pid:i.pid,pgid:i.pgid,sessionId:n});try{typeof i.pgid=="number"&&process.platform!=="win32"?process.kill(-i.pgid,"SIGKILL"):process.kill(i.pid,"SIGKILL")}catch(a){a instanceof Error?a.code!=="ESRCH"&&y.debug("SYSTEM",`Failed to SIGKILL session process PID ${i.pid}`,{pid:i.pid,pgid:i.pgid},a):y.warn("SYSTEM",`Failed to SIGKILL session process PID ${i.pid} (non-Error)`,{pid:i.pid,pgid:i.pgid,error:String(a)})}}if(s.length>0){let i=Date.now()+iP;for(;Date.now()<i&&s.filter(c=>wt(c.pid)).length!==0;)await new Promise(c=>setTimeout(c,100))}for(let i of r)this.entries.delete(i.id),this.runtimeProcesses.delete(i.id);this.persist();for(let i of r)i.type==="sdk"&&pu();return y.info("SYSTEM",`Reaped ${r.length} process(es) for session ${e}`,{sessionId:n,reaped:r.length}),r.length}persist(){let e={processes:Object.fromEntries(this.entries.entries())};(0,pt.mkdirSync)(fu.default.dirname(this.registryPath),{recursive:!0}),(0,pt.writeFileSync)(this.registryPath,JSON.stringify(e,null,2))}},du=null;function Ds(){return du||(du=new mu),du}var lP=[];function pu(){let t=lP.shift();t&&t()}var s_=require("child_process"),Nr=require("fs"),i_=require("util");var dP=(0,i_.promisify)(s_.execFile),pP=$e.workerPid();async function a_(t){let e=t.currentPid??process.pid,r=t.pidFilePath??pP,n=t.registry.getAll(),o=[...n].filter(i=>i.pid!==e).sort((i,a)=>Date.parse(a.startedAt)-Date.parse(i.startedAt));for(let i of o){if(!wt(i.pid)){t.registry.unregister(i.id);continue}try{await o_(i,"SIGTERM")}catch(a){a instanceof Error?y.debug("SYSTEM","Failed to send SIGTERM to child process",{pid:i.pid,pgid:i.pgid,type:i.type},a):y.warn("SYSTEM","Failed to send SIGTERM to child process (non-Error)",{pid:i.pid,pgid:i.pgid,type:i.type,error:String(a)})}}await Cs(o,5e3);let s=o.filter(i=>wt(i.pid));for(let i of s)try{await o_(i,"SIGKILL")}catch(a){a instanceof Error?y.debug("SYSTEM","Failed to force kill child process",{pid:i.pid,pgid:i.pgid,type:i.type},a):y.warn("SYSTEM","Failed to force kill child process (non-Error)",{pid:i.pid,pgid:i.pgid,type:i.type,error:String(a)})}await Cs(s,1e3);for(let i of o)t.registry.unregister(i.id);for(let i of n.filter(a=>a.pid===e))t.registry.unregister(i.id);fP(r,e),t.registry.pruneDeadEntries()}function fP(t,e){if(!(0,Nr.existsSync)(t))return;let r=null;try{let n=JSON.parse((0,Nr.readFileSync)(t,"utf-8"));r=typeof n.pid=="number"?n.pid:null}catch(n){y.debug("SYSTEM","PID file unreadable during shutdown \u2014 leaving it (cannot prove ownership)",{pidFilePath:t,error:n instanceof Error?n.message:String(n)});return}if(r!==e){y.debug("SYSTEM","PID file not owned by this process \u2014 leaving it for its owner (restart successor?)",{pidFilePath:t,recordedPid:r,currentPid:e});return}try{(0,Nr.rmSync)(t,{force:!0})}catch(n){n instanceof Error?y.debug("SYSTEM","Failed to remove PID file during shutdown",{pidFilePath:t},n):y.warn("SYSTEM","Failed to remove PID file during shutdown (non-Error)",{pidFilePath:t,error:String(n)})}}async function o_(t,e){let{pid:r,pgid:n}=t;if(process.platform!=="win32"){if(typeof n=="number")try{process.kill(-n,e);return}catch(i){if((i instanceof Error?i.code:void 0)!=="ESRCH")throw i}try{process.kill(r,e)}catch(i){if((i instanceof Error?i.code:void 0)!=="ESRCH")throw i}return}if(e==="SIGTERM"){try{process.kill(r,e)}catch(i){if(i instanceof Error&&i.code==="ESRCH")return;throw i}return}let o=await mP();if(o){await new Promise((i,a)=>{o(r,e,c=>{if(!c){i();return}if(c.code==="ESRCH"){i();return}a(c)})});return}let s=["/PID",String(r),"/T"];e==="SIGKILL"&&s.push("/F"),await dP("taskkill",s,{timeout:ue.POWERSHELL_COMMAND,windowsHide:!0})}async function mP(){let t="tree-kill";try{let e=await import(t);return e.default??e}catch(e){return y.debug("SYSTEM","tree-kill module not available, using fallback",{},e instanceof Error?e:void 0),null}}var c_=3e4,jr=null;function hP(){let e=Ds().pruneDeadEntries();e>0&&y.info("SYSTEM",`Health check: pruned ${e} dead process(es) from registry`)}function u_(){jr===null&&(jr=setInterval(hP,c_),jr.unref(),y.debug("SYSTEM","Health checker started",{intervalMs:c_}))}function l_(){jr!==null&&(clearInterval(jr),jr=null,y.debug("SYSTEM","Health checker stopped"))}var gP=$e.workerPid(),_u=class{registry;started=!1;stopPromise=null;signalHandlersRegistered=!1;shutdownInitiated=!1;shutdownHandler=null;constructor(e){this.registry=e}async start(){if(this.started)return;if(this.registry.initialize(),Ns({logAlive:!1})==="alive")throw new Error("Worker already running");this.started=!0,u_()}configureSignalHandlers(e){if(this.shutdownHandler=e,this.signalHandlersRegistered)return;this.signalHandlersRegistered=!0;let r=async n=>{if(this.shutdownInitiated){y.warn("SYSTEM",`Received ${n} but shutdown already in progress`);return}this.shutdownInitiated=!0,y.info("SYSTEM",`Received ${n}, shutting down...`);try{this.shutdownHandler?await this.shutdownHandler():await this.stop()}catch(o){o instanceof Error?y.error("SYSTEM","Error during shutdown",{},o):y.error("SYSTEM","Error during shutdown (non-Error)",{error:String(o)});try{await this.stop()}catch(s){s instanceof Error?y.debug("SYSTEM","Supervisor shutdown fallback failed",{},s):y.debug("SYSTEM","Supervisor shutdown fallback failed",{error:String(s)})}}process.exit(0)};process.on("SIGTERM",()=>{r("SIGTERM")}),process.on("SIGINT",()=>{r("SIGINT")}),process.platform!=="win32"&&(process.argv.includes("--daemon")?process.on("SIGHUP",()=>{y.debug("SYSTEM","Ignoring SIGHUP in daemon mode")}):process.on("SIGHUP",()=>{r("SIGHUP")}))}async stop(){if(this.stopPromise){await this.stopPromise;return}l_(),this.stopPromise=a_({registry:this.registry,currentPid:process.pid}).finally(()=>{this.started=!1,this.stopPromise=null}),await this.stopPromise}assertCanSpawn(e){if(this.stopPromise!==null)throw new Error(`Supervisor is shutting down, refusing to spawn ${e}`)}registerProcess(e,r,n){this.registry.register(e,r,n)}unregisterProcess(e){this.registry.unregister(e)}getRegistry(){return this.registry}},_P=new _u(Ds());function yu(){return _P}function Ns(t={}){let e=t.pidFilePath??gP;if(!(0,or.existsSync)(e))return"missing";let r=null;try{r=JSON.parse((0,or.readFileSync)(e,"utf-8"))}catch(o){return o instanceof Error?y.warn("SYSTEM","Failed to parse worker PID file, removing it",{path:e},o):y.warn("SYSTEM","Failed to parse worker PID file, removing it",{path:e,error:String(o)}),(0,or.rmSync)(e,{force:!0}),"invalid"}return gu(r)&&r?((t.logAlive??!0)&&y.info("SYSTEM","Worker already running (PID alive)",{existingPid:r.pid,existingPort:r.port,startedAt:r.startedAt}),"alive"):(y.info("SYSTEM","Removing stale PID file (worker process is dead or PID has been reused)",{pid:r?.pid,port:r?.port,startedAt:r?.startedAt}),(0,or.rmSync)(e,{force:!0}),"stale")}var f_=Ft(require("path"),1),m_=require("os"),ke=require("fs"),h_=require("child_process");function d_(t){return t instanceof Error?t:new Error(String(t))}var rN=$e.dataDir(),ft=$e.workerPid(),nN=$e.workerPort();function p_(t){return t?/(^|[\\/])node(\.exe)?$/i.test(t.trim()):!1}function yP(t,e){let r=e==="win32"?`where ${t}`:`which ${t}`,n;try{n=(0,h_.execSync)(r,{stdio:["ignore","pipe","ignore"],encoding:"utf-8",windowsHide:!0})}catch(s){return s instanceof Error?y.debug("SYSTEM",`Binary lookup failed for ${t}`,{command:r},s):y.debug("SYSTEM",`Binary lookup failed for ${t}`,{command:r},new Error(String(s))),null}return n.split(/\r?\n/).map(s=>s.trim()).find(s=>s.length>0)||null}var Su;function g_(t={}){let e=Object.keys(t).length===0;if(e&&Su!==void 0)return Su;let r=SP(t);return e&&r!==null&&(Su=r),r}function SP(t){let e=t.platform??process.platform,r=t.execPath??process.execPath;if(p_(r))return r;let n=t.env??process.env,o=t.homeDirectory??(0,m_.homedir)(),s=t.pathExists??ke.existsSync,i=t.lookupInPath??yP,a=e==="win32"?[n.NODE,f_.default.join(o,".nvm","current","bin","node.exe"),"node"]:[n.NODE,"/usr/local/bin/node","/opt/homebrew/bin/node","/usr/bin/node","node"];for(let c of a){let u=c?.trim();if(u&&(p_(u)&&s(u)||u.toLowerCase()==="node"))return u}return i("node",e)}function __(){if(!(0,ke.existsSync)(ft))return null;try{return JSON.parse((0,ke.readFileSync)(ft,"utf-8"))}catch(t){return t instanceof Error?y.warn("SYSTEM","Failed to parse PID file",{path:ft},t):y.warn("SYSTEM","Failed to parse PID file",{path:ft},new Error(String(t))),null}}function y_(){if((0,ke.existsSync)(ft))try{(0,ke.unlinkSync)(ft)}catch(t){t instanceof Error?y.warn("SYSTEM","Failed to remove PID file",{path:ft},t):y.warn("SYSTEM","Failed to remove PID file",{path:ft},new Error(String(t)))}}function Ut(t){return process.platform==="win32"?Math.round(t*2):t}function S_(t,e,r={}){yu().assertCanSpawn("worker daemon");let n=Jn({...process.env,CLAUDE_MEM_WORKER_PORT:String(e),...r}),o=g_();if(!o){y.error("SYSTEM","Node runtime not found \u2014 ensure node is on PATH or set the NODE env var. The worker daemon runs under Node (node:sqlite).");return}if(process.platform==="win32")try{let l=Gn(o,[t,"--daemon"],{detached:!0,stdio:"ignore",windowsHide:!0,env:n});if(l.pid===void 0){y.error("SYSTEM","Worker daemon spawn produced no PID on Windows",{runtimePath:o});return}return l.unref(),l.pid}catch(l){y.error("SYSTEM","Failed to spawn worker daemon on Windows",{runtimePath:o},d_(l));return}let s="/usr/bin/setsid",i=(0,ke.existsSync)(s),u=Gn(i?s:o,i?[o,t,"--daemon"]:[t,"--daemon"],{detached:!0,stdio:"ignore",env:n});if(u.pid!==void 0)return u.unref(),u.pid}function v_(t){if(t===0)return!0;if(!Number.isInteger(t)||t<0)return!1;try{return process.kill(t,0),!0}catch(e){if(e instanceof Error){let r=e.code;if(r==="EPERM")return!0;y.debug("SYSTEM","Process not alive",{pid:t,code:r})}else y.debug("SYSTEM","Process not alive (non-Error thrown)",{pid:t},new Error(String(e)));return!1}}function b_(){try{if(!(0,ke.existsSync)(ft))return;let t=new Date;(0,ke.utimesSync)(ft,t,t)}catch{}}function E_(){return Ns({logAlive:!1})}var w_=Ft(require("net"),1);var vP=2500;async function bP(t,e,r="GET"){let n=await fetch(`http://127.0.0.1:${t}${e}`,{method:r,signal:AbortSignal.timeout(vP)}),o="";try{o=await n.text()}catch{}return{ok:n.ok,statusCode:n.status,body:o}}async function k_(t){return new Promise(e=>{let r=w_.default.createServer();r.once("error",n=>{n.code==="EADDRINUSE"||n.code==="EACCES"?e(!0):e(!1)}),r.once("listening",()=>{r.close(()=>e(!1))}),r.listen(t,"127.0.0.1")})}async function x_(t,e,r,n){let o=Date.now();for(;Date.now()-o<r;){try{if((await bP(t,e)).ok)return!0}catch(s){s instanceof Error?y.debug("SYSTEM",n,{},s):y.debug("SYSTEM",n,{error:String(s)})}await new Promise(s=>setTimeout(s,500))}return!1}function Bn(t,e=3e4){return x_(t,"/api/health",e,"Service not ready yet, will retry")}function Yn(t,e=3e4){return x_(t,"/api/readiness",e,"Worker not ready yet, will retry")}var js=require("path"),Ke=require("fs");var EP=6e4;function $_(){return(0,js.join)(Qs(),"spawn.lock")}function vu(){let t=$_(),e=JSON.stringify({pid:process.pid,startedAt:new Date().toISOString()});for(let r=0;r<2;r++)try{return(0,Ke.mkdirSync)((0,js.dirname)(t),{recursive:!0}),(0,Ke.writeFileSync)(t,e,{flag:"wx"}),!0}catch(n){if(n?.code!=="EEXIST")return!0;if(r>0)return!1;let s;try{s=(0,Ke.statSync)(t).mtimeMs}catch{continue}if(Date.now()-s<=EP)return!1;let i;try{i=(0,Ke.statSync)(t).mtimeMs}catch{continue}if(i!==s)return!1;try{(0,Ke.unlinkSync)(t)}catch{return!1}}return!1}function bu(){let t=$_();try{if(JSON.parse((0,Ke.readFileSync)(t,"utf-8")).pid!==process.pid)return;(0,Ke.unlinkSync)(t)}catch{}}function Eu(t,e,r){let n=process.env[t];if(n){let o=parseInt(n,10);if(Number.isFinite(o)&&o>=r.min&&o<=r.max)return o;y.warn("SYSTEM",`Invalid ${t}, using default`,{value:n,min:r.min,max:r.max})}return e}var RN=Eu("CLAUDE_MEM_HEALTH_TIMEOUT_MS",Et(ue.HEALTH_CHECK),{min:500,max:3e5}),IN=Eu("CLAUDE_MEM_API_TIMEOUT_MS",Et(ue.API_REQUEST),{min:500,max:3e5}),ON=Eu("CLAUDE_MEM_HOOK_READINESS_TIMEOUT_MS",Et(ue.HOOK_READINESS_WAIT),{min:0,max:3e5}),wP={min:500,max:3e5};async function wu(t,e={},r){try{return await fetch(t,{...e,signal:AbortSignal.timeout(r)})}catch(n){throw n instanceof DOMException&&n.name==="TimeoutError"?new Error(`Request timed out after ${r}ms`):n}}var Ls=null,Us=null,qs=null,Zs=null;function kP(){return Fs.default.join(nr.get("CLAUDE_MEM_DATA_DIR"),"settings.json")}function xP(t){if(!Number.isInteger(t)||t<=0)return!1;try{return process.kill(t,0),!0}catch(e){return e?.code==="EPERM"}}function $P(){try{let t=$e.workerPid();if(!(0,qt.existsSync)(t))return null;let e=JSON.parse((0,qt.readFileSync)(t,"utf-8"));return typeof e.pid!="number"||typeof e.port!="number"||!xP(e.pid)?null:e.port}catch{return null}}function ku(){return qs!==null||(qs=nr.loadFromFile(kP())),qs}function P_(t,e){if(!t)return null;let r=parseInt(t,10);return Number.isFinite(r)&&r>=e.min&&r<=e.max?r:null}function PP(t,e,r){let n=process.env[t];if(n!==void 0){let i=P_(n,r);return i!==null?i:(y.warn("SYSTEM",`Invalid ${t}, using default`,{value:n,min:r.min,max:r.max}),e)}let o=ku()[t],s=P_(o,r);return s!==null?s:(y.warn("SYSTEM",`Invalid ${t} in settings.json, using default`,{value:o,min:r.min,max:r.max}),e)}function TP(){if(Ls!==null)return Ls;let t=ku();return Ls=parseInt(t.CLAUDE_MEM_WORKER_PORT,10),Ls}function xu(){let t=$P();return t!==null?t:TP()}function zP(){return Us!==null||(Us=ku().CLAUDE_MEM_WORKER_HOST),Us}function RP(){return Zs!==null||(Zs=PP("CLAUDE_MEM_API_TIMEOUT_MS",Et(ue.API_REQUEST),wP)),Zs}function IP(t){return`http://${zP()}:${xu()}${t}`}function Xn(t,e={}){let r=e.method??"GET",n=e.timeoutMs??RP(),o=IP(t),s={method:r};return e.headers&&(s.headers=e.headers),e.body&&(s.body=e.body),n>0?wu(o,s,n):fetch(o,s)}function T_(){let t=[Fs.default.join(ei,"plugin","scripts","worker-service.cjs"),Fs.default.join(process.cwd(),"plugin","scripts","worker-service.cjs")];for(let e of t)if((0,qt.existsSync)(e))return e;return null}var z_=require("fs");function OP(t){let e=__();return e&&typeof e.port=="number"&&v_(e.pid)?e.port:t}async function AP(t,e){let r=Date.now()+e;for(;Date.now()<r;){let n=OP(t);if(await Bn(n,800))return n;await new Promise(o=>setTimeout(o,300))}return null}async function R_(t,e){if(!e)return y.error("SYSTEM","ensureWorkerStarted called with empty workerScriptPath \u2014 caller bug"),"dead";if(!(0,z_.existsSync)(e))return y.error("SYSTEM","ensureWorkerStarted: worker script not found at expected path \u2014 likely a partial install or build artifact missing",{workerScriptPath:e}),"dead";if(await Bn(t,1e3)){let a=await Yn(t,Ut(ue.READINESS_WAIT));return a||y.warn("SYSTEM","Worker is alive but readiness timed out \u2014 proceeding anyway"),y.info("SYSTEM","Worker already running and healthy (fast path)"),a?"ready":"warming"}if(E_()==="alive"){if(y.info("SYSTEM","Worker PID file points to a live process, waiting for it to become healthy"),await Bn(t,Ut(ue.POST_SPAWN_WAIT))){let c=await Yn(t,Ut(ue.READINESS_WAIT));return y.info("SYSTEM","Worker became healthy while waiting on live PID"),c?"ready":"warming"}y.warn("SYSTEM","PID file marked live but worker never became healthy within the cold-boot window \u2014 treating it as a stale/reused PID and re-spawning"),y_()}if(await k_(t)){if(y.info("SYSTEM","Port in use, waiting for worker to become healthy"),await Bn(t,Ut(ue.PORT_IN_USE_WAIT))){let c=await Yn(t,Ut(ue.READINESS_WAIT));return y.info("SYSTEM","Worker is now healthy"),c?"ready":"warming"}y.warn("SYSTEM","Configured port in use but no healthy worker \u2014 spawning anyway (worker will pick a free ephemeral port)")}let o=vu(),s=t;try{if(o){if(y.info("SYSTEM","Starting worker daemon",{workerScriptPath:e}),S_(e,t)===void 0)return y.error("SYSTEM","Failed to spawn worker daemon"),"dead"}else y.info("SYSTEM","Another launcher holds the spawn lock \u2014 skipping duplicate spawn and waiting for its worker");let a=await AP(t,Ut(ue.POST_SPAWN_WAIT));if(a===null)return y.warn("SYSTEM",o?"Worker spawned but health endpoint not responding within window \u2014 likely still starting in background":"Spawn-lock holder's worker not healthy within window \u2014 likely still starting in background"),"warming";s=a}finally{o&&bu()}let i=await Yn(s,Ut(ue.READINESS_WAIT));return i||y.warn("SYSTEM","Worker is alive but readiness timed out \u2014 proceeding anyway"),b_(),y.info("SYSTEM",o?"Worker started successfully":"Worker is up (started by another launcher)"),i?"ready":"warming"}var qr=require("node:fs/promises"),ro=require("node:path");var A_=require("node:child_process"),Se=require("node:fs"),le=require("node:path"),Iu=require("node:os"),Tu=require("node:module");var GP={},zu=typeof __filename<"u"?(0,Tu.createRequire)(__filename):(0,Tu.createRequire)(GP.url),Ru={".js":"javascript",".mjs":"javascript",".cjs":"javascript",".jsx":"tsx",".ts":"typescript",".tsx":"tsx",".py":"python",".pyw":"python",".go":"go",".rs":"rust",".rb":"ruby",".java":"java",".c":"c",".h":"c",".cpp":"cpp",".cc":"cpp",".cxx":"cpp",".hpp":"cpp",".hh":"cpp",".kt":"kotlin",".kts":"kotlin",".swift":"swift",".php":"php",".ex":"elixir",".exs":"elixir",".lua":"lua",".scala":"scala",".sc":"scala",".sh":"bash",".bash":"bash",".zsh":"bash",".hs":"haskell",".zig":"zig",".css":"css",".scss":"scss",".toml":"toml",".yml":"yaml",".yaml":"yaml",".sql":"sql",".md":"markdown",".mdx":"markdown"};function M_(t,e){let r=t.slice(t.lastIndexOf("."));return Ru[r]?Ru[r]:e.extensionToLanguage[r]?e.extensionToLanguage[r]:"unknown"}function C_(t,e){return e.languageToQueryKey[t]?e.languageToQueryKey[t]:DP(t)}var Qn=new Map,Lr={grammars:{},extensionToLanguage:{},languageToQueryKey:{}},D_=[".keepmind.json",".claude-mem.json"];function to(t){if(Qn.has(t))return Qn.get(t);let e;for(let s of D_)try{e=(0,Se.readFileSync)((0,le.join)(t,s),"utf-8");break}catch{}let r;try{if(e===void 0)throw new Error("no project config");r=JSON.parse(e)}catch{return Qn.set(t,Lr),Lr}let n=r.grammars;if(!n||typeof n!="object"||Array.isArray(n))return Qn.set(t,Lr),Lr;let o={grammars:{},extensionToLanguage:{},languageToQueryKey:{}};for(let[s,i]of Object.entries(n)){if(N_[s]||!i||typeof i!="object"||Array.isArray(i))continue;let a=i,c=a.package,u=a.extensions,l=a.query;if(!(typeof c!="string"||!Array.isArray(u))&&u.every(d=>typeof d=="string")){o.grammars[s]={package:c,extensions:u,query:typeof l=="string"?l:void 0};for(let d of u)Ru[d]||(o.extensionToLanguage[d]=s);if(typeof l=="string"){let d=(0,le.join)(t,l);try{let p=(0,Se.readFileSync)(d,"utf-8"),f=`user_${s}`;L_[f]=p,o.languageToQueryKey[s]=f}catch{y.warn("PARSER","Custom query file not found, falling back to generic",{fullQueryPath:d}),o.languageToQueryKey[s]="generic"}}else o.languageToQueryKey[s]="generic"}}return Qn.set(t,o),o}var N_={javascript:"tree-sitter-javascript",typescript:"tree-sitter-typescript/typescript",tsx:"tree-sitter-typescript/tsx",python:"tree-sitter-python",go:"tree-sitter-go",rust:"tree-sitter-rust",ruby:"tree-sitter-ruby",java:"tree-sitter-java",c:"tree-sitter-c",cpp:"tree-sitter-cpp",kotlin:"tree-sitter-kotlin",swift:"tree-sitter-swift",php:"tree-sitter-php/php",elixir:"tree-sitter-elixir",lua:"@tree-sitter-grammars/tree-sitter-lua",scala:"tree-sitter-scala",bash:"tree-sitter-bash",haskell:"tree-sitter-haskell",zig:"@tree-sitter-grammars/tree-sitter-zig",css:"tree-sitter-css",scss:"tree-sitter-scss",toml:"@tree-sitter-grammars/tree-sitter-toml",yaml:"@tree-sitter-grammars/tree-sitter-yaml",sql:"@derekstride/tree-sitter-sql",markdown:"@tree-sitter-grammars/tree-sitter-markdown"},MP={markdown:"tree-sitter-markdown"};function CP(t){let e=N_[t];if(!e)return null;let r=MP[t];if(r){try{let n=zu.resolve(e+"/package.json"),o=(0,le.join)((0,le.dirname)(n),r);if((0,Se.existsSync)((0,le.join)(o,"src")))return o}catch{}return null}try{let n=zu.resolve(e+"/package.json");return(0,le.dirname)(n)}catch{return null}}function j_(t,e){let r=CP(t);if(r)return r;if(!e)return null;let o=to(e).grammars[t];if(!o)return null;try{let s=(0,le.join)(e,"node_modules",o.package,"package.json");if((0,Se.existsSync)(s)){let i=(0,le.dirname)(s);if((0,Se.existsSync)((0,le.join)(i,"src")))return i}}catch{}return y.warn("PARSER","Grammar package not found",{language:t,package:o.package}),null}var L_={jsts:`
|
|
84
84
|
(function_declaration name: (identifier) @name) @func
|
|
85
85
|
(lexical_declaration (variable_declarator name: (identifier) @name value: [(arrow_function) (function_expression)])) @const_func
|
|
86
86
|
(class_declaration name: (type_identifier) @name) @cls
|
|
@@ -202,10 +202,10 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
202
202
|
(class_definition name: (identifier) @name) @cls
|
|
203
203
|
(import_statement) @imp
|
|
204
204
|
(import_declaration) @imp
|
|
205
|
-
`};function
|
|
205
|
+
`};function DP(t){switch(t){case"javascript":return"js";case"typescript":case"tsx":return"jsts";case"python":return"python";case"go":return"go";case"rust":return"rust";case"ruby":return"ruby";case"java":return"java";case"kotlin":return"kotlin";case"swift":return"swift";case"php":return"php";case"elixir":return"generic";case"lua":return"lua";case"scala":return"scala";case"bash":return"bash";case"haskell":return"haskell";case"zig":return"zig";case"css":return"css";case"scss":return"scss";case"toml":return"toml";case"yaml":return"yaml";case"sql":return"sql";case"markdown":return"markdown";default:return"generic"}}var $u=null,Pu=new Map;function U_(t){if(Pu.has(t))return Pu.get(t);$u||($u=(0,Se.mkdtempSync)((0,le.join)((0,Iu.tmpdir)(),"smart-read-queries-")));let e=(0,le.join)($u,`${t}.scm`);return(0,Se.writeFileSync)(e,L_[t]),Pu.set(t,e),e}var eo=null;function NP(){if(eo)return eo;try{let t=zu.resolve("tree-sitter-cli/package.json"),e=(0,le.join)((0,le.dirname)(t),"tree-sitter");if((0,Se.existsSync)(e))return eo=e,e}catch{}return eo="tree-sitter",eo}function jP(t,e,r){return q_(t,[e],r).get(e)||[]}function q_(t,e,r){if(e.length===0)return new Map;let n=NP(),o=["query","-p",r,t,...e],s;try{s=(0,A_.execFileSync)(n,o,{encoding:"utf-8",timeout:3e4,stdio:["pipe","pipe","pipe"],windowsHide:!0})}catch(i){return y.debug("WORKER",`tree-sitter query failed for ${e.length} file(s)`,void 0,i instanceof Error?i:void 0),new Map}return LP(s)}function LP(t){let e=new Map,r=null,n=null;for(let o of t.split(`
|
|
206
206
|
`)){if(o.length>0&&!o.startsWith(" ")&&!o.startsWith(" ")){r=o.trim(),e.has(r)||e.set(r,[]),n=null;continue}if(!r)continue;let s=o.match(/^\s+pattern:\s+(\d+)/);if(s){n={pattern:parseInt(s[1]),captures:[]},e.get(r).push(n);continue}let i=o.match(/^\s+capture:\s+(?:\d+\s*-\s*)?(\w+),\s*start:\s*\((\d+),\s*(\d+)\),\s*end:\s*\((\d+),\s*(\d+)\)(?:,\s*text:\s*`([^`]*)`)?/);i&&n&&n.captures.push({tag:i[1],startRow:parseInt(i[2]),startCol:parseInt(i[3]),endRow:parseInt(i[4]),endCol:parseInt(i[5]),text:i[6]})}return e}var I_={func:"function",const_func:"function",cls:"class",method:"method",iface:"interface",tdef:"type",enm:"enum",struct_def:"struct",trait_def:"trait",impl_def:"impl",mixin_def:"mixin",heading:"section",code_block:"code",frontmatter:"metadata",ref:"reference"},UP=new Set(["class","struct","impl","trait"]);function qP(t,e,r,n=200){let s=t[e]||"";if(!s.trimEnd().endsWith("{")&&!s.trimEnd().endsWith(":")){let i=t.slice(e,Math.min(e+10,r+1)).join(`
|
|
207
207
|
`),a=i.indexOf("{");a!==-1&&a<500&&(s=i.slice(0,a).replace(/\n/g," ").replace(/\s+/g," ").trim())}return s=s.replace(/\s*[{:]\s*$/,"").trim(),s.length>n&&(s=s.slice(0,n-3)+"..."),s}function ZP(t,e){let r=[],n=!1;for(let o=e-1;o>=0;o--){let s=t[o].trim();if(s===""){if(n)break;continue}if(s.startsWith("/**")||s.startsWith("*")||s.startsWith("*/")||s.startsWith("//")||s.startsWith("///")||s.startsWith("//!")||s.startsWith("#")||s.startsWith("@"))r.unshift(t[o]),n=!0;else break}return r.length>0?r.join(`
|
|
208
|
-
`).trim():void 0}function FP(t,e,r){for(let n=e+1;n<=Math.min(e+3,r);n++){let o=t[n]?.trim();if(o){if(o.startsWith('"""')||o.startsWith("'''"))return o;break}}}function HP(t,e,r,n,o,s){switch(s){case"javascript":case"typescript":case"tsx":return n.some(i=>e>=i.startRow&&r<=i.endRow);case"python":return!t.startsWith("_");case"go":return t.length>0&&t[0]===t[0].toUpperCase()&&t[0]!==t[0].toLowerCase();case"rust":return o[e]?.trimStart().startsWith("pub")??!1;default:return!0}}function Z_(t,e,r){let n=[],o=[],s=[],i=[];for(let c of t)for(let u of c.captures)u.tag==="exp"&&s.push({startRow:u.startRow,endRow:u.endRow}),u.tag==="imp"&&o.push(u.text||e[u.startRow]?.trim()||"");for(let c of t){let u=c.captures.find(v=>I_[v.tag]),l=c.captures.find(v=>v.tag==="name");if(!u)continue;let d=u.startRow,p=u.endRow,f=I_[u.tag],m=l?.text||"anonymous",_;if(r==="markdown"&&f==="section"){let $=(e[d]||"").match(/^(#{1,6})\s/),x=$?$[1].length:1;_=`${"#".repeat(x)} ${m}`}else if(r==="markdown"&&f==="code"){let v=m!=="anonymous"?m:"";_=v?"```"+v:"```"}else r==="markdown"&&f==="metadata"?_="---frontmatter---":r==="markdown"&&f==="reference"?_=e[d]?.trim()||m:_=qP(e,d,p);let S=r==="markdown"?void 0:ZP(e,d),b=r==="python"?FP(e,d,p):void 0,E={name:m,kind:f,signature:_,jsdoc:S||b,lineStart:d,lineEnd:p,exported:HP(m,d,p,s,e,r)};UP.has(f)&&(E.children=[],i.push({sym:E,startRow:d,endRow:p})),n.push(E)}if(r==="markdown"){let c=new Map,u=new Set;for(let l of n){if(l.kind!=="code")continue;let d=`${l.lineStart}:${l.lineEnd}`,p=c.get(d);p?l.name!=="anonymous"?(u.add(p),c.set(d,l)):u.add(l):c.set(d,l)}if(u.size>0){let l=n.filter(d=>!u.has(d));n.length=0,n.push(...l)}}let a=new Set;for(let c of i)for(let u of n)u!==c.sym&&u.lineStart>c.startRow&&u.lineEnd<=c.endRow&&(u.kind==="function"&&(u.kind="method"),c.sym.children.push(u),a.add(u));return{symbols:n.filter(c=>!a.has(c)),imports:o}}function Ou(t){let e=(0,le.dirname)(t);for(;;){if(
|
|
208
|
+
`).trim():void 0}function FP(t,e,r){for(let n=e+1;n<=Math.min(e+3,r);n++){let o=t[n]?.trim();if(o){if(o.startsWith('"""')||o.startsWith("'''"))return o;break}}}function HP(t,e,r,n,o,s){switch(s){case"javascript":case"typescript":case"tsx":return n.some(i=>e>=i.startRow&&r<=i.endRow);case"python":return!t.startsWith("_");case"go":return t.length>0&&t[0]===t[0].toUpperCase()&&t[0]!==t[0].toLowerCase();case"rust":return o[e]?.trimStart().startsWith("pub")??!1;default:return!0}}function Z_(t,e,r){let n=[],o=[],s=[],i=[];for(let c of t)for(let u of c.captures)u.tag==="exp"&&s.push({startRow:u.startRow,endRow:u.endRow}),u.tag==="imp"&&o.push(u.text||e[u.startRow]?.trim()||"");for(let c of t){let u=c.captures.find(v=>I_[v.tag]),l=c.captures.find(v=>v.tag==="name");if(!u)continue;let d=u.startRow,p=u.endRow,f=I_[u.tag],m=l?.text||"anonymous",_;if(r==="markdown"&&f==="section"){let $=(e[d]||"").match(/^(#{1,6})\s/),x=$?$[1].length:1;_=`${"#".repeat(x)} ${m}`}else if(r==="markdown"&&f==="code"){let v=m!=="anonymous"?m:"";_=v?"```"+v:"```"}else r==="markdown"&&f==="metadata"?_="---frontmatter---":r==="markdown"&&f==="reference"?_=e[d]?.trim()||m:_=qP(e,d,p);let S=r==="markdown"?void 0:ZP(e,d),b=r==="python"?FP(e,d,p):void 0,E={name:m,kind:f,signature:_,jsdoc:S||b,lineStart:d,lineEnd:p,exported:HP(m,d,p,s,e,r)};UP.has(f)&&(E.children=[],i.push({sym:E,startRow:d,endRow:p})),n.push(E)}if(r==="markdown"){let c=new Map,u=new Set;for(let l of n){if(l.kind!=="code")continue;let d=`${l.lineStart}:${l.lineEnd}`,p=c.get(d);p?l.name!=="anonymous"?(u.add(p),c.set(d,l)):u.add(l):c.set(d,l)}if(u.size>0){let l=n.filter(d=>!u.has(d));n.length=0,n.push(...l)}}let a=new Set;for(let c of i)for(let u of n)u!==c.sym&&u.lineStart>c.startRow&&u.lineEnd<=c.endRow&&(u.kind==="function"&&(u.kind="method"),c.sym.children.push(u),a.add(u));return{symbols:n.filter(c=>!a.has(c)),imports:o}}function Ou(t){let e=(0,le.dirname)(t);for(;;){if(D_.some(n=>(0,Se.existsSync)((0,le.join)(e,n))))return e;let r=(0,le.dirname)(e);if(r===e)return;e=r}}function Hs(t,e,r){let n=r?to(r):Lr,o=M_(e,n),s=t.split(`
|
|
209
209
|
`),i=j_(o,r);if(!i)return{filePath:e,language:o,symbols:[],imports:[],totalLines:s.length,foldedTokenEstimate:50};let a=C_(o,n),c=U_(a),u=e.slice(e.lastIndexOf("."))||".txt",l=(0,Se.mkdtempSync)((0,le.join)((0,Iu.tmpdir)(),"smart-src-")),d=(0,le.join)(l,`source${u}`);(0,Se.writeFileSync)(d,t);try{let p=jP(c,d,i),f=Z_(p,s,o),m=Ur({filePath:e,language:o,symbols:f.symbols,imports:f.imports,totalLines:s.length,foldedTokenEstimate:0});return{filePath:e,language:o,symbols:f.symbols,imports:f.imports,totalLines:s.length,foldedTokenEstimate:Math.ceil(m.length/4)}}finally{(0,Se.rmSync)(l,{recursive:!0,force:!0})}}function F_(t,e){let r=new Map,n=e?to(e):Lr,o=new Map;for(let s of t){let i=M_(s.relativePath,n);o.has(i)||o.set(i,[]),o.get(i).push(s)}for(let[s,i]of o){let a=j_(s,e);if(!a){for(let p of i){let f=p.content.split(`
|
|
210
210
|
`);r.set(p.relativePath,{filePath:p.relativePath,language:s,symbols:[],imports:[],totalLines:f.length,foldedTokenEstimate:50})}continue}let c=C_(s,n),u=U_(c),l=i.map(p=>p.absolutePath),d=q_(u,l,a);for(let p of i){let f=p.content.split(`
|
|
211
211
|
`),m=d.get(p.absolutePath)||[],_=Z_(m,f,s),S=Ur({filePath:p.relativePath,language:s,symbols:_.symbols,imports:_.imports,totalLines:f.length,foldedTokenEstimate:0});r.set(p.relativePath,{filePath:p.relativePath,language:s,symbols:_.symbols,imports:_.imports,totalLines:f.length,foldedTokenEstimate:Math.ceil(S.length/4)})}}return r}function Ur(t){if(t.language==="markdown")return WP(t);let e=[];if(e.push(`\u{1F4C1} ${t.filePath} (${t.language}, ${t.totalLines} lines)`),e.push(""),t.imports.length>0){e.push(` \u{1F4E6} Imports: ${t.imports.length} statements`);for(let r of t.imports.slice(0,10))e.push(` ${r}`);t.imports.length>10&&e.push(` ... +${t.imports.length-10} more`),e.push("")}for(let r of t.symbols)e.push(H_(r," "));return e.join(`
|
|
@@ -220,7 +220,7 @@ ${m}`}let c=i.lineStart;for(let l=i.lineStart-1;l>=0;l--){let d=a[l].trim();if(d
|
|
|
220
220
|
${u}`}var V_=new Set([".js",".jsx",".ts",".tsx",".mjs",".cjs",".py",".pyw",".go",".rs",".rb",".java",".cs",".cpp",".cc",".cxx",".c",".h",".hpp",".hh",".swift",".kt",".kts",".php",".vue",".svelte",".ex",".exs",".lua",".scala",".sc",".sh",".bash",".zsh",".hs",".zig",".css",".scss",".toml",".yml",".yaml",".sql",".md",".mdx"]),KP=new Set(["node_modules",".git","dist","build",".next","__pycache__",".venv","venv","env",".env","target","vendor",".cache",".turbo","coverage",".nyc_output",".claude",".smart-file-read"]),JP=512*1024;async function*G_(t,e,r=20,n){if(r<=0)return;let o;try{o=await(0,qr.readdir)(t,{withFileTypes:!0})}catch(s){y.debug("WORKER",`walkDir: failed to read directory ${t}`,void 0,s instanceof Error?s:void 0);return}for(let s of o){if(s.name.startsWith(".")&&s.name!=="."||KP.has(s.name))continue;let i=(0,ro.join)(t,s.name);if(s.isDirectory())yield*G_(i,e,r-1,n);else if(s.isFile()){let a=s.name.slice(s.name.lastIndexOf("."));(V_.has(a)||n&&n.has(a))&&(yield i)}}}async function BP(t){try{let e=await(0,qr.stat)(t);if(e.size>JP||e.size===0)return null;let r=await(0,qr.readFile)(t,"utf-8");return r.slice(0,1e3).includes("\0")?null:r}catch(e){return y.debug("WORKER",`safeReadFile: failed to read ${t}`,void 0,e instanceof Error?e:void 0),null}}async function K_(t,e,r={}){let n=r.maxResults||20,o=e.toLowerCase(),s=o.split(/[\s_\-./]+/).filter(E=>E.length>0),i=r.projectRoot||t,a=to(i),c=new Set;for(let E of Object.values(a.grammars))for(let v of E.extensions)V_.has(v)||c.add(v);let u=[];for await(let E of G_(t,t,20,c.size>0?c:void 0)){if(r.filePattern&&!(0,ro.relative)(t,E).toLowerCase().includes(r.filePattern.toLowerCase()))continue;let v=await BP(E);v&&u.push({absolutePath:E,relativePath:(0,ro.relative)(t,E),content:v})}let l=F_(u,i),d=[],p=[],f=0;for(let[E,v]of l){f+=YP(v);let x=Ws(E.toLowerCase(),s)>0,ve=[],xe=(Zt,ir)=>{for(let ce of Zt){let kt=0,Be="",Zr=Ws(ce.name.toLowerCase(),s);Zr>0&&(kt+=Zr*3,Be="name match"),ce.signature.toLowerCase().includes(o)&&(kt+=2,Be=Be?`${Be} + signature`:"signature match"),ce.jsdoc&&ce.jsdoc.toLowerCase().includes(o)&&(kt+=1,Be=Be?`${Be} + jsdoc`:"jsdoc match"),kt>0&&(x=!0,ve.push({filePath:E,symbolName:ir?`${ir}.${ce.name}`:ce.name,kind:ce.kind,signature:ce.signature,jsdoc:ce.jsdoc,lineStart:ce.lineStart,lineEnd:ce.lineEnd,matchReason:Be})),ce.children&&xe(ce.children,ce.name)}};xe(v.symbols),x&&(d.push(v),p.push(...ve))}p.sort((E,v)=>{let $=Ws(E.symbolName.toLowerCase(),s);return Ws(v.symbolName.toLowerCase(),s)-$});let m=p.slice(0,n),_=new Set(m.map(E=>E.filePath)),S=d.filter(E=>_.has(E.filePath)).slice(0,n),b=S.reduce((E,v)=>E+v.foldedTokenEstimate,0);return{foldedFiles:S,matchingSymbols:m,totalFilesScanned:u.length,totalSymbolsFound:f,tokenEstimate:b}}function Ws(t,e){let r=0;for(let n of e)if(t===n)r+=10;else if(t.includes(n))r+=5;else{let o=0,s=0;for(let i of n){let a=t.indexOf(i,o);a!==-1&&(s++,o=a+1)}s===n.length&&(r+=1)}return r}function YP(t){let e=t.symbols.length;for(let r of t.symbols)r.children&&(e+=r.children.length);return e}function J_(t,e){let r=[];if(r.push(`\u{1F50D} Smart Search: "${e}"`),r.push(` Scanned ${t.totalFilesScanned} files, found ${t.totalSymbolsFound} symbols`),r.push(` ${t.matchingSymbols.length} matches across ${t.foldedFiles.length} files (~${t.tokenEstimate} tokens for folded view)`),r.push(""),t.matchingSymbols.length===0)return r.push(" No matching symbols found."),r.join(`
|
|
221
221
|
`);r.push("\u2500\u2500 Matching Symbols \u2500\u2500"),r.push("");for(let n of t.matchingSymbols){if(r.push(` ${n.kind} ${n.symbolName} (${n.filePath}:${n.lineStart+1})`),r.push(` ${n.signature}`),n.jsdoc){let o=n.jsdoc.split(`
|
|
222
222
|
`).find(s=>s.replace(/^[\s*/]+/,"").trim().length>0);o&&r.push(` \u{1F4AC} ${o.replace(/^[\s*/]+/,"").trim()}`)}r.push("")}r.push("\u2500\u2500 Folded File Views \u2500\u2500"),r.push("");for(let n of t.foldedFiles)r.push(Ur(n)),r.push("");return r.push("\u2500\u2500 Actions \u2500\u2500"),r.push(" To see full implementation: use smart_unfold with file path and symbol name"),r.join(`
|
|
223
|
-
`)}var Nu=require("node:fs/promises"),Ks=require("node:fs"),nt=require("node:path"),oy=require("node:os"),sy=require("node:url");var B_="claude";function XP(t){return t.trim().toLowerCase().replace(/\s+/g,"-")}function Vs(t){if(!t)return B_;let e=XP(t);return e?e==="transcript"||e.includes("codex")?"codex":e.includes("cursor")?"cursor":e.includes("claude")?"claude":e:B_}var QP=Et(ue.API_REQUEST),Je=class extends Error{kind;status;cause;constructor(e,r,n={}){super(r),this.name="ServerClientError",this.kind=e,this.status=n.status??null,this.cause=n.cause}isFallbackEligible(){return this.kind==="transport"||this.kind==="timeout"||this.kind==="missing_api_key"||this.kind==="http_error"&&(this.status!==null&&this.status>=500||this.status===429)}},Gs=class{baseUrl;apiKey;timeoutMs;constructor(e){this.baseUrl=eT(e.serverBaseUrl),this.apiKey=e.apiKey,this.timeoutMs=e.timeoutMs??QP}async startSession(e){let r=this.buildStartSessionPayload(e);return this.request("POST","/v1/sessions/start",r)}async recordEvent(e){let r=this.buildEventPayload(e),n=e.generate===!1?"/v1/events?generate=false":"/v1/events";return this.request("POST",n,r)}async endSession(e){if(!e.sessionId)throw new Je("invalid_response","sessionId is required for endSession");return this.request("POST",`/v1/sessions/${encodeURIComponent(e.sessionId)}/end`,{})}async addObservation(e){return this.request("POST","/v1/memories",this.buildAddObservationPayload(e))}async searchObservations(e){return this.request("POST","/v1/search",this.buildSearchPayload(e))}async contextObservations(e){return this.request("POST","/v1/context",this.buildSearchPayload(e))}async getJobStatus(e){if(!e)throw new Je("invalid_response","jobId is required for getJobStatus");return this.request("GET",`/v1/jobs/${encodeURIComponent(e)}`)}buildAddObservationPayload(e){let r=e.content,n=e.kind??"manual",o=typeof e.metadata?.title=="string"?e.metadata.title:void 0;return{projectId:e.projectId,kind:n,type:n,narrative:r,...o?{title:o}:{},...e.serverSessionId!==void 0?{serverSessionId:e.serverSessionId}:{},...e.metadata!==void 0?{metadata:e.metadata}:{}}}buildSearchPayload(e){return{projectId:e.projectId,query:e.query,...e.limit!==void 0?{limit:e.limit}:{},...e.platformSource!==void 0?{platformSource:Au(e.platformSource)}:{}}}buildStartSessionPayload(e){return{projectId:e.projectId,...e.externalSessionId!==void 0?{externalSessionId:e.externalSessionId}:{},...e.contentSessionId!==void 0?{contentSessionId:e.contentSessionId}:{},...e.agentId!==void 0?{agentId:e.agentId}:{},...e.agentType!==void 0?{agentType:e.agentType}:{},...e.platformSource!==void 0?{platformSource:Au(e.platformSource)}:{},...e.metadata!==void 0?{metadata:e.metadata}:{}}}buildEventPayload(e){return{projectId:e.projectId,sourceType:e.sourceType,eventType:e.eventType,occurredAtEpoch:e.occurredAtEpoch,...e.serverSessionId!==void 0?{serverSessionId:e.serverSessionId}:{},...e.contentSessionId!==void 0?{contentSessionId:e.contentSessionId}:{},...e.memorySessionId!==void 0?{memorySessionId:e.memorySessionId}:{},...e.platformSource!==void 0?{platformSource:Au(e.platformSource)}:{},...e.payload!==void 0?{payload:e.payload}:{}}}async request(e,r,n){if(!this.apiKey||!this.apiKey.trim())throw new Je("missing_api_key","Server API key is not configured (CLAUDE_MEM_SERVER_API_KEY).");let o=`${this.baseUrl}${r}`,s={method:e,headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.apiKey}`}};n!==void 0&&(s.body=JSON.stringify(n));let i;try{i=await wu(o,s,this.timeoutMs)}catch(c){let u=c instanceof Error?c.message:String(c),l=/timed out|timeout/i.test(u);throw new Je(l?"timeout":"transport",`Server ${e} ${r} failed: ${u}`,{cause:c})}if(!i.ok){let c=await i.text().catch(()=>"");throw new Je("http_error",`Server ${e} ${r} returned ${i.status}: ${tT(c,200)}`,{status:i.status})}let a=await i.text();if(!a||a.length===0)return{};try{return JSON.parse(a)}catch(c){throw new Je("invalid_response",`Server ${e} ${r} returned non-JSON response`,{cause:c})}}};function Y_(t){return t instanceof Je}function eT(t){return t.replace(/\/+$/,"")}function Au(t){return typeof t=="string"?Vs(t):null}function tT(t,e){return t.length<=e?t:`${t.slice(0,e)}\u2026`}function Mu(){let e=(Ms().CLAUDE_MEM_RUNTIME??"worker").trim().toLowerCase();return e==="server"||e==="server-beta"?"server":"worker"}function X_(){let t=Ms(),e=(...i)=>{for(let a of i){let c=(a??"").trim();if(c.length>0)return c}return""},r=e(t.CLAUDE_MEM_SERVER_URL,t.CLAUDE_MEM_SERVER_BETA_URL),n=e(t.CLAUDE_MEM_SERVER_API_KEY,t.CLAUDE_MEM_SERVER_BETA_API_KEY),o=e(t.CLAUDE_MEM_SERVER_PROJECT_ID,t.CLAUDE_MEM_SERVER_BETA_PROJECT_ID);if(!r)return y.warn("HOOK","[server-fallback] reason=missing_base_url"),null;if(!n)return y.warn("HOOK","[server-fallback] reason=missing_api_key"),null;if(!o)return y.warn("HOOK","[server-fallback] reason=missing_project_id"),null;let s={serverBaseUrl:r,apiKey:n};return{runtime:"server",client:new Gs(s),projectId:o,serverBaseUrl:r}}var ST={},rT="1.3.1";console.log=(...t)=>{y.error("CONSOLE","Intercepted console output (MCP protocol protection)",void 0,{args:t})};var iy=!1,ay=(()=>{if(typeof __dirname<"u")return __dirname;try{return(0,nt.dirname)((0,sy.fileURLToPath)(ST.url))}catch{return iy=!0,process.cwd()}})(),Du=T_()??(0,nt.resolve)(ay,"worker-service.cjs");function nT(){iy&&((0,Ks.existsSync)(Du)||y.error("SYSTEM","mcp-server: dirname resolution failed (both __dirname and import.meta.url are unavailable). Fell back to process.cwd() and the resolved WORKER_SCRIPT_PATH does not exist. This is the actual problem \u2014 the worker bundle is fine, but mcp-server cannot locate it. Worker auto-start will fail until the dirname-resolution path is fixed.",{workerScriptPath:Du,mcpServerDir:ay}))}var Q_={search:"/api/search",timeline:"/api/timeline"};async function Cu(t,e){y.debug("SYSTEM","\u2192 Worker API",void 0,{endpoint:t,params:e});let r=new URLSearchParams;for(let[o,s]of Object.entries(e))s!=null&&r.append(o,String(s));let n=`${t}?${r}`;try{let o=await Xn(n);if(!o.ok){let i=await o.text();throw new Error(`Worker API error (${o.status}): ${i}`)}let s=await o.json();return y.debug("SYSTEM","\u2190 Worker API success",void 0,{endpoint:t}),s}catch(o){return y.error("SYSTEM","\u2190 Worker API error",{endpoint:t},o instanceof Error?o:new Error(String(o))),{content:[{type:"text",text:`Error calling Worker API: ${o instanceof Error?o.message:String(o)}`}],isError:!0}}}async function oT(t,e){y.debug("SYSTEM","\u2192 Worker API text",void 0,{endpoint:t,params:e});let r=new URLSearchParams;for(let[o,s]of Object.entries(e))s!=null&&r.append(o,String(s));let n=`${t}?${r}`;try{let o=await Xn(n);if(!o.ok){let i=await o.text();throw new Error(`Worker API error (${o.status}): ${i}`)}let s=await o.text();return y.debug("SYSTEM","\u2190 Worker API text success",void 0,{endpoint:t}),{content:[{type:"text",text:s}]}}catch(o){return y.error("SYSTEM","\u2190 Worker API text error",{endpoint:t},o instanceof Error?o:new Error(String(o))),{content:[{type:"text",text:`Error calling Worker API: ${o instanceof Error?o.message:String(o)}`}],isError:!0}}}async function sT(t,e){let r=await Xn(t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!r.ok){let o=await r.text();throw new Error(`Worker API error (${r.status}): ${o}`)}let n=await r.json();return y.debug("HTTP","Worker API success (POST)",void 0,{endpoint:t}),{content:[{type:"text",text:JSON.stringify(n,null,2)}]}}async function sr(t,e){y.debug("HTTP","Worker API request (POST)",void 0,{endpoint:t});try{return await sT(t,e)}catch(r){return y.error("HTTP","Worker API error (POST)",{endpoint:t},r instanceof Error?r:new Error(String(r))),{content:[{type:"text",text:`Error calling Worker API: ${r instanceof Error?r.message:String(r)}`}],isError:!0}}}async function iT(){try{return(await Xn("/api/health")).ok}catch(t){return y.debug("SYSTEM","Worker health check failed",{},t instanceof Error?t:new Error(String(t))),!1}}function aT(){if(Mu()!=="server")return null;let e=X_();return e?{...e,available:!0}:{runtime:"server",available:!1,reason:"server runtime is selected but configuration is incomplete (missing url, api key, or project id)"}}function oo(t){return Y_(t)?{content:[{type:"text",text:`Server error (${t.kind}${t.status?` ${t.status}`:""}): ${t.message}`}],isError:!0}:{content:[{type:"text",text:`Tool error: ${t instanceof Error?t.message:String(t)}`}],isError:!0}}function so(t){return{content:[{type:"text",text:JSON.stringify(t,null,2)}]}}function io(t){let e=aT();if(!e)throw new Je("transport",`${t} requires CLAUDE_MEM_RUNTIME=server. Current runtime is "worker"; use the existing search/timeline/get_observations tools for worker-mode memory access.`);if(!e.available)throw new Je("missing_api_key",`${t}: ${e.reason}`);return e}async function ey(t){try{let e=io("observation_add");if(typeof t?.content!="string"||t.content.trim().length===0)throw new Error('observation_add: "content" is required');let n={projectId:t.projectId&&t.projectId.trim().length>0?t.projectId:e.projectId,content:t.content,...t.serverSessionId!==void 0?{serverSessionId:t.serverSessionId}:{},...t.kind!==void 0?{kind:t.kind}:{},...t.metadata!==void 0?{metadata:t.metadata}:{}},o=await e.client.addObservation(n);return so(o)}catch(e){return oo(e)}}function Bs(t){return typeof t=="string"?Vs(t):null}async function cT(t){try{let e=io("observation_record_event");if(typeof t?.eventType!="string"||t.eventType.trim().length===0)throw new Error('observation_record_event: "eventType" is required');let n={projectId:t.projectId&&t.projectId.trim().length>0?t.projectId:e.projectId,sourceType:t.sourceType??"api",eventType:t.eventType,occurredAtEpoch:typeof t.occurredAtEpoch=="number"?t.occurredAtEpoch:Date.now(),...t.serverSessionId!==void 0?{serverSessionId:t.serverSessionId}:{},...t.contentSessionId!==void 0?{contentSessionId:t.contentSessionId}:{},...t.memorySessionId!==void 0?{memorySessionId:t.memorySessionId}:{},...t.platformSource!==void 0?{platformSource:Bs(t.platformSource)}:{},...t.payload!==void 0?{payload:t.payload}:{},...t.generate!==void 0?{generate:t.generate}:{}},o=await e.client.recordEvent(n);return so(o)}catch(e){return oo(e)}}async function ty(t){try{let e=io("observation_search");if(typeof t?.query!="string"||t.query.trim().length===0)throw new Error('observation_search: "query" is required');let n={projectId:t.projectId&&t.projectId.trim().length>0?t.projectId:e.projectId,query:t.query,...t.limit!==void 0?{limit:t.limit}:{},...t.platformSource!==void 0?{platformSource:Bs(t.platformSource)}:{}},o=await e.client.searchObservations(n);return so(o)}catch(e){return oo(e)}}async function ry(t){try{let e=io("observation_context");if(typeof t?.query!="string"||t.query.trim().length===0)throw new Error('observation_context: "query" is required');let n={projectId:t.projectId&&t.projectId.trim().length>0?t.projectId:e.projectId,query:t.query,...t.limit!==void 0?{limit:t.limit}:{},...t.platformSource!==void 0?{platformSource:Bs(t.platformSource)}:{}},o=await e.client.contextObservations(n);return so(o)}catch(e){return oo(e)}}function uT(t){return Array.isArray(t.projects)?t.projects.map(e=>typeof e=="string"?e.trim():"").filter(Boolean):typeof t.projects=="string"?t.projects.split(",").map(e=>e.trim()).filter(Boolean):typeof t.project=="string"&&t.project.trim().length>0?[t.project.trim()]:[]}async function lT(t){let e=uT(t);return e.length===0?{content:[{type:"text",text:'session_start_context: "project" or "projects" is required'}],isError:!0}:oT("/api/context/inject",{projects:e.join(","),...t.platformSource!==void 0?{platformSource:Bs(t.platformSource)}:{},...t.full!==void 0?{full:t.full}:{},...t.colors!==void 0?{colors:t.colors}:{}})}async function dT(t){try{let e=io("observation_generation_status"),r=(t?.jobId??t?.job_id??"").trim();if(!r)throw new Error('observation_generation_status: "jobId" is required');let n=await e.client.getJobStatus(r);return so(n)}catch(e){return oo(e)}}async function pT(){if(await iT())return!0;y.warn("SYSTEM","Worker not available, attempting auto-start for MCP client"),nT();try{let t=xu(),e=await R_(t,Du);return e==="dead"&&y.error("SYSTEM","Worker auto-start failed \u2014 MCP tools that require the worker (search, timeline, get_observations) will fail until the worker is running. Check earlier log lines for the specific failure reason (Bun not found, missing worker bundle, port conflict, etc.)."),e!=="dead"}catch(t){return y.error("SYSTEM","Worker auto-start threw \u2014 MCP tools that require the worker (search, timeline, get_observations) will fail until the worker is running.",void 0,t instanceof Error?t:new Error(String(t))),!1}}var cy=[{name:"__IMPORTANT",description:`3-LAYER WORKFLOW (ALWAYS FOLLOW):
|
|
223
|
+
`)}var Du=require("node:fs/promises"),Ks=require("node:fs"),nt=require("node:path"),oy=require("node:os"),sy=require("node:url");var B_="claude";function XP(t){return t.trim().toLowerCase().replace(/\s+/g,"-")}function Vs(t){if(!t)return B_;let e=XP(t);return e?e==="transcript"||e.includes("codex")?"codex":e.includes("cursor")?"cursor":e.includes("claude")?"claude":e:B_}var QP=Et(ue.API_REQUEST),Je=class extends Error{kind;status;cause;constructor(e,r,n={}){super(r),this.name="ServerClientError",this.kind=e,this.status=n.status??null,this.cause=n.cause}isFallbackEligible(){return this.kind==="transport"||this.kind==="timeout"||this.kind==="missing_api_key"||this.kind==="http_error"&&(this.status!==null&&this.status>=500||this.status===429)}},Gs=class{baseUrl;apiKey;timeoutMs;constructor(e){this.baseUrl=eT(e.serverBaseUrl),this.apiKey=e.apiKey,this.timeoutMs=e.timeoutMs??QP}async startSession(e){let r=this.buildStartSessionPayload(e);return this.request("POST","/v1/sessions/start",r)}async recordEvent(e){let r=this.buildEventPayload(e),n=e.generate===!1?"/v1/events?generate=false":"/v1/events";return this.request("POST",n,r)}async endSession(e){if(!e.sessionId)throw new Je("invalid_response","sessionId is required for endSession");return this.request("POST",`/v1/sessions/${encodeURIComponent(e.sessionId)}/end`,{})}async addObservation(e){return this.request("POST","/v1/memories",this.buildAddObservationPayload(e))}async searchObservations(e){return this.request("POST","/v1/search",this.buildSearchPayload(e))}async contextObservations(e){return this.request("POST","/v1/context",this.buildSearchPayload(e))}async getJobStatus(e){if(!e)throw new Je("invalid_response","jobId is required for getJobStatus");return this.request("GET",`/v1/jobs/${encodeURIComponent(e)}`)}buildAddObservationPayload(e){let r=e.content,n=e.kind??"manual",o=typeof e.metadata?.title=="string"?e.metadata.title:void 0;return{projectId:e.projectId,kind:n,type:n,narrative:r,...o?{title:o}:{},...e.serverSessionId!==void 0?{serverSessionId:e.serverSessionId}:{},...e.metadata!==void 0?{metadata:e.metadata}:{}}}buildSearchPayload(e){return{projectId:e.projectId,query:e.query,...e.limit!==void 0?{limit:e.limit}:{},...e.platformSource!==void 0?{platformSource:Au(e.platformSource)}:{}}}buildStartSessionPayload(e){return{projectId:e.projectId,...e.externalSessionId!==void 0?{externalSessionId:e.externalSessionId}:{},...e.contentSessionId!==void 0?{contentSessionId:e.contentSessionId}:{},...e.agentId!==void 0?{agentId:e.agentId}:{},...e.agentType!==void 0?{agentType:e.agentType}:{},...e.platformSource!==void 0?{platformSource:Au(e.platformSource)}:{},...e.metadata!==void 0?{metadata:e.metadata}:{}}}buildEventPayload(e){return{projectId:e.projectId,sourceType:e.sourceType,eventType:e.eventType,occurredAtEpoch:e.occurredAtEpoch,...e.serverSessionId!==void 0?{serverSessionId:e.serverSessionId}:{},...e.contentSessionId!==void 0?{contentSessionId:e.contentSessionId}:{},...e.memorySessionId!==void 0?{memorySessionId:e.memorySessionId}:{},...e.platformSource!==void 0?{platformSource:Au(e.platformSource)}:{},...e.payload!==void 0?{payload:e.payload}:{}}}async request(e,r,n){if(!this.apiKey||!this.apiKey.trim())throw new Je("missing_api_key","Server API key is not configured (CLAUDE_MEM_SERVER_API_KEY).");let o=`${this.baseUrl}${r}`,s={method:e,headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.apiKey}`}};n!==void 0&&(s.body=JSON.stringify(n));let i;try{i=await wu(o,s,this.timeoutMs)}catch(c){let u=c instanceof Error?c.message:String(c),l=/timed out|timeout/i.test(u);throw new Je(l?"timeout":"transport",`Server ${e} ${r} failed: ${u}`,{cause:c})}if(!i.ok){let c=await i.text().catch(()=>"");throw new Je("http_error",`Server ${e} ${r} returned ${i.status}: ${tT(c,200)}`,{status:i.status})}let a=await i.text();if(!a||a.length===0)return{};try{return JSON.parse(a)}catch(c){throw new Je("invalid_response",`Server ${e} ${r} returned non-JSON response`,{cause:c})}}};function Y_(t){return t instanceof Je}function eT(t){return t.replace(/\/+$/,"")}function Au(t){return typeof t=="string"?Vs(t):null}function tT(t,e){return t.length<=e?t:`${t.slice(0,e)}\u2026`}function Mu(){let e=(Ms().CLAUDE_MEM_RUNTIME??"worker").trim().toLowerCase();return e==="server"||e==="server-beta"?"server":"worker"}function X_(){let t=Ms(),e=(...i)=>{for(let a of i){let c=(a??"").trim();if(c.length>0)return c}return""},r=e(t.CLAUDE_MEM_SERVER_URL,t.CLAUDE_MEM_SERVER_BETA_URL),n=e(t.CLAUDE_MEM_SERVER_API_KEY,t.CLAUDE_MEM_SERVER_BETA_API_KEY),o=e(t.CLAUDE_MEM_SERVER_PROJECT_ID,t.CLAUDE_MEM_SERVER_BETA_PROJECT_ID);if(!r)return y.warn("HOOK","[server-fallback] reason=missing_base_url"),null;if(!n)return y.warn("HOOK","[server-fallback] reason=missing_api_key"),null;if(!o)return y.warn("HOOK","[server-fallback] reason=missing_project_id"),null;let s={serverBaseUrl:r,apiKey:n};return{runtime:"server",client:new Gs(s),projectId:o,serverBaseUrl:r}}var ST={},rT="1.3.3";console.log=(...t)=>{y.error("CONSOLE","Intercepted console output (MCP protocol protection)",void 0,{args:t})};var iy=!1,ay=(()=>{if(typeof __dirname<"u")return __dirname;try{return(0,nt.dirname)((0,sy.fileURLToPath)(ST.url))}catch{return iy=!0,process.cwd()}})(),Nu=T_()??(0,nt.resolve)(ay,"worker-service.cjs");function nT(){iy&&((0,Ks.existsSync)(Nu)||y.error("SYSTEM","mcp-server: dirname resolution failed (both __dirname and import.meta.url are unavailable). Fell back to process.cwd() and the resolved WORKER_SCRIPT_PATH does not exist. This is the actual problem \u2014 the worker bundle is fine, but mcp-server cannot locate it. Worker auto-start will fail until the dirname-resolution path is fixed.",{workerScriptPath:Nu,mcpServerDir:ay}))}var Q_={search:"/api/search",timeline:"/api/timeline"};async function Cu(t,e){y.debug("SYSTEM","\u2192 Worker API",void 0,{endpoint:t,params:e});let r=new URLSearchParams;for(let[o,s]of Object.entries(e))s!=null&&r.append(o,String(s));let n=`${t}?${r}`;try{let o=await Xn(n);if(!o.ok){let i=await o.text();throw new Error(`Worker API error (${o.status}): ${i}`)}let s=await o.json();return y.debug("SYSTEM","\u2190 Worker API success",void 0,{endpoint:t}),s}catch(o){return y.error("SYSTEM","\u2190 Worker API error",{endpoint:t},o instanceof Error?o:new Error(String(o))),{content:[{type:"text",text:`Error calling Worker API: ${o instanceof Error?o.message:String(o)}`}],isError:!0}}}async function oT(t,e){y.debug("SYSTEM","\u2192 Worker API text",void 0,{endpoint:t,params:e});let r=new URLSearchParams;for(let[o,s]of Object.entries(e))s!=null&&r.append(o,String(s));let n=`${t}?${r}`;try{let o=await Xn(n);if(!o.ok){let i=await o.text();throw new Error(`Worker API error (${o.status}): ${i}`)}let s=await o.text();return y.debug("SYSTEM","\u2190 Worker API text success",void 0,{endpoint:t}),{content:[{type:"text",text:s}]}}catch(o){return y.error("SYSTEM","\u2190 Worker API text error",{endpoint:t},o instanceof Error?o:new Error(String(o))),{content:[{type:"text",text:`Error calling Worker API: ${o instanceof Error?o.message:String(o)}`}],isError:!0}}}async function sT(t,e){let r=await Xn(t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!r.ok){let o=await r.text();throw new Error(`Worker API error (${r.status}): ${o}`)}let n=await r.json();return y.debug("HTTP","Worker API success (POST)",void 0,{endpoint:t}),{content:[{type:"text",text:JSON.stringify(n,null,2)}]}}async function sr(t,e){y.debug("HTTP","Worker API request (POST)",void 0,{endpoint:t});try{return await sT(t,e)}catch(r){return y.error("HTTP","Worker API error (POST)",{endpoint:t},r instanceof Error?r:new Error(String(r))),{content:[{type:"text",text:`Error calling Worker API: ${r instanceof Error?r.message:String(r)}`}],isError:!0}}}async function iT(){try{return(await Xn("/api/health")).ok}catch(t){return y.debug("SYSTEM","Worker health check failed",{},t instanceof Error?t:new Error(String(t))),!1}}function aT(){if(Mu()!=="server")return null;let e=X_();return e?{...e,available:!0}:{runtime:"server",available:!1,reason:"server runtime is selected but configuration is incomplete (missing url, api key, or project id)"}}function oo(t){return Y_(t)?{content:[{type:"text",text:`Server error (${t.kind}${t.status?` ${t.status}`:""}): ${t.message}`}],isError:!0}:{content:[{type:"text",text:`Tool error: ${t instanceof Error?t.message:String(t)}`}],isError:!0}}function so(t){return{content:[{type:"text",text:JSON.stringify(t,null,2)}]}}function io(t){let e=aT();if(!e)throw new Je("transport",`${t} requires CLAUDE_MEM_RUNTIME=server. Current runtime is "worker"; use the existing search/timeline/get_observations tools for worker-mode memory access.`);if(!e.available)throw new Je("missing_api_key",`${t}: ${e.reason}`);return e}async function ey(t){try{let e=io("observation_add");if(typeof t?.content!="string"||t.content.trim().length===0)throw new Error('observation_add: "content" is required');let n={projectId:t.projectId&&t.projectId.trim().length>0?t.projectId:e.projectId,content:t.content,...t.serverSessionId!==void 0?{serverSessionId:t.serverSessionId}:{},...t.kind!==void 0?{kind:t.kind}:{},...t.metadata!==void 0?{metadata:t.metadata}:{}},o=await e.client.addObservation(n);return so(o)}catch(e){return oo(e)}}function Bs(t){return typeof t=="string"?Vs(t):null}async function cT(t){try{let e=io("observation_record_event");if(typeof t?.eventType!="string"||t.eventType.trim().length===0)throw new Error('observation_record_event: "eventType" is required');let n={projectId:t.projectId&&t.projectId.trim().length>0?t.projectId:e.projectId,sourceType:t.sourceType??"api",eventType:t.eventType,occurredAtEpoch:typeof t.occurredAtEpoch=="number"?t.occurredAtEpoch:Date.now(),...t.serverSessionId!==void 0?{serverSessionId:t.serverSessionId}:{},...t.contentSessionId!==void 0?{contentSessionId:t.contentSessionId}:{},...t.memorySessionId!==void 0?{memorySessionId:t.memorySessionId}:{},...t.platformSource!==void 0?{platformSource:Bs(t.platformSource)}:{},...t.payload!==void 0?{payload:t.payload}:{},...t.generate!==void 0?{generate:t.generate}:{}},o=await e.client.recordEvent(n);return so(o)}catch(e){return oo(e)}}async function ty(t){try{let e=io("observation_search");if(typeof t?.query!="string"||t.query.trim().length===0)throw new Error('observation_search: "query" is required');let n={projectId:t.projectId&&t.projectId.trim().length>0?t.projectId:e.projectId,query:t.query,...t.limit!==void 0?{limit:t.limit}:{},...t.platformSource!==void 0?{platformSource:Bs(t.platformSource)}:{}},o=await e.client.searchObservations(n);return so(o)}catch(e){return oo(e)}}async function ry(t){try{let e=io("observation_context");if(typeof t?.query!="string"||t.query.trim().length===0)throw new Error('observation_context: "query" is required');let n={projectId:t.projectId&&t.projectId.trim().length>0?t.projectId:e.projectId,query:t.query,...t.limit!==void 0?{limit:t.limit}:{},...t.platformSource!==void 0?{platformSource:Bs(t.platformSource)}:{}},o=await e.client.contextObservations(n);return so(o)}catch(e){return oo(e)}}function uT(t){return Array.isArray(t.projects)?t.projects.map(e=>typeof e=="string"?e.trim():"").filter(Boolean):typeof t.projects=="string"?t.projects.split(",").map(e=>e.trim()).filter(Boolean):typeof t.project=="string"&&t.project.trim().length>0?[t.project.trim()]:[]}async function lT(t){let e=uT(t);return e.length===0?{content:[{type:"text",text:'session_start_context: "project" or "projects" is required'}],isError:!0}:oT("/api/context/inject",{projects:e.join(","),...t.platformSource!==void 0?{platformSource:Bs(t.platformSource)}:{},...t.full!==void 0?{full:t.full}:{},...t.colors!==void 0?{colors:t.colors}:{}})}async function dT(t){try{let e=io("observation_generation_status"),r=(t?.jobId??t?.job_id??"").trim();if(!r)throw new Error('observation_generation_status: "jobId" is required');let n=await e.client.getJobStatus(r);return so(n)}catch(e){return oo(e)}}async function pT(){if(await iT())return!0;y.warn("SYSTEM","Worker not available, attempting auto-start for MCP client"),nT();try{let t=xu(),e=await R_(t,Nu);return e==="dead"&&y.error("SYSTEM","Worker auto-start failed \u2014 MCP tools that require the worker (search, timeline, get_observations) will fail until the worker is running. Check earlier log lines for the specific failure reason (Bun not found, missing worker bundle, port conflict, etc.)."),e!=="dead"}catch(t){return y.error("SYSTEM","Worker auto-start threw \u2014 MCP tools that require the worker (search, timeline, get_observations) will fail until the worker is running.",void 0,t instanceof Error?t:new Error(String(t))),!1}}var cy=[{name:"__IMPORTANT",description:`3-LAYER WORKFLOW (ALWAYS FOLLOW):
|
|
224
224
|
1. search(query) \u2192 Get index with IDs (~50-100 tokens/result)
|
|
225
225
|
2. timeline(anchor=ID) \u2192 Get context around interesting results
|
|
226
226
|
3. get_observations([IDs]) \u2192 Fetch full details ONLY for filtered IDs
|
|
@@ -240,8 +240,8 @@ NEVER fetch full details without filtering first. 10x token savings.`,inputSchem
|
|
|
240
240
|
\`get_observations(ids=[...])\` # ALWAYS batch for 2+ items
|
|
241
241
|
Returns: Complete details (~500-1000 tokens/result)
|
|
242
242
|
|
|
243
|
-
**Why:** 10x token savings. Never fetch full details without filtering first.`}]})},{name:"search",description:"Step 1: Search memory. Returns index with IDs. Params: query, limit, project, platformSource, type, obs_type, dateStart, dateEnd, offset, orderBy",inputSchema:{type:"object",properties:{query:{type:"string",description:"Search query"},limit:{type:"number",description:"Max results (default 20)"},project:{type:"string",description:"Filter by project name"},platformSource:{type:"string",description:"Filter by platform source (e.g. claude, codex, cursor) \u2014 restricts results to that agent's own memory"},type:{type:"string",description:"Filter by observation type"},obs_type:{type:"string",description:"Filter by obs_type field"},dateStart:{type:"string",description:"Start date filter (ISO)"},dateEnd:{type:"string",description:"End date filter (ISO)"},offset:{type:"number",description:"Pagination offset"},orderBy:{type:"string",description:"Sort order: date_desc or date_asc"}},additionalProperties:!0},handler:async t=>{let e=Q_.search;return await Cu(e,t)}},{name:"timeline",description:"Step 2: Get context around results. Params: anchor (observation ID) OR query (finds anchor automatically), depth_before, depth_after, project",inputSchema:{type:"object",properties:{anchor:{type:"number",description:"Observation ID to center the timeline around"},query:{type:"string",description:"Query to find anchor automatically"},depth_before:{type:"number",description:"Items before anchor (default 3)"},depth_after:{type:"number",description:"Items after anchor (default 3)"},project:{type:"string",description:"Filter by project name"}},additionalProperties:!0},handler:async t=>{let e=Q_.timeline;return await Cu(e,t)}},{name:"get_observations",description:"Step 3: Fetch full details for filtered IDs. Params: ids (array of observation IDs, required), orderBy, limit, project",inputSchema:{type:"object",properties:{ids:{type:"array",items:{type:"number"},description:"Array of observation IDs to fetch (required)"}},required:["ids"],additionalProperties:!0},handler:async t=>await sr("/api/observations/batch",t)},{name:"session_start_context",description:"Render the exact worker-mode SessionStart context for a project. Calls /api/context/inject and returns the same text hooks inject at startup. Params: project OR projects, platformSource, full, colors.",inputSchema:{type:"object",properties:{project:{type:"string",description:"Project name, e.g. claude-mem/night-parsnip"},projects:{oneOf:[{type:"array",items:{type:"string"}},{type:"string"}],description:"Project chain for context injection. Array or comma-separated string; last project is treated as primary."},platformSource:{type:"string",description:"Optional platform source filter, e.g. claude, codex, cursor"},full:{type:"boolean",description:"When true, request full context instead of configured limits"},colors:{type:"boolean",description:"When true, request human terminal-color formatting"}},additionalProperties:!1},handler:async t=>lT(t??{})},{name:"delete_observations_by_project",description:"Delete ALL observations and summaries for a project. Irreversible. Requires confirm:true to execute; pass dryRun:true to preview the counts that would be deleted without touching data. Params: project (required), confirm, dryRun.",inputSchema:{type:"object",properties:{project:{type:"string",description:"Project name whose observations+summaries to delete"},confirm:{type:"boolean",description:"Must be true to actually delete (ignored when dryRun:true)"},dryRun:{type:"boolean",description:"When true, only returns the counts that would be deleted"}},required:["project"],additionalProperties:!1},handler:async t=>await sr("/api/memory/delete-by-project",t??{})},{name:"observation_add",description:"Insert a manual observation directly into server storage. Calls /v1/memories \u2014 does NOT enqueue generation. Server runtime only. Params: content (required), projectId (optional, falls back to settings), serverSessionId, kind, metadata.",inputSchema:{type:"object",properties:{projectId:{type:"string",description:"Project id (falls back to CLAUDE_MEM_SERVER_PROJECT_ID)"},serverSessionId:{type:"string",description:"Optional server_session_id to attach the observation to"},kind:{type:"string",description:"Observation kind (default: manual)"},content:{type:"string",description:"Observation content (required)"},metadata:{type:"object",description:"Free-form metadata object",additionalProperties:!0}},required:["content"],additionalProperties:!1},handler:async t=>ey(t??{})},{name:"observation_record_event",description:"Record an agent event into the server. Calls /v1/events \u2014 server inserts the event row, the outbox row, and enqueues a generation job atomically. Server runtime only.",inputSchema:{type:"object",properties:{projectId:{type:"string"},eventType:{type:"string",description:"Event type (required), e.g. PostToolUse, UserPromptSubmit"},sourceType:{type:"string",enum:["hook","worker","provider","server","api"]},serverSessionId:{type:"string"},contentSessionId:{type:"string"},memorySessionId:{type:"string"},platformSource:{type:"string",description:"Optional platform source for session linkage and event scoping"},payload:{description:"Event payload (any JSON value)"},occurredAtEpoch:{type:"number",description:"Unix epoch millis (defaults to now)"},generate:{type:"boolean",description:"If false, skip generation job (default: true)"}},required:["eventType"],additionalProperties:!1},handler:async t=>cT(t??{})},{name:"observation_search",description:"Full-text search across generated observations using the server's GIN tsvector index (Phase 1). Calls /v1/search. Server runtime only. Params: query (required), projectId (optional), platformSource, limit (default 20, max 100).",inputSchema:{type:"object",properties:{projectId:{type:"string"},query:{type:"string",description:"Search query (required)"},platformSource:{type:"string",description:"Optional platform source filter, e.g. claude, codex, cursor"},limit:{type:"number",description:"Max results (default 20, max 100)"}},required:["query"],additionalProperties:!1},handler:async t=>ty(t??{})},{name:"observation_context",description:"Get top-N relevant observations for context injection. Returns matched observations AND a pre-joined context string suitable for prompt injection. Calls /v1/context. Server runtime only.",inputSchema:{type:"object",properties:{projectId:{type:"string"},query:{type:"string",description:"Search query (required)"},platformSource:{type:"string",description:"Optional platform source filter, e.g. claude, codex, cursor"},limit:{type:"number",description:"Max observations (default 10, max 50)"}},required:["query"],additionalProperties:!1},handler:async t=>ry(t??{})},{name:"observation_generation_status",description:"Look up the status of an observation generation job by id. Calls /v1/jobs/:id. Server runtime only. Returns the same payload as REST.",inputSchema:{type:"object",properties:{jobId:{type:"string",description:"Generation job id (required)"}},required:["jobId"],additionalProperties:!1},handler:async t=>dT(t??{})},{name:"memory_add",description:"Compatibility alias for observation_add. Same behavior; same schema modulo the legacy field names.",inputSchema:{type:"object",properties:{projectId:{type:"string"},kind:{type:"string"},content:{type:"string"},narrative:{type:"string",description:"Legacy alias for content; mapped to content if content is missing"},title:{type:"string",description:"Legacy field; appended to metadata.title"},metadata:{type:"object",additionalProperties:!0}},required:["projectId"],additionalProperties:!0},handler:async t=>{let e={projectId:t?.projectId,content:t?.content??t?.narrative??"",kind:t?.kind,metadata:{...t?.metadata??{},...t?.title?{title:t.title}:{}}};return ey(e)}},{name:"memory_search",description:"Compatibility alias for observation_search. Same FTS path; same /v1/search REST endpoint.",inputSchema:{type:"object",properties:{projectId:{type:"string"},query:{type:"string"},platformSource:{type:"string"},limit:{type:"number"}},required:["projectId","query"],additionalProperties:!0},handler:async t=>ty(t??{})},{name:"memory_context",description:"Compatibility alias for observation_context. Same /v1/context REST endpoint.",inputSchema:{type:"object",properties:{projectId:{type:"string"},query:{type:"string"},platformSource:{type:"string"},limit:{type:"number"}},required:["projectId","query"],additionalProperties:!0},handler:async t=>ry(t??{})},{name:"smart_search",description:"Search codebase for symbols, functions, classes using tree-sitter AST parsing. Returns folded structural views with token counts. Use path parameter to scope the search.",inputSchema:{type:"object",properties:{query:{type:"string",description:"Search term \u2014 matches against symbol names, file names, and file content"},path:{type:"string",description:"Root directory to search (default: current working directory)"},max_results:{type:"number",description:"Maximum results to return (default: 20)"},file_pattern:{type:"string",description:'Substring filter for file paths (e.g. ".ts", "src/services")'}},required:["query"]},handler:async t=>{let e=(0,nt.resolve)(t.path||process.cwd()),r=await K_(e,t.query,{maxResults:t.max_results||20,filePattern:t.file_pattern});return{content:[{type:"text",text:J_(r,t.query)}]}}},{name:"smart_unfold",description:"Expand a specific symbol (function, class, method) from a file. Returns the full source code of just that symbol. Use after smart_search or smart_outline to read specific code.",inputSchema:{type:"object",properties:{file_path:{type:"string",description:"Path to the source file"},symbol_name:{type:"string",description:"Name of the symbol to unfold (function, class, method, etc.)"}},required:["file_path","symbol_name"]},handler:async t=>{let e=(0,nt.resolve)(t.file_path),r=await(0,Nu.readFile)(e,"utf-8"),n=Ou(e)??process.cwd(),o=W_(r,e,t.symbol_name,n);if(o)return{content:[{type:"text",text:o}]};let s=Hs(r,e,n);if(s.symbols.length>0){let i=s.symbols.map(a=>` - ${a.name} (${a.kind})`).join(`
|
|
243
|
+
**Why:** 10x token savings. Never fetch full details without filtering first.`}]})},{name:"search",description:"Step 1: Search memory. Returns index with IDs. Params: query, limit, project, platformSource, type, obs_type, dateStart, dateEnd, offset, orderBy",inputSchema:{type:"object",properties:{query:{type:"string",description:"Search query"},limit:{type:"number",description:"Max results (default 20)"},project:{type:"string",description:"Filter by project name"},platformSource:{type:"string",description:"Filter by platform source (e.g. claude, codex, cursor) \u2014 restricts results to that agent's own memory"},type:{type:"string",description:"Filter by observation type"},obs_type:{type:"string",description:"Filter by obs_type field"},dateStart:{type:"string",description:"Start date filter (ISO)"},dateEnd:{type:"string",description:"End date filter (ISO)"},offset:{type:"number",description:"Pagination offset"},orderBy:{type:"string",description:"Sort order: date_desc or date_asc"}},additionalProperties:!0},handler:async t=>{let e=Q_.search;return await Cu(e,t)}},{name:"timeline",description:"Step 2: Get context around results. Params: anchor (observation ID) OR query (finds anchor automatically), depth_before, depth_after, project",inputSchema:{type:"object",properties:{anchor:{type:"number",description:"Observation ID to center the timeline around"},query:{type:"string",description:"Query to find anchor automatically"},depth_before:{type:"number",description:"Items before anchor (default 3)"},depth_after:{type:"number",description:"Items after anchor (default 3)"},project:{type:"string",description:"Filter by project name"}},additionalProperties:!0},handler:async t=>{let e=Q_.timeline;return await Cu(e,t)}},{name:"get_observations",description:"Step 3: Fetch full details for filtered IDs. Params: ids (array of observation IDs, required), orderBy, limit, project",inputSchema:{type:"object",properties:{ids:{type:"array",items:{type:"number"},description:"Array of observation IDs to fetch (required)"}},required:["ids"],additionalProperties:!0},handler:async t=>await sr("/api/observations/batch",t)},{name:"session_start_context",description:"Render the exact worker-mode SessionStart context for a project. Calls /api/context/inject and returns the same text hooks inject at startup. Params: project OR projects, platformSource, full, colors.",inputSchema:{type:"object",properties:{project:{type:"string",description:"Project name, e.g. claude-mem/night-parsnip"},projects:{oneOf:[{type:"array",items:{type:"string"}},{type:"string"}],description:"Project chain for context injection. Array or comma-separated string; last project is treated as primary."},platformSource:{type:"string",description:"Optional platform source filter, e.g. claude, codex, cursor"},full:{type:"boolean",description:"When true, request full context instead of configured limits"},colors:{type:"boolean",description:"When true, request human terminal-color formatting"}},additionalProperties:!1},handler:async t=>lT(t??{})},{name:"delete_observations_by_project",description:"Delete ALL observations and summaries for a project. Irreversible. Requires confirm:true to execute; pass dryRun:true to preview the counts that would be deleted without touching data. Params: project (required), confirm, dryRun.",inputSchema:{type:"object",properties:{project:{type:"string",description:"Project name whose observations+summaries to delete"},confirm:{type:"boolean",description:"Must be true to actually delete (ignored when dryRun:true)"},dryRun:{type:"boolean",description:"When true, only returns the counts that would be deleted"}},required:["project"],additionalProperties:!1},handler:async t=>await sr("/api/memory/delete-by-project",t??{})},{name:"observation_add",description:"Insert a manual observation directly into server storage. Calls /v1/memories \u2014 does NOT enqueue generation. Server runtime only. Params: content (required), projectId (optional, falls back to settings), serverSessionId, kind, metadata.",inputSchema:{type:"object",properties:{projectId:{type:"string",description:"Project id (falls back to CLAUDE_MEM_SERVER_PROJECT_ID)"},serverSessionId:{type:"string",description:"Optional server_session_id to attach the observation to"},kind:{type:"string",description:"Observation kind (default: manual)"},content:{type:"string",description:"Observation content (required)"},metadata:{type:"object",description:"Free-form metadata object",additionalProperties:!0}},required:["content"],additionalProperties:!1},handler:async t=>ey(t??{})},{name:"observation_record_event",description:"Record an agent event into the server. Calls /v1/events \u2014 server inserts the event row, the outbox row, and enqueues a generation job atomically. Server runtime only.",inputSchema:{type:"object",properties:{projectId:{type:"string"},eventType:{type:"string",description:"Event type (required), e.g. PostToolUse, UserPromptSubmit"},sourceType:{type:"string",enum:["hook","worker","provider","server","api"]},serverSessionId:{type:"string"},contentSessionId:{type:"string"},memorySessionId:{type:"string"},platformSource:{type:"string",description:"Optional platform source for session linkage and event scoping"},payload:{description:"Event payload (any JSON value)"},occurredAtEpoch:{type:"number",description:"Unix epoch millis (defaults to now)"},generate:{type:"boolean",description:"If false, skip generation job (default: true)"}},required:["eventType"],additionalProperties:!1},handler:async t=>cT(t??{})},{name:"observation_search",description:"Full-text search across generated observations using the server's GIN tsvector index (Phase 1). Calls /v1/search. Server runtime only. Params: query (required), projectId (optional), platformSource, limit (default 20, max 100).",inputSchema:{type:"object",properties:{projectId:{type:"string"},query:{type:"string",description:"Search query (required)"},platformSource:{type:"string",description:"Optional platform source filter, e.g. claude, codex, cursor"},limit:{type:"number",description:"Max results (default 20, max 100)"}},required:["query"],additionalProperties:!1},handler:async t=>ty(t??{})},{name:"observation_context",description:"Get top-N relevant observations for context injection. Returns matched observations AND a pre-joined context string suitable for prompt injection. Calls /v1/context. Server runtime only.",inputSchema:{type:"object",properties:{projectId:{type:"string"},query:{type:"string",description:"Search query (required)"},platformSource:{type:"string",description:"Optional platform source filter, e.g. claude, codex, cursor"},limit:{type:"number",description:"Max observations (default 10, max 50)"}},required:["query"],additionalProperties:!1},handler:async t=>ry(t??{})},{name:"observation_generation_status",description:"Look up the status of an observation generation job by id. Calls /v1/jobs/:id. Server runtime only. Returns the same payload as REST.",inputSchema:{type:"object",properties:{jobId:{type:"string",description:"Generation job id (required)"}},required:["jobId"],additionalProperties:!1},handler:async t=>dT(t??{})},{name:"memory_add",description:"Compatibility alias for observation_add. Same behavior; same schema modulo the legacy field names.",inputSchema:{type:"object",properties:{projectId:{type:"string"},kind:{type:"string"},content:{type:"string"},narrative:{type:"string",description:"Legacy alias for content; mapped to content if content is missing"},title:{type:"string",description:"Legacy field; appended to metadata.title"},metadata:{type:"object",additionalProperties:!0}},required:["projectId"],additionalProperties:!0},handler:async t=>{let e={projectId:t?.projectId,content:t?.content??t?.narrative??"",kind:t?.kind,metadata:{...t?.metadata??{},...t?.title?{title:t.title}:{}}};return ey(e)}},{name:"memory_search",description:"Compatibility alias for observation_search. Same FTS path; same /v1/search REST endpoint.",inputSchema:{type:"object",properties:{projectId:{type:"string"},query:{type:"string"},platformSource:{type:"string"},limit:{type:"number"}},required:["projectId","query"],additionalProperties:!0},handler:async t=>ty(t??{})},{name:"memory_context",description:"Compatibility alias for observation_context. Same /v1/context REST endpoint.",inputSchema:{type:"object",properties:{projectId:{type:"string"},query:{type:"string"},platformSource:{type:"string"},limit:{type:"number"}},required:["projectId","query"],additionalProperties:!0},handler:async t=>ry(t??{})},{name:"smart_search",description:"Search codebase for symbols, functions, classes using tree-sitter AST parsing. Returns folded structural views with token counts. Use path parameter to scope the search.",inputSchema:{type:"object",properties:{query:{type:"string",description:"Search term \u2014 matches against symbol names, file names, and file content"},path:{type:"string",description:"Root directory to search (default: current working directory)"},max_results:{type:"number",description:"Maximum results to return (default: 20)"},file_pattern:{type:"string",description:'Substring filter for file paths (e.g. ".ts", "src/services")'}},required:["query"]},handler:async t=>{let e=(0,nt.resolve)(t.path||process.cwd()),r=await K_(e,t.query,{maxResults:t.max_results||20,filePattern:t.file_pattern});return{content:[{type:"text",text:J_(r,t.query)}]}}},{name:"smart_unfold",description:"Expand a specific symbol (function, class, method) from a file. Returns the full source code of just that symbol. Use after smart_search or smart_outline to read specific code.",inputSchema:{type:"object",properties:{file_path:{type:"string",description:"Path to the source file"},symbol_name:{type:"string",description:"Name of the symbol to unfold (function, class, method, etc.)"}},required:["file_path","symbol_name"]},handler:async t=>{let e=(0,nt.resolve)(t.file_path),r=await(0,Du.readFile)(e,"utf-8"),n=Ou(e)??process.cwd(),o=W_(r,e,t.symbol_name,n);if(o)return{content:[{type:"text",text:o}]};let s=Hs(r,e,n);if(s.symbols.length>0){let i=s.symbols.map(a=>` - ${a.name} (${a.kind})`).join(`
|
|
244
244
|
`);return{content:[{type:"text",text:`Symbol "${t.symbol_name}" not found in ${t.file_path}.
|
|
245
245
|
|
|
246
246
|
Available symbols:
|
|
247
|
-
${i}`}]}}return{content:[{type:"text",text:`Could not parse ${t.file_path}. File may be unsupported or empty.`}]}}},{name:"smart_outline",description:"Get structural outline of a file \u2014 shows all symbols (functions, classes, methods, types) with signatures but bodies folded. Much cheaper than reading the full file.",inputSchema:{type:"object",properties:{file_path:{type:"string",description:"Path to the source file"}},required:["file_path"]},handler:async t=>{let e=(0,nt.resolve)(t.file_path),r=await(0,
|
|
247
|
+
${i}`}]}}return{content:[{type:"text",text:`Could not parse ${t.file_path}. File may be unsupported or empty.`}]}}},{name:"smart_outline",description:"Get structural outline of a file \u2014 shows all symbols (functions, classes, methods, types) with signatures but bodies folded. Much cheaper than reading the full file.",inputSchema:{type:"object",properties:{file_path:{type:"string",description:"Path to the source file"}},required:["file_path"]},handler:async t=>{let e=(0,nt.resolve)(t.file_path),r=await(0,Du.readFile)(e,"utf-8"),n=Hs(r,e,Ou(e)??process.cwd());return n.symbols.length>0?{content:[{type:"text",text:Ur(n)}]}:{content:[{type:"text",text:`Could not parse ${t.file_path}. File may use an unsupported language or be empty.`}]}}},{name:"build_corpus",description:"Build a knowledge corpus from filtered observations. Creates a queryable knowledge agent. Params: name (required), description, project, types (comma-separated), concepts (comma-separated), files (comma-separated), query, dateStart, dateEnd, limit",inputSchema:{type:"object",properties:{name:{type:"string",description:"Corpus name (used as filename)"},description:{type:"string",description:"What this corpus is about"},project:{type:"string",description:"Filter by project"},types:{type:"string",description:"Comma-separated observation types: decision,bugfix,feature,refactor,discovery,change"},concepts:{type:"string",description:"Comma-separated concepts to filter by"},files:{type:"string",description:"Comma-separated file paths to filter by"},query:{type:"string",description:"Semantic search query"},dateStart:{type:"string",description:"Start date (ISO format)"},dateEnd:{type:"string",description:"End date (ISO format)"},limit:{type:"number",description:"Maximum observations (default 500)"}},required:["name"],additionalProperties:!0},handler:async t=>await sr("/api/corpus",t)},{name:"list_corpora",description:"List all knowledge corpora with their stats and priming status",inputSchema:{type:"object",properties:{},additionalProperties:!0},handler:async t=>await Cu("/api/corpus",t)},{name:"prime_corpus",description:"Prime a knowledge corpus \u2014 creates an AI session loaded with the corpus knowledge. Must be called before query_corpus.",inputSchema:{type:"object",properties:{name:{type:"string",description:"Name of the corpus to prime"}},required:["name"],additionalProperties:!0},handler:async t=>{let{name:e,...r}=t;if(typeof e!="string"||e.trim()==="")throw new Error("Missing required argument: name");return await sr(`/api/corpus/${encodeURIComponent(e)}/prime`,r)}},{name:"query_corpus",description:"Ask a question to a primed knowledge corpus. The corpus must be primed first with prime_corpus.",inputSchema:{type:"object",properties:{name:{type:"string",description:"Name of the corpus to query"},question:{type:"string",description:"The question to ask"}},required:["name","question"],additionalProperties:!0},handler:async t=>{let{name:e,...r}=t;if(typeof e!="string"||e.trim()==="")throw new Error("Missing required argument: name");return await sr(`/api/corpus/${encodeURIComponent(e)}/query`,r)}},{name:"rebuild_corpus",description:"Rebuild a knowledge corpus from its stored filter \u2014 re-runs the search to refresh with new observations. Does not re-prime the session.",inputSchema:{type:"object",properties:{name:{type:"string",description:"Name of the corpus to rebuild"}},required:["name"],additionalProperties:!0},handler:async t=>{let{name:e,...r}=t;if(typeof e!="string"||e.trim()==="")throw new Error("Missing required argument: name");return await sr(`/api/corpus/${encodeURIComponent(e)}/rebuild`,r)}},{name:"reprime_corpus",description:"Create a fresh knowledge agent session for a corpus, clearing prior Q&A context. Use when conversation has drifted or after rebuilding.",inputSchema:{type:"object",properties:{name:{type:"string",description:"Name of the corpus to reprime"}},required:["name"],additionalProperties:!0},handler:async t=>{let{name:e,...r}=t;if(typeof e!="string"||e.trim()==="")throw new Error("Missing required argument: name");return await sr(`/api/corpus/${encodeURIComponent(e)}/reprime`,r)}}],ju=new zs({name:"keepmind",version:rT},{capabilities:{tools:{}}});ju.setRequestHandler(la,async()=>({tools:cy.map(t=>({name:t.name,description:t.description,inputSchema:t.inputSchema}))}));ju.setRequestHandler(mn,async t=>{let e=cy.find(r=>r.name===t.params.name);if(!e)throw new Error(`Unknown tool: ${t.params.name}`);try{return await e.handler(t.params.arguments||{})}catch(r){return y.error("SYSTEM","Tool execution failed",{tool:t.params.name},r instanceof Error?r:new Error(String(r))),{content:[{type:"text",text:`Tool execution failed: ${r instanceof Error?r.message:String(r)}`}],isError:!0}}});var fT=3e4,no=null,ny=!1;function Js(){ao("stdio-closed")}function uy(t){y.warn("SYSTEM","MCP stdio stream errored, shutting down",{message:t.message}),ao("stdio-error")}function mT(){process.stdin.on("end",Js),process.stdin.on("close",Js),process.stdin.on("error",uy)}function hT(){process.stdin.off("end",Js),process.stdin.off("close",Js),process.stdin.off("error",uy)}function gT(){if(process.platform==="win32")return;let t=process.ppid;no=setInterval(()=>{(process.ppid===1||process.ppid!==t)&&(y.info("SYSTEM","Parent process died, self-exiting to prevent orphan",{initialPpid:t,currentPpid:process.ppid}),ao())},fT),no.unref&&no.unref()}function ao(t="shutdown"){ny||(ny=!0,no&&clearInterval(no),hT(),y.info("SYSTEM","MCP server shutting down",{reason:t}),process.exit(0))}process.on("SIGTERM",ao);process.on("SIGINT",ao);function _T(){try{let t=(0,oy.homedir)(),e=[(0,nt.resolve)(t,".claude","plugins","marketplaces","keepmind"),(0,nt.resolve)(t,".config","claude","plugins","marketplaces","keepmind")],r=e.some(i=>i&&(0,Ks.existsSync)(i)),n=[(0,nt.resolve)(t,".claude","plugins","cache","keepmind","keepmind"),(0,nt.resolve)(t,".config","claude","plugins","cache","keepmind","keepmind")],o=n.some(i=>i&&(0,Ks.existsSync)(i)),s=n[0];!r&&o&&y.error("SYSTEM","keepmind MCP started but no marketplace directory was found at ~/.claude/plugins/marketplaces/keepmind or the XDG equivalent. The IDE plugin loader needs that directory to fire keepmind hooks (SessionStart, PostToolUse, Stop, etc.). Without it, MCP search will work but no new memories will be captured. To self-heal, run: node ~/.claude/plugins/cache/keepmind/keepmind/*/scripts/smart-install.js (or reinstall the plugin from the marketplace).",{marketplaceCandidates:e,cacheRoot:s})}catch{}}async function yT(){let t=new Is;mT(),await ju.connect(t),y.info("SYSTEM","Claude-mem search server started"),_T(),gT(),setTimeout(async()=>{if(Mu()==="server"){y.info("SYSTEM","MCP runtime=server \u2014 skipping worker auto-start",void 0,{});return}await pT()?y.info("SYSTEM","Worker available",void 0,{}):(y.error("SYSTEM","Worker not available",void 0,{}),y.error("SYSTEM","Tools will fail until Worker is started"),y.error("SYSTEM","Start Worker with: npm run worker:restart"))},0)}yT().catch(t=>{y.error("SYSTEM","Fatal error",void 0,t),process.exit(0)});
|