@reddb-io/red-skills 2.74.0 → 2.74.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,15 +1,15 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
3
- var D_=Object.create;var Di=Object.defineProperty;var j_=Object.getOwnPropertyDescriptor;var M_=Object.getOwnPropertyNames;var q_=Object.getPrototypeOf,L_=Object.prototype.hasOwnProperty;var pt=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var v=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Qu=(e,t)=>{for(var r in t)Di(e,r,{get:t[r],enumerable:!0})},B_=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of M_(t))!L_.call(e,o)&&o!==r&&Di(e,o,{get:()=>t[o],enumerable:!(n=j_(t,o))||n.enumerable});return e};var ji=(e,t,r)=>(r=e!=null?D_(q_(e)):{},B_(t||!e||!e.__esModule?Di(r,"default",{value:e,enumerable:!0}):r,e));var sn=v(U=>{"use strict";Object.defineProperty(U,"__esModule",{value:!0});U.regexpCode=U.getEsmExportName=U.getProperty=U.safeStringify=U.stringify=U.strConcat=U.addCodeArg=U.str=U._=U.nil=U._Code=U.Name=U.IDENTIFIER=U._CodeOrName=void 0;var nn=class{};U._CodeOrName=nn;U.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Dt=class extends nn{constructor(t){if(super(),!U.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};U.Name=Dt;var De=class extends nn{constructor(t){super(),this._items=typeof t=="string"?[t]:t}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let t=this._items[0];return t===""||t==='""'}get str(){var t;return(t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var t;return(t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,n)=>(n instanceof Dt&&(r[n.str]=(r[n.str]||0)+1),r),{})}};U._Code=De;U.nil=new De("");function kp(e,...t){let r=[e[0]],n=0;for(;n<t.length;)na(r,t[n]),r.push(e[++n]);return new De(r)}U._=kp;var ra=new De("+");function $p(e,...t){let r=[on(e[0])],n=0;for(;n<t.length;)r.push(ra),na(r,t[n]),r.push(ra,on(e[++n]));return Ub(r),new De(r)}U.str=$p;function na(e,t){t instanceof De?e.push(...t._items):t instanceof Dt?e.push(t):e.push(Kb(t))}U.addCodeArg=na;function Ub(e){let t=1;for(;t<e.length-1;){if(e[t]===ra){let r=Fb(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+"}t++}}function Fb(e,t){if(t==='""')return e;if(e==='""')return t;if(typeof e=="string")return t instanceof Dt||e[e.length-1]!=='"'?void 0:typeof t!="string"?`${e.slice(0,-1)}${t}"`:t[0]==='"'?e.slice(0,-1)+t.slice(1):void 0;if(typeof t=="string"&&t[0]==='"'&&!(e instanceof Dt))return`"${e}${t.slice(1)}`}function Vb(e,t){return t.emptyStr()?e:e.emptyStr()?t:$p`${e}${t}`}U.strConcat=Vb;function Kb(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:on(Array.isArray(e)?e.join(","):e)}function Hb(e){return new De(on(e))}U.stringify=Hb;function on(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}U.safeStringify=on;function Wb(e){return typeof e=="string"&&U.IDENTIFIER.test(e)?new De(`.${e}`):kp`[${e}]`}U.getProperty=Wb;function Gb(e){if(typeof e=="string"&&U.IDENTIFIER.test(e))return new De(`${e}`);throw new Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}U.getEsmExportName=Gb;function Jb(e){return new De(e.toString())}U.regexpCode=Jb});var sa=v(Te=>{"use strict";Object.defineProperty(Te,"__esModule",{value:!0});Te.ValueScope=Te.ValueScopeName=Te.Scope=Te.varKinds=Te.UsedValueState=void 0;var Ee=sn(),oa=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},So;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(So||(Te.UsedValueState=So={}));Te.varKinds={const:new Ee.Name("const"),let:new Ee.Name("let"),var:new Ee.Name("var")};var Eo=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof Ee.Name?t:this.name(t)}name(t){return new Ee.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return`${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};Te.Scope=Eo;var To=class extends Ee.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0,Ee._)`.${new Ee.Name(r)}[${n}]`}};Te.ValueScopeName=To;var Qb=(0,Ee._)`\n`,ia=class extends Eo{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?Qb:Ee.nil}}get(){return this._scope}name(t){return new To(t,this._newName(t))}value(t,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let o=this.toName(t),{prefix:i}=o,s=(n=r.key)!==null&&n!==void 0?n:r.ref,a=this._values[i];if(a){let u=a.get(s);if(u)return u}else a=this._values[i]=new Map;a.set(s,o);let c=this._scope[i]||(this._scope[i]=[]),l=c.length;return c[l]=r.ref,o.setValue(r,{property:i,itemIndex:l}),o}getValue(t,r){let n=this._values[t];if(n)return n.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Ee._)`${t}${n.scopePath}`})}scopeCode(t=this._values,r,n){return this._reduceValues(t,o=>{if(o.value===void 0)throw new Error(`CodeGen: name "${o}" has no value`);return o.value.code},r,n)}_reduceValues(t,r,n={},o){let i=Ee.nil;for(let s in t){let a=t[s];if(!a)continue;let c=n[s]=n[s]||new Map;a.forEach(l=>{if(c.has(l))return;c.set(l,So.Started);let u=r(l);if(u){let d=this.opts.es5?Te.varKinds.var:Te.varKinds.const;i=(0,Ee._)`${i}${d} ${l} = ${u};${this.opts._n}`}else if(u=o?.(l))i=(0,Ee._)`${i}${u}${this.opts._n}`;else throw new oa(l);c.set(l,So.Completed)})}return i}};Te.ValueScope=ia});var C=v(D=>{"use strict";Object.defineProperty(D,"__esModule",{value:!0});D.or=D.and=D.not=D.CodeGen=D.operators=D.varKinds=D.ValueScopeName=D.ValueScope=D.Scope=D.Name=D.regexpCode=D.stringify=D.getProperty=D.nil=D.strConcat=D.str=D._=void 0;var L=sn(),Ue=sa(),_t=sn();Object.defineProperty(D,"_",{enumerable:!0,get:function(){return _t._}});Object.defineProperty(D,"str",{enumerable:!0,get:function(){return _t.str}});Object.defineProperty(D,"strConcat",{enumerable:!0,get:function(){return _t.strConcat}});Object.defineProperty(D,"nil",{enumerable:!0,get:function(){return _t.nil}});Object.defineProperty(D,"getProperty",{enumerable:!0,get:function(){return _t.getProperty}});Object.defineProperty(D,"stringify",{enumerable:!0,get:function(){return _t.stringify}});Object.defineProperty(D,"regexpCode",{enumerable:!0,get:function(){return _t.regexpCode}});Object.defineProperty(D,"Name",{enumerable:!0,get:function(){return _t.Name}});var Io=sa();Object.defineProperty(D,"Scope",{enumerable:!0,get:function(){return Io.Scope}});Object.defineProperty(D,"ValueScope",{enumerable:!0,get:function(){return Io.ValueScope}});Object.defineProperty(D,"ValueScopeName",{enumerable:!0,get:function(){return Io.ValueScopeName}});Object.defineProperty(D,"varKinds",{enumerable:!0,get:function(){return Io.varKinds}});D.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 ct=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},aa=class extends ct{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n}render({es5:t,_n:r}){let n=t?Ue.varKinds.var:this.varKind,o=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${o};`+r}optimizeNames(t,r){if(t[this.name.str])return this.rhs&&(this.rhs=sr(this.rhs,t,r)),this}get names(){return this.rhs instanceof L._CodeOrName?this.rhs.names:{}}},Po=class extends ct{constructor(t,r,n){super(),this.lhs=t,this.rhs=r,this.sideEffects=n}render({_n:t}){return`${this.lhs} = ${this.rhs};`+t}optimizeNames(t,r){if(!(this.lhs instanceof L.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=sr(this.rhs,t,r),this}get names(){let t=this.lhs instanceof L.Name?{}:{...this.lhs.names};return zo(t,this.rhs)}},ca=class extends Po{constructor(t,r,n,o){super(t,n,o),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},ua=class extends ct{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},la=class extends ct{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},da=class extends ct{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},fa=class extends ct{constructor(t){super(),this.code=t}render({_n:t}){return`${this.code};`+t}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(t,r){return this.code=sr(this.code,t,r),this}get names(){return this.code instanceof L._CodeOrName?this.code.names:{}}},an=class extends ct{constructor(t=[]){super(),this.nodes=t}render(t){return this.nodes.reduce((r,n)=>r+n.render(t),"")}optimizeNodes(){let{nodes:t}=this,r=t.length;for(;r--;){let n=t[r].optimizeNodes();Array.isArray(n)?t.splice(r,1,...n):n?t[r]=n:t.splice(r,1)}return t.length>0?this:void 0}optimizeNames(t,r){let{nodes:n}=this,o=n.length;for(;o--;){let i=n[o];i.optimizeNames(t,r)||(Yb(t,i.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>qt(t,r.names),{})}},ut=class extends an{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},pa=class extends an{},ir=class extends ut{};ir.kind="else";var jt=class e extends ut{constructor(t,r){super(r),this.condition=t}render(t){let r=`if(${this.condition})`+super.render(t);return this.else&&(r+="else "+this.else.render(t)),r}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new ir(n):n}if(r)return t===!1?r instanceof e?r:r.nodes:this.nodes.length?this:new e(Sp(t),r instanceof e?[r]:r.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(t,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(t,r),!!(super.optimizeNames(t,r)||this.else))return this.condition=sr(this.condition,t,r),this}get names(){let t=super.names;return zo(t,this.condition),this.else&&qt(t,this.else.names),t}};jt.kind="if";var Mt=class extends ut{};Mt.kind="for";var ma=class extends Mt{constructor(t){super(),this.iteration=t}render(t){return`for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=sr(this.iteration,t,r),this}get names(){return qt(super.names,this.iteration.names)}},ha=class extends Mt{constructor(t,r,n,o){super(),this.varKind=t,this.name=r,this.from=n,this.to=o}render(t){let r=t.es5?Ue.varKinds.var:this.varKind,{name:n,from:o,to:i}=this;return`for(${r} ${n}=${o}; ${n}<${i}; ${n}++)`+super.render(t)}get names(){let t=zo(super.names,this.from);return zo(t,this.to)}},Ro=class extends Mt{constructor(t,r,n,o){super(),this.loop=t,this.varKind=r,this.name=n,this.iterable=o}render(t){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iterable=sr(this.iterable,t,r),this}get names(){return qt(super.names,this.iterable.names)}},cn=class extends ut{constructor(t,r,n){super(),this.name=t,this.args=r,this.async=n}render(t){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}};cn.kind="func";var un=class extends an{render(t){return"return "+super.render(t)}};un.kind="return";var ga=class extends ut{render(t){let r="try"+super.render(t);return this.catch&&(r+=this.catch.render(t)),this.finally&&(r+=this.finally.render(t)),r}optimizeNodes(){var t,r;return super.optimizeNodes(),(t=this.catch)===null||t===void 0||t.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(t,r){var n,o;return super.optimizeNames(t,r),(n=this.catch)===null||n===void 0||n.optimizeNames(t,r),(o=this.finally)===null||o===void 0||o.optimizeNames(t,r),this}get names(){let t=super.names;return this.catch&&qt(t,this.catch.names),this.finally&&qt(t,this.finally.names),t}},ln=class extends ut{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};ln.kind="catch";var dn=class extends ut{render(t){return"finally"+super.render(t)}};dn.kind="finally";var ya=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
4
- `:""},this._extScope=t,this._scope=new Ue.Scope({parent:t}),this._nodes=[new pa]}toString(){return this._root.render(this.opts)}name(t){return this._scope.name(t)}scopeName(t){return this._extScope.name(t)}scopeValue(t,r){let n=this._extScope.value(t,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(t,r){return this._extScope.getValue(t,r)}scopeRefs(t){return this._extScope.scopeRefs(t,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(t,r,n,o){let i=this._scope.toName(r);return n!==void 0&&o&&(this._constants[i.str]=n),this._leafNode(new aa(t,i,n)),i}const(t,r,n){return this._def(Ue.varKinds.const,t,r,n)}let(t,r,n){return this._def(Ue.varKinds.let,t,r,n)}var(t,r,n){return this._def(Ue.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new Po(t,r,n))}add(t,r){return this._leafNode(new ca(t,D.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==L.nil&&this._leafNode(new fa(t)),this}object(...t){let r=["{"];for(let[n,o]of t)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(t,r,n){if(this._blockNode(new jt(t)),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(t){return this._elseNode(new jt(t))}else(){return this._elseNode(new ir)}endIf(){return this._endBlockNode(jt,ir)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new ma(t),r)}forRange(t,r,n,o,i=this.opts.es5?Ue.varKinds.var:Ue.varKinds.let){let s=this._scope.toName(t);return this._for(new ha(i,s,r,n),()=>o(s))}forOf(t,r,n,o=Ue.varKinds.const){let i=this._scope.toName(t);if(this.opts.es5){let s=r instanceof L.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,L._)`${s}.length`,a=>{this.var(i,(0,L._)`${s}[${a}]`),n(i)})}return this._for(new Ro("of",o,i,r),()=>n(i))}forIn(t,r,n,o=this.opts.es5?Ue.varKinds.var:Ue.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0,L._)`Object.keys(${r})`,n);let i=this._scope.toName(t);return this._for(new Ro("in",o,i,r),()=>n(i))}endFor(){return this._endBlockNode(Mt)}label(t){return this._leafNode(new ua(t))}break(t){return this._leafNode(new la(t))}return(t){let r=new un;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(un)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new ga;if(this._blockNode(o),this.code(t),r){let i=this.name("e");this._currNode=o.catch=new ln(i),r(i)}return n&&(this._currNode=o.finally=new dn,this.code(n)),this._endBlockNode(ln,dn)}throw(t){return this._leafNode(new da(t))}block(t,r){return this._blockStarts.push(this._nodes.length),t&&this.code(t).endBlock(r),this}endBlock(t){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||t!==void 0&&n!==t)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${t} expected`);return this._nodes.length=r,this}func(t,r=L.nil,n,o){return this._blockNode(new cn(t,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(cn)}optimize(t=1){for(;t-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(t){return this._currNode.nodes.push(t),this}_blockNode(t){this._currNode.nodes.push(t),this._nodes.push(t)}_endBlockNode(t,r){let n=this._currNode;if(n instanceof t||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${t.kind}/${r.kind}`:t.kind}"`)}_elseNode(t){let r=this._currNode;if(!(r instanceof jt))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=t,this}get _root(){return this._nodes[0]}get _currNode(){let t=this._nodes;return t[t.length-1]}set _currNode(t){let r=this._nodes;r[r.length-1]=t}};D.CodeGen=ya;function qt(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function zo(e,t){return t instanceof L._CodeOrName?qt(e,t.names):e}function sr(e,t,r){if(e instanceof L.Name)return n(e);if(!o(e))return e;return new L._Code(e._items.reduce((i,s)=>(s instanceof L.Name&&(s=n(s)),s instanceof L._Code?i.push(...s._items):i.push(s),i),[]));function n(i){let s=r[i.str];return s===void 0||t[i.str]!==1?i:(delete t[i.str],s)}function o(i){return i instanceof L._Code&&i._items.some(s=>s instanceof L.Name&&t[s.str]===1&&r[s.str]!==void 0)}}function Yb(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function Sp(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,L._)`!${_a(e)}`}D.not=Sp;var Xb=Ep(D.operators.AND);function e0(...e){return e.reduce(Xb)}D.and=e0;var t0=Ep(D.operators.OR);function r0(...e){return e.reduce(t0)}D.or=r0;function Ep(e){return(t,r)=>t===L.nil?r:r===L.nil?t:(0,L._)`${_a(t)} ${e} ${_a(r)}`}function _a(e){return e instanceof L.Name?e:(0,L._)`(${e})`}});var B=v(j=>{"use strict";Object.defineProperty(j,"__esModule",{value:!0});j.checkStrictMode=j.getErrorPath=j.Type=j.useFunc=j.setEvaluated=j.evaluatedPropsToName=j.mergeEvaluated=j.eachItem=j.unescapeJsonPointer=j.escapeJsonPointer=j.escapeFragment=j.unescapeFragment=j.schemaRefOrVal=j.schemaHasRulesButRef=j.schemaHasRules=j.checkUnknownRules=j.alwaysValidSchema=j.toHash=void 0;var H=C(),n0=sn();function o0(e){let t={};for(let r of e)t[r]=!0;return t}j.toHash=o0;function i0(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(Rp(e,t),!zp(t,e.self.RULES.all))}j.alwaysValidSchema=i0;function Rp(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema||typeof t=="boolean")return;let o=n.RULES.keywords;for(let i in t)o[i]||Ap(e,`unknown keyword: "${i}"`)}j.checkUnknownRules=Rp;function zp(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}j.schemaHasRules=zp;function s0(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}j.schemaHasRulesButRef=s0;function a0({topSchemaRef:e,schemaPath:t},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,H._)`${r}`}return(0,H._)`${e}${t}${(0,H.getProperty)(n)}`}j.schemaRefOrVal=a0;function c0(e){return Ip(decodeURIComponent(e))}j.unescapeFragment=c0;function u0(e){return encodeURIComponent(va(e))}j.escapeFragment=u0;function va(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}j.escapeJsonPointer=va;function Ip(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}j.unescapeJsonPointer=Ip;function l0(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}j.eachItem=l0;function Tp({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(o,i,s,a)=>{let c=s===void 0?i:s instanceof H.Name?(i instanceof H.Name?e(o,i,s):t(o,i,s),s):i instanceof H.Name?(t(o,s,i),i):r(i,s);return a===H.Name&&!(c instanceof H.Name)?n(o,c):c}}j.mergeEvaluated={props:Tp({mergeNames:(e,t,r)=>e.if((0,H._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,H._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,H._)`${r} || {}`).code((0,H._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,H._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,H._)`${r} || {}`),ba(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:Op}),items:Tp({mergeNames:(e,t,r)=>e.if((0,H._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,H._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,H._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,H._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function Op(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,H._)`{}`);return t!==void 0&&ba(e,r,t),r}j.evaluatedPropsToName=Op;function ba(e,t,r){Object.keys(r).forEach(n=>e.assign((0,H._)`${t}${(0,H.getProperty)(n)}`,!0))}j.setEvaluated=ba;var Pp={};function d0(e,t){return e.scopeValue("func",{ref:t,code:Pp[t.code]||(Pp[t.code]=new n0._Code(t.code))})}j.useFunc=d0;var wa;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(wa||(j.Type=wa={}));function f0(e,t,r){if(e instanceof H.Name){let n=t===wa.Num;return r?n?(0,H._)`"[" + ${e} + "]"`:(0,H._)`"['" + ${e} + "']"`:n?(0,H._)`"/" + ${e}`:(0,H._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,H.getProperty)(e).toString():"/"+va(e)}j.getErrorPath=f0;function Ap(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===!0)throw new Error(t);e.self.logger.warn(t)}}j.checkStrictMode=Ap});var lt=v(xa=>{"use strict";Object.defineProperty(xa,"__esModule",{value:!0});var he=C(),p0={data:new he.Name("data"),valCxt:new he.Name("valCxt"),instancePath:new he.Name("instancePath"),parentData:new he.Name("parentData"),parentDataProperty:new he.Name("parentDataProperty"),rootData:new he.Name("rootData"),dynamicAnchors:new he.Name("dynamicAnchors"),vErrors:new he.Name("vErrors"),errors:new he.Name("errors"),this:new he.Name("this"),self:new he.Name("self"),scope:new he.Name("scope"),json:new he.Name("json"),jsonPos:new he.Name("jsonPos"),jsonLen:new he.Name("jsonLen"),jsonPart:new he.Name("jsonPart")};xa.default=p0});var fn=v(ge=>{"use strict";Object.defineProperty(ge,"__esModule",{value:!0});ge.extendErrors=ge.resetErrorsCount=ge.reportExtraError=ge.reportError=ge.keyword$DataError=ge.keywordError=void 0;var Z=C(),Oo=B(),xe=lt();ge.keywordError={message:({keyword:e})=>(0,Z.str)`must pass "${e}" keyword validation`};ge.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,Z.str)`"${e}" keyword must be ${t} ($data)`:(0,Z.str)`"${e}" keyword is invalid ($data)`};function m0(e,t=ge.keywordError,r,n){let{it:o}=e,{gen:i,compositeRule:s,allErrors:a}=o,c=Dp(e,t,r);n??(s||a)?Np(i,c):Cp(o,(0,Z._)`[${c}]`)}ge.reportError=m0;function h0(e,t=ge.keywordError,r){let{it:n}=e,{gen:o,compositeRule:i,allErrors:s}=n,a=Dp(e,t,r);Np(o,a),i||s||Cp(n,xe.default.vErrors)}ge.reportExtraError=h0;function g0(e,t){e.assign(xe.default.errors,t),e.if((0,Z._)`${xe.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,Z._)`${xe.default.vErrors}.length`,t),()=>e.assign(xe.default.vErrors,null)))}ge.resetErrorsCount=g0;function y0({gen:e,keyword:t,schemaValue:r,data:n,errsCount:o,it:i}){if(o===void 0)throw new Error("ajv implementation error");let s=e.name("err");e.forRange("i",o,xe.default.errors,a=>{e.const(s,(0,Z._)`${xe.default.vErrors}[${a}]`),e.if((0,Z._)`${s}.instancePath === undefined`,()=>e.assign((0,Z._)`${s}.instancePath`,(0,Z.strConcat)(xe.default.instancePath,i.errorPath))),e.assign((0,Z._)`${s}.schemaPath`,(0,Z.str)`${i.errSchemaPath}/${t}`),i.opts.verbose&&(e.assign((0,Z._)`${s}.schema`,r),e.assign((0,Z._)`${s}.data`,n))})}ge.extendErrors=y0;function Np(e,t){let r=e.const("err",t);e.if((0,Z._)`${xe.default.vErrors} === null`,()=>e.assign(xe.default.vErrors,(0,Z._)`[${r}]`),(0,Z._)`${xe.default.vErrors}.push(${r})`),e.code((0,Z._)`${xe.default.errors}++`)}function Cp(e,t){let{gen:r,validateName:n,schemaEnv:o}=e;o.$async?r.throw((0,Z._)`new ${e.ValidationError}(${t})`):(r.assign((0,Z._)`${n}.errors`,t),r.return(!1))}var Lt={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 Dp(e,t,r){let{createErrors:n}=e.it;return n===!1?(0,Z._)`{}`:_0(e,t,r)}function _0(e,t,r={}){let{gen:n,it:o}=e,i=[w0(o,r),v0(e,r)];return b0(e,t,i),n.object(...i)}function w0({errorPath:e},{instancePath:t}){let r=t?(0,Z.str)`${e}${(0,Oo.getErrorPath)(t,Oo.Type.Str)}`:e;return[xe.default.instancePath,(0,Z.strConcat)(xe.default.instancePath,r)]}function v0({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let o=n?t:(0,Z.str)`${t}/${e}`;return r&&(o=(0,Z.str)`${o}${(0,Oo.getErrorPath)(r,Oo.Type.Str)}`),[Lt.schemaPath,o]}function b0(e,{params:t,message:r},n){let{keyword:o,data:i,schemaValue:s,it:a}=e,{opts:c,propertyName:l,topSchemaRef:u,schemaPath:d}=a;n.push([Lt.keyword,o],[Lt.params,typeof t=="function"?t(e):t||(0,Z._)`{}`]),c.messages&&n.push([Lt.message,typeof r=="function"?r(e):r]),c.verbose&&n.push([Lt.schema,s],[Lt.parentSchema,(0,Z._)`${u}${d}`],[xe.default.data,i]),l&&n.push([Lt.propertyName,l])}});var Mp=v(ar=>{"use strict";Object.defineProperty(ar,"__esModule",{value:!0});ar.boolOrEmptySchema=ar.topBoolOrEmptySchema=void 0;var x0=fn(),k0=C(),$0=lt(),S0={message:"boolean schema is false"};function E0(e){let{gen:t,schema:r,validateName:n}=e;r===!1?jp(e,!1):typeof r=="object"&&r.$async===!0?t.return($0.default.data):(t.assign((0,k0._)`${n}.errors`,null),t.return(!0))}ar.topBoolOrEmptySchema=E0;function T0(e,t){let{gen:r,schema:n}=e;n===!1?(r.var(t,!1),jp(e)):r.var(t,!0)}ar.boolOrEmptySchema=T0;function jp(e,t){let{gen:r,data:n}=e,o={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,x0.reportError)(o,S0,void 0,t)}});var ka=v(cr=>{"use strict";Object.defineProperty(cr,"__esModule",{value:!0});cr.getRules=cr.isJSONType=void 0;var P0=["string","number","integer","boolean","null","object","array"],R0=new Set(P0);function z0(e){return typeof e=="string"&&R0.has(e)}cr.isJSONType=z0;function I0(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}cr.getRules=I0});var $a=v(wt=>{"use strict";Object.defineProperty(wt,"__esModule",{value:!0});wt.shouldUseRule=wt.shouldUseGroup=wt.schemaHasRulesForType=void 0;function O0({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&qp(e,n)}wt.schemaHasRulesForType=O0;function qp(e,t){return t.rules.some(r=>Lp(e,r))}wt.shouldUseGroup=qp;function Lp(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(n=>e[n]!==void 0))}wt.shouldUseRule=Lp});var pn=v(ye=>{"use strict";Object.defineProperty(ye,"__esModule",{value:!0});ye.reportTypeError=ye.checkDataTypes=ye.checkDataType=ye.coerceAndCheckDataType=ye.getJSONTypes=ye.getSchemaTypes=ye.DataType=void 0;var A0=ka(),N0=$a(),C0=fn(),N=C(),Bp=B(),ur;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(ur||(ye.DataType=ur={}));function D0(e){let t=Zp(e.type);if(t.includes("null")){if(e.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===!0&&t.push("null")}return t}ye.getSchemaTypes=D0;function Zp(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(A0.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}ye.getJSONTypes=Zp;function j0(e,t){let{gen:r,data:n,opts:o}=e,i=M0(t,o.coerceTypes),s=t.length>0&&!(i.length===0&&t.length===1&&(0,N0.schemaHasRulesForType)(e,t[0]));if(s){let a=Ea(t,n,o.strictNumbers,ur.Wrong);r.if(a,()=>{i.length?q0(e,t,i):Ta(e)})}return s}ye.coerceAndCheckDataType=j0;var Up=new Set(["string","number","integer","boolean","null"]);function M0(e,t){return t?e.filter(r=>Up.has(r)||t==="array"&&r==="array"):[]}function q0(e,t,r){let{gen:n,data:o,opts:i}=e,s=n.let("dataType",(0,N._)`typeof ${o}`),a=n.let("coerced",(0,N._)`undefined`);i.coerceTypes==="array"&&n.if((0,N._)`${s} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,N._)`${o}[0]`).assign(s,(0,N._)`typeof ${o}`).if(Ea(t,o,i.strictNumbers),()=>n.assign(a,o))),n.if((0,N._)`${a} !== undefined`);for(let l of r)(Up.has(l)||l==="array"&&i.coerceTypes==="array")&&c(l);n.else(),Ta(e),n.endIf(),n.if((0,N._)`${a} !== undefined`,()=>{n.assign(o,a),L0(e,a)});function c(l){switch(l){case"string":n.elseIf((0,N._)`${s} == "number" || ${s} == "boolean"`).assign(a,(0,N._)`"" + ${o}`).elseIf((0,N._)`${o} === null`).assign(a,(0,N._)`""`);return;case"number":n.elseIf((0,N._)`${s} == "boolean" || ${o} === null
3
+ var D_=Object.create;var Di=Object.defineProperty;var j_=Object.getOwnPropertyDescriptor;var M_=Object.getOwnPropertyNames;var q_=Object.getPrototypeOf,L_=Object.prototype.hasOwnProperty;var ht=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var v=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Qu=(e,t)=>{for(var r in t)Di(e,r,{get:t[r],enumerable:!0})},B_=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of M_(t))!L_.call(e,o)&&o!==r&&Di(e,o,{get:()=>t[o],enumerable:!(n=j_(t,o))||n.enumerable});return e};var ji=(e,t,r)=>(r=e!=null?D_(q_(e)):{},B_(t||!e||!e.__esModule?Di(r,"default",{value:e,enumerable:!0}):r,e));var sn=v(U=>{"use strict";Object.defineProperty(U,"__esModule",{value:!0});U.regexpCode=U.getEsmExportName=U.getProperty=U.safeStringify=U.stringify=U.strConcat=U.addCodeArg=U.str=U._=U.nil=U._Code=U.Name=U.IDENTIFIER=U._CodeOrName=void 0;var nn=class{};U._CodeOrName=nn;U.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var jt=class extends nn{constructor(t){if(super(),!U.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};U.Name=jt;var De=class extends nn{constructor(t){super(),this._items=typeof t=="string"?[t]:t}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let t=this._items[0];return t===""||t==='""'}get str(){var t;return(t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var t;return(t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,n)=>(n instanceof jt&&(r[n.str]=(r[n.str]||0)+1),r),{})}};U._Code=De;U.nil=new De("");function kp(e,...t){let r=[e[0]],n=0;for(;n<t.length;)na(r,t[n]),r.push(e[++n]);return new De(r)}U._=kp;var ra=new De("+");function $p(e,...t){let r=[on(e[0])],n=0;for(;n<t.length;)r.push(ra),na(r,t[n]),r.push(ra,on(e[++n]));return Ub(r),new De(r)}U.str=$p;function na(e,t){t instanceof De?e.push(...t._items):t instanceof jt?e.push(t):e.push(Kb(t))}U.addCodeArg=na;function Ub(e){let t=1;for(;t<e.length-1;){if(e[t]===ra){let r=Fb(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+"}t++}}function Fb(e,t){if(t==='""')return e;if(e==='""')return t;if(typeof e=="string")return t instanceof jt||e[e.length-1]!=='"'?void 0:typeof t!="string"?`${e.slice(0,-1)}${t}"`:t[0]==='"'?e.slice(0,-1)+t.slice(1):void 0;if(typeof t=="string"&&t[0]==='"'&&!(e instanceof jt))return`"${e}${t.slice(1)}`}function Vb(e,t){return t.emptyStr()?e:e.emptyStr()?t:$p`${e}${t}`}U.strConcat=Vb;function Kb(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:on(Array.isArray(e)?e.join(","):e)}function Hb(e){return new De(on(e))}U.stringify=Hb;function on(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}U.safeStringify=on;function Wb(e){return typeof e=="string"&&U.IDENTIFIER.test(e)?new De(`.${e}`):kp`[${e}]`}U.getProperty=Wb;function Gb(e){if(typeof e=="string"&&U.IDENTIFIER.test(e))return new De(`${e}`);throw new Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}U.getEsmExportName=Gb;function Jb(e){return new De(e.toString())}U.regexpCode=Jb});var sa=v(Te=>{"use strict";Object.defineProperty(Te,"__esModule",{value:!0});Te.ValueScope=Te.ValueScopeName=Te.Scope=Te.varKinds=Te.UsedValueState=void 0;var Ee=sn(),oa=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},So;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(So||(Te.UsedValueState=So={}));Te.varKinds={const:new Ee.Name("const"),let:new Ee.Name("let"),var:new Ee.Name("var")};var Eo=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof Ee.Name?t:this.name(t)}name(t){return new Ee.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return`${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};Te.Scope=Eo;var To=class extends Ee.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0,Ee._)`.${new Ee.Name(r)}[${n}]`}};Te.ValueScopeName=To;var Qb=(0,Ee._)`\n`,ia=class extends Eo{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?Qb:Ee.nil}}get(){return this._scope}name(t){return new To(t,this._newName(t))}value(t,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let o=this.toName(t),{prefix:i}=o,s=(n=r.key)!==null&&n!==void 0?n:r.ref,a=this._values[i];if(a){let u=a.get(s);if(u)return u}else a=this._values[i]=new Map;a.set(s,o);let c=this._scope[i]||(this._scope[i]=[]),l=c.length;return c[l]=r.ref,o.setValue(r,{property:i,itemIndex:l}),o}getValue(t,r){let n=this._values[t];if(n)return n.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Ee._)`${t}${n.scopePath}`})}scopeCode(t=this._values,r,n){return this._reduceValues(t,o=>{if(o.value===void 0)throw new Error(`CodeGen: name "${o}" has no value`);return o.value.code},r,n)}_reduceValues(t,r,n={},o){let i=Ee.nil;for(let s in t){let a=t[s];if(!a)continue;let c=n[s]=n[s]||new Map;a.forEach(l=>{if(c.has(l))return;c.set(l,So.Started);let u=r(l);if(u){let d=this.opts.es5?Te.varKinds.var:Te.varKinds.const;i=(0,Ee._)`${i}${d} ${l} = ${u};${this.opts._n}`}else if(u=o?.(l))i=(0,Ee._)`${i}${u}${this.opts._n}`;else throw new oa(l);c.set(l,So.Completed)})}return i}};Te.ValueScope=ia});var C=v(D=>{"use strict";Object.defineProperty(D,"__esModule",{value:!0});D.or=D.and=D.not=D.CodeGen=D.operators=D.varKinds=D.ValueScopeName=D.ValueScope=D.Scope=D.Name=D.regexpCode=D.stringify=D.getProperty=D.nil=D.strConcat=D.str=D._=void 0;var L=sn(),Ue=sa(),vt=sn();Object.defineProperty(D,"_",{enumerable:!0,get:function(){return vt._}});Object.defineProperty(D,"str",{enumerable:!0,get:function(){return vt.str}});Object.defineProperty(D,"strConcat",{enumerable:!0,get:function(){return vt.strConcat}});Object.defineProperty(D,"nil",{enumerable:!0,get:function(){return vt.nil}});Object.defineProperty(D,"getProperty",{enumerable:!0,get:function(){return vt.getProperty}});Object.defineProperty(D,"stringify",{enumerable:!0,get:function(){return vt.stringify}});Object.defineProperty(D,"regexpCode",{enumerable:!0,get:function(){return vt.regexpCode}});Object.defineProperty(D,"Name",{enumerable:!0,get:function(){return vt.Name}});var Io=sa();Object.defineProperty(D,"Scope",{enumerable:!0,get:function(){return Io.Scope}});Object.defineProperty(D,"ValueScope",{enumerable:!0,get:function(){return Io.ValueScope}});Object.defineProperty(D,"ValueScopeName",{enumerable:!0,get:function(){return Io.ValueScopeName}});Object.defineProperty(D,"varKinds",{enumerable:!0,get:function(){return Io.varKinds}});D.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 ct=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},aa=class extends ct{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n}render({es5:t,_n:r}){let n=t?Ue.varKinds.var:this.varKind,o=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${o};`+r}optimizeNames(t,r){if(t[this.name.str])return this.rhs&&(this.rhs=sr(this.rhs,t,r)),this}get names(){return this.rhs instanceof L._CodeOrName?this.rhs.names:{}}},Po=class extends ct{constructor(t,r,n){super(),this.lhs=t,this.rhs=r,this.sideEffects=n}render({_n:t}){return`${this.lhs} = ${this.rhs};`+t}optimizeNames(t,r){if(!(this.lhs instanceof L.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=sr(this.rhs,t,r),this}get names(){let t=this.lhs instanceof L.Name?{}:{...this.lhs.names};return zo(t,this.rhs)}},ca=class extends Po{constructor(t,r,n,o){super(t,n,o),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},ua=class extends ct{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},la=class extends ct{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},da=class extends ct{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},fa=class extends ct{constructor(t){super(),this.code=t}render({_n:t}){return`${this.code};`+t}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(t,r){return this.code=sr(this.code,t,r),this}get names(){return this.code instanceof L._CodeOrName?this.code.names:{}}},an=class extends ct{constructor(t=[]){super(),this.nodes=t}render(t){return this.nodes.reduce((r,n)=>r+n.render(t),"")}optimizeNodes(){let{nodes:t}=this,r=t.length;for(;r--;){let n=t[r].optimizeNodes();Array.isArray(n)?t.splice(r,1,...n):n?t[r]=n:t.splice(r,1)}return t.length>0?this:void 0}optimizeNames(t,r){let{nodes:n}=this,o=n.length;for(;o--;){let i=n[o];i.optimizeNames(t,r)||(Yb(t,i.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>Lt(t,r.names),{})}},ut=class extends an{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},pa=class extends an{},ir=class extends ut{};ir.kind="else";var Mt=class e extends ut{constructor(t,r){super(r),this.condition=t}render(t){let r=`if(${this.condition})`+super.render(t);return this.else&&(r+="else "+this.else.render(t)),r}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new ir(n):n}if(r)return t===!1?r instanceof e?r:r.nodes:this.nodes.length?this:new e(Sp(t),r instanceof e?[r]:r.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(t,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(t,r),!!(super.optimizeNames(t,r)||this.else))return this.condition=sr(this.condition,t,r),this}get names(){let t=super.names;return zo(t,this.condition),this.else&&Lt(t,this.else.names),t}};Mt.kind="if";var qt=class extends ut{};qt.kind="for";var ma=class extends qt{constructor(t){super(),this.iteration=t}render(t){return`for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=sr(this.iteration,t,r),this}get names(){return Lt(super.names,this.iteration.names)}},ha=class extends qt{constructor(t,r,n,o){super(),this.varKind=t,this.name=r,this.from=n,this.to=o}render(t){let r=t.es5?Ue.varKinds.var:this.varKind,{name:n,from:o,to:i}=this;return`for(${r} ${n}=${o}; ${n}<${i}; ${n}++)`+super.render(t)}get names(){let t=zo(super.names,this.from);return zo(t,this.to)}},Ro=class extends qt{constructor(t,r,n,o){super(),this.loop=t,this.varKind=r,this.name=n,this.iterable=o}render(t){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iterable=sr(this.iterable,t,r),this}get names(){return Lt(super.names,this.iterable.names)}},cn=class extends ut{constructor(t,r,n){super(),this.name=t,this.args=r,this.async=n}render(t){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}};cn.kind="func";var un=class extends an{render(t){return"return "+super.render(t)}};un.kind="return";var ga=class extends ut{render(t){let r="try"+super.render(t);return this.catch&&(r+=this.catch.render(t)),this.finally&&(r+=this.finally.render(t)),r}optimizeNodes(){var t,r;return super.optimizeNodes(),(t=this.catch)===null||t===void 0||t.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(t,r){var n,o;return super.optimizeNames(t,r),(n=this.catch)===null||n===void 0||n.optimizeNames(t,r),(o=this.finally)===null||o===void 0||o.optimizeNames(t,r),this}get names(){let t=super.names;return this.catch&&Lt(t,this.catch.names),this.finally&&Lt(t,this.finally.names),t}},ln=class extends ut{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};ln.kind="catch";var dn=class extends ut{render(t){return"finally"+super.render(t)}};dn.kind="finally";var ya=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
4
+ `:""},this._extScope=t,this._scope=new Ue.Scope({parent:t}),this._nodes=[new pa]}toString(){return this._root.render(this.opts)}name(t){return this._scope.name(t)}scopeName(t){return this._extScope.name(t)}scopeValue(t,r){let n=this._extScope.value(t,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(t,r){return this._extScope.getValue(t,r)}scopeRefs(t){return this._extScope.scopeRefs(t,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(t,r,n,o){let i=this._scope.toName(r);return n!==void 0&&o&&(this._constants[i.str]=n),this._leafNode(new aa(t,i,n)),i}const(t,r,n){return this._def(Ue.varKinds.const,t,r,n)}let(t,r,n){return this._def(Ue.varKinds.let,t,r,n)}var(t,r,n){return this._def(Ue.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new Po(t,r,n))}add(t,r){return this._leafNode(new ca(t,D.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==L.nil&&this._leafNode(new fa(t)),this}object(...t){let r=["{"];for(let[n,o]of t)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(t,r,n){if(this._blockNode(new Mt(t)),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(t){return this._elseNode(new Mt(t))}else(){return this._elseNode(new ir)}endIf(){return this._endBlockNode(Mt,ir)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new ma(t),r)}forRange(t,r,n,o,i=this.opts.es5?Ue.varKinds.var:Ue.varKinds.let){let s=this._scope.toName(t);return this._for(new ha(i,s,r,n),()=>o(s))}forOf(t,r,n,o=Ue.varKinds.const){let i=this._scope.toName(t);if(this.opts.es5){let s=r instanceof L.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,L._)`${s}.length`,a=>{this.var(i,(0,L._)`${s}[${a}]`),n(i)})}return this._for(new Ro("of",o,i,r),()=>n(i))}forIn(t,r,n,o=this.opts.es5?Ue.varKinds.var:Ue.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0,L._)`Object.keys(${r})`,n);let i=this._scope.toName(t);return this._for(new Ro("in",o,i,r),()=>n(i))}endFor(){return this._endBlockNode(qt)}label(t){return this._leafNode(new ua(t))}break(t){return this._leafNode(new la(t))}return(t){let r=new un;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(un)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new ga;if(this._blockNode(o),this.code(t),r){let i=this.name("e");this._currNode=o.catch=new ln(i),r(i)}return n&&(this._currNode=o.finally=new dn,this.code(n)),this._endBlockNode(ln,dn)}throw(t){return this._leafNode(new da(t))}block(t,r){return this._blockStarts.push(this._nodes.length),t&&this.code(t).endBlock(r),this}endBlock(t){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||t!==void 0&&n!==t)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${t} expected`);return this._nodes.length=r,this}func(t,r=L.nil,n,o){return this._blockNode(new cn(t,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(cn)}optimize(t=1){for(;t-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(t){return this._currNode.nodes.push(t),this}_blockNode(t){this._currNode.nodes.push(t),this._nodes.push(t)}_endBlockNode(t,r){let n=this._currNode;if(n instanceof t||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${t.kind}/${r.kind}`:t.kind}"`)}_elseNode(t){let r=this._currNode;if(!(r instanceof Mt))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=t,this}get _root(){return this._nodes[0]}get _currNode(){let t=this._nodes;return t[t.length-1]}set _currNode(t){let r=this._nodes;r[r.length-1]=t}};D.CodeGen=ya;function Lt(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function zo(e,t){return t instanceof L._CodeOrName?Lt(e,t.names):e}function sr(e,t,r){if(e instanceof L.Name)return n(e);if(!o(e))return e;return new L._Code(e._items.reduce((i,s)=>(s instanceof L.Name&&(s=n(s)),s instanceof L._Code?i.push(...s._items):i.push(s),i),[]));function n(i){let s=r[i.str];return s===void 0||t[i.str]!==1?i:(delete t[i.str],s)}function o(i){return i instanceof L._Code&&i._items.some(s=>s instanceof L.Name&&t[s.str]===1&&r[s.str]!==void 0)}}function Yb(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function Sp(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,L._)`!${_a(e)}`}D.not=Sp;var Xb=Ep(D.operators.AND);function e0(...e){return e.reduce(Xb)}D.and=e0;var t0=Ep(D.operators.OR);function r0(...e){return e.reduce(t0)}D.or=r0;function Ep(e){return(t,r)=>t===L.nil?r:r===L.nil?t:(0,L._)`${_a(t)} ${e} ${_a(r)}`}function _a(e){return e instanceof L.Name?e:(0,L._)`(${e})`}});var B=v(j=>{"use strict";Object.defineProperty(j,"__esModule",{value:!0});j.checkStrictMode=j.getErrorPath=j.Type=j.useFunc=j.setEvaluated=j.evaluatedPropsToName=j.mergeEvaluated=j.eachItem=j.unescapeJsonPointer=j.escapeJsonPointer=j.escapeFragment=j.unescapeFragment=j.schemaRefOrVal=j.schemaHasRulesButRef=j.schemaHasRules=j.checkUnknownRules=j.alwaysValidSchema=j.toHash=void 0;var H=C(),n0=sn();function o0(e){let t={};for(let r of e)t[r]=!0;return t}j.toHash=o0;function i0(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(Rp(e,t),!zp(t,e.self.RULES.all))}j.alwaysValidSchema=i0;function Rp(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema||typeof t=="boolean")return;let o=n.RULES.keywords;for(let i in t)o[i]||Ap(e,`unknown keyword: "${i}"`)}j.checkUnknownRules=Rp;function zp(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}j.schemaHasRules=zp;function s0(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}j.schemaHasRulesButRef=s0;function a0({topSchemaRef:e,schemaPath:t},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,H._)`${r}`}return(0,H._)`${e}${t}${(0,H.getProperty)(n)}`}j.schemaRefOrVal=a0;function c0(e){return Ip(decodeURIComponent(e))}j.unescapeFragment=c0;function u0(e){return encodeURIComponent(va(e))}j.escapeFragment=u0;function va(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}j.escapeJsonPointer=va;function Ip(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}j.unescapeJsonPointer=Ip;function l0(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}j.eachItem=l0;function Tp({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(o,i,s,a)=>{let c=s===void 0?i:s instanceof H.Name?(i instanceof H.Name?e(o,i,s):t(o,i,s),s):i instanceof H.Name?(t(o,s,i),i):r(i,s);return a===H.Name&&!(c instanceof H.Name)?n(o,c):c}}j.mergeEvaluated={props:Tp({mergeNames:(e,t,r)=>e.if((0,H._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,H._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,H._)`${r} || {}`).code((0,H._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,H._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,H._)`${r} || {}`),ba(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:Op}),items:Tp({mergeNames:(e,t,r)=>e.if((0,H._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,H._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,H._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,H._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function Op(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,H._)`{}`);return t!==void 0&&ba(e,r,t),r}j.evaluatedPropsToName=Op;function ba(e,t,r){Object.keys(r).forEach(n=>e.assign((0,H._)`${t}${(0,H.getProperty)(n)}`,!0))}j.setEvaluated=ba;var Pp={};function d0(e,t){return e.scopeValue("func",{ref:t,code:Pp[t.code]||(Pp[t.code]=new n0._Code(t.code))})}j.useFunc=d0;var wa;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(wa||(j.Type=wa={}));function f0(e,t,r){if(e instanceof H.Name){let n=t===wa.Num;return r?n?(0,H._)`"[" + ${e} + "]"`:(0,H._)`"['" + ${e} + "']"`:n?(0,H._)`"/" + ${e}`:(0,H._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,H.getProperty)(e).toString():"/"+va(e)}j.getErrorPath=f0;function Ap(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===!0)throw new Error(t);e.self.logger.warn(t)}}j.checkStrictMode=Ap});var lt=v(xa=>{"use strict";Object.defineProperty(xa,"__esModule",{value:!0});var he=C(),p0={data:new he.Name("data"),valCxt:new he.Name("valCxt"),instancePath:new he.Name("instancePath"),parentData:new he.Name("parentData"),parentDataProperty:new he.Name("parentDataProperty"),rootData:new he.Name("rootData"),dynamicAnchors:new he.Name("dynamicAnchors"),vErrors:new he.Name("vErrors"),errors:new he.Name("errors"),this:new he.Name("this"),self:new he.Name("self"),scope:new he.Name("scope"),json:new he.Name("json"),jsonPos:new he.Name("jsonPos"),jsonLen:new he.Name("jsonLen"),jsonPart:new he.Name("jsonPart")};xa.default=p0});var fn=v(ge=>{"use strict";Object.defineProperty(ge,"__esModule",{value:!0});ge.extendErrors=ge.resetErrorsCount=ge.reportExtraError=ge.reportError=ge.keyword$DataError=ge.keywordError=void 0;var Z=C(),Oo=B(),xe=lt();ge.keywordError={message:({keyword:e})=>(0,Z.str)`must pass "${e}" keyword validation`};ge.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,Z.str)`"${e}" keyword must be ${t} ($data)`:(0,Z.str)`"${e}" keyword is invalid ($data)`};function m0(e,t=ge.keywordError,r,n){let{it:o}=e,{gen:i,compositeRule:s,allErrors:a}=o,c=Dp(e,t,r);n??(s||a)?Np(i,c):Cp(o,(0,Z._)`[${c}]`)}ge.reportError=m0;function h0(e,t=ge.keywordError,r){let{it:n}=e,{gen:o,compositeRule:i,allErrors:s}=n,a=Dp(e,t,r);Np(o,a),i||s||Cp(n,xe.default.vErrors)}ge.reportExtraError=h0;function g0(e,t){e.assign(xe.default.errors,t),e.if((0,Z._)`${xe.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,Z._)`${xe.default.vErrors}.length`,t),()=>e.assign(xe.default.vErrors,null)))}ge.resetErrorsCount=g0;function y0({gen:e,keyword:t,schemaValue:r,data:n,errsCount:o,it:i}){if(o===void 0)throw new Error("ajv implementation error");let s=e.name("err");e.forRange("i",o,xe.default.errors,a=>{e.const(s,(0,Z._)`${xe.default.vErrors}[${a}]`),e.if((0,Z._)`${s}.instancePath === undefined`,()=>e.assign((0,Z._)`${s}.instancePath`,(0,Z.strConcat)(xe.default.instancePath,i.errorPath))),e.assign((0,Z._)`${s}.schemaPath`,(0,Z.str)`${i.errSchemaPath}/${t}`),i.opts.verbose&&(e.assign((0,Z._)`${s}.schema`,r),e.assign((0,Z._)`${s}.data`,n))})}ge.extendErrors=y0;function Np(e,t){let r=e.const("err",t);e.if((0,Z._)`${xe.default.vErrors} === null`,()=>e.assign(xe.default.vErrors,(0,Z._)`[${r}]`),(0,Z._)`${xe.default.vErrors}.push(${r})`),e.code((0,Z._)`${xe.default.errors}++`)}function Cp(e,t){let{gen:r,validateName:n,schemaEnv:o}=e;o.$async?r.throw((0,Z._)`new ${e.ValidationError}(${t})`):(r.assign((0,Z._)`${n}.errors`,t),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 Dp(e,t,r){let{createErrors:n}=e.it;return n===!1?(0,Z._)`{}`:_0(e,t,r)}function _0(e,t,r={}){let{gen:n,it:o}=e,i=[w0(o,r),v0(e,r)];return b0(e,t,i),n.object(...i)}function w0({errorPath:e},{instancePath:t}){let r=t?(0,Z.str)`${e}${(0,Oo.getErrorPath)(t,Oo.Type.Str)}`:e;return[xe.default.instancePath,(0,Z.strConcat)(xe.default.instancePath,r)]}function v0({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let o=n?t:(0,Z.str)`${t}/${e}`;return r&&(o=(0,Z.str)`${o}${(0,Oo.getErrorPath)(r,Oo.Type.Str)}`),[Bt.schemaPath,o]}function b0(e,{params:t,message:r},n){let{keyword:o,data:i,schemaValue:s,it:a}=e,{opts:c,propertyName:l,topSchemaRef:u,schemaPath:d}=a;n.push([Bt.keyword,o],[Bt.params,typeof t=="function"?t(e):t||(0,Z._)`{}`]),c.messages&&n.push([Bt.message,typeof r=="function"?r(e):r]),c.verbose&&n.push([Bt.schema,s],[Bt.parentSchema,(0,Z._)`${u}${d}`],[xe.default.data,i]),l&&n.push([Bt.propertyName,l])}});var Mp=v(ar=>{"use strict";Object.defineProperty(ar,"__esModule",{value:!0});ar.boolOrEmptySchema=ar.topBoolOrEmptySchema=void 0;var x0=fn(),k0=C(),$0=lt(),S0={message:"boolean schema is false"};function E0(e){let{gen:t,schema:r,validateName:n}=e;r===!1?jp(e,!1):typeof r=="object"&&r.$async===!0?t.return($0.default.data):(t.assign((0,k0._)`${n}.errors`,null),t.return(!0))}ar.topBoolOrEmptySchema=E0;function T0(e,t){let{gen:r,schema:n}=e;n===!1?(r.var(t,!1),jp(e)):r.var(t,!0)}ar.boolOrEmptySchema=T0;function jp(e,t){let{gen:r,data:n}=e,o={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,x0.reportError)(o,S0,void 0,t)}});var ka=v(cr=>{"use strict";Object.defineProperty(cr,"__esModule",{value:!0});cr.getRules=cr.isJSONType=void 0;var P0=["string","number","integer","boolean","null","object","array"],R0=new Set(P0);function z0(e){return typeof e=="string"&&R0.has(e)}cr.isJSONType=z0;function I0(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}cr.getRules=I0});var $a=v(bt=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});bt.shouldUseRule=bt.shouldUseGroup=bt.schemaHasRulesForType=void 0;function O0({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&qp(e,n)}bt.schemaHasRulesForType=O0;function qp(e,t){return t.rules.some(r=>Lp(e,r))}bt.shouldUseGroup=qp;function Lp(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(n=>e[n]!==void 0))}bt.shouldUseRule=Lp});var pn=v(ye=>{"use strict";Object.defineProperty(ye,"__esModule",{value:!0});ye.reportTypeError=ye.checkDataTypes=ye.checkDataType=ye.coerceAndCheckDataType=ye.getJSONTypes=ye.getSchemaTypes=ye.DataType=void 0;var A0=ka(),N0=$a(),C0=fn(),N=C(),Bp=B(),ur;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(ur||(ye.DataType=ur={}));function D0(e){let t=Zp(e.type);if(t.includes("null")){if(e.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===!0&&t.push("null")}return t}ye.getSchemaTypes=D0;function Zp(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(A0.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}ye.getJSONTypes=Zp;function j0(e,t){let{gen:r,data:n,opts:o}=e,i=M0(t,o.coerceTypes),s=t.length>0&&!(i.length===0&&t.length===1&&(0,N0.schemaHasRulesForType)(e,t[0]));if(s){let a=Ea(t,n,o.strictNumbers,ur.Wrong);r.if(a,()=>{i.length?q0(e,t,i):Ta(e)})}return s}ye.coerceAndCheckDataType=j0;var Up=new Set(["string","number","integer","boolean","null"]);function M0(e,t){return t?e.filter(r=>Up.has(r)||t==="array"&&r==="array"):[]}function q0(e,t,r){let{gen:n,data:o,opts:i}=e,s=n.let("dataType",(0,N._)`typeof ${o}`),a=n.let("coerced",(0,N._)`undefined`);i.coerceTypes==="array"&&n.if((0,N._)`${s} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,N._)`${o}[0]`).assign(s,(0,N._)`typeof ${o}`).if(Ea(t,o,i.strictNumbers),()=>n.assign(a,o))),n.if((0,N._)`${a} !== undefined`);for(let l of r)(Up.has(l)||l==="array"&&i.coerceTypes==="array")&&c(l);n.else(),Ta(e),n.endIf(),n.if((0,N._)`${a} !== undefined`,()=>{n.assign(o,a),L0(e,a)});function c(l){switch(l){case"string":n.elseIf((0,N._)`${s} == "number" || ${s} == "boolean"`).assign(a,(0,N._)`"" + ${o}`).elseIf((0,N._)`${o} === null`).assign(a,(0,N._)`""`);return;case"number":n.elseIf((0,N._)`${s} == "boolean" || ${o} === null
5
5
  || (${s} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,N._)`+${o}`);return;case"integer":n.elseIf((0,N._)`${s} === "boolean" || ${o} === null
6
6
  || (${s} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,N._)`+${o}`);return;case"boolean":n.elseIf((0,N._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,N._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,N._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,N._)`${s} === "string" || ${s} === "number"
7
- || ${s} === "boolean" || ${o} === null`).assign(a,(0,N._)`[${o}]`)}}}function L0({gen:e,parentData:t,parentDataProperty:r},n){e.if((0,N._)`${t} !== undefined`,()=>e.assign((0,N._)`${t}[${r}]`,n))}function Sa(e,t,r,n=ur.Correct){let o=n===ur.Correct?N.operators.EQ:N.operators.NEQ,i;switch(e){case"null":return(0,N._)`${t} ${o} null`;case"array":i=(0,N._)`Array.isArray(${t})`;break;case"object":i=(0,N._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":i=s((0,N._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":i=s();break;default:return(0,N._)`typeof ${t} ${o} ${e}`}return n===ur.Correct?i:(0,N.not)(i);function s(a=N.nil){return(0,N.and)((0,N._)`typeof ${t} == "number"`,a,r?(0,N._)`isFinite(${t})`:N.nil)}}ye.checkDataType=Sa;function Ea(e,t,r,n){if(e.length===1)return Sa(e[0],t,r,n);let o,i=(0,Bp.toHash)(e);if(i.array&&i.object){let s=(0,N._)`typeof ${t} != "object"`;o=i.null?s:(0,N._)`!${t} || ${s}`,delete i.null,delete i.array,delete i.object}else o=N.nil;i.number&&delete i.integer;for(let s in i)o=(0,N.and)(o,Sa(s,t,r,n));return o}ye.checkDataTypes=Ea;var B0={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,N._)`{type: ${e}}`:(0,N._)`{type: ${t}}`};function Ta(e){let t=Z0(e);(0,C0.reportError)(t,B0)}ye.reportTypeError=Ta;function Z0(e){let{gen:t,data:r,schema:n}=e,o=(0,Bp.schemaRefOrVal)(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:e}}});var Vp=v(Ao=>{"use strict";Object.defineProperty(Ao,"__esModule",{value:!0});Ao.assignDefaults=void 0;var lr=C(),U0=B();function F0(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let o in r)Fp(e,o,r[o].default);else t==="array"&&Array.isArray(n)&&n.forEach((o,i)=>Fp(e,i,o.default))}Ao.assignDefaults=F0;function Fp(e,t,r){let{gen:n,compositeRule:o,data:i,opts:s}=e;if(r===void 0)return;let a=(0,lr._)`${i}${(0,lr.getProperty)(t)}`;if(o){(0,U0.checkStrictMode)(e,`default is ignored for: ${a}`);return}let c=(0,lr._)`${a} === undefined`;s.useDefaults==="empty"&&(c=(0,lr._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,lr._)`${a} = ${(0,lr.stringify)(r)}`)}});var je=v(K=>{"use strict";Object.defineProperty(K,"__esModule",{value:!0});K.validateUnion=K.validateArray=K.usePattern=K.callValidateCode=K.schemaProperties=K.allSchemaProperties=K.noPropertyInData=K.propertyInData=K.isOwnProperty=K.hasPropFunc=K.reportMissingProp=K.checkMissingProp=K.checkReportMissingProp=void 0;var X=C(),Pa=B(),vt=lt(),V0=B();function K0(e,t){let{gen:r,data:n,it:o}=e;r.if(za(r,n,t,o.opts.ownProperties),()=>{e.setParams({missingProperty:(0,X._)`${t}`},!0),e.error()})}K.checkReportMissingProp=K0;function H0({gen:e,data:t,it:{opts:r}},n,o){return(0,X.or)(...n.map(i=>(0,X.and)(za(e,t,i,r.ownProperties),(0,X._)`${o} = ${i}`)))}K.checkMissingProp=H0;function W0(e,t){e.setParams({missingProperty:t},!0),e.error()}K.reportMissingProp=W0;function Kp(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,X._)`Object.prototype.hasOwnProperty`})}K.hasPropFunc=Kp;function Ra(e,t,r){return(0,X._)`${Kp(e)}.call(${t}, ${r})`}K.isOwnProperty=Ra;function G0(e,t,r,n){let o=(0,X._)`${t}${(0,X.getProperty)(r)} !== undefined`;return n?(0,X._)`${o} && ${Ra(e,t,r)}`:o}K.propertyInData=G0;function za(e,t,r,n){let o=(0,X._)`${t}${(0,X.getProperty)(r)} === undefined`;return n?(0,X.or)(o,(0,X.not)(Ra(e,t,r))):o}K.noPropertyInData=za;function Hp(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}K.allSchemaProperties=Hp;function J0(e,t){return Hp(t).filter(r=>!(0,Pa.alwaysValidSchema)(e,t[r]))}K.schemaProperties=J0;function Q0({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:i},it:s},a,c,l){let u=l?(0,X._)`${e}, ${t}, ${n}${o}`:t,d=[[vt.default.instancePath,(0,X.strConcat)(vt.default.instancePath,i)],[vt.default.parentData,s.parentData],[vt.default.parentDataProperty,s.parentDataProperty],[vt.default.rootData,vt.default.rootData]];s.opts.dynamicRef&&d.push([vt.default.dynamicAnchors,vt.default.dynamicAnchors]);let f=(0,X._)`${u}, ${r.object(...d)}`;return c!==X.nil?(0,X._)`${a}.call(${c}, ${f})`:(0,X._)`${a}(${f})`}K.callValidateCode=Q0;var Y0=(0,X._)`new RegExp`;function X0({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:o}=t.code,i=o(r,n);return e.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,X._)`${o.code==="new RegExp"?Y0:(0,V0.useFunc)(e,o)}(${r}, ${n})`})}K.usePattern=X0;function ex(e){let{gen:t,data:r,keyword:n,it:o}=e,i=t.name("valid");if(o.allErrors){let a=t.let("valid",!0);return s(()=>t.assign(a,!1)),a}return t.var(i,!0),s(()=>t.break()),i;function s(a){let c=t.const("len",(0,X._)`${r}.length`);t.forRange("i",0,c,l=>{e.subschema({keyword:n,dataProp:l,dataPropType:Pa.Type.Num},i),t.if((0,X.not)(i),a)})}}K.validateArray=ex;function tx(e){let{gen:t,schema:r,keyword:n,it:o}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,Pa.alwaysValidSchema)(o,c))&&!o.opts.unevaluated)return;let s=t.let("valid",!1),a=t.name("_valid");t.block(()=>r.forEach((c,l)=>{let u=e.subschema({keyword:n,schemaProp:l,compositeRule:!0},a);t.assign(s,(0,X._)`${s} || ${a}`),e.mergeValidEvaluated(u,a)||t.if((0,X.not)(s))})),e.result(s,()=>e.reset(),()=>e.error(!0))}K.validateUnion=tx});var Jp=v(Xe=>{"use strict";Object.defineProperty(Xe,"__esModule",{value:!0});Xe.validateKeywordUsage=Xe.validSchemaType=Xe.funcKeywordCode=Xe.macroKeywordCode=void 0;var ke=C(),Bt=lt(),rx=je(),nx=fn();function ox(e,t){let{gen:r,keyword:n,schema:o,parentSchema:i,it:s}=e,a=t.macro.call(s.self,o,i,s),c=Gp(r,n,a);s.opts.validateSchema!==!1&&s.self.validateSchema(a,!0);let l=r.name("valid");e.subschema({schema:a,schemaPath:ke.nil,errSchemaPath:`${s.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},l),e.pass(l,()=>e.error(!0))}Xe.macroKeywordCode=ox;function ix(e,t){var r;let{gen:n,keyword:o,schema:i,parentSchema:s,$data:a,it:c}=e;ax(c,t);let l=!a&&t.compile?t.compile.call(c.self,i,s,c):t.validate,u=Gp(n,o,l),d=n.let("valid");e.block$data(d,f),e.ok((r=t.valid)!==null&&r!==void 0?r:d);function f(){if(t.errors===!1)h(),t.modifying&&Wp(e),_(()=>e.error());else{let w=t.async?p():m();t.modifying&&Wp(e),_(()=>sx(e,w))}}function p(){let w=n.let("ruleErrs",null);return n.try(()=>h((0,ke._)`await `),b=>n.assign(d,!1).if((0,ke._)`${b} instanceof ${c.ValidationError}`,()=>n.assign(w,(0,ke._)`${b}.errors`),()=>n.throw(b))),w}function m(){let w=(0,ke._)`${u}.errors`;return n.assign(w,null),h(ke.nil),w}function h(w=t.async?(0,ke._)`await `:ke.nil){let b=c.opts.passContext?Bt.default.this:Bt.default.self,x=!("compile"in t&&!a||t.schema===!1);n.assign(d,(0,ke._)`${w}${(0,rx.callValidateCode)(e,u,b,x)}`,t.modifying)}function _(w){var b;n.if((0,ke.not)((b=t.valid)!==null&&b!==void 0?b:d),w)}}Xe.funcKeywordCode=ix;function Wp(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0,ke._)`${n.parentData}[${n.parentDataProperty}]`))}function sx(e,t){let{gen:r}=e;r.if((0,ke._)`Array.isArray(${t})`,()=>{r.assign(Bt.default.vErrors,(0,ke._)`${Bt.default.vErrors} === null ? ${t} : ${Bt.default.vErrors}.concat(${t})`).assign(Bt.default.errors,(0,ke._)`${Bt.default.vErrors}.length`),(0,nx.extendErrors)(e)},()=>e.error())}function ax({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function Gp(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,ke.stringify)(r)})}function cx(e,t,r=!1){return!t.length||t.some(n=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}Xe.validSchemaType=cx;function ux({schema:e,opts:t,self:r,errSchemaPath:n},o,i){if(Array.isArray(o.keyword)?!o.keyword.includes(i):o.keyword!==i)throw new Error("ajv implementation error");let s=o.dependencies;if(s?.some(a=>!Object.prototype.hasOwnProperty.call(e,a)))throw new Error(`parent schema must have dependencies of ${i}: ${s.join(",")}`);if(o.validateSchema&&!o.validateSchema(e[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}Xe.validateKeywordUsage=ux});var Yp=v(bt=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});bt.extendSubschemaMode=bt.extendSubschemaData=bt.getSubschema=void 0;var et=C(),Qp=B();function lx(e,{keyword:t,schemaProp:r,schema:n,schemaPath:o,errSchemaPath:i,topSchemaRef:s}){if(t!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let a=e.schema[t];return r===void 0?{schema:a,schemaPath:(0,et._)`${e.schemaPath}${(0,et.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:a[r],schemaPath:(0,et._)`${e.schemaPath}${(0,et.getProperty)(t)}${(0,et.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,Qp.escapeFragment)(r)}`}}if(n!==void 0){if(o===void 0||i===void 0||s===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:o,topSchemaRef:s,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}bt.getSubschema=lx;function dx(e,t,{dataProp:r,dataPropType:n,data:o,dataTypes:i,propertyName:s}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=t;if(r!==void 0){let{errorPath:l,dataPathArr:u,opts:d}=t,f=a.let("data",(0,et._)`${t.data}${(0,et.getProperty)(r)}`,!0);c(f),e.errorPath=(0,et.str)`${l}${(0,Qp.getErrorPath)(r,n,d.jsPropertySyntax)}`,e.parentDataProperty=(0,et._)`${r}`,e.dataPathArr=[...u,e.parentDataProperty]}if(o!==void 0){let l=o instanceof et.Name?o:a.let("data",o,!0);c(l),s!==void 0&&(e.propertyName=s)}i&&(e.dataTypes=i);function c(l){e.data=l,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,l]}}bt.extendSubschemaData=dx;function fx(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:o,allErrors:i}){n!==void 0&&(e.compositeRule=n),o!==void 0&&(e.createErrors=o),i!==void 0&&(e.allErrors=i),e.jtdDiscriminator=t,e.jtdMetadata=r}bt.extendSubschemaMode=fx});var Ia=v((PD,Xp)=>{"use strict";Xp.exports=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var n,o,i;if(Array.isArray(t)){if(n=t.length,n!=r.length)return!1;for(o=n;o--!==0;)if(!e(t[o],r[o]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(i=Object.keys(t),n=i.length,n!==Object.keys(r).length)return!1;for(o=n;o--!==0;)if(!Object.prototype.hasOwnProperty.call(r,i[o]))return!1;for(o=n;o--!==0;){var s=i[o];if(!e(t[s],r[s]))return!1}return!0}return t!==t&&r!==r}});var tm=v((RD,em)=>{"use strict";var xt=em.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},o=r.post||function(){};No(t,n,o,e,"",e)};xt.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};xt.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};xt.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};xt.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 No(e,t,r,n,o,i,s,a,c,l){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,o,i,s,a,c,l);for(var u in n){var d=n[u];if(Array.isArray(d)){if(u in xt.arrayKeywords)for(var f=0;f<d.length;f++)No(e,t,r,d[f],o+"/"+u+"/"+f,i,o,u,n,f)}else if(u in xt.propsKeywords){if(d&&typeof d=="object")for(var p in d)No(e,t,r,d[p],o+"/"+u+"/"+px(p),i,o,u,n,p)}else(u in xt.keywords||e.allKeys&&!(u in xt.skipKeywords))&&No(e,t,r,d,o+"/"+u,i,o,u,n)}r(n,o,i,s,a,c,l)}}function px(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var mn=v(Pe=>{"use strict";Object.defineProperty(Pe,"__esModule",{value:!0});Pe.getSchemaRefs=Pe.resolveUrl=Pe.normalizeId=Pe._getFullPath=Pe.getFullPath=Pe.inlineRef=void 0;var mx=B(),hx=Ia(),gx=tm(),yx=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function _x(e,t=!0){return typeof e=="boolean"?!0:t===!0?!Oa(e):t?rm(e)<=t:!1}Pe.inlineRef=_x;var wx=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Oa(e){for(let t in e){if(wx.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(Oa)||typeof r=="object"&&Oa(r))return!0}return!1}function rm(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!yx.has(r)&&(typeof e[r]=="object"&&(0,mx.eachItem)(e[r],n=>t+=rm(n)),t===1/0))return 1/0}return t}function nm(e,t="",r){r!==!1&&(t=dr(t));let n=e.parse(t);return om(e,n)}Pe.getFullPath=nm;function om(e,t){return e.serialize(t).split("#")[0]+"#"}Pe._getFullPath=om;var vx=/#\/?$/;function dr(e){return e?e.replace(vx,""):""}Pe.normalizeId=dr;function bx(e,t,r){return r=dr(r),e.resolve(t,r)}Pe.resolveUrl=bx;var xx=/^[a-z_][-a-z0-9._]*$/i;function kx(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=dr(e[r]||t),i={"":o},s=nm(n,o,!1),a={},c=new Set;return gx(e,{allKeys:!0},(d,f,p,m)=>{if(m===void 0)return;let h=s+f,_=i[m];typeof d[r]=="string"&&(_=w.call(this,d[r])),b.call(this,d.$anchor),b.call(this,d.$dynamicAnchor),i[f]=_;function w(x){let P=this.opts.uriResolver.resolve;if(x=dr(_?P(_,x):x),c.has(x))throw u(x);c.add(x);let I=this.refs[x];return typeof I=="string"&&(I=this.refs[I]),typeof I=="object"?l(d,I.schema,x):x!==dr(h)&&(x[0]==="#"?(l(d,a[x],x),a[x]=d):this.refs[x]=h),x}function b(x){if(typeof x=="string"){if(!xx.test(x))throw new Error(`invalid anchor "${x}"`);w.call(this,`#${x}`)}}}),a;function l(d,f,p){if(f!==void 0&&!hx(d,f))throw u(p)}function u(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Pe.getSchemaRefs=kx});var yn=v(kt=>{"use strict";Object.defineProperty(kt,"__esModule",{value:!0});kt.getData=kt.KeywordCxt=kt.validateFunctionCode=void 0;var um=Mp(),im=pn(),Na=$a(),Co=pn(),$x=Vp(),gn=Jp(),Aa=Yp(),S=C(),A=lt(),Sx=mn(),dt=B(),hn=fn();function Ex(e){if(fm(e)&&(pm(e),dm(e))){Rx(e);return}lm(e,()=>(0,um.topBoolOrEmptySchema)(e))}kt.validateFunctionCode=Ex;function lm({gen:e,validateName:t,schema:r,schemaEnv:n,opts:o},i){o.code.es5?e.func(t,(0,S._)`${A.default.data}, ${A.default.valCxt}`,n.$async,()=>{e.code((0,S._)`"use strict"; ${sm(r,o)}`),Px(e,o),e.code(i)}):e.func(t,(0,S._)`${A.default.data}, ${Tx(o)}`,n.$async,()=>e.code(sm(r,o)).code(i))}function Tx(e){return(0,S._)`{${A.default.instancePath}="", ${A.default.parentData}, ${A.default.parentDataProperty}, ${A.default.rootData}=${A.default.data}${e.dynamicRef?(0,S._)`, ${A.default.dynamicAnchors}={}`:S.nil}}={}`}function Px(e,t){e.if(A.default.valCxt,()=>{e.var(A.default.instancePath,(0,S._)`${A.default.valCxt}.${A.default.instancePath}`),e.var(A.default.parentData,(0,S._)`${A.default.valCxt}.${A.default.parentData}`),e.var(A.default.parentDataProperty,(0,S._)`${A.default.valCxt}.${A.default.parentDataProperty}`),e.var(A.default.rootData,(0,S._)`${A.default.valCxt}.${A.default.rootData}`),t.dynamicRef&&e.var(A.default.dynamicAnchors,(0,S._)`${A.default.valCxt}.${A.default.dynamicAnchors}`)},()=>{e.var(A.default.instancePath,(0,S._)`""`),e.var(A.default.parentData,(0,S._)`undefined`),e.var(A.default.parentDataProperty,(0,S._)`undefined`),e.var(A.default.rootData,A.default.data),t.dynamicRef&&e.var(A.default.dynamicAnchors,(0,S._)`{}`)})}function Rx(e){let{schema:t,opts:r,gen:n}=e;lm(e,()=>{r.$comment&&t.$comment&&hm(e),Nx(e),n.let(A.default.vErrors,null),n.let(A.default.errors,0),r.unevaluated&&zx(e),mm(e),jx(e)})}function zx(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0,S._)`${r}.evaluated`),t.if((0,S._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,S._)`${e.evaluated}.props`,(0,S._)`undefined`)),t.if((0,S._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,S._)`${e.evaluated}.items`,(0,S._)`undefined`))}function sm(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0,S._)`/*# sourceURL=${r} */`:S.nil}function Ix(e,t){if(fm(e)&&(pm(e),dm(e))){Ox(e,t);return}(0,um.boolOrEmptySchema)(e,t)}function dm({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function fm(e){return typeof e.schema!="boolean"}function Ox(e,t){let{schema:r,gen:n,opts:o}=e;o.$comment&&r.$comment&&hm(e),Cx(e),Dx(e);let i=n.const("_errs",A.default.errors);mm(e,i),n.var(t,(0,S._)`${i} === ${A.default.errors}`)}function pm(e){(0,dt.checkUnknownRules)(e),Ax(e)}function mm(e,t){if(e.opts.jtd)return am(e,[],!1,t);let r=(0,im.getSchemaTypes)(e.schema),n=(0,im.coerceAndCheckDataType)(e,r);am(e,r,!n,t)}function Ax(e){let{schema:t,errSchemaPath:r,opts:n,self:o}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0,dt.schemaHasRulesButRef)(t,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function Nx(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,dt.checkStrictMode)(e,"default is ignored in the schema root")}function Cx(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,Sx.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function Dx(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function hm({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:o}){let i=r.$comment;if(o.$comment===!0)e.code((0,S._)`${A.default.self}.logger.log(${i})`);else if(typeof o.$comment=="function"){let s=(0,S.str)`${n}/$comment`,a=e.scopeValue("root",{ref:t.root});e.code((0,S._)`${A.default.self}.opts.$comment(${i}, ${s}, ${a}.schema)`)}}function jx(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:o,opts:i}=e;r.$async?t.if((0,S._)`${A.default.errors} === 0`,()=>t.return(A.default.data),()=>t.throw((0,S._)`new ${o}(${A.default.vErrors})`)):(t.assign((0,S._)`${n}.errors`,A.default.vErrors),i.unevaluated&&Mx(e),t.return((0,S._)`${A.default.errors} === 0`))}function Mx({gen:e,evaluated:t,props:r,items:n}){r instanceof S.Name&&e.assign((0,S._)`${t}.props`,r),n instanceof S.Name&&e.assign((0,S._)`${t}.items`,n)}function am(e,t,r,n){let{gen:o,schema:i,data:s,allErrors:a,opts:c,self:l}=e,{RULES:u}=l;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,dt.schemaHasRulesButRef)(i,u))){o.block(()=>ym(e,"$ref",u.all.$ref.definition));return}c.jtd||qx(e,t),o.block(()=>{for(let f of u.rules)d(f);d(u.post)});function d(f){(0,Na.shouldUseGroup)(i,f)&&(f.type?(o.if((0,Co.checkDataType)(f.type,s,c.strictNumbers)),cm(e,f),t.length===1&&t[0]===f.type&&r&&(o.else(),(0,Co.reportTypeError)(e)),o.endIf()):cm(e,f),a||o.if((0,S._)`${A.default.errors} === ${n||0}`))}}function cm(e,t){let{gen:r,schema:n,opts:{useDefaults:o}}=e;o&&(0,$x.assignDefaults)(e,t.type),r.block(()=>{for(let i of t.rules)(0,Na.shouldUseRule)(n,i)&&ym(e,i.keyword,i.definition,t.type)})}function qx(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(Lx(e,t),e.opts.allowUnionTypes||Bx(e,t),Zx(e,e.dataTypes))}function Lx(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{gm(e.dataTypes,r)||Ca(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),Fx(e,t)}}function Bx(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&Ca(e,"use allowUnionTypes to allow union type keyword")}function Zx(e,t){let r=e.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Na.shouldUseRule)(e.schema,o)){let{type:i}=o.definition;i.length&&!i.some(s=>Ux(t,s))&&Ca(e,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function Ux(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function gm(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function Fx(e,t){let r=[];for(let n of e.dataTypes)gm(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r}function Ca(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,dt.checkStrictMode)(e,t,e.opts.strictTypes)}var Do=class{constructor(t,r,n){if((0,gn.validateKeywordUsage)(t,r,n),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=n,this.data=t.data,this.schema=t.schema[n],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,dt.schemaRefOrVal)(t,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",_m(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,gn.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=t.gen.const("_errs",A.default.errors))}result(t,r,n){this.failResult((0,S.not)(t),r,n)}failResult(t,r,n){this.gen.if(t),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(t,r){this.failResult((0,S.not)(t),void 0,r)}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(t){if(!this.$data)return this.fail(t);let{schemaCode:r}=this;this.fail((0,S._)`${r} !== undefined && (${(0,S.or)(this.invalid$data(),t)})`)}error(t,r,n){if(r){this.setParams(r),this._error(t,n),this.setParams({});return}this._error(t,n)}_error(t,r){(t?hn.reportExtraError:hn.reportError)(this,this.def.error,r)}$dataError(){(0,hn.reportError)(this,this.def.$dataError||hn.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,hn.resetErrorsCount)(this.gen,this.errsCount)}ok(t){this.allErrors||this.gen.if(t)}setParams(t,r){r?Object.assign(this.params,t):this.params=t}block$data(t,r,n=S.nil){this.gen.block(()=>{this.check$data(t,n),r()})}check$data(t=S.nil,r=S.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:i,def:s}=this;n.if((0,S.or)((0,S._)`${o} === undefined`,r)),t!==S.nil&&n.assign(t,!0),(i.length||s.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==S.nil&&n.assign(t,!1)),n.else()}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:o,it:i}=this;return(0,S.or)(s(),a());function s(){if(n.length){if(!(r instanceof S.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,S._)`${(0,Co.checkDataTypes)(c,r,i.opts.strictNumbers,Co.DataType.Wrong)}`}return S.nil}function a(){if(o.validateSchema){let c=t.scopeValue("validate$data",{ref:o.validateSchema});return(0,S._)`!${c}(${r})`}return S.nil}}subschema(t,r){let n=(0,Aa.getSubschema)(this.it,t);(0,Aa.extendSubschemaData)(n,this.it,t),(0,Aa.extendSubschemaMode)(n,t);let o={...this.it,...n,items:void 0,props:void 0};return Ix(o,r),o}mergeEvaluated(t,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&t.props!==void 0&&(n.props=dt.mergeEvaluated.props(o,t.props,n.props,r)),n.items!==!0&&t.items!==void 0&&(n.items=dt.mergeEvaluated.items(o,t.items,n.items,r)))}mergeValidEvaluated(t,r){let{it:n,gen:o}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return o.if(r,()=>this.mergeEvaluated(t,S.Name)),!0}};kt.KeywordCxt=Do;function ym(e,t,r,n){let o=new Do(e,r,t);"code"in r?r.code(o,n):o.$data&&r.validate?(0,gn.funcKeywordCode)(o,r):"macro"in r?(0,gn.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,gn.funcKeywordCode)(o,r)}var Vx=/^\/(?:[^~]|~0|~1)*$/,Kx=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function _m(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let o,i;if(e==="")return A.default.rootData;if(e[0]==="/"){if(!Vx.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);o=e,i=A.default.rootData}else{let l=Kx.exec(e);if(!l)throw new Error(`Invalid JSON-pointer: ${e}`);let u=+l[1];if(o=l[2],o==="#"){if(u>=t)throw new Error(c("property/index",u));return n[t-u]}if(u>t)throw new Error(c("data",u));if(i=r[t-u],!o)return i}let s=i,a=o.split("/");for(let l of a)l&&(i=(0,S._)`${i}${(0,S.getProperty)((0,dt.unescapeJsonPointer)(l))}`,s=(0,S._)`${s} && ${i}`);return s;function c(l,u){return`Cannot access ${l} ${u} levels up, current level is ${t}`}}kt.getData=_m});var jo=v(ja=>{"use strict";Object.defineProperty(ja,"__esModule",{value:!0});var Da=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};ja.default=Da});var _n=v(La=>{"use strict";Object.defineProperty(La,"__esModule",{value:!0});var Ma=mn(),qa=class extends Error{constructor(t,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,Ma.resolveUrl)(t,r,n),this.missingSchema=(0,Ma.normalizeId)((0,Ma.getFullPath)(t,this.missingRef))}};La.default=qa});var qo=v(Me=>{"use strict";Object.defineProperty(Me,"__esModule",{value:!0});Me.resolveSchema=Me.getCompilingSchema=Me.resolveRef=Me.compileSchema=Me.SchemaEnv=void 0;var Fe=C(),Hx=jo(),Zt=lt(),Ve=mn(),wm=B(),Wx=yn(),fr=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let n;typeof t.schema=="object"&&(n=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0,Ve.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={}}};Me.SchemaEnv=fr;function Za(e){let t=vm.call(this,e);if(t)return t;let r=(0,Ve.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:i}=this.opts,s=new Fe.CodeGen(this.scope,{es5:n,lines:o,ownProperties:i}),a;e.$async&&(a=s.scopeValue("Error",{ref:Hx.default,code:(0,Fe._)`require("ajv/dist/runtime/validation_error").default`}));let c=s.scopeName("validate");e.validateName=c;let l={gen:s,allErrors:this.opts.allErrors,data:Zt.default.data,parentData:Zt.default.parentData,parentDataProperty:Zt.default.parentDataProperty,dataNames:[Zt.default.data],dataPathArr:[Fe.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:s.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,Fe.stringify)(e.schema)}:{ref:e.schema}),validateName:c,ValidationError:a,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:Fe.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Fe._)`""`,opts:this.opts,self:this},u;try{this._compilations.add(e),(0,Wx.validateFunctionCode)(l),s.optimize(this.opts.code.optimize);let d=s.toString();u=`${s.scopeRefs(Zt.default.scope)}return ${d}`,this.opts.code.process&&(u=this.opts.code.process(u,e));let p=new Function(`${Zt.default.self}`,`${Zt.default.scope}`,u)(this,this.scope.get());if(this.scope.value(c,{ref:p}),p.errors=null,p.schema=e.schema,p.schemaEnv=e,e.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:c,validateCode:d,scopeValues:s._values}),this.opts.unevaluated){let{props:m,items:h}=l;p.evaluated={props:m instanceof Fe.Name?void 0:m,items:h instanceof Fe.Name?void 0:h,dynamicProps:m instanceof Fe.Name,dynamicItems:h instanceof Fe.Name},p.source&&(p.source.evaluated=(0,Fe.stringify)(p.evaluated))}return e.validate=p,e}catch(d){throw delete e.validate,delete e.validateName,u&&this.logger.error("Error compiling schema, function code:",u),d}finally{this._compilations.delete(e)}}Me.compileSchema=Za;function Gx(e,t,r){var n;r=(0,Ve.resolveUrl)(this.opts.uriResolver,t,r);let o=e.refs[r];if(o)return o;let i=Yx.call(this,e,r);if(i===void 0){let s=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:a}=this.opts;s&&(i=new fr({schema:s,schemaId:a,root:e,baseId:t}))}if(i!==void 0)return e.refs[r]=Jx.call(this,i)}Me.resolveRef=Gx;function Jx(e){return(0,Ve.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:Za.call(this,e)}function vm(e){for(let t of this._compilations)if(Qx(t,e))return t}Me.getCompilingSchema=vm;function Qx(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function Yx(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||Mo.call(this,e,t)}function Mo(e,t){let r=this.opts.uriResolver.parse(t),n=(0,Ve._getFullPath)(this.opts.uriResolver,r),o=(0,Ve.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===o)return Ba.call(this,r,e);let i=(0,Ve.normalizeId)(n),s=this.refs[i]||this.schemas[i];if(typeof s=="string"){let a=Mo.call(this,e,s);return typeof a?.schema!="object"?void 0:Ba.call(this,r,a)}if(typeof s?.schema=="object"){if(s.validate||Za.call(this,s),i===(0,Ve.normalizeId)(t)){let{schema:a}=s,{schemaId:c}=this.opts,l=a[c];return l&&(o=(0,Ve.resolveUrl)(this.opts.uriResolver,o,l)),new fr({schema:a,schemaId:c,root:e,baseId:o})}return Ba.call(this,r,s)}}Me.resolveSchema=Mo;var Xx=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Ba(e,{baseId:t,schema:r,root:n}){var o;if(((o=e.fragment)===null||o===void 0?void 0:o[0])!=="/")return;for(let a of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,wm.unescapeFragment)(a)];if(c===void 0)return;r=c;let l=typeof r=="object"&&r[this.opts.schemaId];!Xx.has(a)&&l&&(t=(0,Ve.resolveUrl)(this.opts.uriResolver,t,l))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,wm.schemaHasRulesButRef)(r,this.RULES)){let a=(0,Ve.resolveUrl)(this.opts.uriResolver,t,r.$ref);i=Mo.call(this,n,a)}let{schemaId:s}=this.opts;if(i=i||new fr({schema:r,schemaId:s,root:n,baseId:t}),i.schema!==i.root.schema)return i}});var bm=v((CD,ek)=>{ek.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 Va=v((DD,Tm)=>{"use strict";var tk=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),km=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),Ua=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),$m=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),rk=RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);function Fa(e){let t="",r=0,n=0;for(n=0;n<e.length;n++)if(r=e[n].charCodeAt(0),r!==48){if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n];break}for(n+=1;n<e.length;n++){if(r=e[n].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n]}return t}var nk=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function xm(e){return e.length=0,!0}function ok(e,t,r){if(e.length){let n=Fa(e);if(n!=="")t.push(n);else return r.error=!0,!1;e.length=0}return!0}function ik(e){let t=0,r={error:!1,address:"",zone:""},n=[],o=[],i=!1,s=!1,a=ok;for(let c=0;c<e.length;c++){let l=e[c];if(!(l==="["||l==="]"))if(l===":"){if(i===!0&&(s=!0),!a(o,n,r))break;if(++t>7){r.error=!0;break}c>0&&e[c-1]===":"&&(i=!0),n.push(":");continue}else if(l==="%"){if(!a(o,n,r))break;a=xm}else{o.push(l);continue}}return o.length&&(a===xm?r.zone=o.join(""):s?n.push(o.join("")):n.push(Fa(o))),r.address=n.join(""),r}function Sm(e){if(sk(e,":")<2)return{host:e,isIPV6:!1};let t=ik(e);if(t.error)return{host:e,isIPV6:!1};{let r=t.address,n=t.address;return t.zone&&(r+="%"+t.zone,n+="%25"+t.zone),{host:r,isIPV6:!0,escapedHost:n}}}function sk(e,t){let r=0;for(let n=0;n<e.length;n++)e[n]===t&&r++;return r}function ak(e){let t=e,r=[],n=-1,o=0;for(;o=t.length;){if(o===1){if(t===".")break;if(t==="/"){r.push("/");break}else{r.push(t);break}}else if(o===2){if(t[0]==="."){if(t[1]===".")break;if(t[1]==="/"){t=t.slice(2);continue}}else if(t[0]==="/"&&(t[1]==="."||t[1]==="/")){r.push("/");break}}else if(o===3&&t==="/.."){r.length!==0&&r.pop(),r.push("/");break}if(t[0]==="."){if(t[1]==="."){if(t[2]==="/"){t=t.slice(3);continue}}else if(t[1]==="/"){t=t.slice(2);continue}}else if(t[0]==="/"&&t[1]==="."){if(t[2]==="/"){t=t.slice(2);continue}else if(t[2]==="."&&t[3]==="/"){t=t.slice(3),r.length!==0&&r.pop();continue}}if((n=t.indexOf("/",1))===-1){r.push(t);break}else r.push(t.slice(0,n)),t=t.slice(n)}return r.join("")}var ck={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},uk=/[@/?#:]/g,lk=/[@/?#]/g;function Em(e,t){let r=t?lk:uk;return r.lastIndex=0,e.replace(r,n=>ck[n])}function dk(e,t=!1){if(e.indexOf("%")===-1)return e;let r="";for(let n=0;n<e.length;n++){if(e[n]==="%"&&n+2<e.length){let o=e.slice(n+1,n+3);if(Ua(o)){let i=o.toUpperCase(),s=String.fromCharCode(parseInt(i,16));t&&$m(s)?r+=s:r+="%"+i,n+=2;continue}}r+=e[n]}return r}function fk(e){let t="";for(let r=0;r<e.length;r++){if(e[r]==="%"&&r+2<e.length){let n=e.slice(r+1,r+3);if(Ua(n)){let o=n.toUpperCase(),i=String.fromCharCode(parseInt(o,16));i!=="."&&$m(i)?t+=i:t+="%"+o,r+=2;continue}}rk(e[r])?t+=e[r]:t+=escape(e[r])}return t}function pk(e){let t="";for(let r=0;r<e.length;r++){if(e[r]==="%"&&r+2<e.length){let n=e.slice(r+1,r+3);if(Ua(n)){t+="%"+n.toUpperCase(),r+=2;continue}}t+=escape(e[r])}return t}function mk(e){let t=[];if(e.userinfo!==void 0&&(t.push(e.userinfo),t.push("@")),e.host!==void 0){let r=unescape(e.host);if(!km(r)){let n=Sm(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=Em(r,!1)}t.push(r)}return(typeof e.port=="number"||typeof e.port=="string")&&(t.push(":"),t.push(String(e.port))),t.length?t.join(""):void 0}Tm.exports={nonSimpleDomain:nk,recomposeAuthority:mk,reescapeHostDelimiters:Em,normalizePercentEncoding:dk,normalizePathEncoding:fk,escapePreservingEscapes:pk,removeDotSegments:ak,isIPv4:km,isUUID:tk,normalizeIPv6:Sm,stringArrayToHexStripped:Fa}});var Om=v((jD,Im)=>{"use strict";var{isUUID:hk}=Va(),gk=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,yk=["http","https","ws","wss","urn","urn:uuid"];function _k(e){return yk.indexOf(e)!==-1}function Ka(e){return e.secure===!0?!0:e.secure===!1?!1:e.scheme?e.scheme.length===3&&(e.scheme[0]==="w"||e.scheme[0]==="W")&&(e.scheme[1]==="s"||e.scheme[1]==="S")&&(e.scheme[2]==="s"||e.scheme[2]==="S"):!1}function Pm(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function Rm(e){let t=String(e.scheme).toLowerCase()==="https";return(e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function wk(e){return e.secure=Ka(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function vk(e){if((e.port===(Ka(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function bk(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(gk);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let o=`${n}:${t.nid||e.nid}`,i=Ha(o);e.path=void 0,i&&(e=i.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function xk(e,t){if(e.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),o=`${r}:${t.nid||n}`,i=Ha(o);i&&(e=i.serialize(e,t));let s=e,a=e.nss;return s.path=`${n||t.nid}:${a}`,t.skipEscape=!0,s}function kk(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!hk(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function $k(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var zm={scheme:"http",domainHost:!0,parse:Pm,serialize:Rm},Sk={scheme:"https",domainHost:zm.domainHost,parse:Pm,serialize:Rm},Lo={scheme:"ws",domainHost:!0,parse:wk,serialize:vk},Ek={scheme:"wss",domainHost:Lo.domainHost,parse:Lo.parse,serialize:Lo.serialize},Tk={scheme:"urn",parse:bk,serialize:xk,skipNormalize:!0},Pk={scheme:"urn:uuid",parse:kk,serialize:$k,skipNormalize:!0},Bo={http:zm,https:Sk,ws:Lo,wss:Ek,urn:Tk,"urn:uuid":Pk};Object.setPrototypeOf(Bo,null);function Ha(e){return e&&(Bo[e]||Bo[e.toLowerCase()])||void 0}Im.exports={wsIsSecure:Ka,SCHEMES:Bo,isValidSchemeName:_k,getSchemeHandler:Ha}});var Mm=v((MD,Zo)=>{"use strict";var{normalizeIPv6:Rk,removeDotSegments:wn,recomposeAuthority:zk,normalizePercentEncoding:Ik,normalizePathEncoding:Ok,escapePreservingEscapes:Ak,reescapeHostDelimiters:Nk,isIPv4:Ck,nonSimpleDomain:Dk}=Va(),{SCHEMES:jk,getSchemeHandler:Nm}=Om();function Mk(e,t){return typeof e=="string"?e=Uk(e,t):typeof e=="object"&&(e=pr(Ut(e,t),t)),e}function qk(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=Cm(pr(e,n),pr(t,n),n,!0);return n.skipEscape=!0,Ut(o,n)}function Cm(e,t,r,n){let o={};return n||(e=pr(Ut(e,r),r),t=pr(Ut(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(o.scheme=t.scheme,o.userinfo=t.userinfo,o.host=t.host,o.port=t.port,o.path=wn(t.path||""),o.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(o.userinfo=t.userinfo,o.host=t.host,o.port=t.port,o.path=wn(t.path||""),o.query=t.query):(t.path?(t.path[0]==="/"?o.path=wn(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?o.path="/"+t.path:e.path?o.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:o.path=t.path,o.path=wn(o.path)),o.query=t.query):(o.path=e.path,t.query!==void 0?o.query=t.query:o.query=e.query),o.userinfo=e.userinfo,o.host=e.host,o.port=e.port),o.scheme=e.scheme),o.fragment=t.fragment,o}function Lk(e,t,r){let n=Am(e,r),o=Am(t,r);return n!==void 0&&o!==void 0&&n.toLowerCase()===o.toLowerCase()}function Ut(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),o=[],i=Nm(n.scheme||r.scheme);i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=Ik(r.path):(r.path=Ak(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&o.push(r.scheme,":");let s=zk(r);if(s!==void 0&&(n.reference!=="suffix"&&o.push("//"),o.push(s),r.path&&r.path[0]!=="/"&&o.push("/")),r.path!==void 0){let a=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(a=wn(a)),s===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 Bk=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Zk(e,t){if(t[2]!==void 0&&e.path&&e.path[0]!=="/")return'URI path must start with "/" when authority is present.';if(typeof e.port=="number"&&(e.port<0||e.port>65535))return"URI port is malformed."}function Dm(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},o=!1,i=!1;r.reference==="suffix"&&(r.scheme?e=r.scheme+":"+e:e="//"+e);let s=e.match(Bk);if(s){n.scheme=s[1],n.userinfo=s[3],n.host=s[4],n.port=parseInt(s[5],10),n.path=s[6]||"",n.query=s[7],n.fragment=s[8],isNaN(n.port)&&(n.port=s[5]);let a=Zk(n,s);if(a!==void 0&&(n.error=n.error||a,o=!0),n.host)if(Ck(n.host)===!1){let u=Rk(n.host);n.host=u.host.toLowerCase(),i=u.isIPV6}else i=!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=Nm(r.scheme||n.scheme);if(!r.unicodeSupport&&(!c||!c.unicodeSupport)&&n.host&&(r.domainHost||c&&c.domainHost)&&i===!1&&Dk(n.host))try{n.host=new URL("http://"+n.host).hostname}catch(l){n.error=n.error||"Host's domain name can not be converted to ASCII: "+l}if((!c||c&&!c.skipNormalize)&&(e.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=Nk(unescape(n.host),i))),n.path&&(n.path=Ok(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(e,t){return Dm(e,t).parsed}function Uk(e,t){return jm(e,t).normalized}function jm(e,t){let{parsed:r,malformedAuthorityOrPort:n}=Dm(e,t);return{normalized:n?e:Ut(r,t),malformedAuthorityOrPort:n}}function Am(e,t){if(typeof e=="string"){let{normalized:r,malformedAuthorityOrPort:n}=jm(e,t);return n?void 0:r}if(typeof e=="object")return Ut(e,t)}var Wa={SCHEMES:jk,normalize:Mk,resolve:qk,resolveComponent:Cm,equal:Lk,serialize:Ut,parse:pr};Zo.exports=Wa;Zo.exports.default=Wa;Zo.exports.fastUri=Wa});var Lm=v(Ga=>{"use strict";Object.defineProperty(Ga,"__esModule",{value:!0});var qm=Mm();qm.code='require("ajv/dist/runtime/uri").default';Ga.default=qm});var Wm=v(fe=>{"use strict";Object.defineProperty(fe,"__esModule",{value:!0});fe.CodeGen=fe.Name=fe.nil=fe.stringify=fe.str=fe._=fe.KeywordCxt=void 0;var Fk=yn();Object.defineProperty(fe,"KeywordCxt",{enumerable:!0,get:function(){return Fk.KeywordCxt}});var mr=C();Object.defineProperty(fe,"_",{enumerable:!0,get:function(){return mr._}});Object.defineProperty(fe,"str",{enumerable:!0,get:function(){return mr.str}});Object.defineProperty(fe,"stringify",{enumerable:!0,get:function(){return mr.stringify}});Object.defineProperty(fe,"nil",{enumerable:!0,get:function(){return mr.nil}});Object.defineProperty(fe,"Name",{enumerable:!0,get:function(){return mr.Name}});Object.defineProperty(fe,"CodeGen",{enumerable:!0,get:function(){return mr.CodeGen}});var Vk=jo(),Vm=_n(),Kk=ka(),vn=qo(),Hk=C(),bn=mn(),Uo=pn(),Qa=B(),Bm=bm(),Wk=Lm(),Km=(e,t)=>new RegExp(e,t);Km.code="new RegExp";var Gk=["removeAdditional","useDefaults","coerceTypes"],Jk=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),Qk={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."},Yk={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Zm=200;function Xk(e){var t,r,n,o,i,s,a,c,l,u,d,f,p,m,h,_,w,b,x,P,I,ve,Oe,Yt,Ni;let Nr=e.strict,Ci=(t=e.code)===null||t===void 0?void 0:t.optimize,Gu=Ci===!0||Ci===void 0?1:Ci||0,Ju=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Km,C_=(o=e.uriResolver)!==null&&o!==void 0?o:Wk.default;return{strictSchema:(s=(i=e.strictSchema)!==null&&i!==void 0?i:Nr)!==null&&s!==void 0?s:!0,strictNumbers:(c=(a=e.strictNumbers)!==null&&a!==void 0?a:Nr)!==null&&c!==void 0?c:!0,strictTypes:(u=(l=e.strictTypes)!==null&&l!==void 0?l:Nr)!==null&&u!==void 0?u:"log",strictTuples:(f=(d=e.strictTuples)!==null&&d!==void 0?d:Nr)!==null&&f!==void 0?f:"log",strictRequired:(m=(p=e.strictRequired)!==null&&p!==void 0?p:Nr)!==null&&m!==void 0?m:!1,code:e.code?{...e.code,optimize:Gu,regExp:Ju}:{optimize:Gu,regExp:Ju},loopRequired:(h=e.loopRequired)!==null&&h!==void 0?h:Zm,loopEnum:(_=e.loopEnum)!==null&&_!==void 0?_:Zm,meta:(w=e.meta)!==null&&w!==void 0?w:!0,messages:(b=e.messages)!==null&&b!==void 0?b:!0,inlineRefs:(x=e.inlineRefs)!==null&&x!==void 0?x:!0,schemaId:(P=e.schemaId)!==null&&P!==void 0?P:"$id",addUsedSchema:(I=e.addUsedSchema)!==null&&I!==void 0?I:!0,validateSchema:(ve=e.validateSchema)!==null&&ve!==void 0?ve:!0,validateFormats:(Oe=e.validateFormats)!==null&&Oe!==void 0?Oe:!0,unicodeRegExp:(Yt=e.unicodeRegExp)!==null&&Yt!==void 0?Yt:!0,int32range:(Ni=e.int32range)!==null&&Ni!==void 0?Ni:!0,uriResolver:C_}}var xn=class{constructor(t={}){this.schemas={},this.refs={},this.formats=Object.create(null),this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...Xk(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new Hk.ValueScope({scope:{},prefixes:Jk,es5:r,lines:n}),this.logger=i$(t.logger);let o=t.validateFormats;t.validateFormats=!1,this.RULES=(0,Kk.getRules)(),Um.call(this,Qk,t,"NOT SUPPORTED"),Um.call(this,Yk,t,"DEPRECATED","warn"),this._metaOpts=n$.call(this),t.formats&&t$.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&r$.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),e$.call(this),t.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,o=Bm;n==="id"&&(o={...Bm},o.id=o.$id,delete o.$id),r&&t&&this.addMetaSchema(o,o[n],!1)}defaultMeta(){let{meta:t,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof t=="object"?t[r]||t:void 0}validate(t,r){let n;if(typeof t=="string"){if(n=this.getSchema(t),!n)throw new Error(`no schema with key or ref "${t}"`)}else n=this.compile(t);let o=n(r);return"$async"in n||(this.errors=n.errors),o}compile(t,r){let n=this._addSchema(t,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(t,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,t,r);async function o(u,d){await i.call(this,u.$schema);let f=this._addSchema(u,d);return f.validate||s.call(this,f)}async function i(u){u&&!this.getSchema(u)&&await o.call(this,{$ref:u},!0)}async function s(u){try{return this._compileSchemaEnv(u)}catch(d){if(!(d instanceof Vm.default))throw d;return a.call(this,d),await c.call(this,d.missingSchema),s.call(this,u)}}function a({missingSchema:u,missingRef:d}){if(this.refs[u])throw new Error(`AnySchema ${u} is loaded but ${d} cannot be resolved`)}async function c(u){let d=await l.call(this,u);this.refs[u]||await i.call(this,d.$schema),this.refs[u]||this.addSchema(d,u,r)}async function l(u){let d=this._loading[u];if(d)return d;try{return await(this._loading[u]=n(u))}finally{delete this._loading[u]}}}addSchema(t,r,n,o=this.opts.validateSchema){if(Array.isArray(t)){for(let s of t)this.addSchema(s,void 0,n,o);return this}let i;if(typeof t=="object"){let{schemaId:s}=this.opts;if(i=t[s],i!==void 0&&typeof i!="string")throw new Error(`schema ${s} must be string`)}return r=(0,bn.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(t,n,r,o,!0),this}addMetaSchema(t,r,n=this.opts.validateSchema){return this.addSchema(t,r,!0,n),this}validateSchema(t,r){if(typeof t=="boolean")return!0;let n;if(n=t.$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,t);if(!o&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return o}getSchema(t){let r;for(;typeof(r=Fm.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,o=new vn.SchemaEnv({schema:{},schemaId:n});if(r=vn.resolveSchema.call(this,o,t),!r)return;this.refs[t]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(t){if(t instanceof RegExp)return this._removeAllSchemas(this.schemas,t),this._removeAllSchemas(this.refs,t),this;switch(typeof t){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=Fm.call(this,t);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[t],delete this.refs[t],this}case"object":{let r=t;this._cache.delete(r);let n=t[this.opts.schemaId];return n&&(n=(0,bn.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let n;if(typeof t=="string")n=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof t=="object"&&r===void 0){if(r=t,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(a$.call(this,n,r),!r)return(0,Qa.eachItem)(n,i=>Ja.call(this,i)),this;u$.call(this,r);let o={...r,type:(0,Uo.getJSONTypes)(r.type),schemaType:(0,Uo.getJSONTypes)(r.schemaType)};return(0,Qa.eachItem)(n,o.type.length===0?i=>Ja.call(this,i,o):i=>o.type.forEach(s=>Ja.call(this,i,o,s))),this}getKeyword(t){let r=this.RULES.all[t];return typeof r=="object"?r.definition:!!r}removeKeyword(t){let{RULES:r}=this;delete r.keywords[t],delete r.all[t];for(let n of r.rules){let o=n.rules.findIndex(i=>i.keyword===t);o>=0&&n.rules.splice(o,1)}return this}addFormat(t,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[t]=r,this}errorsText(t=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!t||t.length===0?"No errors":t.map(o=>`${n}${o.instancePath} ${o.message}`).reduce((o,i)=>o+r+i)}$dataMetaSchema(t,r){let n=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let o of r){let i=o.split("/").slice(1),s=t;for(let a of i)s=s[a];for(let a in n){let c=n[a];if(typeof c!="object")continue;let{$data:l}=c.definition,u=s[a];l&&u&&(s[a]=Hm(u))}}return t}_removeAllSchemas(t,r){for(let n in t){let o=t[n];(!r||r.test(n))&&(typeof o=="string"?delete t[n]:o&&!o.meta&&(this._cache.delete(o.schema),delete t[n]))}}_addSchema(t,r,n,o=this.opts.validateSchema,i=this.opts.addUsedSchema){let s,{schemaId:a}=this.opts;if(typeof t=="object")s=t[a];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof t!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(t);if(c!==void 0)return c;n=(0,bn.normalizeId)(s||n);let l=bn.getSchemaRefs.call(this,t,n);return c=new vn.SchemaEnv({schema:t,schemaId:a,meta:r,baseId:n,localRefs:l}),this._cache.set(c.schema,c),i&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),o&&this.validateSchema(t,!0),c}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):vn.compileSchema.call(this,t),!t.validate)throw new Error("ajv implementation error");return t.validate}_compileMetaSchema(t){let r=this.opts;this.opts=this._metaOpts;try{vn.compileSchema.call(this,t)}finally{this.opts=r}}};xn.ValidationError=Vk.default;xn.MissingRefError=Vm.default;fe.default=xn;function Um(e,t,r,n="error"){for(let o in e){let i=o;i in t&&this.logger[n](`${r}: option ${o}. ${e[i]}`)}}function Fm(e){return e=(0,bn.normalizeId)(e),this.schemas[e]||this.refs[e]}function e$(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function t$(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function r$(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r)}}function n$(){let e={...this.opts};for(let t of Gk)delete e[t];return e}var o$={log(){},warn(){},error(){}};function i$(e){if(e===!1)return o$;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw new Error("logger must implement log, warn and error methods")}var s$=/^[a-z_$][a-z0-9_$:-]*$/i;function a$(e,t){let{RULES:r}=this;if((0,Qa.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!s$.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!t&&t.$data&&!("code"in t||"validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function Ja(e,t,r){var n;let o=t?.post;if(r&&o)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,s=o?i.post:i.rules.find(({type:c})=>c===r);if(s||(s={type:r,rules:[]},i.rules.push(s)),i.keywords[e]=!0,!t)return;let a={keyword:e,definition:{...t,type:(0,Uo.getJSONTypes)(t.type),schemaType:(0,Uo.getJSONTypes)(t.schemaType)}};t.before?c$.call(this,s,a,t.before):s.rules.push(a),i.all[e]=a,(n=t.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function c$(e,t,r){let n=e.rules.findIndex(o=>o.keyword===r);n>=0?e.rules.splice(n,0,t):(e.rules.push(t),this.logger.warn(`rule ${r} is not defined`))}function u$(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=Hm(t)),e.validateSchema=this.compile(t,!0))}var l$={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Hm(e){return{anyOf:[e,l$]}}});var Gm=v(Ya=>{"use strict";Object.defineProperty(Ya,"__esModule",{value:!0});var d$={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Ya.default=d$});var Xm=v(Ft=>{"use strict";Object.defineProperty(Ft,"__esModule",{value:!0});Ft.callRef=Ft.getValidate=void 0;var f$=_n(),Jm=je(),Re=C(),hr=lt(),Qm=qo(),Fo=B(),p$={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:o,schemaEnv:i,validateName:s,opts:a,self:c}=n,{root:l}=i;if((r==="#"||r==="#/")&&o===l.baseId)return d();let u=Qm.resolveRef.call(c,l,o,r);if(u===void 0)throw new f$.default(n.opts.uriResolver,o,r);if(u instanceof Qm.SchemaEnv)return f(u);return p(u);function d(){if(i===l)return Vo(e,s,i,i.$async);let m=t.scopeValue("root",{ref:l});return Vo(e,(0,Re._)`${m}.validate`,l,l.$async)}function f(m){let h=Ym(e,m);Vo(e,h,m,m.$async)}function p(m){let h=t.scopeValue("schema",a.code.source===!0?{ref:m,code:(0,Re.stringify)(m)}:{ref:m}),_=t.name("valid"),w=e.subschema({schema:m,dataTypes:[],schemaPath:Re.nil,topSchemaRef:h,errSchemaPath:r},_);e.mergeEvaluated(w),e.ok(_)}}};function Ym(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,Re._)`${r.scopeValue("wrapper",{ref:t})}.validate`}Ft.getValidate=Ym;function Vo(e,t,r,n){let{gen:o,it:i}=e,{allErrors:s,schemaEnv:a,opts:c}=i,l=c.passContext?hr.default.this:Re.nil;n?u():d();function u(){if(!a.$async)throw new Error("async schema referenced by sync schema");let m=o.let("valid");o.try(()=>{o.code((0,Re._)`await ${(0,Jm.callValidateCode)(e,t,l)}`),p(t),s||o.assign(m,!0)},h=>{o.if((0,Re._)`!(${h} instanceof ${i.ValidationError})`,()=>o.throw(h)),f(h),s||o.assign(m,!1)}),e.ok(m)}function d(){e.result((0,Jm.callValidateCode)(e,t,l),()=>p(t),()=>f(t))}function f(m){let h=(0,Re._)`${m}.errors`;o.assign(hr.default.vErrors,(0,Re._)`${hr.default.vErrors} === null ? ${h} : ${hr.default.vErrors}.concat(${h})`),o.assign(hr.default.errors,(0,Re._)`${hr.default.vErrors}.length`)}function p(m){var h;if(!i.opts.unevaluated)return;let _=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(i.props!==!0)if(_&&!_.dynamicProps)_.props!==void 0&&(i.props=Fo.mergeEvaluated.props(o,_.props,i.props));else{let w=o.var("props",(0,Re._)`${m}.evaluated.props`);i.props=Fo.mergeEvaluated.props(o,w,i.props,Re.Name)}if(i.items!==!0)if(_&&!_.dynamicItems)_.items!==void 0&&(i.items=Fo.mergeEvaluated.items(o,_.items,i.items));else{let w=o.var("items",(0,Re._)`${m}.evaluated.items`);i.items=Fo.mergeEvaluated.items(o,w,i.items,Re.Name)}}}Ft.callRef=Vo;Ft.default=p$});var eh=v(Xa=>{"use strict";Object.defineProperty(Xa,"__esModule",{value:!0});var m$=Gm(),h$=Xm(),g$=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",m$.default,h$.default];Xa.default=g$});var th=v(ec=>{"use strict";Object.defineProperty(ec,"__esModule",{value:!0});var Ko=C(),$t=Ko.operators,Ho={maximum:{okStr:"<=",ok:$t.LTE,fail:$t.GT},minimum:{okStr:">=",ok:$t.GTE,fail:$t.LT},exclusiveMaximum:{okStr:"<",ok:$t.LT,fail:$t.GTE},exclusiveMinimum:{okStr:">",ok:$t.GT,fail:$t.LTE}},y$={message:({keyword:e,schemaCode:t})=>(0,Ko.str)`must be ${Ho[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,Ko._)`{comparison: ${Ho[e].okStr}, limit: ${t}}`},_$={keyword:Object.keys(Ho),type:"number",schemaType:"number",$data:!0,error:y$,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0,Ko._)`${r} ${Ho[t].fail} ${n} || isNaN(${r})`)}};ec.default=_$});var rh=v(tc=>{"use strict";Object.defineProperty(tc,"__esModule",{value:!0});var kn=C(),w$={message:({schemaCode:e})=>(0,kn.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,kn._)`{multipleOf: ${e}}`},v$={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:w$,code(e){let{gen:t,data:r,schemaCode:n,it:o}=e,i=o.opts.multipleOfPrecision,s=t.let("res"),a=i?(0,kn._)`Math.abs(Math.round(${s}) - ${s}) > 1e-${i}`:(0,kn._)`${s} !== parseInt(${s})`;e.fail$data((0,kn._)`(${n} === 0 || (${s} = ${r}/${n}, ${a}))`)}};tc.default=v$});var oh=v(rc=>{"use strict";Object.defineProperty(rc,"__esModule",{value:!0});function nh(e){let t=e.length,r=0,n=0,o;for(;n<t;)r++,o=e.charCodeAt(n++),o>=55296&&o<=56319&&n<t&&(o=e.charCodeAt(n),(o&64512)===56320&&n++);return r}rc.default=nh;nh.code='require("ajv/dist/runtime/ucs2length").default'});var ih=v(nc=>{"use strict";Object.defineProperty(nc,"__esModule",{value:!0});var Vt=C(),b$=B(),x$=oh(),k$={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return(0,Vt.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,Vt._)`{limit: ${e}}`},$$={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:k$,code(e){let{keyword:t,data:r,schemaCode:n,it:o}=e,i=t==="maxLength"?Vt.operators.GT:Vt.operators.LT,s=o.opts.unicode===!1?(0,Vt._)`${r}.length`:(0,Vt._)`${(0,b$.useFunc)(e.gen,x$.default)}(${r})`;e.fail$data((0,Vt._)`${s} ${i} ${n}`)}};nc.default=$$});var sh=v(oc=>{"use strict";Object.defineProperty(oc,"__esModule",{value:!0});var S$=je(),E$=B(),gr=C(),T$={message:({schemaCode:e})=>(0,gr.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,gr._)`{pattern: ${e}}`},P$={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:T$,code(e){let{gen:t,data:r,$data:n,schema:o,schemaCode:i,it:s}=e,a=s.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=s.opts.code,l=c.code==="new RegExp"?(0,gr._)`new RegExp`:(0,E$.useFunc)(t,c),u=t.let("valid");t.try(()=>t.assign(u,(0,gr._)`${l}(${i}, ${a}).test(${r})`),()=>t.assign(u,!1)),e.fail$data((0,gr._)`!${u}`)}else{let c=(0,S$.usePattern)(e,o);e.fail$data((0,gr._)`!${c}.test(${r})`)}}};oc.default=P$});var ah=v(ic=>{"use strict";Object.defineProperty(ic,"__esModule",{value:!0});var $n=C(),R$={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,$n.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,$n._)`{limit: ${e}}`},z$={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:R$,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxProperties"?$n.operators.GT:$n.operators.LT;e.fail$data((0,$n._)`Object.keys(${r}).length ${o} ${n}`)}};ic.default=z$});var ch=v(sc=>{"use strict";Object.defineProperty(sc,"__esModule",{value:!0});var Sn=je(),En=C(),I$=B(),O$={message:({params:{missingProperty:e}})=>(0,En.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,En._)`{missingProperty: ${e}}`},A$={keyword:"required",type:"object",schemaType:"array",$data:!0,error:O$,code(e){let{gen:t,schema:r,schemaCode:n,data:o,$data:i,it:s}=e,{opts:a}=s;if(!i&&r.length===0)return;let c=r.length>=a.loopRequired;if(s.allErrors?l():u(),a.strictRequired){let p=e.parentSchema.properties,{definedProperties:m}=e.it;for(let h of r)if(p?.[h]===void 0&&!m.has(h)){let _=s.schemaEnv.baseId+s.errSchemaPath,w=`required property "${h}" is not defined at "${_}" (strictRequired)`;(0,I$.checkStrictMode)(s,w,s.opts.strictRequired)}}function l(){if(c||i)e.block$data(En.nil,d);else for(let p of r)(0,Sn.checkReportMissingProp)(e,p)}function u(){let p=t.let("missing");if(c||i){let m=t.let("valid",!0);e.block$data(m,()=>f(p,m)),e.ok(m)}else t.if((0,Sn.checkMissingProp)(e,r,p)),(0,Sn.reportMissingProp)(e,p),t.else()}function d(){t.forOf("prop",n,p=>{e.setParams({missingProperty:p}),t.if((0,Sn.noPropertyInData)(t,o,p,a.ownProperties),()=>e.error())})}function f(p,m){e.setParams({missingProperty:p}),t.forOf(p,n,()=>{t.assign(m,(0,Sn.propertyInData)(t,o,p,a.ownProperties)),t.if((0,En.not)(m),()=>{e.error(),t.break()})},En.nil)}}};sc.default=A$});var uh=v(ac=>{"use strict";Object.defineProperty(ac,"__esModule",{value:!0});var Tn=C(),N$={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,Tn.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,Tn._)`{limit: ${e}}`},C$={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:N$,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxItems"?Tn.operators.GT:Tn.operators.LT;e.fail$data((0,Tn._)`${r}.length ${o} ${n}`)}};ac.default=C$});var Wo=v(cc=>{"use strict";Object.defineProperty(cc,"__esModule",{value:!0});var lh=Ia();lh.code='require("ajv/dist/runtime/equal").default';cc.default=lh});var dh=v(lc=>{"use strict";Object.defineProperty(lc,"__esModule",{value:!0});var uc=pn(),pe=C(),D$=B(),j$=Wo(),M$={message:({params:{i:e,j:t}})=>(0,pe.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,pe._)`{i: ${e}, j: ${t}}`},q$={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:M$,code(e){let{gen:t,data:r,$data:n,schema:o,parentSchema:i,schemaCode:s,it:a}=e;if(!n&&!o)return;let c=t.let("valid"),l=i.items?(0,uc.getSchemaTypes)(i.items):[];e.block$data(c,u,(0,pe._)`${s} === false`),e.ok(c);function u(){let m=t.let("i",(0,pe._)`${r}.length`),h=t.let("j");e.setParams({i:m,j:h}),t.assign(c,!0),t.if((0,pe._)`${m} > 1`,()=>(d()?f:p)(m,h))}function d(){return l.length>0&&!l.some(m=>m==="object"||m==="array")}function f(m,h){let _=t.name("item"),w=(0,uc.checkDataTypes)(l,_,a.opts.strictNumbers,uc.DataType.Wrong),b=t.const("indices",(0,pe._)`{}`);t.for((0,pe._)`;${m}--;`,()=>{t.let(_,(0,pe._)`${r}[${m}]`),t.if(w,(0,pe._)`continue`),l.length>1&&t.if((0,pe._)`typeof ${_} == "string"`,(0,pe._)`${_} += "_"`),t.if((0,pe._)`typeof ${b}[${_}] == "number"`,()=>{t.assign(h,(0,pe._)`${b}[${_}]`),e.error(),t.assign(c,!1).break()}).code((0,pe._)`${b}[${_}] = ${m}`)})}function p(m,h){let _=(0,D$.useFunc)(t,j$.default),w=t.name("outer");t.label(w).for((0,pe._)`;${m}--;`,()=>t.for((0,pe._)`${h} = ${m}; ${h}--;`,()=>t.if((0,pe._)`${_}(${r}[${m}], ${r}[${h}])`,()=>{e.error(),t.assign(c,!1).break(w)})))}}};lc.default=q$});var fh=v(fc=>{"use strict";Object.defineProperty(fc,"__esModule",{value:!0});var dc=C(),L$=B(),B$=Wo(),Z$={message:"must be equal to constant",params:({schemaCode:e})=>(0,dc._)`{allowedValue: ${e}}`},U$={keyword:"const",$data:!0,error:Z$,code(e){let{gen:t,data:r,$data:n,schemaCode:o,schema:i}=e;n||i&&typeof i=="object"?e.fail$data((0,dc._)`!${(0,L$.useFunc)(t,B$.default)}(${r}, ${o})`):e.fail((0,dc._)`${i} !== ${r}`)}};fc.default=U$});var ph=v(pc=>{"use strict";Object.defineProperty(pc,"__esModule",{value:!0});var Pn=C(),F$=B(),V$=Wo(),K$={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,Pn._)`{allowedValues: ${e}}`},H$={keyword:"enum",schemaType:"array",$data:!0,error:K$,code(e){let{gen:t,data:r,$data:n,schema:o,schemaCode:i,it:s}=e;if(!n&&o.length===0)throw new Error("enum must have non-empty array");let a=o.length>=s.opts.loopEnum,c,l=()=>c??(c=(0,F$.useFunc)(t,V$.default)),u;if(a||n)u=t.let("valid"),e.block$data(u,d);else{if(!Array.isArray(o))throw new Error("ajv implementation error");let p=t.const("vSchema",i);u=(0,Pn.or)(...o.map((m,h)=>f(p,h)))}e.pass(u);function d(){t.assign(u,!1),t.forOf("v",i,p=>t.if((0,Pn._)`${l()}(${r}, ${p})`,()=>t.assign(u,!0).break()))}function f(p,m){let h=o[m];return typeof h=="object"&&h!==null?(0,Pn._)`${l()}(${r}, ${p}[${m}])`:(0,Pn._)`${r} === ${h}`}}};pc.default=H$});var mh=v(mc=>{"use strict";Object.defineProperty(mc,"__esModule",{value:!0});var W$=th(),G$=rh(),J$=ih(),Q$=sh(),Y$=ah(),X$=ch(),eS=uh(),tS=dh(),rS=fh(),nS=ph(),oS=[W$.default,G$.default,J$.default,Q$.default,Y$.default,X$.default,eS.default,tS.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},rS.default,nS.default];mc.default=oS});var gc=v(Rn=>{"use strict";Object.defineProperty(Rn,"__esModule",{value:!0});Rn.validateAdditionalItems=void 0;var Kt=C(),hc=B(),iS={message:({params:{len:e}})=>(0,Kt.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,Kt._)`{limit: ${e}}`},sS={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:iS,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0,hc.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}hh(e,n)}};function hh(e,t){let{gen:r,schema:n,data:o,keyword:i,it:s}=e;s.items=!0;let a=r.const("len",(0,Kt._)`${o}.length`);if(n===!1)e.setParams({len:t.length}),e.pass((0,Kt._)`${a} <= ${t.length}`);else if(typeof n=="object"&&!(0,hc.alwaysValidSchema)(s,n)){let l=r.var("valid",(0,Kt._)`${a} <= ${t.length}`);r.if((0,Kt.not)(l),()=>c(l)),e.ok(l)}function c(l){r.forRange("i",t.length,a,u=>{e.subschema({keyword:i,dataProp:u,dataPropType:hc.Type.Num},l),s.allErrors||r.if((0,Kt.not)(l),()=>r.break())})}}Rn.validateAdditionalItems=hh;Rn.default=sS});var yc=v(zn=>{"use strict";Object.defineProperty(zn,"__esModule",{value:!0});zn.validateTuple=void 0;var gh=C(),Go=B(),aS=je(),cS={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return yh(e,"additionalItems",t);r.items=!0,!(0,Go.alwaysValidSchema)(r,t)&&e.ok((0,aS.validateArray)(e))}};function yh(e,t,r=e.schema){let{gen:n,parentSchema:o,data:i,keyword:s,it:a}=e;u(o),a.opts.unevaluated&&r.length&&a.items!==!0&&(a.items=Go.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),l=n.const("len",(0,gh._)`${i}.length`);r.forEach((d,f)=>{(0,Go.alwaysValidSchema)(a,d)||(n.if((0,gh._)`${l} > ${f}`,()=>e.subschema({keyword:s,schemaProp:f,dataProp:f},c)),e.ok(c))});function u(d){let{opts:f,errSchemaPath:p}=a,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[t]===!1);if(f.strictTuples&&!h){let _=`"${s}" is ${m}-tuple, but minItems or maxItems/${t} are not specified or different at path "${p}"`;(0,Go.checkStrictMode)(a,_,f.strictTuples)}}}zn.validateTuple=yh;zn.default=cS});var _h=v(_c=>{"use strict";Object.defineProperty(_c,"__esModule",{value:!0});var uS=yc(),lS={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,uS.validateTuple)(e,"items")};_c.default=lS});var vh=v(wc=>{"use strict";Object.defineProperty(wc,"__esModule",{value:!0});var wh=C(),dS=B(),fS=je(),pS=gc(),mS={message:({params:{len:e}})=>(0,wh.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,wh._)`{limit: ${e}}`},hS={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:mS,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:o}=r;n.items=!0,!(0,dS.alwaysValidSchema)(n,t)&&(o?(0,pS.validateAdditionalItems)(e,o):e.ok((0,fS.validateArray)(e)))}};wc.default=hS});var bh=v(vc=>{"use strict";Object.defineProperty(vc,"__esModule",{value:!0});var qe=C(),Jo=B(),gS={message:({params:{min:e,max:t}})=>t===void 0?(0,qe.str)`must contain at least ${e} valid item(s)`:(0,qe.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,qe._)`{minContains: ${e}}`:(0,qe._)`{minContains: ${e}, maxContains: ${t}}`},yS={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:gS,code(e){let{gen:t,schema:r,parentSchema:n,data:o,it:i}=e,s,a,{minContains:c,maxContains:l}=n;i.opts.next?(s=c===void 0?1:c,a=l):s=1;let u=t.const("len",(0,qe._)`${o}.length`);if(e.setParams({min:s,max:a}),a===void 0&&s===0){(0,Jo.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&s>a){(0,Jo.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,Jo.alwaysValidSchema)(i,r)){let h=(0,qe._)`${u} >= ${s}`;a!==void 0&&(h=(0,qe._)`${h} && ${u} <= ${a}`),e.pass(h);return}i.items=!0;let d=t.name("valid");a===void 0&&s===1?p(d,()=>t.if(d,()=>t.break())):s===0?(t.let(d,!0),a!==void 0&&t.if((0,qe._)`${o}.length > 0`,f)):(t.let(d,!1),f()),e.result(d,()=>e.reset());function f(){let h=t.name("_valid"),_=t.let("count",0);p(h,()=>t.if(h,()=>m(_)))}function p(h,_){t.forRange("i",0,u,w=>{e.subschema({keyword:"contains",dataProp:w,dataPropType:Jo.Type.Num,compositeRule:!0},h),_()})}function m(h){t.code((0,qe._)`${h}++`),a===void 0?t.if((0,qe._)`${h} >= ${s}`,()=>t.assign(d,!0).break()):(t.if((0,qe._)`${h} > ${a}`,()=>t.assign(d,!1).break()),s===1?t.assign(d,!0):t.if((0,qe._)`${h} >= ${s}`,()=>t.assign(d,!0)))}}};vc.default=yS});var $h=v(tt=>{"use strict";Object.defineProperty(tt,"__esModule",{value:!0});tt.validateSchemaDeps=tt.validatePropertyDeps=tt.error=void 0;var bc=C(),_S=B(),In=je();tt.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return(0,bc.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0,bc._)`{property: ${e},
7
+ || ${s} === "boolean" || ${o} === null`).assign(a,(0,N._)`[${o}]`)}}}function L0({gen:e,parentData:t,parentDataProperty:r},n){e.if((0,N._)`${t} !== undefined`,()=>e.assign((0,N._)`${t}[${r}]`,n))}function Sa(e,t,r,n=ur.Correct){let o=n===ur.Correct?N.operators.EQ:N.operators.NEQ,i;switch(e){case"null":return(0,N._)`${t} ${o} null`;case"array":i=(0,N._)`Array.isArray(${t})`;break;case"object":i=(0,N._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":i=s((0,N._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":i=s();break;default:return(0,N._)`typeof ${t} ${o} ${e}`}return n===ur.Correct?i:(0,N.not)(i);function s(a=N.nil){return(0,N.and)((0,N._)`typeof ${t} == "number"`,a,r?(0,N._)`isFinite(${t})`:N.nil)}}ye.checkDataType=Sa;function Ea(e,t,r,n){if(e.length===1)return Sa(e[0],t,r,n);let o,i=(0,Bp.toHash)(e);if(i.array&&i.object){let s=(0,N._)`typeof ${t} != "object"`;o=i.null?s:(0,N._)`!${t} || ${s}`,delete i.null,delete i.array,delete i.object}else o=N.nil;i.number&&delete i.integer;for(let s in i)o=(0,N.and)(o,Sa(s,t,r,n));return o}ye.checkDataTypes=Ea;var B0={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,N._)`{type: ${e}}`:(0,N._)`{type: ${t}}`};function Ta(e){let t=Z0(e);(0,C0.reportError)(t,B0)}ye.reportTypeError=Ta;function Z0(e){let{gen:t,data:r,schema:n}=e,o=(0,Bp.schemaRefOrVal)(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:e}}});var Vp=v(Ao=>{"use strict";Object.defineProperty(Ao,"__esModule",{value:!0});Ao.assignDefaults=void 0;var lr=C(),U0=B();function F0(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let o in r)Fp(e,o,r[o].default);else t==="array"&&Array.isArray(n)&&n.forEach((o,i)=>Fp(e,i,o.default))}Ao.assignDefaults=F0;function Fp(e,t,r){let{gen:n,compositeRule:o,data:i,opts:s}=e;if(r===void 0)return;let a=(0,lr._)`${i}${(0,lr.getProperty)(t)}`;if(o){(0,U0.checkStrictMode)(e,`default is ignored for: ${a}`);return}let c=(0,lr._)`${a} === undefined`;s.useDefaults==="empty"&&(c=(0,lr._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,lr._)`${a} = ${(0,lr.stringify)(r)}`)}});var je=v(K=>{"use strict";Object.defineProperty(K,"__esModule",{value:!0});K.validateUnion=K.validateArray=K.usePattern=K.callValidateCode=K.schemaProperties=K.allSchemaProperties=K.noPropertyInData=K.propertyInData=K.isOwnProperty=K.hasPropFunc=K.reportMissingProp=K.checkMissingProp=K.checkReportMissingProp=void 0;var X=C(),Pa=B(),xt=lt(),V0=B();function K0(e,t){let{gen:r,data:n,it:o}=e;r.if(za(r,n,t,o.opts.ownProperties),()=>{e.setParams({missingProperty:(0,X._)`${t}`},!0),e.error()})}K.checkReportMissingProp=K0;function H0({gen:e,data:t,it:{opts:r}},n,o){return(0,X.or)(...n.map(i=>(0,X.and)(za(e,t,i,r.ownProperties),(0,X._)`${o} = ${i}`)))}K.checkMissingProp=H0;function W0(e,t){e.setParams({missingProperty:t},!0),e.error()}K.reportMissingProp=W0;function Kp(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,X._)`Object.prototype.hasOwnProperty`})}K.hasPropFunc=Kp;function Ra(e,t,r){return(0,X._)`${Kp(e)}.call(${t}, ${r})`}K.isOwnProperty=Ra;function G0(e,t,r,n){let o=(0,X._)`${t}${(0,X.getProperty)(r)} !== undefined`;return n?(0,X._)`${o} && ${Ra(e,t,r)}`:o}K.propertyInData=G0;function za(e,t,r,n){let o=(0,X._)`${t}${(0,X.getProperty)(r)} === undefined`;return n?(0,X.or)(o,(0,X.not)(Ra(e,t,r))):o}K.noPropertyInData=za;function Hp(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}K.allSchemaProperties=Hp;function J0(e,t){return Hp(t).filter(r=>!(0,Pa.alwaysValidSchema)(e,t[r]))}K.schemaProperties=J0;function Q0({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:i},it:s},a,c,l){let u=l?(0,X._)`${e}, ${t}, ${n}${o}`:t,d=[[xt.default.instancePath,(0,X.strConcat)(xt.default.instancePath,i)],[xt.default.parentData,s.parentData],[xt.default.parentDataProperty,s.parentDataProperty],[xt.default.rootData,xt.default.rootData]];s.opts.dynamicRef&&d.push([xt.default.dynamicAnchors,xt.default.dynamicAnchors]);let f=(0,X._)`${u}, ${r.object(...d)}`;return c!==X.nil?(0,X._)`${a}.call(${c}, ${f})`:(0,X._)`${a}(${f})`}K.callValidateCode=Q0;var Y0=(0,X._)`new RegExp`;function X0({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:o}=t.code,i=o(r,n);return e.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,X._)`${o.code==="new RegExp"?Y0:(0,V0.useFunc)(e,o)}(${r}, ${n})`})}K.usePattern=X0;function ex(e){let{gen:t,data:r,keyword:n,it:o}=e,i=t.name("valid");if(o.allErrors){let a=t.let("valid",!0);return s(()=>t.assign(a,!1)),a}return t.var(i,!0),s(()=>t.break()),i;function s(a){let c=t.const("len",(0,X._)`${r}.length`);t.forRange("i",0,c,l=>{e.subschema({keyword:n,dataProp:l,dataPropType:Pa.Type.Num},i),t.if((0,X.not)(i),a)})}}K.validateArray=ex;function tx(e){let{gen:t,schema:r,keyword:n,it:o}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,Pa.alwaysValidSchema)(o,c))&&!o.opts.unevaluated)return;let s=t.let("valid",!1),a=t.name("_valid");t.block(()=>r.forEach((c,l)=>{let u=e.subschema({keyword:n,schemaProp:l,compositeRule:!0},a);t.assign(s,(0,X._)`${s} || ${a}`),e.mergeValidEvaluated(u,a)||t.if((0,X.not)(s))})),e.result(s,()=>e.reset(),()=>e.error(!0))}K.validateUnion=tx});var Jp=v(Xe=>{"use strict";Object.defineProperty(Xe,"__esModule",{value:!0});Xe.validateKeywordUsage=Xe.validSchemaType=Xe.funcKeywordCode=Xe.macroKeywordCode=void 0;var ke=C(),Zt=lt(),rx=je(),nx=fn();function ox(e,t){let{gen:r,keyword:n,schema:o,parentSchema:i,it:s}=e,a=t.macro.call(s.self,o,i,s),c=Gp(r,n,a);s.opts.validateSchema!==!1&&s.self.validateSchema(a,!0);let l=r.name("valid");e.subschema({schema:a,schemaPath:ke.nil,errSchemaPath:`${s.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},l),e.pass(l,()=>e.error(!0))}Xe.macroKeywordCode=ox;function ix(e,t){var r;let{gen:n,keyword:o,schema:i,parentSchema:s,$data:a,it:c}=e;ax(c,t);let l=!a&&t.compile?t.compile.call(c.self,i,s,c):t.validate,u=Gp(n,o,l),d=n.let("valid");e.block$data(d,f),e.ok((r=t.valid)!==null&&r!==void 0?r:d);function f(){if(t.errors===!1)h(),t.modifying&&Wp(e),_(()=>e.error());else{let w=t.async?p():m();t.modifying&&Wp(e),_(()=>sx(e,w))}}function p(){let w=n.let("ruleErrs",null);return n.try(()=>h((0,ke._)`await `),b=>n.assign(d,!1).if((0,ke._)`${b} instanceof ${c.ValidationError}`,()=>n.assign(w,(0,ke._)`${b}.errors`),()=>n.throw(b))),w}function m(){let w=(0,ke._)`${u}.errors`;return n.assign(w,null),h(ke.nil),w}function h(w=t.async?(0,ke._)`await `:ke.nil){let b=c.opts.passContext?Zt.default.this:Zt.default.self,x=!("compile"in t&&!a||t.schema===!1);n.assign(d,(0,ke._)`${w}${(0,rx.callValidateCode)(e,u,b,x)}`,t.modifying)}function _(w){var b;n.if((0,ke.not)((b=t.valid)!==null&&b!==void 0?b:d),w)}}Xe.funcKeywordCode=ix;function Wp(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0,ke._)`${n.parentData}[${n.parentDataProperty}]`))}function sx(e,t){let{gen:r}=e;r.if((0,ke._)`Array.isArray(${t})`,()=>{r.assign(Zt.default.vErrors,(0,ke._)`${Zt.default.vErrors} === null ? ${t} : ${Zt.default.vErrors}.concat(${t})`).assign(Zt.default.errors,(0,ke._)`${Zt.default.vErrors}.length`),(0,nx.extendErrors)(e)},()=>e.error())}function ax({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function Gp(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,ke.stringify)(r)})}function cx(e,t,r=!1){return!t.length||t.some(n=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}Xe.validSchemaType=cx;function ux({schema:e,opts:t,self:r,errSchemaPath:n},o,i){if(Array.isArray(o.keyword)?!o.keyword.includes(i):o.keyword!==i)throw new Error("ajv implementation error");let s=o.dependencies;if(s?.some(a=>!Object.prototype.hasOwnProperty.call(e,a)))throw new Error(`parent schema must have dependencies of ${i}: ${s.join(",")}`);if(o.validateSchema&&!o.validateSchema(e[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}Xe.validateKeywordUsage=ux});var Yp=v(kt=>{"use strict";Object.defineProperty(kt,"__esModule",{value:!0});kt.extendSubschemaMode=kt.extendSubschemaData=kt.getSubschema=void 0;var et=C(),Qp=B();function lx(e,{keyword:t,schemaProp:r,schema:n,schemaPath:o,errSchemaPath:i,topSchemaRef:s}){if(t!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let a=e.schema[t];return r===void 0?{schema:a,schemaPath:(0,et._)`${e.schemaPath}${(0,et.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:a[r],schemaPath:(0,et._)`${e.schemaPath}${(0,et.getProperty)(t)}${(0,et.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,Qp.escapeFragment)(r)}`}}if(n!==void 0){if(o===void 0||i===void 0||s===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:o,topSchemaRef:s,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}kt.getSubschema=lx;function dx(e,t,{dataProp:r,dataPropType:n,data:o,dataTypes:i,propertyName:s}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=t;if(r!==void 0){let{errorPath:l,dataPathArr:u,opts:d}=t,f=a.let("data",(0,et._)`${t.data}${(0,et.getProperty)(r)}`,!0);c(f),e.errorPath=(0,et.str)`${l}${(0,Qp.getErrorPath)(r,n,d.jsPropertySyntax)}`,e.parentDataProperty=(0,et._)`${r}`,e.dataPathArr=[...u,e.parentDataProperty]}if(o!==void 0){let l=o instanceof et.Name?o:a.let("data",o,!0);c(l),s!==void 0&&(e.propertyName=s)}i&&(e.dataTypes=i);function c(l){e.data=l,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,l]}}kt.extendSubschemaData=dx;function fx(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:o,allErrors:i}){n!==void 0&&(e.compositeRule=n),o!==void 0&&(e.createErrors=o),i!==void 0&&(e.allErrors=i),e.jtdDiscriminator=t,e.jtdMetadata=r}kt.extendSubschemaMode=fx});var Ia=v((RD,Xp)=>{"use strict";Xp.exports=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var n,o,i;if(Array.isArray(t)){if(n=t.length,n!=r.length)return!1;for(o=n;o--!==0;)if(!e(t[o],r[o]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(i=Object.keys(t),n=i.length,n!==Object.keys(r).length)return!1;for(o=n;o--!==0;)if(!Object.prototype.hasOwnProperty.call(r,i[o]))return!1;for(o=n;o--!==0;){var s=i[o];if(!e(t[s],r[s]))return!1}return!0}return t!==t&&r!==r}});var tm=v((zD,em)=>{"use strict";var $t=em.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},o=r.post||function(){};No(t,n,o,e,"",e)};$t.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};$t.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};$t.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};$t.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 No(e,t,r,n,o,i,s,a,c,l){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,o,i,s,a,c,l);for(var u in n){var d=n[u];if(Array.isArray(d)){if(u in $t.arrayKeywords)for(var f=0;f<d.length;f++)No(e,t,r,d[f],o+"/"+u+"/"+f,i,o,u,n,f)}else if(u in $t.propsKeywords){if(d&&typeof d=="object")for(var p in d)No(e,t,r,d[p],o+"/"+u+"/"+px(p),i,o,u,n,p)}else(u in $t.keywords||e.allKeys&&!(u in $t.skipKeywords))&&No(e,t,r,d,o+"/"+u,i,o,u,n)}r(n,o,i,s,a,c,l)}}function px(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var mn=v(Pe=>{"use strict";Object.defineProperty(Pe,"__esModule",{value:!0});Pe.getSchemaRefs=Pe.resolveUrl=Pe.normalizeId=Pe._getFullPath=Pe.getFullPath=Pe.inlineRef=void 0;var mx=B(),hx=Ia(),gx=tm(),yx=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function _x(e,t=!0){return typeof e=="boolean"?!0:t===!0?!Oa(e):t?rm(e)<=t:!1}Pe.inlineRef=_x;var wx=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Oa(e){for(let t in e){if(wx.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(Oa)||typeof r=="object"&&Oa(r))return!0}return!1}function rm(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!yx.has(r)&&(typeof e[r]=="object"&&(0,mx.eachItem)(e[r],n=>t+=rm(n)),t===1/0))return 1/0}return t}function nm(e,t="",r){r!==!1&&(t=dr(t));let n=e.parse(t);return om(e,n)}Pe.getFullPath=nm;function om(e,t){return e.serialize(t).split("#")[0]+"#"}Pe._getFullPath=om;var vx=/#\/?$/;function dr(e){return e?e.replace(vx,""):""}Pe.normalizeId=dr;function bx(e,t,r){return r=dr(r),e.resolve(t,r)}Pe.resolveUrl=bx;var xx=/^[a-z_][-a-z0-9._]*$/i;function kx(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=dr(e[r]||t),i={"":o},s=nm(n,o,!1),a={},c=new Set;return gx(e,{allKeys:!0},(d,f,p,m)=>{if(m===void 0)return;let h=s+f,_=i[m];typeof d[r]=="string"&&(_=w.call(this,d[r])),b.call(this,d.$anchor),b.call(this,d.$dynamicAnchor),i[f]=_;function w(x){let P=this.opts.uriResolver.resolve;if(x=dr(_?P(_,x):x),c.has(x))throw u(x);c.add(x);let I=this.refs[x];return typeof I=="string"&&(I=this.refs[I]),typeof I=="object"?l(d,I.schema,x):x!==dr(h)&&(x[0]==="#"?(l(d,a[x],x),a[x]=d):this.refs[x]=h),x}function b(x){if(typeof x=="string"){if(!xx.test(x))throw new Error(`invalid anchor "${x}"`);w.call(this,`#${x}`)}}}),a;function l(d,f,p){if(f!==void 0&&!hx(d,f))throw u(p)}function u(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Pe.getSchemaRefs=kx});var yn=v(St=>{"use strict";Object.defineProperty(St,"__esModule",{value:!0});St.getData=St.KeywordCxt=St.validateFunctionCode=void 0;var um=Mp(),im=pn(),Na=$a(),Co=pn(),$x=Vp(),gn=Jp(),Aa=Yp(),S=C(),A=lt(),Sx=mn(),dt=B(),hn=fn();function Ex(e){if(fm(e)&&(pm(e),dm(e))){Rx(e);return}lm(e,()=>(0,um.topBoolOrEmptySchema)(e))}St.validateFunctionCode=Ex;function lm({gen:e,validateName:t,schema:r,schemaEnv:n,opts:o},i){o.code.es5?e.func(t,(0,S._)`${A.default.data}, ${A.default.valCxt}`,n.$async,()=>{e.code((0,S._)`"use strict"; ${sm(r,o)}`),Px(e,o),e.code(i)}):e.func(t,(0,S._)`${A.default.data}, ${Tx(o)}`,n.$async,()=>e.code(sm(r,o)).code(i))}function Tx(e){return(0,S._)`{${A.default.instancePath}="", ${A.default.parentData}, ${A.default.parentDataProperty}, ${A.default.rootData}=${A.default.data}${e.dynamicRef?(0,S._)`, ${A.default.dynamicAnchors}={}`:S.nil}}={}`}function Px(e,t){e.if(A.default.valCxt,()=>{e.var(A.default.instancePath,(0,S._)`${A.default.valCxt}.${A.default.instancePath}`),e.var(A.default.parentData,(0,S._)`${A.default.valCxt}.${A.default.parentData}`),e.var(A.default.parentDataProperty,(0,S._)`${A.default.valCxt}.${A.default.parentDataProperty}`),e.var(A.default.rootData,(0,S._)`${A.default.valCxt}.${A.default.rootData}`),t.dynamicRef&&e.var(A.default.dynamicAnchors,(0,S._)`${A.default.valCxt}.${A.default.dynamicAnchors}`)},()=>{e.var(A.default.instancePath,(0,S._)`""`),e.var(A.default.parentData,(0,S._)`undefined`),e.var(A.default.parentDataProperty,(0,S._)`undefined`),e.var(A.default.rootData,A.default.data),t.dynamicRef&&e.var(A.default.dynamicAnchors,(0,S._)`{}`)})}function Rx(e){let{schema:t,opts:r,gen:n}=e;lm(e,()=>{r.$comment&&t.$comment&&hm(e),Nx(e),n.let(A.default.vErrors,null),n.let(A.default.errors,0),r.unevaluated&&zx(e),mm(e),jx(e)})}function zx(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0,S._)`${r}.evaluated`),t.if((0,S._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,S._)`${e.evaluated}.props`,(0,S._)`undefined`)),t.if((0,S._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,S._)`${e.evaluated}.items`,(0,S._)`undefined`))}function sm(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0,S._)`/*# sourceURL=${r} */`:S.nil}function Ix(e,t){if(fm(e)&&(pm(e),dm(e))){Ox(e,t);return}(0,um.boolOrEmptySchema)(e,t)}function dm({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function fm(e){return typeof e.schema!="boolean"}function Ox(e,t){let{schema:r,gen:n,opts:o}=e;o.$comment&&r.$comment&&hm(e),Cx(e),Dx(e);let i=n.const("_errs",A.default.errors);mm(e,i),n.var(t,(0,S._)`${i} === ${A.default.errors}`)}function pm(e){(0,dt.checkUnknownRules)(e),Ax(e)}function mm(e,t){if(e.opts.jtd)return am(e,[],!1,t);let r=(0,im.getSchemaTypes)(e.schema),n=(0,im.coerceAndCheckDataType)(e,r);am(e,r,!n,t)}function Ax(e){let{schema:t,errSchemaPath:r,opts:n,self:o}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0,dt.schemaHasRulesButRef)(t,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function Nx(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,dt.checkStrictMode)(e,"default is ignored in the schema root")}function Cx(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,Sx.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function Dx(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function hm({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:o}){let i=r.$comment;if(o.$comment===!0)e.code((0,S._)`${A.default.self}.logger.log(${i})`);else if(typeof o.$comment=="function"){let s=(0,S.str)`${n}/$comment`,a=e.scopeValue("root",{ref:t.root});e.code((0,S._)`${A.default.self}.opts.$comment(${i}, ${s}, ${a}.schema)`)}}function jx(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:o,opts:i}=e;r.$async?t.if((0,S._)`${A.default.errors} === 0`,()=>t.return(A.default.data),()=>t.throw((0,S._)`new ${o}(${A.default.vErrors})`)):(t.assign((0,S._)`${n}.errors`,A.default.vErrors),i.unevaluated&&Mx(e),t.return((0,S._)`${A.default.errors} === 0`))}function Mx({gen:e,evaluated:t,props:r,items:n}){r instanceof S.Name&&e.assign((0,S._)`${t}.props`,r),n instanceof S.Name&&e.assign((0,S._)`${t}.items`,n)}function am(e,t,r,n){let{gen:o,schema:i,data:s,allErrors:a,opts:c,self:l}=e,{RULES:u}=l;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,dt.schemaHasRulesButRef)(i,u))){o.block(()=>ym(e,"$ref",u.all.$ref.definition));return}c.jtd||qx(e,t),o.block(()=>{for(let f of u.rules)d(f);d(u.post)});function d(f){(0,Na.shouldUseGroup)(i,f)&&(f.type?(o.if((0,Co.checkDataType)(f.type,s,c.strictNumbers)),cm(e,f),t.length===1&&t[0]===f.type&&r&&(o.else(),(0,Co.reportTypeError)(e)),o.endIf()):cm(e,f),a||o.if((0,S._)`${A.default.errors} === ${n||0}`))}}function cm(e,t){let{gen:r,schema:n,opts:{useDefaults:o}}=e;o&&(0,$x.assignDefaults)(e,t.type),r.block(()=>{for(let i of t.rules)(0,Na.shouldUseRule)(n,i)&&ym(e,i.keyword,i.definition,t.type)})}function qx(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(Lx(e,t),e.opts.allowUnionTypes||Bx(e,t),Zx(e,e.dataTypes))}function Lx(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{gm(e.dataTypes,r)||Ca(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),Fx(e,t)}}function Bx(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&Ca(e,"use allowUnionTypes to allow union type keyword")}function Zx(e,t){let r=e.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Na.shouldUseRule)(e.schema,o)){let{type:i}=o.definition;i.length&&!i.some(s=>Ux(t,s))&&Ca(e,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function Ux(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function gm(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function Fx(e,t){let r=[];for(let n of e.dataTypes)gm(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r}function Ca(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,dt.checkStrictMode)(e,t,e.opts.strictTypes)}var Do=class{constructor(t,r,n){if((0,gn.validateKeywordUsage)(t,r,n),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=n,this.data=t.data,this.schema=t.schema[n],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,dt.schemaRefOrVal)(t,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",_m(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,gn.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=t.gen.const("_errs",A.default.errors))}result(t,r,n){this.failResult((0,S.not)(t),r,n)}failResult(t,r,n){this.gen.if(t),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(t,r){this.failResult((0,S.not)(t),void 0,r)}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(t){if(!this.$data)return this.fail(t);let{schemaCode:r}=this;this.fail((0,S._)`${r} !== undefined && (${(0,S.or)(this.invalid$data(),t)})`)}error(t,r,n){if(r){this.setParams(r),this._error(t,n),this.setParams({});return}this._error(t,n)}_error(t,r){(t?hn.reportExtraError:hn.reportError)(this,this.def.error,r)}$dataError(){(0,hn.reportError)(this,this.def.$dataError||hn.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,hn.resetErrorsCount)(this.gen,this.errsCount)}ok(t){this.allErrors||this.gen.if(t)}setParams(t,r){r?Object.assign(this.params,t):this.params=t}block$data(t,r,n=S.nil){this.gen.block(()=>{this.check$data(t,n),r()})}check$data(t=S.nil,r=S.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:i,def:s}=this;n.if((0,S.or)((0,S._)`${o} === undefined`,r)),t!==S.nil&&n.assign(t,!0),(i.length||s.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==S.nil&&n.assign(t,!1)),n.else()}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:o,it:i}=this;return(0,S.or)(s(),a());function s(){if(n.length){if(!(r instanceof S.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,S._)`${(0,Co.checkDataTypes)(c,r,i.opts.strictNumbers,Co.DataType.Wrong)}`}return S.nil}function a(){if(o.validateSchema){let c=t.scopeValue("validate$data",{ref:o.validateSchema});return(0,S._)`!${c}(${r})`}return S.nil}}subschema(t,r){let n=(0,Aa.getSubschema)(this.it,t);(0,Aa.extendSubschemaData)(n,this.it,t),(0,Aa.extendSubschemaMode)(n,t);let o={...this.it,...n,items:void 0,props:void 0};return Ix(o,r),o}mergeEvaluated(t,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&t.props!==void 0&&(n.props=dt.mergeEvaluated.props(o,t.props,n.props,r)),n.items!==!0&&t.items!==void 0&&(n.items=dt.mergeEvaluated.items(o,t.items,n.items,r)))}mergeValidEvaluated(t,r){let{it:n,gen:o}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return o.if(r,()=>this.mergeEvaluated(t,S.Name)),!0}};St.KeywordCxt=Do;function ym(e,t,r,n){let o=new Do(e,r,t);"code"in r?r.code(o,n):o.$data&&r.validate?(0,gn.funcKeywordCode)(o,r):"macro"in r?(0,gn.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,gn.funcKeywordCode)(o,r)}var Vx=/^\/(?:[^~]|~0|~1)*$/,Kx=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function _m(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let o,i;if(e==="")return A.default.rootData;if(e[0]==="/"){if(!Vx.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);o=e,i=A.default.rootData}else{let l=Kx.exec(e);if(!l)throw new Error(`Invalid JSON-pointer: ${e}`);let u=+l[1];if(o=l[2],o==="#"){if(u>=t)throw new Error(c("property/index",u));return n[t-u]}if(u>t)throw new Error(c("data",u));if(i=r[t-u],!o)return i}let s=i,a=o.split("/");for(let l of a)l&&(i=(0,S._)`${i}${(0,S.getProperty)((0,dt.unescapeJsonPointer)(l))}`,s=(0,S._)`${s} && ${i}`);return s;function c(l,u){return`Cannot access ${l} ${u} levels up, current level is ${t}`}}St.getData=_m});var jo=v(ja=>{"use strict";Object.defineProperty(ja,"__esModule",{value:!0});var Da=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};ja.default=Da});var _n=v(La=>{"use strict";Object.defineProperty(La,"__esModule",{value:!0});var Ma=mn(),qa=class extends Error{constructor(t,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,Ma.resolveUrl)(t,r,n),this.missingSchema=(0,Ma.normalizeId)((0,Ma.getFullPath)(t,this.missingRef))}};La.default=qa});var qo=v(Me=>{"use strict";Object.defineProperty(Me,"__esModule",{value:!0});Me.resolveSchema=Me.getCompilingSchema=Me.resolveRef=Me.compileSchema=Me.SchemaEnv=void 0;var Fe=C(),Hx=jo(),Ut=lt(),Ve=mn(),wm=B(),Wx=yn(),fr=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let n;typeof t.schema=="object"&&(n=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0,Ve.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={}}};Me.SchemaEnv=fr;function Za(e){let t=vm.call(this,e);if(t)return t;let r=(0,Ve.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:i}=this.opts,s=new Fe.CodeGen(this.scope,{es5:n,lines:o,ownProperties:i}),a;e.$async&&(a=s.scopeValue("Error",{ref:Hx.default,code:(0,Fe._)`require("ajv/dist/runtime/validation_error").default`}));let c=s.scopeName("validate");e.validateName=c;let l={gen:s,allErrors:this.opts.allErrors,data:Ut.default.data,parentData:Ut.default.parentData,parentDataProperty:Ut.default.parentDataProperty,dataNames:[Ut.default.data],dataPathArr:[Fe.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:s.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,Fe.stringify)(e.schema)}:{ref:e.schema}),validateName:c,ValidationError:a,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:Fe.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Fe._)`""`,opts:this.opts,self:this},u;try{this._compilations.add(e),(0,Wx.validateFunctionCode)(l),s.optimize(this.opts.code.optimize);let d=s.toString();u=`${s.scopeRefs(Ut.default.scope)}return ${d}`,this.opts.code.process&&(u=this.opts.code.process(u,e));let p=new Function(`${Ut.default.self}`,`${Ut.default.scope}`,u)(this,this.scope.get());if(this.scope.value(c,{ref:p}),p.errors=null,p.schema=e.schema,p.schemaEnv=e,e.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:c,validateCode:d,scopeValues:s._values}),this.opts.unevaluated){let{props:m,items:h}=l;p.evaluated={props:m instanceof Fe.Name?void 0:m,items:h instanceof Fe.Name?void 0:h,dynamicProps:m instanceof Fe.Name,dynamicItems:h instanceof Fe.Name},p.source&&(p.source.evaluated=(0,Fe.stringify)(p.evaluated))}return e.validate=p,e}catch(d){throw delete e.validate,delete e.validateName,u&&this.logger.error("Error compiling schema, function code:",u),d}finally{this._compilations.delete(e)}}Me.compileSchema=Za;function Gx(e,t,r){var n;r=(0,Ve.resolveUrl)(this.opts.uriResolver,t,r);let o=e.refs[r];if(o)return o;let i=Yx.call(this,e,r);if(i===void 0){let s=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:a}=this.opts;s&&(i=new fr({schema:s,schemaId:a,root:e,baseId:t}))}if(i!==void 0)return e.refs[r]=Jx.call(this,i)}Me.resolveRef=Gx;function Jx(e){return(0,Ve.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:Za.call(this,e)}function vm(e){for(let t of this._compilations)if(Qx(t,e))return t}Me.getCompilingSchema=vm;function Qx(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function Yx(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||Mo.call(this,e,t)}function Mo(e,t){let r=this.opts.uriResolver.parse(t),n=(0,Ve._getFullPath)(this.opts.uriResolver,r),o=(0,Ve.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===o)return Ba.call(this,r,e);let i=(0,Ve.normalizeId)(n),s=this.refs[i]||this.schemas[i];if(typeof s=="string"){let a=Mo.call(this,e,s);return typeof a?.schema!="object"?void 0:Ba.call(this,r,a)}if(typeof s?.schema=="object"){if(s.validate||Za.call(this,s),i===(0,Ve.normalizeId)(t)){let{schema:a}=s,{schemaId:c}=this.opts,l=a[c];return l&&(o=(0,Ve.resolveUrl)(this.opts.uriResolver,o,l)),new fr({schema:a,schemaId:c,root:e,baseId:o})}return Ba.call(this,r,s)}}Me.resolveSchema=Mo;var Xx=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Ba(e,{baseId:t,schema:r,root:n}){var o;if(((o=e.fragment)===null||o===void 0?void 0:o[0])!=="/")return;for(let a of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,wm.unescapeFragment)(a)];if(c===void 0)return;r=c;let l=typeof r=="object"&&r[this.opts.schemaId];!Xx.has(a)&&l&&(t=(0,Ve.resolveUrl)(this.opts.uriResolver,t,l))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,wm.schemaHasRulesButRef)(r,this.RULES)){let a=(0,Ve.resolveUrl)(this.opts.uriResolver,t,r.$ref);i=Mo.call(this,n,a)}let{schemaId:s}=this.opts;if(i=i||new fr({schema:r,schemaId:s,root:n,baseId:t}),i.schema!==i.root.schema)return i}});var bm=v((DD,ek)=>{ek.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 Va=v((jD,Tm)=>{"use strict";var tk=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),km=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),Ua=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),$m=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),rk=RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);function Fa(e){let t="",r=0,n=0;for(n=0;n<e.length;n++)if(r=e[n].charCodeAt(0),r!==48){if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n];break}for(n+=1;n<e.length;n++){if(r=e[n].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n]}return t}var nk=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function xm(e){return e.length=0,!0}function ok(e,t,r){if(e.length){let n=Fa(e);if(n!=="")t.push(n);else return r.error=!0,!1;e.length=0}return!0}function ik(e){let t=0,r={error:!1,address:"",zone:""},n=[],o=[],i=!1,s=!1,a=ok;for(let c=0;c<e.length;c++){let l=e[c];if(!(l==="["||l==="]"))if(l===":"){if(i===!0&&(s=!0),!a(o,n,r))break;if(++t>7){r.error=!0;break}c>0&&e[c-1]===":"&&(i=!0),n.push(":");continue}else if(l==="%"){if(!a(o,n,r))break;a=xm}else{o.push(l);continue}}return o.length&&(a===xm?r.zone=o.join(""):s?n.push(o.join("")):n.push(Fa(o))),r.address=n.join(""),r}function Sm(e){if(sk(e,":")<2)return{host:e,isIPV6:!1};let t=ik(e);if(t.error)return{host:e,isIPV6:!1};{let r=t.address,n=t.address;return t.zone&&(r+="%"+t.zone,n+="%25"+t.zone),{host:r,isIPV6:!0,escapedHost:n}}}function sk(e,t){let r=0;for(let n=0;n<e.length;n++)e[n]===t&&r++;return r}function ak(e){let t=e,r=[],n=-1,o=0;for(;o=t.length;){if(o===1){if(t===".")break;if(t==="/"){r.push("/");break}else{r.push(t);break}}else if(o===2){if(t[0]==="."){if(t[1]===".")break;if(t[1]==="/"){t=t.slice(2);continue}}else if(t[0]==="/"&&(t[1]==="."||t[1]==="/")){r.push("/");break}}else if(o===3&&t==="/.."){r.length!==0&&r.pop(),r.push("/");break}if(t[0]==="."){if(t[1]==="."){if(t[2]==="/"){t=t.slice(3);continue}}else if(t[1]==="/"){t=t.slice(2);continue}}else if(t[0]==="/"&&t[1]==="."){if(t[2]==="/"){t=t.slice(2);continue}else if(t[2]==="."&&t[3]==="/"){t=t.slice(3),r.length!==0&&r.pop();continue}}if((n=t.indexOf("/",1))===-1){r.push(t);break}else r.push(t.slice(0,n)),t=t.slice(n)}return r.join("")}var ck={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},uk=/[@/?#:]/g,lk=/[@/?#]/g;function Em(e,t){let r=t?lk:uk;return r.lastIndex=0,e.replace(r,n=>ck[n])}function dk(e,t=!1){if(e.indexOf("%")===-1)return e;let r="";for(let n=0;n<e.length;n++){if(e[n]==="%"&&n+2<e.length){let o=e.slice(n+1,n+3);if(Ua(o)){let i=o.toUpperCase(),s=String.fromCharCode(parseInt(i,16));t&&$m(s)?r+=s:r+="%"+i,n+=2;continue}}r+=e[n]}return r}function fk(e){let t="";for(let r=0;r<e.length;r++){if(e[r]==="%"&&r+2<e.length){let n=e.slice(r+1,r+3);if(Ua(n)){let o=n.toUpperCase(),i=String.fromCharCode(parseInt(o,16));i!=="."&&$m(i)?t+=i:t+="%"+o,r+=2;continue}}rk(e[r])?t+=e[r]:t+=escape(e[r])}return t}function pk(e){let t="";for(let r=0;r<e.length;r++){if(e[r]==="%"&&r+2<e.length){let n=e.slice(r+1,r+3);if(Ua(n)){t+="%"+n.toUpperCase(),r+=2;continue}}t+=escape(e[r])}return t}function mk(e){let t=[];if(e.userinfo!==void 0&&(t.push(e.userinfo),t.push("@")),e.host!==void 0){let r=unescape(e.host);if(!km(r)){let n=Sm(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=Em(r,!1)}t.push(r)}return(typeof e.port=="number"||typeof e.port=="string")&&(t.push(":"),t.push(String(e.port))),t.length?t.join(""):void 0}Tm.exports={nonSimpleDomain:nk,recomposeAuthority:mk,reescapeHostDelimiters:Em,normalizePercentEncoding:dk,normalizePathEncoding:fk,escapePreservingEscapes:pk,removeDotSegments:ak,isIPv4:km,isUUID:tk,normalizeIPv6:Sm,stringArrayToHexStripped:Fa}});var Om=v((MD,Im)=>{"use strict";var{isUUID:hk}=Va(),gk=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,yk=["http","https","ws","wss","urn","urn:uuid"];function _k(e){return yk.indexOf(e)!==-1}function Ka(e){return e.secure===!0?!0:e.secure===!1?!1:e.scheme?e.scheme.length===3&&(e.scheme[0]==="w"||e.scheme[0]==="W")&&(e.scheme[1]==="s"||e.scheme[1]==="S")&&(e.scheme[2]==="s"||e.scheme[2]==="S"):!1}function Pm(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function Rm(e){let t=String(e.scheme).toLowerCase()==="https";return(e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function wk(e){return e.secure=Ka(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function vk(e){if((e.port===(Ka(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function bk(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(gk);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let o=`${n}:${t.nid||e.nid}`,i=Ha(o);e.path=void 0,i&&(e=i.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function xk(e,t){if(e.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),o=`${r}:${t.nid||n}`,i=Ha(o);i&&(e=i.serialize(e,t));let s=e,a=e.nss;return s.path=`${n||t.nid}:${a}`,t.skipEscape=!0,s}function kk(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!hk(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function $k(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var zm={scheme:"http",domainHost:!0,parse:Pm,serialize:Rm},Sk={scheme:"https",domainHost:zm.domainHost,parse:Pm,serialize:Rm},Lo={scheme:"ws",domainHost:!0,parse:wk,serialize:vk},Ek={scheme:"wss",domainHost:Lo.domainHost,parse:Lo.parse,serialize:Lo.serialize},Tk={scheme:"urn",parse:bk,serialize:xk,skipNormalize:!0},Pk={scheme:"urn:uuid",parse:kk,serialize:$k,skipNormalize:!0},Bo={http:zm,https:Sk,ws:Lo,wss:Ek,urn:Tk,"urn:uuid":Pk};Object.setPrototypeOf(Bo,null);function Ha(e){return e&&(Bo[e]||Bo[e.toLowerCase()])||void 0}Im.exports={wsIsSecure:Ka,SCHEMES:Bo,isValidSchemeName:_k,getSchemeHandler:Ha}});var Mm=v((qD,Zo)=>{"use strict";var{normalizeIPv6:Rk,removeDotSegments:wn,recomposeAuthority:zk,normalizePercentEncoding:Ik,normalizePathEncoding:Ok,escapePreservingEscapes:Ak,reescapeHostDelimiters:Nk,isIPv4:Ck,nonSimpleDomain:Dk}=Va(),{SCHEMES:jk,getSchemeHandler:Nm}=Om();function Mk(e,t){return typeof e=="string"?e=Uk(e,t):typeof e=="object"&&(e=pr(Ft(e,t),t)),e}function qk(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=Cm(pr(e,n),pr(t,n),n,!0);return n.skipEscape=!0,Ft(o,n)}function Cm(e,t,r,n){let o={};return n||(e=pr(Ft(e,r),r),t=pr(Ft(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(o.scheme=t.scheme,o.userinfo=t.userinfo,o.host=t.host,o.port=t.port,o.path=wn(t.path||""),o.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(o.userinfo=t.userinfo,o.host=t.host,o.port=t.port,o.path=wn(t.path||""),o.query=t.query):(t.path?(t.path[0]==="/"?o.path=wn(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?o.path="/"+t.path:e.path?o.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:o.path=t.path,o.path=wn(o.path)),o.query=t.query):(o.path=e.path,t.query!==void 0?o.query=t.query:o.query=e.query),o.userinfo=e.userinfo,o.host=e.host,o.port=e.port),o.scheme=e.scheme),o.fragment=t.fragment,o}function Lk(e,t,r){let n=Am(e,r),o=Am(t,r);return n!==void 0&&o!==void 0&&n.toLowerCase()===o.toLowerCase()}function Ft(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),o=[],i=Nm(n.scheme||r.scheme);i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=Ik(r.path):(r.path=Ak(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&o.push(r.scheme,":");let s=zk(r);if(s!==void 0&&(n.reference!=="suffix"&&o.push("//"),o.push(s),r.path&&r.path[0]!=="/"&&o.push("/")),r.path!==void 0){let a=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(a=wn(a)),s===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 Bk=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Zk(e,t){if(t[2]!==void 0&&e.path&&e.path[0]!=="/")return'URI path must start with "/" when authority is present.';if(typeof e.port=="number"&&(e.port<0||e.port>65535))return"URI port is malformed."}function Dm(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},o=!1,i=!1;r.reference==="suffix"&&(r.scheme?e=r.scheme+":"+e:e="//"+e);let s=e.match(Bk);if(s){n.scheme=s[1],n.userinfo=s[3],n.host=s[4],n.port=parseInt(s[5],10),n.path=s[6]||"",n.query=s[7],n.fragment=s[8],isNaN(n.port)&&(n.port=s[5]);let a=Zk(n,s);if(a!==void 0&&(n.error=n.error||a,o=!0),n.host)if(Ck(n.host)===!1){let u=Rk(n.host);n.host=u.host.toLowerCase(),i=u.isIPV6}else i=!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=Nm(r.scheme||n.scheme);if(!r.unicodeSupport&&(!c||!c.unicodeSupport)&&n.host&&(r.domainHost||c&&c.domainHost)&&i===!1&&Dk(n.host))try{n.host=new URL("http://"+n.host).hostname}catch(l){n.error=n.error||"Host's domain name can not be converted to ASCII: "+l}if((!c||c&&!c.skipNormalize)&&(e.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=Nk(unescape(n.host),i))),n.path&&(n.path=Ok(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(e,t){return Dm(e,t).parsed}function Uk(e,t){return jm(e,t).normalized}function jm(e,t){let{parsed:r,malformedAuthorityOrPort:n}=Dm(e,t);return{normalized:n?e:Ft(r,t),malformedAuthorityOrPort:n}}function Am(e,t){if(typeof e=="string"){let{normalized:r,malformedAuthorityOrPort:n}=jm(e,t);return n?void 0:r}if(typeof e=="object")return Ft(e,t)}var Wa={SCHEMES:jk,normalize:Mk,resolve:qk,resolveComponent:Cm,equal:Lk,serialize:Ft,parse:pr};Zo.exports=Wa;Zo.exports.default=Wa;Zo.exports.fastUri=Wa});var Lm=v(Ga=>{"use strict";Object.defineProperty(Ga,"__esModule",{value:!0});var qm=Mm();qm.code='require("ajv/dist/runtime/uri").default';Ga.default=qm});var Wm=v(fe=>{"use strict";Object.defineProperty(fe,"__esModule",{value:!0});fe.CodeGen=fe.Name=fe.nil=fe.stringify=fe.str=fe._=fe.KeywordCxt=void 0;var Fk=yn();Object.defineProperty(fe,"KeywordCxt",{enumerable:!0,get:function(){return Fk.KeywordCxt}});var mr=C();Object.defineProperty(fe,"_",{enumerable:!0,get:function(){return mr._}});Object.defineProperty(fe,"str",{enumerable:!0,get:function(){return mr.str}});Object.defineProperty(fe,"stringify",{enumerable:!0,get:function(){return mr.stringify}});Object.defineProperty(fe,"nil",{enumerable:!0,get:function(){return mr.nil}});Object.defineProperty(fe,"Name",{enumerable:!0,get:function(){return mr.Name}});Object.defineProperty(fe,"CodeGen",{enumerable:!0,get:function(){return mr.CodeGen}});var Vk=jo(),Vm=_n(),Kk=ka(),vn=qo(),Hk=C(),bn=mn(),Uo=pn(),Qa=B(),Bm=bm(),Wk=Lm(),Km=(e,t)=>new RegExp(e,t);Km.code="new RegExp";var Gk=["removeAdditional","useDefaults","coerceTypes"],Jk=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),Qk={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."},Yk={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Zm=200;function Xk(e){var t,r,n,o,i,s,a,c,l,u,d,f,p,m,h,_,w,b,x,P,I,ve,Oe,Yt,Ni;let Nr=e.strict,Ci=(t=e.code)===null||t===void 0?void 0:t.optimize,Gu=Ci===!0||Ci===void 0?1:Ci||0,Ju=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Km,C_=(o=e.uriResolver)!==null&&o!==void 0?o:Wk.default;return{strictSchema:(s=(i=e.strictSchema)!==null&&i!==void 0?i:Nr)!==null&&s!==void 0?s:!0,strictNumbers:(c=(a=e.strictNumbers)!==null&&a!==void 0?a:Nr)!==null&&c!==void 0?c:!0,strictTypes:(u=(l=e.strictTypes)!==null&&l!==void 0?l:Nr)!==null&&u!==void 0?u:"log",strictTuples:(f=(d=e.strictTuples)!==null&&d!==void 0?d:Nr)!==null&&f!==void 0?f:"log",strictRequired:(m=(p=e.strictRequired)!==null&&p!==void 0?p:Nr)!==null&&m!==void 0?m:!1,code:e.code?{...e.code,optimize:Gu,regExp:Ju}:{optimize:Gu,regExp:Ju},loopRequired:(h=e.loopRequired)!==null&&h!==void 0?h:Zm,loopEnum:(_=e.loopEnum)!==null&&_!==void 0?_:Zm,meta:(w=e.meta)!==null&&w!==void 0?w:!0,messages:(b=e.messages)!==null&&b!==void 0?b:!0,inlineRefs:(x=e.inlineRefs)!==null&&x!==void 0?x:!0,schemaId:(P=e.schemaId)!==null&&P!==void 0?P:"$id",addUsedSchema:(I=e.addUsedSchema)!==null&&I!==void 0?I:!0,validateSchema:(ve=e.validateSchema)!==null&&ve!==void 0?ve:!0,validateFormats:(Oe=e.validateFormats)!==null&&Oe!==void 0?Oe:!0,unicodeRegExp:(Yt=e.unicodeRegExp)!==null&&Yt!==void 0?Yt:!0,int32range:(Ni=e.int32range)!==null&&Ni!==void 0?Ni:!0,uriResolver:C_}}var xn=class{constructor(t={}){this.schemas={},this.refs={},this.formats=Object.create(null),this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...Xk(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new Hk.ValueScope({scope:{},prefixes:Jk,es5:r,lines:n}),this.logger=i$(t.logger);let o=t.validateFormats;t.validateFormats=!1,this.RULES=(0,Kk.getRules)(),Um.call(this,Qk,t,"NOT SUPPORTED"),Um.call(this,Yk,t,"DEPRECATED","warn"),this._metaOpts=n$.call(this),t.formats&&t$.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&r$.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),e$.call(this),t.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,o=Bm;n==="id"&&(o={...Bm},o.id=o.$id,delete o.$id),r&&t&&this.addMetaSchema(o,o[n],!1)}defaultMeta(){let{meta:t,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof t=="object"?t[r]||t:void 0}validate(t,r){let n;if(typeof t=="string"){if(n=this.getSchema(t),!n)throw new Error(`no schema with key or ref "${t}"`)}else n=this.compile(t);let o=n(r);return"$async"in n||(this.errors=n.errors),o}compile(t,r){let n=this._addSchema(t,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(t,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,t,r);async function o(u,d){await i.call(this,u.$schema);let f=this._addSchema(u,d);return f.validate||s.call(this,f)}async function i(u){u&&!this.getSchema(u)&&await o.call(this,{$ref:u},!0)}async function s(u){try{return this._compileSchemaEnv(u)}catch(d){if(!(d instanceof Vm.default))throw d;return a.call(this,d),await c.call(this,d.missingSchema),s.call(this,u)}}function a({missingSchema:u,missingRef:d}){if(this.refs[u])throw new Error(`AnySchema ${u} is loaded but ${d} cannot be resolved`)}async function c(u){let d=await l.call(this,u);this.refs[u]||await i.call(this,d.$schema),this.refs[u]||this.addSchema(d,u,r)}async function l(u){let d=this._loading[u];if(d)return d;try{return await(this._loading[u]=n(u))}finally{delete this._loading[u]}}}addSchema(t,r,n,o=this.opts.validateSchema){if(Array.isArray(t)){for(let s of t)this.addSchema(s,void 0,n,o);return this}let i;if(typeof t=="object"){let{schemaId:s}=this.opts;if(i=t[s],i!==void 0&&typeof i!="string")throw new Error(`schema ${s} must be string`)}return r=(0,bn.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(t,n,r,o,!0),this}addMetaSchema(t,r,n=this.opts.validateSchema){return this.addSchema(t,r,!0,n),this}validateSchema(t,r){if(typeof t=="boolean")return!0;let n;if(n=t.$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,t);if(!o&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return o}getSchema(t){let r;for(;typeof(r=Fm.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,o=new vn.SchemaEnv({schema:{},schemaId:n});if(r=vn.resolveSchema.call(this,o,t),!r)return;this.refs[t]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(t){if(t instanceof RegExp)return this._removeAllSchemas(this.schemas,t),this._removeAllSchemas(this.refs,t),this;switch(typeof t){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=Fm.call(this,t);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[t],delete this.refs[t],this}case"object":{let r=t;this._cache.delete(r);let n=t[this.opts.schemaId];return n&&(n=(0,bn.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let n;if(typeof t=="string")n=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof t=="object"&&r===void 0){if(r=t,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(a$.call(this,n,r),!r)return(0,Qa.eachItem)(n,i=>Ja.call(this,i)),this;u$.call(this,r);let o={...r,type:(0,Uo.getJSONTypes)(r.type),schemaType:(0,Uo.getJSONTypes)(r.schemaType)};return(0,Qa.eachItem)(n,o.type.length===0?i=>Ja.call(this,i,o):i=>o.type.forEach(s=>Ja.call(this,i,o,s))),this}getKeyword(t){let r=this.RULES.all[t];return typeof r=="object"?r.definition:!!r}removeKeyword(t){let{RULES:r}=this;delete r.keywords[t],delete r.all[t];for(let n of r.rules){let o=n.rules.findIndex(i=>i.keyword===t);o>=0&&n.rules.splice(o,1)}return this}addFormat(t,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[t]=r,this}errorsText(t=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!t||t.length===0?"No errors":t.map(o=>`${n}${o.instancePath} ${o.message}`).reduce((o,i)=>o+r+i)}$dataMetaSchema(t,r){let n=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let o of r){let i=o.split("/").slice(1),s=t;for(let a of i)s=s[a];for(let a in n){let c=n[a];if(typeof c!="object")continue;let{$data:l}=c.definition,u=s[a];l&&u&&(s[a]=Hm(u))}}return t}_removeAllSchemas(t,r){for(let n in t){let o=t[n];(!r||r.test(n))&&(typeof o=="string"?delete t[n]:o&&!o.meta&&(this._cache.delete(o.schema),delete t[n]))}}_addSchema(t,r,n,o=this.opts.validateSchema,i=this.opts.addUsedSchema){let s,{schemaId:a}=this.opts;if(typeof t=="object")s=t[a];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof t!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(t);if(c!==void 0)return c;n=(0,bn.normalizeId)(s||n);let l=bn.getSchemaRefs.call(this,t,n);return c=new vn.SchemaEnv({schema:t,schemaId:a,meta:r,baseId:n,localRefs:l}),this._cache.set(c.schema,c),i&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),o&&this.validateSchema(t,!0),c}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):vn.compileSchema.call(this,t),!t.validate)throw new Error("ajv implementation error");return t.validate}_compileMetaSchema(t){let r=this.opts;this.opts=this._metaOpts;try{vn.compileSchema.call(this,t)}finally{this.opts=r}}};xn.ValidationError=Vk.default;xn.MissingRefError=Vm.default;fe.default=xn;function Um(e,t,r,n="error"){for(let o in e){let i=o;i in t&&this.logger[n](`${r}: option ${o}. ${e[i]}`)}}function Fm(e){return e=(0,bn.normalizeId)(e),this.schemas[e]||this.refs[e]}function e$(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function t$(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function r$(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r)}}function n$(){let e={...this.opts};for(let t of Gk)delete e[t];return e}var o$={log(){},warn(){},error(){}};function i$(e){if(e===!1)return o$;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw new Error("logger must implement log, warn and error methods")}var s$=/^[a-z_$][a-z0-9_$:-]*$/i;function a$(e,t){let{RULES:r}=this;if((0,Qa.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!s$.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!t&&t.$data&&!("code"in t||"validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function Ja(e,t,r){var n;let o=t?.post;if(r&&o)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,s=o?i.post:i.rules.find(({type:c})=>c===r);if(s||(s={type:r,rules:[]},i.rules.push(s)),i.keywords[e]=!0,!t)return;let a={keyword:e,definition:{...t,type:(0,Uo.getJSONTypes)(t.type),schemaType:(0,Uo.getJSONTypes)(t.schemaType)}};t.before?c$.call(this,s,a,t.before):s.rules.push(a),i.all[e]=a,(n=t.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function c$(e,t,r){let n=e.rules.findIndex(o=>o.keyword===r);n>=0?e.rules.splice(n,0,t):(e.rules.push(t),this.logger.warn(`rule ${r} is not defined`))}function u$(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=Hm(t)),e.validateSchema=this.compile(t,!0))}var l$={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Hm(e){return{anyOf:[e,l$]}}});var Gm=v(Ya=>{"use strict";Object.defineProperty(Ya,"__esModule",{value:!0});var d$={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Ya.default=d$});var Xm=v(Vt=>{"use strict";Object.defineProperty(Vt,"__esModule",{value:!0});Vt.callRef=Vt.getValidate=void 0;var f$=_n(),Jm=je(),Re=C(),hr=lt(),Qm=qo(),Fo=B(),p$={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:o,schemaEnv:i,validateName:s,opts:a,self:c}=n,{root:l}=i;if((r==="#"||r==="#/")&&o===l.baseId)return d();let u=Qm.resolveRef.call(c,l,o,r);if(u===void 0)throw new f$.default(n.opts.uriResolver,o,r);if(u instanceof Qm.SchemaEnv)return f(u);return p(u);function d(){if(i===l)return Vo(e,s,i,i.$async);let m=t.scopeValue("root",{ref:l});return Vo(e,(0,Re._)`${m}.validate`,l,l.$async)}function f(m){let h=Ym(e,m);Vo(e,h,m,m.$async)}function p(m){let h=t.scopeValue("schema",a.code.source===!0?{ref:m,code:(0,Re.stringify)(m)}:{ref:m}),_=t.name("valid"),w=e.subschema({schema:m,dataTypes:[],schemaPath:Re.nil,topSchemaRef:h,errSchemaPath:r},_);e.mergeEvaluated(w),e.ok(_)}}};function Ym(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,Re._)`${r.scopeValue("wrapper",{ref:t})}.validate`}Vt.getValidate=Ym;function Vo(e,t,r,n){let{gen:o,it:i}=e,{allErrors:s,schemaEnv:a,opts:c}=i,l=c.passContext?hr.default.this:Re.nil;n?u():d();function u(){if(!a.$async)throw new Error("async schema referenced by sync schema");let m=o.let("valid");o.try(()=>{o.code((0,Re._)`await ${(0,Jm.callValidateCode)(e,t,l)}`),p(t),s||o.assign(m,!0)},h=>{o.if((0,Re._)`!(${h} instanceof ${i.ValidationError})`,()=>o.throw(h)),f(h),s||o.assign(m,!1)}),e.ok(m)}function d(){e.result((0,Jm.callValidateCode)(e,t,l),()=>p(t),()=>f(t))}function f(m){let h=(0,Re._)`${m}.errors`;o.assign(hr.default.vErrors,(0,Re._)`${hr.default.vErrors} === null ? ${h} : ${hr.default.vErrors}.concat(${h})`),o.assign(hr.default.errors,(0,Re._)`${hr.default.vErrors}.length`)}function p(m){var h;if(!i.opts.unevaluated)return;let _=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(i.props!==!0)if(_&&!_.dynamicProps)_.props!==void 0&&(i.props=Fo.mergeEvaluated.props(o,_.props,i.props));else{let w=o.var("props",(0,Re._)`${m}.evaluated.props`);i.props=Fo.mergeEvaluated.props(o,w,i.props,Re.Name)}if(i.items!==!0)if(_&&!_.dynamicItems)_.items!==void 0&&(i.items=Fo.mergeEvaluated.items(o,_.items,i.items));else{let w=o.var("items",(0,Re._)`${m}.evaluated.items`);i.items=Fo.mergeEvaluated.items(o,w,i.items,Re.Name)}}}Vt.callRef=Vo;Vt.default=p$});var eh=v(Xa=>{"use strict";Object.defineProperty(Xa,"__esModule",{value:!0});var m$=Gm(),h$=Xm(),g$=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",m$.default,h$.default];Xa.default=g$});var th=v(ec=>{"use strict";Object.defineProperty(ec,"__esModule",{value:!0});var Ko=C(),Et=Ko.operators,Ho={maximum:{okStr:"<=",ok:Et.LTE,fail:Et.GT},minimum:{okStr:">=",ok:Et.GTE,fail:Et.LT},exclusiveMaximum:{okStr:"<",ok:Et.LT,fail:Et.GTE},exclusiveMinimum:{okStr:">",ok:Et.GT,fail:Et.LTE}},y$={message:({keyword:e,schemaCode:t})=>(0,Ko.str)`must be ${Ho[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,Ko._)`{comparison: ${Ho[e].okStr}, limit: ${t}}`},_$={keyword:Object.keys(Ho),type:"number",schemaType:"number",$data:!0,error:y$,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0,Ko._)`${r} ${Ho[t].fail} ${n} || isNaN(${r})`)}};ec.default=_$});var rh=v(tc=>{"use strict";Object.defineProperty(tc,"__esModule",{value:!0});var kn=C(),w$={message:({schemaCode:e})=>(0,kn.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,kn._)`{multipleOf: ${e}}`},v$={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:w$,code(e){let{gen:t,data:r,schemaCode:n,it:o}=e,i=o.opts.multipleOfPrecision,s=t.let("res"),a=i?(0,kn._)`Math.abs(Math.round(${s}) - ${s}) > 1e-${i}`:(0,kn._)`${s} !== parseInt(${s})`;e.fail$data((0,kn._)`(${n} === 0 || (${s} = ${r}/${n}, ${a}))`)}};tc.default=v$});var oh=v(rc=>{"use strict";Object.defineProperty(rc,"__esModule",{value:!0});function nh(e){let t=e.length,r=0,n=0,o;for(;n<t;)r++,o=e.charCodeAt(n++),o>=55296&&o<=56319&&n<t&&(o=e.charCodeAt(n),(o&64512)===56320&&n++);return r}rc.default=nh;nh.code='require("ajv/dist/runtime/ucs2length").default'});var ih=v(nc=>{"use strict";Object.defineProperty(nc,"__esModule",{value:!0});var Kt=C(),b$=B(),x$=oh(),k$={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return(0,Kt.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,Kt._)`{limit: ${e}}`},$$={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:k$,code(e){let{keyword:t,data:r,schemaCode:n,it:o}=e,i=t==="maxLength"?Kt.operators.GT:Kt.operators.LT,s=o.opts.unicode===!1?(0,Kt._)`${r}.length`:(0,Kt._)`${(0,b$.useFunc)(e.gen,x$.default)}(${r})`;e.fail$data((0,Kt._)`${s} ${i} ${n}`)}};nc.default=$$});var sh=v(oc=>{"use strict";Object.defineProperty(oc,"__esModule",{value:!0});var S$=je(),E$=B(),gr=C(),T$={message:({schemaCode:e})=>(0,gr.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,gr._)`{pattern: ${e}}`},P$={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:T$,code(e){let{gen:t,data:r,$data:n,schema:o,schemaCode:i,it:s}=e,a=s.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=s.opts.code,l=c.code==="new RegExp"?(0,gr._)`new RegExp`:(0,E$.useFunc)(t,c),u=t.let("valid");t.try(()=>t.assign(u,(0,gr._)`${l}(${i}, ${a}).test(${r})`),()=>t.assign(u,!1)),e.fail$data((0,gr._)`!${u}`)}else{let c=(0,S$.usePattern)(e,o);e.fail$data((0,gr._)`!${c}.test(${r})`)}}};oc.default=P$});var ah=v(ic=>{"use strict";Object.defineProperty(ic,"__esModule",{value:!0});var $n=C(),R$={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,$n.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,$n._)`{limit: ${e}}`},z$={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:R$,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxProperties"?$n.operators.GT:$n.operators.LT;e.fail$data((0,$n._)`Object.keys(${r}).length ${o} ${n}`)}};ic.default=z$});var ch=v(sc=>{"use strict";Object.defineProperty(sc,"__esModule",{value:!0});var Sn=je(),En=C(),I$=B(),O$={message:({params:{missingProperty:e}})=>(0,En.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,En._)`{missingProperty: ${e}}`},A$={keyword:"required",type:"object",schemaType:"array",$data:!0,error:O$,code(e){let{gen:t,schema:r,schemaCode:n,data:o,$data:i,it:s}=e,{opts:a}=s;if(!i&&r.length===0)return;let c=r.length>=a.loopRequired;if(s.allErrors?l():u(),a.strictRequired){let p=e.parentSchema.properties,{definedProperties:m}=e.it;for(let h of r)if(p?.[h]===void 0&&!m.has(h)){let _=s.schemaEnv.baseId+s.errSchemaPath,w=`required property "${h}" is not defined at "${_}" (strictRequired)`;(0,I$.checkStrictMode)(s,w,s.opts.strictRequired)}}function l(){if(c||i)e.block$data(En.nil,d);else for(let p of r)(0,Sn.checkReportMissingProp)(e,p)}function u(){let p=t.let("missing");if(c||i){let m=t.let("valid",!0);e.block$data(m,()=>f(p,m)),e.ok(m)}else t.if((0,Sn.checkMissingProp)(e,r,p)),(0,Sn.reportMissingProp)(e,p),t.else()}function d(){t.forOf("prop",n,p=>{e.setParams({missingProperty:p}),t.if((0,Sn.noPropertyInData)(t,o,p,a.ownProperties),()=>e.error())})}function f(p,m){e.setParams({missingProperty:p}),t.forOf(p,n,()=>{t.assign(m,(0,Sn.propertyInData)(t,o,p,a.ownProperties)),t.if((0,En.not)(m),()=>{e.error(),t.break()})},En.nil)}}};sc.default=A$});var uh=v(ac=>{"use strict";Object.defineProperty(ac,"__esModule",{value:!0});var Tn=C(),N$={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,Tn.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,Tn._)`{limit: ${e}}`},C$={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:N$,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxItems"?Tn.operators.GT:Tn.operators.LT;e.fail$data((0,Tn._)`${r}.length ${o} ${n}`)}};ac.default=C$});var Wo=v(cc=>{"use strict";Object.defineProperty(cc,"__esModule",{value:!0});var lh=Ia();lh.code='require("ajv/dist/runtime/equal").default';cc.default=lh});var dh=v(lc=>{"use strict";Object.defineProperty(lc,"__esModule",{value:!0});var uc=pn(),pe=C(),D$=B(),j$=Wo(),M$={message:({params:{i:e,j:t}})=>(0,pe.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,pe._)`{i: ${e}, j: ${t}}`},q$={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:M$,code(e){let{gen:t,data:r,$data:n,schema:o,parentSchema:i,schemaCode:s,it:a}=e;if(!n&&!o)return;let c=t.let("valid"),l=i.items?(0,uc.getSchemaTypes)(i.items):[];e.block$data(c,u,(0,pe._)`${s} === false`),e.ok(c);function u(){let m=t.let("i",(0,pe._)`${r}.length`),h=t.let("j");e.setParams({i:m,j:h}),t.assign(c,!0),t.if((0,pe._)`${m} > 1`,()=>(d()?f:p)(m,h))}function d(){return l.length>0&&!l.some(m=>m==="object"||m==="array")}function f(m,h){let _=t.name("item"),w=(0,uc.checkDataTypes)(l,_,a.opts.strictNumbers,uc.DataType.Wrong),b=t.const("indices",(0,pe._)`{}`);t.for((0,pe._)`;${m}--;`,()=>{t.let(_,(0,pe._)`${r}[${m}]`),t.if(w,(0,pe._)`continue`),l.length>1&&t.if((0,pe._)`typeof ${_} == "string"`,(0,pe._)`${_} += "_"`),t.if((0,pe._)`typeof ${b}[${_}] == "number"`,()=>{t.assign(h,(0,pe._)`${b}[${_}]`),e.error(),t.assign(c,!1).break()}).code((0,pe._)`${b}[${_}] = ${m}`)})}function p(m,h){let _=(0,D$.useFunc)(t,j$.default),w=t.name("outer");t.label(w).for((0,pe._)`;${m}--;`,()=>t.for((0,pe._)`${h} = ${m}; ${h}--;`,()=>t.if((0,pe._)`${_}(${r}[${m}], ${r}[${h}])`,()=>{e.error(),t.assign(c,!1).break(w)})))}}};lc.default=q$});var fh=v(fc=>{"use strict";Object.defineProperty(fc,"__esModule",{value:!0});var dc=C(),L$=B(),B$=Wo(),Z$={message:"must be equal to constant",params:({schemaCode:e})=>(0,dc._)`{allowedValue: ${e}}`},U$={keyword:"const",$data:!0,error:Z$,code(e){let{gen:t,data:r,$data:n,schemaCode:o,schema:i}=e;n||i&&typeof i=="object"?e.fail$data((0,dc._)`!${(0,L$.useFunc)(t,B$.default)}(${r}, ${o})`):e.fail((0,dc._)`${i} !== ${r}`)}};fc.default=U$});var ph=v(pc=>{"use strict";Object.defineProperty(pc,"__esModule",{value:!0});var Pn=C(),F$=B(),V$=Wo(),K$={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,Pn._)`{allowedValues: ${e}}`},H$={keyword:"enum",schemaType:"array",$data:!0,error:K$,code(e){let{gen:t,data:r,$data:n,schema:o,schemaCode:i,it:s}=e;if(!n&&o.length===0)throw new Error("enum must have non-empty array");let a=o.length>=s.opts.loopEnum,c,l=()=>c??(c=(0,F$.useFunc)(t,V$.default)),u;if(a||n)u=t.let("valid"),e.block$data(u,d);else{if(!Array.isArray(o))throw new Error("ajv implementation error");let p=t.const("vSchema",i);u=(0,Pn.or)(...o.map((m,h)=>f(p,h)))}e.pass(u);function d(){t.assign(u,!1),t.forOf("v",i,p=>t.if((0,Pn._)`${l()}(${r}, ${p})`,()=>t.assign(u,!0).break()))}function f(p,m){let h=o[m];return typeof h=="object"&&h!==null?(0,Pn._)`${l()}(${r}, ${p}[${m}])`:(0,Pn._)`${r} === ${h}`}}};pc.default=H$});var mh=v(mc=>{"use strict";Object.defineProperty(mc,"__esModule",{value:!0});var W$=th(),G$=rh(),J$=ih(),Q$=sh(),Y$=ah(),X$=ch(),eS=uh(),tS=dh(),rS=fh(),nS=ph(),oS=[W$.default,G$.default,J$.default,Q$.default,Y$.default,X$.default,eS.default,tS.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},rS.default,nS.default];mc.default=oS});var gc=v(Rn=>{"use strict";Object.defineProperty(Rn,"__esModule",{value:!0});Rn.validateAdditionalItems=void 0;var Ht=C(),hc=B(),iS={message:({params:{len:e}})=>(0,Ht.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,Ht._)`{limit: ${e}}`},sS={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:iS,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0,hc.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}hh(e,n)}};function hh(e,t){let{gen:r,schema:n,data:o,keyword:i,it:s}=e;s.items=!0;let a=r.const("len",(0,Ht._)`${o}.length`);if(n===!1)e.setParams({len:t.length}),e.pass((0,Ht._)`${a} <= ${t.length}`);else if(typeof n=="object"&&!(0,hc.alwaysValidSchema)(s,n)){let l=r.var("valid",(0,Ht._)`${a} <= ${t.length}`);r.if((0,Ht.not)(l),()=>c(l)),e.ok(l)}function c(l){r.forRange("i",t.length,a,u=>{e.subschema({keyword:i,dataProp:u,dataPropType:hc.Type.Num},l),s.allErrors||r.if((0,Ht.not)(l),()=>r.break())})}}Rn.validateAdditionalItems=hh;Rn.default=sS});var yc=v(zn=>{"use strict";Object.defineProperty(zn,"__esModule",{value:!0});zn.validateTuple=void 0;var gh=C(),Go=B(),aS=je(),cS={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return yh(e,"additionalItems",t);r.items=!0,!(0,Go.alwaysValidSchema)(r,t)&&e.ok((0,aS.validateArray)(e))}};function yh(e,t,r=e.schema){let{gen:n,parentSchema:o,data:i,keyword:s,it:a}=e;u(o),a.opts.unevaluated&&r.length&&a.items!==!0&&(a.items=Go.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),l=n.const("len",(0,gh._)`${i}.length`);r.forEach((d,f)=>{(0,Go.alwaysValidSchema)(a,d)||(n.if((0,gh._)`${l} > ${f}`,()=>e.subschema({keyword:s,schemaProp:f,dataProp:f},c)),e.ok(c))});function u(d){let{opts:f,errSchemaPath:p}=a,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[t]===!1);if(f.strictTuples&&!h){let _=`"${s}" is ${m}-tuple, but minItems or maxItems/${t} are not specified or different at path "${p}"`;(0,Go.checkStrictMode)(a,_,f.strictTuples)}}}zn.validateTuple=yh;zn.default=cS});var _h=v(_c=>{"use strict";Object.defineProperty(_c,"__esModule",{value:!0});var uS=yc(),lS={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,uS.validateTuple)(e,"items")};_c.default=lS});var vh=v(wc=>{"use strict";Object.defineProperty(wc,"__esModule",{value:!0});var wh=C(),dS=B(),fS=je(),pS=gc(),mS={message:({params:{len:e}})=>(0,wh.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,wh._)`{limit: ${e}}`},hS={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:mS,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:o}=r;n.items=!0,!(0,dS.alwaysValidSchema)(n,t)&&(o?(0,pS.validateAdditionalItems)(e,o):e.ok((0,fS.validateArray)(e)))}};wc.default=hS});var bh=v(vc=>{"use strict";Object.defineProperty(vc,"__esModule",{value:!0});var qe=C(),Jo=B(),gS={message:({params:{min:e,max:t}})=>t===void 0?(0,qe.str)`must contain at least ${e} valid item(s)`:(0,qe.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,qe._)`{minContains: ${e}}`:(0,qe._)`{minContains: ${e}, maxContains: ${t}}`},yS={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:gS,code(e){let{gen:t,schema:r,parentSchema:n,data:o,it:i}=e,s,a,{minContains:c,maxContains:l}=n;i.opts.next?(s=c===void 0?1:c,a=l):s=1;let u=t.const("len",(0,qe._)`${o}.length`);if(e.setParams({min:s,max:a}),a===void 0&&s===0){(0,Jo.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&s>a){(0,Jo.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,Jo.alwaysValidSchema)(i,r)){let h=(0,qe._)`${u} >= ${s}`;a!==void 0&&(h=(0,qe._)`${h} && ${u} <= ${a}`),e.pass(h);return}i.items=!0;let d=t.name("valid");a===void 0&&s===1?p(d,()=>t.if(d,()=>t.break())):s===0?(t.let(d,!0),a!==void 0&&t.if((0,qe._)`${o}.length > 0`,f)):(t.let(d,!1),f()),e.result(d,()=>e.reset());function f(){let h=t.name("_valid"),_=t.let("count",0);p(h,()=>t.if(h,()=>m(_)))}function p(h,_){t.forRange("i",0,u,w=>{e.subschema({keyword:"contains",dataProp:w,dataPropType:Jo.Type.Num,compositeRule:!0},h),_()})}function m(h){t.code((0,qe._)`${h}++`),a===void 0?t.if((0,qe._)`${h} >= ${s}`,()=>t.assign(d,!0).break()):(t.if((0,qe._)`${h} > ${a}`,()=>t.assign(d,!1).break()),s===1?t.assign(d,!0):t.if((0,qe._)`${h} >= ${s}`,()=>t.assign(d,!0)))}}};vc.default=yS});var $h=v(tt=>{"use strict";Object.defineProperty(tt,"__esModule",{value:!0});tt.validateSchemaDeps=tt.validatePropertyDeps=tt.error=void 0;var bc=C(),_S=B(),In=je();tt.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return(0,bc.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0,bc._)`{property: ${e},
8
8
  missingProperty: ${n},
9
9
  depsCount: ${t},
10
- deps: ${r}}`};var wS={keyword:"dependencies",type:"object",schemaType:"object",error:tt.error,code(e){let[t,r]=vS(e);xh(e,t),kh(e,r)}};function vS({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let o=Array.isArray(e[n])?t:r;o[n]=e[n]}return[t,r]}function xh(e,t=e.schema){let{gen:r,data:n,it:o}=e;if(Object.keys(t).length===0)return;let i=r.let("missing");for(let s in t){let a=t[s];if(a.length===0)continue;let c=(0,In.propertyInData)(r,n,s,o.opts.ownProperties);e.setParams({property:s,depsCount:a.length,deps:a.join(", ")}),o.allErrors?r.if(c,()=>{for(let l of a)(0,In.checkReportMissingProp)(e,l)}):(r.if((0,bc._)`${c} && (${(0,In.checkMissingProp)(e,a,i)})`),(0,In.reportMissingProp)(e,i),r.else())}}tt.validatePropertyDeps=xh;function kh(e,t=e.schema){let{gen:r,data:n,keyword:o,it:i}=e,s=r.name("valid");for(let a in t)(0,_S.alwaysValidSchema)(i,t[a])||(r.if((0,In.propertyInData)(r,n,a,i.opts.ownProperties),()=>{let c=e.subschema({keyword:o,schemaProp:a},s);e.mergeValidEvaluated(c,s)},()=>r.var(s,!0)),e.ok(s))}tt.validateSchemaDeps=kh;tt.default=wS});var Eh=v(xc=>{"use strict";Object.defineProperty(xc,"__esModule",{value:!0});var Sh=C(),bS=B(),xS={message:"property name must be valid",params:({params:e})=>(0,Sh._)`{propertyName: ${e.propertyName}}`},kS={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:xS,code(e){let{gen:t,schema:r,data:n,it:o}=e;if((0,bS.alwaysValidSchema)(o,r))return;let i=t.name("valid");t.forIn("key",n,s=>{e.setParams({propertyName:s}),e.subschema({keyword:"propertyNames",data:s,dataTypes:["string"],propertyName:s,compositeRule:!0},i),t.if((0,Sh.not)(i),()=>{e.error(!0),o.allErrors||t.break()})}),e.ok(i)}};xc.default=kS});var $c=v(kc=>{"use strict";Object.defineProperty(kc,"__esModule",{value:!0});var Qo=je(),Ke=C(),$S=lt(),Yo=B(),SS={message:"must NOT have additional properties",params:({params:e})=>(0,Ke._)`{additionalProperty: ${e.additionalProperty}}`},ES={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:SS,code(e){let{gen:t,schema:r,parentSchema:n,data:o,errsCount:i,it:s}=e;if(!i)throw new Error("ajv implementation error");let{allErrors:a,opts:c}=s;if(s.props=!0,c.removeAdditional!=="all"&&(0,Yo.alwaysValidSchema)(s,r))return;let l=(0,Qo.allSchemaProperties)(n.properties),u=(0,Qo.allSchemaProperties)(n.patternProperties);d(),e.ok((0,Ke._)`${i} === ${$S.default.errors}`);function d(){t.forIn("key",o,_=>{!l.length&&!u.length?m(_):t.if(f(_),()=>m(_))})}function f(_){let w;if(l.length>8){let b=(0,Yo.schemaRefOrVal)(s,n.properties,"properties");w=(0,Qo.isOwnProperty)(t,b,_)}else l.length?w=(0,Ke.or)(...l.map(b=>(0,Ke._)`${_} === ${b}`)):w=Ke.nil;return u.length&&(w=(0,Ke.or)(w,...u.map(b=>(0,Ke._)`${(0,Qo.usePattern)(e,b)}.test(${_})`))),(0,Ke.not)(w)}function p(_){t.code((0,Ke._)`delete ${o}[${_}]`)}function m(_){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){p(_);return}if(r===!1){e.setParams({additionalProperty:_}),e.error(),a||t.break();return}if(typeof r=="object"&&!(0,Yo.alwaysValidSchema)(s,r)){let w=t.name("valid");c.removeAdditional==="failing"?(h(_,w,!1),t.if((0,Ke.not)(w),()=>{e.reset(),p(_)})):(h(_,w),a||t.if((0,Ke.not)(w),()=>t.break()))}}function h(_,w,b){let x={keyword:"additionalProperties",dataProp:_,dataPropType:Yo.Type.Str};b===!1&&Object.assign(x,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(x,w)}}};kc.default=ES});var Rh=v(Ec=>{"use strict";Object.defineProperty(Ec,"__esModule",{value:!0});var TS=yn(),Th=je(),Sc=B(),Ph=$c(),PS={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:o,it:i}=e;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&Ph.default.code(new TS.KeywordCxt(i,Ph.default,"additionalProperties"));let s=(0,Th.allSchemaProperties)(r);for(let d of s)i.definedProperties.add(d);i.opts.unevaluated&&s.length&&i.props!==!0&&(i.props=Sc.mergeEvaluated.props(t,(0,Sc.toHash)(s),i.props));let a=s.filter(d=>!(0,Sc.alwaysValidSchema)(i,r[d]));if(a.length===0)return;let c=t.name("valid");for(let d of a)l(d)?u(d):(t.if((0,Th.propertyInData)(t,o,d,i.opts.ownProperties)),u(d),i.allErrors||t.else().var(c,!0),t.endIf()),e.it.definedProperties.add(d),e.ok(c);function l(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function u(d){e.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};Ec.default=PS});var Ah=v(Tc=>{"use strict";Object.defineProperty(Tc,"__esModule",{value:!0});var zh=je(),Xo=C(),Ih=B(),Oh=B(),RS={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:o,it:i}=e,{opts:s}=i,a=(0,zh.allSchemaProperties)(r),c=a.filter(h=>(0,Ih.alwaysValidSchema)(i,r[h]));if(a.length===0||c.length===a.length&&(!i.opts.unevaluated||i.props===!0))return;let l=s.strictSchema&&!s.allowMatchingProperties&&o.properties,u=t.name("valid");i.props!==!0&&!(i.props instanceof Xo.Name)&&(i.props=(0,Oh.evaluatedPropsToName)(t,i.props));let{props:d}=i;f();function f(){for(let h of a)l&&p(h),i.allErrors?m(h):(t.var(u,!0),m(h),t.if(u))}function p(h){for(let _ in l)new RegExp(h).test(_)&&(0,Ih.checkStrictMode)(i,`property ${_} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){t.forIn("key",n,_=>{t.if((0,Xo._)`${(0,zh.usePattern)(e,h)}.test(${_})`,()=>{let w=c.includes(h);w||e.subschema({keyword:"patternProperties",schemaProp:h,dataProp:_,dataPropType:Oh.Type.Str},u),i.opts.unevaluated&&d!==!0?t.assign((0,Xo._)`${d}[${_}]`,!0):!w&&!i.allErrors&&t.if((0,Xo.not)(u),()=>t.break())})})}}};Tc.default=RS});var Nh=v(Pc=>{"use strict";Object.defineProperty(Pc,"__esModule",{value:!0});var zS=B(),IS={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if((0,zS.alwaysValidSchema)(n,r)){e.fail();return}let o=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},o),e.failResult(o,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};Pc.default=IS});var Ch=v(Rc=>{"use strict";Object.defineProperty(Rc,"__esModule",{value:!0});var OS=je(),AS={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:OS.validateUnion,error:{message:"must match a schema in anyOf"}};Rc.default=AS});var Dh=v(zc=>{"use strict";Object.defineProperty(zc,"__esModule",{value:!0});var ei=C(),NS=B(),CS={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,ei._)`{passingSchemas: ${e.passing}}`},DS={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:CS,code(e){let{gen:t,schema:r,parentSchema:n,it:o}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(o.opts.discriminator&&n.discriminator)return;let i=r,s=t.let("valid",!1),a=t.let("passing",null),c=t.name("_valid");e.setParams({passing:a}),t.block(l),e.result(s,()=>e.reset(),()=>e.error(!0));function l(){i.forEach((u,d)=>{let f;(0,NS.alwaysValidSchema)(o,u)?t.var(c,!0):f=e.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&t.if((0,ei._)`${c} && ${s}`).assign(s,!1).assign(a,(0,ei._)`[${a}, ${d}]`).else(),t.if(c,()=>{t.assign(s,!0),t.assign(a,d),f&&e.mergeEvaluated(f,ei.Name)})})}}};zc.default=DS});var jh=v(Ic=>{"use strict";Object.defineProperty(Ic,"__esModule",{value:!0});var jS=B(),MS={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");let o=t.name("valid");r.forEach((i,s)=>{if((0,jS.alwaysValidSchema)(n,i))return;let a=e.subschema({keyword:"allOf",schemaProp:s},o);e.ok(o),e.mergeEvaluated(a)})}};Ic.default=MS});var Lh=v(Oc=>{"use strict";Object.defineProperty(Oc,"__esModule",{value:!0});var ti=C(),qh=B(),qS={message:({params:e})=>(0,ti.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,ti._)`{failingKeyword: ${e.ifClause}}`},LS={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:qS,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0,qh.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=Mh(n,"then"),i=Mh(n,"else");if(!o&&!i)return;let s=t.let("valid",!0),a=t.name("_valid");if(c(),e.reset(),o&&i){let u=t.let("ifClause");e.setParams({ifClause:u}),t.if(a,l("then",u),l("else",u))}else o?t.if(a,l("then")):t.if((0,ti.not)(a),l("else"));e.pass(s,()=>e.error(!0));function c(){let u=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);e.mergeEvaluated(u)}function l(u,d){return()=>{let f=e.subschema({keyword:u},a);t.assign(s,a),e.mergeValidEvaluated(f,s),d?t.assign(d,(0,ti._)`${u}`):e.setParams({ifClause:u})}}}};function Mh(e,t){let r=e.schema[t];return r!==void 0&&!(0,qh.alwaysValidSchema)(e,r)}Oc.default=LS});var Bh=v(Ac=>{"use strict";Object.defineProperty(Ac,"__esModule",{value:!0});var BS=B(),ZS={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,BS.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};Ac.default=ZS});var Zh=v(Nc=>{"use strict";Object.defineProperty(Nc,"__esModule",{value:!0});var US=gc(),FS=_h(),VS=yc(),KS=vh(),HS=bh(),WS=$h(),GS=Eh(),JS=$c(),QS=Rh(),YS=Ah(),XS=Nh(),eE=Ch(),tE=Dh(),rE=jh(),nE=Lh(),oE=Bh();function iE(e=!1){let t=[XS.default,eE.default,tE.default,rE.default,nE.default,oE.default,GS.default,JS.default,WS.default,QS.default,YS.default];return e?t.push(FS.default,KS.default):t.push(US.default,VS.default),t.push(HS.default),t}Nc.default=iE});var Uh=v(Cc=>{"use strict";Object.defineProperty(Cc,"__esModule",{value:!0});var ie=C(),sE={message:({schemaCode:e})=>(0,ie.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,ie._)`{format: ${e}}`},aE={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:sE,code(e,t){let{gen:r,data:n,$data:o,schema:i,schemaCode:s,it:a}=e,{opts:c,errSchemaPath:l,schemaEnv:u,self:d}=a;if(!c.validateFormats)return;o?f():p();function f(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,ie._)`${m}[${s}]`),_=r.let("fType"),w=r.let("format");r.if((0,ie._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(_,(0,ie._)`${h}.type || "string"`).assign(w,(0,ie._)`${h}.validate`),()=>r.assign(_,(0,ie._)`"string"`).assign(w,h)),e.fail$data((0,ie.or)(b(),x()));function b(){return c.strictSchema===!1?ie.nil:(0,ie._)`${s} && !${w}`}function x(){let P=u.$async?(0,ie._)`(${h}.async ? await ${w}(${n}) : ${w}(${n}))`:(0,ie._)`${w}(${n})`,I=(0,ie._)`(typeof ${w} == "function" ? ${P} : ${w}.test(${n}))`;return(0,ie._)`${w} && ${w} !== true && ${_} === ${t} && !${I}`}}function p(){let m=d.formats[i];if(!m){b();return}if(m===!0)return;let[h,_,w]=x(m);h===t&&e.pass(P());function b(){if(c.strictSchema===!1){d.logger.warn(I());return}throw new Error(I());function I(){return`unknown format "${i}" ignored in schema at path "${l}"`}}function x(I){let ve=I instanceof RegExp?(0,ie.regexpCode)(I):c.code.formats?(0,ie._)`${c.code.formats}${(0,ie.getProperty)(i)}`:void 0,Oe=r.scopeValue("formats",{key:i,ref:I,code:ve});return typeof I=="object"&&!(I instanceof RegExp)?[I.type||"string",I.validate,(0,ie._)`${Oe}.validate`]:["string",I,Oe]}function P(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!u.$async)throw new Error("async format in sync schema");return(0,ie._)`await ${w}(${n})`}return typeof _=="function"?(0,ie._)`${w}(${n})`:(0,ie._)`${w}.test(${n})`}}}};Cc.default=aE});var Fh=v(Dc=>{"use strict";Object.defineProperty(Dc,"__esModule",{value:!0});var cE=Uh(),uE=[cE.default];Dc.default=uE});var Vh=v(yr=>{"use strict";Object.defineProperty(yr,"__esModule",{value:!0});yr.contentVocabulary=yr.metadataVocabulary=void 0;yr.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];yr.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Hh=v(jc=>{"use strict";Object.defineProperty(jc,"__esModule",{value:!0});var lE=eh(),dE=mh(),fE=Zh(),pE=Fh(),Kh=Vh(),mE=[lE.default,dE.default,(0,fE.default)(),pE.default,Kh.metadataVocabulary,Kh.contentVocabulary];jc.default=mE});var Gh=v(ri=>{"use strict";Object.defineProperty(ri,"__esModule",{value:!0});ri.DiscrError=void 0;var Wh;(function(e){e.Tag="tag",e.Mapping="mapping"})(Wh||(ri.DiscrError=Wh={}))});var Qh=v(qc=>{"use strict";Object.defineProperty(qc,"__esModule",{value:!0});var _r=C(),Mc=Gh(),Jh=qo(),hE=_n(),gE=B(),yE={message:({params:{discrError:e,tagName:t}})=>e===Mc.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,_r._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},_E={keyword:"discriminator",type:"object",schemaType:"object",error:yE,code(e){let{gen:t,data:r,schema:n,parentSchema:o,it:i}=e,{oneOf:s}=o;if(!i.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(!s)throw new Error("discriminator: requires oneOf keyword");let c=t.let("valid",!1),l=t.const("tag",(0,_r._)`${r}${(0,_r.getProperty)(a)}`);t.if((0,_r._)`typeof ${l} == "string"`,()=>u(),()=>e.error(!1,{discrError:Mc.DiscrError.Tag,tag:l,tagName:a})),e.ok(c);function u(){let p=f();t.if(!1);for(let m in p)t.elseIf((0,_r._)`${l} === ${m}`),t.assign(c,d(p[m]));t.else(),e.error(!1,{discrError:Mc.DiscrError.Mapping,tag:l,tagName:a}),t.endIf()}function d(p){let m=t.name("valid"),h=e.subschema({keyword:"oneOf",schemaProp:p},m);return e.mergeEvaluated(h,_r.Name),m}function f(){var p;let m={},h=w(o),_=!0;for(let P=0;P<s.length;P++){let I=s[P];if(I?.$ref&&!(0,gE.schemaHasRulesButRef)(I,i.self.RULES)){let Oe=I.$ref;if(I=Jh.resolveRef.call(i.self,i.schemaEnv.root,i.baseId,Oe),I instanceof Jh.SchemaEnv&&(I=I.schema),I===void 0)throw new hE.default(i.opts.uriResolver,i.baseId,Oe)}let ve=(p=I?.properties)===null||p===void 0?void 0:p[a];if(typeof ve!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);_=_&&(h||w(I)),b(ve,P)}if(!_)throw new Error(`discriminator: "${a}" must be required`);return m;function w({required:P}){return Array.isArray(P)&&P.includes(a)}function b(P,I){if(P.const)x(P.const,I);else if(P.enum)for(let ve of P.enum)x(ve,I);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function x(P,I){if(typeof P!="string"||P in m)throw new Error(`discriminator: "${a}" values must be unique strings`);m[P]=I}}}};qc.default=_E});var Yh=v((Ej,wE)=>{wE.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 Bc=v((ee,Lc)=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.MissingRefError=ee.ValidationError=ee.CodeGen=ee.Name=ee.nil=ee.stringify=ee.str=ee._=ee.KeywordCxt=ee.Ajv=void 0;var vE=Wm(),bE=Hh(),xE=Qh(),Xh=Yh(),kE=["/properties"],ni="http://json-schema.org/draft-07/schema",wr=class extends vE.default{_addVocabularies(){super._addVocabularies(),bE.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(xE.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(Xh,kE):Xh;this.addMetaSchema(t,ni,!1),this.refs["http://json-schema.org/schema"]=ni}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(ni)?ni:void 0)}};ee.Ajv=wr;Lc.exports=ee=wr;Lc.exports.Ajv=wr;Object.defineProperty(ee,"__esModule",{value:!0});ee.default=wr;var $E=yn();Object.defineProperty(ee,"KeywordCxt",{enumerable:!0,get:function(){return $E.KeywordCxt}});var vr=C();Object.defineProperty(ee,"_",{enumerable:!0,get:function(){return vr._}});Object.defineProperty(ee,"str",{enumerable:!0,get:function(){return vr.str}});Object.defineProperty(ee,"stringify",{enumerable:!0,get:function(){return vr.stringify}});Object.defineProperty(ee,"nil",{enumerable:!0,get:function(){return vr.nil}});Object.defineProperty(ee,"Name",{enumerable:!0,get:function(){return vr.Name}});Object.defineProperty(ee,"CodeGen",{enumerable:!0,get:function(){return vr.CodeGen}});var SE=jo();Object.defineProperty(ee,"ValidationError",{enumerable:!0,get:function(){return SE.default}});var EE=_n();Object.defineProperty(ee,"MissingRefError",{enumerable:!0,get:function(){return EE.default}})});var ag=v(nt=>{"use strict";Object.defineProperty(nt,"__esModule",{value:!0});nt.formatNames=nt.fastFormats=nt.fullFormats=void 0;function rt(e,t){return{validate:e,compare:t}}nt.fullFormats={date:rt(ng,Vc),time:rt(Uc(!0),Kc),"date-time":rt(eg(!0),ig),"iso-time":rt(Uc(),og),"iso-date-time":rt(eg(),sg),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:OE,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:qE,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:AE,int32:{type:"number",validate:DE},int64:{type:"number",validate:jE},float:{type:"number",validate:rg},double:{type:"number",validate:rg},password:!0,binary:!0};nt.fastFormats={...nt.fullFormats,date:rt(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Vc),time:rt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Kc),"date-time":rt(/^\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,ig),"iso-time":rt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,og),"iso-date-time":rt(/^\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,sg),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};nt.formatNames=Object.keys(nt.fullFormats);function TE(e){return e%4===0&&(e%100!==0||e%400===0)}var PE=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,RE=[0,31,28,31,30,31,30,31,31,30,31,30,31];function ng(e){let t=PE.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],o=+t[3];return n>=1&&n<=12&&o>=1&&o<=(n===2&&TE(r)?29:RE[n])}function Vc(e,t){if(e&&t)return e>t?1:e<t?-1:0}var Zc=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function Uc(e){return function(r){let n=Zc.exec(r);if(!n)return!1;let o=+n[1],i=+n[2],s=+n[3],a=n[4],c=n[5]==="-"?-1:1,l=+(n[6]||0),u=+(n[7]||0);if(l>23||u>59||e&&!a)return!1;if(o<=23&&i<=59&&s<60)return!0;let d=i-u*c,f=o-l*c-(d<0?1:0);return(f===23||f===-1)&&(d===59||d===-1)&&s<61}}function Kc(e,t){if(!(e&&t))return;let r=new Date("2020-01-01T"+e).valueOf(),n=new Date("2020-01-01T"+t).valueOf();if(r&&n)return r-n}function og(e,t){if(!(e&&t))return;let r=Zc.exec(e),n=Zc.exec(t);if(r&&n)return e=r[1]+r[2]+r[3],t=n[1]+n[2]+n[3],e>t?1:e<t?-1:0}var Fc=/t|\s/i;function eg(e){let t=Uc(e);return function(n){let o=n.split(Fc);return o.length===2&&ng(o[0])&&t(o[1])}}function ig(e,t){if(!(e&&t))return;let r=new Date(e).valueOf(),n=new Date(t).valueOf();if(r&&n)return r-n}function sg(e,t){if(!(e&&t))return;let[r,n]=e.split(Fc),[o,i]=t.split(Fc),s=Vc(r,o);if(s!==void 0)return s||Kc(n,i)}var zE=/\/|:/,IE=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function OE(e){return zE.test(e)&&IE.test(e)}var tg=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function AE(e){return tg.lastIndex=0,tg.test(e)}var NE=-(2**31),CE=2**31-1;function DE(e){return Number.isInteger(e)&&e<=CE&&e>=NE}function jE(e){return Number.isInteger(e)}function rg(){return!0}var ME=/[^\\]\\Z/;function qE(e){if(ME.test(e))return!1;try{return new RegExp(e),!0}catch{return!1}}});var cg=v(br=>{"use strict";Object.defineProperty(br,"__esModule",{value:!0});br.formatLimitDefinition=void 0;var LE=Bc(),He=C(),St=He.operators,oi={formatMaximum:{okStr:"<=",ok:St.LTE,fail:St.GT},formatMinimum:{okStr:">=",ok:St.GTE,fail:St.LT},formatExclusiveMaximum:{okStr:"<",ok:St.LT,fail:St.GTE},formatExclusiveMinimum:{okStr:">",ok:St.GT,fail:St.LTE}},BE={message:({keyword:e,schemaCode:t})=>(0,He.str)`should be ${oi[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,He._)`{comparison: ${oi[e].okStr}, limit: ${t}}`};br.formatLimitDefinition={keyword:Object.keys(oi),type:"string",schemaType:"string",$data:!0,error:BE,code(e){let{gen:t,data:r,schemaCode:n,keyword:o,it:i}=e,{opts:s,self:a}=i;if(!s.validateFormats)return;let c=new LE.KeywordCxt(i,a.RULES.all.format.definition,"format");c.$data?l():u();function l(){let f=t.scopeValue("formats",{ref:a.formats,code:s.code.formats}),p=t.const("fmt",(0,He._)`${f}[${c.schemaCode}]`);e.fail$data((0,He.or)((0,He._)`typeof ${p} != "object"`,(0,He._)`${p} instanceof RegExp`,(0,He._)`typeof ${p}.compare != "function"`,d(p)))}function u(){let f=c.schema,p=a.formats[f];if(!p||p===!0)return;if(typeof p!="object"||p instanceof RegExp||typeof p.compare!="function")throw new Error(`"${o}": format "${f}" does not define "compare" function`);let m=t.scopeValue("formats",{key:f,ref:p,code:s.code.formats?(0,He._)`${s.code.formats}${(0,He.getProperty)(f)}`:void 0});e.fail$data(d(m))}function d(f){return(0,He._)`${f}.compare(${r}, ${n}) ${oi[o].fail} 0`}},dependencies:["format"]};var ZE=e=>(e.addKeyword(br.formatLimitDefinition),e);br.default=ZE});var fg=v((On,dg)=>{"use strict";Object.defineProperty(On,"__esModule",{value:!0});var xr=ag(),UE=cg(),Hc=C(),ug=new Hc.Name("fullFormats"),FE=new Hc.Name("fastFormats"),Wc=(e,t={keywords:!0})=>{if(Array.isArray(t))return lg(e,t,xr.fullFormats,ug),e;let[r,n]=t.mode==="fast"?[xr.fastFormats,FE]:[xr.fullFormats,ug],o=t.formats||xr.formatNames;return lg(e,o,r,n),t.keywords&&(0,UE.default)(e),e};Wc.get=(e,t="full")=>{let n=(t==="fast"?xr.fastFormats:xr.fullFormats)[e];if(!n)throw new Error(`Unknown format "${e}"`);return n};function lg(e,t,r,n){var o,i;(o=(i=e.opts.code).formats)!==null&&o!==void 0||(i.formats=(0,Hc._)`require("ajv-formats/dist/formats").${n}`);for(let s of t)e.addFormat(s,r[s])}dg.exports=On=Wc;Object.defineProperty(On,"__esModule",{value:!0});On.default=Wc});var bg=v((Lj,vg)=>{vg.exports=wg;wg.sync=WE;var yg=pt("fs");function HE(e,t){var r=t.pathExt!==void 0?t.pathExt:process.env.PATHEXT;if(!r||(r=r.split(";"),r.indexOf("")!==-1))return!0;for(var n=0;n<r.length;n++){var o=r[n].toLowerCase();if(o&&e.substr(-o.length).toLowerCase()===o)return!0}return!1}function _g(e,t,r){return!e.isSymbolicLink()&&!e.isFile()?!1:HE(t,r)}function wg(e,t,r){yg.stat(e,function(n,o){r(n,n?!1:_g(o,e,t))})}function WE(e,t){return _g(yg.statSync(e),e,t)}});var Eg=v((Bj,Sg)=>{Sg.exports=kg;kg.sync=GE;var xg=pt("fs");function kg(e,t,r){xg.stat(e,function(n,o){r(n,n?!1:$g(o,t))})}function GE(e,t){return $g(xg.statSync(e),t)}function $g(e,t){return e.isFile()&&JE(e,t)}function JE(e,t){var r=e.mode,n=e.uid,o=e.gid,i=t.uid!==void 0?t.uid:process.getuid&&process.getuid(),s=t.gid!==void 0?t.gid:process.getgid&&process.getgid(),a=parseInt("100",8),c=parseInt("010",8),l=parseInt("001",8),u=a|c,d=r&l||r&c&&o===s||r&a&&n===i||r&u&&i===0;return d}});var Pg=v((Uj,Tg)=>{var Zj=pt("fs"),ui;process.platform==="win32"||global.TESTING_WINDOWS?ui=bg():ui=Eg();Tg.exports=Gc;Gc.sync=QE;function Gc(e,t,r){if(typeof t=="function"&&(r=t,t={}),!r){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(n,o){Gc(e,t||{},function(i,s){i?o(i):n(s)})})}ui(e,t||{},function(n,o){n&&(n.code==="EACCES"||t&&t.ignoreErrors)&&(n=null,o=!1),r(n,o)})}function QE(e,t){try{return ui.sync(e,t||{})}catch(r){if(t&&t.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var Cg=v((Fj,Ng)=>{var kr=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",Rg=pt("path"),YE=kr?";":":",zg=Pg(),Ig=e=>Object.assign(new Error(`not found: ${e}`),{code:"ENOENT"}),Og=(e,t)=>{let r=t.colon||YE,n=e.match(/\//)||kr&&e.match(/\\/)?[""]:[...kr?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(r)],o=kr?t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",i=kr?o.split(r):[""];return kr&&e.indexOf(".")!==-1&&i[0]!==""&&i.unshift(""),{pathEnv:n,pathExt:i,pathExtExe:o}},Ag=(e,t,r)=>{typeof t=="function"&&(r=t,t={}),t||(t={});let{pathEnv:n,pathExt:o,pathExtExe:i}=Og(e,t),s=[],a=l=>new Promise((u,d)=>{if(l===n.length)return t.all&&s.length?u(s):d(Ig(e));let f=n[l],p=/^".*"$/.test(f)?f.slice(1,-1):f,m=Rg.join(p,e),h=!p&&/^\.[\\\/]/.test(e)?e.slice(0,2)+m:m;u(c(h,l,0))}),c=(l,u,d)=>new Promise((f,p)=>{if(d===o.length)return f(a(u+1));let m=o[d];zg(l+m,{pathExt:i},(h,_)=>{if(!h&&_)if(t.all)s.push(l+m);else return f(l+m);return f(c(l,u,d+1))})});return r?a(0).then(l=>r(null,l),r):a(0)},XE=(e,t)=>{t=t||{};let{pathEnv:r,pathExt:n,pathExtExe:o}=Og(e,t),i=[];for(let s=0;s<r.length;s++){let a=r[s],c=/^".*"$/.test(a)?a.slice(1,-1):a,l=Rg.join(c,e),u=!c&&/^\.[\\\/]/.test(e)?e.slice(0,2)+l:l;for(let d=0;d<n.length;d++){let f=u+n[d];try{if(zg.sync(f,{pathExt:o}))if(t.all)i.push(f);else return f}catch{}}}if(t.all&&i.length)return i;if(t.nothrow)return null;throw Ig(e)};Ng.exports=Ag;Ag.sync=XE});var jg=v((Vj,Jc)=>{"use strict";var Dg=(e={})=>{let t=e.env||process.env;return(e.platform||process.platform)!=="win32"?"PATH":Object.keys(t).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"};Jc.exports=Dg;Jc.exports.default=Dg});var Bg=v((Kj,Lg)=>{"use strict";var Mg=pt("path"),eT=Cg(),tT=jg();function qg(e,t){let r=e.options.env||process.env,n=process.cwd(),o=e.options.cwd!=null,i=o&&process.chdir!==void 0&&!process.chdir.disabled;if(i)try{process.chdir(e.options.cwd)}catch{}let s;try{s=eT.sync(e.command,{path:r[tT({env:r})],pathExt:t?Mg.delimiter:void 0})}catch{}finally{i&&process.chdir(n)}return s&&(s=Mg.resolve(o?e.options.cwd:"",s)),s}function rT(e){return qg(e)||qg(e,!0)}Lg.exports=rT});var Zg=v((Hj,Yc)=>{"use strict";var Qc=/([()\][%!^"`<>&|;, *?])/g;function nT(e){return e=e.replace(Qc,"^$1"),e}function oT(e,t){return e=`${e}`,e=e.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),e=e.replace(/(?=(\\+?)?)\1$/,"$1$1"),e=`"${e}"`,e=e.replace(Qc,"^$1"),t&&(e=e.replace(Qc,"^$1")),e}Yc.exports.command=nT;Yc.exports.argument=oT});var Fg=v((Wj,Ug)=>{"use strict";Ug.exports=/^#!(.*)/});var Kg=v((Gj,Vg)=>{"use strict";var iT=Fg();Vg.exports=(e="")=>{let t=e.match(iT);if(!t)return null;let[r,n]=t[0].replace(/#! ?/,"").split(" "),o=r.split("/").pop();return o==="env"?n:n?`${o} ${n}`:o}});var Wg=v((Jj,Hg)=>{"use strict";var Xc=pt("fs"),sT=Kg();function aT(e){let r=Buffer.alloc(150),n;try{n=Xc.openSync(e,"r"),Xc.readSync(n,r,0,150,0),Xc.closeSync(n)}catch{}return sT(r.toString())}Hg.exports=aT});var Yg=v((Qj,Qg)=>{"use strict";var cT=pt("path"),Gg=Bg(),Jg=Zg(),uT=Wg(),lT=process.platform==="win32",dT=/\.(?:com|exe)$/i,fT=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function pT(e){e.file=Gg(e);let t=e.file&&uT(e.file);return t?(e.args.unshift(e.file),e.command=t,Gg(e)):e.file}function mT(e){if(!lT)return e;let t=pT(e),r=!dT.test(t);if(e.options.forceShell||r){let n=fT.test(t);e.command=cT.normalize(e.command),e.command=Jg.command(e.command),e.args=e.args.map(i=>Jg.argument(i,n));let o=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${o}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e}function hT(e,t,r){t&&!Array.isArray(t)&&(r=t,t=null),t=t?t.slice(0):[],r=Object.assign({},r);let n={command:e,args:t,options:r,file:void 0,original:{command:e,args:t}};return r.shell?n:mT(n)}Qg.exports=hT});var ty=v((Yj,ey)=>{"use strict";var eu=process.platform==="win32";function tu(e,t){return Object.assign(new Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function gT(e,t){if(!eu)return;let r=e.emit;e.emit=function(n,o){if(n==="exit"){let i=Xg(o,t);if(i)return r.call(e,"error",i)}return r.apply(e,arguments)}}function Xg(e,t){return eu&&e===1&&!t.file?tu(t.original,"spawn"):null}function yT(e,t){return eu&&e===1&&!t.file?tu(t.original,"spawnSync"):null}ey.exports={hookChildProcess:gT,verifyENOENT:Xg,verifyENOENTSync:yT,notFoundError:tu}});var oy=v((Xj,$r)=>{"use strict";var ry=pt("child_process"),ru=Yg(),nu=ty();function ny(e,t,r){let n=ru(e,t,r),o=ry.spawn(n.command,n.args,n.options);return nu.hookChildProcess(o,n),o}function _T(e,t,r){let n=ru(e,t,r),o=ry.spawnSync(n.command,n.args,n.options);return o.error=o.error||nu.verifyENOENTSync(o.status,n),o}$r.exports=ny;$r.exports.spawn=ny;$r.exports.sync=_T;$r.exports._parse=ru;$r.exports._enoent=nu});import{readFile as yI,mkdir as _I,writeFile as wI}from"node:fs/promises";import{dirname as vI,join as N_}from"node:path";var qI=Object.freeze({status:"aborted"});function y(e,t,r){function n(a,c){var l;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(l=a._zod).traits??(l.traits=new Set),a._zod.traits.add(e),t(a,c);for(let u in s.prototype)u in a||Object.defineProperty(a,u,{value:s.prototype[u].bind(a)});a._zod.constr=s,a._zod.def=c}let o=r?.Parent??Object;class i extends o{}Object.defineProperty(i,"name",{value:e});function s(a){var c;let l=r?.Parent?new i:this;n(l,a),(c=l._zod).deferred??(c.deferred=[]);for(let u of l._zod.deferred)u();return l}return Object.defineProperty(s,"init",{value:n}),Object.defineProperty(s,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(e)}),Object.defineProperty(s,"name",{value:e}),s}var LI=Symbol("zod_brand"),st=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Wn={};function Ae(e){return e&&Object.assign(Wn,e),Wn}var F={};Qu(F,{BIGINT_FORMAT_RANGES:()=>Xu,Class:()=>qi,NUMBER_FORMAT_RANGES:()=>Hi,aborted:()=>Ot,allowsEval:()=>Fi,assert:()=>K_,assertEqual:()=>Z_,assertIs:()=>F_,assertNever:()=>V_,assertNotEqual:()=>U_,assignProp:()=>Ui,cached:()=>Dr,captureStackTrace:()=>Jn,cleanEnum:()=>iw,cleanRegex:()=>Mr,clone:()=>Qe,createTransparentProxy:()=>Y_,defineLazy:()=>W,esc:()=>It,escapeRegex:()=>mt,extend:()=>tw,finalizeIssue:()=>Be,floatSafeRemainder:()=>Zi,getElementAtPath:()=>H_,getEnumValues:()=>Li,getLengthableOrigin:()=>qr,getParsedType:()=>Q_,getSizableOrigin:()=>el,isObject:()=>Xt,isPlainObject:()=>er,issue:()=>Wi,joinValues:()=>Gn,jsonStringifyReplacer:()=>Bi,merge:()=>rw,normalizeParams:()=>R,nullish:()=>jr,numKeys:()=>J_,omit:()=>ew,optionalKeys:()=>Ki,partial:()=>nw,pick:()=>X_,prefixIssues:()=>Ye,primitiveTypes:()=>Yu,promiseAllObject:()=>W_,propertyKeyTypes:()=>Vi,randomString:()=>G_,required:()=>ow,stringifyPrimitive:()=>Qn,unwrapMessage:()=>Cr});function Z_(e){return e}function U_(e){return e}function F_(e){}function V_(e){throw new Error}function K_(e){}function Li(e){let t=Object.values(e).filter(n=>typeof n=="number");return Object.entries(e).filter(([n,o])=>t.indexOf(+n)===-1).map(([n,o])=>o)}function Gn(e,t="|"){return e.map(r=>Qn(r)).join(t)}function Bi(e,t){return typeof t=="bigint"?t.toString():t}function Dr(e){return{get value(){{let r=e();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function jr(e){return e==null}function Mr(e){let t=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}function Zi(e,t){let r=(e.toString().split(".")[1]||"").length,n=(t.toString().split(".")[1]||"").length,o=r>n?r:n,i=Number.parseInt(e.toFixed(o).replace(".","")),s=Number.parseInt(t.toFixed(o).replace(".",""));return i%s/10**o}function W(e,t,r){Object.defineProperty(e,t,{get(){{let o=r();return e[t]=o,o}throw new Error("cached value already set")},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function Ui(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}function H_(e,t){return t?t.reduce((r,n)=>r?.[n],e):e}function W_(e){let t=Object.keys(e),r=t.map(n=>e[n]);return Promise.all(r).then(n=>{let o={};for(let i=0;i<t.length;i++)o[t[i]]=n[i];return o})}function G_(e=10){let t="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<e;n++)r+=t[Math.floor(Math.random()*t.length)];return r}function It(e){return JSON.stringify(e)}var Jn=Error.captureStackTrace?Error.captureStackTrace:(...e)=>{};function Xt(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var Fi=Dr(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let e=Function;return new e(""),!0}catch{return!1}});function er(e){if(Xt(e)===!1)return!1;let t=e.constructor;if(t===void 0)return!0;let r=t.prototype;return!(Xt(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function J_(e){let t=0;for(let r in e)Object.prototype.hasOwnProperty.call(e,r)&&t++;return t}var Q_=e=>{let t=typeof e;switch(t){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(e)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(e)?"array":e===null?"null":e.then&&typeof e.then=="function"&&e.catch&&typeof e.catch=="function"?"promise":typeof Map<"u"&&e instanceof Map?"map":typeof Set<"u"&&e instanceof Set?"set":typeof Date<"u"&&e instanceof Date?"date":typeof File<"u"&&e instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${t}`)}},Vi=new Set(["string","number","symbol"]),Yu=new Set(["string","number","bigint","boolean","symbol","undefined"]);function mt(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Qe(e,t,r){let n=new e._zod.constr(t??e._zod.def);return(!t||r?.parent)&&(n._zod.parent=e),n}function R(e){let t=e;if(!t)return{};if(typeof t=="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error=="string"?{...t,error:()=>t.error}:t}function Y_(e){let t;return new Proxy({},{get(r,n,o){return t??(t=e()),Reflect.get(t,n,o)},set(r,n,o,i){return t??(t=e()),Reflect.set(t,n,o,i)},has(r,n){return t??(t=e()),Reflect.has(t,n)},deleteProperty(r,n){return t??(t=e()),Reflect.deleteProperty(t,n)},ownKeys(r){return t??(t=e()),Reflect.ownKeys(t)},getOwnPropertyDescriptor(r,n){return t??(t=e()),Reflect.getOwnPropertyDescriptor(t,n)},defineProperty(r,n,o){return t??(t=e()),Reflect.defineProperty(t,n,o)}})}function Qn(e){return typeof e=="bigint"?e.toString()+"n":typeof e=="string"?`"${e}"`:`${e}`}function Ki(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}var Hi={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]},Xu={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function X_(e,t){let r={},n=e._zod.def;for(let o in t){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);t[o]&&(r[o]=n.shape[o])}return Qe(e,{...e._zod.def,shape:r,checks:[]})}function ew(e,t){let r={...e._zod.def.shape},n=e._zod.def;for(let o in t){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);t[o]&&delete r[o]}return Qe(e,{...e._zod.def,shape:r,checks:[]})}function tw(e,t){if(!er(t))throw new Error("Invalid input to extend: expected a plain object");let r={...e._zod.def,get shape(){let n={...e._zod.def.shape,...t};return Ui(this,"shape",n),n},checks:[]};return Qe(e,r)}function rw(e,t){return Qe(e,{...e._zod.def,get shape(){let r={...e._zod.def.shape,...t._zod.def.shape};return Ui(this,"shape",r),r},catchall:t._zod.def.catchall,checks:[]})}function nw(e,t,r){let n=t._zod.def.shape,o={...n};if(r)for(let i in r){if(!(i in n))throw new Error(`Unrecognized key: "${i}"`);r[i]&&(o[i]=e?new e({type:"optional",innerType:n[i]}):n[i])}else for(let i in n)o[i]=e?new e({type:"optional",innerType:n[i]}):n[i];return Qe(t,{...t._zod.def,shape:o,checks:[]})}function ow(e,t,r){let n=t._zod.def.shape,o={...n};if(r)for(let i in r){if(!(i in o))throw new Error(`Unrecognized key: "${i}"`);r[i]&&(o[i]=new e({type:"nonoptional",innerType:n[i]}))}else for(let i in n)o[i]=new e({type:"nonoptional",innerType:n[i]});return Qe(t,{...t._zod.def,shape:o,checks:[]})}function Ot(e,t=0){for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue!==!0)return!0;return!1}function Ye(e,t){return t.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(e),r})}function Cr(e){return typeof e=="string"?e:e?.message}function Be(e,t,r){let n={...e,path:e.path??[]};if(!e.message){let o=Cr(e.inst?._zod.def?.error?.(e))??Cr(t?.error?.(e))??Cr(r.customError?.(e))??Cr(r.localeError?.(e))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,t?.reportInput||delete n.input,n}function el(e){return e instanceof Set?"set":e instanceof Map?"map":e instanceof File?"file":"unknown"}function qr(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function Wi(...e){let[t,r,n]=e;return typeof t=="string"?{message:t,code:"custom",input:r,inst:n}:{...t}}function iw(e){return Object.entries(e).filter(([t,r])=>Number.isNaN(Number.parseInt(t,10))).map(t=>t[1])}var qi=class{constructor(...t){}};var tl=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),Object.defineProperty(e,"message",{get(){return JSON.stringify(t,Bi,2)},enumerable:!0}),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Yn=y("$ZodError",tl),Gi=y("$ZodError",tl,{Parent:Error});function rl(e,t=r=>r.message){let r={},n=[];for(let o of e.issues)o.path.length>0?(r[o.path[0]]=r[o.path[0]]||[],r[o.path[0]].push(t(o))):n.push(t(o));return{formErrors:n,fieldErrors:r}}function nl(e,t){let r=t||function(i){return i.message},n={_errors:[]},o=i=>{for(let s of i.issues)if(s.code==="invalid_union"&&s.errors.length)s.errors.map(a=>o({issues:a}));else if(s.code==="invalid_key")o({issues:s.issues});else if(s.code==="invalid_element")o({issues:s.issues});else if(s.path.length===0)n._errors.push(r(s));else{let a=n,c=0;for(;c<s.path.length;){let l=s.path[c];c===s.path.length-1?(a[l]=a[l]||{_errors:[]},a[l]._errors.push(r(s))):a[l]=a[l]||{_errors:[]},a=a[l],c++}}};return o(e),n}var ol=e=>(t,r,n,o)=>{let i=n?Object.assign(n,{async:!1}):{async:!1},s=t._zod.run({value:r,issues:[]},i);if(s instanceof Promise)throw new st;if(s.issues.length){let a=new(o?.Err??e)(s.issues.map(c=>Be(c,i,Ae())));throw Jn(a,o?.callee),a}return s.value};var il=e=>async(t,r,n,o)=>{let i=n?Object.assign(n,{async:!0}):{async:!0},s=t._zod.run({value:r,issues:[]},i);if(s instanceof Promise&&(s=await s),s.issues.length){let a=new(o?.Err??e)(s.issues.map(c=>Be(c,i,Ae())));throw Jn(a,o?.callee),a}return s.value};var Ji=e=>(t,r,n)=>{let o=n?{...n,async:!1}:{async:!1},i=t._zod.run({value:r,issues:[]},o);if(i instanceof Promise)throw new st;return i.issues.length?{success:!1,error:new(e??Yn)(i.issues.map(s=>Be(s,o,Ae())))}:{success:!0,data:i.value}},Lr=Ji(Gi),Qi=e=>async(t,r,n)=>{let o=n?Object.assign(n,{async:!0}):{async:!0},i=t._zod.run({value:r,issues:[]},o);return i instanceof Promise&&(i=await i),i.issues.length?{success:!1,error:new e(i.issues.map(s=>Be(s,o,Ae())))}:{success:!0,data:i.value}},Xn=Qi(Gi);var sl=/^[cC][^\s-]{8,}$/,al=/^[0-9a-z]+$/,cl=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,ul=/^[0-9a-vA-V]{20}$/,ll=/^[A-Za-z0-9]{27}$/,dl=/^[a-zA-Z0-9_-]{21}$/,fl=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var pl=/^([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})$/,Yi=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$/;var ml=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var aw="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function hl(){return new RegExp(aw,"u")}var gl=/^(?:(?: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])$/,yl=/^(([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})$/,_l=/^((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])$/,wl=/^(([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])$/,vl=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Xi=/^[A-Za-z0-9_-]*$/,bl=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var xl=/^\+(?:[0-9]){6,14}[0-9]$/,kl="(?:(?:\\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(`^${kl}$`);function Sl(e){let t="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof e.precision=="number"?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function El(e){return new RegExp(`^${Sl(e)}$`)}function Tl(e){let t=Sl({precision:e.precision}),r=["Z"];e.local&&r.push(""),e.offset&&r.push("([+-]\\d{2}:\\d{2})");let n=`${t}(?:${r.join("|")})`;return new RegExp(`^${kl}T(?:${n})$`)}var Pl=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)};var Rl=/^\d+$/,zl=/^-?\d+(?:\.\d+)?/i,Il=/true|false/i,Ol=/null/i;var Al=/^[^A-Z]*$/,Nl=/^[^a-z]*$/;var me=y("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])}),Cl={number:"number",bigint:"bigint",object:"date"},ts=y("$ZodCheckLessThan",(e,t)=>{me.init(e,t);let r=Cl[typeof t.value];e._zod.onattach.push(n=>{let o=n._zod.bag,i=(t.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;t.value<i&&(t.inclusive?o.maximum=t.value:o.exclusiveMaximum=t.value)}),e._zod.check=n=>{(t.inclusive?n.value<=t.value:n.value<t.value)||n.issues.push({origin:r,code:"too_big",maximum:t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),rs=y("$ZodCheckGreaterThan",(e,t)=>{me.init(e,t);let r=Cl[typeof t.value];e._zod.onattach.push(n=>{let o=n._zod.bag,i=(t.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;t.value>i&&(t.inclusive?o.minimum=t.value:o.exclusiveMinimum=t.value)}),e._zod.check=n=>{(t.inclusive?n.value>=t.value:n.value>t.value)||n.issues.push({origin:r,code:"too_small",minimum:t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Dl=y("$ZodCheckMultipleOf",(e,t)=>{me.init(e,t),e._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=r=>{if(typeof r.value!=typeof t.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%t.value===BigInt(0):Zi(r.value,t.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:t.value,input:r.value,inst:e,continue:!t.abort})}}),jl=y("$ZodCheckNumberFormat",(e,t)=>{me.init(e,t),t.format=t.format||"float64";let r=t.format?.includes("int"),n=r?"int":"number",[o,i]=Hi[t.format];e._zod.onattach.push(s=>{let a=s._zod.bag;a.format=t.format,a.minimum=o,a.maximum=i,r&&(a.pattern=Rl)}),e._zod.check=s=>{let a=s.value;if(r){if(!Number.isInteger(a)){s.issues.push({expected:n,format:t.format,code:"invalid_type",input:a,inst:e});return}if(!Number.isSafeInteger(a)){a>0?s.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,continue:!t.abort}):s.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,continue:!t.abort});return}}a<o&&s.issues.push({origin:"number",input:a,code:"too_small",minimum:o,inclusive:!0,inst:e,continue:!t.abort}),a>i&&s.issues.push({origin:"number",input:a,code:"too_big",maximum:i,inst:e})}});var Ml=y("$ZodCheckMaxLength",(e,t)=>{var r;me.init(e,t),(r=e._zod.def).when??(r.when=n=>{let o=n.value;return!jr(o)&&o.length!==void 0}),e._zod.onattach.push(n=>{let o=n._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<o&&(n._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let o=n.value;if(o.length<=t.maximum)return;let s=qr(o);n.issues.push({origin:s,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),ql=y("$ZodCheckMinLength",(e,t)=>{var r;me.init(e,t),(r=e._zod.def).when??(r.when=n=>{let o=n.value;return!jr(o)&&o.length!==void 0}),e._zod.onattach.push(n=>{let o=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>o&&(n._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let o=n.value;if(o.length>=t.minimum)return;let s=qr(o);n.issues.push({origin:s,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Ll=y("$ZodCheckLengthEquals",(e,t)=>{var r;me.init(e,t),(r=e._zod.def).when??(r.when=n=>{let o=n.value;return!jr(o)&&o.length!==void 0}),e._zod.onattach.push(n=>{let o=n._zod.bag;o.minimum=t.length,o.maximum=t.length,o.length=t.length}),e._zod.check=n=>{let o=n.value,i=o.length;if(i===t.length)return;let s=qr(o),a=i>t.length;n.issues.push({origin:s,...a?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),Br=y("$ZodCheckStringFormat",(e,t)=>{var r,n;me.init(e,t),e._zod.onattach.push(o=>{let i=o._zod.bag;i.format=t.format,t.pattern&&(i.patterns??(i.patterns=new Set),i.patterns.add(t.pattern))}),t.pattern?(r=e._zod).check??(r.check=o=>{t.pattern.lastIndex=0,!t.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:t.format,input:o.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(n=e._zod).check??(n.check=()=>{})}),Bl=y("$ZodCheckRegex",(e,t)=>{Br.init(e,t),e._zod.check=r=>{t.pattern.lastIndex=0,!t.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Zl=y("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=Al),Br.init(e,t)}),Ul=y("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=Nl),Br.init(e,t)}),Fl=y("$ZodCheckIncludes",(e,t)=>{me.init(e,t);let r=mt(t.includes),n=new RegExp(typeof t.position=="number"?`^.{${t.position}}${r}`:r);t.pattern=n,e._zod.onattach.push(o=>{let i=o._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(n)}),e._zod.check=o=>{o.value.includes(t.includes,t.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:o.value,inst:e,continue:!t.abort})}}),Vl=y("$ZodCheckStartsWith",(e,t)=>{me.init(e,t);let r=new RegExp(`^${mt(t.prefix)}.*`);t.pattern??(t.pattern=r),e._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),Kl=y("$ZodCheckEndsWith",(e,t)=>{me.init(e,t);let r=new RegExp(`.*${mt(t.suffix)}$`);t.pattern??(t.pattern=r),e._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}});var Hl=y("$ZodCheckOverwrite",(e,t)=>{me.init(e,t),e._zod.check=r=>{r.value=t.tx(r.value)}});var eo=class{constructor(t=[]){this.content=[],this.indent=0,this&&(this.args=t)}indented(t){this.indent+=1,t(this),this.indent-=1}write(t){if(typeof t=="function"){t(this,{execution:"sync"}),t(this,{execution:"async"});return}let n=t.split(`
10
+ deps: ${r}}`};var wS={keyword:"dependencies",type:"object",schemaType:"object",error:tt.error,code(e){let[t,r]=vS(e);xh(e,t),kh(e,r)}};function vS({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let o=Array.isArray(e[n])?t:r;o[n]=e[n]}return[t,r]}function xh(e,t=e.schema){let{gen:r,data:n,it:o}=e;if(Object.keys(t).length===0)return;let i=r.let("missing");for(let s in t){let a=t[s];if(a.length===0)continue;let c=(0,In.propertyInData)(r,n,s,o.opts.ownProperties);e.setParams({property:s,depsCount:a.length,deps:a.join(", ")}),o.allErrors?r.if(c,()=>{for(let l of a)(0,In.checkReportMissingProp)(e,l)}):(r.if((0,bc._)`${c} && (${(0,In.checkMissingProp)(e,a,i)})`),(0,In.reportMissingProp)(e,i),r.else())}}tt.validatePropertyDeps=xh;function kh(e,t=e.schema){let{gen:r,data:n,keyword:o,it:i}=e,s=r.name("valid");for(let a in t)(0,_S.alwaysValidSchema)(i,t[a])||(r.if((0,In.propertyInData)(r,n,a,i.opts.ownProperties),()=>{let c=e.subschema({keyword:o,schemaProp:a},s);e.mergeValidEvaluated(c,s)},()=>r.var(s,!0)),e.ok(s))}tt.validateSchemaDeps=kh;tt.default=wS});var Eh=v(xc=>{"use strict";Object.defineProperty(xc,"__esModule",{value:!0});var Sh=C(),bS=B(),xS={message:"property name must be valid",params:({params:e})=>(0,Sh._)`{propertyName: ${e.propertyName}}`},kS={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:xS,code(e){let{gen:t,schema:r,data:n,it:o}=e;if((0,bS.alwaysValidSchema)(o,r))return;let i=t.name("valid");t.forIn("key",n,s=>{e.setParams({propertyName:s}),e.subschema({keyword:"propertyNames",data:s,dataTypes:["string"],propertyName:s,compositeRule:!0},i),t.if((0,Sh.not)(i),()=>{e.error(!0),o.allErrors||t.break()})}),e.ok(i)}};xc.default=kS});var $c=v(kc=>{"use strict";Object.defineProperty(kc,"__esModule",{value:!0});var Qo=je(),Ke=C(),$S=lt(),Yo=B(),SS={message:"must NOT have additional properties",params:({params:e})=>(0,Ke._)`{additionalProperty: ${e.additionalProperty}}`},ES={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:SS,code(e){let{gen:t,schema:r,parentSchema:n,data:o,errsCount:i,it:s}=e;if(!i)throw new Error("ajv implementation error");let{allErrors:a,opts:c}=s;if(s.props=!0,c.removeAdditional!=="all"&&(0,Yo.alwaysValidSchema)(s,r))return;let l=(0,Qo.allSchemaProperties)(n.properties),u=(0,Qo.allSchemaProperties)(n.patternProperties);d(),e.ok((0,Ke._)`${i} === ${$S.default.errors}`);function d(){t.forIn("key",o,_=>{!l.length&&!u.length?m(_):t.if(f(_),()=>m(_))})}function f(_){let w;if(l.length>8){let b=(0,Yo.schemaRefOrVal)(s,n.properties,"properties");w=(0,Qo.isOwnProperty)(t,b,_)}else l.length?w=(0,Ke.or)(...l.map(b=>(0,Ke._)`${_} === ${b}`)):w=Ke.nil;return u.length&&(w=(0,Ke.or)(w,...u.map(b=>(0,Ke._)`${(0,Qo.usePattern)(e,b)}.test(${_})`))),(0,Ke.not)(w)}function p(_){t.code((0,Ke._)`delete ${o}[${_}]`)}function m(_){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){p(_);return}if(r===!1){e.setParams({additionalProperty:_}),e.error(),a||t.break();return}if(typeof r=="object"&&!(0,Yo.alwaysValidSchema)(s,r)){let w=t.name("valid");c.removeAdditional==="failing"?(h(_,w,!1),t.if((0,Ke.not)(w),()=>{e.reset(),p(_)})):(h(_,w),a||t.if((0,Ke.not)(w),()=>t.break()))}}function h(_,w,b){let x={keyword:"additionalProperties",dataProp:_,dataPropType:Yo.Type.Str};b===!1&&Object.assign(x,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(x,w)}}};kc.default=ES});var Rh=v(Ec=>{"use strict";Object.defineProperty(Ec,"__esModule",{value:!0});var TS=yn(),Th=je(),Sc=B(),Ph=$c(),PS={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:o,it:i}=e;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&Ph.default.code(new TS.KeywordCxt(i,Ph.default,"additionalProperties"));let s=(0,Th.allSchemaProperties)(r);for(let d of s)i.definedProperties.add(d);i.opts.unevaluated&&s.length&&i.props!==!0&&(i.props=Sc.mergeEvaluated.props(t,(0,Sc.toHash)(s),i.props));let a=s.filter(d=>!(0,Sc.alwaysValidSchema)(i,r[d]));if(a.length===0)return;let c=t.name("valid");for(let d of a)l(d)?u(d):(t.if((0,Th.propertyInData)(t,o,d,i.opts.ownProperties)),u(d),i.allErrors||t.else().var(c,!0),t.endIf()),e.it.definedProperties.add(d),e.ok(c);function l(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function u(d){e.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};Ec.default=PS});var Ah=v(Tc=>{"use strict";Object.defineProperty(Tc,"__esModule",{value:!0});var zh=je(),Xo=C(),Ih=B(),Oh=B(),RS={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:o,it:i}=e,{opts:s}=i,a=(0,zh.allSchemaProperties)(r),c=a.filter(h=>(0,Ih.alwaysValidSchema)(i,r[h]));if(a.length===0||c.length===a.length&&(!i.opts.unevaluated||i.props===!0))return;let l=s.strictSchema&&!s.allowMatchingProperties&&o.properties,u=t.name("valid");i.props!==!0&&!(i.props instanceof Xo.Name)&&(i.props=(0,Oh.evaluatedPropsToName)(t,i.props));let{props:d}=i;f();function f(){for(let h of a)l&&p(h),i.allErrors?m(h):(t.var(u,!0),m(h),t.if(u))}function p(h){for(let _ in l)new RegExp(h).test(_)&&(0,Ih.checkStrictMode)(i,`property ${_} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){t.forIn("key",n,_=>{t.if((0,Xo._)`${(0,zh.usePattern)(e,h)}.test(${_})`,()=>{let w=c.includes(h);w||e.subschema({keyword:"patternProperties",schemaProp:h,dataProp:_,dataPropType:Oh.Type.Str},u),i.opts.unevaluated&&d!==!0?t.assign((0,Xo._)`${d}[${_}]`,!0):!w&&!i.allErrors&&t.if((0,Xo.not)(u),()=>t.break())})})}}};Tc.default=RS});var Nh=v(Pc=>{"use strict";Object.defineProperty(Pc,"__esModule",{value:!0});var zS=B(),IS={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if((0,zS.alwaysValidSchema)(n,r)){e.fail();return}let o=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},o),e.failResult(o,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};Pc.default=IS});var Ch=v(Rc=>{"use strict";Object.defineProperty(Rc,"__esModule",{value:!0});var OS=je(),AS={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:OS.validateUnion,error:{message:"must match a schema in anyOf"}};Rc.default=AS});var Dh=v(zc=>{"use strict";Object.defineProperty(zc,"__esModule",{value:!0});var ei=C(),NS=B(),CS={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,ei._)`{passingSchemas: ${e.passing}}`},DS={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:CS,code(e){let{gen:t,schema:r,parentSchema:n,it:o}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(o.opts.discriminator&&n.discriminator)return;let i=r,s=t.let("valid",!1),a=t.let("passing",null),c=t.name("_valid");e.setParams({passing:a}),t.block(l),e.result(s,()=>e.reset(),()=>e.error(!0));function l(){i.forEach((u,d)=>{let f;(0,NS.alwaysValidSchema)(o,u)?t.var(c,!0):f=e.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&t.if((0,ei._)`${c} && ${s}`).assign(s,!1).assign(a,(0,ei._)`[${a}, ${d}]`).else(),t.if(c,()=>{t.assign(s,!0),t.assign(a,d),f&&e.mergeEvaluated(f,ei.Name)})})}}};zc.default=DS});var jh=v(Ic=>{"use strict";Object.defineProperty(Ic,"__esModule",{value:!0});var jS=B(),MS={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");let o=t.name("valid");r.forEach((i,s)=>{if((0,jS.alwaysValidSchema)(n,i))return;let a=e.subschema({keyword:"allOf",schemaProp:s},o);e.ok(o),e.mergeEvaluated(a)})}};Ic.default=MS});var Lh=v(Oc=>{"use strict";Object.defineProperty(Oc,"__esModule",{value:!0});var ti=C(),qh=B(),qS={message:({params:e})=>(0,ti.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,ti._)`{failingKeyword: ${e.ifClause}}`},LS={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:qS,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0,qh.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=Mh(n,"then"),i=Mh(n,"else");if(!o&&!i)return;let s=t.let("valid",!0),a=t.name("_valid");if(c(),e.reset(),o&&i){let u=t.let("ifClause");e.setParams({ifClause:u}),t.if(a,l("then",u),l("else",u))}else o?t.if(a,l("then")):t.if((0,ti.not)(a),l("else"));e.pass(s,()=>e.error(!0));function c(){let u=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);e.mergeEvaluated(u)}function l(u,d){return()=>{let f=e.subschema({keyword:u},a);t.assign(s,a),e.mergeValidEvaluated(f,s),d?t.assign(d,(0,ti._)`${u}`):e.setParams({ifClause:u})}}}};function Mh(e,t){let r=e.schema[t];return r!==void 0&&!(0,qh.alwaysValidSchema)(e,r)}Oc.default=LS});var Bh=v(Ac=>{"use strict";Object.defineProperty(Ac,"__esModule",{value:!0});var BS=B(),ZS={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,BS.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};Ac.default=ZS});var Zh=v(Nc=>{"use strict";Object.defineProperty(Nc,"__esModule",{value:!0});var US=gc(),FS=_h(),VS=yc(),KS=vh(),HS=bh(),WS=$h(),GS=Eh(),JS=$c(),QS=Rh(),YS=Ah(),XS=Nh(),eE=Ch(),tE=Dh(),rE=jh(),nE=Lh(),oE=Bh();function iE(e=!1){let t=[XS.default,eE.default,tE.default,rE.default,nE.default,oE.default,GS.default,JS.default,WS.default,QS.default,YS.default];return e?t.push(FS.default,KS.default):t.push(US.default,VS.default),t.push(HS.default),t}Nc.default=iE});var Uh=v(Cc=>{"use strict";Object.defineProperty(Cc,"__esModule",{value:!0});var ie=C(),sE={message:({schemaCode:e})=>(0,ie.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,ie._)`{format: ${e}}`},aE={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:sE,code(e,t){let{gen:r,data:n,$data:o,schema:i,schemaCode:s,it:a}=e,{opts:c,errSchemaPath:l,schemaEnv:u,self:d}=a;if(!c.validateFormats)return;o?f():p();function f(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,ie._)`${m}[${s}]`),_=r.let("fType"),w=r.let("format");r.if((0,ie._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(_,(0,ie._)`${h}.type || "string"`).assign(w,(0,ie._)`${h}.validate`),()=>r.assign(_,(0,ie._)`"string"`).assign(w,h)),e.fail$data((0,ie.or)(b(),x()));function b(){return c.strictSchema===!1?ie.nil:(0,ie._)`${s} && !${w}`}function x(){let P=u.$async?(0,ie._)`(${h}.async ? await ${w}(${n}) : ${w}(${n}))`:(0,ie._)`${w}(${n})`,I=(0,ie._)`(typeof ${w} == "function" ? ${P} : ${w}.test(${n}))`;return(0,ie._)`${w} && ${w} !== true && ${_} === ${t} && !${I}`}}function p(){let m=d.formats[i];if(!m){b();return}if(m===!0)return;let[h,_,w]=x(m);h===t&&e.pass(P());function b(){if(c.strictSchema===!1){d.logger.warn(I());return}throw new Error(I());function I(){return`unknown format "${i}" ignored in schema at path "${l}"`}}function x(I){let ve=I instanceof RegExp?(0,ie.regexpCode)(I):c.code.formats?(0,ie._)`${c.code.formats}${(0,ie.getProperty)(i)}`:void 0,Oe=r.scopeValue("formats",{key:i,ref:I,code:ve});return typeof I=="object"&&!(I instanceof RegExp)?[I.type||"string",I.validate,(0,ie._)`${Oe}.validate`]:["string",I,Oe]}function P(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!u.$async)throw new Error("async format in sync schema");return(0,ie._)`await ${w}(${n})`}return typeof _=="function"?(0,ie._)`${w}(${n})`:(0,ie._)`${w}.test(${n})`}}}};Cc.default=aE});var Fh=v(Dc=>{"use strict";Object.defineProperty(Dc,"__esModule",{value:!0});var cE=Uh(),uE=[cE.default];Dc.default=uE});var Vh=v(yr=>{"use strict";Object.defineProperty(yr,"__esModule",{value:!0});yr.contentVocabulary=yr.metadataVocabulary=void 0;yr.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];yr.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Hh=v(jc=>{"use strict";Object.defineProperty(jc,"__esModule",{value:!0});var lE=eh(),dE=mh(),fE=Zh(),pE=Fh(),Kh=Vh(),mE=[lE.default,dE.default,(0,fE.default)(),pE.default,Kh.metadataVocabulary,Kh.contentVocabulary];jc.default=mE});var Gh=v(ri=>{"use strict";Object.defineProperty(ri,"__esModule",{value:!0});ri.DiscrError=void 0;var Wh;(function(e){e.Tag="tag",e.Mapping="mapping"})(Wh||(ri.DiscrError=Wh={}))});var Qh=v(qc=>{"use strict";Object.defineProperty(qc,"__esModule",{value:!0});var _r=C(),Mc=Gh(),Jh=qo(),hE=_n(),gE=B(),yE={message:({params:{discrError:e,tagName:t}})=>e===Mc.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,_r._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},_E={keyword:"discriminator",type:"object",schemaType:"object",error:yE,code(e){let{gen:t,data:r,schema:n,parentSchema:o,it:i}=e,{oneOf:s}=o;if(!i.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(!s)throw new Error("discriminator: requires oneOf keyword");let c=t.let("valid",!1),l=t.const("tag",(0,_r._)`${r}${(0,_r.getProperty)(a)}`);t.if((0,_r._)`typeof ${l} == "string"`,()=>u(),()=>e.error(!1,{discrError:Mc.DiscrError.Tag,tag:l,tagName:a})),e.ok(c);function u(){let p=f();t.if(!1);for(let m in p)t.elseIf((0,_r._)`${l} === ${m}`),t.assign(c,d(p[m]));t.else(),e.error(!1,{discrError:Mc.DiscrError.Mapping,tag:l,tagName:a}),t.endIf()}function d(p){let m=t.name("valid"),h=e.subschema({keyword:"oneOf",schemaProp:p},m);return e.mergeEvaluated(h,_r.Name),m}function f(){var p;let m={},h=w(o),_=!0;for(let P=0;P<s.length;P++){let I=s[P];if(I?.$ref&&!(0,gE.schemaHasRulesButRef)(I,i.self.RULES)){let Oe=I.$ref;if(I=Jh.resolveRef.call(i.self,i.schemaEnv.root,i.baseId,Oe),I instanceof Jh.SchemaEnv&&(I=I.schema),I===void 0)throw new hE.default(i.opts.uriResolver,i.baseId,Oe)}let ve=(p=I?.properties)===null||p===void 0?void 0:p[a];if(typeof ve!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);_=_&&(h||w(I)),b(ve,P)}if(!_)throw new Error(`discriminator: "${a}" must be required`);return m;function w({required:P}){return Array.isArray(P)&&P.includes(a)}function b(P,I){if(P.const)x(P.const,I);else if(P.enum)for(let ve of P.enum)x(ve,I);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function x(P,I){if(typeof P!="string"||P in m)throw new Error(`discriminator: "${a}" values must be unique strings`);m[P]=I}}}};qc.default=_E});var Yh=v((Tj,wE)=>{wE.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 Bc=v((ee,Lc)=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.MissingRefError=ee.ValidationError=ee.CodeGen=ee.Name=ee.nil=ee.stringify=ee.str=ee._=ee.KeywordCxt=ee.Ajv=void 0;var vE=Wm(),bE=Hh(),xE=Qh(),Xh=Yh(),kE=["/properties"],ni="http://json-schema.org/draft-07/schema",wr=class extends vE.default{_addVocabularies(){super._addVocabularies(),bE.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(xE.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(Xh,kE):Xh;this.addMetaSchema(t,ni,!1),this.refs["http://json-schema.org/schema"]=ni}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(ni)?ni:void 0)}};ee.Ajv=wr;Lc.exports=ee=wr;Lc.exports.Ajv=wr;Object.defineProperty(ee,"__esModule",{value:!0});ee.default=wr;var $E=yn();Object.defineProperty(ee,"KeywordCxt",{enumerable:!0,get:function(){return $E.KeywordCxt}});var vr=C();Object.defineProperty(ee,"_",{enumerable:!0,get:function(){return vr._}});Object.defineProperty(ee,"str",{enumerable:!0,get:function(){return vr.str}});Object.defineProperty(ee,"stringify",{enumerable:!0,get:function(){return vr.stringify}});Object.defineProperty(ee,"nil",{enumerable:!0,get:function(){return vr.nil}});Object.defineProperty(ee,"Name",{enumerable:!0,get:function(){return vr.Name}});Object.defineProperty(ee,"CodeGen",{enumerable:!0,get:function(){return vr.CodeGen}});var SE=jo();Object.defineProperty(ee,"ValidationError",{enumerable:!0,get:function(){return SE.default}});var EE=_n();Object.defineProperty(ee,"MissingRefError",{enumerable:!0,get:function(){return EE.default}})});var ag=v(nt=>{"use strict";Object.defineProperty(nt,"__esModule",{value:!0});nt.formatNames=nt.fastFormats=nt.fullFormats=void 0;function rt(e,t){return{validate:e,compare:t}}nt.fullFormats={date:rt(ng,Vc),time:rt(Uc(!0),Kc),"date-time":rt(eg(!0),ig),"iso-time":rt(Uc(),og),"iso-date-time":rt(eg(),sg),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:OE,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:qE,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:AE,int32:{type:"number",validate:DE},int64:{type:"number",validate:jE},float:{type:"number",validate:rg},double:{type:"number",validate:rg},password:!0,binary:!0};nt.fastFormats={...nt.fullFormats,date:rt(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Vc),time:rt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Kc),"date-time":rt(/^\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,ig),"iso-time":rt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,og),"iso-date-time":rt(/^\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,sg),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};nt.formatNames=Object.keys(nt.fullFormats);function TE(e){return e%4===0&&(e%100!==0||e%400===0)}var PE=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,RE=[0,31,28,31,30,31,30,31,31,30,31,30,31];function ng(e){let t=PE.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],o=+t[3];return n>=1&&n<=12&&o>=1&&o<=(n===2&&TE(r)?29:RE[n])}function Vc(e,t){if(e&&t)return e>t?1:e<t?-1:0}var Zc=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function Uc(e){return function(r){let n=Zc.exec(r);if(!n)return!1;let o=+n[1],i=+n[2],s=+n[3],a=n[4],c=n[5]==="-"?-1:1,l=+(n[6]||0),u=+(n[7]||0);if(l>23||u>59||e&&!a)return!1;if(o<=23&&i<=59&&s<60)return!0;let d=i-u*c,f=o-l*c-(d<0?1:0);return(f===23||f===-1)&&(d===59||d===-1)&&s<61}}function Kc(e,t){if(!(e&&t))return;let r=new Date("2020-01-01T"+e).valueOf(),n=new Date("2020-01-01T"+t).valueOf();if(r&&n)return r-n}function og(e,t){if(!(e&&t))return;let r=Zc.exec(e),n=Zc.exec(t);if(r&&n)return e=r[1]+r[2]+r[3],t=n[1]+n[2]+n[3],e>t?1:e<t?-1:0}var Fc=/t|\s/i;function eg(e){let t=Uc(e);return function(n){let o=n.split(Fc);return o.length===2&&ng(o[0])&&t(o[1])}}function ig(e,t){if(!(e&&t))return;let r=new Date(e).valueOf(),n=new Date(t).valueOf();if(r&&n)return r-n}function sg(e,t){if(!(e&&t))return;let[r,n]=e.split(Fc),[o,i]=t.split(Fc),s=Vc(r,o);if(s!==void 0)return s||Kc(n,i)}var zE=/\/|:/,IE=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function OE(e){return zE.test(e)&&IE.test(e)}var tg=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function AE(e){return tg.lastIndex=0,tg.test(e)}var NE=-(2**31),CE=2**31-1;function DE(e){return Number.isInteger(e)&&e<=CE&&e>=NE}function jE(e){return Number.isInteger(e)}function rg(){return!0}var ME=/[^\\]\\Z/;function qE(e){if(ME.test(e))return!1;try{return new RegExp(e),!0}catch{return!1}}});var cg=v(br=>{"use strict";Object.defineProperty(br,"__esModule",{value:!0});br.formatLimitDefinition=void 0;var LE=Bc(),He=C(),Tt=He.operators,oi={formatMaximum:{okStr:"<=",ok:Tt.LTE,fail:Tt.GT},formatMinimum:{okStr:">=",ok:Tt.GTE,fail:Tt.LT},formatExclusiveMaximum:{okStr:"<",ok:Tt.LT,fail:Tt.GTE},formatExclusiveMinimum:{okStr:">",ok:Tt.GT,fail:Tt.LTE}},BE={message:({keyword:e,schemaCode:t})=>(0,He.str)`should be ${oi[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,He._)`{comparison: ${oi[e].okStr}, limit: ${t}}`};br.formatLimitDefinition={keyword:Object.keys(oi),type:"string",schemaType:"string",$data:!0,error:BE,code(e){let{gen:t,data:r,schemaCode:n,keyword:o,it:i}=e,{opts:s,self:a}=i;if(!s.validateFormats)return;let c=new LE.KeywordCxt(i,a.RULES.all.format.definition,"format");c.$data?l():u();function l(){let f=t.scopeValue("formats",{ref:a.formats,code:s.code.formats}),p=t.const("fmt",(0,He._)`${f}[${c.schemaCode}]`);e.fail$data((0,He.or)((0,He._)`typeof ${p} != "object"`,(0,He._)`${p} instanceof RegExp`,(0,He._)`typeof ${p}.compare != "function"`,d(p)))}function u(){let f=c.schema,p=a.formats[f];if(!p||p===!0)return;if(typeof p!="object"||p instanceof RegExp||typeof p.compare!="function")throw new Error(`"${o}": format "${f}" does not define "compare" function`);let m=t.scopeValue("formats",{key:f,ref:p,code:s.code.formats?(0,He._)`${s.code.formats}${(0,He.getProperty)(f)}`:void 0});e.fail$data(d(m))}function d(f){return(0,He._)`${f}.compare(${r}, ${n}) ${oi[o].fail} 0`}},dependencies:["format"]};var ZE=e=>(e.addKeyword(br.formatLimitDefinition),e);br.default=ZE});var fg=v((On,dg)=>{"use strict";Object.defineProperty(On,"__esModule",{value:!0});var xr=ag(),UE=cg(),Hc=C(),ug=new Hc.Name("fullFormats"),FE=new Hc.Name("fastFormats"),Wc=(e,t={keywords:!0})=>{if(Array.isArray(t))return lg(e,t,xr.fullFormats,ug),e;let[r,n]=t.mode==="fast"?[xr.fastFormats,FE]:[xr.fullFormats,ug],o=t.formats||xr.formatNames;return lg(e,o,r,n),t.keywords&&(0,UE.default)(e),e};Wc.get=(e,t="full")=>{let n=(t==="fast"?xr.fastFormats:xr.fullFormats)[e];if(!n)throw new Error(`Unknown format "${e}"`);return n};function lg(e,t,r,n){var o,i;(o=(i=e.opts.code).formats)!==null&&o!==void 0||(i.formats=(0,Hc._)`require("ajv-formats/dist/formats").${n}`);for(let s of t)e.addFormat(s,r[s])}dg.exports=On=Wc;Object.defineProperty(On,"__esModule",{value:!0});On.default=Wc});var bg=v((Bj,vg)=>{vg.exports=wg;wg.sync=WE;var yg=ht("fs");function HE(e,t){var r=t.pathExt!==void 0?t.pathExt:process.env.PATHEXT;if(!r||(r=r.split(";"),r.indexOf("")!==-1))return!0;for(var n=0;n<r.length;n++){var o=r[n].toLowerCase();if(o&&e.substr(-o.length).toLowerCase()===o)return!0}return!1}function _g(e,t,r){return!e.isSymbolicLink()&&!e.isFile()?!1:HE(t,r)}function wg(e,t,r){yg.stat(e,function(n,o){r(n,n?!1:_g(o,e,t))})}function WE(e,t){return _g(yg.statSync(e),e,t)}});var Eg=v((Zj,Sg)=>{Sg.exports=kg;kg.sync=GE;var xg=ht("fs");function kg(e,t,r){xg.stat(e,function(n,o){r(n,n?!1:$g(o,t))})}function GE(e,t){return $g(xg.statSync(e),t)}function $g(e,t){return e.isFile()&&JE(e,t)}function JE(e,t){var r=e.mode,n=e.uid,o=e.gid,i=t.uid!==void 0?t.uid:process.getuid&&process.getuid(),s=t.gid!==void 0?t.gid:process.getgid&&process.getgid(),a=parseInt("100",8),c=parseInt("010",8),l=parseInt("001",8),u=a|c,d=r&l||r&c&&o===s||r&a&&n===i||r&u&&i===0;return d}});var Pg=v((Fj,Tg)=>{var Uj=ht("fs"),ui;process.platform==="win32"||global.TESTING_WINDOWS?ui=bg():ui=Eg();Tg.exports=Gc;Gc.sync=QE;function Gc(e,t,r){if(typeof t=="function"&&(r=t,t={}),!r){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(n,o){Gc(e,t||{},function(i,s){i?o(i):n(s)})})}ui(e,t||{},function(n,o){n&&(n.code==="EACCES"||t&&t.ignoreErrors)&&(n=null,o=!1),r(n,o)})}function QE(e,t){try{return ui.sync(e,t||{})}catch(r){if(t&&t.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var Cg=v((Vj,Ng)=>{var kr=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",Rg=ht("path"),YE=kr?";":":",zg=Pg(),Ig=e=>Object.assign(new Error(`not found: ${e}`),{code:"ENOENT"}),Og=(e,t)=>{let r=t.colon||YE,n=e.match(/\//)||kr&&e.match(/\\/)?[""]:[...kr?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(r)],o=kr?t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",i=kr?o.split(r):[""];return kr&&e.indexOf(".")!==-1&&i[0]!==""&&i.unshift(""),{pathEnv:n,pathExt:i,pathExtExe:o}},Ag=(e,t,r)=>{typeof t=="function"&&(r=t,t={}),t||(t={});let{pathEnv:n,pathExt:o,pathExtExe:i}=Og(e,t),s=[],a=l=>new Promise((u,d)=>{if(l===n.length)return t.all&&s.length?u(s):d(Ig(e));let f=n[l],p=/^".*"$/.test(f)?f.slice(1,-1):f,m=Rg.join(p,e),h=!p&&/^\.[\\\/]/.test(e)?e.slice(0,2)+m:m;u(c(h,l,0))}),c=(l,u,d)=>new Promise((f,p)=>{if(d===o.length)return f(a(u+1));let m=o[d];zg(l+m,{pathExt:i},(h,_)=>{if(!h&&_)if(t.all)s.push(l+m);else return f(l+m);return f(c(l,u,d+1))})});return r?a(0).then(l=>r(null,l),r):a(0)},XE=(e,t)=>{t=t||{};let{pathEnv:r,pathExt:n,pathExtExe:o}=Og(e,t),i=[];for(let s=0;s<r.length;s++){let a=r[s],c=/^".*"$/.test(a)?a.slice(1,-1):a,l=Rg.join(c,e),u=!c&&/^\.[\\\/]/.test(e)?e.slice(0,2)+l:l;for(let d=0;d<n.length;d++){let f=u+n[d];try{if(zg.sync(f,{pathExt:o}))if(t.all)i.push(f);else return f}catch{}}}if(t.all&&i.length)return i;if(t.nothrow)return null;throw Ig(e)};Ng.exports=Ag;Ag.sync=XE});var jg=v((Kj,Jc)=>{"use strict";var Dg=(e={})=>{let t=e.env||process.env;return(e.platform||process.platform)!=="win32"?"PATH":Object.keys(t).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"};Jc.exports=Dg;Jc.exports.default=Dg});var Bg=v((Hj,Lg)=>{"use strict";var Mg=ht("path"),eT=Cg(),tT=jg();function qg(e,t){let r=e.options.env||process.env,n=process.cwd(),o=e.options.cwd!=null,i=o&&process.chdir!==void 0&&!process.chdir.disabled;if(i)try{process.chdir(e.options.cwd)}catch{}let s;try{s=eT.sync(e.command,{path:r[tT({env:r})],pathExt:t?Mg.delimiter:void 0})}catch{}finally{i&&process.chdir(n)}return s&&(s=Mg.resolve(o?e.options.cwd:"",s)),s}function rT(e){return qg(e)||qg(e,!0)}Lg.exports=rT});var Zg=v((Wj,Yc)=>{"use strict";var Qc=/([()\][%!^"`<>&|;, *?])/g;function nT(e){return e=e.replace(Qc,"^$1"),e}function oT(e,t){return e=`${e}`,e=e.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),e=e.replace(/(?=(\\+?)?)\1$/,"$1$1"),e=`"${e}"`,e=e.replace(Qc,"^$1"),t&&(e=e.replace(Qc,"^$1")),e}Yc.exports.command=nT;Yc.exports.argument=oT});var Fg=v((Gj,Ug)=>{"use strict";Ug.exports=/^#!(.*)/});var Kg=v((Jj,Vg)=>{"use strict";var iT=Fg();Vg.exports=(e="")=>{let t=e.match(iT);if(!t)return null;let[r,n]=t[0].replace(/#! ?/,"").split(" "),o=r.split("/").pop();return o==="env"?n:n?`${o} ${n}`:o}});var Wg=v((Qj,Hg)=>{"use strict";var Xc=ht("fs"),sT=Kg();function aT(e){let r=Buffer.alloc(150),n;try{n=Xc.openSync(e,"r"),Xc.readSync(n,r,0,150,0),Xc.closeSync(n)}catch{}return sT(r.toString())}Hg.exports=aT});var Yg=v((Yj,Qg)=>{"use strict";var cT=ht("path"),Gg=Bg(),Jg=Zg(),uT=Wg(),lT=process.platform==="win32",dT=/\.(?:com|exe)$/i,fT=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function pT(e){e.file=Gg(e);let t=e.file&&uT(e.file);return t?(e.args.unshift(e.file),e.command=t,Gg(e)):e.file}function mT(e){if(!lT)return e;let t=pT(e),r=!dT.test(t);if(e.options.forceShell||r){let n=fT.test(t);e.command=cT.normalize(e.command),e.command=Jg.command(e.command),e.args=e.args.map(i=>Jg.argument(i,n));let o=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${o}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e}function hT(e,t,r){t&&!Array.isArray(t)&&(r=t,t=null),t=t?t.slice(0):[],r=Object.assign({},r);let n={command:e,args:t,options:r,file:void 0,original:{command:e,args:t}};return r.shell?n:mT(n)}Qg.exports=hT});var ty=v((Xj,ey)=>{"use strict";var eu=process.platform==="win32";function tu(e,t){return Object.assign(new Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function gT(e,t){if(!eu)return;let r=e.emit;e.emit=function(n,o){if(n==="exit"){let i=Xg(o,t);if(i)return r.call(e,"error",i)}return r.apply(e,arguments)}}function Xg(e,t){return eu&&e===1&&!t.file?tu(t.original,"spawn"):null}function yT(e,t){return eu&&e===1&&!t.file?tu(t.original,"spawnSync"):null}ey.exports={hookChildProcess:gT,verifyENOENT:Xg,verifyENOENTSync:yT,notFoundError:tu}});var oy=v((eM,$r)=>{"use strict";var ry=ht("child_process"),ru=Yg(),nu=ty();function ny(e,t,r){let n=ru(e,t,r),o=ry.spawn(n.command,n.args,n.options);return nu.hookChildProcess(o,n),o}function _T(e,t,r){let n=ru(e,t,r),o=ry.spawnSync(n.command,n.args,n.options);return o.error=o.error||nu.verifyENOENTSync(o.status,n),o}$r.exports=ny;$r.exports.spawn=ny;$r.exports.sync=_T;$r.exports._parse=ru;$r.exports._enoent=nu});import{readFile as _I,mkdir as wI,writeFile as vI}from"node:fs/promises";import{dirname as bI,join as N_}from"node:path";var LI=Object.freeze({status:"aborted"});function y(e,t,r){function n(a,c){var l;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(l=a._zod).traits??(l.traits=new Set),a._zod.traits.add(e),t(a,c);for(let u in s.prototype)u in a||Object.defineProperty(a,u,{value:s.prototype[u].bind(a)});a._zod.constr=s,a._zod.def=c}let o=r?.Parent??Object;class i extends o{}Object.defineProperty(i,"name",{value:e});function s(a){var c;let l=r?.Parent?new i:this;n(l,a),(c=l._zod).deferred??(c.deferred=[]);for(let u of l._zod.deferred)u();return l}return Object.defineProperty(s,"init",{value:n}),Object.defineProperty(s,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(e)}),Object.defineProperty(s,"name",{value:e}),s}var BI=Symbol("zod_brand"),st=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Wn={};function Ae(e){return e&&Object.assign(Wn,e),Wn}var F={};Qu(F,{BIGINT_FORMAT_RANGES:()=>Xu,Class:()=>qi,NUMBER_FORMAT_RANGES:()=>Hi,aborted:()=>At,allowsEval:()=>Fi,assert:()=>K_,assertEqual:()=>Z_,assertIs:()=>F_,assertNever:()=>V_,assertNotEqual:()=>U_,assignProp:()=>Ui,cached:()=>Dr,captureStackTrace:()=>Jn,cleanEnum:()=>iw,cleanRegex:()=>Mr,clone:()=>Qe,createTransparentProxy:()=>Y_,defineLazy:()=>W,esc:()=>Ot,escapeRegex:()=>gt,extend:()=>tw,finalizeIssue:()=>Be,floatSafeRemainder:()=>Zi,getElementAtPath:()=>H_,getEnumValues:()=>Li,getLengthableOrigin:()=>qr,getParsedType:()=>Q_,getSizableOrigin:()=>el,isObject:()=>Xt,isPlainObject:()=>er,issue:()=>Wi,joinValues:()=>Gn,jsonStringifyReplacer:()=>Bi,merge:()=>rw,normalizeParams:()=>R,nullish:()=>jr,numKeys:()=>J_,omit:()=>ew,optionalKeys:()=>Ki,partial:()=>nw,pick:()=>X_,prefixIssues:()=>Ye,primitiveTypes:()=>Yu,promiseAllObject:()=>W_,propertyKeyTypes:()=>Vi,randomString:()=>G_,required:()=>ow,stringifyPrimitive:()=>Qn,unwrapMessage:()=>Cr});function Z_(e){return e}function U_(e){return e}function F_(e){}function V_(e){throw new Error}function K_(e){}function Li(e){let t=Object.values(e).filter(n=>typeof n=="number");return Object.entries(e).filter(([n,o])=>t.indexOf(+n)===-1).map(([n,o])=>o)}function Gn(e,t="|"){return e.map(r=>Qn(r)).join(t)}function Bi(e,t){return typeof t=="bigint"?t.toString():t}function Dr(e){return{get value(){{let r=e();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function jr(e){return e==null}function Mr(e){let t=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}function Zi(e,t){let r=(e.toString().split(".")[1]||"").length,n=(t.toString().split(".")[1]||"").length,o=r>n?r:n,i=Number.parseInt(e.toFixed(o).replace(".","")),s=Number.parseInt(t.toFixed(o).replace(".",""));return i%s/10**o}function W(e,t,r){Object.defineProperty(e,t,{get(){{let o=r();return e[t]=o,o}throw new Error("cached value already set")},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function Ui(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}function H_(e,t){return t?t.reduce((r,n)=>r?.[n],e):e}function W_(e){let t=Object.keys(e),r=t.map(n=>e[n]);return Promise.all(r).then(n=>{let o={};for(let i=0;i<t.length;i++)o[t[i]]=n[i];return o})}function G_(e=10){let t="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<e;n++)r+=t[Math.floor(Math.random()*t.length)];return r}function Ot(e){return JSON.stringify(e)}var Jn=Error.captureStackTrace?Error.captureStackTrace:(...e)=>{};function Xt(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var Fi=Dr(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let e=Function;return new e(""),!0}catch{return!1}});function er(e){if(Xt(e)===!1)return!1;let t=e.constructor;if(t===void 0)return!0;let r=t.prototype;return!(Xt(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function J_(e){let t=0;for(let r in e)Object.prototype.hasOwnProperty.call(e,r)&&t++;return t}var Q_=e=>{let t=typeof e;switch(t){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(e)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(e)?"array":e===null?"null":e.then&&typeof e.then=="function"&&e.catch&&typeof e.catch=="function"?"promise":typeof Map<"u"&&e instanceof Map?"map":typeof Set<"u"&&e instanceof Set?"set":typeof Date<"u"&&e instanceof Date?"date":typeof File<"u"&&e instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${t}`)}},Vi=new Set(["string","number","symbol"]),Yu=new Set(["string","number","bigint","boolean","symbol","undefined"]);function gt(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Qe(e,t,r){let n=new e._zod.constr(t??e._zod.def);return(!t||r?.parent)&&(n._zod.parent=e),n}function R(e){let t=e;if(!t)return{};if(typeof t=="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error=="string"?{...t,error:()=>t.error}:t}function Y_(e){let t;return new Proxy({},{get(r,n,o){return t??(t=e()),Reflect.get(t,n,o)},set(r,n,o,i){return t??(t=e()),Reflect.set(t,n,o,i)},has(r,n){return t??(t=e()),Reflect.has(t,n)},deleteProperty(r,n){return t??(t=e()),Reflect.deleteProperty(t,n)},ownKeys(r){return t??(t=e()),Reflect.ownKeys(t)},getOwnPropertyDescriptor(r,n){return t??(t=e()),Reflect.getOwnPropertyDescriptor(t,n)},defineProperty(r,n,o){return t??(t=e()),Reflect.defineProperty(t,n,o)}})}function Qn(e){return typeof e=="bigint"?e.toString()+"n":typeof e=="string"?`"${e}"`:`${e}`}function Ki(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}var Hi={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]},Xu={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function X_(e,t){let r={},n=e._zod.def;for(let o in t){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);t[o]&&(r[o]=n.shape[o])}return Qe(e,{...e._zod.def,shape:r,checks:[]})}function ew(e,t){let r={...e._zod.def.shape},n=e._zod.def;for(let o in t){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);t[o]&&delete r[o]}return Qe(e,{...e._zod.def,shape:r,checks:[]})}function tw(e,t){if(!er(t))throw new Error("Invalid input to extend: expected a plain object");let r={...e._zod.def,get shape(){let n={...e._zod.def.shape,...t};return Ui(this,"shape",n),n},checks:[]};return Qe(e,r)}function rw(e,t){return Qe(e,{...e._zod.def,get shape(){let r={...e._zod.def.shape,...t._zod.def.shape};return Ui(this,"shape",r),r},catchall:t._zod.def.catchall,checks:[]})}function nw(e,t,r){let n=t._zod.def.shape,o={...n};if(r)for(let i in r){if(!(i in n))throw new Error(`Unrecognized key: "${i}"`);r[i]&&(o[i]=e?new e({type:"optional",innerType:n[i]}):n[i])}else for(let i in n)o[i]=e?new e({type:"optional",innerType:n[i]}):n[i];return Qe(t,{...t._zod.def,shape:o,checks:[]})}function ow(e,t,r){let n=t._zod.def.shape,o={...n};if(r)for(let i in r){if(!(i in o))throw new Error(`Unrecognized key: "${i}"`);r[i]&&(o[i]=new e({type:"nonoptional",innerType:n[i]}))}else for(let i in n)o[i]=new e({type:"nonoptional",innerType:n[i]});return Qe(t,{...t._zod.def,shape:o,checks:[]})}function At(e,t=0){for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue!==!0)return!0;return!1}function Ye(e,t){return t.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(e),r})}function Cr(e){return typeof e=="string"?e:e?.message}function Be(e,t,r){let n={...e,path:e.path??[]};if(!e.message){let o=Cr(e.inst?._zod.def?.error?.(e))??Cr(t?.error?.(e))??Cr(r.customError?.(e))??Cr(r.localeError?.(e))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,t?.reportInput||delete n.input,n}function el(e){return e instanceof Set?"set":e instanceof Map?"map":e instanceof File?"file":"unknown"}function qr(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function Wi(...e){let[t,r,n]=e;return typeof t=="string"?{message:t,code:"custom",input:r,inst:n}:{...t}}function iw(e){return Object.entries(e).filter(([t,r])=>Number.isNaN(Number.parseInt(t,10))).map(t=>t[1])}var qi=class{constructor(...t){}};var tl=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),Object.defineProperty(e,"message",{get(){return JSON.stringify(t,Bi,2)},enumerable:!0}),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Yn=y("$ZodError",tl),Gi=y("$ZodError",tl,{Parent:Error});function rl(e,t=r=>r.message){let r={},n=[];for(let o of e.issues)o.path.length>0?(r[o.path[0]]=r[o.path[0]]||[],r[o.path[0]].push(t(o))):n.push(t(o));return{formErrors:n,fieldErrors:r}}function nl(e,t){let r=t||function(i){return i.message},n={_errors:[]},o=i=>{for(let s of i.issues)if(s.code==="invalid_union"&&s.errors.length)s.errors.map(a=>o({issues:a}));else if(s.code==="invalid_key")o({issues:s.issues});else if(s.code==="invalid_element")o({issues:s.issues});else if(s.path.length===0)n._errors.push(r(s));else{let a=n,c=0;for(;c<s.path.length;){let l=s.path[c];c===s.path.length-1?(a[l]=a[l]||{_errors:[]},a[l]._errors.push(r(s))):a[l]=a[l]||{_errors:[]},a=a[l],c++}}};return o(e),n}var ol=e=>(t,r,n,o)=>{let i=n?Object.assign(n,{async:!1}):{async:!1},s=t._zod.run({value:r,issues:[]},i);if(s instanceof Promise)throw new st;if(s.issues.length){let a=new(o?.Err??e)(s.issues.map(c=>Be(c,i,Ae())));throw Jn(a,o?.callee),a}return s.value};var il=e=>async(t,r,n,o)=>{let i=n?Object.assign(n,{async:!0}):{async:!0},s=t._zod.run({value:r,issues:[]},i);if(s instanceof Promise&&(s=await s),s.issues.length){let a=new(o?.Err??e)(s.issues.map(c=>Be(c,i,Ae())));throw Jn(a,o?.callee),a}return s.value};var Ji=e=>(t,r,n)=>{let o=n?{...n,async:!1}:{async:!1},i=t._zod.run({value:r,issues:[]},o);if(i instanceof Promise)throw new st;return i.issues.length?{success:!1,error:new(e??Yn)(i.issues.map(s=>Be(s,o,Ae())))}:{success:!0,data:i.value}},Lr=Ji(Gi),Qi=e=>async(t,r,n)=>{let o=n?Object.assign(n,{async:!0}):{async:!0},i=t._zod.run({value:r,issues:[]},o);return i instanceof Promise&&(i=await i),i.issues.length?{success:!1,error:new e(i.issues.map(s=>Be(s,o,Ae())))}:{success:!0,data:i.value}},Xn=Qi(Gi);var sl=/^[cC][^\s-]{8,}$/,al=/^[0-9a-z]+$/,cl=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,ul=/^[0-9a-vA-V]{20}$/,ll=/^[A-Za-z0-9]{27}$/,dl=/^[a-zA-Z0-9_-]{21}$/,fl=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var pl=/^([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})$/,Yi=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$/;var ml=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var aw="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function hl(){return new RegExp(aw,"u")}var gl=/^(?:(?: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])$/,yl=/^(([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})$/,_l=/^((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])$/,wl=/^(([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])$/,vl=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Xi=/^[A-Za-z0-9_-]*$/,bl=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var xl=/^\+(?:[0-9]){6,14}[0-9]$/,kl="(?:(?:\\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(`^${kl}$`);function Sl(e){let t="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof e.precision=="number"?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function El(e){return new RegExp(`^${Sl(e)}$`)}function Tl(e){let t=Sl({precision:e.precision}),r=["Z"];e.local&&r.push(""),e.offset&&r.push("([+-]\\d{2}:\\d{2})");let n=`${t}(?:${r.join("|")})`;return new RegExp(`^${kl}T(?:${n})$`)}var Pl=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)};var Rl=/^\d+$/,zl=/^-?\d+(?:\.\d+)?/i,Il=/true|false/i,Ol=/null/i;var Al=/^[^A-Z]*$/,Nl=/^[^a-z]*$/;var me=y("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])}),Cl={number:"number",bigint:"bigint",object:"date"},ts=y("$ZodCheckLessThan",(e,t)=>{me.init(e,t);let r=Cl[typeof t.value];e._zod.onattach.push(n=>{let o=n._zod.bag,i=(t.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;t.value<i&&(t.inclusive?o.maximum=t.value:o.exclusiveMaximum=t.value)}),e._zod.check=n=>{(t.inclusive?n.value<=t.value:n.value<t.value)||n.issues.push({origin:r,code:"too_big",maximum:t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),rs=y("$ZodCheckGreaterThan",(e,t)=>{me.init(e,t);let r=Cl[typeof t.value];e._zod.onattach.push(n=>{let o=n._zod.bag,i=(t.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;t.value>i&&(t.inclusive?o.minimum=t.value:o.exclusiveMinimum=t.value)}),e._zod.check=n=>{(t.inclusive?n.value>=t.value:n.value>t.value)||n.issues.push({origin:r,code:"too_small",minimum:t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Dl=y("$ZodCheckMultipleOf",(e,t)=>{me.init(e,t),e._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=r=>{if(typeof r.value!=typeof t.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%t.value===BigInt(0):Zi(r.value,t.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:t.value,input:r.value,inst:e,continue:!t.abort})}}),jl=y("$ZodCheckNumberFormat",(e,t)=>{me.init(e,t),t.format=t.format||"float64";let r=t.format?.includes("int"),n=r?"int":"number",[o,i]=Hi[t.format];e._zod.onattach.push(s=>{let a=s._zod.bag;a.format=t.format,a.minimum=o,a.maximum=i,r&&(a.pattern=Rl)}),e._zod.check=s=>{let a=s.value;if(r){if(!Number.isInteger(a)){s.issues.push({expected:n,format:t.format,code:"invalid_type",input:a,inst:e});return}if(!Number.isSafeInteger(a)){a>0?s.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,continue:!t.abort}):s.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,continue:!t.abort});return}}a<o&&s.issues.push({origin:"number",input:a,code:"too_small",minimum:o,inclusive:!0,inst:e,continue:!t.abort}),a>i&&s.issues.push({origin:"number",input:a,code:"too_big",maximum:i,inst:e})}});var Ml=y("$ZodCheckMaxLength",(e,t)=>{var r;me.init(e,t),(r=e._zod.def).when??(r.when=n=>{let o=n.value;return!jr(o)&&o.length!==void 0}),e._zod.onattach.push(n=>{let o=n._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<o&&(n._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let o=n.value;if(o.length<=t.maximum)return;let s=qr(o);n.issues.push({origin:s,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),ql=y("$ZodCheckMinLength",(e,t)=>{var r;me.init(e,t),(r=e._zod.def).when??(r.when=n=>{let o=n.value;return!jr(o)&&o.length!==void 0}),e._zod.onattach.push(n=>{let o=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>o&&(n._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let o=n.value;if(o.length>=t.minimum)return;let s=qr(o);n.issues.push({origin:s,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Ll=y("$ZodCheckLengthEquals",(e,t)=>{var r;me.init(e,t),(r=e._zod.def).when??(r.when=n=>{let o=n.value;return!jr(o)&&o.length!==void 0}),e._zod.onattach.push(n=>{let o=n._zod.bag;o.minimum=t.length,o.maximum=t.length,o.length=t.length}),e._zod.check=n=>{let o=n.value,i=o.length;if(i===t.length)return;let s=qr(o),a=i>t.length;n.issues.push({origin:s,...a?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),Br=y("$ZodCheckStringFormat",(e,t)=>{var r,n;me.init(e,t),e._zod.onattach.push(o=>{let i=o._zod.bag;i.format=t.format,t.pattern&&(i.patterns??(i.patterns=new Set),i.patterns.add(t.pattern))}),t.pattern?(r=e._zod).check??(r.check=o=>{t.pattern.lastIndex=0,!t.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:t.format,input:o.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(n=e._zod).check??(n.check=()=>{})}),Bl=y("$ZodCheckRegex",(e,t)=>{Br.init(e,t),e._zod.check=r=>{t.pattern.lastIndex=0,!t.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Zl=y("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=Al),Br.init(e,t)}),Ul=y("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=Nl),Br.init(e,t)}),Fl=y("$ZodCheckIncludes",(e,t)=>{me.init(e,t);let r=gt(t.includes),n=new RegExp(typeof t.position=="number"?`^.{${t.position}}${r}`:r);t.pattern=n,e._zod.onattach.push(o=>{let i=o._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(n)}),e._zod.check=o=>{o.value.includes(t.includes,t.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:o.value,inst:e,continue:!t.abort})}}),Vl=y("$ZodCheckStartsWith",(e,t)=>{me.init(e,t);let r=new RegExp(`^${gt(t.prefix)}.*`);t.pattern??(t.pattern=r),e._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),Kl=y("$ZodCheckEndsWith",(e,t)=>{me.init(e,t);let r=new RegExp(`.*${gt(t.suffix)}$`);t.pattern??(t.pattern=r),e._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}});var Hl=y("$ZodCheckOverwrite",(e,t)=>{me.init(e,t),e._zod.check=r=>{r.value=t.tx(r.value)}});var eo=class{constructor(t=[]){this.content=[],this.indent=0,this&&(this.args=t)}indented(t){this.indent+=1,t(this),this.indent-=1}write(t){if(typeof t=="function"){t(this,{execution:"sync"}),t(this,{execution:"async"});return}let n=t.split(`
11
11
  `).filter(s=>s),o=Math.min(...n.map(s=>s.length-s.trimStart().length)),i=n.map(s=>s.slice(o)).map(s=>" ".repeat(this.indent*2)+s);for(let s of i)this.content.push(s)}compile(){let t=Function,r=this?.args,o=[...(this?.content??[""]).map(i=>` ${i}`)];return new t(...r,o.join(`
12
- `))}};var Gl={major:4,minor:0,patch:0};var G=y("$ZodType",(e,t)=>{var r;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Gl;let n=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&n.unshift(e);for(let o of n)for(let i of o._zod.onattach)i(e);if(n.length===0)(r=e._zod).deferred??(r.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let o=(i,s,a)=>{let c=Ot(i),l;for(let u of s){if(u._zod.def.when){if(!u._zod.def.when(i))continue}else if(c)continue;let d=i.issues.length,f=u._zod.check(i);if(f instanceof Promise&&a?.async===!1)throw new st;if(l||f instanceof Promise)l=(l??Promise.resolve()).then(async()=>{await f,i.issues.length!==d&&(c||(c=Ot(i,d)))});else{if(i.issues.length===d)continue;c||(c=Ot(i,d))}}return l?l.then(()=>i):i};e._zod.run=(i,s)=>{let a=e._zod.parse(i,s);if(a instanceof Promise){if(s.async===!1)throw new st;return a.then(c=>o(c,n,s))}return o(a,n,s)}}e["~standard"]={validate:o=>{try{let i=Lr(e,o);return i.success?{value:i.data}:{issues:i.error?.issues}}catch{return Xn(e,o).then(s=>s.success?{value:s.data}:{issues:s.error?.issues})}},vendor:"zod",version:1}}),ro=y("$ZodString",(e,t)=>{G.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Pl(e._zod.bag),e._zod.parse=(r,n)=>{if(t.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:e}),r}}),Q=y("$ZodStringFormat",(e,t)=>{Br.init(e,t),ro.init(e,t)}),id=y("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=pl),Q.init(e,t)}),sd=y("$ZodUUID",(e,t)=>{if(t.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(n===void 0)throw new Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=Yi(n))}else t.pattern??(t.pattern=Yi());Q.init(e,t)}),ad=y("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=ml),Q.init(e,t)}),cd=y("$ZodURL",(e,t)=>{Q.init(e,t),e._zod.check=r=>{try{let n=r.value,o=new URL(n),i=o.href;t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(o.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:bl.source,input:r.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:r.value,inst:e,continue:!t.abort})),!n.endsWith("/")&&i.endsWith("/")?r.value=i.slice(0,-1):r.value=i;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort})}}}),ud=y("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=hl()),Q.init(e,t)}),ld=y("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=dl),Q.init(e,t)}),dd=y("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=sl),Q.init(e,t)}),fd=y("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=al),Q.init(e,t)}),pd=y("$ZodULID",(e,t)=>{t.pattern??(t.pattern=cl),Q.init(e,t)}),md=y("$ZodXID",(e,t)=>{t.pattern??(t.pattern=ul),Q.init(e,t)}),hd=y("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=ll),Q.init(e,t)}),gd=y("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=Tl(t)),Q.init(e,t)}),yd=y("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=$l),Q.init(e,t)}),_d=y("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=El(t)),Q.init(e,t)}),wd=y("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=fl),Q.init(e,t)}),vd=y("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=gl),Q.init(e,t),e._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),bd=y("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=yl),Q.init(e,t),e._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv6"}),e._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:e,continue:!t.abort})}}}),xd=y("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=_l),Q.init(e,t)}),kd=y("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=wl),Q.init(e,t),e._zod.check=r=>{let[n,o]=r.value.split("/");try{if(!o)throw new Error;let i=Number(o);if(`${i}`!==o)throw new Error;if(i<0||i>128)throw new Error;new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:e,continue:!t.abort})}}});function $d(e){if(e==="")return!0;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}var Sd=y("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=vl),Q.init(e,t),e._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),e._zod.check=r=>{$d(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!t.abort})}});function cw(e){if(!Xi.test(e))return!1;let t=e.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=t.padEnd(Math.ceil(t.length/4)*4,"=");return $d(r)}var Ed=y("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Xi),Q.init(e,t),e._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),e._zod.check=r=>{cw(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:e,continue:!t.abort})}}),Td=y("$ZodE164",(e,t)=>{t.pattern??(t.pattern=xl),Q.init(e,t)});function uw(e,t=null){try{let r=e.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||t&&(!("alg"in o)||o.alg!==t))}catch{return!1}}var Pd=y("$ZodJWT",(e,t)=>{Q.init(e,t),e._zod.check=r=>{uw(r.value,t.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:e,continue:!t.abort})}});var os=y("$ZodNumber",(e,t)=>{G.init(e,t),e._zod.pattern=e._zod.bag.pattern??zl,e._zod.parse=(r,n)=>{if(t.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 i=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:e,...i?{received:i}:{}}),r}}),Rd=y("$ZodNumber",(e,t)=>{jl.init(e,t),os.init(e,t)}),zd=y("$ZodBoolean",(e,t)=>{G.init(e,t),e._zod.pattern=Il,e._zod.parse=(r,n)=>{if(t.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:e}),r}});var Id=y("$ZodNull",(e,t)=>{G.init(e,t),e._zod.pattern=Ol,e._zod.values=new Set([null]),e._zod.parse=(r,n)=>{let o=r.value;return o===null||r.issues.push({expected:"null",code:"invalid_type",input:o,inst:e}),r}});var Od=y("$ZodUnknown",(e,t)=>{G.init(e,t),e._zod.parse=r=>r}),Ad=y("$ZodNever",(e,t)=>{G.init(e,t),e._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:e}),r)});function Jl(e,t,r){e.issues.length&&t.issues.push(...Ye(r,e.issues)),t.value[r]=e.value}var Nd=y("$ZodArray",(e,t)=>{G.init(e,t),e._zod.parse=(r,n)=>{let o=r.value;if(!Array.isArray(o))return r.issues.push({expected:"array",code:"invalid_type",input:o,inst:e}),r;r.value=Array(o.length);let i=[];for(let s=0;s<o.length;s++){let a=o[s],c=t.element._zod.run({value:a,issues:[]},n);c instanceof Promise?i.push(c.then(l=>Jl(l,r,s))):Jl(c,r,s)}return i.length?Promise.all(i).then(()=>r):r}});function to(e,t,r){e.issues.length&&t.issues.push(...Ye(r,e.issues)),t.value[r]=e.value}function Ql(e,t,r,n){e.issues.length?n[r]===void 0?r in n?t.value[r]=void 0:t.value[r]=e.value:t.issues.push(...Ye(r,e.issues)):e.value===void 0?r in n&&(t.value[r]=void 0):t.value[r]=e.value}var Cd=y("$ZodObject",(e,t)=>{G.init(e,t);let r=Dr(()=>{let d=Object.keys(t.shape);for(let p of d)if(!(t.shape[p]instanceof G))throw new Error(`Invalid element at key "${p}": expected a Zod schema`);let f=Ki(t.shape);return{shape:t.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(f)}});W(e._zod,"propValues",()=>{let d=t.shape,f={};for(let p in d){let m=d[p]._zod;if(m.values){f[p]??(f[p]=new Set);for(let h of m.values)f[p].add(h)}}return f});let n=d=>{let f=new eo(["shape","payload","ctx"]),p=r.value,m=b=>{let x=It(b);return`shape[${x}]._zod.run({ value: input[${x}], issues: [] }, ctx)`};f.write("const input = payload.value;");let h=Object.create(null),_=0;for(let b of p.keys)h[b]=`key_${_++}`;f.write("const newResult = {}");for(let b of p.keys)if(p.optionalKeys.has(b)){let x=h[b];f.write(`const ${x} = ${m(b)};`);let P=It(b);f.write(`
12
+ `))}};var Gl={major:4,minor:0,patch:0};var G=y("$ZodType",(e,t)=>{var r;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Gl;let n=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&n.unshift(e);for(let o of n)for(let i of o._zod.onattach)i(e);if(n.length===0)(r=e._zod).deferred??(r.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let o=(i,s,a)=>{let c=At(i),l;for(let u of s){if(u._zod.def.when){if(!u._zod.def.when(i))continue}else if(c)continue;let d=i.issues.length,f=u._zod.check(i);if(f instanceof Promise&&a?.async===!1)throw new st;if(l||f instanceof Promise)l=(l??Promise.resolve()).then(async()=>{await f,i.issues.length!==d&&(c||(c=At(i,d)))});else{if(i.issues.length===d)continue;c||(c=At(i,d))}}return l?l.then(()=>i):i};e._zod.run=(i,s)=>{let a=e._zod.parse(i,s);if(a instanceof Promise){if(s.async===!1)throw new st;return a.then(c=>o(c,n,s))}return o(a,n,s)}}e["~standard"]={validate:o=>{try{let i=Lr(e,o);return i.success?{value:i.data}:{issues:i.error?.issues}}catch{return Xn(e,o).then(s=>s.success?{value:s.data}:{issues:s.error?.issues})}},vendor:"zod",version:1}}),ro=y("$ZodString",(e,t)=>{G.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Pl(e._zod.bag),e._zod.parse=(r,n)=>{if(t.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:e}),r}}),Q=y("$ZodStringFormat",(e,t)=>{Br.init(e,t),ro.init(e,t)}),id=y("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=pl),Q.init(e,t)}),sd=y("$ZodUUID",(e,t)=>{if(t.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(n===void 0)throw new Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=Yi(n))}else t.pattern??(t.pattern=Yi());Q.init(e,t)}),ad=y("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=ml),Q.init(e,t)}),cd=y("$ZodURL",(e,t)=>{Q.init(e,t),e._zod.check=r=>{try{let n=r.value,o=new URL(n),i=o.href;t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(o.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:bl.source,input:r.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:r.value,inst:e,continue:!t.abort})),!n.endsWith("/")&&i.endsWith("/")?r.value=i.slice(0,-1):r.value=i;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort})}}}),ud=y("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=hl()),Q.init(e,t)}),ld=y("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=dl),Q.init(e,t)}),dd=y("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=sl),Q.init(e,t)}),fd=y("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=al),Q.init(e,t)}),pd=y("$ZodULID",(e,t)=>{t.pattern??(t.pattern=cl),Q.init(e,t)}),md=y("$ZodXID",(e,t)=>{t.pattern??(t.pattern=ul),Q.init(e,t)}),hd=y("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=ll),Q.init(e,t)}),gd=y("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=Tl(t)),Q.init(e,t)}),yd=y("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=$l),Q.init(e,t)}),_d=y("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=El(t)),Q.init(e,t)}),wd=y("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=fl),Q.init(e,t)}),vd=y("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=gl),Q.init(e,t),e._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),bd=y("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=yl),Q.init(e,t),e._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv6"}),e._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:e,continue:!t.abort})}}}),xd=y("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=_l),Q.init(e,t)}),kd=y("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=wl),Q.init(e,t),e._zod.check=r=>{let[n,o]=r.value.split("/");try{if(!o)throw new Error;let i=Number(o);if(`${i}`!==o)throw new Error;if(i<0||i>128)throw new Error;new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:e,continue:!t.abort})}}});function $d(e){if(e==="")return!0;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}var Sd=y("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=vl),Q.init(e,t),e._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),e._zod.check=r=>{$d(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!t.abort})}});function cw(e){if(!Xi.test(e))return!1;let t=e.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=t.padEnd(Math.ceil(t.length/4)*4,"=");return $d(r)}var Ed=y("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Xi),Q.init(e,t),e._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),e._zod.check=r=>{cw(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:e,continue:!t.abort})}}),Td=y("$ZodE164",(e,t)=>{t.pattern??(t.pattern=xl),Q.init(e,t)});function uw(e,t=null){try{let r=e.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||t&&(!("alg"in o)||o.alg!==t))}catch{return!1}}var Pd=y("$ZodJWT",(e,t)=>{Q.init(e,t),e._zod.check=r=>{uw(r.value,t.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:e,continue:!t.abort})}});var os=y("$ZodNumber",(e,t)=>{G.init(e,t),e._zod.pattern=e._zod.bag.pattern??zl,e._zod.parse=(r,n)=>{if(t.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 i=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:e,...i?{received:i}:{}}),r}}),Rd=y("$ZodNumber",(e,t)=>{jl.init(e,t),os.init(e,t)}),zd=y("$ZodBoolean",(e,t)=>{G.init(e,t),e._zod.pattern=Il,e._zod.parse=(r,n)=>{if(t.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:e}),r}});var Id=y("$ZodNull",(e,t)=>{G.init(e,t),e._zod.pattern=Ol,e._zod.values=new Set([null]),e._zod.parse=(r,n)=>{let o=r.value;return o===null||r.issues.push({expected:"null",code:"invalid_type",input:o,inst:e}),r}});var Od=y("$ZodUnknown",(e,t)=>{G.init(e,t),e._zod.parse=r=>r}),Ad=y("$ZodNever",(e,t)=>{G.init(e,t),e._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:e}),r)});function Jl(e,t,r){e.issues.length&&t.issues.push(...Ye(r,e.issues)),t.value[r]=e.value}var Nd=y("$ZodArray",(e,t)=>{G.init(e,t),e._zod.parse=(r,n)=>{let o=r.value;if(!Array.isArray(o))return r.issues.push({expected:"array",code:"invalid_type",input:o,inst:e}),r;r.value=Array(o.length);let i=[];for(let s=0;s<o.length;s++){let a=o[s],c=t.element._zod.run({value:a,issues:[]},n);c instanceof Promise?i.push(c.then(l=>Jl(l,r,s))):Jl(c,r,s)}return i.length?Promise.all(i).then(()=>r):r}});function to(e,t,r){e.issues.length&&t.issues.push(...Ye(r,e.issues)),t.value[r]=e.value}function Ql(e,t,r,n){e.issues.length?n[r]===void 0?r in n?t.value[r]=void 0:t.value[r]=e.value:t.issues.push(...Ye(r,e.issues)):e.value===void 0?r in n&&(t.value[r]=void 0):t.value[r]=e.value}var Cd=y("$ZodObject",(e,t)=>{G.init(e,t);let r=Dr(()=>{let d=Object.keys(t.shape);for(let p of d)if(!(t.shape[p]instanceof G))throw new Error(`Invalid element at key "${p}": expected a Zod schema`);let f=Ki(t.shape);return{shape:t.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(f)}});W(e._zod,"propValues",()=>{let d=t.shape,f={};for(let p in d){let m=d[p]._zod;if(m.values){f[p]??(f[p]=new Set);for(let h of m.values)f[p].add(h)}}return f});let n=d=>{let f=new eo(["shape","payload","ctx"]),p=r.value,m=b=>{let x=Ot(b);return`shape[${x}]._zod.run({ value: input[${x}], issues: [] }, ctx)`};f.write("const input = payload.value;");let h=Object.create(null),_=0;for(let b of p.keys)h[b]=`key_${_++}`;f.write("const newResult = {}");for(let b of p.keys)if(p.optionalKeys.has(b)){let x=h[b];f.write(`const ${x} = ${m(b)};`);let P=Ot(b);f.write(`
13
13
  if (${x}.issues.length) {
14
14
  if (input[${P}] === undefined) {
15
15
  if (${P} in input) {
@@ -31,34 +31,34 @@ var D_=Object.create;var Di=Object.defineProperty;var j_=Object.getOwnPropertyDe
31
31
  `)}else{let x=h[b];f.write(`const ${x} = ${m(b)};`),f.write(`
32
32
  if (${x}.issues.length) payload.issues = payload.issues.concat(${x}.issues.map(iss => ({
33
33
  ...iss,
34
- path: iss.path ? [${It(b)}, ...iss.path] : [${It(b)}]
35
- })));`),f.write(`newResult[${It(b)}] = ${x}.value`)}f.write("payload.value = newResult;"),f.write("return payload;");let w=f.compile();return(b,x)=>w(d,b,x)},o,i=Xt,s=!Wn.jitless,c=s&&Fi.value,l=t.catchall,u;e._zod.parse=(d,f)=>{u??(u=r.value);let p=d.value;if(!i(p))return d.issues.push({expected:"object",code:"invalid_type",input:p,inst:e}),d;let m=[];if(s&&c&&f?.async===!1&&f.jitless!==!0)o||(o=n(t.shape)),d=o(d,f);else{d.value={};let x=u.shape;for(let P of u.keys){let I=x[P],ve=I._zod.run({value:p[P],issues:[]},f),Oe=I._zod.optin==="optional"&&I._zod.optout==="optional";ve instanceof Promise?m.push(ve.then(Yt=>Oe?Ql(Yt,d,P,p):to(Yt,d,P))):Oe?Ql(ve,d,P,p):to(ve,d,P)}}if(!l)return m.length?Promise.all(m).then(()=>d):d;let h=[],_=u.keySet,w=l._zod,b=w.def.type;for(let x of Object.keys(p)){if(_.has(x))continue;if(b==="never"){h.push(x);continue}let P=w.run({value:p[x],issues:[]},f);P instanceof Promise?m.push(P.then(I=>to(I,d,x))):to(P,d,x)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:p,inst:e}),m.length?Promise.all(m).then(()=>d):d}});function Yl(e,t,r,n){for(let o of e)if(o.issues.length===0)return t.value=o.value,t;return t.issues.push({code:"invalid_union",input:t.value,inst:r,errors:e.map(o=>o.issues.map(i=>Be(i,n,Ae())))}),t}var is=y("$ZodUnion",(e,t)=>{G.init(e,t),W(e._zod,"optin",()=>t.options.some(r=>r._zod.optin==="optional")?"optional":void 0),W(e._zod,"optout",()=>t.options.some(r=>r._zod.optout==="optional")?"optional":void 0),W(e._zod,"values",()=>{if(t.options.every(r=>r._zod.values))return new Set(t.options.flatMap(r=>Array.from(r._zod.values)))}),W(e._zod,"pattern",()=>{if(t.options.every(r=>r._zod.pattern)){let r=t.options.map(n=>n._zod.pattern);return new RegExp(`^(${r.map(n=>Mr(n.source)).join("|")})$`)}}),e._zod.parse=(r,n)=>{let o=!1,i=[];for(let s of t.options){let a=s._zod.run({value:r.value,issues:[]},n);if(a instanceof Promise)i.push(a),o=!0;else{if(a.issues.length===0)return a;i.push(a)}}return o?Promise.all(i).then(s=>Yl(s,r,e,n)):Yl(i,r,e,n)}}),Dd=y("$ZodDiscriminatedUnion",(e,t)=>{is.init(e,t);let r=e._zod.parse;W(e._zod,"propValues",()=>{let o={};for(let i of t.options){let s=i._zod.propValues;if(!s||Object.keys(s).length===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(i)}"`);for(let[a,c]of Object.entries(s)){o[a]||(o[a]=new Set);for(let l of c)o[a].add(l)}}return o});let n=Dr(()=>{let o=t.options,i=new Map;for(let s of o){let a=s._zod.propValues[t.discriminator];if(!a||a.size===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(s)}"`);for(let c of a){if(i.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);i.set(c,s)}}return i});e._zod.parse=(o,i)=>{let s=o.value;if(!Xt(s))return o.issues.push({code:"invalid_type",expected:"object",input:s,inst:e}),o;let a=n.value.get(s?.[t.discriminator]);return a?a._zod.run(o,i):t.unionFallback?r(o,i):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:s,path:[t.discriminator],inst:e}),o)}}),jd=y("$ZodIntersection",(e,t)=>{G.init(e,t),e._zod.parse=(r,n)=>{let o=r.value,i=t.left._zod.run({value:o,issues:[]},n),s=t.right._zod.run({value:o,issues:[]},n);return i instanceof Promise||s instanceof Promise?Promise.all([i,s]).then(([c,l])=>Xl(r,c,l)):Xl(r,i,s)}});function ns(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(er(e)&&er(t)){let r=Object.keys(t),n=Object.keys(e).filter(i=>r.indexOf(i)!==-1),o={...e,...t};for(let i of n){let s=ns(e[i],t[i]);if(!s.valid)return{valid:!1,mergeErrorPath:[i,...s.mergeErrorPath]};o[i]=s.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n<e.length;n++){let o=e[n],i=t[n],s=ns(o,i);if(!s.valid)return{valid:!1,mergeErrorPath:[n,...s.mergeErrorPath]};r.push(s.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function Xl(e,t,r){if(t.issues.length&&e.issues.push(...t.issues),r.issues.length&&e.issues.push(...r.issues),Ot(e))return e;let n=ns(t.value,r.value);if(!n.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(n.mergeErrorPath)}`);return e.value=n.data,e}var Md=y("$ZodRecord",(e,t)=>{G.init(e,t),e._zod.parse=(r,n)=>{let o=r.value;if(!er(o))return r.issues.push({expected:"record",code:"invalid_type",input:o,inst:e}),r;let i=[];if(t.keyType._zod.values){let s=t.keyType._zod.values;r.value={};for(let c of s)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){let l=t.valueType._zod.run({value:o[c],issues:[]},n);l instanceof Promise?i.push(l.then(u=>{u.issues.length&&r.issues.push(...Ye(c,u.issues)),r.value[c]=u.value})):(l.issues.length&&r.issues.push(...Ye(c,l.issues)),r.value[c]=l.value)}let a;for(let c in o)s.has(c)||(a=a??[],a.push(c));a&&a.length>0&&r.issues.push({code:"unrecognized_keys",input:o,inst:e,keys:a})}else{r.value={};for(let s of Reflect.ownKeys(o)){if(s==="__proto__")continue;let a=t.keyType._zod.run({value:s,issues:[]},n);if(a instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(a.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:a.issues.map(l=>Be(l,n,Ae())),input:s,path:[s],inst:e}),r.value[a.value]=a.value;continue}let c=t.valueType._zod.run({value:o[s],issues:[]},n);c instanceof Promise?i.push(c.then(l=>{l.issues.length&&r.issues.push(...Ye(s,l.issues)),r.value[a.value]=l.value})):(c.issues.length&&r.issues.push(...Ye(s,c.issues)),r.value[a.value]=c.value)}}return i.length?Promise.all(i).then(()=>r):r}});var qd=y("$ZodEnum",(e,t)=>{G.init(e,t);let r=Li(t.entries);e._zod.values=new Set(r),e._zod.pattern=new RegExp(`^(${r.filter(n=>Vi.has(typeof n)).map(n=>typeof n=="string"?mt(n):n.toString()).join("|")})$`),e._zod.parse=(n,o)=>{let i=n.value;return e._zod.values.has(i)||n.issues.push({code:"invalid_value",values:r,input:i,inst:e}),n}}),Ld=y("$ZodLiteral",(e,t)=>{G.init(e,t),e._zod.values=new Set(t.values),e._zod.pattern=new RegExp(`^(${t.values.map(r=>typeof r=="string"?mt(r):r?r.toString():String(r)).join("|")})$`),e._zod.parse=(r,n)=>{let o=r.value;return e._zod.values.has(o)||r.issues.push({code:"invalid_value",values:t.values,input:o,inst:e}),r}});var Bd=y("$ZodTransform",(e,t)=>{G.init(e,t),e._zod.parse=(r,n)=>{let o=t.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then(s=>(r.value=s,r));if(o instanceof Promise)throw new st;return r.value=o,r}}),Zd=y("$ZodOptional",(e,t)=>{G.init(e,t),e._zod.optin="optional",e._zod.optout="optional",W(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),W(e._zod,"pattern",()=>{let r=t.innerType._zod.pattern;return r?new RegExp(`^(${Mr(r.source)})?$`):void 0}),e._zod.parse=(r,n)=>t.innerType._zod.optin==="optional"?t.innerType._zod.run(r,n):r.value===void 0?r:t.innerType._zod.run(r,n)}),Ud=y("$ZodNullable",(e,t)=>{G.init(e,t),W(e._zod,"optin",()=>t.innerType._zod.optin),W(e._zod,"optout",()=>t.innerType._zod.optout),W(e._zod,"pattern",()=>{let r=t.innerType._zod.pattern;return r?new RegExp(`^(${Mr(r.source)}|null)$`):void 0}),W(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(r,n)=>r.value===null?r:t.innerType._zod.run(r,n)}),Fd=y("$ZodDefault",(e,t)=>{G.init(e,t),e._zod.optin="optional",W(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=t.defaultValue,r;let o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(i=>ed(i,t)):ed(o,t)}});function ed(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var Vd=y("$ZodPrefault",(e,t)=>{G.init(e,t),e._zod.optin="optional",W(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>(r.value===void 0&&(r.value=t.defaultValue),t.innerType._zod.run(r,n))}),Kd=y("$ZodNonOptional",(e,t)=>{G.init(e,t),W(e._zod,"values",()=>{let r=t.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),e._zod.parse=(r,n)=>{let o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(i=>td(i,e)):td(o,e)}});function td(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}var Hd=y("$ZodCatch",(e,t)=>{G.init(e,t),e._zod.optin="optional",W(e._zod,"optout",()=>t.innerType._zod.optout),W(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{let o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(i=>(r.value=i.value,i.issues.length&&(r.value=t.catchValue({...r,error:{issues:i.issues.map(s=>Be(s,n,Ae()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=t.catchValue({...r,error:{issues:o.issues.map(i=>Be(i,n,Ae()))},input:r.value}),r.issues=[]),r)}});var Wd=y("$ZodPipe",(e,t)=>{G.init(e,t),W(e._zod,"values",()=>t.in._zod.values),W(e._zod,"optin",()=>t.in._zod.optin),W(e._zod,"optout",()=>t.out._zod.optout),e._zod.parse=(r,n)=>{let o=t.in._zod.run(r,n);return o instanceof Promise?o.then(i=>rd(i,t,n)):rd(o,t,n)}});function rd(e,t,r){return Ot(e)?e:t.out._zod.run({value:e.value,issues:e.issues},r)}var Gd=y("$ZodReadonly",(e,t)=>{G.init(e,t),W(e._zod,"propValues",()=>t.innerType._zod.propValues),W(e._zod,"values",()=>t.innerType._zod.values),W(e._zod,"optin",()=>t.innerType._zod.optin),W(e._zod,"optout",()=>t.innerType._zod.optout),e._zod.parse=(r,n)=>{let o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(nd):nd(o)}});function nd(e){return e.value=Object.freeze(e.value),e}var Jd=y("$ZodCustom",(e,t)=>{me.init(e,t),G.init(e,t),e._zod.parse=(r,n)=>r,e._zod.check=r=>{let n=r.value,o=t.fn(n);if(o instanceof Promise)return o.then(i=>od(i,r,n,e));od(o,r,n,e)}});function od(e,t,r,n){if(!e){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),t.issues.push(Wi(o))}}var lw=e=>{let t=typeof e;switch(t){case"number":return Number.isNaN(e)?"NaN":"number";case"object":{if(Array.isArray(e))return"array";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return t},dw=()=>{let e={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"}};function t(n){return e[n]??null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"};return n=>{switch(n.code){case"invalid_type":return`Invalid input: expected ${n.expected}, received ${lw(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${Qn(n.values[0])}`:`Invalid option: expected one of ${Gn(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",i=t(n.origin);return i?`Too big: expected ${n.origin??"value"} to have ${o}${n.maximum.toString()} ${i.unit??"elements"}`:`Too big: expected ${n.origin??"value"} to be ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",i=t(n.origin);return i?`Too small: expected ${n.origin} to have ${o}${n.minimum.toString()} ${i.unit}`:`Too small: expected ${n.origin} to be ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Invalid string: must start with "${o.prefix}"`:o.format==="ends_with"?`Invalid string: must end with "${o.suffix}"`:o.format==="includes"?`Invalid string: must include "${o.includes}"`:o.format==="regex"?`Invalid string: must match pattern ${o.pattern}`:`Invalid ${r[o.format]??n.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${n.divisor}`;case"unrecognized_keys":return`Unrecognized key${n.keys.length>1?"s":""}: ${Gn(n.keys,", ")}`;case"invalid_key":return`Invalid key in ${n.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${n.origin}`;default:return"Invalid input"}}};function Qd(){return{localeError:dw()}}var eO=Symbol("ZodOutput"),tO=Symbol("ZodInput"),ss=class{constructor(){this._map=new Map,this._idmap=new Map}add(t,...r){let n=r[0];if(this._map.set(t,n),n&&typeof n=="object"&&"id"in n){if(this._idmap.has(n.id))throw new Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,t)}return this}clear(){return this._map=new Map,this._idmap=new Map,this}remove(t){let r=this._map.get(t);return r&&typeof r=="object"&&"id"in r&&this._idmap.delete(r.id),this._map.delete(t),this}get(t){let r=t._zod.parent;if(r){let n={...this.get(r)??{}};return delete n.id,{...n,...this._map.get(t)}}return this._map.get(t)}has(t){return this._map.has(t)}};function fw(){return new ss}var Zr=fw();function Yd(e,t){return new e({type:"string",...R(t)})}function Xd(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...R(t)})}function as(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...R(t)})}function ef(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...R(t)})}function tf(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...R(t)})}function rf(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...R(t)})}function nf(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...R(t)})}function of(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...R(t)})}function sf(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...R(t)})}function af(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...R(t)})}function cf(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...R(t)})}function uf(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...R(t)})}function lf(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...R(t)})}function df(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...R(t)})}function ff(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...R(t)})}function pf(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...R(t)})}function mf(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...R(t)})}function hf(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...R(t)})}function gf(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...R(t)})}function yf(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...R(t)})}function _f(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...R(t)})}function wf(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...R(t)})}function vf(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...R(t)})}function bf(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...R(t)})}function xf(e,t){return new e({type:"string",format:"date",check:"string_format",...R(t)})}function kf(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...R(t)})}function $f(e,t){return new e({type:"string",format:"duration",check:"string_format",...R(t)})}function Sf(e,t){return new e({type:"number",checks:[],...R(t)})}function Ef(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...R(t)})}function Tf(e,t){return new e({type:"boolean",...R(t)})}function Pf(e,t){return new e({type:"null",...R(t)})}function Rf(e){return new e({type:"unknown"})}function zf(e,t){return new e({type:"never",...R(t)})}function no(e,t){return new ts({check:"less_than",...R(t),value:e,inclusive:!1})}function Ur(e,t){return new ts({check:"less_than",...R(t),value:e,inclusive:!0})}function oo(e,t){return new rs({check:"greater_than",...R(t),value:e,inclusive:!1})}function Fr(e,t){return new rs({check:"greater_than",...R(t),value:e,inclusive:!0})}function io(e,t){return new Dl({check:"multiple_of",...R(t),value:e})}function so(e,t){return new Ml({check:"max_length",...R(t),maximum:e})}function tr(e,t){return new ql({check:"min_length",...R(t),minimum:e})}function ao(e,t){return new Ll({check:"length_equals",...R(t),length:e})}function cs(e,t){return new Bl({check:"string_format",format:"regex",...R(t),pattern:e})}function us(e){return new Zl({check:"string_format",format:"lowercase",...R(e)})}function ls(e){return new Ul({check:"string_format",format:"uppercase",...R(e)})}function ds(e,t){return new Fl({check:"string_format",format:"includes",...R(t),includes:e})}function fs(e,t){return new Vl({check:"string_format",format:"starts_with",...R(t),prefix:e})}function ps(e,t){return new Kl({check:"string_format",format:"ends_with",...R(t),suffix:e})}function At(e){return new Hl({check:"overwrite",tx:e})}function ms(e){return At(t=>t.normalize(e))}function hs(){return At(e=>e.trim())}function gs(){return At(e=>e.toLowerCase())}function ys(){return At(e=>e.toUpperCase())}function If(e,t,r){return new e({type:"array",element:t,...R(r)})}function Of(e,t,r){let n=R(r);return n.abort??(n.abort=!0),new e({type:"custom",check:"custom",fn:t,...n})}function Af(e,t,r){return new e({type:"custom",check:"custom",fn:t,...R(r)})}function rr(e){return!!e._zod}function Ze(e,t){return rr(e)?Lr(e,t):e.safeParse(t)}function co(e){if(!e)return;let t;if(rr(e)?t=e._zod?.def?.shape:t=e.shape,!!t){if(typeof t=="function")try{return t()}catch{return}return t}}function Nf(e){if(rr(e)){let i=e._zod?.def;if(i){if(i.value!==void 0)return i.value;if(Array.isArray(i.values)&&i.values.length>0)return i.values[0]}}let r=e._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=e.value;if(n!==void 0)return n}var Kr={};Qu(Kr,{ZodISODate:()=>Df,ZodISODateTime:()=>Cf,ZodISODuration:()=>Mf,ZodISOTime:()=>jf,date:()=>ws,datetime:()=>_s,duration:()=>bs,time:()=>vs});var Cf=y("ZodISODateTime",(e,t)=>{gd.init(e,t),te.init(e,t)});function _s(e){return bf(Cf,e)}var Df=y("ZodISODate",(e,t)=>{yd.init(e,t),te.init(e,t)});function ws(e){return xf(Df,e)}var jf=y("ZodISOTime",(e,t)=>{_d.init(e,t),te.init(e,t)});function vs(e){return kf(jf,e)}var Mf=y("ZodISODuration",(e,t)=>{wd.init(e,t),te.init(e,t)});function bs(e){return $f(Mf,e)}var qf=(e,t)=>{Yn.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:r=>nl(e,r)},flatten:{value:r=>rl(e,r)},addIssue:{value:r=>e.issues.push(r)},addIssues:{value:r=>e.issues.push(...r)},isEmpty:{get(){return e.issues.length===0}}})},CO=y("ZodError",qf),Hr=y("ZodError",qf,{Parent:Error});var Lf=ol(Hr),Bf=il(Hr),Zf=Ji(Hr),Uf=Qi(Hr);var oe=y("ZodType",(e,t)=>(G.init(e,t),e.def=t,Object.defineProperty(e,"_def",{value:t}),e.check=(...r)=>e.clone({...t,checks:[...t.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),e.clone=(r,n)=>Qe(e,r,n),e.brand=()=>e,e.register=(r,n)=>(r.add(e,n),e),e.parse=(r,n)=>Lf(e,r,n,{callee:e.parse}),e.safeParse=(r,n)=>Zf(e,r,n),e.parseAsync=async(r,n)=>Bf(e,r,n,{callee:e.parseAsync}),e.safeParseAsync=async(r,n)=>Uf(e,r,n),e.spa=e.safeParseAsync,e.refine=(r,n)=>e.check(uv(r,n)),e.superRefine=r=>e.check(lv(r)),e.overwrite=r=>e.check(At(r)),e.optional=()=>ne(e),e.nullable=()=>Kf(e),e.nullish=()=>ne(Kf(e)),e.nonoptional=r=>rv(e,r),e.array=()=>q(e),e.or=r=>Y([e,r]),e.and=r=>lo(e,r),e.transform=r=>ks(e,Yf(r)),e.default=r=>Xw(e,r),e.prefault=r=>tv(e,r),e.catch=r=>ov(e,r),e.pipe=r=>ks(e,r),e.readonly=()=>av(e),e.describe=r=>{let n=e.clone();return Zr.add(n,{description:r}),n},Object.defineProperty(e,"description",{get(){return Zr.get(e)?.description},configurable:!0}),e.meta=(...r)=>{if(r.length===0)return Zr.get(e);let n=e.clone();return Zr.add(n,r[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e)),Hf=y("_ZodString",(e,t)=>{ro.init(e,t),oe.init(e,t);let r=e._zod.bag;e.format=r.format??null,e.minLength=r.minimum??null,e.maxLength=r.maximum??null,e.regex=(...n)=>e.check(cs(...n)),e.includes=(...n)=>e.check(ds(...n)),e.startsWith=(...n)=>e.check(fs(...n)),e.endsWith=(...n)=>e.check(ps(...n)),e.min=(...n)=>e.check(tr(...n)),e.max=(...n)=>e.check(so(...n)),e.length=(...n)=>e.check(ao(...n)),e.nonempty=(...n)=>e.check(tr(1,...n)),e.lowercase=n=>e.check(us(n)),e.uppercase=n=>e.check(ls(n)),e.trim=()=>e.check(hs()),e.normalize=(...n)=>e.check(ms(...n)),e.toLowerCase=()=>e.check(gs()),e.toUpperCase=()=>e.check(ys())}),bw=y("ZodString",(e,t)=>{ro.init(e,t),Hf.init(e,t),e.email=r=>e.check(Xd(xw,r)),e.url=r=>e.check(of(kw,r)),e.jwt=r=>e.check(vf(Mw,r)),e.emoji=r=>e.check(sf($w,r)),e.guid=r=>e.check(as(Ff,r)),e.uuid=r=>e.check(ef(uo,r)),e.uuidv4=r=>e.check(tf(uo,r)),e.uuidv6=r=>e.check(rf(uo,r)),e.uuidv7=r=>e.check(nf(uo,r)),e.nanoid=r=>e.check(af(Sw,r)),e.guid=r=>e.check(as(Ff,r)),e.cuid=r=>e.check(cf(Ew,r)),e.cuid2=r=>e.check(uf(Tw,r)),e.ulid=r=>e.check(lf(Pw,r)),e.base64=r=>e.check(yf(Cw,r)),e.base64url=r=>e.check(_f(Dw,r)),e.xid=r=>e.check(df(Rw,r)),e.ksuid=r=>e.check(ff(zw,r)),e.ipv4=r=>e.check(pf(Iw,r)),e.ipv6=r=>e.check(mf(Ow,r)),e.cidrv4=r=>e.check(hf(Aw,r)),e.cidrv6=r=>e.check(gf(Nw,r)),e.e164=r=>e.check(wf(jw,r)),e.datetime=r=>e.check(_s(r)),e.date=r=>e.check(ws(r)),e.time=r=>e.check(vs(r)),e.duration=r=>e.check(bs(r))});function g(e){return Yd(bw,e)}var te=y("ZodStringFormat",(e,t)=>{Q.init(e,t),Hf.init(e,t)}),xw=y("ZodEmail",(e,t)=>{ad.init(e,t),te.init(e,t)});var Ff=y("ZodGUID",(e,t)=>{id.init(e,t),te.init(e,t)});var uo=y("ZodUUID",(e,t)=>{sd.init(e,t),te.init(e,t)});var kw=y("ZodURL",(e,t)=>{cd.init(e,t),te.init(e,t)});var $w=y("ZodEmoji",(e,t)=>{ud.init(e,t),te.init(e,t)});var Sw=y("ZodNanoID",(e,t)=>{ld.init(e,t),te.init(e,t)});var Ew=y("ZodCUID",(e,t)=>{dd.init(e,t),te.init(e,t)});var Tw=y("ZodCUID2",(e,t)=>{fd.init(e,t),te.init(e,t)});var Pw=y("ZodULID",(e,t)=>{pd.init(e,t),te.init(e,t)});var Rw=y("ZodXID",(e,t)=>{md.init(e,t),te.init(e,t)});var zw=y("ZodKSUID",(e,t)=>{hd.init(e,t),te.init(e,t)});var Iw=y("ZodIPv4",(e,t)=>{vd.init(e,t),te.init(e,t)});var Ow=y("ZodIPv6",(e,t)=>{bd.init(e,t),te.init(e,t)});var Aw=y("ZodCIDRv4",(e,t)=>{xd.init(e,t),te.init(e,t)});var Nw=y("ZodCIDRv6",(e,t)=>{kd.init(e,t),te.init(e,t)});var Cw=y("ZodBase64",(e,t)=>{Sd.init(e,t),te.init(e,t)});var Dw=y("ZodBase64URL",(e,t)=>{Ed.init(e,t),te.init(e,t)});var jw=y("ZodE164",(e,t)=>{Td.init(e,t),te.init(e,t)});var Mw=y("ZodJWT",(e,t)=>{Pd.init(e,t),te.init(e,t)});var Wf=y("ZodNumber",(e,t)=>{os.init(e,t),oe.init(e,t),e.gt=(n,o)=>e.check(oo(n,o)),e.gte=(n,o)=>e.check(Fr(n,o)),e.min=(n,o)=>e.check(Fr(n,o)),e.lt=(n,o)=>e.check(no(n,o)),e.lte=(n,o)=>e.check(Ur(n,o)),e.max=(n,o)=>e.check(Ur(n,o)),e.int=n=>e.check(Vf(n)),e.safe=n=>e.check(Vf(n)),e.positive=n=>e.check(oo(0,n)),e.nonnegative=n=>e.check(Fr(0,n)),e.negative=n=>e.check(no(0,n)),e.nonpositive=n=>e.check(Ur(0,n)),e.multipleOf=(n,o)=>e.check(io(n,o)),e.step=(n,o)=>e.check(io(n,o)),e.finite=()=>e;let r=e._zod.bag;e.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),e.isFinite=!0,e.format=r.format??null});function V(e){return Sf(Wf,e)}var qw=y("ZodNumberFormat",(e,t)=>{Rd.init(e,t),Wf.init(e,t)});function Vf(e){return Ef(qw,e)}var Lw=y("ZodBoolean",(e,t)=>{zd.init(e,t),oe.init(e,t)});function ce(e){return Tf(Lw,e)}var Bw=y("ZodNull",(e,t)=>{Id.init(e,t),oe.init(e,t)});function Gf(e){return Pf(Bw,e)}var Zw=y("ZodUnknown",(e,t)=>{Od.init(e,t),oe.init(e,t)});function re(){return Rf(Zw)}var Uw=y("ZodNever",(e,t)=>{Ad.init(e,t),oe.init(e,t)});function Fw(e){return zf(Uw,e)}var Vw=y("ZodArray",(e,t)=>{Nd.init(e,t),oe.init(e,t),e.element=t.element,e.min=(r,n)=>e.check(tr(r,n)),e.nonempty=r=>e.check(tr(1,r)),e.max=(r,n)=>e.check(so(r,n)),e.length=(r,n)=>e.check(ao(r,n)),e.unwrap=()=>e.element});function q(e,t){return If(Vw,e,t)}var Jf=y("ZodObject",(e,t)=>{Cd.init(e,t),oe.init(e,t),F.defineLazy(e,"shape",()=>t.shape),e.keyof=()=>Se(Object.keys(e._zod.def.shape)),e.catchall=r=>e.clone({...e._zod.def,catchall:r}),e.passthrough=()=>e.clone({...e._zod.def,catchall:re()}),e.loose=()=>e.clone({...e._zod.def,catchall:re()}),e.strict=()=>e.clone({...e._zod.def,catchall:Fw()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=r=>F.extend(e,r),e.merge=r=>F.merge(e,r),e.pick=r=>F.pick(e,r),e.omit=r=>F.omit(e,r),e.partial=(...r)=>F.partial(Xf,e,r[0]),e.required=(...r)=>F.required(ep,e,r[0])});function k(e,t){let r={type:"object",get shape(){return F.assignProp(this,"shape",{...e}),this.shape},...F.normalizeParams(t)};return new Jf(r)}function be(e,t){return new Jf({type:"object",get shape(){return F.assignProp(this,"shape",{...e}),this.shape},catchall:re(),...F.normalizeParams(t)})}var Qf=y("ZodUnion",(e,t)=>{is.init(e,t),oe.init(e,t),e.options=t.options});function Y(e,t){return new Qf({type:"union",options:e,...F.normalizeParams(t)})}var Kw=y("ZodDiscriminatedUnion",(e,t)=>{Qf.init(e,t),Dd.init(e,t)});function $s(e,t,r){return new Kw({type:"union",options:t,discriminator:e,...F.normalizeParams(r)})}var Hw=y("ZodIntersection",(e,t)=>{jd.init(e,t),oe.init(e,t)});function lo(e,t){return new Hw({type:"intersection",left:e,right:t})}var Ww=y("ZodRecord",(e,t)=>{Md.init(e,t),oe.init(e,t),e.keyType=t.keyType,e.valueType=t.valueType});function J(e,t,r){return new Ww({type:"record",keyType:e,valueType:t,...F.normalizeParams(r)})}var xs=y("ZodEnum",(e,t)=>{qd.init(e,t),oe.init(e,t),e.enum=t.entries,e.options=Object.values(t.entries);let r=new Set(Object.keys(t.entries));e.extract=(n,o)=>{let i={};for(let s of n)if(r.has(s))i[s]=t.entries[s];else throw new Error(`Key ${s} not found in enum`);return new xs({...t,checks:[],...F.normalizeParams(o),entries:i})},e.exclude=(n,o)=>{let i={...t.entries};for(let s of n)if(r.has(s))delete i[s];else throw new Error(`Key ${s} not found in enum`);return new xs({...t,checks:[],...F.normalizeParams(o),entries:i})}});function Se(e,t){let r=Array.isArray(e)?Object.fromEntries(e.map(n=>[n,n])):e;return new xs({type:"enum",entries:r,...F.normalizeParams(t)})}var Gw=y("ZodLiteral",(e,t)=>{Ld.init(e,t),oe.init(e,t),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function $(e,t){return new Gw({type:"literal",values:Array.isArray(e)?e:[e],...F.normalizeParams(t)})}var Jw=y("ZodTransform",(e,t)=>{Bd.init(e,t),oe.init(e,t),e._zod.parse=(r,n)=>{r.addIssue=i=>{if(typeof i=="string")r.issues.push(F.issue(i,r.value,t));else{let s=i;s.fatal&&(s.continue=!1),s.code??(s.code="custom"),s.input??(s.input=r.value),s.inst??(s.inst=e),s.continue??(s.continue=!0),r.issues.push(F.issue(s))}};let o=t.transform(r.value,r);return o instanceof Promise?o.then(i=>(r.value=i,r)):(r.value=o,r)}});function Yf(e){return new Jw({type:"transform",transform:e})}var Xf=y("ZodOptional",(e,t)=>{Zd.init(e,t),oe.init(e,t),e.unwrap=()=>e._zod.def.innerType});function ne(e){return new Xf({type:"optional",innerType:e})}var Qw=y("ZodNullable",(e,t)=>{Ud.init(e,t),oe.init(e,t),e.unwrap=()=>e._zod.def.innerType});function Kf(e){return new Qw({type:"nullable",innerType:e})}var Yw=y("ZodDefault",(e,t)=>{Fd.init(e,t),oe.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Xw(e,t){return new Yw({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():t}})}var ev=y("ZodPrefault",(e,t)=>{Vd.init(e,t),oe.init(e,t),e.unwrap=()=>e._zod.def.innerType});function tv(e,t){return new ev({type:"prefault",innerType:e,get defaultValue(){return typeof t=="function"?t():t}})}var ep=y("ZodNonOptional",(e,t)=>{Kd.init(e,t),oe.init(e,t),e.unwrap=()=>e._zod.def.innerType});function rv(e,t){return new ep({type:"nonoptional",innerType:e,...F.normalizeParams(t)})}var nv=y("ZodCatch",(e,t)=>{Hd.init(e,t),oe.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function ov(e,t){return new nv({type:"catch",innerType:e,catchValue:typeof t=="function"?t:()=>t})}var iv=y("ZodPipe",(e,t)=>{Wd.init(e,t),oe.init(e,t),e.in=t.in,e.out=t.out});function ks(e,t){return new iv({type:"pipe",in:e,out:t})}var sv=y("ZodReadonly",(e,t)=>{Gd.init(e,t),oe.init(e,t)});function av(e){return new sv({type:"readonly",innerType:e})}var tp=y("ZodCustom",(e,t)=>{Jd.init(e,t),oe.init(e,t)});function cv(e){let t=new me({check:"custom"});return t._zod.check=e,t}function rp(e,t){return Of(tp,e??(()=>!0),t)}function uv(e,t={}){return Af(tp,e,t)}function lv(e){let t=cv(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(F.issue(n,r.value,t._zod.def));else{let o=n;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=r.value),o.inst??(o.inst=t),o.continue??(o.continue=!t._zod.def.abort),r.issues.push(F.issue(o))}},e(r.value,r)));return t}function Ss(e,t){return ks(Yf(e),t)}Ae(Qd());var Ts="2025-11-25";var np=[Ts,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],ht="io.modelcontextprotocol/related-task",po="2.0",ae=rp(e=>e!==null&&(typeof e=="object"||typeof e=="function")),op=Y([g(),V().int()]),ip=g(),PA=be({ttl:V().optional(),pollInterval:V().optional()}),dv=k({ttl:V().optional()}),fv=k({taskId:g()}),Ps=be({progressToken:op.optional(),[ht]:fv.optional()}),Ie=k({_meta:Ps.optional()}),Wr=Ie.extend({task:dv.optional()}),sp=e=>Wr.safeParse(e).success,ue=k({method:g(),params:Ie.loose().optional()}),Ne=k({_meta:Ps.optional()}),Ce=k({method:g(),params:Ne.loose().optional()}),le=be({_meta:Ps.optional()}),mo=Y([g(),V().int()]),ap=k({jsonrpc:$(po),id:mo,...ue.shape}).strict(),Rs=e=>ap.safeParse(e).success,cp=k({jsonrpc:$(po),...Ce.shape}).strict(),up=e=>cp.safeParse(e).success,zs=k({jsonrpc:$(po),id:mo,result:le}).strict(),Gr=e=>zs.safeParse(e).success;var O;(function(e){e[e.ConnectionClosed=-32e3]="ConnectionClosed",e[e.RequestTimeout=-32001]="RequestTimeout",e[e.ParseError=-32700]="ParseError",e[e.InvalidRequest=-32600]="InvalidRequest",e[e.MethodNotFound=-32601]="MethodNotFound",e[e.InvalidParams=-32602]="InvalidParams",e[e.InternalError=-32603]="InternalError",e[e.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(O||(O={}));var Is=k({jsonrpc:$(po),id:mo.optional(),error:k({code:V().int(),message:g(),data:re().optional()})}).strict();var lp=e=>Is.safeParse(e).success;var dp=Y([ap,cp,zs,Is]),RA=Y([zs,Is]),Nt=le.strict(),pv=Ne.extend({requestId:mo.optional(),reason:g().optional()}),ho=Ce.extend({method:$("notifications/cancelled"),params:pv}),mv=k({src:g(),mimeType:g().optional(),sizes:q(g()).optional(),theme:Se(["light","dark"]).optional()}),Jr=k({icons:q(mv).optional()}),nr=k({name:g(),title:g().optional()}),fp=nr.extend({...nr.shape,...Jr.shape,version:g(),websiteUrl:g().optional(),description:g().optional()}),hv=lo(k({applyDefaults:ce().optional()}),J(g(),re())),gv=Ss(e=>e&&typeof e=="object"&&!Array.isArray(e)&&Object.keys(e).length===0?{form:{}}:e,lo(k({form:hv.optional(),url:ae.optional()}),J(g(),re()).optional())),yv=be({list:ae.optional(),cancel:ae.optional(),requests:be({sampling:be({createMessage:ae.optional()}).optional(),elicitation:be({create:ae.optional()}).optional()}).optional()}),_v=be({list:ae.optional(),cancel:ae.optional(),requests:be({tools:be({call:ae.optional()}).optional()}).optional()}),wv=k({experimental:J(g(),ae).optional(),sampling:k({context:ae.optional(),tools:ae.optional()}).optional(),elicitation:gv.optional(),roots:k({listChanged:ce().optional()}).optional(),tasks:yv.optional(),extensions:J(g(),ae).optional()}),vv=Ie.extend({protocolVersion:g(),capabilities:wv,clientInfo:fp}),bv=ue.extend({method:$("initialize"),params:vv});var xv=k({experimental:J(g(),ae).optional(),logging:ae.optional(),completions:ae.optional(),prompts:k({listChanged:ce().optional()}).optional(),resources:k({subscribe:ce().optional(),listChanged:ce().optional()}).optional(),tools:k({listChanged:ce().optional()}).optional(),tasks:_v.optional(),extensions:J(g(),ae).optional()}),Os=le.extend({protocolVersion:g(),capabilities:xv,serverInfo:fp,instructions:g().optional()}),kv=Ce.extend({method:$("notifications/initialized"),params:Ne.optional()});var go=ue.extend({method:$("ping"),params:Ie.optional()}),$v=k({progress:V(),total:ne(V()),message:ne(g())}),Sv=k({...Ne.shape,...$v.shape,progressToken:op}),yo=Ce.extend({method:$("notifications/progress"),params:Sv}),Ev=Ie.extend({cursor:ip.optional()}),Qr=ue.extend({params:Ev.optional()}),Yr=le.extend({nextCursor:ip.optional()}),Tv=Se(["working","input_required","completed","failed","cancelled"]),Xr=k({taskId:g(),status:Tv,ttl:Y([V(),Gf()]),createdAt:g(),lastUpdatedAt:g(),pollInterval:ne(V()),statusMessage:ne(g())}),Ct=le.extend({task:Xr}),Pv=Ne.merge(Xr),en=Ce.extend({method:$("notifications/tasks/status"),params:Pv}),_o=ue.extend({method:$("tasks/get"),params:Ie.extend({taskId:g()})}),wo=le.merge(Xr),vo=ue.extend({method:$("tasks/result"),params:Ie.extend({taskId:g()})}),zA=le.loose(),bo=Qr.extend({method:$("tasks/list")}),xo=Yr.extend({tasks:q(Xr)}),ko=ue.extend({method:$("tasks/cancel"),params:Ie.extend({taskId:g()})}),pp=le.merge(Xr),mp=k({uri:g(),mimeType:ne(g()),_meta:J(g(),re()).optional()}),hp=mp.extend({text:g()}),As=g().refine(e=>{try{return atob(e),!0}catch{return!1}},{message:"Invalid Base64 string"}),gp=mp.extend({blob:As}),tn=Se(["user","assistant"]),or=k({audience:q(tn).optional(),priority:V().min(0).max(1).optional(),lastModified:Kr.datetime({offset:!0}).optional()}),yp=k({...nr.shape,...Jr.shape,uri:g(),description:ne(g()),mimeType:ne(g()),size:ne(V()),annotations:or.optional(),_meta:ne(be({}))}),Rv=k({...nr.shape,...Jr.shape,uriTemplate:g(),description:ne(g()),mimeType:ne(g()),annotations:or.optional(),_meta:ne(be({}))}),zv=Qr.extend({method:$("resources/list")}),Ns=Yr.extend({resources:q(yp)}),Iv=Qr.extend({method:$("resources/templates/list")}),Cs=Yr.extend({resourceTemplates:q(Rv)}),Ds=Ie.extend({uri:g()}),Ov=Ds,Av=ue.extend({method:$("resources/read"),params:Ov}),js=le.extend({contents:q(Y([hp,gp]))}),Ms=Ce.extend({method:$("notifications/resources/list_changed"),params:Ne.optional()}),Nv=Ds,Cv=ue.extend({method:$("resources/subscribe"),params:Nv}),Dv=Ds,jv=ue.extend({method:$("resources/unsubscribe"),params:Dv}),Mv=Ne.extend({uri:g()}),qv=Ce.extend({method:$("notifications/resources/updated"),params:Mv}),Lv=k({name:g(),description:ne(g()),required:ne(ce())}),Bv=k({...nr.shape,...Jr.shape,description:ne(g()),arguments:ne(q(Lv)),_meta:ne(be({}))}),Zv=Qr.extend({method:$("prompts/list")}),qs=Yr.extend({prompts:q(Bv)}),Uv=Ie.extend({name:g(),arguments:J(g(),g()).optional()}),Fv=ue.extend({method:$("prompts/get"),params:Uv}),Ls=k({type:$("text"),text:g(),annotations:or.optional(),_meta:J(g(),re()).optional()}),Bs=k({type:$("image"),data:As,mimeType:g(),annotations:or.optional(),_meta:J(g(),re()).optional()}),Zs=k({type:$("audio"),data:As,mimeType:g(),annotations:or.optional(),_meta:J(g(),re()).optional()}),Vv=k({type:$("tool_use"),name:g(),id:g(),input:J(g(),re()),_meta:J(g(),re()).optional()}),Kv=k({type:$("resource"),resource:Y([hp,gp]),annotations:or.optional(),_meta:J(g(),re()).optional()}),Hv=yp.extend({type:$("resource_link")}),Us=Y([Ls,Bs,Zs,Hv,Kv]),Wv=k({role:tn,content:Us}),Fs=le.extend({description:g().optional(),messages:q(Wv)}),Vs=Ce.extend({method:$("notifications/prompts/list_changed"),params:Ne.optional()}),Gv=k({title:g().optional(),readOnlyHint:ce().optional(),destructiveHint:ce().optional(),idempotentHint:ce().optional(),openWorldHint:ce().optional()}),Jv=k({taskSupport:Se(["required","optional","forbidden"]).optional()}),_p=k({...nr.shape,...Jr.shape,description:g().optional(),inputSchema:k({type:$("object"),properties:J(g(),ae).optional(),required:q(g()).optional()}).catchall(re()),outputSchema:k({type:$("object"),properties:J(g(),ae).optional(),required:q(g()).optional()}).catchall(re()).optional(),annotations:Gv.optional(),execution:Jv.optional(),_meta:J(g(),re()).optional()}),Qv=Qr.extend({method:$("tools/list")}),Ks=Yr.extend({tools:q(_p)}),gt=le.extend({content:q(Us).default([]),structuredContent:J(g(),re()).optional(),isError:ce().optional()}),IA=gt.or(le.extend({toolResult:re()})),Yv=Wr.extend({name:g(),arguments:J(g(),re()).optional()}),Xv=ue.extend({method:$("tools/call"),params:Yv}),Hs=Ce.extend({method:$("notifications/tools/list_changed"),params:Ne.optional()}),wp=k({autoRefresh:ce().default(!0),debounceMs:V().int().nonnegative().default(300)}),vp=Se(["debug","info","notice","warning","error","critical","alert","emergency"]),eb=Ie.extend({level:vp}),tb=ue.extend({method:$("logging/setLevel"),params:eb}),rb=Ne.extend({level:vp,logger:g().optional(),data:re()}),nb=Ce.extend({method:$("notifications/message"),params:rb}),ob=k({name:g().optional()}),ib=k({hints:q(ob).optional(),costPriority:V().min(0).max(1).optional(),speedPriority:V().min(0).max(1).optional(),intelligencePriority:V().min(0).max(1).optional()}),sb=k({mode:Se(["auto","required","none"]).optional()}),ab=k({type:$("tool_result"),toolUseId:g().describe("The unique identifier for the corresponding tool call."),content:q(Us).default([]),structuredContent:k({}).loose().optional(),isError:ce().optional(),_meta:J(g(),re()).optional()}),cb=$s("type",[Ls,Bs,Zs]),fo=$s("type",[Ls,Bs,Zs,Vv,ab]),ub=k({role:tn,content:Y([fo,q(fo)]),_meta:J(g(),re()).optional()}),lb=Wr.extend({messages:q(ub),modelPreferences:ib.optional(),systemPrompt:g().optional(),includeContext:Se(["none","thisServer","allServers"]).optional(),temperature:V().optional(),maxTokens:V().int(),stopSequences:q(g()).optional(),metadata:ae.optional(),tools:q(_p).optional(),toolChoice:sb.optional()}),Ws=ue.extend({method:$("sampling/createMessage"),params:lb}),Gs=le.extend({model:g(),stopReason:ne(Se(["endTurn","stopSequence","maxTokens"]).or(g())),role:tn,content:cb}),Js=le.extend({model:g(),stopReason:ne(Se(["endTurn","stopSequence","maxTokens","toolUse"]).or(g())),role:tn,content:Y([fo,q(fo)])}),db=k({type:$("boolean"),title:g().optional(),description:g().optional(),default:ce().optional()}),fb=k({type:$("string"),title:g().optional(),description:g().optional(),minLength:V().optional(),maxLength:V().optional(),format:Se(["email","uri","date","date-time"]).optional(),default:g().optional()}),pb=k({type:Se(["number","integer"]),title:g().optional(),description:g().optional(),minimum:V().optional(),maximum:V().optional(),default:V().optional()}),mb=k({type:$("string"),title:g().optional(),description:g().optional(),enum:q(g()),default:g().optional()}),hb=k({type:$("string"),title:g().optional(),description:g().optional(),oneOf:q(k({const:g(),title:g()})),default:g().optional()}),gb=k({type:$("string"),title:g().optional(),description:g().optional(),enum:q(g()),enumNames:q(g()).optional(),default:g().optional()}),yb=Y([mb,hb]),_b=k({type:$("array"),title:g().optional(),description:g().optional(),minItems:V().optional(),maxItems:V().optional(),items:k({type:$("string"),enum:q(g())}),default:q(g()).optional()}),wb=k({type:$("array"),title:g().optional(),description:g().optional(),minItems:V().optional(),maxItems:V().optional(),items:k({anyOf:q(k({const:g(),title:g()}))}),default:q(g()).optional()}),vb=Y([_b,wb]),bb=Y([gb,yb,vb]),xb=Y([bb,db,fb,pb]),kb=Wr.extend({mode:$("form").optional(),message:g(),requestedSchema:k({type:$("object"),properties:J(g(),xb),required:q(g()).optional()})}),$b=Wr.extend({mode:$("url"),message:g(),elicitationId:g(),url:g().url()}),Sb=Y([kb,$b]),Qs=ue.extend({method:$("elicitation/create"),params:Sb}),Eb=Ne.extend({elicitationId:g()}),Tb=Ce.extend({method:$("notifications/elicitation/complete"),params:Eb}),Ys=le.extend({action:Se(["accept","decline","cancel"]),content:Ss(e=>e===null?void 0:e,J(g(),Y([g(),V(),ce(),q(g())])).optional())}),Pb=k({type:$("ref/resource"),uri:g()});var Rb=k({type:$("ref/prompt"),name:g()}),zb=Ie.extend({ref:Y([Rb,Pb]),argument:k({name:g(),value:g()}),context:k({arguments:J(g(),g()).optional()}).optional()}),Ib=ue.extend({method:$("completion/complete"),params:zb});var Xs=le.extend({completion:be({values:q(g()).max(100),total:ne(V().int()),hasMore:ne(ce())})}),Ob=k({uri:g().startsWith("file://"),name:g().optional(),_meta:J(g(),re()).optional()}),Ab=ue.extend({method:$("roots/list"),params:Ie.optional()}),Nb=le.extend({roots:q(Ob)}),Cb=Ce.extend({method:$("notifications/roots/list_changed"),params:Ne.optional()}),OA=Y([go,bv,Ib,tb,Fv,Zv,zv,Iv,Av,Cv,jv,Xv,Qv,_o,vo,bo,ko]),AA=Y([ho,yo,kv,Cb,en]),NA=Y([Nt,Gs,Js,Ys,Nb,wo,xo,Ct]),CA=Y([go,Ws,Qs,Ab,_o,vo,bo,ko]),DA=Y([ho,yo,nb,qv,Ms,Hs,Vs,en,Tb]),jA=Y([Nt,Os,Xs,Fs,qs,Ns,Cs,js,gt,Ks,wo,xo,Ct]),T=class e extends Error{constructor(t,r,n){super(`MCP error ${t}: ${r}`),this.code=t,this.data=n,this.name="McpError"}static fromError(t,r,n){if(t===O.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Es(o.elicitations,r)}return new e(t,r,n)}},Es=class extends T{constructor(t,r=`URL elicitation${t.length>1?"s":""} required`){super(O.UrlElicitationRequired,r,{elicitations:t})}get elicitations(){return this.data?.elicitations??[]}};function yt(e){return e==="completed"||e==="failed"||e==="cancelled"}var Db=Symbol("Let zodToJsonSchema decide on which parser to use");var gN=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function ea(e){let r=co(e)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Nf(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function ta(e,t){let r=Ze(e,t);if(!r.success)throw r.error;return r.data}var Zb=6e4,$o=class{constructor(t){this._options=t,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(ho,r=>{this._oncancel(r)}),this.setNotificationHandler(yo,r=>{this._onprogress(r)}),this.setRequestHandler(go,r=>({})),this._taskStore=t?.taskStore,this._taskMessageQueue=t?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(_o,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new T(O.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(vo,async(r,n)=>{let o=async()=>{let i=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(i,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,l=c.id,u=this._requestResolvers.get(l);if(u)if(this._requestResolvers.delete(l),a.type==="response")u(c);else{let d=c,f=new T(d.error.code,d.error.message,d.error.data);u(f)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${l}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let s=await this._taskStore.getTask(i,n.sessionId);if(!s)throw new T(O.InvalidParams,`Task not found: ${i}`);if(!yt(s.status))return await this._waitForTaskUpdate(i,n.signal),await o();if(yt(s.status)){let a=await this._taskStore.getTaskResult(i,n.sessionId);return this._clearTaskQueue(i),{...a,_meta:{...a._meta,[ht]:{taskId:i}}}}return await o()};return await o()}),this.setRequestHandler(bo,async(r,n)=>{try{let{tasks:o,nextCursor:i}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:o,nextCursor:i,_meta:{}}}catch(o){throw new T(O.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(ko,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new T(O.InvalidParams,`Task not found: ${r.params.taskId}`);if(yt(o.status))throw new T(O.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 i=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!i)throw new T(O.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...i}}catch(o){throw o instanceof T?o:new T(O.InvalidRequest,`Failed to cancel task: ${o instanceof Error?o.message:String(o)}`)}}))}async _oncancel(t){if(!t.params.requestId)return;this._requestHandlerAbortControllers.get(t.params.requestId)?.abort(t.params.reason)}_setupTimeout(t,r,n,o,i=!1){this._timeoutInfo.set(t,{timeoutId:setTimeout(o,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:i,onTimeout:o})}_resetTimeout(t){let r=this._timeoutInfo.get(t);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(t),T.fromError(O.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(t){let r=this._timeoutInfo.get(t);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(t))}async connect(t){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=t;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=i=>{n?.(i),this._onerror(i)};let o=this._transport?.onmessage;this._transport.onmessage=(i,s)=>{o?.(i,s),Gr(i)||lp(i)?this._onresponse(i):Rs(i)?this._onrequest(i,s):up(i)?this._onnotification(i):this._onerror(new Error(`Unknown message type: ${JSON.stringify(i)}`))},await this._transport.start()}_onclose(){let t=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=T.fromError(O.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of t.values())n(r)}_onerror(t){this.onerror?.(t)}_onnotification(t){let r=this._notificationHandlers.get(t.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(t)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(t,r){let n=this._requestHandlers.get(t.method)??this.fallbackRequestHandler,o=this._transport,i=t.params?._meta?.[ht]?.taskId;if(n===void 0){let u={jsonrpc:"2.0",id:t.id,error:{code:O.MethodNotFound,message:"Method not found"}};i&&this._taskMessageQueue?this._enqueueTaskMessage(i,{type:"error",message:u,timestamp:Date.now()},o?.sessionId).catch(d=>this._onerror(new Error(`Failed to enqueue error response: ${d}`))):o?.send(u).catch(d=>this._onerror(new Error(`Failed to send an error response: ${d}`)));return}let s=new AbortController;this._requestHandlerAbortControllers.set(t.id,s);let a=sp(t.params)?t.params.task:void 0,c=this._taskStore?this.requestTaskStore(t,o?.sessionId):void 0,l={signal:s.signal,sessionId:o?.sessionId,_meta:t.params?._meta,sendNotification:async u=>{if(s.signal.aborted)return;let d={relatedRequestId:t.id};i&&(d.relatedTask={taskId:i}),await this.notification(u,d)},sendRequest:async(u,d,f)=>{if(s.signal.aborted)throw new T(O.ConnectionClosed,"Request was cancelled");let p={...f,relatedRequestId:t.id};i&&!p.relatedTask&&(p.relatedTask={taskId:i});let m=p.relatedTask?.taskId??i;return m&&c&&await c.updateTaskStatus(m,"input_required"),await this.request(u,d,p)},authInfo:r?.authInfo,requestId:t.id,requestInfo:r?.requestInfo,taskId:i,taskStore:c,taskRequestedTtl:a?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{a&&this.assertTaskHandlerCapability(t.method)}).then(()=>n(t,l)).then(async u=>{if(s.signal.aborted)return;let d={result:u,jsonrpc:"2.0",id:t.id};i&&this._taskMessageQueue?await this._enqueueTaskMessage(i,{type:"response",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)},async u=>{if(s.signal.aborted)return;let d={jsonrpc:"2.0",id:t.id,error:{code:Number.isSafeInteger(u.code)?u.code:O.InternalError,message:u.message??"Internal error",...u.data!==void 0&&{data:u.data}}};i&&this._taskMessageQueue?await this._enqueueTaskMessage(i,{type:"error",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)}).catch(u=>this._onerror(new Error(`Failed to send response: ${u}`))).finally(()=>{this._requestHandlerAbortControllers.get(t.id)===s&&this._requestHandlerAbortControllers.delete(t.id)})}_onprogress(t){let{progressToken:r,...n}=t.params,o=Number(r),i=this._progressHandlers.get(o);if(!i){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(t)}`));return}let s=this._responseHandlers.get(o),a=this._timeoutInfo.get(o);if(a&&s&&a.resetTimeoutOnProgress)try{this._resetTimeout(o)}catch(c){this._responseHandlers.delete(o),this._progressHandlers.delete(o),this._cleanupTimeout(o),s(c);return}i(n)}_onresponse(t){let r=Number(t.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),Gr(t))n(t);else{let s=new T(t.error.code,t.error.message,t.error.data);n(s)}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(t)}`));return}this._responseHandlers.delete(r),this._cleanupTimeout(r);let i=!1;if(Gr(t)&&t.result&&typeof t.result=="object"){let s=t.result;if(s.task&&typeof s.task=="object"){let a=s.task;typeof a.taskId=="string"&&(i=!0,this._taskProgressTokens.set(a.taskId,r))}}if(i||this._progressHandlers.delete(r),Gr(t))o(t);else{let s=T.fromError(t.error.code,t.error.message,t.error.data);o(s)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(t,r,n){let{task:o}=n??{};if(!o){try{yield{type:"result",result:await this.request(t,r,n)}}catch(s){yield{type:"error",error:s instanceof T?s:new T(O.InternalError,String(s))}}return}let i;try{let s=await this.request(t,Ct,n);if(s.task)i=s.task.taskId,yield{type:"taskCreated",task:s.task};else throw new T(O.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:i},n);if(yield{type:"taskStatus",task:a},yt(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:i},r,n)}:a.status==="failed"?yield{type:"error",error:new T(O.InternalError,`Task ${i} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new T(O.InternalError,`Task ${i} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:i},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(l=>setTimeout(l,c)),n?.signal?.throwIfAborted()}}catch(s){yield{type:"error",error:s instanceof T?s:new T(O.InternalError,String(s))}}}request(t,r,n){let{relatedRequestId:o,resumptionToken:i,onresumptiontoken:s,task:a,relatedTask:c}=n??{};return new Promise((l,u)=>{let d=b=>{u(b)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(t.method),a&&this.assertTaskCapability(t.method)}catch(b){d(b);return}n?.signal?.throwIfAborted();let f=this._requestMessageId++,p={...t,jsonrpc:"2.0",id:f};n?.onprogress&&(this._progressHandlers.set(f,n.onprogress),p.params={...t.params,_meta:{...t.params?._meta||{},progressToken:f}}),a&&(p.params={...p.params,task:a}),c&&(p.params={...p.params,_meta:{...p.params?._meta||{},[ht]:c}});let m=b=>{this._responseHandlers.delete(f),this._progressHandlers.delete(f),this._cleanupTimeout(f),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:f,reason:String(b)}},{relatedRequestId:o,resumptionToken:i,onresumptiontoken:s}).catch(P=>this._onerror(new Error(`Failed to send cancellation: ${P}`)));let x=b instanceof T?b:new T(O.RequestTimeout,String(b));u(x)};this._responseHandlers.set(f,b=>{if(!n?.signal?.aborted){if(b instanceof Error)return u(b);try{let x=Ze(r,b.result);x.success?l(x.data):u(x.error)}catch(x){u(x)}}}),n?.signal?.addEventListener("abort",()=>{m(n?.signal?.reason)});let h=n?.timeout??Zb,_=()=>m(T.fromError(O.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(f,h,n?.maxTotalTimeout,_,n?.resetTimeoutOnProgress??!1);let w=c?.taskId;if(w){let b=x=>{let P=this._responseHandlers.get(f);P?P(x):this._onerror(new Error(`Response handler missing for side-channeled request ${f}`))};this._requestResolvers.set(f,b),this._enqueueTaskMessage(w,{type:"request",message:p,timestamp:Date.now()}).catch(x=>{this._cleanupTimeout(f),u(x)})}else this._transport.send(p,{relatedRequestId:o,resumptionToken:i,onresumptiontoken:s}).catch(b=>{this._cleanupTimeout(f),u(b)})})}async getTask(t,r){return this.request({method:"tasks/get",params:t},wo,r)}async getTaskResult(t,r,n){return this.request({method:"tasks/result",params:t},r,n)}async listTasks(t,r){return this.request({method:"tasks/list",params:t},xo,r)}async cancelTask(t,r){return this.request({method:"tasks/cancel",params:t},pp,r)}async notification(t,r){if(!this._transport)throw new Error("Not connected");this.assertNotificationCapability(t.method);let n=r?.relatedTask?.taskId;if(n){let a={...t,jsonrpc:"2.0",params:{...t.params,_meta:{...t.params?._meta||{},[ht]:r.relatedTask}}};await this._enqueueTaskMessage(n,{type:"notification",message:a,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(t.method)&&!t.params&&!r?.relatedRequestId&&!r?.relatedTask){if(this._pendingDebouncedNotifications.has(t.method))return;this._pendingDebouncedNotifications.add(t.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(t.method),!this._transport)return;let a={...t,jsonrpc:"2.0"};r?.relatedTask&&(a={...a,params:{...a.params,_meta:{...a.params?._meta||{},[ht]:r.relatedTask}}}),this._transport?.send(a,r).catch(c=>this._onerror(c))});return}let s={...t,jsonrpc:"2.0"};r?.relatedTask&&(s={...s,params:{...s.params,_meta:{...s.params?._meta||{},[ht]:r.relatedTask}}}),await this._transport.send(s,r)}setRequestHandler(t,r){let n=ea(t);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,i)=>{let s=ta(t,o);return Promise.resolve(r(s,i))})}removeRequestHandler(t){this._requestHandlers.delete(t)}assertCanSetRequestHandler(t){if(this._requestHandlers.has(t))throw new Error(`A request handler for ${t} already exists, which would be overridden`)}setNotificationHandler(t,r){let n=ea(t);this._notificationHandlers.set(n,o=>{let i=ta(t,o);return Promise.resolve(r(i))})}removeNotificationHandler(t){this._notificationHandlers.delete(t)}_cleanupTaskProgressHandler(t){let r=this._taskProgressTokens.get(t);r!==void 0&&(this._progressHandlers.delete(r),this._taskProgressTokens.delete(t))}async _enqueueTaskMessage(t,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(t,r,n,o)}async _clearTaskQueue(t,r){if(this._taskMessageQueue){let n=await this._taskMessageQueue.dequeueAll(t,r);for(let o of n)if(o.type==="request"&&Rs(o.message)){let i=o.message.id,s=this._requestResolvers.get(i);s?(s(new T(O.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(i)):this._onerror(new Error(`Resolver missing for request ${i} during task ${t} cleanup`))}}}async _waitForTaskUpdate(t,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(t);o?.pollInterval&&(n=o.pollInterval)}catch{}return new Promise((o,i)=>{if(r.aborted){i(new T(O.InvalidRequest,"Request cancelled"));return}let s=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(s),i(new T(O.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(t,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async o=>{if(!t)throw new Error("No request provided");return await n.createTask(o,t.id,{method:t.method,params:t.params},r)},getTask:async o=>{let i=await n.getTask(o,r);if(!i)throw new T(O.InvalidParams,"Failed to retrieve task: Task not found");return i},storeTaskResult:async(o,i,s)=>{await n.storeTaskResult(o,i,s,r);let a=await n.getTask(o,r);if(a){let c=en.parse({method:"notifications/tasks/status",params:a});await this.notification(c),yt(a.status)&&this._cleanupTaskProgressHandler(o)}},getTaskResult:o=>n.getTaskResult(o,r),updateTaskStatus:async(o,i,s)=>{let a=await n.getTask(o,r);if(!a)throw new T(O.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(yt(a.status))throw new T(O.InvalidParams,`Cannot update task "${o}" from terminal status "${a.status}" to "${i}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(o,i,s,r);let c=await n.getTask(o,r);if(c){let l=en.parse({method:"notifications/tasks/status",params:c});await this.notification(l),yt(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function bp(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function xp(e,t){let r={...e};for(let n in t){let o=n,i=t[o];if(i===void 0)continue;let s=r[o];bp(s)&&bp(i)?r[o]={...s,...i}:r[o]=i}return r}var pg=ji(Bc(),1),mg=ji(fg(),1);function VE(){let e=new pg.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,mg.default)(e),e}var ii=class{constructor(t){this._ajv=t??VE()}getValidator(t){let r="$id"in t&&typeof t.$id=="string"?this._ajv.getSchema(t.$id)??this._ajv.compile(t):this._ajv.compile(t);return n=>r(n)?{valid:!0,data:n,errorMessage:void 0}:{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(r.errors)}}};var si=class{constructor(t){this._client=t}async*callToolStream(t,r=gt,n){let o=this._client,i={...n,task:n?.task??(o.isToolTask(t.name)?{}:void 0)},s=o.requestStream({method:"tools/call",params:t},r,i),a=o.getToolOutputValidator(t.name);for await(let c of s){if(c.type==="result"&&a){let l=c.result;if(!l.structuredContent&&!l.isError){yield{type:"error",error:new T(O.InvalidRequest,`Tool ${t.name} has an output schema but did not return structured content`)};return}if(l.structuredContent)try{let u=a(l.structuredContent);if(!u.valid){yield{type:"error",error:new T(O.InvalidParams,`Structured content does not match the tool's output schema: ${u.errorMessage}`)};return}}catch(u){if(u instanceof T){yield{type:"error",error:u};return}yield{type:"error",error:new T(O.InvalidParams,`Failed to validate structured content: ${u instanceof Error?u.message:String(u)}`)};return}}yield c}}async getTask(t,r){return this._client.getTask({taskId:t},r)}async getTaskResult(t,r,n){return this._client.getTaskResult({taskId:t},r,n)}async listTasks(t,r){return this._client.listTasks(t?{cursor:t}:void 0,r)}async cancelTask(t,r){return this._client.cancelTask({taskId:t},r)}requestStream(t,r,n){return this._client.requestStream(t,r,n)}};function hg(e,t,r){if(!e)throw new Error(`${r} does not support task creation (required for ${t})`);switch(t){case"tools/call":if(!e.tools?.call)throw new Error(`${r} does not support task creation for tools/call (required for ${t})`);break;default:break}}function gg(e,t,r){if(!e)throw new Error(`${r} does not support task creation (required for ${t})`);switch(t){case"sampling/createMessage":if(!e.sampling?.createMessage)throw new Error(`${r} does not support task creation for sampling/createMessage (required for ${t})`);break;case"elicitation/create":if(!e.elicitation?.create)throw new Error(`${r} does not support task creation for elicitation/create (required for ${t})`);break;default:break}}function ai(e,t){if(!(!e||t===null||typeof t!="object")){if(e.type==="object"&&e.properties&&typeof e.properties=="object"){let r=t,n=e.properties;for(let o of Object.keys(n)){let i=n[o];r[o]===void 0&&Object.prototype.hasOwnProperty.call(i,"default")&&(r[o]=i.default),r[o]!==void 0&&ai(i,r[o])}}if(Array.isArray(e.anyOf))for(let r of e.anyOf)typeof r!="boolean"&&ai(r,t);if(Array.isArray(e.oneOf))for(let r of e.oneOf)typeof r!="boolean"&&ai(r,t)}}function KE(e){if(!e)return{supportsFormMode:!1,supportsUrlMode:!1};let t=e.form!==void 0,r=e.url!==void 0;return{supportsFormMode:t||!t&&!r,supportsUrlMode:r}}var ci=class extends $o{constructor(t,r){super(r),this._clientInfo=t,this._cachedToolOutputValidators=new Map,this._cachedKnownTaskTools=new Set,this._cachedRequiredTaskTools=new Set,this._listChangedDebounceTimers=new Map,this._capabilities=r?.capabilities??{},this._jsonSchemaValidator=r?.jsonSchemaValidator??new ii,r?.listChanged&&(this._pendingListChangedConfig=r.listChanged)}_setupListChangedHandlers(t){t.tools&&this._serverCapabilities?.tools?.listChanged&&this._setupListChangedHandler("tools",Hs,t.tools,async()=>(await this.listTools()).tools),t.prompts&&this._serverCapabilities?.prompts?.listChanged&&this._setupListChangedHandler("prompts",Vs,t.prompts,async()=>(await this.listPrompts()).prompts),t.resources&&this._serverCapabilities?.resources?.listChanged&&this._setupListChangedHandler("resources",Ms,t.resources,async()=>(await this.listResources()).resources)}get experimental(){return this._experimental||(this._experimental={tasks:new si(this)}),this._experimental}registerCapabilities(t){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=xp(this._capabilities,t)}setRequestHandler(t,r){let o=co(t)?.method;if(!o)throw new Error("Schema is missing a method literal");let i;if(rr(o)){let a=o;i=a._zod?.def?.value??a.value}else{let a=o;i=a._def?.value??a.value}if(typeof i!="string")throw new Error("Schema method literal must be a string");let s=i;if(s==="elicitation/create"){let a=async(c,l)=>{let u=Ze(Qs,c);if(!u.success){let b=u.error instanceof Error?u.error.message:String(u.error);throw new T(O.InvalidParams,`Invalid elicitation request: ${b}`)}let{params:d}=u.data;d.mode=d.mode??"form";let{supportsFormMode:f,supportsUrlMode:p}=KE(this._capabilities.elicitation);if(d.mode==="form"&&!f)throw new T(O.InvalidParams,"Client does not support form-mode elicitation requests");if(d.mode==="url"&&!p)throw new T(O.InvalidParams,"Client does not support URL-mode elicitation requests");let m=await Promise.resolve(r(c,l));if(d.task){let b=Ze(Ct,m);if(!b.success){let x=b.error instanceof Error?b.error.message:String(b.error);throw new T(O.InvalidParams,`Invalid task creation result: ${x}`)}return b.data}let h=Ze(Ys,m);if(!h.success){let b=h.error instanceof Error?h.error.message:String(h.error);throw new T(O.InvalidParams,`Invalid elicitation result: ${b}`)}let _=h.data,w=d.mode==="form"?d.requestedSchema:void 0;if(d.mode==="form"&&_.action==="accept"&&_.content&&w&&this._capabilities.elicitation?.form?.applyDefaults)try{ai(w,_.content)}catch{}return _};return super.setRequestHandler(t,a)}if(s==="sampling/createMessage"){let a=async(c,l)=>{let u=Ze(Ws,c);if(!u.success){let _=u.error instanceof Error?u.error.message:String(u.error);throw new T(O.InvalidParams,`Invalid sampling request: ${_}`)}let{params:d}=u.data,f=await Promise.resolve(r(c,l));if(d.task){let _=Ze(Ct,f);if(!_.success){let w=_.error instanceof Error?_.error.message:String(_.error);throw new T(O.InvalidParams,`Invalid task creation result: ${w}`)}return _.data}let m=d.tools||d.toolChoice?Js:Gs,h=Ze(m,f);if(!h.success){let _=h.error instanceof Error?h.error.message:String(h.error);throw new T(O.InvalidParams,`Invalid sampling result: ${_}`)}return h.data};return super.setRequestHandler(t,a)}return super.setRequestHandler(t,r)}assertCapability(t,r){if(!this._serverCapabilities?.[t])throw new Error(`Server does not support ${t} (required for ${r})`)}async connect(t,r){if(await super.connect(t),t.sessionId===void 0)try{let n=await this.request({method:"initialize",params:{protocolVersion:Ts,capabilities:this._capabilities,clientInfo:this._clientInfo}},Os,r);if(n===void 0)throw new Error(`Server sent invalid initialize result: ${n}`);if(!np.includes(n.protocolVersion))throw new Error(`Server's protocol version is not supported: ${n.protocolVersion}`);this._serverCapabilities=n.capabilities,this._serverVersion=n.serverInfo,t.setProtocolVersion&&t.setProtocolVersion(n.protocolVersion),this._instructions=n.instructions,await this.notification({method:"notifications/initialized"}),this._pendingListChangedConfig&&(this._setupListChangedHandlers(this._pendingListChangedConfig),this._pendingListChangedConfig=void 0)}catch(n){throw this.close(),n}}getServerCapabilities(){return this._serverCapabilities}getServerVersion(){return this._serverVersion}getInstructions(){return this._instructions}assertCapabilityForMethod(t){switch(t){case"logging/setLevel":if(!this._serverCapabilities?.logging)throw new Error(`Server does not support logging (required for ${t})`);break;case"prompts/get":case"prompts/list":if(!this._serverCapabilities?.prompts)throw new Error(`Server does not support prompts (required for ${t})`);break;case"resources/list":case"resources/templates/list":case"resources/read":case"resources/subscribe":case"resources/unsubscribe":if(!this._serverCapabilities?.resources)throw new Error(`Server does not support resources (required for ${t})`);if(t==="resources/subscribe"&&!this._serverCapabilities.resources.subscribe)throw new Error(`Server does not support resource subscriptions (required for ${t})`);break;case"tools/call":case"tools/list":if(!this._serverCapabilities?.tools)throw new Error(`Server does not support tools (required for ${t})`);break;case"completion/complete":if(!this._serverCapabilities?.completions)throw new Error(`Server does not support completions (required for ${t})`);break;case"initialize":break;case"ping":break}}assertNotificationCapability(t){switch(t){case"notifications/roots/list_changed":if(!this._capabilities.roots?.listChanged)throw new Error(`Client does not support roots list changed notifications (required for ${t})`);break;case"notifications/initialized":break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(t){if(this._capabilities)switch(t){case"sampling/createMessage":if(!this._capabilities.sampling)throw new Error(`Client does not support sampling capability (required for ${t})`);break;case"elicitation/create":if(!this._capabilities.elicitation)throw new Error(`Client does not support elicitation capability (required for ${t})`);break;case"roots/list":if(!this._capabilities.roots)throw new Error(`Client does not support roots capability (required for ${t})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Client does not support tasks capability (required for ${t})`);break;case"ping":break}}assertTaskCapability(t){hg(this._serverCapabilities?.tasks?.requests,t,"Server")}assertTaskHandlerCapability(t){this._capabilities&&gg(this._capabilities.tasks?.requests,t,"Client")}async ping(t){return this.request({method:"ping"},Nt,t)}async complete(t,r){return this.request({method:"completion/complete",params:t},Xs,r)}async setLoggingLevel(t,r){return this.request({method:"logging/setLevel",params:{level:t}},Nt,r)}async getPrompt(t,r){return this.request({method:"prompts/get",params:t},Fs,r)}async listPrompts(t,r){return this.request({method:"prompts/list",params:t},qs,r)}async listResources(t,r){return this.request({method:"resources/list",params:t},Ns,r)}async listResourceTemplates(t,r){return this.request({method:"resources/templates/list",params:t},Cs,r)}async readResource(t,r){return this.request({method:"resources/read",params:t},js,r)}async subscribeResource(t,r){return this.request({method:"resources/subscribe",params:t},Nt,r)}async unsubscribeResource(t,r){return this.request({method:"resources/unsubscribe",params:t},Nt,r)}async callTool(t,r=gt,n){if(this.isToolTaskRequired(t.name))throw new T(O.InvalidRequest,`Tool "${t.name}" requires task-based execution. Use client.experimental.tasks.callToolStream() instead.`);let o=await this.request({method:"tools/call",params:t},r,n),i=this.getToolOutputValidator(t.name);if(i){if(!o.structuredContent&&!o.isError)throw new T(O.InvalidRequest,`Tool ${t.name} has an output schema but did not return structured content`);if(o.structuredContent)try{let s=i(o.structuredContent);if(!s.valid)throw new T(O.InvalidParams,`Structured content does not match the tool's output schema: ${s.errorMessage}`)}catch(s){throw s instanceof T?s:new T(O.InvalidParams,`Failed to validate structured content: ${s instanceof Error?s.message:String(s)}`)}}return o}isToolTask(t){return this._serverCapabilities?.tasks?.requests?.tools?.call?this._cachedKnownTaskTools.has(t):!1}isToolTaskRequired(t){return this._cachedRequiredTaskTools.has(t)}cacheToolMetadata(t){this._cachedToolOutputValidators.clear(),this._cachedKnownTaskTools.clear(),this._cachedRequiredTaskTools.clear();for(let r of t){if(r.outputSchema){let o=this._jsonSchemaValidator.getValidator(r.outputSchema);this._cachedToolOutputValidators.set(r.name,o)}let n=r.execution?.taskSupport;(n==="required"||n==="optional")&&this._cachedKnownTaskTools.add(r.name),n==="required"&&this._cachedRequiredTaskTools.add(r.name)}}getToolOutputValidator(t){return this._cachedToolOutputValidators.get(t)}async listTools(t,r){let n=await this.request({method:"tools/list",params:t},Ks,r);return this.cacheToolMetadata(n.tools),n}_setupListChangedHandler(t,r,n,o){let i=wp.safeParse(n);if(!i.success)throw new Error(`Invalid ${t} listChanged options: ${i.error.message}`);if(typeof n.onChanged!="function")throw new Error(`Invalid ${t} listChanged options: onChanged must be a function`);let{autoRefresh:s,debounceMs:a}=i.data,{onChanged:c}=n,l=async()=>{if(!s){c(null,null);return}try{let d=await o();c(null,d)}catch(d){let f=d instanceof Error?d:new Error(String(d));c(f,null)}},u=()=>{if(a){let d=this._listChangedDebounceTimers.get(t);d&&clearTimeout(d);let f=setTimeout(l,a);this._listChangedDebounceTimers.set(t,f)}else l()};this.setNotificationHandler(r,u)}async sendRootsListChanged(){return this.notification({method:"notifications/roots/list_changed"})}};var sy=ji(oy(),1);import ou from"node:process";import{PassThrough as vT}from"node:stream";var li=class{append(t){this._buffer=this._buffer?Buffer.concat([this._buffer,t]):t}readMessage(){if(!this._buffer)return null;let t=this._buffer.indexOf(`
34
+ path: iss.path ? [${Ot(b)}, ...iss.path] : [${Ot(b)}]
35
+ })));`),f.write(`newResult[${Ot(b)}] = ${x}.value`)}f.write("payload.value = newResult;"),f.write("return payload;");let w=f.compile();return(b,x)=>w(d,b,x)},o,i=Xt,s=!Wn.jitless,c=s&&Fi.value,l=t.catchall,u;e._zod.parse=(d,f)=>{u??(u=r.value);let p=d.value;if(!i(p))return d.issues.push({expected:"object",code:"invalid_type",input:p,inst:e}),d;let m=[];if(s&&c&&f?.async===!1&&f.jitless!==!0)o||(o=n(t.shape)),d=o(d,f);else{d.value={};let x=u.shape;for(let P of u.keys){let I=x[P],ve=I._zod.run({value:p[P],issues:[]},f),Oe=I._zod.optin==="optional"&&I._zod.optout==="optional";ve instanceof Promise?m.push(ve.then(Yt=>Oe?Ql(Yt,d,P,p):to(Yt,d,P))):Oe?Ql(ve,d,P,p):to(ve,d,P)}}if(!l)return m.length?Promise.all(m).then(()=>d):d;let h=[],_=u.keySet,w=l._zod,b=w.def.type;for(let x of Object.keys(p)){if(_.has(x))continue;if(b==="never"){h.push(x);continue}let P=w.run({value:p[x],issues:[]},f);P instanceof Promise?m.push(P.then(I=>to(I,d,x))):to(P,d,x)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:p,inst:e}),m.length?Promise.all(m).then(()=>d):d}});function Yl(e,t,r,n){for(let o of e)if(o.issues.length===0)return t.value=o.value,t;return t.issues.push({code:"invalid_union",input:t.value,inst:r,errors:e.map(o=>o.issues.map(i=>Be(i,n,Ae())))}),t}var is=y("$ZodUnion",(e,t)=>{G.init(e,t),W(e._zod,"optin",()=>t.options.some(r=>r._zod.optin==="optional")?"optional":void 0),W(e._zod,"optout",()=>t.options.some(r=>r._zod.optout==="optional")?"optional":void 0),W(e._zod,"values",()=>{if(t.options.every(r=>r._zod.values))return new Set(t.options.flatMap(r=>Array.from(r._zod.values)))}),W(e._zod,"pattern",()=>{if(t.options.every(r=>r._zod.pattern)){let r=t.options.map(n=>n._zod.pattern);return new RegExp(`^(${r.map(n=>Mr(n.source)).join("|")})$`)}}),e._zod.parse=(r,n)=>{let o=!1,i=[];for(let s of t.options){let a=s._zod.run({value:r.value,issues:[]},n);if(a instanceof Promise)i.push(a),o=!0;else{if(a.issues.length===0)return a;i.push(a)}}return o?Promise.all(i).then(s=>Yl(s,r,e,n)):Yl(i,r,e,n)}}),Dd=y("$ZodDiscriminatedUnion",(e,t)=>{is.init(e,t);let r=e._zod.parse;W(e._zod,"propValues",()=>{let o={};for(let i of t.options){let s=i._zod.propValues;if(!s||Object.keys(s).length===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(i)}"`);for(let[a,c]of Object.entries(s)){o[a]||(o[a]=new Set);for(let l of c)o[a].add(l)}}return o});let n=Dr(()=>{let o=t.options,i=new Map;for(let s of o){let a=s._zod.propValues[t.discriminator];if(!a||a.size===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(s)}"`);for(let c of a){if(i.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);i.set(c,s)}}return i});e._zod.parse=(o,i)=>{let s=o.value;if(!Xt(s))return o.issues.push({code:"invalid_type",expected:"object",input:s,inst:e}),o;let a=n.value.get(s?.[t.discriminator]);return a?a._zod.run(o,i):t.unionFallback?r(o,i):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:s,path:[t.discriminator],inst:e}),o)}}),jd=y("$ZodIntersection",(e,t)=>{G.init(e,t),e._zod.parse=(r,n)=>{let o=r.value,i=t.left._zod.run({value:o,issues:[]},n),s=t.right._zod.run({value:o,issues:[]},n);return i instanceof Promise||s instanceof Promise?Promise.all([i,s]).then(([c,l])=>Xl(r,c,l)):Xl(r,i,s)}});function ns(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(er(e)&&er(t)){let r=Object.keys(t),n=Object.keys(e).filter(i=>r.indexOf(i)!==-1),o={...e,...t};for(let i of n){let s=ns(e[i],t[i]);if(!s.valid)return{valid:!1,mergeErrorPath:[i,...s.mergeErrorPath]};o[i]=s.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n<e.length;n++){let o=e[n],i=t[n],s=ns(o,i);if(!s.valid)return{valid:!1,mergeErrorPath:[n,...s.mergeErrorPath]};r.push(s.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function Xl(e,t,r){if(t.issues.length&&e.issues.push(...t.issues),r.issues.length&&e.issues.push(...r.issues),At(e))return e;let n=ns(t.value,r.value);if(!n.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(n.mergeErrorPath)}`);return e.value=n.data,e}var Md=y("$ZodRecord",(e,t)=>{G.init(e,t),e._zod.parse=(r,n)=>{let o=r.value;if(!er(o))return r.issues.push({expected:"record",code:"invalid_type",input:o,inst:e}),r;let i=[];if(t.keyType._zod.values){let s=t.keyType._zod.values;r.value={};for(let c of s)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){let l=t.valueType._zod.run({value:o[c],issues:[]},n);l instanceof Promise?i.push(l.then(u=>{u.issues.length&&r.issues.push(...Ye(c,u.issues)),r.value[c]=u.value})):(l.issues.length&&r.issues.push(...Ye(c,l.issues)),r.value[c]=l.value)}let a;for(let c in o)s.has(c)||(a=a??[],a.push(c));a&&a.length>0&&r.issues.push({code:"unrecognized_keys",input:o,inst:e,keys:a})}else{r.value={};for(let s of Reflect.ownKeys(o)){if(s==="__proto__")continue;let a=t.keyType._zod.run({value:s,issues:[]},n);if(a instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(a.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:a.issues.map(l=>Be(l,n,Ae())),input:s,path:[s],inst:e}),r.value[a.value]=a.value;continue}let c=t.valueType._zod.run({value:o[s],issues:[]},n);c instanceof Promise?i.push(c.then(l=>{l.issues.length&&r.issues.push(...Ye(s,l.issues)),r.value[a.value]=l.value})):(c.issues.length&&r.issues.push(...Ye(s,c.issues)),r.value[a.value]=c.value)}}return i.length?Promise.all(i).then(()=>r):r}});var qd=y("$ZodEnum",(e,t)=>{G.init(e,t);let r=Li(t.entries);e._zod.values=new Set(r),e._zod.pattern=new RegExp(`^(${r.filter(n=>Vi.has(typeof n)).map(n=>typeof n=="string"?gt(n):n.toString()).join("|")})$`),e._zod.parse=(n,o)=>{let i=n.value;return e._zod.values.has(i)||n.issues.push({code:"invalid_value",values:r,input:i,inst:e}),n}}),Ld=y("$ZodLiteral",(e,t)=>{G.init(e,t),e._zod.values=new Set(t.values),e._zod.pattern=new RegExp(`^(${t.values.map(r=>typeof r=="string"?gt(r):r?r.toString():String(r)).join("|")})$`),e._zod.parse=(r,n)=>{let o=r.value;return e._zod.values.has(o)||r.issues.push({code:"invalid_value",values:t.values,input:o,inst:e}),r}});var Bd=y("$ZodTransform",(e,t)=>{G.init(e,t),e._zod.parse=(r,n)=>{let o=t.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then(s=>(r.value=s,r));if(o instanceof Promise)throw new st;return r.value=o,r}}),Zd=y("$ZodOptional",(e,t)=>{G.init(e,t),e._zod.optin="optional",e._zod.optout="optional",W(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),W(e._zod,"pattern",()=>{let r=t.innerType._zod.pattern;return r?new RegExp(`^(${Mr(r.source)})?$`):void 0}),e._zod.parse=(r,n)=>t.innerType._zod.optin==="optional"?t.innerType._zod.run(r,n):r.value===void 0?r:t.innerType._zod.run(r,n)}),Ud=y("$ZodNullable",(e,t)=>{G.init(e,t),W(e._zod,"optin",()=>t.innerType._zod.optin),W(e._zod,"optout",()=>t.innerType._zod.optout),W(e._zod,"pattern",()=>{let r=t.innerType._zod.pattern;return r?new RegExp(`^(${Mr(r.source)}|null)$`):void 0}),W(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(r,n)=>r.value===null?r:t.innerType._zod.run(r,n)}),Fd=y("$ZodDefault",(e,t)=>{G.init(e,t),e._zod.optin="optional",W(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=t.defaultValue,r;let o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(i=>ed(i,t)):ed(o,t)}});function ed(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var Vd=y("$ZodPrefault",(e,t)=>{G.init(e,t),e._zod.optin="optional",W(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>(r.value===void 0&&(r.value=t.defaultValue),t.innerType._zod.run(r,n))}),Kd=y("$ZodNonOptional",(e,t)=>{G.init(e,t),W(e._zod,"values",()=>{let r=t.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),e._zod.parse=(r,n)=>{let o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(i=>td(i,e)):td(o,e)}});function td(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}var Hd=y("$ZodCatch",(e,t)=>{G.init(e,t),e._zod.optin="optional",W(e._zod,"optout",()=>t.innerType._zod.optout),W(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{let o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(i=>(r.value=i.value,i.issues.length&&(r.value=t.catchValue({...r,error:{issues:i.issues.map(s=>Be(s,n,Ae()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=t.catchValue({...r,error:{issues:o.issues.map(i=>Be(i,n,Ae()))},input:r.value}),r.issues=[]),r)}});var Wd=y("$ZodPipe",(e,t)=>{G.init(e,t),W(e._zod,"values",()=>t.in._zod.values),W(e._zod,"optin",()=>t.in._zod.optin),W(e._zod,"optout",()=>t.out._zod.optout),e._zod.parse=(r,n)=>{let o=t.in._zod.run(r,n);return o instanceof Promise?o.then(i=>rd(i,t,n)):rd(o,t,n)}});function rd(e,t,r){return At(e)?e:t.out._zod.run({value:e.value,issues:e.issues},r)}var Gd=y("$ZodReadonly",(e,t)=>{G.init(e,t),W(e._zod,"propValues",()=>t.innerType._zod.propValues),W(e._zod,"values",()=>t.innerType._zod.values),W(e._zod,"optin",()=>t.innerType._zod.optin),W(e._zod,"optout",()=>t.innerType._zod.optout),e._zod.parse=(r,n)=>{let o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(nd):nd(o)}});function nd(e){return e.value=Object.freeze(e.value),e}var Jd=y("$ZodCustom",(e,t)=>{me.init(e,t),G.init(e,t),e._zod.parse=(r,n)=>r,e._zod.check=r=>{let n=r.value,o=t.fn(n);if(o instanceof Promise)return o.then(i=>od(i,r,n,e));od(o,r,n,e)}});function od(e,t,r,n){if(!e){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),t.issues.push(Wi(o))}}var lw=e=>{let t=typeof e;switch(t){case"number":return Number.isNaN(e)?"NaN":"number";case"object":{if(Array.isArray(e))return"array";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return t},dw=()=>{let e={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"}};function t(n){return e[n]??null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"};return n=>{switch(n.code){case"invalid_type":return`Invalid input: expected ${n.expected}, received ${lw(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${Qn(n.values[0])}`:`Invalid option: expected one of ${Gn(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",i=t(n.origin);return i?`Too big: expected ${n.origin??"value"} to have ${o}${n.maximum.toString()} ${i.unit??"elements"}`:`Too big: expected ${n.origin??"value"} to be ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",i=t(n.origin);return i?`Too small: expected ${n.origin} to have ${o}${n.minimum.toString()} ${i.unit}`:`Too small: expected ${n.origin} to be ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Invalid string: must start with "${o.prefix}"`:o.format==="ends_with"?`Invalid string: must end with "${o.suffix}"`:o.format==="includes"?`Invalid string: must include "${o.includes}"`:o.format==="regex"?`Invalid string: must match pattern ${o.pattern}`:`Invalid ${r[o.format]??n.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${n.divisor}`;case"unrecognized_keys":return`Unrecognized key${n.keys.length>1?"s":""}: ${Gn(n.keys,", ")}`;case"invalid_key":return`Invalid key in ${n.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${n.origin}`;default:return"Invalid input"}}};function Qd(){return{localeError:dw()}}var tO=Symbol("ZodOutput"),rO=Symbol("ZodInput"),ss=class{constructor(){this._map=new Map,this._idmap=new Map}add(t,...r){let n=r[0];if(this._map.set(t,n),n&&typeof n=="object"&&"id"in n){if(this._idmap.has(n.id))throw new Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,t)}return this}clear(){return this._map=new Map,this._idmap=new Map,this}remove(t){let r=this._map.get(t);return r&&typeof r=="object"&&"id"in r&&this._idmap.delete(r.id),this._map.delete(t),this}get(t){let r=t._zod.parent;if(r){let n={...this.get(r)??{}};return delete n.id,{...n,...this._map.get(t)}}return this._map.get(t)}has(t){return this._map.has(t)}};function fw(){return new ss}var Zr=fw();function Yd(e,t){return new e({type:"string",...R(t)})}function Xd(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...R(t)})}function as(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...R(t)})}function ef(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...R(t)})}function tf(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...R(t)})}function rf(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...R(t)})}function nf(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...R(t)})}function of(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...R(t)})}function sf(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...R(t)})}function af(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...R(t)})}function cf(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...R(t)})}function uf(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...R(t)})}function lf(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...R(t)})}function df(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...R(t)})}function ff(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...R(t)})}function pf(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...R(t)})}function mf(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...R(t)})}function hf(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...R(t)})}function gf(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...R(t)})}function yf(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...R(t)})}function _f(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...R(t)})}function wf(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...R(t)})}function vf(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...R(t)})}function bf(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...R(t)})}function xf(e,t){return new e({type:"string",format:"date",check:"string_format",...R(t)})}function kf(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...R(t)})}function $f(e,t){return new e({type:"string",format:"duration",check:"string_format",...R(t)})}function Sf(e,t){return new e({type:"number",checks:[],...R(t)})}function Ef(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...R(t)})}function Tf(e,t){return new e({type:"boolean",...R(t)})}function Pf(e,t){return new e({type:"null",...R(t)})}function Rf(e){return new e({type:"unknown"})}function zf(e,t){return new e({type:"never",...R(t)})}function no(e,t){return new ts({check:"less_than",...R(t),value:e,inclusive:!1})}function Ur(e,t){return new ts({check:"less_than",...R(t),value:e,inclusive:!0})}function oo(e,t){return new rs({check:"greater_than",...R(t),value:e,inclusive:!1})}function Fr(e,t){return new rs({check:"greater_than",...R(t),value:e,inclusive:!0})}function io(e,t){return new Dl({check:"multiple_of",...R(t),value:e})}function so(e,t){return new Ml({check:"max_length",...R(t),maximum:e})}function tr(e,t){return new ql({check:"min_length",...R(t),minimum:e})}function ao(e,t){return new Ll({check:"length_equals",...R(t),length:e})}function cs(e,t){return new Bl({check:"string_format",format:"regex",...R(t),pattern:e})}function us(e){return new Zl({check:"string_format",format:"lowercase",...R(e)})}function ls(e){return new Ul({check:"string_format",format:"uppercase",...R(e)})}function ds(e,t){return new Fl({check:"string_format",format:"includes",...R(t),includes:e})}function fs(e,t){return new Vl({check:"string_format",format:"starts_with",...R(t),prefix:e})}function ps(e,t){return new Kl({check:"string_format",format:"ends_with",...R(t),suffix:e})}function Nt(e){return new Hl({check:"overwrite",tx:e})}function ms(e){return Nt(t=>t.normalize(e))}function hs(){return Nt(e=>e.trim())}function gs(){return Nt(e=>e.toLowerCase())}function ys(){return Nt(e=>e.toUpperCase())}function If(e,t,r){return new e({type:"array",element:t,...R(r)})}function Of(e,t,r){let n=R(r);return n.abort??(n.abort=!0),new e({type:"custom",check:"custom",fn:t,...n})}function Af(e,t,r){return new e({type:"custom",check:"custom",fn:t,...R(r)})}function rr(e){return!!e._zod}function Ze(e,t){return rr(e)?Lr(e,t):e.safeParse(t)}function co(e){if(!e)return;let t;if(rr(e)?t=e._zod?.def?.shape:t=e.shape,!!t){if(typeof t=="function")try{return t()}catch{return}return t}}function Nf(e){if(rr(e)){let i=e._zod?.def;if(i){if(i.value!==void 0)return i.value;if(Array.isArray(i.values)&&i.values.length>0)return i.values[0]}}let r=e._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=e.value;if(n!==void 0)return n}var Kr={};Qu(Kr,{ZodISODate:()=>Df,ZodISODateTime:()=>Cf,ZodISODuration:()=>Mf,ZodISOTime:()=>jf,date:()=>ws,datetime:()=>_s,duration:()=>bs,time:()=>vs});var Cf=y("ZodISODateTime",(e,t)=>{gd.init(e,t),te.init(e,t)});function _s(e){return bf(Cf,e)}var Df=y("ZodISODate",(e,t)=>{yd.init(e,t),te.init(e,t)});function ws(e){return xf(Df,e)}var jf=y("ZodISOTime",(e,t)=>{_d.init(e,t),te.init(e,t)});function vs(e){return kf(jf,e)}var Mf=y("ZodISODuration",(e,t)=>{wd.init(e,t),te.init(e,t)});function bs(e){return $f(Mf,e)}var qf=(e,t)=>{Yn.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:r=>nl(e,r)},flatten:{value:r=>rl(e,r)},addIssue:{value:r=>e.issues.push(r)},addIssues:{value:r=>e.issues.push(...r)},isEmpty:{get(){return e.issues.length===0}}})},DO=y("ZodError",qf),Hr=y("ZodError",qf,{Parent:Error});var Lf=ol(Hr),Bf=il(Hr),Zf=Ji(Hr),Uf=Qi(Hr);var oe=y("ZodType",(e,t)=>(G.init(e,t),e.def=t,Object.defineProperty(e,"_def",{value:t}),e.check=(...r)=>e.clone({...t,checks:[...t.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),e.clone=(r,n)=>Qe(e,r,n),e.brand=()=>e,e.register=(r,n)=>(r.add(e,n),e),e.parse=(r,n)=>Lf(e,r,n,{callee:e.parse}),e.safeParse=(r,n)=>Zf(e,r,n),e.parseAsync=async(r,n)=>Bf(e,r,n,{callee:e.parseAsync}),e.safeParseAsync=async(r,n)=>Uf(e,r,n),e.spa=e.safeParseAsync,e.refine=(r,n)=>e.check(uv(r,n)),e.superRefine=r=>e.check(lv(r)),e.overwrite=r=>e.check(Nt(r)),e.optional=()=>ne(e),e.nullable=()=>Kf(e),e.nullish=()=>ne(Kf(e)),e.nonoptional=r=>rv(e,r),e.array=()=>q(e),e.or=r=>Y([e,r]),e.and=r=>lo(e,r),e.transform=r=>ks(e,Yf(r)),e.default=r=>Xw(e,r),e.prefault=r=>tv(e,r),e.catch=r=>ov(e,r),e.pipe=r=>ks(e,r),e.readonly=()=>av(e),e.describe=r=>{let n=e.clone();return Zr.add(n,{description:r}),n},Object.defineProperty(e,"description",{get(){return Zr.get(e)?.description},configurable:!0}),e.meta=(...r)=>{if(r.length===0)return Zr.get(e);let n=e.clone();return Zr.add(n,r[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e)),Hf=y("_ZodString",(e,t)=>{ro.init(e,t),oe.init(e,t);let r=e._zod.bag;e.format=r.format??null,e.minLength=r.minimum??null,e.maxLength=r.maximum??null,e.regex=(...n)=>e.check(cs(...n)),e.includes=(...n)=>e.check(ds(...n)),e.startsWith=(...n)=>e.check(fs(...n)),e.endsWith=(...n)=>e.check(ps(...n)),e.min=(...n)=>e.check(tr(...n)),e.max=(...n)=>e.check(so(...n)),e.length=(...n)=>e.check(ao(...n)),e.nonempty=(...n)=>e.check(tr(1,...n)),e.lowercase=n=>e.check(us(n)),e.uppercase=n=>e.check(ls(n)),e.trim=()=>e.check(hs()),e.normalize=(...n)=>e.check(ms(...n)),e.toLowerCase=()=>e.check(gs()),e.toUpperCase=()=>e.check(ys())}),bw=y("ZodString",(e,t)=>{ro.init(e,t),Hf.init(e,t),e.email=r=>e.check(Xd(xw,r)),e.url=r=>e.check(of(kw,r)),e.jwt=r=>e.check(vf(Mw,r)),e.emoji=r=>e.check(sf($w,r)),e.guid=r=>e.check(as(Ff,r)),e.uuid=r=>e.check(ef(uo,r)),e.uuidv4=r=>e.check(tf(uo,r)),e.uuidv6=r=>e.check(rf(uo,r)),e.uuidv7=r=>e.check(nf(uo,r)),e.nanoid=r=>e.check(af(Sw,r)),e.guid=r=>e.check(as(Ff,r)),e.cuid=r=>e.check(cf(Ew,r)),e.cuid2=r=>e.check(uf(Tw,r)),e.ulid=r=>e.check(lf(Pw,r)),e.base64=r=>e.check(yf(Cw,r)),e.base64url=r=>e.check(_f(Dw,r)),e.xid=r=>e.check(df(Rw,r)),e.ksuid=r=>e.check(ff(zw,r)),e.ipv4=r=>e.check(pf(Iw,r)),e.ipv6=r=>e.check(mf(Ow,r)),e.cidrv4=r=>e.check(hf(Aw,r)),e.cidrv6=r=>e.check(gf(Nw,r)),e.e164=r=>e.check(wf(jw,r)),e.datetime=r=>e.check(_s(r)),e.date=r=>e.check(ws(r)),e.time=r=>e.check(vs(r)),e.duration=r=>e.check(bs(r))});function g(e){return Yd(bw,e)}var te=y("ZodStringFormat",(e,t)=>{Q.init(e,t),Hf.init(e,t)}),xw=y("ZodEmail",(e,t)=>{ad.init(e,t),te.init(e,t)});var Ff=y("ZodGUID",(e,t)=>{id.init(e,t),te.init(e,t)});var uo=y("ZodUUID",(e,t)=>{sd.init(e,t),te.init(e,t)});var kw=y("ZodURL",(e,t)=>{cd.init(e,t),te.init(e,t)});var $w=y("ZodEmoji",(e,t)=>{ud.init(e,t),te.init(e,t)});var Sw=y("ZodNanoID",(e,t)=>{ld.init(e,t),te.init(e,t)});var Ew=y("ZodCUID",(e,t)=>{dd.init(e,t),te.init(e,t)});var Tw=y("ZodCUID2",(e,t)=>{fd.init(e,t),te.init(e,t)});var Pw=y("ZodULID",(e,t)=>{pd.init(e,t),te.init(e,t)});var Rw=y("ZodXID",(e,t)=>{md.init(e,t),te.init(e,t)});var zw=y("ZodKSUID",(e,t)=>{hd.init(e,t),te.init(e,t)});var Iw=y("ZodIPv4",(e,t)=>{vd.init(e,t),te.init(e,t)});var Ow=y("ZodIPv6",(e,t)=>{bd.init(e,t),te.init(e,t)});var Aw=y("ZodCIDRv4",(e,t)=>{xd.init(e,t),te.init(e,t)});var Nw=y("ZodCIDRv6",(e,t)=>{kd.init(e,t),te.init(e,t)});var Cw=y("ZodBase64",(e,t)=>{Sd.init(e,t),te.init(e,t)});var Dw=y("ZodBase64URL",(e,t)=>{Ed.init(e,t),te.init(e,t)});var jw=y("ZodE164",(e,t)=>{Td.init(e,t),te.init(e,t)});var Mw=y("ZodJWT",(e,t)=>{Pd.init(e,t),te.init(e,t)});var Wf=y("ZodNumber",(e,t)=>{os.init(e,t),oe.init(e,t),e.gt=(n,o)=>e.check(oo(n,o)),e.gte=(n,o)=>e.check(Fr(n,o)),e.min=(n,o)=>e.check(Fr(n,o)),e.lt=(n,o)=>e.check(no(n,o)),e.lte=(n,o)=>e.check(Ur(n,o)),e.max=(n,o)=>e.check(Ur(n,o)),e.int=n=>e.check(Vf(n)),e.safe=n=>e.check(Vf(n)),e.positive=n=>e.check(oo(0,n)),e.nonnegative=n=>e.check(Fr(0,n)),e.negative=n=>e.check(no(0,n)),e.nonpositive=n=>e.check(Ur(0,n)),e.multipleOf=(n,o)=>e.check(io(n,o)),e.step=(n,o)=>e.check(io(n,o)),e.finite=()=>e;let r=e._zod.bag;e.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),e.isFinite=!0,e.format=r.format??null});function V(e){return Sf(Wf,e)}var qw=y("ZodNumberFormat",(e,t)=>{Rd.init(e,t),Wf.init(e,t)});function Vf(e){return Ef(qw,e)}var Lw=y("ZodBoolean",(e,t)=>{zd.init(e,t),oe.init(e,t)});function ce(e){return Tf(Lw,e)}var Bw=y("ZodNull",(e,t)=>{Id.init(e,t),oe.init(e,t)});function Gf(e){return Pf(Bw,e)}var Zw=y("ZodUnknown",(e,t)=>{Od.init(e,t),oe.init(e,t)});function re(){return Rf(Zw)}var Uw=y("ZodNever",(e,t)=>{Ad.init(e,t),oe.init(e,t)});function Fw(e){return zf(Uw,e)}var Vw=y("ZodArray",(e,t)=>{Nd.init(e,t),oe.init(e,t),e.element=t.element,e.min=(r,n)=>e.check(tr(r,n)),e.nonempty=r=>e.check(tr(1,r)),e.max=(r,n)=>e.check(so(r,n)),e.length=(r,n)=>e.check(ao(r,n)),e.unwrap=()=>e.element});function q(e,t){return If(Vw,e,t)}var Jf=y("ZodObject",(e,t)=>{Cd.init(e,t),oe.init(e,t),F.defineLazy(e,"shape",()=>t.shape),e.keyof=()=>Se(Object.keys(e._zod.def.shape)),e.catchall=r=>e.clone({...e._zod.def,catchall:r}),e.passthrough=()=>e.clone({...e._zod.def,catchall:re()}),e.loose=()=>e.clone({...e._zod.def,catchall:re()}),e.strict=()=>e.clone({...e._zod.def,catchall:Fw()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=r=>F.extend(e,r),e.merge=r=>F.merge(e,r),e.pick=r=>F.pick(e,r),e.omit=r=>F.omit(e,r),e.partial=(...r)=>F.partial(Xf,e,r[0]),e.required=(...r)=>F.required(ep,e,r[0])});function k(e,t){let r={type:"object",get shape(){return F.assignProp(this,"shape",{...e}),this.shape},...F.normalizeParams(t)};return new Jf(r)}function be(e,t){return new Jf({type:"object",get shape(){return F.assignProp(this,"shape",{...e}),this.shape},catchall:re(),...F.normalizeParams(t)})}var Qf=y("ZodUnion",(e,t)=>{is.init(e,t),oe.init(e,t),e.options=t.options});function Y(e,t){return new Qf({type:"union",options:e,...F.normalizeParams(t)})}var Kw=y("ZodDiscriminatedUnion",(e,t)=>{Qf.init(e,t),Dd.init(e,t)});function $s(e,t,r){return new Kw({type:"union",options:t,discriminator:e,...F.normalizeParams(r)})}var Hw=y("ZodIntersection",(e,t)=>{jd.init(e,t),oe.init(e,t)});function lo(e,t){return new Hw({type:"intersection",left:e,right:t})}var Ww=y("ZodRecord",(e,t)=>{Md.init(e,t),oe.init(e,t),e.keyType=t.keyType,e.valueType=t.valueType});function J(e,t,r){return new Ww({type:"record",keyType:e,valueType:t,...F.normalizeParams(r)})}var xs=y("ZodEnum",(e,t)=>{qd.init(e,t),oe.init(e,t),e.enum=t.entries,e.options=Object.values(t.entries);let r=new Set(Object.keys(t.entries));e.extract=(n,o)=>{let i={};for(let s of n)if(r.has(s))i[s]=t.entries[s];else throw new Error(`Key ${s} not found in enum`);return new xs({...t,checks:[],...F.normalizeParams(o),entries:i})},e.exclude=(n,o)=>{let i={...t.entries};for(let s of n)if(r.has(s))delete i[s];else throw new Error(`Key ${s} not found in enum`);return new xs({...t,checks:[],...F.normalizeParams(o),entries:i})}});function Se(e,t){let r=Array.isArray(e)?Object.fromEntries(e.map(n=>[n,n])):e;return new xs({type:"enum",entries:r,...F.normalizeParams(t)})}var Gw=y("ZodLiteral",(e,t)=>{Ld.init(e,t),oe.init(e,t),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function $(e,t){return new Gw({type:"literal",values:Array.isArray(e)?e:[e],...F.normalizeParams(t)})}var Jw=y("ZodTransform",(e,t)=>{Bd.init(e,t),oe.init(e,t),e._zod.parse=(r,n)=>{r.addIssue=i=>{if(typeof i=="string")r.issues.push(F.issue(i,r.value,t));else{let s=i;s.fatal&&(s.continue=!1),s.code??(s.code="custom"),s.input??(s.input=r.value),s.inst??(s.inst=e),s.continue??(s.continue=!0),r.issues.push(F.issue(s))}};let o=t.transform(r.value,r);return o instanceof Promise?o.then(i=>(r.value=i,r)):(r.value=o,r)}});function Yf(e){return new Jw({type:"transform",transform:e})}var Xf=y("ZodOptional",(e,t)=>{Zd.init(e,t),oe.init(e,t),e.unwrap=()=>e._zod.def.innerType});function ne(e){return new Xf({type:"optional",innerType:e})}var Qw=y("ZodNullable",(e,t)=>{Ud.init(e,t),oe.init(e,t),e.unwrap=()=>e._zod.def.innerType});function Kf(e){return new Qw({type:"nullable",innerType:e})}var Yw=y("ZodDefault",(e,t)=>{Fd.init(e,t),oe.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Xw(e,t){return new Yw({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():t}})}var ev=y("ZodPrefault",(e,t)=>{Vd.init(e,t),oe.init(e,t),e.unwrap=()=>e._zod.def.innerType});function tv(e,t){return new ev({type:"prefault",innerType:e,get defaultValue(){return typeof t=="function"?t():t}})}var ep=y("ZodNonOptional",(e,t)=>{Kd.init(e,t),oe.init(e,t),e.unwrap=()=>e._zod.def.innerType});function rv(e,t){return new ep({type:"nonoptional",innerType:e,...F.normalizeParams(t)})}var nv=y("ZodCatch",(e,t)=>{Hd.init(e,t),oe.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function ov(e,t){return new nv({type:"catch",innerType:e,catchValue:typeof t=="function"?t:()=>t})}var iv=y("ZodPipe",(e,t)=>{Wd.init(e,t),oe.init(e,t),e.in=t.in,e.out=t.out});function ks(e,t){return new iv({type:"pipe",in:e,out:t})}var sv=y("ZodReadonly",(e,t)=>{Gd.init(e,t),oe.init(e,t)});function av(e){return new sv({type:"readonly",innerType:e})}var tp=y("ZodCustom",(e,t)=>{Jd.init(e,t),oe.init(e,t)});function cv(e){let t=new me({check:"custom"});return t._zod.check=e,t}function rp(e,t){return Of(tp,e??(()=>!0),t)}function uv(e,t={}){return Af(tp,e,t)}function lv(e){let t=cv(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(F.issue(n,r.value,t._zod.def));else{let o=n;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=r.value),o.inst??(o.inst=t),o.continue??(o.continue=!t._zod.def.abort),r.issues.push(F.issue(o))}},e(r.value,r)));return t}function Ss(e,t){return ks(Yf(e),t)}Ae(Qd());var Ts="2025-11-25";var np=[Ts,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],yt="io.modelcontextprotocol/related-task",po="2.0",ae=rp(e=>e!==null&&(typeof e=="object"||typeof e=="function")),op=Y([g(),V().int()]),ip=g(),RA=be({ttl:V().optional(),pollInterval:V().optional()}),dv=k({ttl:V().optional()}),fv=k({taskId:g()}),Ps=be({progressToken:op.optional(),[yt]:fv.optional()}),Ie=k({_meta:Ps.optional()}),Wr=Ie.extend({task:dv.optional()}),sp=e=>Wr.safeParse(e).success,ue=k({method:g(),params:Ie.loose().optional()}),Ne=k({_meta:Ps.optional()}),Ce=k({method:g(),params:Ne.loose().optional()}),le=be({_meta:Ps.optional()}),mo=Y([g(),V().int()]),ap=k({jsonrpc:$(po),id:mo,...ue.shape}).strict(),Rs=e=>ap.safeParse(e).success,cp=k({jsonrpc:$(po),...Ce.shape}).strict(),up=e=>cp.safeParse(e).success,zs=k({jsonrpc:$(po),id:mo,result:le}).strict(),Gr=e=>zs.safeParse(e).success;var O;(function(e){e[e.ConnectionClosed=-32e3]="ConnectionClosed",e[e.RequestTimeout=-32001]="RequestTimeout",e[e.ParseError=-32700]="ParseError",e[e.InvalidRequest=-32600]="InvalidRequest",e[e.MethodNotFound=-32601]="MethodNotFound",e[e.InvalidParams=-32602]="InvalidParams",e[e.InternalError=-32603]="InternalError",e[e.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(O||(O={}));var Is=k({jsonrpc:$(po),id:mo.optional(),error:k({code:V().int(),message:g(),data:re().optional()})}).strict();var lp=e=>Is.safeParse(e).success;var dp=Y([ap,cp,zs,Is]),zA=Y([zs,Is]),Ct=le.strict(),pv=Ne.extend({requestId:mo.optional(),reason:g().optional()}),ho=Ce.extend({method:$("notifications/cancelled"),params:pv}),mv=k({src:g(),mimeType:g().optional(),sizes:q(g()).optional(),theme:Se(["light","dark"]).optional()}),Jr=k({icons:q(mv).optional()}),nr=k({name:g(),title:g().optional()}),fp=nr.extend({...nr.shape,...Jr.shape,version:g(),websiteUrl:g().optional(),description:g().optional()}),hv=lo(k({applyDefaults:ce().optional()}),J(g(),re())),gv=Ss(e=>e&&typeof e=="object"&&!Array.isArray(e)&&Object.keys(e).length===0?{form:{}}:e,lo(k({form:hv.optional(),url:ae.optional()}),J(g(),re()).optional())),yv=be({list:ae.optional(),cancel:ae.optional(),requests:be({sampling:be({createMessage:ae.optional()}).optional(),elicitation:be({create:ae.optional()}).optional()}).optional()}),_v=be({list:ae.optional(),cancel:ae.optional(),requests:be({tools:be({call:ae.optional()}).optional()}).optional()}),wv=k({experimental:J(g(),ae).optional(),sampling:k({context:ae.optional(),tools:ae.optional()}).optional(),elicitation:gv.optional(),roots:k({listChanged:ce().optional()}).optional(),tasks:yv.optional(),extensions:J(g(),ae).optional()}),vv=Ie.extend({protocolVersion:g(),capabilities:wv,clientInfo:fp}),bv=ue.extend({method:$("initialize"),params:vv});var xv=k({experimental:J(g(),ae).optional(),logging:ae.optional(),completions:ae.optional(),prompts:k({listChanged:ce().optional()}).optional(),resources:k({subscribe:ce().optional(),listChanged:ce().optional()}).optional(),tools:k({listChanged:ce().optional()}).optional(),tasks:_v.optional(),extensions:J(g(),ae).optional()}),Os=le.extend({protocolVersion:g(),capabilities:xv,serverInfo:fp,instructions:g().optional()}),kv=Ce.extend({method:$("notifications/initialized"),params:Ne.optional()});var go=ue.extend({method:$("ping"),params:Ie.optional()}),$v=k({progress:V(),total:ne(V()),message:ne(g())}),Sv=k({...Ne.shape,...$v.shape,progressToken:op}),yo=Ce.extend({method:$("notifications/progress"),params:Sv}),Ev=Ie.extend({cursor:ip.optional()}),Qr=ue.extend({params:Ev.optional()}),Yr=le.extend({nextCursor:ip.optional()}),Tv=Se(["working","input_required","completed","failed","cancelled"]),Xr=k({taskId:g(),status:Tv,ttl:Y([V(),Gf()]),createdAt:g(),lastUpdatedAt:g(),pollInterval:ne(V()),statusMessage:ne(g())}),Dt=le.extend({task:Xr}),Pv=Ne.merge(Xr),en=Ce.extend({method:$("notifications/tasks/status"),params:Pv}),_o=ue.extend({method:$("tasks/get"),params:Ie.extend({taskId:g()})}),wo=le.merge(Xr),vo=ue.extend({method:$("tasks/result"),params:Ie.extend({taskId:g()})}),IA=le.loose(),bo=Qr.extend({method:$("tasks/list")}),xo=Yr.extend({tasks:q(Xr)}),ko=ue.extend({method:$("tasks/cancel"),params:Ie.extend({taskId:g()})}),pp=le.merge(Xr),mp=k({uri:g(),mimeType:ne(g()),_meta:J(g(),re()).optional()}),hp=mp.extend({text:g()}),As=g().refine(e=>{try{return atob(e),!0}catch{return!1}},{message:"Invalid Base64 string"}),gp=mp.extend({blob:As}),tn=Se(["user","assistant"]),or=k({audience:q(tn).optional(),priority:V().min(0).max(1).optional(),lastModified:Kr.datetime({offset:!0}).optional()}),yp=k({...nr.shape,...Jr.shape,uri:g(),description:ne(g()),mimeType:ne(g()),size:ne(V()),annotations:or.optional(),_meta:ne(be({}))}),Rv=k({...nr.shape,...Jr.shape,uriTemplate:g(),description:ne(g()),mimeType:ne(g()),annotations:or.optional(),_meta:ne(be({}))}),zv=Qr.extend({method:$("resources/list")}),Ns=Yr.extend({resources:q(yp)}),Iv=Qr.extend({method:$("resources/templates/list")}),Cs=Yr.extend({resourceTemplates:q(Rv)}),Ds=Ie.extend({uri:g()}),Ov=Ds,Av=ue.extend({method:$("resources/read"),params:Ov}),js=le.extend({contents:q(Y([hp,gp]))}),Ms=Ce.extend({method:$("notifications/resources/list_changed"),params:Ne.optional()}),Nv=Ds,Cv=ue.extend({method:$("resources/subscribe"),params:Nv}),Dv=Ds,jv=ue.extend({method:$("resources/unsubscribe"),params:Dv}),Mv=Ne.extend({uri:g()}),qv=Ce.extend({method:$("notifications/resources/updated"),params:Mv}),Lv=k({name:g(),description:ne(g()),required:ne(ce())}),Bv=k({...nr.shape,...Jr.shape,description:ne(g()),arguments:ne(q(Lv)),_meta:ne(be({}))}),Zv=Qr.extend({method:$("prompts/list")}),qs=Yr.extend({prompts:q(Bv)}),Uv=Ie.extend({name:g(),arguments:J(g(),g()).optional()}),Fv=ue.extend({method:$("prompts/get"),params:Uv}),Ls=k({type:$("text"),text:g(),annotations:or.optional(),_meta:J(g(),re()).optional()}),Bs=k({type:$("image"),data:As,mimeType:g(),annotations:or.optional(),_meta:J(g(),re()).optional()}),Zs=k({type:$("audio"),data:As,mimeType:g(),annotations:or.optional(),_meta:J(g(),re()).optional()}),Vv=k({type:$("tool_use"),name:g(),id:g(),input:J(g(),re()),_meta:J(g(),re()).optional()}),Kv=k({type:$("resource"),resource:Y([hp,gp]),annotations:or.optional(),_meta:J(g(),re()).optional()}),Hv=yp.extend({type:$("resource_link")}),Us=Y([Ls,Bs,Zs,Hv,Kv]),Wv=k({role:tn,content:Us}),Fs=le.extend({description:g().optional(),messages:q(Wv)}),Vs=Ce.extend({method:$("notifications/prompts/list_changed"),params:Ne.optional()}),Gv=k({title:g().optional(),readOnlyHint:ce().optional(),destructiveHint:ce().optional(),idempotentHint:ce().optional(),openWorldHint:ce().optional()}),Jv=k({taskSupport:Se(["required","optional","forbidden"]).optional()}),_p=k({...nr.shape,...Jr.shape,description:g().optional(),inputSchema:k({type:$("object"),properties:J(g(),ae).optional(),required:q(g()).optional()}).catchall(re()),outputSchema:k({type:$("object"),properties:J(g(),ae).optional(),required:q(g()).optional()}).catchall(re()).optional(),annotations:Gv.optional(),execution:Jv.optional(),_meta:J(g(),re()).optional()}),Qv=Qr.extend({method:$("tools/list")}),Ks=Yr.extend({tools:q(_p)}),_t=le.extend({content:q(Us).default([]),structuredContent:J(g(),re()).optional(),isError:ce().optional()}),OA=_t.or(le.extend({toolResult:re()})),Yv=Wr.extend({name:g(),arguments:J(g(),re()).optional()}),Xv=ue.extend({method:$("tools/call"),params:Yv}),Hs=Ce.extend({method:$("notifications/tools/list_changed"),params:Ne.optional()}),wp=k({autoRefresh:ce().default(!0),debounceMs:V().int().nonnegative().default(300)}),vp=Se(["debug","info","notice","warning","error","critical","alert","emergency"]),eb=Ie.extend({level:vp}),tb=ue.extend({method:$("logging/setLevel"),params:eb}),rb=Ne.extend({level:vp,logger:g().optional(),data:re()}),nb=Ce.extend({method:$("notifications/message"),params:rb}),ob=k({name:g().optional()}),ib=k({hints:q(ob).optional(),costPriority:V().min(0).max(1).optional(),speedPriority:V().min(0).max(1).optional(),intelligencePriority:V().min(0).max(1).optional()}),sb=k({mode:Se(["auto","required","none"]).optional()}),ab=k({type:$("tool_result"),toolUseId:g().describe("The unique identifier for the corresponding tool call."),content:q(Us).default([]),structuredContent:k({}).loose().optional(),isError:ce().optional(),_meta:J(g(),re()).optional()}),cb=$s("type",[Ls,Bs,Zs]),fo=$s("type",[Ls,Bs,Zs,Vv,ab]),ub=k({role:tn,content:Y([fo,q(fo)]),_meta:J(g(),re()).optional()}),lb=Wr.extend({messages:q(ub),modelPreferences:ib.optional(),systemPrompt:g().optional(),includeContext:Se(["none","thisServer","allServers"]).optional(),temperature:V().optional(),maxTokens:V().int(),stopSequences:q(g()).optional(),metadata:ae.optional(),tools:q(_p).optional(),toolChoice:sb.optional()}),Ws=ue.extend({method:$("sampling/createMessage"),params:lb}),Gs=le.extend({model:g(),stopReason:ne(Se(["endTurn","stopSequence","maxTokens"]).or(g())),role:tn,content:cb}),Js=le.extend({model:g(),stopReason:ne(Se(["endTurn","stopSequence","maxTokens","toolUse"]).or(g())),role:tn,content:Y([fo,q(fo)])}),db=k({type:$("boolean"),title:g().optional(),description:g().optional(),default:ce().optional()}),fb=k({type:$("string"),title:g().optional(),description:g().optional(),minLength:V().optional(),maxLength:V().optional(),format:Se(["email","uri","date","date-time"]).optional(),default:g().optional()}),pb=k({type:Se(["number","integer"]),title:g().optional(),description:g().optional(),minimum:V().optional(),maximum:V().optional(),default:V().optional()}),mb=k({type:$("string"),title:g().optional(),description:g().optional(),enum:q(g()),default:g().optional()}),hb=k({type:$("string"),title:g().optional(),description:g().optional(),oneOf:q(k({const:g(),title:g()})),default:g().optional()}),gb=k({type:$("string"),title:g().optional(),description:g().optional(),enum:q(g()),enumNames:q(g()).optional(),default:g().optional()}),yb=Y([mb,hb]),_b=k({type:$("array"),title:g().optional(),description:g().optional(),minItems:V().optional(),maxItems:V().optional(),items:k({type:$("string"),enum:q(g())}),default:q(g()).optional()}),wb=k({type:$("array"),title:g().optional(),description:g().optional(),minItems:V().optional(),maxItems:V().optional(),items:k({anyOf:q(k({const:g(),title:g()}))}),default:q(g()).optional()}),vb=Y([_b,wb]),bb=Y([gb,yb,vb]),xb=Y([bb,db,fb,pb]),kb=Wr.extend({mode:$("form").optional(),message:g(),requestedSchema:k({type:$("object"),properties:J(g(),xb),required:q(g()).optional()})}),$b=Wr.extend({mode:$("url"),message:g(),elicitationId:g(),url:g().url()}),Sb=Y([kb,$b]),Qs=ue.extend({method:$("elicitation/create"),params:Sb}),Eb=Ne.extend({elicitationId:g()}),Tb=Ce.extend({method:$("notifications/elicitation/complete"),params:Eb}),Ys=le.extend({action:Se(["accept","decline","cancel"]),content:Ss(e=>e===null?void 0:e,J(g(),Y([g(),V(),ce(),q(g())])).optional())}),Pb=k({type:$("ref/resource"),uri:g()});var Rb=k({type:$("ref/prompt"),name:g()}),zb=Ie.extend({ref:Y([Rb,Pb]),argument:k({name:g(),value:g()}),context:k({arguments:J(g(),g()).optional()}).optional()}),Ib=ue.extend({method:$("completion/complete"),params:zb});var Xs=le.extend({completion:be({values:q(g()).max(100),total:ne(V().int()),hasMore:ne(ce())})}),Ob=k({uri:g().startsWith("file://"),name:g().optional(),_meta:J(g(),re()).optional()}),Ab=ue.extend({method:$("roots/list"),params:Ie.optional()}),Nb=le.extend({roots:q(Ob)}),Cb=Ce.extend({method:$("notifications/roots/list_changed"),params:Ne.optional()}),AA=Y([go,bv,Ib,tb,Fv,Zv,zv,Iv,Av,Cv,jv,Xv,Qv,_o,vo,bo,ko]),NA=Y([ho,yo,kv,Cb,en]),CA=Y([Ct,Gs,Js,Ys,Nb,wo,xo,Dt]),DA=Y([go,Ws,Qs,Ab,_o,vo,bo,ko]),jA=Y([ho,yo,nb,qv,Ms,Hs,Vs,en,Tb]),MA=Y([Ct,Os,Xs,Fs,qs,Ns,Cs,js,_t,Ks,wo,xo,Dt]),T=class e extends Error{constructor(t,r,n){super(`MCP error ${t}: ${r}`),this.code=t,this.data=n,this.name="McpError"}static fromError(t,r,n){if(t===O.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Es(o.elicitations,r)}return new e(t,r,n)}},Es=class extends T{constructor(t,r=`URL elicitation${t.length>1?"s":""} required`){super(O.UrlElicitationRequired,r,{elicitations:t})}get elicitations(){return this.data?.elicitations??[]}};function wt(e){return e==="completed"||e==="failed"||e==="cancelled"}var Db=Symbol("Let zodToJsonSchema decide on which parser to use");var yN=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function ea(e){let r=co(e)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Nf(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function ta(e,t){let r=Ze(e,t);if(!r.success)throw r.error;return r.data}var Zb=6e4,$o=class{constructor(t){this._options=t,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(ho,r=>{this._oncancel(r)}),this.setNotificationHandler(yo,r=>{this._onprogress(r)}),this.setRequestHandler(go,r=>({})),this._taskStore=t?.taskStore,this._taskMessageQueue=t?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(_o,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new T(O.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(vo,async(r,n)=>{let o=async()=>{let i=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(i,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,l=c.id,u=this._requestResolvers.get(l);if(u)if(this._requestResolvers.delete(l),a.type==="response")u(c);else{let d=c,f=new T(d.error.code,d.error.message,d.error.data);u(f)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${l}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let s=await this._taskStore.getTask(i,n.sessionId);if(!s)throw new T(O.InvalidParams,`Task not found: ${i}`);if(!wt(s.status))return await this._waitForTaskUpdate(i,n.signal),await o();if(wt(s.status)){let a=await this._taskStore.getTaskResult(i,n.sessionId);return this._clearTaskQueue(i),{...a,_meta:{...a._meta,[yt]:{taskId:i}}}}return await o()};return await o()}),this.setRequestHandler(bo,async(r,n)=>{try{let{tasks:o,nextCursor:i}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:o,nextCursor:i,_meta:{}}}catch(o){throw new T(O.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(ko,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new T(O.InvalidParams,`Task not found: ${r.params.taskId}`);if(wt(o.status))throw new T(O.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 i=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!i)throw new T(O.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...i}}catch(o){throw o instanceof T?o:new T(O.InvalidRequest,`Failed to cancel task: ${o instanceof Error?o.message:String(o)}`)}}))}async _oncancel(t){if(!t.params.requestId)return;this._requestHandlerAbortControllers.get(t.params.requestId)?.abort(t.params.reason)}_setupTimeout(t,r,n,o,i=!1){this._timeoutInfo.set(t,{timeoutId:setTimeout(o,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:i,onTimeout:o})}_resetTimeout(t){let r=this._timeoutInfo.get(t);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(t),T.fromError(O.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(t){let r=this._timeoutInfo.get(t);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(t))}async connect(t){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=t;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=i=>{n?.(i),this._onerror(i)};let o=this._transport?.onmessage;this._transport.onmessage=(i,s)=>{o?.(i,s),Gr(i)||lp(i)?this._onresponse(i):Rs(i)?this._onrequest(i,s):up(i)?this._onnotification(i):this._onerror(new Error(`Unknown message type: ${JSON.stringify(i)}`))},await this._transport.start()}_onclose(){let t=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=T.fromError(O.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of t.values())n(r)}_onerror(t){this.onerror?.(t)}_onnotification(t){let r=this._notificationHandlers.get(t.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(t)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(t,r){let n=this._requestHandlers.get(t.method)??this.fallbackRequestHandler,o=this._transport,i=t.params?._meta?.[yt]?.taskId;if(n===void 0){let u={jsonrpc:"2.0",id:t.id,error:{code:O.MethodNotFound,message:"Method not found"}};i&&this._taskMessageQueue?this._enqueueTaskMessage(i,{type:"error",message:u,timestamp:Date.now()},o?.sessionId).catch(d=>this._onerror(new Error(`Failed to enqueue error response: ${d}`))):o?.send(u).catch(d=>this._onerror(new Error(`Failed to send an error response: ${d}`)));return}let s=new AbortController;this._requestHandlerAbortControllers.set(t.id,s);let a=sp(t.params)?t.params.task:void 0,c=this._taskStore?this.requestTaskStore(t,o?.sessionId):void 0,l={signal:s.signal,sessionId:o?.sessionId,_meta:t.params?._meta,sendNotification:async u=>{if(s.signal.aborted)return;let d={relatedRequestId:t.id};i&&(d.relatedTask={taskId:i}),await this.notification(u,d)},sendRequest:async(u,d,f)=>{if(s.signal.aborted)throw new T(O.ConnectionClosed,"Request was cancelled");let p={...f,relatedRequestId:t.id};i&&!p.relatedTask&&(p.relatedTask={taskId:i});let m=p.relatedTask?.taskId??i;return m&&c&&await c.updateTaskStatus(m,"input_required"),await this.request(u,d,p)},authInfo:r?.authInfo,requestId:t.id,requestInfo:r?.requestInfo,taskId:i,taskStore:c,taskRequestedTtl:a?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{a&&this.assertTaskHandlerCapability(t.method)}).then(()=>n(t,l)).then(async u=>{if(s.signal.aborted)return;let d={result:u,jsonrpc:"2.0",id:t.id};i&&this._taskMessageQueue?await this._enqueueTaskMessage(i,{type:"response",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)},async u=>{if(s.signal.aborted)return;let d={jsonrpc:"2.0",id:t.id,error:{code:Number.isSafeInteger(u.code)?u.code:O.InternalError,message:u.message??"Internal error",...u.data!==void 0&&{data:u.data}}};i&&this._taskMessageQueue?await this._enqueueTaskMessage(i,{type:"error",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)}).catch(u=>this._onerror(new Error(`Failed to send response: ${u}`))).finally(()=>{this._requestHandlerAbortControllers.get(t.id)===s&&this._requestHandlerAbortControllers.delete(t.id)})}_onprogress(t){let{progressToken:r,...n}=t.params,o=Number(r),i=this._progressHandlers.get(o);if(!i){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(t)}`));return}let s=this._responseHandlers.get(o),a=this._timeoutInfo.get(o);if(a&&s&&a.resetTimeoutOnProgress)try{this._resetTimeout(o)}catch(c){this._responseHandlers.delete(o),this._progressHandlers.delete(o),this._cleanupTimeout(o),s(c);return}i(n)}_onresponse(t){let r=Number(t.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),Gr(t))n(t);else{let s=new T(t.error.code,t.error.message,t.error.data);n(s)}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(t)}`));return}this._responseHandlers.delete(r),this._cleanupTimeout(r);let i=!1;if(Gr(t)&&t.result&&typeof t.result=="object"){let s=t.result;if(s.task&&typeof s.task=="object"){let a=s.task;typeof a.taskId=="string"&&(i=!0,this._taskProgressTokens.set(a.taskId,r))}}if(i||this._progressHandlers.delete(r),Gr(t))o(t);else{let s=T.fromError(t.error.code,t.error.message,t.error.data);o(s)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(t,r,n){let{task:o}=n??{};if(!o){try{yield{type:"result",result:await this.request(t,r,n)}}catch(s){yield{type:"error",error:s instanceof T?s:new T(O.InternalError,String(s))}}return}let i;try{let s=await this.request(t,Dt,n);if(s.task)i=s.task.taskId,yield{type:"taskCreated",task:s.task};else throw new T(O.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:i},n);if(yield{type:"taskStatus",task:a},wt(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:i},r,n)}:a.status==="failed"?yield{type:"error",error:new T(O.InternalError,`Task ${i} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new T(O.InternalError,`Task ${i} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:i},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(l=>setTimeout(l,c)),n?.signal?.throwIfAborted()}}catch(s){yield{type:"error",error:s instanceof T?s:new T(O.InternalError,String(s))}}}request(t,r,n){let{relatedRequestId:o,resumptionToken:i,onresumptiontoken:s,task:a,relatedTask:c}=n??{};return new Promise((l,u)=>{let d=b=>{u(b)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(t.method),a&&this.assertTaskCapability(t.method)}catch(b){d(b);return}n?.signal?.throwIfAborted();let f=this._requestMessageId++,p={...t,jsonrpc:"2.0",id:f};n?.onprogress&&(this._progressHandlers.set(f,n.onprogress),p.params={...t.params,_meta:{...t.params?._meta||{},progressToken:f}}),a&&(p.params={...p.params,task:a}),c&&(p.params={...p.params,_meta:{...p.params?._meta||{},[yt]:c}});let m=b=>{this._responseHandlers.delete(f),this._progressHandlers.delete(f),this._cleanupTimeout(f),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:f,reason:String(b)}},{relatedRequestId:o,resumptionToken:i,onresumptiontoken:s}).catch(P=>this._onerror(new Error(`Failed to send cancellation: ${P}`)));let x=b instanceof T?b:new T(O.RequestTimeout,String(b));u(x)};this._responseHandlers.set(f,b=>{if(!n?.signal?.aborted){if(b instanceof Error)return u(b);try{let x=Ze(r,b.result);x.success?l(x.data):u(x.error)}catch(x){u(x)}}}),n?.signal?.addEventListener("abort",()=>{m(n?.signal?.reason)});let h=n?.timeout??Zb,_=()=>m(T.fromError(O.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(f,h,n?.maxTotalTimeout,_,n?.resetTimeoutOnProgress??!1);let w=c?.taskId;if(w){let b=x=>{let P=this._responseHandlers.get(f);P?P(x):this._onerror(new Error(`Response handler missing for side-channeled request ${f}`))};this._requestResolvers.set(f,b),this._enqueueTaskMessage(w,{type:"request",message:p,timestamp:Date.now()}).catch(x=>{this._cleanupTimeout(f),u(x)})}else this._transport.send(p,{relatedRequestId:o,resumptionToken:i,onresumptiontoken:s}).catch(b=>{this._cleanupTimeout(f),u(b)})})}async getTask(t,r){return this.request({method:"tasks/get",params:t},wo,r)}async getTaskResult(t,r,n){return this.request({method:"tasks/result",params:t},r,n)}async listTasks(t,r){return this.request({method:"tasks/list",params:t},xo,r)}async cancelTask(t,r){return this.request({method:"tasks/cancel",params:t},pp,r)}async notification(t,r){if(!this._transport)throw new Error("Not connected");this.assertNotificationCapability(t.method);let n=r?.relatedTask?.taskId;if(n){let a={...t,jsonrpc:"2.0",params:{...t.params,_meta:{...t.params?._meta||{},[yt]:r.relatedTask}}};await this._enqueueTaskMessage(n,{type:"notification",message:a,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(t.method)&&!t.params&&!r?.relatedRequestId&&!r?.relatedTask){if(this._pendingDebouncedNotifications.has(t.method))return;this._pendingDebouncedNotifications.add(t.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(t.method),!this._transport)return;let a={...t,jsonrpc:"2.0"};r?.relatedTask&&(a={...a,params:{...a.params,_meta:{...a.params?._meta||{},[yt]:r.relatedTask}}}),this._transport?.send(a,r).catch(c=>this._onerror(c))});return}let s={...t,jsonrpc:"2.0"};r?.relatedTask&&(s={...s,params:{...s.params,_meta:{...s.params?._meta||{},[yt]:r.relatedTask}}}),await this._transport.send(s,r)}setRequestHandler(t,r){let n=ea(t);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,i)=>{let s=ta(t,o);return Promise.resolve(r(s,i))})}removeRequestHandler(t){this._requestHandlers.delete(t)}assertCanSetRequestHandler(t){if(this._requestHandlers.has(t))throw new Error(`A request handler for ${t} already exists, which would be overridden`)}setNotificationHandler(t,r){let n=ea(t);this._notificationHandlers.set(n,o=>{let i=ta(t,o);return Promise.resolve(r(i))})}removeNotificationHandler(t){this._notificationHandlers.delete(t)}_cleanupTaskProgressHandler(t){let r=this._taskProgressTokens.get(t);r!==void 0&&(this._progressHandlers.delete(r),this._taskProgressTokens.delete(t))}async _enqueueTaskMessage(t,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(t,r,n,o)}async _clearTaskQueue(t,r){if(this._taskMessageQueue){let n=await this._taskMessageQueue.dequeueAll(t,r);for(let o of n)if(o.type==="request"&&Rs(o.message)){let i=o.message.id,s=this._requestResolvers.get(i);s?(s(new T(O.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(i)):this._onerror(new Error(`Resolver missing for request ${i} during task ${t} cleanup`))}}}async _waitForTaskUpdate(t,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(t);o?.pollInterval&&(n=o.pollInterval)}catch{}return new Promise((o,i)=>{if(r.aborted){i(new T(O.InvalidRequest,"Request cancelled"));return}let s=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(s),i(new T(O.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(t,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async o=>{if(!t)throw new Error("No request provided");return await n.createTask(o,t.id,{method:t.method,params:t.params},r)},getTask:async o=>{let i=await n.getTask(o,r);if(!i)throw new T(O.InvalidParams,"Failed to retrieve task: Task not found");return i},storeTaskResult:async(o,i,s)=>{await n.storeTaskResult(o,i,s,r);let a=await n.getTask(o,r);if(a){let c=en.parse({method:"notifications/tasks/status",params:a});await this.notification(c),wt(a.status)&&this._cleanupTaskProgressHandler(o)}},getTaskResult:o=>n.getTaskResult(o,r),updateTaskStatus:async(o,i,s)=>{let a=await n.getTask(o,r);if(!a)throw new T(O.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(wt(a.status))throw new T(O.InvalidParams,`Cannot update task "${o}" from terminal status "${a.status}" to "${i}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(o,i,s,r);let c=await n.getTask(o,r);if(c){let l=en.parse({method:"notifications/tasks/status",params:c});await this.notification(l),wt(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function bp(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function xp(e,t){let r={...e};for(let n in t){let o=n,i=t[o];if(i===void 0)continue;let s=r[o];bp(s)&&bp(i)?r[o]={...s,...i}:r[o]=i}return r}var pg=ji(Bc(),1),mg=ji(fg(),1);function VE(){let e=new pg.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,mg.default)(e),e}var ii=class{constructor(t){this._ajv=t??VE()}getValidator(t){let r="$id"in t&&typeof t.$id=="string"?this._ajv.getSchema(t.$id)??this._ajv.compile(t):this._ajv.compile(t);return n=>r(n)?{valid:!0,data:n,errorMessage:void 0}:{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(r.errors)}}};var si=class{constructor(t){this._client=t}async*callToolStream(t,r=_t,n){let o=this._client,i={...n,task:n?.task??(o.isToolTask(t.name)?{}:void 0)},s=o.requestStream({method:"tools/call",params:t},r,i),a=o.getToolOutputValidator(t.name);for await(let c of s){if(c.type==="result"&&a){let l=c.result;if(!l.structuredContent&&!l.isError){yield{type:"error",error:new T(O.InvalidRequest,`Tool ${t.name} has an output schema but did not return structured content`)};return}if(l.structuredContent)try{let u=a(l.structuredContent);if(!u.valid){yield{type:"error",error:new T(O.InvalidParams,`Structured content does not match the tool's output schema: ${u.errorMessage}`)};return}}catch(u){if(u instanceof T){yield{type:"error",error:u};return}yield{type:"error",error:new T(O.InvalidParams,`Failed to validate structured content: ${u instanceof Error?u.message:String(u)}`)};return}}yield c}}async getTask(t,r){return this._client.getTask({taskId:t},r)}async getTaskResult(t,r,n){return this._client.getTaskResult({taskId:t},r,n)}async listTasks(t,r){return this._client.listTasks(t?{cursor:t}:void 0,r)}async cancelTask(t,r){return this._client.cancelTask({taskId:t},r)}requestStream(t,r,n){return this._client.requestStream(t,r,n)}};function hg(e,t,r){if(!e)throw new Error(`${r} does not support task creation (required for ${t})`);switch(t){case"tools/call":if(!e.tools?.call)throw new Error(`${r} does not support task creation for tools/call (required for ${t})`);break;default:break}}function gg(e,t,r){if(!e)throw new Error(`${r} does not support task creation (required for ${t})`);switch(t){case"sampling/createMessage":if(!e.sampling?.createMessage)throw new Error(`${r} does not support task creation for sampling/createMessage (required for ${t})`);break;case"elicitation/create":if(!e.elicitation?.create)throw new Error(`${r} does not support task creation for elicitation/create (required for ${t})`);break;default:break}}function ai(e,t){if(!(!e||t===null||typeof t!="object")){if(e.type==="object"&&e.properties&&typeof e.properties=="object"){let r=t,n=e.properties;for(let o of Object.keys(n)){let i=n[o];r[o]===void 0&&Object.prototype.hasOwnProperty.call(i,"default")&&(r[o]=i.default),r[o]!==void 0&&ai(i,r[o])}}if(Array.isArray(e.anyOf))for(let r of e.anyOf)typeof r!="boolean"&&ai(r,t);if(Array.isArray(e.oneOf))for(let r of e.oneOf)typeof r!="boolean"&&ai(r,t)}}function KE(e){if(!e)return{supportsFormMode:!1,supportsUrlMode:!1};let t=e.form!==void 0,r=e.url!==void 0;return{supportsFormMode:t||!t&&!r,supportsUrlMode:r}}var ci=class extends $o{constructor(t,r){super(r),this._clientInfo=t,this._cachedToolOutputValidators=new Map,this._cachedKnownTaskTools=new Set,this._cachedRequiredTaskTools=new Set,this._listChangedDebounceTimers=new Map,this._capabilities=r?.capabilities??{},this._jsonSchemaValidator=r?.jsonSchemaValidator??new ii,r?.listChanged&&(this._pendingListChangedConfig=r.listChanged)}_setupListChangedHandlers(t){t.tools&&this._serverCapabilities?.tools?.listChanged&&this._setupListChangedHandler("tools",Hs,t.tools,async()=>(await this.listTools()).tools),t.prompts&&this._serverCapabilities?.prompts?.listChanged&&this._setupListChangedHandler("prompts",Vs,t.prompts,async()=>(await this.listPrompts()).prompts),t.resources&&this._serverCapabilities?.resources?.listChanged&&this._setupListChangedHandler("resources",Ms,t.resources,async()=>(await this.listResources()).resources)}get experimental(){return this._experimental||(this._experimental={tasks:new si(this)}),this._experimental}registerCapabilities(t){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=xp(this._capabilities,t)}setRequestHandler(t,r){let o=co(t)?.method;if(!o)throw new Error("Schema is missing a method literal");let i;if(rr(o)){let a=o;i=a._zod?.def?.value??a.value}else{let a=o;i=a._def?.value??a.value}if(typeof i!="string")throw new Error("Schema method literal must be a string");let s=i;if(s==="elicitation/create"){let a=async(c,l)=>{let u=Ze(Qs,c);if(!u.success){let b=u.error instanceof Error?u.error.message:String(u.error);throw new T(O.InvalidParams,`Invalid elicitation request: ${b}`)}let{params:d}=u.data;d.mode=d.mode??"form";let{supportsFormMode:f,supportsUrlMode:p}=KE(this._capabilities.elicitation);if(d.mode==="form"&&!f)throw new T(O.InvalidParams,"Client does not support form-mode elicitation requests");if(d.mode==="url"&&!p)throw new T(O.InvalidParams,"Client does not support URL-mode elicitation requests");let m=await Promise.resolve(r(c,l));if(d.task){let b=Ze(Dt,m);if(!b.success){let x=b.error instanceof Error?b.error.message:String(b.error);throw new T(O.InvalidParams,`Invalid task creation result: ${x}`)}return b.data}let h=Ze(Ys,m);if(!h.success){let b=h.error instanceof Error?h.error.message:String(h.error);throw new T(O.InvalidParams,`Invalid elicitation result: ${b}`)}let _=h.data,w=d.mode==="form"?d.requestedSchema:void 0;if(d.mode==="form"&&_.action==="accept"&&_.content&&w&&this._capabilities.elicitation?.form?.applyDefaults)try{ai(w,_.content)}catch{}return _};return super.setRequestHandler(t,a)}if(s==="sampling/createMessage"){let a=async(c,l)=>{let u=Ze(Ws,c);if(!u.success){let _=u.error instanceof Error?u.error.message:String(u.error);throw new T(O.InvalidParams,`Invalid sampling request: ${_}`)}let{params:d}=u.data,f=await Promise.resolve(r(c,l));if(d.task){let _=Ze(Dt,f);if(!_.success){let w=_.error instanceof Error?_.error.message:String(_.error);throw new T(O.InvalidParams,`Invalid task creation result: ${w}`)}return _.data}let m=d.tools||d.toolChoice?Js:Gs,h=Ze(m,f);if(!h.success){let _=h.error instanceof Error?h.error.message:String(h.error);throw new T(O.InvalidParams,`Invalid sampling result: ${_}`)}return h.data};return super.setRequestHandler(t,a)}return super.setRequestHandler(t,r)}assertCapability(t,r){if(!this._serverCapabilities?.[t])throw new Error(`Server does not support ${t} (required for ${r})`)}async connect(t,r){if(await super.connect(t),t.sessionId===void 0)try{let n=await this.request({method:"initialize",params:{protocolVersion:Ts,capabilities:this._capabilities,clientInfo:this._clientInfo}},Os,r);if(n===void 0)throw new Error(`Server sent invalid initialize result: ${n}`);if(!np.includes(n.protocolVersion))throw new Error(`Server's protocol version is not supported: ${n.protocolVersion}`);this._serverCapabilities=n.capabilities,this._serverVersion=n.serverInfo,t.setProtocolVersion&&t.setProtocolVersion(n.protocolVersion),this._instructions=n.instructions,await this.notification({method:"notifications/initialized"}),this._pendingListChangedConfig&&(this._setupListChangedHandlers(this._pendingListChangedConfig),this._pendingListChangedConfig=void 0)}catch(n){throw this.close(),n}}getServerCapabilities(){return this._serverCapabilities}getServerVersion(){return this._serverVersion}getInstructions(){return this._instructions}assertCapabilityForMethod(t){switch(t){case"logging/setLevel":if(!this._serverCapabilities?.logging)throw new Error(`Server does not support logging (required for ${t})`);break;case"prompts/get":case"prompts/list":if(!this._serverCapabilities?.prompts)throw new Error(`Server does not support prompts (required for ${t})`);break;case"resources/list":case"resources/templates/list":case"resources/read":case"resources/subscribe":case"resources/unsubscribe":if(!this._serverCapabilities?.resources)throw new Error(`Server does not support resources (required for ${t})`);if(t==="resources/subscribe"&&!this._serverCapabilities.resources.subscribe)throw new Error(`Server does not support resource subscriptions (required for ${t})`);break;case"tools/call":case"tools/list":if(!this._serverCapabilities?.tools)throw new Error(`Server does not support tools (required for ${t})`);break;case"completion/complete":if(!this._serverCapabilities?.completions)throw new Error(`Server does not support completions (required for ${t})`);break;case"initialize":break;case"ping":break}}assertNotificationCapability(t){switch(t){case"notifications/roots/list_changed":if(!this._capabilities.roots?.listChanged)throw new Error(`Client does not support roots list changed notifications (required for ${t})`);break;case"notifications/initialized":break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(t){if(this._capabilities)switch(t){case"sampling/createMessage":if(!this._capabilities.sampling)throw new Error(`Client does not support sampling capability (required for ${t})`);break;case"elicitation/create":if(!this._capabilities.elicitation)throw new Error(`Client does not support elicitation capability (required for ${t})`);break;case"roots/list":if(!this._capabilities.roots)throw new Error(`Client does not support roots capability (required for ${t})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Client does not support tasks capability (required for ${t})`);break;case"ping":break}}assertTaskCapability(t){hg(this._serverCapabilities?.tasks?.requests,t,"Server")}assertTaskHandlerCapability(t){this._capabilities&&gg(this._capabilities.tasks?.requests,t,"Client")}async ping(t){return this.request({method:"ping"},Ct,t)}async complete(t,r){return this.request({method:"completion/complete",params:t},Xs,r)}async setLoggingLevel(t,r){return this.request({method:"logging/setLevel",params:{level:t}},Ct,r)}async getPrompt(t,r){return this.request({method:"prompts/get",params:t},Fs,r)}async listPrompts(t,r){return this.request({method:"prompts/list",params:t},qs,r)}async listResources(t,r){return this.request({method:"resources/list",params:t},Ns,r)}async listResourceTemplates(t,r){return this.request({method:"resources/templates/list",params:t},Cs,r)}async readResource(t,r){return this.request({method:"resources/read",params:t},js,r)}async subscribeResource(t,r){return this.request({method:"resources/subscribe",params:t},Ct,r)}async unsubscribeResource(t,r){return this.request({method:"resources/unsubscribe",params:t},Ct,r)}async callTool(t,r=_t,n){if(this.isToolTaskRequired(t.name))throw new T(O.InvalidRequest,`Tool "${t.name}" requires task-based execution. Use client.experimental.tasks.callToolStream() instead.`);let o=await this.request({method:"tools/call",params:t},r,n),i=this.getToolOutputValidator(t.name);if(i){if(!o.structuredContent&&!o.isError)throw new T(O.InvalidRequest,`Tool ${t.name} has an output schema but did not return structured content`);if(o.structuredContent)try{let s=i(o.structuredContent);if(!s.valid)throw new T(O.InvalidParams,`Structured content does not match the tool's output schema: ${s.errorMessage}`)}catch(s){throw s instanceof T?s:new T(O.InvalidParams,`Failed to validate structured content: ${s instanceof Error?s.message:String(s)}`)}}return o}isToolTask(t){return this._serverCapabilities?.tasks?.requests?.tools?.call?this._cachedKnownTaskTools.has(t):!1}isToolTaskRequired(t){return this._cachedRequiredTaskTools.has(t)}cacheToolMetadata(t){this._cachedToolOutputValidators.clear(),this._cachedKnownTaskTools.clear(),this._cachedRequiredTaskTools.clear();for(let r of t){if(r.outputSchema){let o=this._jsonSchemaValidator.getValidator(r.outputSchema);this._cachedToolOutputValidators.set(r.name,o)}let n=r.execution?.taskSupport;(n==="required"||n==="optional")&&this._cachedKnownTaskTools.add(r.name),n==="required"&&this._cachedRequiredTaskTools.add(r.name)}}getToolOutputValidator(t){return this._cachedToolOutputValidators.get(t)}async listTools(t,r){let n=await this.request({method:"tools/list",params:t},Ks,r);return this.cacheToolMetadata(n.tools),n}_setupListChangedHandler(t,r,n,o){let i=wp.safeParse(n);if(!i.success)throw new Error(`Invalid ${t} listChanged options: ${i.error.message}`);if(typeof n.onChanged!="function")throw new Error(`Invalid ${t} listChanged options: onChanged must be a function`);let{autoRefresh:s,debounceMs:a}=i.data,{onChanged:c}=n,l=async()=>{if(!s){c(null,null);return}try{let d=await o();c(null,d)}catch(d){let f=d instanceof Error?d:new Error(String(d));c(f,null)}},u=()=>{if(a){let d=this._listChangedDebounceTimers.get(t);d&&clearTimeout(d);let f=setTimeout(l,a);this._listChangedDebounceTimers.set(t,f)}else l()};this.setNotificationHandler(r,u)}async sendRootsListChanged(){return this.notification({method:"notifications/roots/list_changed"})}};var sy=ji(oy(),1);import ou from"node:process";import{PassThrough as vT}from"node:stream";var li=class{append(t){this._buffer=this._buffer?Buffer.concat([this._buffer,t]):t}readMessage(){if(!this._buffer)return null;let t=this._buffer.indexOf(`
36
36
  `);if(t===-1)return null;let r=this._buffer.toString("utf8",0,t).replace(/\r$/,"");return this._buffer=this._buffer.subarray(t+1),wT(r)}clear(){this._buffer=void 0}};function wT(e){return dp.parse(JSON.parse(e))}function iy(e){return JSON.stringify(e)+`
37
- `}var bT=ou.platform==="win32"?["APPDATA","HOMEDRIVE","HOMEPATH","LOCALAPPDATA","PATH","PROCESSOR_ARCHITECTURE","SYSTEMDRIVE","SYSTEMROOT","TEMP","USERNAME","USERPROFILE","PROGRAMFILES"]:["HOME","LOGNAME","PATH","SHELL","TERM","USER"];function xT(){let e={};for(let t of bT){let r=ou.env[t];r!==void 0&&(r.startsWith("()")||(e[t]=r))}return e}var di=class{constructor(t){this._readBuffer=new li,this._stderrStream=null,this._serverParams=t,(t.stderr==="pipe"||t.stderr==="overlapped")&&(this._stderrStream=new vT)}async start(){if(this._process)throw new Error("StdioClientTransport already started! If using Client class, note that connect() calls start() automatically.");return new Promise((t,r)=>{this._process=(0,sy.default)(this._serverParams.command,this._serverParams.args??[],{env:{...xT(),...this._serverParams.env},stdio:["pipe","pipe",this._serverParams.stderr??"inherit"],shell:!1,windowsHide:ou.platform==="win32",cwd:this._serverParams.cwd}),this._process.on("error",n=>{r(n),this.onerror?.(n)}),this._process.on("spawn",()=>{t()}),this._process.on("close",n=>{this._process=void 0,this.onclose?.()}),this._process.stdin?.on("error",n=>{this.onerror?.(n)}),this._process.stdout?.on("data",n=>{this._readBuffer.append(n),this.processReadBuffer()}),this._process.stdout?.on("error",n=>{this.onerror?.(n)}),this._stderrStream&&this._process.stderr&&this._process.stderr.pipe(this._stderrStream)})}get stderr(){return this._stderrStream?this._stderrStream:this._process?.stderr??null}get pid(){return this._process?.pid??null}processReadBuffer(){for(;;)try{let t=this._readBuffer.readMessage();if(t===null)break;this.onmessage?.(t)}catch(t){this.onerror?.(t)}}async close(){if(this._process){let t=this._process;this._process=void 0;let r=new Promise(n=>{t.once("close",()=>{n()})});try{t.stdin?.end()}catch{}if(await Promise.race([r,new Promise(n=>setTimeout(n,2e3).unref())]),t.exitCode===null){try{t.kill("SIGTERM")}catch{}await Promise.race([r,new Promise(n=>setTimeout(n,2e3).unref())])}if(t.exitCode===null)try{t.kill("SIGKILL")}catch{}}this._readBuffer.clear()}send(t){return new Promise(r=>{if(!this._process?.stdin)throw new Error("Not connected");let n=iy(t);this._process.stdin.write(n)?r():this._process.stdin.once("drain",r)})}};var kT=["conversations_list","conversation_get","messages_read","attachments_fetch","events_poll","events_wait","messages_send","channels_list","permissions_list_open","permissions_respond"];var Ht=class e{client;transport;constructor(t,r){this.client=t,this.transport=r}static async connect(t={}){let r=new di({command:t.command??"hermes",args:t.args??["mcp","serve"],cwd:t.cwd,env:t.env??$T(),stderr:t.stderr??"pipe"}),n=new ci({name:"brain-channel-bridge",version:"0.0.0"},{capabilities:{}});try{await n.connect(r);let o=new e(n,r);return await o.assertHermesContract(),o}catch(o){throw await n.close().catch(()=>{}),await r.close().catch(()=>{}),o}}async poll(t={}){let r=await this.callJson("events_poll",{after_cursor:t.afterCursor,session_key:t.sessionKey,limit:t.limit});return{events:ET(r).map(TT),nextCursor:ay(r,["next_cursor","nextCursor","cursor"]),raw:r}}async send(t,r){let n=await this.callJson("messages_send",{target:t,message:r});return{ok:!fi(n,["error"])&&zT(n,["ok","success"],!0),target:t,messageId:We(n,["message_id","messageId","id"]),raw:n}}async channels(t={}){let r=await this.callJson("channels_list",{platform:t.platform});return{channels:PT(r).map(RT).filter(n=>n!=null),raw:r}}async close(){await this.client.close(),await this.transport.close().catch(()=>{})}async assertHermesContract(){let{tools:t}=await this.client.listTools(),r=new Set(t.map(o=>o.name)),n=kT.filter(o=>!r.has(o));if(n.length>0)throw new Error(`Hermes channel bridge is missing tool(s): ${n.join(", ")}`)}async callJson(t,r){let n=await this.client.callTool({name:t,arguments:ST(r)},gt);if(n.structuredContent&&Object.keys(n.structuredContent).length>0)return n.structuredContent;let i=(Array.isArray(n.content)?n.content:[]).filter(s=>s.type==="text").map(s=>s.text??"").join(`
38
- `).trim();if(!i)return{};try{return JSON.parse(i)}catch{return{text:i}}}};function $T(){let e={};for(let[t,r]of Object.entries(process.env))typeof r=="string"&&(e[t]=r);return e}function ST(e){return Object.fromEntries(Object.entries(e).filter(([,t])=>t!==void 0))}function ET(e){if(Array.isArray(e))return e;if(!Sr(e))return[];let t=e.events;if(Array.isArray(t))return t;let r=e.event;return r&&Sr(r)?[r]:[]}function TT(e){return Sr(e)?{id:We(e,["id","message_id","messageId"]),cursor:ay(e,["cursor"]),type:We(e,["type","event_type","eventType"]),platform:We(e,["platform"]),target:We(e,["target"]),sessionKey:We(e,["session_key","sessionKey"]),timestamp:We(e,["timestamp","created_at","createdAt"]),message:We(e,["message","text","content"]),raw:e}:{raw:e}}function PT(e){if(Array.isArray(e))return e;if(!Sr(e))return[];for(let t of["channels","targets","conversations"]){let r=e[t];if(Array.isArray(r))return r}return[]}function RT(e){if(!Sr(e))return null;let t=We(e,["target","id","session_key","sessionKey"]);return t?{target:t,platform:We(e,["platform"]),name:We(e,["name","display_name","displayName","chat_name","chatName"]),raw:e}:null}function We(e,t){let r=fi(e,t);return typeof r=="string"?r:void 0}function zT(e,t,r){let n=fi(e,t);return typeof n=="boolean"?n:r}function ay(e,t){let r=fi(e,t);return typeof r=="string"||typeof r=="number"?r:void 0}function fi(e,t){if(Sr(e))for(let r of t){let n=e[r];if(n!=null)return n}}function Sr(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}import{mkdir as Wz,writeFile as Gz}from"node:fs/promises";import{join as v_}from"node:path";import{basename as w_}from"node:path";import{createHash as nP,randomUUID as $u}from"node:crypto";import{spawn as oP}from"node:child_process";import{constants as bu}from"node:fs";import{readFileSync as iP}from"node:fs";import{mkdir as Ty,open as sP,readFile as aP,rename as cq,rm as jn,stat as uq,writeFile as lq}from"node:fs/promises";import{tmpdir as cP}from"node:os";import{dirname as Pr,join as Le,resolve as yi}from"node:path";import{fileURLToPath as uP}from"node:url";var pi=class extends Error{constructor(t,r){super(t===0?r:`line ${t}: ${r}`),this.name="ToonError",this.line=t,this.reason=r}};function E(e,t){return new pi(e,t)}var _e=",";function iu(e){let t=e.split(`
39
- `);return t.length>0&&t[t.length-1]===""&&t.pop(),t.map(r=>r.endsWith("\r")?r.slice(0,-1):r)}function ot(e){return E(e,"invalid quoted string")}function Et(e,t){if(e==="")return"";if(e.startsWith('"'))return cy(e,t);if(e.includes('"'))throw ot(t);return e==="true"?!0:e==="false"?!1:e==="null"?null:IT(e)?Number(e):e}function Wt(e,t){let r=e.trim();if(r.startsWith('"'))return[cy(r,t),!0];if(r.includes('"')||/\s/.test(r))throw E(t,"expected non-empty field name");return[r,!1]}function cy(e,t){if(e[0]!=='"')throw ot(t);let r="",n=1;for(;n<e.length;){let o=e[n];if(n+=1,o==='"'){if(e.slice(n).trim()==="")return r;throw ot(t)}if(o==="\\"){let i=e[n];switch(n+=1,i){case'"':r+='"';break;case"\\":r+="\\";break;case"n":r+=`
40
- `;break;case"r":r+="\r";break;case"t":r+=" ";break;case"u":{let s=e.slice(n,n+4);if(!/^[0-9a-fA-F]{4}$/.test(s))throw ot(t);let a=Number.parseInt(s,16);if(a>=55296&&a<=57343)throw ot(t);r+=String.fromCharCode(a),n+=4;break}default:throw ot(t)}continue}if(o<" "&&o!==" ")throw ot(t);r+=o}throw ot(t)}function An(e,t,r){if(e==="")return[];let n=[],o=0,i=!1,s=!1;for(let a=0;a<e.length;a+=1){let c=e[a];if(s){s=!1;continue}c==="\\"&&i?s=!0:c==='"'?i=!i:c===t&&!i&&(n.push(e.slice(o,a).trim()),o=a+1)}if(i||s)throw ot(r);return n.push(e.slice(o).trim()),n}function ze(e,t,r){let n=!1,o=!1;for(let i=0;i<e.length;i+=1){let s=e[i];if(o){o=!1;continue}if(s==="\\"&&n)o=!0;else if(s==='"')n=!n;else if(s===t&&!n)return i}if(n||o)throw ot(r);return-1}function IT(e){return/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$/.test(e)}function OT(e){return/^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$/.test(e)}function AT(e){if(Object.is(e,-0))return"0";if(!Number.isFinite(e))throw E(0,"number is not representable in TOON");return String(e)}function mi(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"}function Tt(e,t){if(e===null)return"null";if(typeof e=="boolean")return e?"true":"false";if(typeof e=="number")return AT(e);if(typeof e=="string")return CT(e,t);throw E(0,"not a primitive")}function NT(e){return/^[A-Za-z_][A-Za-z0-9_.]*$/.test(e)}function it(e){return NT(e)?e:uy(e)}function CT(e,t){return DT(e,t)?uy(e):e}function DT(e,t){return e===""||e.trim()!==e||e==="true"||e==="false"||e==="null"||OT(e)||/[:"\\[\]{}]/.test(e)||/[\u0000-\u001f]/.test(e)||e.includes(t)||e.startsWith("-")}function uy(e){let t='"';for(let r of e)switch(r){case'"':t+='\\"';break;case"\\":t+="\\\\";break;case`
41
- `:t+="\\n";break;case"\r":t+="\\r";break;case" ":t+="\\t";break;default:r<" "?t+=`\\u${r.charCodeAt(0).toString(16).padStart(4,"0")}`:t+=r}return`${t}"`}function Nn(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}var fu=2;function jT(e={}){return{indent:Math.max(1,e.indent??fu),strict:e.strict??!0,expandPaths:e.expandPaths==="safe"||e.expandPaths===!0}}function MT(e,t){let r=[],n=!1;return iu(e).forEach((o,i)=>{let s=i+1;if(o.trim()===""){n=!0;return}let a=o.length-o.replace(/^ +/,"").length;if(o[a]===" ")throw E(s,"invalid indentation");if(t.strict&&a%t.indent!==0)throw E(s,"invalid indentation");r.push({number:s,depth:Math.floor(a/t.indent),content:o.slice(a),blankBefore:n}),n=!1}),r}function Pt(e,t){let r=jT(t),n=MT(e,r),o=n[0];if(o===void 0)return{};if(o.depth!==0)throw E(o.number,"invalid indentation");let i=n.length===1;if(i&&o.content.trim()==="[]")return[];if(o.content.startsWith("[")){let l;try{l=hu(o.content,ze(o.content,":",o.number))}catch(u){if(r.strict)throw lu(u,o.number);l=void 0}if(l!==void 0)return BT(l,n,r)}if(i&&ze(o.content,":",o.number)===-1)return Et(o.content.trim(),o.number);let s={index:0},a=pu(n,s,0,r),c=n[s.index];if(c!==void 0)throw E(c.number,"expected end of document");return a}function pu(e,t,r,n){let o={};for(;t.index<e.length;){let i=e[t.index];if(i.depth<r)break;if(i.depth>r)throw E(i.number,"invalid indentation");let{key:s,quoted:a,value:c}=qT(e,t,r,n);fy(o,s,a,c,n,i.number)}return o}function qT(e,t,r,n){let o=e[t.index],i=o.content,s=ze(i,":",o.number);if(s===-1)throw E(o.number,"expected `key: value`");let a=i.slice(0,s),c=i.slice(s+1),l=ze(a,"[",o.number),u=ze(a,"{",o.number);if(u!==-1&&(l===-1||u<l)){let m;try{m=VT(a)}catch(_){if(n.strict)throw lu(_,o.number);t.index+=1;let w=su(e,t,r,c,o.number,n);return{key:a.trim(),quoted:!1,value:w}}if(c.trim()!=="")throw E(o.number,"expected keyed map rows");let h=LT(m,e,t,r+1,n);return{key:m.key,quoted:m.keyQuoted,value:h}}if(l!==-1){let m;try{m=hu(a,s)}catch(_){if(n.strict)throw lu(_,o.number);t.index+=1;let w=su(e,t,r,c,o.number,n);return{key:a.trim(),quoted:!1,value:w}}if(m.key===""&&!m.keyQuoted)throw E(o.number,"expected non-empty field name");let h=mu(m,c,e,t,r,n);return{key:m.key,quoted:m.keyQuoted,value:h}}let[d,f]=Wt(a,o.number);if(d===""&&!f)throw E(o.number,"expected non-empty field name");t.index+=1;let p=su(e,t,r,c,o.number,n);return{key:d,quoted:f,value:p}}function su(e,t,r,n,o,i){let s=n.trim();if(s==="[]")return[];if(s!=="")return Et(s,o);let a=e[t.index];return a!==void 0&&a.depth>r?pu(e,t,r+1,i):{}}function LT(e,t,r,n,o){let i={};for(r.index+=1;r.index<t.length;){let s=t[r.index];if(s.depth<n)break;if(s.depth>n)throw E(s.number,"invalid indentation");if(s.blankBefore&&o.strict)throw E(s.number,"blank line inside keyed map");let a=ze(s.content,":",s.number);if(a===-1)throw E(s.number,"expected `key: value`");let[c,l]=Wt(s.content.slice(0,a),s.number);if(c===""&&!l)throw E(s.number,"expected non-empty field name");let u=An(s.content.slice(a+1).trim(),e.delimiter,s.number);if(u.length!==e.fields.length)throw E(s.number,"keyed map row length mismatch");let d={};e.fields.forEach((f,p)=>{Cn(d,f,Et(u[p],s.number),o,s.number)}),fy(i,c,l,d,o,s.number),r.index+=1}return i}function BT(e,t,r){let n=t[0],o=ze(n.content,":",n.number);if(o===-1)throw E(n.number,"expected `key: value`");let i=n.content.slice(o+1),s={index:0},a=mu(e,i,t,s,0,r),c=t[s.index];if(c!==void 0)throw E(c.number,"expected end of document");return a}function mu(e,t,r,n,o,i){let s=r[n.index].number,a=t.trim();if(n.index+=1,e.fields!==void 0){if(a!=="")throw E(s,"expected tabular rows");return ZT(e,e.fields,r,n,o+1,i)}if(a!==""){let c=An(a,e.delimiter,s).map(l=>Et(l,s));if(c.length!==e.len)throw E(s,"array length mismatch");return c}return UT(e,r,n,o+1,i)}function ZT(e,t,r,n,o,i){let s=[];for(;s.length<e.len;){let c=r[n.index];if(c===void 0)throw cu(r,n.index);if(c.depth<o)break;if(c.depth>o)throw E(c.number,"invalid indentation");if(c.blankBefore&&i.strict)throw E(c.number,"blank line inside array");if(!ly(c.content,e.delimiter,c.number))break;let l=An(c.content,e.delimiter,c.number);if(l.length!==t.length)throw E(c.number,"array row length mismatch");let u={};t.forEach((d,f)=>{Cn(u,d,Et(l[f],c.number),i,c.number)}),s.push(u),n.index+=1}if(s.length!==e.len)throw cu(r,n.index);let a=r[n.index];if(a!==void 0&&a.depth>=o&&ly(a.content,e.delimiter,a.number))throw E(a.number,"array length mismatch");return s}function ly(e,t,r){let n=ze(e,":",r);if(n===-1)return!0;let o=ze(e,t,r);return o===-1?!1:o<n}function UT(e,t,r,n,o){let i=[];for(;i.length<e.len;){let a=t[r.index];if(a===void 0||a.depth<n)throw cu(t,r.index);if(a.depth>n)throw E(a.number,"invalid indentation");if(a.blankBefore&&o.strict)throw E(a.number,"blank line inside array");i.push(FT(t,r,n,o))}let s=t[r.index];if(s!==void 0&&s.depth>=n)throw E(s.number,"array length mismatch");return i}function FT(e,t,r,n){let o=e[t.index];if(!o.content.startsWith("-"))throw E(o.number,"expected array item");let i=o.content.slice(1).replace(/^\s+/,"");if(i==="")return t.index+=1,{};if(i.startsWith("[")){let s=ze(i,":",o.number),a;try{a=hu(i,s)}catch{a=void 0}if(a!==void 0){let c=i.slice(s+1);return mu(a,c,e,t,r,n)}}if(ze(i,":",o.number)!==-1){let s=[{number:o.number,depth:r+1,content:i,blankBefore:!1}];for(t.index+=1;t.index<e.length;){let a=e[t.index];if(a.depth<=r)break;s.push(a),t.index+=1}return pu(s,{index:0},r+1,n)}return t.index+=1,Et(i,o.number)}function cu(e,t){let r=e[t]??e[e.length-1];return E(r===void 0?1:r.number,"array length mismatch")}function hu(e,t){if(t===-1)throw E(0,"array header missing colon");let r=e.slice(0,t),n=ze(r,"[",0);if(n===-1)throw E(0,"invalid array header");let o,i;try{[o,i]=Wt(r.slice(0,n),0)}catch{throw E(0,"invalid array header")}let s=r.slice(n+1),a=s.indexOf("]");if(a===-1)throw E(0,"invalid array header");let c=s.slice(0,a),l=/^[0-9]*/.exec(c)[0];if(l===""||l.length>1&&l.startsWith("0"))throw E(0,"invalid array header");let u=Number.parseInt(l,10),d;switch(c.slice(l.length)){case"":d=",";break;case" ":d=" ";break;case"|":d="|";break;default:throw E(0,"invalid array header")}let f=s.slice(a+1),p;if(f==="")p=void 0;else if(f.startsWith("{")&&f.endsWith("}")&&f.length>=2)try{p=dy(f.slice(1,-1),d)}catch(m){throw E(0,m.reason==="duplicate key"?"duplicate key":"invalid array header")}else throw E(0,"invalid array header");return{key:o,keyQuoted:i,len:u,delimiter:d,fields:p}}function VT(e){let t=ze(e,"{",0);if(t===-1||!e.endsWith("}"))throw E(0,"invalid keyed map header");let r,n;try{[r,n]=Wt(e.slice(0,t),0)}catch{throw E(0,"invalid keyed map header")}if(r===""&&!n)throw E(0,"expected non-empty field name");let o;try{o=dy(e.slice(t+1,-1),_e)}catch(i){throw E(0,i.reason==="duplicate key"?"duplicate key":"invalid keyed map header")}return{key:r,keyQuoted:n,delimiter:_e,fields:o}}function dy(e,t){let r=[],n=0;function o(a,c){let l=0;for(;n<e.length&&!(c&&e[n]==="}");){if(e[n]===t||e[n]==="}")throw E(0,"invalid array header");let u=n;for(;n<e.length;){let f=e[n];if(f==='"'){i();continue}if(f===t||f==="{"||f==="}")break;n+=1}let[d]=Wt(e.slice(u,n),0);if(d==="")throw E(0,"invalid array header");if(l+=1,e[n]==="{"){n+=1;let f=r.length;if(o([...a,d],!0),e[n]!=="}"||r.length===f)throw E(0,"invalid array header");n+=1}else r.push([...a,d]);if(e[n]===t){if(n+=1,n>=e.length||e[n]==="}")throw E(0,"invalid array header");continue}if(c?e[n]==="}":n===e.length)break;throw E(0,"invalid array header")}if(l===0)throw E(0,"invalid array header")}function i(){for(n+=1;n<e.length;){let a=e[n];if(n+=1,a==="\\")n+=1;else if(a==='"')return}}if(o([],!1),n!==e.length)throw E(0,"invalid array header");let s=new Set;for(let a=0;a<r.length;a+=1)for(let c=a+1;c<r.length;c+=1)if(KT(r[a],r[c])||uu(r[a],r[c])||uu(r[c],r[a]))throw E(0,"duplicate key");for(let a of r){let c=a.join("\0");if(s.has(c))throw E(0,"duplicate key");s.add(c)}return r}function KT(e,t){return e.length===t.length&&uu(e,t)}function uu(e,t){return t.every((r,n)=>e[n]===r)}function lu(e,t){return E(t,e.reason??String(e.message))}function fy(e,t,r,n,o,i){if(o.expandPaths&&!r&&t.includes(".")){let s=t.split(".");if(s.every(HT)){Cn(e,s,n,o,i);return}}Cn(e,[t],n,o,i)}function Cn(e,t,r,n,o){let i=t[0],s=Object.prototype.hasOwnProperty.call(e,i);if(t.length===1){if(s&&n.strict)throw E(o,"duplicate key");Nn(e,i,r);return}if(s&&!Er(e[i])){if(n.strict)throw E(o,"path expansion conflict");Nn(e,i,{})}else s||Nn(e,i,{});Cn(e[i],t.slice(1),r,n,o)}function HT(e){return/^[A-Za-z_][A-Za-z0-9_]*$/.test(e)}function Er(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Gt(e,t={}){let r={nestedTabularHeaders:t.nestedTabularHeaders===!0,keyedMapCollapse:t.keyedMapCollapse===!0},n=[];return Array.isArray(e)?gu(n,void 0,e,0,!1,r):Er(e)?py(n,e,0,r):n.push(Tt(e,_e)),n.join("")}function Dn(e,t){e.push(" ".repeat(t*fu))}function py(e,t,r,n){for(let[o,i]of Object.entries(t))Dn(e,r),du(e,o,i,r,n)}function du(e,t,r,n,o){if(Array.isArray(r)){gu(e,t,r,n,!1,o);return}if(Er(r)){let i=o.keyedMapCollapse?GT(r,o):void 0;if(i!==void 0){e.push(it(t),"{",i.fields.map(yu).join(_e),`}:
42
- `);for(let[s,a]of Object.entries(r))Dn(e,n+1),e.push(it(s),": ",i.paths.map(c=>Tt(yy(a,c),_e)).join(_e),`
37
+ `}var bT=ou.platform==="win32"?["APPDATA","HOMEDRIVE","HOMEPATH","LOCALAPPDATA","PATH","PROCESSOR_ARCHITECTURE","SYSTEMDRIVE","SYSTEMROOT","TEMP","USERNAME","USERPROFILE","PROGRAMFILES"]:["HOME","LOGNAME","PATH","SHELL","TERM","USER"];function xT(){let e={};for(let t of bT){let r=ou.env[t];r!==void 0&&(r.startsWith("()")||(e[t]=r))}return e}var di=class{constructor(t){this._readBuffer=new li,this._stderrStream=null,this._serverParams=t,(t.stderr==="pipe"||t.stderr==="overlapped")&&(this._stderrStream=new vT)}async start(){if(this._process)throw new Error("StdioClientTransport already started! If using Client class, note that connect() calls start() automatically.");return new Promise((t,r)=>{this._process=(0,sy.default)(this._serverParams.command,this._serverParams.args??[],{env:{...xT(),...this._serverParams.env},stdio:["pipe","pipe",this._serverParams.stderr??"inherit"],shell:!1,windowsHide:ou.platform==="win32",cwd:this._serverParams.cwd}),this._process.on("error",n=>{r(n),this.onerror?.(n)}),this._process.on("spawn",()=>{t()}),this._process.on("close",n=>{this._process=void 0,this.onclose?.()}),this._process.stdin?.on("error",n=>{this.onerror?.(n)}),this._process.stdout?.on("data",n=>{this._readBuffer.append(n),this.processReadBuffer()}),this._process.stdout?.on("error",n=>{this.onerror?.(n)}),this._stderrStream&&this._process.stderr&&this._process.stderr.pipe(this._stderrStream)})}get stderr(){return this._stderrStream?this._stderrStream:this._process?.stderr??null}get pid(){return this._process?.pid??null}processReadBuffer(){for(;;)try{let t=this._readBuffer.readMessage();if(t===null)break;this.onmessage?.(t)}catch(t){this.onerror?.(t)}}async close(){if(this._process){let t=this._process;this._process=void 0;let r=new Promise(n=>{t.once("close",()=>{n()})});try{t.stdin?.end()}catch{}if(await Promise.race([r,new Promise(n=>setTimeout(n,2e3).unref())]),t.exitCode===null){try{t.kill("SIGTERM")}catch{}await Promise.race([r,new Promise(n=>setTimeout(n,2e3).unref())])}if(t.exitCode===null)try{t.kill("SIGKILL")}catch{}}this._readBuffer.clear()}send(t){return new Promise(r=>{if(!this._process?.stdin)throw new Error("Not connected");let n=iy(t);this._process.stdin.write(n)?r():this._process.stdin.once("drain",r)})}};var kT=["conversations_list","conversation_get","messages_read","attachments_fetch","events_poll","events_wait","messages_send","channels_list","permissions_list_open","permissions_respond"];var Wt=class e{client;transport;constructor(t,r){this.client=t,this.transport=r}static async connect(t={}){let r=new di({command:t.command??"hermes",args:t.args??["mcp","serve"],cwd:t.cwd,env:t.env??$T(),stderr:t.stderr??"pipe"}),n=new ci({name:"brain-channel-bridge",version:"0.0.0"},{capabilities:{}});try{await n.connect(r);let o=new e(n,r);return await o.assertHermesContract(),o}catch(o){throw await n.close().catch(()=>{}),await r.close().catch(()=>{}),o}}async poll(t={}){let r=await this.callJson("events_poll",{after_cursor:t.afterCursor,session_key:t.sessionKey,limit:t.limit});return{events:ET(r).map(TT),nextCursor:ay(r,["next_cursor","nextCursor","cursor"]),raw:r}}async send(t,r){let n=await this.callJson("messages_send",{target:t,message:r});return{ok:!fi(n,["error"])&&zT(n,["ok","success"],!0),target:t,messageId:We(n,["message_id","messageId","id"]),raw:n}}async channels(t={}){let r=await this.callJson("channels_list",{platform:t.platform});return{channels:PT(r).map(RT).filter(n=>n!=null),raw:r}}async close(){await this.client.close(),await this.transport.close().catch(()=>{})}async assertHermesContract(){let{tools:t}=await this.client.listTools(),r=new Set(t.map(o=>o.name)),n=kT.filter(o=>!r.has(o));if(n.length>0)throw new Error(`Hermes channel bridge is missing tool(s): ${n.join(", ")}`)}async callJson(t,r){let n=await this.client.callTool({name:t,arguments:ST(r)},_t);if(n.structuredContent&&Object.keys(n.structuredContent).length>0)return n.structuredContent;let i=(Array.isArray(n.content)?n.content:[]).filter(s=>s.type==="text").map(s=>s.text??"").join(`
38
+ `).trim();if(!i)return{};try{return JSON.parse(i)}catch{return{text:i}}}};function $T(){let e={};for(let[t,r]of Object.entries(process.env))typeof r=="string"&&(e[t]=r);return e}function ST(e){return Object.fromEntries(Object.entries(e).filter(([,t])=>t!==void 0))}function ET(e){if(Array.isArray(e))return e;if(!Sr(e))return[];let t=e.events;if(Array.isArray(t))return t;let r=e.event;return r&&Sr(r)?[r]:[]}function TT(e){return Sr(e)?{id:We(e,["id","message_id","messageId"]),cursor:ay(e,["cursor"]),type:We(e,["type","event_type","eventType"]),platform:We(e,["platform"]),target:We(e,["target"]),sessionKey:We(e,["session_key","sessionKey"]),timestamp:We(e,["timestamp","created_at","createdAt"]),message:We(e,["message","text","content"]),raw:e}:{raw:e}}function PT(e){if(Array.isArray(e))return e;if(!Sr(e))return[];for(let t of["channels","targets","conversations"]){let r=e[t];if(Array.isArray(r))return r}return[]}function RT(e){if(!Sr(e))return null;let t=We(e,["target","id","session_key","sessionKey"]);return t?{target:t,platform:We(e,["platform"]),name:We(e,["name","display_name","displayName","chat_name","chatName"]),raw:e}:null}function We(e,t){let r=fi(e,t);return typeof r=="string"?r:void 0}function zT(e,t,r){let n=fi(e,t);return typeof n=="boolean"?n:r}function ay(e,t){let r=fi(e,t);return typeof r=="string"||typeof r=="number"?r:void 0}function fi(e,t){if(Sr(e))for(let r of t){let n=e[r];if(n!=null)return n}}function Sr(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}import{mkdir as Wz,writeFile as Gz}from"node:fs/promises";import{join as v_}from"node:path";var pi=class extends Error{constructor(t,r){super(t===0?r:`line ${t}: ${r}`),this.name="ToonError",this.line=t,this.reason=r}};function E(e,t){return new pi(e,t)}var _e=",";function iu(e){let t=e.split(`
39
+ `);return t.length>0&&t[t.length-1]===""&&t.pop(),t.map(r=>r.endsWith("\r")?r.slice(0,-1):r)}function ot(e){return E(e,"invalid quoted string")}function Pt(e,t){if(e==="")return"";if(e.startsWith('"'))return cy(e,t);if(e.includes('"'))throw ot(t);return e==="true"?!0:e==="false"?!1:e==="null"?null:IT(e)?Number(e):e}function Gt(e,t){let r=e.trim();if(r.startsWith('"'))return[cy(r,t),!0];if(r.includes('"')||/\s/.test(r))throw E(t,"expected non-empty field name");return[r,!1]}function cy(e,t){if(e[0]!=='"')throw ot(t);let r="",n=1;for(;n<e.length;){let o=e[n];if(n+=1,o==='"'){if(e.slice(n).trim()==="")return r;throw ot(t)}if(o==="\\"){let i=e[n];switch(n+=1,i){case'"':r+='"';break;case"\\":r+="\\";break;case"n":r+=`
40
+ `;break;case"r":r+="\r";break;case"t":r+=" ";break;case"u":{let s=e.slice(n,n+4);if(!/^[0-9a-fA-F]{4}$/.test(s))throw ot(t);let a=Number.parseInt(s,16);if(a>=55296&&a<=57343)throw ot(t);r+=String.fromCharCode(a),n+=4;break}default:throw ot(t)}continue}if(o<" "&&o!==" ")throw ot(t);r+=o}throw ot(t)}function An(e,t,r){if(e==="")return[];let n=[],o=0,i=!1,s=!1;for(let a=0;a<e.length;a+=1){let c=e[a];if(s){s=!1;continue}c==="\\"&&i?s=!0:c==='"'?i=!i:c===t&&!i&&(n.push(e.slice(o,a).trim()),o=a+1)}if(i||s)throw ot(r);return n.push(e.slice(o).trim()),n}function ze(e,t,r){let n=!1,o=!1;for(let i=0;i<e.length;i+=1){let s=e[i];if(o){o=!1;continue}if(s==="\\"&&n)o=!0;else if(s==='"')n=!n;else if(s===t&&!n)return i}if(n||o)throw ot(r);return-1}function IT(e){return/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$/.test(e)}function OT(e){return/^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$/.test(e)}function AT(e){if(Object.is(e,-0))return"0";if(!Number.isFinite(e))throw E(0,"number is not representable in TOON");return String(e)}function mi(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"}function Rt(e,t){if(e===null)return"null";if(typeof e=="boolean")return e?"true":"false";if(typeof e=="number")return AT(e);if(typeof e=="string")return CT(e,t);throw E(0,"not a primitive")}function NT(e){return/^[A-Za-z_][A-Za-z0-9_.]*$/.test(e)}function it(e){return NT(e)?e:uy(e)}function CT(e,t){return DT(e,t)?uy(e):e}function DT(e,t){return e===""||e.trim()!==e||e==="true"||e==="false"||e==="null"||OT(e)||/[:"\\[\]{}]/.test(e)||/[\u0000-\u001f]/.test(e)||e.includes(t)||e.startsWith("-")}function uy(e){let t='"';for(let r of e)switch(r){case'"':t+='\\"';break;case"\\":t+="\\\\";break;case`
41
+ `:t+="\\n";break;case"\r":t+="\\r";break;case" ":t+="\\t";break;default:r<" "?t+=`\\u${r.charCodeAt(0).toString(16).padStart(4,"0")}`:t+=r}return`${t}"`}function Nn(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}var fu=2;function jT(e={}){return{indent:Math.max(1,e.indent??fu),strict:e.strict??!0,expandPaths:e.expandPaths==="safe"||e.expandPaths===!0}}function MT(e,t){let r=[],n=!1;return iu(e).forEach((o,i)=>{let s=i+1;if(o.trim()===""){n=!0;return}let a=o.length-o.replace(/^ +/,"").length;if(o[a]===" ")throw E(s,"invalid indentation");if(t.strict&&a%t.indent!==0)throw E(s,"invalid indentation");r.push({number:s,depth:Math.floor(a/t.indent),content:o.slice(a),blankBefore:n}),n=!1}),r}function ft(e,t){let r=jT(t),n=MT(e,r),o=n[0];if(o===void 0)return{};if(o.depth!==0)throw E(o.number,"invalid indentation");let i=n.length===1;if(i&&o.content.trim()==="[]")return[];if(o.content.startsWith("[")){let l;try{l=hu(o.content,ze(o.content,":",o.number))}catch(u){if(r.strict)throw lu(u,o.number);l=void 0}if(l!==void 0)return BT(l,n,r)}if(i&&ze(o.content,":",o.number)===-1)return Pt(o.content.trim(),o.number);let s={index:0},a=pu(n,s,0,r),c=n[s.index];if(c!==void 0)throw E(c.number,"expected end of document");return a}function pu(e,t,r,n){let o={};for(;t.index<e.length;){let i=e[t.index];if(i.depth<r)break;if(i.depth>r)throw E(i.number,"invalid indentation");let{key:s,quoted:a,value:c}=qT(e,t,r,n);fy(o,s,a,c,n,i.number)}return o}function qT(e,t,r,n){let o=e[t.index],i=o.content,s=ze(i,":",o.number);if(s===-1)throw E(o.number,"expected `key: value`");let a=i.slice(0,s),c=i.slice(s+1),l=ze(a,"[",o.number),u=ze(a,"{",o.number);if(u!==-1&&(l===-1||u<l)){let m;try{m=VT(a)}catch(_){if(n.strict)throw lu(_,o.number);t.index+=1;let w=su(e,t,r,c,o.number,n);return{key:a.trim(),quoted:!1,value:w}}if(c.trim()!=="")throw E(o.number,"expected keyed map rows");let h=LT(m,e,t,r+1,n);return{key:m.key,quoted:m.keyQuoted,value:h}}if(l!==-1){let m;try{m=hu(a,s)}catch(_){if(n.strict)throw lu(_,o.number);t.index+=1;let w=su(e,t,r,c,o.number,n);return{key:a.trim(),quoted:!1,value:w}}if(m.key===""&&!m.keyQuoted)throw E(o.number,"expected non-empty field name");let h=mu(m,c,e,t,r,n);return{key:m.key,quoted:m.keyQuoted,value:h}}let[d,f]=Gt(a,o.number);if(d===""&&!f)throw E(o.number,"expected non-empty field name");t.index+=1;let p=su(e,t,r,c,o.number,n);return{key:d,quoted:f,value:p}}function su(e,t,r,n,o,i){let s=n.trim();if(s==="[]")return[];if(s!=="")return Pt(s,o);let a=e[t.index];return a!==void 0&&a.depth>r?pu(e,t,r+1,i):{}}function LT(e,t,r,n,o){let i={};for(r.index+=1;r.index<t.length;){let s=t[r.index];if(s.depth<n)break;if(s.depth>n)throw E(s.number,"invalid indentation");if(s.blankBefore&&o.strict)throw E(s.number,"blank line inside keyed map");let a=ze(s.content,":",s.number);if(a===-1)throw E(s.number,"expected `key: value`");let[c,l]=Gt(s.content.slice(0,a),s.number);if(c===""&&!l)throw E(s.number,"expected non-empty field name");let u=An(s.content.slice(a+1).trim(),e.delimiter,s.number);if(u.length!==e.fields.length)throw E(s.number,"keyed map row length mismatch");let d={};e.fields.forEach((f,p)=>{Cn(d,f,Pt(u[p],s.number),o,s.number)}),fy(i,c,l,d,o,s.number),r.index+=1}return i}function BT(e,t,r){let n=t[0],o=ze(n.content,":",n.number);if(o===-1)throw E(n.number,"expected `key: value`");let i=n.content.slice(o+1),s={index:0},a=mu(e,i,t,s,0,r),c=t[s.index];if(c!==void 0)throw E(c.number,"expected end of document");return a}function mu(e,t,r,n,o,i){let s=r[n.index].number,a=t.trim();if(n.index+=1,e.fields!==void 0){if(a!=="")throw E(s,"expected tabular rows");return ZT(e,e.fields,r,n,o+1,i)}if(a!==""){let c=An(a,e.delimiter,s).map(l=>Pt(l,s));if(c.length!==e.len)throw E(s,"array length mismatch");return c}return UT(e,r,n,o+1,i)}function ZT(e,t,r,n,o,i){let s=[];for(;s.length<e.len;){let c=r[n.index];if(c===void 0)throw cu(r,n.index);if(c.depth<o)break;if(c.depth>o)throw E(c.number,"invalid indentation");if(c.blankBefore&&i.strict)throw E(c.number,"blank line inside array");if(!ly(c.content,e.delimiter,c.number))break;let l=An(c.content,e.delimiter,c.number);if(l.length!==t.length)throw E(c.number,"array row length mismatch");let u={};t.forEach((d,f)=>{Cn(u,d,Pt(l[f],c.number),i,c.number)}),s.push(u),n.index+=1}if(s.length!==e.len)throw cu(r,n.index);let a=r[n.index];if(a!==void 0&&a.depth>=o&&ly(a.content,e.delimiter,a.number))throw E(a.number,"array length mismatch");return s}function ly(e,t,r){let n=ze(e,":",r);if(n===-1)return!0;let o=ze(e,t,r);return o===-1?!1:o<n}function UT(e,t,r,n,o){let i=[];for(;i.length<e.len;){let a=t[r.index];if(a===void 0||a.depth<n)throw cu(t,r.index);if(a.depth>n)throw E(a.number,"invalid indentation");if(a.blankBefore&&o.strict)throw E(a.number,"blank line inside array");i.push(FT(t,r,n,o))}let s=t[r.index];if(s!==void 0&&s.depth>=n)throw E(s.number,"array length mismatch");return i}function FT(e,t,r,n){let o=e[t.index];if(!o.content.startsWith("-"))throw E(o.number,"expected array item");let i=o.content.slice(1).replace(/^\s+/,"");if(i==="")return t.index+=1,{};if(i.startsWith("[")){let s=ze(i,":",o.number),a;try{a=hu(i,s)}catch{a=void 0}if(a!==void 0){let c=i.slice(s+1);return mu(a,c,e,t,r,n)}}if(ze(i,":",o.number)!==-1){let s=[{number:o.number,depth:r+1,content:i,blankBefore:!1}];for(t.index+=1;t.index<e.length;){let a=e[t.index];if(a.depth<=r)break;s.push(a),t.index+=1}return pu(s,{index:0},r+1,n)}return t.index+=1,Pt(i,o.number)}function cu(e,t){let r=e[t]??e[e.length-1];return E(r===void 0?1:r.number,"array length mismatch")}function hu(e,t){if(t===-1)throw E(0,"array header missing colon");let r=e.slice(0,t),n=ze(r,"[",0);if(n===-1)throw E(0,"invalid array header");let o,i;try{[o,i]=Gt(r.slice(0,n),0)}catch{throw E(0,"invalid array header")}let s=r.slice(n+1),a=s.indexOf("]");if(a===-1)throw E(0,"invalid array header");let c=s.slice(0,a),l=/^[0-9]*/.exec(c)[0];if(l===""||l.length>1&&l.startsWith("0"))throw E(0,"invalid array header");let u=Number.parseInt(l,10),d;switch(c.slice(l.length)){case"":d=",";break;case" ":d=" ";break;case"|":d="|";break;default:throw E(0,"invalid array header")}let f=s.slice(a+1),p;if(f==="")p=void 0;else if(f.startsWith("{")&&f.endsWith("}")&&f.length>=2)try{p=dy(f.slice(1,-1),d)}catch(m){throw E(0,m.reason==="duplicate key"?"duplicate key":"invalid array header")}else throw E(0,"invalid array header");return{key:o,keyQuoted:i,len:u,delimiter:d,fields:p}}function VT(e){let t=ze(e,"{",0);if(t===-1||!e.endsWith("}"))throw E(0,"invalid keyed map header");let r,n;try{[r,n]=Gt(e.slice(0,t),0)}catch{throw E(0,"invalid keyed map header")}if(r===""&&!n)throw E(0,"expected non-empty field name");let o;try{o=dy(e.slice(t+1,-1),_e)}catch(i){throw E(0,i.reason==="duplicate key"?"duplicate key":"invalid keyed map header")}return{key:r,keyQuoted:n,delimiter:_e,fields:o}}function dy(e,t){let r=[],n=0;function o(a,c){let l=0;for(;n<e.length&&!(c&&e[n]==="}");){if(e[n]===t||e[n]==="}")throw E(0,"invalid array header");let u=n;for(;n<e.length;){let f=e[n];if(f==='"'){i();continue}if(f===t||f==="{"||f==="}")break;n+=1}let[d]=Gt(e.slice(u,n),0);if(d==="")throw E(0,"invalid array header");if(l+=1,e[n]==="{"){n+=1;let f=r.length;if(o([...a,d],!0),e[n]!=="}"||r.length===f)throw E(0,"invalid array header");n+=1}else r.push([...a,d]);if(e[n]===t){if(n+=1,n>=e.length||e[n]==="}")throw E(0,"invalid array header");continue}if(c?e[n]==="}":n===e.length)break;throw E(0,"invalid array header")}if(l===0)throw E(0,"invalid array header")}function i(){for(n+=1;n<e.length;){let a=e[n];if(n+=1,a==="\\")n+=1;else if(a==='"')return}}if(o([],!1),n!==e.length)throw E(0,"invalid array header");let s=new Set;for(let a=0;a<r.length;a+=1)for(let c=a+1;c<r.length;c+=1)if(KT(r[a],r[c])||uu(r[a],r[c])||uu(r[c],r[a]))throw E(0,"duplicate key");for(let a of r){let c=a.join("\0");if(s.has(c))throw E(0,"duplicate key");s.add(c)}return r}function KT(e,t){return e.length===t.length&&uu(e,t)}function uu(e,t){return t.every((r,n)=>e[n]===r)}function lu(e,t){return E(t,e.reason??String(e.message))}function fy(e,t,r,n,o,i){if(o.expandPaths&&!r&&t.includes(".")){let s=t.split(".");if(s.every(HT)){Cn(e,s,n,o,i);return}}Cn(e,[t],n,o,i)}function Cn(e,t,r,n,o){let i=t[0],s=Object.prototype.hasOwnProperty.call(e,i);if(t.length===1){if(s&&n.strict)throw E(o,"duplicate key");Nn(e,i,r);return}if(s&&!Er(e[i])){if(n.strict)throw E(o,"path expansion conflict");Nn(e,i,{})}else s||Nn(e,i,{});Cn(e[i],t.slice(1),r,n,o)}function HT(e){return/^[A-Za-z_][A-Za-z0-9_]*$/.test(e)}function Er(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function pt(e,t={}){let r={nestedTabularHeaders:t.nestedTabularHeaders===!0,keyedMapCollapse:t.keyedMapCollapse===!0},n=[];return Array.isArray(e)?gu(n,void 0,e,0,!1,r):Er(e)?py(n,e,0,r):n.push(Rt(e,_e)),n.join("")}function Dn(e,t){e.push(" ".repeat(t*fu))}function py(e,t,r,n){for(let[o,i]of Object.entries(t))Dn(e,r),du(e,o,i,r,n)}function du(e,t,r,n,o){if(Array.isArray(r)){gu(e,t,r,n,!1,o);return}if(Er(r)){let i=o.keyedMapCollapse?GT(r,o):void 0;if(i!==void 0){e.push(it(t),"{",i.fields.map(yu).join(_e),`}:
42
+ `);for(let[s,a]of Object.entries(r))Dn(e,n+1),e.push(it(s),": ",i.paths.map(c=>Rt(yy(a,c),_e)).join(_e),`
43
43
  `);return}e.push(it(t),`:
44
- `),py(e,r,n+1,o);return}e.push(it(t),": ",Tt(r,_e),`
44
+ `),py(e,r,n+1,o);return}e.push(it(t),": ",Rt(r,_e),`
45
45
  `)}function gu(e,t,r,n,o,i){if(r.length===0){t!==void 0?e.push(it(t),`: []
46
46
  `):o?e.push(`[0]:
47
47
  `):e.push(`[]
48
- `);return}if(r.every(mi)){au(e,t,r.length,void 0),e.push(" "),e.push(r.map(a=>Tt(a,_e)).join(_e)),e.push(`
48
+ `);return}if(r.every(mi)){au(e,t,r.length,void 0),e.push(" "),e.push(r.map(a=>Rt(a,_e)).join(_e)),e.push(`
49
49
  `);return}let s=o?void 0:my(r,i);if(s!==void 0){au(e,t,r.length,s.fields),e.push(`
50
- `);for(let a of r)Dn(e,n+1),e.push(s.paths.map(c=>Tt(yy(a,c),_e)).join(_e)),e.push(`
50
+ `);for(let a of r)Dn(e,n+1),e.push(s.paths.map(c=>Rt(yy(a,c),_e)).join(_e)),e.push(`
51
51
  `);return}au(e,t,r.length,void 0),e.push(`
52
52
  `);for(let a of r)Dn(e,n+1),WT(e,a,n+1,i)}function WT(e,t,r,n){if(Array.isArray(t)){e.push("- "),gu(e,void 0,t,r,!0,n);return}if(Er(t)){let o=Object.entries(t);if(o.length===0){e.push(`-
53
- `);return}e.push("- "),du(e,o[0][0],o[0][1],r+1,n);for(let[i,s]of o.slice(1))Dn(e,r+1),du(e,i,s,r+1,n);return}e.push("- ",Tt(t,_e),`
54
- `)}function au(e,t,r,n){t!==void 0&&e.push(it(t)),e.push("[",String(r),"]"),n!==void 0&&e.push("{",n.map(yu).join(_e),"}"),e.push(":")}function my(e,t){let r=hy(e.map(n=>({value:n})),t);return r===void 0?void 0:{fields:r,paths:gy(r)}}function GT(e,t){let r=Object.values(e);if(!(r.length<2))return my(r,t)}function hy(e,t){let r=e[0]?.value;if(!Er(r))return;let n=Object.keys(r).map(o=>({key:o}));if(n.length!==0){for(let{value:o}of e)if(!Er(o)||Object.keys(o).length!==n.length||n.some(s=>!Object.prototype.hasOwnProperty.call(o,s.key)))return;for(let o of n){let i=e.map(({value:a})=>({value:a[o.key]}));if(i.every(({value:a})=>mi(a)))continue;if(!t.nestedTabularHeaders)return;let s=hy(i,t);if(s===void 0)return;o.children=s}return n}}function gy(e,t=[]){return e.flatMap(r=>{let n=[...t,r.key];return r.children===void 0?[n]:gy(r.children,n)})}function yy(e,t){let r=e;for(let n of t)r=r[n];return r}function yu(e){return e.children===void 0?it(e.key):`${it(e.key)}{${e.children.map(yu).join(_e)}}`}var kM=new TextEncoder,$M=new TextDecoder;import{isAbsolute as XM,join as Tr,resolve as QT}from"node:path";var YT=".red";function XT(e){if(!e)throw new Error("root is required");return e.replace(/\/$/,"")}function _y(e){return Tr(XT(e),YT)}function wy(e){return Tr(_y(e),"state")}function eP(e){return Tr(_y(e),"tmp")}function _u(e){return Tr(wy(e),"rsp")}function wu(e){return Tr(wy(e),"red-skills.rdb")}var tP=".red/tmp/red-skills.rdb";function vy(e){return Tr(eP(e),"red-skills.rdb")}function by(e,t){let r=wu(e);if(t(r))return r;let n=vy(e);if(t(n))throw vu();return r}function xy(e,t){return t===tP||QT(e,t)===vy(e)}function vu(){return new Error("Legacy shared store found at .red/tmp/red-skills.rdb. Run `rsp setup` to migrate it to .red/state/red-skills.rdb before using rsp, memory, or brain.")}import{createConnection as rP}from"node:net";async function hi(e,t){let r=e.timeoutMs??1e3;return await new Promise((n,o)=>{let i=rP(e.socketPath),s=!1,a="",c=setTimeout(()=>{l(()=>o(new Error("resident rsp server timed out"))),i.destroy()},r);function l(u){s||(s=!0,clearTimeout(c),u())}i.on("connect",()=>{i.write(`${JSON.stringify(t)}
53
+ `);return}e.push("- "),du(e,o[0][0],o[0][1],r+1,n);for(let[i,s]of o.slice(1))Dn(e,r+1),du(e,i,s,r+1,n);return}e.push("- ",Rt(t,_e),`
54
+ `)}function au(e,t,r,n){t!==void 0&&e.push(it(t)),e.push("[",String(r),"]"),n!==void 0&&e.push("{",n.map(yu).join(_e),"}"),e.push(":")}function my(e,t){let r=hy(e.map(n=>({value:n})),t);return r===void 0?void 0:{fields:r,paths:gy(r)}}function GT(e,t){let r=Object.values(e);if(!(r.length<2))return my(r,t)}function hy(e,t){let r=e[0]?.value;if(!Er(r))return;let n=Object.keys(r).map(o=>({key:o}));if(n.length!==0){for(let{value:o}of e)if(!Er(o)||Object.keys(o).length!==n.length||n.some(s=>!Object.prototype.hasOwnProperty.call(o,s.key)))return;for(let o of n){let i=e.map(({value:a})=>({value:a[o.key]}));if(i.every(({value:a})=>mi(a)))continue;if(!t.nestedTabularHeaders)return;let s=hy(i,t);if(s===void 0)return;o.children=s}return n}}function gy(e,t=[]){return e.flatMap(r=>{let n=[...t,r.key];return r.children===void 0?[n]:gy(r.children,n)})}function yy(e,t){let r=e;for(let n of t)r=r[n];return r}function yu(e){return e.children===void 0?it(e.key):`${it(e.key)}{${e.children.map(yu).join(_e)}}`}var $M=new TextEncoder,SM=new TextDecoder;import{basename as w_}from"node:path";import{createHash as nP,randomUUID as $u}from"node:crypto";import{spawn as oP}from"node:child_process";import{constants as bu}from"node:fs";import{readFileSync as iP}from"node:fs";import{mkdir as Ty,open as sP,readFile as aP,rename as uq,rm as jn,stat as lq,writeFile as dq}from"node:fs/promises";import{tmpdir as cP}from"node:os";import{dirname as Pr,join as Le,resolve as yi}from"node:path";import{fileURLToPath as uP}from"node:url";import{isAbsolute as eq,join as Tr,resolve as QT}from"node:path";var YT=".red";function XT(e){if(!e)throw new Error("root is required");return e.replace(/\/$/,"")}function _y(e){return Tr(XT(e),YT)}function wy(e){return Tr(_y(e),"state")}function eP(e){return Tr(_y(e),"tmp")}function _u(e){return Tr(wy(e),"rsp")}function wu(e){return Tr(wy(e),"red-skills.rdb")}var tP=".red/tmp/red-skills.rdb";function vy(e){return Tr(eP(e),"red-skills.rdb")}function by(e,t){let r=wu(e);if(t(r))return r;let n=vy(e);if(t(n))throw vu();return r}function xy(e,t){return t===tP||QT(e,t)===vy(e)}function vu(){return new Error("Legacy shared store found at .red/tmp/red-skills.rdb. Run `rsp setup` to migrate it to .red/state/red-skills.rdb before using rsp, memory, or brain.")}import{createConnection as rP}from"node:net";async function hi(e,t){let r=e.timeoutMs??1e3;return await new Promise((n,o)=>{let i=rP(e.socketPath),s=!1,a="",c=setTimeout(()=>{l(()=>o(new Error("resident rsp server timed out"))),i.destroy()},r);function l(u){s||(s=!0,clearTimeout(c),u())}i.on("connect",()=>{i.write(`${JSON.stringify(t)}
55
55
  `)}),i.on("data",u=>{a+=u.toString("utf8");let d=a.indexOf(`
56
56
  `);if(d<0)return;let f=a.slice(0,d);l(()=>{try{n(JSON.parse(f))}catch(p){o(p)}}),i.end()}),i.on("error",u=>l(()=>o(u))),i.on("close",()=>{s||l(()=>o(new Error("resident rsp server closed without response")))})})}var lP=108,dP=1,fP=5e3;function _i(e){let t=EP(e)??yi(e),r=SP(t),n=_u(t);return{rootDir:t,socketPath:Le(r,"rsp.sock"),pidPath:Le(r,"rsp.pid"),lockPath:Le(r,"rsp.lock"),wakeLockPath:Le(t,".red","tmp","rsp.wake.lock"),summaryPath:Le(n,"rsp-status-summary.json"),registryPath:Le(n,"rsp-resident.pid.json")}}var gi=class{constructor(t,r){this.paths=t;this.config=r}async request(t){await pP(this.paths,this.config);let r=await hi(this.paths,{...t,id:$u()});if(!r.ok)throw new Error(r.error);return r.value}};async function pP(e,t){if(await Ty(Pr(e.socketPath),{recursive:!0,mode:448}),await Sy(e.socketPath,t))return;await $y(e,t);let r=await yP(e.lockPath);if(r)try{if(await Sy(e.socketPath,t))return;await $y(e,t),await gP(e.socketPath);let n=_P(e,t);await ky(e.socketPath,n);return}finally{await r.close(),await jn(e.lockPath,{force:!0})}await ky(e.socketPath)}async function qn(e,t=200){try{return await Py(e,t)!=null}catch{return!1}}async function Py(e,t=200){let r=await hi({socketPath:e,timeoutMs:t},{id:$u(),op:"ping"});return r.ok?zy(r.value)?{version:zP(r.value.version)}:{}:null}async function mP(e){try{let t=bP(await aP(e,"utf8"));return IP(t)?t:null}catch{return null}}async function ky(e,t){let r=Date.now()+hP(),n;for(;Date.now()<r;){if(await qn(e))return;if(t){let o=t.spawnError();if(o)throw new Error(xu("resident rsp server spawn failed",t,o));if(t.child.exitCode!=null||t.child.signalCode!=null)throw new Error(xu("resident rsp server exited before ready",t))}await new Promise(o=>setTimeout(o,50))}throw n instanceof Error?n:new Error(t?xu("resident rsp server did not start",t):"resident rsp server did not start")}function hP(){let e=Number(process.env.RSP_RESIDENT_READY_TIMEOUT_MS??"");return Number.isFinite(e)&&e>0?e:fP}async function gP(e){await jn(e,{force:!0})}async function yP(e){await Ty(Pr(e),{recursive:!0,mode:448});try{return await sP(e,bu.O_CREAT|bu.O_EXCL|bu.O_RDWR)}catch(t){if(t.code!=="EEXIST")throw t;return null}}function _P(e,t){let[r,n]=$P(t),o=process.env.RSP_DEBUG==="1",i,s="",a=oP(r,[...n,"server","--socket",e.socketPath,"--pid-file",e.pidPath,"--store-uri",t.storeUri,"--ttl-days",String(t.ttlDays),"--ephemeral-ttl-hours",String(t.ephemeralTtlHours??6),"--byte-budget",String(t.byteBudget),"--telemetry-ttl-days",String(t.telemetryTtlDays??90),"--telemetry-byte-budget",String(t.telemetryByteBudget??t.byteBudget),"--telemetry-drain-interval-ms",String(t.telemetryDrainIntervalMs??3e4),"--telemetry-drain-timeout-ms",String(t.telemetryDrainTimeoutMs??2e3),"--idle-ms",String(t.idleMs??3e5),"--resident-version",t.clientVersion??"0.0.0-dev","--registry",e.registryPath],{cwd:e.rootDir,detached:!0,stdio:o?["ignore","ignore","pipe"]:"ignore",env:{...process.env,RSP_RESIDENT_SERVER:"1"}});return a.on("error",c=>{i=c}),o&&(a.stderr?.setEncoding("utf8"),a.stderr?.on("data",c=>{s=vP(`${s}${c}`,wP)})),a.unref(),{child:a,stderrTail:()=>s,spawnError:()=>i}}var wP=8*1024;function xu(e,t,r){let n=[e];r&&n.push(`error: ${r.message}`),t.child.exitCode!=null&&n.push(`exit code: ${t.child.exitCode}`),t.child.signalCode!=null&&n.push(`signal: ${t.child.signalCode}`);let o=t.stderrTail().trimEnd();return o&&n.push(`stderr tail:
57
57
  ${o}`),n.join(`
58
- `)}function vP(e,t){let r=Buffer.byteLength(e,"utf8");return r<=t?e:Buffer.from(e,"utf8").subarray(r-t).toString("utf8").replace(/^\uFFFD+/,"")}function bP(e){let t=e.trim();if(!t)return null;try{return JSON.parse(t)}catch{return Pt(t)}}async function $y(e,t){try{let r=await mP(e.registryPath);if(!r||r.socket_path!==e.socketPath||r.store_uri!==t.storeUri)return;if(!Mn(r.pid)){await jn(e.registryPath,{force:!0});return}if(await qn(r.socket_path,100))return;if(Ry(t.clientVersion,r.resident_version)&&(await kP(r.pid,1500),!Mn(r.pid))){await jn(e.registryPath,{force:!0});return}await xP(r.pid),await jn(e.registryPath,{force:!0})}catch{}}function Mn(e){if(!Number.isInteger(e)||e<=0)return!1;try{return process.kill(e,0),!0}catch{return!1}}async function xP(e){if(!Mn(e))return;try{process.kill(e,"SIGTERM")}catch{return}let t=Date.now()+1e3;for(;Date.now()<t;){if(!Mn(e))return;await new Promise(r=>setTimeout(r,50))}try{process.kill(e,"SIGKILL")}catch{}}async function kP(e,t){let r=Date.now()+t;for(;Date.now()<r;){if(!Mn(e))return;await new Promise(n=>setTimeout(n,50))}}function $P(e){if(e.serverCommand)return[e.serverCommand,e.serverArgs??[]];let t=process.argv[1]?yi(process.argv[1]):uP(import.meta.url);return[process.execPath,[...process.execArgv,t]]}function SP(e){let t=nP("sha256").update(e).digest("hex").slice(0,20),r=process.env.XDG_RUNTIME_DIR;if(r){let o=Le(r,"red-skills",t);if(Le(o,"rsp.sock").length<lP)return o}let n=typeof process.getuid=="function"?process.getuid():"nouid";return Le(cP(),`red-skills-${n}`,t)}function EP(e){let t=yi(e);for(let r=0;r<32;r++){try{let o=ku(Le(t,".git"));if(o!=null)return TP(t,o)??t;if(ku(Le(t,".git","HEAD"))!=null||ku(Le(t,".red","config.yaml"))!=null)return t}catch{}let n=Pr(t);if(n===t)return null;t=n}return null}function TP(e,t){let r=/^gitdir:\s*(.+?)\s*$/m.exec(t);if(!r)return null;let n=yi(e,r[1]);return/[/\\]worktrees[/\\][^/\\]+$/.test(n)?Pr(Pr(Pr(n))):null}function ku(e){try{return iP(e,"utf8")}catch{return null}}async function Sy(e,t){let r=await Py(e).catch(()=>null);return r?Ry(t.clientVersion,r.version)?(await PP(e,t.clientVersion),await OP(e),!1):!0:!1}async function PP(e,t){try{await hi({socketPath:e,timeoutMs:200},{id:$u(),op:"handover",clientVersion:t})}catch{}}function Ry(e,t){return!e||!t?!1:RP(e,t)>0}function RP(e,t){let r=Ey(e),n=Ey(t);return!r||!n?0:r.major-n.major||r.minor-n.minor||r.patch-n.patch}function Ey(e){let t=/^(\d+)\.(\d+)\.(\d+)/.exec(String(e).trim());return t?{major:Number(t[1]),minor:Number(t[2]),patch:Number(t[3])}:null}function zy(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function zP(e){return typeof e=="string"&&e.length>0?e:void 0}function IP(e){return zy(e)&&e.version===dP&&Number.isInteger(e.pid)&&typeof e.socket_path=="string"&&typeof e.store_uri=="string"&&typeof e.resident_version=="string"&&typeof e.started_at=="string"}async function OP(e){let t=Date.now()+1e3;for(;Date.now()<t;){if(!await qn(e,50))return;await new Promise(r=>setTimeout(r,50))}}import{spawn as AP}from"node:child_process";var Eu=["supports","contradicts","related_to"];function Tu(e){return{rid:e.rid,id:e.properties.id,title:e.properties.title,kind:e.kind,content:e.properties.content,tags:e.properties.tags}}function Pu(e){return typeof e=="string"&&Eu.includes(e)}function Rr(e){return e.properties.metadata?.derived===!0||typeof e.properties.metadata?.derived_kind=="string"}function Iy(e){return[e.properties.title,e.kind,...e.properties.tags,e.properties.content].join(`
59
- `)}function NP(e){return{deriveConnections(t){return DP(e,t)}}}function Oy(e=process.env){let t=e.RED_BRAIN_AUTOLINK_AFK_COMMAND??e.RED_BRAIN_AUTOLINK_HEADLESS_COMMAND;if(t)return NP({command:t,args:jP(e.RED_BRAIN_AUTOLINK_AFK_ARGS??e.RED_BRAIN_AUTOLINK_HEADLESS_ARGS),cwd:e.RED_BRAIN_AUTOLINK_AFK_CWD??e.RED_BRAIN_AUTOLINK_HEADLESS_CWD,env:e,timeoutMs:MP(e.RED_BRAIN_AUTOLINK_AFK_TIMEOUT_MS)??6e4})}function CP(e){let t=JSON.parse(qP(e));return(Array.isArray(t)?t:Su(t)&&Array.isArray(t.connections)?t.connections:[]).filter(LP).map(n=>({from:n.from,to:n.to,kind:n.kind,reason:typeof n.reason=="string"?n.reason:void 0,metadata:Su(n.metadata)?n.metadata:void 0}))}async function DP(e,t){let r=AP(e.command,e.args??[],{cwd:e.cwd,env:e.env,stdio:["pipe","pipe","pipe"]}),n=[],o=[],i,s=new Promise((a,c)=>{r.once("error",c),r.stdout.on("data",l=>n.push(l)),r.stderr.on("data",l=>o.push(l)),r.once("close",l=>a(l??0)),e.timeoutMs&&e.timeoutMs>0&&(i=setTimeout(()=>{r.kill("SIGTERM"),c(new Error(`Brain autolink AFK headless provider timed out after ${e.timeoutMs}ms`))},e.timeoutMs))});r.stdin.end(JSON.stringify(t));try{let a=await s;if(a!==0){let c=Buffer.concat(o).toString("utf8").trim();throw new Error(`Brain autolink AFK headless provider exited ${a}${c?`: ${c}`:""}`)}return CP(Buffer.concat(n).toString("utf8"))}finally{i&&clearTimeout(i)}}function jP(e){if(!e)return[];let t=JSON.parse(e);if(!Array.isArray(t)||t.some(r=>typeof r!="string"))throw new Error("RED_BRAIN_AUTOLINK_AFK_ARGS must be a JSON array of strings");return t}function MP(e){if(e==null||e==="")return;let t=Number(e);return Number.isInteger(t)&&t>0?t:void 0}function qP(e){let t=e.trim();return(t.match(/```(?:json)?\s*([\s\S]*?)\s*```/i)?.[1]??t).trim()}function LP(e){return Su(e)&&(typeof e.from=="number"||typeof e.from=="string")&&(typeof e.to=="number"||typeof e.to=="string")&&Pu(e.kind)}function Su(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}import{existsSync as wi}from"node:fs";import{mkdir as BP,readFile as Ru,writeFile as ZP}from"node:fs/promises";import{dirname as zu,isAbsolute as UP,join as zr,resolve as Rt}from"node:path";var vi="file://./.red/brain/brain.rdb",FP="RED_BRAIN_ROOT",VP="brain.root";async function KP(e=process.cwd(),t={}){let n=(t.env??process.env)[FP];if(n)return Rt(e,n);let o=await HP(e);if(o)return o;let i=Rt(e),s=null;for(;;){let a=zr(i,".red");if(wi(a)&&(s??=i,wi(zr(a,"brain"))||wi(zr(a,VP))))return i;let c=zu(i);if(c===i)return s??Rt(e);i=c}}async function HP(e){let t=Rt(e);for(;;){let r=zr(t,".red","config.yaml");try{let o=await Ru(r,"utf8"),i=WP(o);if(i)return Rt(t,i)}catch(o){if(o.code!=="ENOENT")throw o}let n=zu(t);if(n===t)return null;t=n}}function WP(e){let t=GP(e);return t["plugins.brain.rootDir"]??t["plugins.brain.root"]??t["plugins.brain.root_dir"]??t["brain.rootDir"]??t["brain.root"]??t["brain.root_dir"]??null}function GP(e){let t={},r=[],n=[];for(let o of e.split(`
60
- `)){let i=o.replace(/\r$/,"");if(!/".*"/.test(i)&&!/'.*'/.test(i)){let f=i.indexOf("#");f>=0&&(i=i.slice(0,f))}if(i.replace(/\s/g,"")==="")continue;let s=i.match(/^ */)?.[0].length??0;if(s%2!==0)continue;let a=i.slice(s).replace(/\s+$/,""),c=a.indexOf(":");if(c<0||!/^[a-zA-Z_][a-zA-Z0-9_-]*$/.test(a.slice(0,c)))continue;let l=a.slice(0,c),u=a.slice(c+1).replace(/^\s+/,"");for((u.startsWith('"')&&u.endsWith('"')&&u.length>=2||u.startsWith("'")&&u.endsWith("'")&&u.length>=2)&&(u=u.slice(1,-1));n.length>0&&n[n.length-1]>=s;)r.pop(),n.pop();let d=r.length>0?`${r.join(".")}.${l}`:l;u===""?(r.push(l),n.push(s)):t[d]=u}return t}function Ay(e){return zr(Rt(e),".red","brain","config.yaml")}function JP(e){return zr(Rt(e),".env")}async function QP(e){let t=Ay(e);return wi(t)||(await BP(zu(t),{recursive:!0}),await ZP(t,`connection_string: ${vi}
61
- `,"utf8")),t}async function YP(e){let t=Ay(e);try{let r=await Ru(t,"utf8");return XP(r)}catch(r){if(r.code==="ENOENT")return null;throw r}}function XP(e){let t=e.split(/\r?\n/).map(n=>n.trim()).find(n=>n.startsWith("connection_string:"));if(!t)return{connection_string:vi};let r=t.slice(18).trim();return{connection_string:Ny(r)||vi}}function Ny(e){return e.startsWith('"')&&e.endsWith('"')||e.startsWith("'")&&e.endsWith("'")?e.slice(1,-1):e}async function Cy(e=process.cwd()){let t=await KP(e),r=await QP(t),n=await YP(t)??{connection_string:vi},o=await eR(t),i=n.connection_string,s=tR(i,o);return{rootDir:t,configPath:r,rawConnectionString:i,connectionString:rR(t,s)}}async function eR(e){let t={...process.env};try{let r=await Ru(JP(e),"utf8");for(let n of r.split(/\r?\n/)){let o=n.trim();if(!o||o.startsWith("#"))continue;let i=o.indexOf("=");if(i<=0)continue;let s=o.slice(0,i).trim(),a=Ny(o.slice(i+1).trim());t[s]==null&&(t[s]=a)}}catch(r){if(r.code!=="ENOENT")throw r}return t}function tR(e,t){return e.replace(/\$(\w+)|\$\{([^}]+)\}/g,(r,n,o)=>{let i=String(n??o),s=t[i];if(s==null||s==="")throw new Error(`Brain connection_string references missing environment variable ${i}`);return s})}function rR(e,t){if(!t.startsWith("file://"))return t;let r=t.slice(7);return UP(r)?t:`file://${Rt(e,r)}`}import{existsSync as nR}from"node:fs";import{resolve as oR}from"node:path";var iR=7,sR=64*1024*1024;function jy(e){if(!e.connectionString.startsWith("file://"))return!1;let t=e.connectionString.slice(7);if(xy(e.rootDir,t))throw vu();return t===wu(e.rootDir)}async function My(e){let t=_i(e.rootDir),r=new gi(t,cR(e.rootDir));return await r.request({op:"ping"}),new Iu(r)}function aR(e){return`file://${by(oR(e),nR)}`}function cR(e){return{storeUri:aR(e),ttlDays:iR,byteBudget:sR,serverCommand:process.env.RSP_BIN??"rsp"}}var Iu=class{constructor(t){this.client=t}async close(){}async status(){let t=await this.request("status");return uR(t)?t:{}}async capture(t){return await this.request("capture",t)}async getArtifact(t){return await this.request("getArtifact",{ridOrId:t})}async listArtifacts(){return await this.request("listArtifacts")}async search(t,r=10,n={}){return await this.request("search",{query:t,limit:r,options:Dy(n)})}async think(t,r=8,n={}){return await this.request("think",{query:t,limit:r,options:Dy(n)})}async link(t){return await this.request("link",t)}async backlinks(t){return await this.request("backlinks",{target:t})}async listConnections(){return await this.request("listConnections")}async eventKpis(t={}){return await this.request("eventKpis",t)}async appendOutcomeEvent(t){return await this.request("appendOutcomeEvent",t)}async replayOutcomeEvents(){return await this.request("replayOutcomeEvents")}async loadModelTierBanditDocument(){return await this.request("loadModelTierBanditDocument")}async saveModelTierBanditDocument(t){return await this.request("saveModelTierBanditDocument",t)}async refreshModelTierBanditDocument(){return await this.request("refreshModelTierBanditDocument")}async request(t,r){return await this.client.request({op:"brain",action:t,payload:r})}};function Dy(e){return{...e,excludeRids:e.excludeRids?[...e.excludeRids]:void 0}}function uR(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var lR=typeof globalThis.Bun<"u"&&typeof globalThis.Bun.spawn=="function",dR=typeof globalThis.Deno<"u"&&typeof globalThis.Deno.Command=="function";async function qy(e,t){return lR?pR(e,t):dR?hR(e,t):fR(e,t)}async function fR(e,t){let{spawn:r}=await import("node:child_process"),n=r(e,t,{stdio:["pipe","pipe","inherit"]});return{runtime:"node",stdin:{write(o){return new Promise((i,s)=>{n.stdin.write(o,a=>a?s(a):i())})},end(){n.stdin.end()}},stdout:n.stdout,kill(){n.kill("SIGTERM")},wait(){return new Promise(o=>{n.on("exit",i=>o(i??0))})}}}function pR(e,t){let r=globalThis.Bun.spawn({cmd:[e,...t],stdin:"pipe",stdout:"pipe",stderr:"inherit"}),n=r.stdin.getWriter?r.stdin.getWriter():null;return{runtime:"bun",stdin:{async write(o){n?await n.write(o):(r.stdin.write(o),await r.stdin.flush())},end(){n?n.close():r.stdin.end()}},stdout:mR(r.stdout),kill(){r.kill()},wait(){return r.exited}}}async function*mR(e){let t=e.getReader();try{for(;;){let{value:r,done:n}=await t.read();if(n)return;yield r}}finally{t.releaseLock()}}async function hR(e,t){let n=new globalThis.Deno.Command(e,{args:t,stdin:"piped",stdout:"piped",stderr:"inherit"}).spawn(),o=n.stdin.getWriter();return{runtime:"deno",stdin:{async write(i){await o.write(i)},end(){try{o.close()}catch{}}},stdout:gR(n.stdout),kill(){try{n.kill("SIGTERM")}catch{}},async wait(){return(await n.status).code??0}}}async function*gR(e){let t=e.getReader();try{for(;;){let{value:r,done:n}=await t.read();if(n)return;yield r}}finally{t.releaseLock()}}import{fileURLToPath as wR}from"node:url";import{dirname as vR,resolve as bR,join as Dq}from"node:path";import{existsSync as yR}from"node:fs";import{join as _R}from"node:path";function Ly(e){if(!e||typeof e!="object")throw new TypeError("resolveBin: options object required");let{name:t,packageRoot:r,envVar:n}=e;if(typeof t!="string"||t==="")throw new TypeError("resolveBin: `name` must be a non-empty string");if(typeof r!="string"||r==="")throw new TypeError("resolveBin: `packageRoot` must be a non-empty string");if(typeof n!="string"||n==="")throw new TypeError("resolveBin: `envVar` must be a non-empty string");let o=process.env?.[n];if(typeof o=="string"&&o!=="")return o;let i=_R(r,"bin",t);if(yR(i))return i;throw new Error(`reddb: binary "${t}" not found.
58
+ `)}function vP(e,t){let r=Buffer.byteLength(e,"utf8");return r<=t?e:Buffer.from(e,"utf8").subarray(r-t).toString("utf8").replace(/^\uFFFD+/,"")}function bP(e){let t=e.trim();if(!t)return null;try{return JSON.parse(t)}catch{return ft(t)}}async function $y(e,t){try{let r=await mP(e.registryPath);if(!r||r.socket_path!==e.socketPath||r.store_uri!==t.storeUri)return;if(!Mn(r.pid)){await jn(e.registryPath,{force:!0});return}if(await qn(r.socket_path,100))return;if(Ry(t.clientVersion,r.resident_version)&&(await kP(r.pid,1500),!Mn(r.pid))){await jn(e.registryPath,{force:!0});return}await xP(r.pid),await jn(e.registryPath,{force:!0})}catch{}}function Mn(e){if(!Number.isInteger(e)||e<=0)return!1;try{return process.kill(e,0),!0}catch{return!1}}async function xP(e){if(!Mn(e))return;try{process.kill(e,"SIGTERM")}catch{return}let t=Date.now()+1e3;for(;Date.now()<t;){if(!Mn(e))return;await new Promise(r=>setTimeout(r,50))}try{process.kill(e,"SIGKILL")}catch{}}async function kP(e,t){let r=Date.now()+t;for(;Date.now()<r;){if(!Mn(e))return;await new Promise(n=>setTimeout(n,50))}}function $P(e){if(e.serverCommand)return[e.serverCommand,e.serverArgs??[]];let t=process.argv[1]?yi(process.argv[1]):uP(import.meta.url);return[process.execPath,[...process.execArgv,t]]}function SP(e){let t=nP("sha256").update(e).digest("hex").slice(0,20),r=process.env.XDG_RUNTIME_DIR;if(r){let o=Le(r,"red-skills",t);if(Le(o,"rsp.sock").length<lP)return o}let n=typeof process.getuid=="function"?process.getuid():"nouid";return Le(cP(),`red-skills-${n}`,t)}function EP(e){let t=yi(e);for(let r=0;r<32;r++){try{let o=ku(Le(t,".git"));if(o!=null)return TP(t,o)??t;if(ku(Le(t,".git","HEAD"))!=null||ku(Le(t,".red","config.yaml"))!=null)return t}catch{}let n=Pr(t);if(n===t)return null;t=n}return null}function TP(e,t){let r=/^gitdir:\s*(.+?)\s*$/m.exec(t);if(!r)return null;let n=yi(e,r[1]);return/[/\\]worktrees[/\\][^/\\]+$/.test(n)?Pr(Pr(Pr(n))):null}function ku(e){try{return iP(e,"utf8")}catch{return null}}async function Sy(e,t){let r=await Py(e).catch(()=>null);return r?Ry(t.clientVersion,r.version)?(await PP(e,t.clientVersion),await OP(e),!1):!0:!1}async function PP(e,t){try{await hi({socketPath:e,timeoutMs:200},{id:$u(),op:"handover",clientVersion:t})}catch{}}function Ry(e,t){return!e||!t?!1:RP(e,t)>0}function RP(e,t){let r=Ey(e),n=Ey(t);return!r||!n?0:r.major-n.major||r.minor-n.minor||r.patch-n.patch}function Ey(e){let t=/^(\d+)\.(\d+)\.(\d+)/.exec(String(e).trim());return t?{major:Number(t[1]),minor:Number(t[2]),patch:Number(t[3])}:null}function zy(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function zP(e){return typeof e=="string"&&e.length>0?e:void 0}function IP(e){return zy(e)&&e.version===dP&&Number.isInteger(e.pid)&&typeof e.socket_path=="string"&&typeof e.store_uri=="string"&&typeof e.resident_version=="string"&&typeof e.started_at=="string"}async function OP(e){let t=Date.now()+1e3;for(;Date.now()<t;){if(!await qn(e,50))return;await new Promise(r=>setTimeout(r,50))}}import{spawn as AP}from"node:child_process";var Eu=["supports","contradicts","related_to"];function Tu(e){return{rid:e.rid,id:e.properties.id,title:e.properties.title,kind:e.kind,content:e.properties.content,tags:e.properties.tags}}function Pu(e){return typeof e=="string"&&Eu.includes(e)}function Rr(e){return e.properties.metadata?.derived===!0||typeof e.properties.metadata?.derived_kind=="string"}function Iy(e){return[e.properties.title,e.kind,...e.properties.tags,e.properties.content].join(`
59
+ `)}function NP(e){return{deriveConnections(t){return DP(e,t)}}}function Oy(e=process.env){let t=e.RED_BRAIN_AUTOLINK_AFK_COMMAND??e.RED_BRAIN_AUTOLINK_HEADLESS_COMMAND;if(t)return NP({command:t,args:jP(e.RED_BRAIN_AUTOLINK_AFK_ARGS??e.RED_BRAIN_AUTOLINK_HEADLESS_ARGS),cwd:e.RED_BRAIN_AUTOLINK_AFK_CWD??e.RED_BRAIN_AUTOLINK_HEADLESS_CWD,env:e,timeoutMs:MP(e.RED_BRAIN_AUTOLINK_AFK_TIMEOUT_MS)??6e4})}function CP(e){let t=JSON.parse(qP(e));return(Array.isArray(t)?t:Su(t)&&Array.isArray(t.connections)?t.connections:[]).filter(LP).map(n=>({from:n.from,to:n.to,kind:n.kind,reason:typeof n.reason=="string"?n.reason:void 0,metadata:Su(n.metadata)?n.metadata:void 0}))}async function DP(e,t){let r=AP(e.command,e.args??[],{cwd:e.cwd,env:e.env,stdio:["pipe","pipe","pipe"]}),n=[],o=[],i,s=new Promise((a,c)=>{r.once("error",c),r.stdout.on("data",l=>n.push(l)),r.stderr.on("data",l=>o.push(l)),r.once("close",l=>a(l??0)),e.timeoutMs&&e.timeoutMs>0&&(i=setTimeout(()=>{r.kill("SIGTERM"),c(new Error(`Brain autolink AFK headless provider timed out after ${e.timeoutMs}ms`))},e.timeoutMs))});r.stdin.end(JSON.stringify(t));try{let a=await s;if(a!==0){let c=Buffer.concat(o).toString("utf8").trim();throw new Error(`Brain autolink AFK headless provider exited ${a}${c?`: ${c}`:""}`)}return CP(Buffer.concat(n).toString("utf8"))}finally{i&&clearTimeout(i)}}function jP(e){if(!e)return[];let t=JSON.parse(e);if(!Array.isArray(t)||t.some(r=>typeof r!="string"))throw new Error("RED_BRAIN_AUTOLINK_AFK_ARGS must be a JSON array of strings");return t}function MP(e){if(e==null||e==="")return;let t=Number(e);return Number.isInteger(t)&&t>0?t:void 0}function qP(e){let t=e.trim();return(t.match(/```(?:json)?\s*([\s\S]*?)\s*```/i)?.[1]??t).trim()}function LP(e){return Su(e)&&(typeof e.from=="number"||typeof e.from=="string")&&(typeof e.to=="number"||typeof e.to=="string")&&Pu(e.kind)}function Su(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}import{existsSync as wi}from"node:fs";import{mkdir as BP,readFile as Ru,writeFile as ZP}from"node:fs/promises";import{dirname as zu,isAbsolute as UP,join as zr,resolve as zt}from"node:path";var vi="file://./.red/brain/brain.rdb",FP="RED_BRAIN_ROOT",VP="brain.root";async function KP(e=process.cwd(),t={}){let n=(t.env??process.env)[FP];if(n)return zt(e,n);let o=await HP(e);if(o)return o;let i=zt(e),s=null;for(;;){let a=zr(i,".red");if(wi(a)&&(s??=i,wi(zr(a,"brain"))||wi(zr(a,VP))))return i;let c=zu(i);if(c===i)return s??zt(e);i=c}}async function HP(e){let t=zt(e);for(;;){let r=zr(t,".red","config.yaml");try{let o=await Ru(r,"utf8"),i=WP(o);if(i)return zt(t,i)}catch(o){if(o.code!=="ENOENT")throw o}let n=zu(t);if(n===t)return null;t=n}}function WP(e){let t=GP(e);return t["plugins.brain.rootDir"]??t["plugins.brain.root"]??t["plugins.brain.root_dir"]??t["brain.rootDir"]??t["brain.root"]??t["brain.root_dir"]??null}function GP(e){let t={},r=[],n=[];for(let o of e.split(`
60
+ `)){let i=o.replace(/\r$/,"");if(!/".*"/.test(i)&&!/'.*'/.test(i)){let f=i.indexOf("#");f>=0&&(i=i.slice(0,f))}if(i.replace(/\s/g,"")==="")continue;let s=i.match(/^ */)?.[0].length??0;if(s%2!==0)continue;let a=i.slice(s).replace(/\s+$/,""),c=a.indexOf(":");if(c<0||!/^[a-zA-Z_][a-zA-Z0-9_-]*$/.test(a.slice(0,c)))continue;let l=a.slice(0,c),u=a.slice(c+1).replace(/^\s+/,"");for((u.startsWith('"')&&u.endsWith('"')&&u.length>=2||u.startsWith("'")&&u.endsWith("'")&&u.length>=2)&&(u=u.slice(1,-1));n.length>0&&n[n.length-1]>=s;)r.pop(),n.pop();let d=r.length>0?`${r.join(".")}.${l}`:l;u===""?(r.push(l),n.push(s)):t[d]=u}return t}function Ay(e){return zr(zt(e),".red","brain","config.yaml")}function JP(e){return zr(zt(e),".env")}async function QP(e){let t=Ay(e);return wi(t)||(await BP(zu(t),{recursive:!0}),await ZP(t,`connection_string: ${vi}
61
+ `,"utf8")),t}async function YP(e){let t=Ay(e);try{let r=await Ru(t,"utf8");return XP(r)}catch(r){if(r.code==="ENOENT")return null;throw r}}function XP(e){let t=e.split(/\r?\n/).map(n=>n.trim()).find(n=>n.startsWith("connection_string:"));if(!t)return{connection_string:vi};let r=t.slice(18).trim();return{connection_string:Ny(r)||vi}}function Ny(e){return e.startsWith('"')&&e.endsWith('"')||e.startsWith("'")&&e.endsWith("'")?e.slice(1,-1):e}async function Cy(e=process.cwd()){let t=await KP(e),r=await QP(t),n=await YP(t)??{connection_string:vi},o=await eR(t),i=n.connection_string,s=tR(i,o);return{rootDir:t,configPath:r,rawConnectionString:i,connectionString:rR(t,s)}}async function eR(e){let t={...process.env};try{let r=await Ru(JP(e),"utf8");for(let n of r.split(/\r?\n/)){let o=n.trim();if(!o||o.startsWith("#"))continue;let i=o.indexOf("=");if(i<=0)continue;let s=o.slice(0,i).trim(),a=Ny(o.slice(i+1).trim());t[s]==null&&(t[s]=a)}}catch(r){if(r.code!=="ENOENT")throw r}return t}function tR(e,t){return e.replace(/\$(\w+)|\$\{([^}]+)\}/g,(r,n,o)=>{let i=String(n??o),s=t[i];if(s==null||s==="")throw new Error(`Brain connection_string references missing environment variable ${i}`);return s})}function rR(e,t){if(!t.startsWith("file://"))return t;let r=t.slice(7);return UP(r)?t:`file://${zt(e,r)}`}import{existsSync as nR}from"node:fs";import{resolve as oR}from"node:path";var iR=7,sR=64*1024*1024;function jy(e){if(!e.connectionString.startsWith("file://"))return!1;let t=e.connectionString.slice(7);if(xy(e.rootDir,t))throw vu();return t===wu(e.rootDir)}async function My(e){let t=_i(e.rootDir),r=new gi(t,cR(e.rootDir));return await r.request({op:"ping"}),new Iu(r)}function aR(e){return`file://${by(oR(e),nR)}`}function cR(e){return{storeUri:aR(e),ttlDays:iR,byteBudget:sR,serverCommand:process.env.RSP_BIN??"rsp"}}var Iu=class{constructor(t){this.client=t}async close(){}async status(){let t=await this.request("status");return uR(t)?t:{}}async capture(t){return await this.request("capture",t)}async getArtifact(t){return await this.request("getArtifact",{ridOrId:t})}async listArtifacts(){return await this.request("listArtifacts")}async search(t,r=10,n={}){return await this.request("search",{query:t,limit:r,options:Dy(n)})}async think(t,r=8,n={}){return await this.request("think",{query:t,limit:r,options:Dy(n)})}async link(t){return await this.request("link",t)}async backlinks(t){return await this.request("backlinks",{target:t})}async listConnections(){return await this.request("listConnections")}async eventKpis(t={}){return await this.request("eventKpis",t)}async appendOutcomeEvent(t){return await this.request("appendOutcomeEvent",t)}async replayOutcomeEvents(){return await this.request("replayOutcomeEvents")}async loadModelTierBanditDocument(){return await this.request("loadModelTierBanditDocument")}async saveModelTierBanditDocument(t){return await this.request("saveModelTierBanditDocument",t)}async refreshModelTierBanditDocument(){return await this.request("refreshModelTierBanditDocument")}async request(t,r){return await this.client.request({op:"brain",action:t,payload:r})}};function Dy(e){return{...e,excludeRids:e.excludeRids?[...e.excludeRids]:void 0}}function uR(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var lR=typeof globalThis.Bun<"u"&&typeof globalThis.Bun.spawn=="function",dR=typeof globalThis.Deno<"u"&&typeof globalThis.Deno.Command=="function";async function qy(e,t){return lR?pR(e,t):dR?hR(e,t):fR(e,t)}async function fR(e,t){let{spawn:r}=await import("node:child_process"),n=r(e,t,{stdio:["pipe","pipe","inherit"]});return{runtime:"node",stdin:{write(o){return new Promise((i,s)=>{n.stdin.write(o,a=>a?s(a):i())})},end(){n.stdin.end()}},stdout:n.stdout,kill(){n.kill("SIGTERM")},wait(){return new Promise(o=>{n.on("exit",i=>o(i??0))})}}}function pR(e,t){let r=globalThis.Bun.spawn({cmd:[e,...t],stdin:"pipe",stdout:"pipe",stderr:"inherit"}),n=r.stdin.getWriter?r.stdin.getWriter():null;return{runtime:"bun",stdin:{async write(o){n?await n.write(o):(r.stdin.write(o),await r.stdin.flush())},end(){n?n.close():r.stdin.end()}},stdout:mR(r.stdout),kill(){r.kill()},wait(){return r.exited}}}async function*mR(e){let t=e.getReader();try{for(;;){let{value:r,done:n}=await t.read();if(n)return;yield r}}finally{t.releaseLock()}}async function hR(e,t){let n=new globalThis.Deno.Command(e,{args:t,stdin:"piped",stdout:"piped",stderr:"inherit"}).spawn(),o=n.stdin.getWriter();return{runtime:"deno",stdin:{async write(i){await o.write(i)},end(){try{o.close()}catch{}}},stdout:gR(n.stdout),kill(){try{n.kill("SIGTERM")}catch{}},async wait(){return(await n.status).code??0}}}async function*gR(e){let t=e.getReader();try{for(;;){let{value:r,done:n}=await t.read();if(n)return;yield r}}finally{t.releaseLock()}}import{fileURLToPath as wR}from"node:url";import{dirname as vR,resolve as bR,join as jq}from"node:path";import{existsSync as yR}from"node:fs";import{join as _R}from"node:path";function Ly(e){if(!e||typeof e!="object")throw new TypeError("resolveBin: options object required");let{name:t,packageRoot:r,envVar:n}=e;if(typeof t!="string"||t==="")throw new TypeError("resolveBin: `name` must be a non-empty string");if(typeof r!="string"||r==="")throw new TypeError("resolveBin: `packageRoot` must be a non-empty string");if(typeof n!="string"||n==="")throw new TypeError("resolveBin: `envVar` must be a non-empty string");let o=process.env?.[n];if(typeof o=="string"&&o!=="")return o;let i=_R(r,"bin",t);if(yR(i))return i;throw new Error(`reddb: binary "${t}" not found.
62
62
  expected at: ${i}
63
63
  override: set ${n}=/path/to/${t}
64
64
  fix: re-run \`pnpm install\` (the postinstall script downloads it),
@@ -66,11 +66,11 @@ ${o}`),n.join(`
66
66
  `)).catch(a=>{this.pending.delete(n),s(a)})})}async close(){if(!this.closed){try{await this.call("close",{})}catch{}this.#e("close requested");try{this.child.stdin.end()}catch{}await this.child.wait()}}async#t(){let t=new Uint8Array(0);try{for await(let r of this.child.stdout){let n=new Uint8Array(t.length+r.length);n.set(t,0),n.set(r,t.length),t=n;let o=0;for(let i=0;i<t.length;i++)if(t[i]===10){let s=t.subarray(o,i);this.#r(ER.decode(s)),o=i+1}o>0&&(t=t.subarray(o))}}catch(r){this.#e(`stdout reader error: ${r.message}`);return}this.#e("server stdout closed")}#r(t){if(!t.trim())return;let r;try{r=JSON.parse(t)}catch(i){this.#e(`malformed server response: ${i.message}`);return}let n=r.id;if(n==null)return;let o=this.pending.get(n);o&&(this.pending.delete(n),r.error?o.reject(new z(r.error.code??"UNKNOWN",r.error.message??"unknown error",r.error.data)):o.resolve(r.result))}#e(t){if(this.closed)return;this.closed=!0,this.closeReason=t;let r=new z("CLIENT_CLOSED",t);for(let{reject:n}of this.pending.values())n(r);this.pending.clear()}};function Au(e){if(typeof e!="string"||e.length===0)throw new TypeError("connect() requires a URI string (e.g. 'red://localhost:5050' or 'red:///data.rdb')");return e.startsWith("red://")||e==="red:"||e==="red:/"?TR(e):PR(e)}function TR(e){let t=e;e==="red:"||e==="red:/"||e==="red://"?t="red://embedded.local":e.startsWith("red:///")?t=`red://embedded.local${e.slice(6)}`:(e==="red://memory"||e==="red://memory/"||e==="red://:memory"||e==="red://:memory:")&&(t="red://embedded.local");let r;try{r=new URL(t)}catch(u){throw new z("UNPARSEABLE_URI",`failed to parse '${e}': ${u.message}`)}let n=r.searchParams,o=(n.get("proto")||"").toLowerCase(),i=r.pathname&&r.pathname!=="/"?r.pathname:"";if(r.hostname==="embedded.local")return i?{kind:"embedded",path:i,params:n,originalUri:e}:{kind:"embedded",params:n,originalUri:e};let s=RR(o),a=r.port?Number(r.port):Ou(s),c=r.username?decodeURIComponent(r.username):void 0,l=r.password?decodeURIComponent(r.password):void 0;return{kind:s,host:r.hostname,port:a,path:i||void 0,username:c,password:l,token:n.get("token")??void 0,apiKey:n.get("apiKey")??n.get("api_key")??void 0,loginUrl:n.get("loginUrl")??n.get("login_url")??void 0,params:n,originalUri:e}}function PR(e){if(e==="memory://"||e==="memory:")return{kind:"embedded",originalUri:e};if(e.startsWith("file://")){let t=e.slice(7);if(!t)throw new TypeError(`invalid file:// URI: missing path in '${e}'`);return{kind:"embedded",path:t,originalUri:e}}if(e.startsWith("grpc://")||e.startsWith("grpcs://")||e.startsWith("reds://")){let t=e.split("://",1)[0],r;try{r=new URL("https://"+e.slice(`${t}://`.length))}catch(i){throw new z("UNPARSEABLE_URI",`failed to parse '${e}': ${i.message}`)}if(!r.hostname)throw new TypeError(`invalid ${t}:// URI: missing host in '${e}'`);let n=t==="reds"?"reds":t==="grpcs"?"grpcs":"grpc",o=r.searchParams;return{kind:n,host:r.hostname,port:r.port?Number(r.port):Ou(n),username:r.username?decodeURIComponent(r.username):void 0,password:r.password?decodeURIComponent(r.password):void 0,token:o.get("token")??void 0,apiKey:o.get("apiKey")??o.get("api_key")??void 0,loginUrl:o.get("loginUrl")??o.get("login_url")??void 0,params:o,originalUri:e}}if(e.startsWith("http://")||e.startsWith("https://")){let t;try{t=new URL(e)}catch(r){throw new z("UNPARSEABLE_URI",`failed to parse '${e}': ${r.message}`)}return{kind:t.protocol==="https:"?"https":"http",host:t.hostname,port:t.port?Number(t.port):Ou(t.protocol==="https:"?"https":"http"),path:t.pathname!=="/"?t.pathname:void 0,username:t.username?decodeURIComponent(t.username):void 0,password:t.password?decodeURIComponent(t.password):void 0,token:t.searchParams.get("token")??void 0,apiKey:t.searchParams.get("apiKey")??void 0,params:t.searchParams,originalUri:e}}throw new z("UNSUPPORTED_SCHEME",`unsupported URI: '${e}'. Use 'red://...' or one of memory://, file://, grpc://, http(s)://`)}function RR(e){switch(e){case"":case"red":return"red";case"reds":return"reds";case"grpc":return"grpc";case"grpcs":return"grpcs";case"http":return"http";case"https":return"https";case"pg":case"postgres":case"postgresql":return"pg";default:throw new z("UNSUPPORTED_PROTO",`unknown proto='${e}'. Supported: red | reds | grpc | grpcs | http | https | pg`)}}function Ou(e){switch(e){case"http":return 5e3;case"https":return 55555;case"red":case"reds":case"redwire":return 5050;case"grpc":return 55055;case"grpcs":return 55555;case"pg":case"postgres":case"postgresql":return 5432;default:return}}var zR=new Set(["embedded"]),Ln=class{constructor(t,r){this._client=t,this._transport=r??null}_guard(t){if(this._transport&&zR.has(this._transport))throw new z("UNSUPPORTED_TRANSPORT",`cache.${t} is not available on '${this._transport}' transport; use @reddb-io/client for remote cache endpoints.`)}async get(t,r){this._guard("get");let n=await this._client.call("cache.get",{namespace:t,key:r});return n==null||n.value==null?null:OR(n.value)}async put(t,r,n,o={}){this._guard("put");let i=IR(n);await this._client.call("cache.put",{namespace:t,key:r,value:i,...o})}async exists(t,r){return this._guard("exists"),(await this._client.call("cache.exists",{namespace:t,key:r}))?.status??"maybe"}async invalidate(t,r){this._guard("invalidate"),await this._client.call("cache.invalidate",{namespace:t,key:r})}async invalidatePrefix(t,r){return this._guard("invalidatePrefix"),(await this._client.call("cache.invalidate_prefix",{namespace:t,prefix:r}))?.removed??0}async invalidateTags(t,r){return this._guard("invalidateTags"),(await this._client.call("cache.invalidate_tags",{namespace:t,tags:r}))?.removed??0}async flushNamespace(t){this._guard("flushNamespace"),await this._client.call("cache.flush_namespace",{namespace:t})}};function IR(e){if(typeof e=="string"){let t=new TextEncoder().encode(e);return Zy(t)}if(e instanceof Uint8Array||typeof Buffer<"u"&&Buffer.isBuffer(e))return Zy(e);throw new TypeError("cache value must be a string, Uint8Array, or Buffer")}function Zy(e){if(typeof Buffer<"u")return Buffer.from(e).toString("base64");let t="";for(let r of e)t+=String.fromCharCode(r);return btoa(t)}function OR(e){if(typeof Buffer<"u")return new Uint8Array(Buffer.from(e,"base64"));let t=atob(e),r=new Uint8Array(t.length);for(let n=0;n<t.length;n++)r[n]=t.charCodeAt(n);return r}var Ir=class{constructor(t,r="kv_default"){this.client=t,this.collection=r}put(t,r,n={}){let o=n.collection??this.collection,i=Array.isArray(n.tags)&&n.tags.length>0?` TAGS [${n.tags.map(Uy).join(", ")}]`:"",s=n.expireMs!=null?` EXPIRE ${Number(n.expireMs)} ms`:"";return this.client.call("query",{sql:`KV PUT ${Nu(o,t)} = ${NR(r)}${s}${i}`})}set(t,r,n={}){return this.put(t,r,n)}async get(t,r={}){let n=r.collection??this.collection;return(await this.client.call("query",{sql:`KV GET ${Nu(n,t)}`}))?.rows?.[0]?.value??null}async getMany(t,r={}){let n=[];for(let o of t)n.push(await this.get(o,r));return n}async exists(t,r={}){return{exists:await this.get(t,r)!==null}}async delete(t,r={}){let n=r.collection??this.collection,o=await this.client.call("query",{sql:`KV DELETE ${Nu(n,t)}`}),i=o.affected??o.affected_rows??0;return{affected:i,deleted:i>0}}async list(t={}){let r=t.collection??this.collection,n=t.limit==null?100:Number(t.limit);if(!Number.isInteger(n)||n<=0)throw new z("INVALID_ARGUMENT","kv.list limit must be a positive integer");let o=t.prefix==null?"":String(t.prefix),s=(await this.client.call("query",{sql:`SELECT key, value FROM ${Cu(r)} ORDER BY key ASC LIMIT ${n}`})).rows??[];return{items:o.length>0?s.filter(c=>String(c.key).startsWith(o)):s}}async invalidateTags(t,r={}){let n=r.collection??this.collection,o=await this.client.call("query",{sql:`INVALIDATE TAGS [${t.map(Uy).join(", ")}] FROM ${Cu(n)}`});return o.affected??o.affected_rows??o.rows?.[0]?.invalidated??0}async*watch(t,r={}){if(!this.client.baseUrl)throw new z("UNSUPPORTED_TRANSPORT","kv.watch requires the HTTP transport");let n=r.collection??this.collection,o=new URLSearchParams;r.sinceLsn!=null&&o.set("since_lsn",String(r.sinceLsn)),r.limit!=null&&o.set("limit",String(r.limit));let i=o.toString()?`?${o}`:"",s=`${this.client.baseUrl}/collections/${encodeURIComponent(n)}/kv/${encodeURIComponent(String(t))}/watch${i}`,a=await fetch(s,this.client.attachAuth({method:"GET"}));if(!a.ok)throw new z("HTTP_ERROR",`kv.watch failed with HTTP ${a.status}`);let c=await a.text();for(let l of c.split(`
67
67
 
68
68
  `)){let u=l.split(`
69
- `).find(d=>d.startsWith("data: "));u&&(yield JSON.parse(u.slice(6)))}}watchPrefix(t,r={}){return this.watch(`${t}.*`,r)}};function Nu(e,t){return`${Cu(e)}.${AR(t)}`}function Cu(e){let t=String(e),r=t.match(/[^A-Za-z0-9_]/);if(r)throw new z("INVALID_KV_KEY",`invalid KV key "${t}": character "${r[0]}" is not supported`);return t}function AR(e){let t=String(e);return/^[A-Za-z0-9_]+$/.test(t)?t:`'${t.replace(/'/g,"''")}'`}function NR(e){return typeof e=="number"||typeof e=="boolean"?String(e):e==null?"NULL":typeof e=="object"?`'${JSON.stringify(e).replace(/'/g,"''")}'`:`'${String(e).replace(/'/g,"''")}'`}function Uy(e){return`'${String(e).replace(/'/g,"''")}'`}var Bn=class{constructor(t){this.client=t}create(t){return this.client.call("query",{sql:`CREATE QUEUE IF NOT EXISTS ${ft(t)}`})}push(t,r,n={}){let o=jR(n);return this.client.call("query",{sql:`QUEUE PUSH ${ft(t)} ${MR(r)}${o}`})}async pop(t,r){let n=await this.client.call("query",{sql:`QUEUE POP ${ft(t)}${ju(r)}`});return Du(n)}async peek(t,r){let n=await this.client.call("query",{sql:`QUEUE PEEK ${ft(t)}${ju(r)}`});return Du(n)}async len(t){let r=await this.client.call("query",{sql:`QUEUE LEN ${ft(t)}`});return Number(r?.rows?.[0]?.len??0)}purge(t){return this.client.call("query",{sql:`QUEUE PURGE ${ft(t)}`})}async readWait(t,r,n={}){let o=CR(t,r,n),i=await this.client.call("query",{sql:o});return Du(i)}};function CR(e,t,r){let{waitMs:n,group:o=null,count:i=null}=r??{};if(!Number.isInteger(n)||n<0)throw new z("INVALID_QUEUE_WAIT","queue readWait requires an explicit non-negative integer waitMs (no infinite wait)");let s=ft(e),a=ft(t),c=o!=null?` GROUP ${ft(o)}`:"",l=i!=null?ju(i):"";return`QUEUE READ ${s}${c} CONSUMER ${a}${l} WAIT ${n}ms`}function ft(e){let t=String(e);if(!/^[A-Za-z_][A-Za-z0-9_]*$/.test(t))throw new z("INVALID_QUEUE_NAME",`invalid queue name "${t}": expected an SQL identifier`);return t}function ju(e){if(e==null)return"";if(!Number.isInteger(e)||e<0)throw new z("INVALID_QUEUE_COUNT","queue count must be a non-negative integer");return` COUNT ${e}`}function DR(e){if(!Number.isInteger(e))throw new z("INVALID_QUEUE_PRIORITY","queue priority must be an integer");return String(e)}function jR(e){if(e.key!=null&&(e.delay!=null||e.at!=null))throw new z("INVALID_ARGUMENT","QUEUE PUSH KEY cannot be combined with DELAY / AVAILABLE AT");let t="";return e.priority!=null&&(t+=` PRIORITY ${DR(e.priority)}`),e.key!=null&&(t+=` KEY ${Mu(e.key)}`),e.dedup!=null&&(t+=` DEDUP ${Mu(e.dedup)}`),e.delay!=null&&(t+=` DELAY ${e.delay}`),e.at!=null&&(t+=` AVAILABLE AT ${e.at}`),t}function MR(e){return typeof e=="number"||typeof e=="boolean"?String(e):e==null?"NULL":typeof e=="string"?Mu(e):JSON.stringify(e)}function Mu(e){return`'${String(e).replace(/'/g,"''")}'`}function Du(e){return Array.isArray(e?.rows)?e.rows.map(t=>t.payload):[]}var Zn=class{constructor(t){this.db=t}async insert(t,r){Fy(r,"documents.insert document"),await this.ensureCollection(t);let n=await this.db.query(`INSERT INTO ${xi(t)} DOCUMENT VALUES (${BR(r)}) RETURNING *`),o=n.rows?.[0];if(!o||o.rid==null)throw new z("INVALID_RESPONSE","documents.insert expected one returned item with rid");return{affected:n.affected??1,rid:o.rid,item:o}}async get(t,r){let n=await this.db.get(t,r);if(!n.entity)throw new z("NOT_FOUND",`document ${String(r)} was not found`);return n.entity}async list(t,r={}){let n=qR(r.limit),o=r.orderBy??r.order_by??"rid ASC",i=r.filter?` WHERE ${String(r.filter)}`:"";return{items:(await this.db.query(`SELECT * FROM ${xi(t)}${i} ORDER BY ${o} LIMIT ${n}`)).rows??[]}}async patch(t,r,n){Fy(n,"documents.patch patch");let o=Object.entries(n);if(o.length===0)throw new z("INVALID_ARGUMENT","documents.patch patch must be a non-empty object");for(let[c]of o)if(c.includes("/"))throw new z("INVALID_ARGUMENT","documents.patch currently accepts top-level document fields");let i=o.map(([c,l])=>`${Vy(c)} = ${ZR(l)}`).join(", "),a=(await this.db.query(`UPDATE ${xi(t)} SET ${i} WHERE rid = $1 RETURNING *`,r)).rows?.[0];if(!a)throw new z("NOT_FOUND",`document ${String(r)} was not found`);return a}async delete(t,r){let o=(await this.db.delete(t,r)).affected??0;return{affected:o,deleted:o>0}}async ensureCollection(t){try{await this.db.query(`CREATE DOCUMENT ${xi(t)}`)}catch(r){if(!String(r?.message??"").includes("already exists"))throw r}}};function Fy(e,t){if(!e||typeof e!="object"||Array.isArray(e))throw new z("INVALID_ARGUMENT",`${t} must be an object`)}function qR(e){if(e==null)return 100;if(!Number.isInteger(e)||e<=0)throw new z("INVALID_ARGUMENT","limit must be a positive integer");return e}function xi(e){return String(e).split(".").map(Vy).join(".")}function Vy(e){let t=String(e);if(!/^[A-Za-z_][A-Za-z0-9_]*$/.test(t))throw new z("INVALID_ARGUMENT",`invalid SQL identifier "${t}"`);return t}function LR(e){return Ky(JSON.stringify(e))}function BR(e){return JSON.stringify(e)}function ZR(e){return e==null?"NULL":typeof e=="number"||typeof e=="boolean"?String(e):typeof e=="object"?LR(e):Ky(e)}function Ky(e){return`'${String(e).replace(/'/g,"''")}'`}var Un=class{constructor(t,r="red.config"){this.client=t,this.collection=r}put(t,r,n={}){FR(n,"config");let o=n.collection??this.collection,i=Array.isArray(n.tags)&&n.tags.length>0?` TAGS [${n.tags.map(Hy).join(", ")}]`:"";return this.client.call("query",{sql:`PUT CONFIG ${zt(o)} ${zt(t)} = ${UR(r,n)}${i}`})}get(t,r={}){let n=r.collection??this.collection;return this.client.call("query",{sql:`GET CONFIG ${zt(n)} ${zt(t)}`})}resolve(t,r={}){let n=r.collection??this.collection;return this.client.call("query",{sql:`RESOLVE CONFIG ${zt(n)} ${zt(t)}`})}};function UR(e,t){if(t.secretRef){let{collection:r,key:n}=t.secretRef;return`SECRET_REF(vault, ${zt(r)}.${zt(n)})`}return VR(e)}function FR(e,t){for(let r of["ttl","ttlMs","ttl_ms","expireMs","expire_ms","expiresAt"])if(e[r]!=null)throw new TypeError(`${t} does not support TTL or expiration options`)}function zt(e){let t=String(e);if(!/^[A-Za-z0-9_.]+$/.test(t))throw new TypeError("keyed collection and key names must use letters, numbers, underscores, or dots");return t}function VR(e){return typeof e=="number"||typeof e=="boolean"?String(e):e==null?"NULL":Array.isArray(e)||typeof e=="object"?JSON.stringify(e):Hy(e)}function Hy(e){return`'${String(e).replace(/'/g,"''")}'`}var Fn=class{constructor(t,r="red.vault"){this.client=t,this.collection=r}put(t,r,n={}){KR(n,"vault");let o=n.collection??this.collection,i=Array.isArray(n.tags)&&n.tags.length>0?` TAGS [${n.tags.map(Wy).join(", ")}]`:"";return this.client.call("query",{sql:`VAULT PUT ${Or(o)}.${Or(t)} = ${HR(r)}${i}`})}get(t,r={}){let n=r.collection??this.collection;return this.client.call("query",{sql:`VAULT GET ${Or(n)}.${Or(t)}`})}unseal(t,r={}){let n=r.collection??this.collection;return this.client.call("query",{sql:`UNSEAL VAULT ${Or(n)}.${Or(t)}`})}};function KR(e,t){for(let r of["ttl","ttlMs","ttl_ms","expireMs","expire_ms","expiresAt"])if(e[r]!=null)throw new TypeError(`${t} does not support TTL or expiration options`)}function Or(e){let t=String(e);if(!/^[A-Za-z0-9_.]+$/.test(t))throw new TypeError("keyed collection and key names must use letters, numbers, underscores, or dots");return t}function HR(e){return typeof e=="number"||typeof e=="boolean"?String(e):e==null?"NULL":Array.isArray(e)||typeof e=="object"?JSON.stringify(e):Wy(e)}function Wy(e){return`'${String(e).replace(/'/g,"''")}'`}async function Jy(e){return((await e.query("SHOW COLLECTIONS")).rows??[]).map(WR)}async function Qy(e,t){return((await e.query(`SHOW COLLECTIONS WHERE name = ${JR(t)}`)).rows??[]).some(n=>n.name===String(t))}var Vn=class e{constructor(t,r,n=null,o=[],i=[]){this.db=t,this.collection=r,this.columns=n,this.whereClauses=o,this.params=i}select(...t){let r=t.length===1&&Array.isArray(t[0])?t[0]:t,n=r.length===1&&r[0]==="*"?null:r;return new e(this.db,this.collection,n!=null&&n.length>0?n:null,this.whereClauses,this.params)}where(t,...r){if(typeof t!="string"||t.trim().length===0)throw new z("INVALID_QUERY_BUILDER","where() requires a non-empty SQL condition");let n=r.length===1&&Array.isArray(r[0])?r[0]:r;return new e(this.db,this.collection,this.columns,[...this.whereClauses,t.trim()],[...this.params,...n])}async run(){let t=this.columns==null?"*":this.columns.map(Gy).join(", "),r=this.whereClauses.length>0?` WHERE ${this.whereClauses.map(s=>`(${s})`).join(" AND ")}`:"",n=`SELECT ${t} FROM ${Gy(this.collection)}${r}`,i=(this.params.length>0?await this.db.query(n,this.params):await this.db.query(n)).rows??[];return this.columns==null?i:i.map(s=>{let a={};for(let c of this.columns)a[c]=s[c];return a})}};function WR(e){return{...e,name:String(e.name),model:String(e.model),capabilities:Array.isArray(e.capabilities)?e.capabilities:[]}}function Gy(e){return String(e).split(".").map(GR).join(".")}function GR(e){let t=String(e);if(!/^[A-Za-z_][A-Za-z0-9_]*$/.test(t))throw new z("INVALID_IDENTIFIER",`invalid SQL identifier "${t}"`);return t}function JR(e){return`'${String(e).replace(/'/g,"''")}'`}var QR="remote URIs are not supported in @reddb-io/sdk; install @reddb-io/client for grpc/http/red transports",YR="1.0",e_="1.0.9",Yy="NESTED_TX_NOT_SUPPORTED";async function t_(e,t={}){let r=Au(e);if(sz(r),r.kind==="embedded"){let n=iz(r,t.auth);if(n.token||n.username)throw new z("AUTH_NOT_APPLICABLE","auth is only meaningful for remote connections; embedded modes inherit caller privileges.");let o=oz(r),i=t.binary??By(),s=await qy(i,o),a=new bi(s);return await a.call("version",{}),new Lu(a,{transport:"embedded"})}}function Xy(e){return XR(e),e instanceof Float32Array||e instanceof Float64Array?Array.from(e):e instanceof Date?{$ts:String(BigInt(e.getTime())*1000000n)}:e instanceof Uint8Array||typeof Buffer<"u"&&e instanceof Buffer?{$bytes:tz(e)}:typeof e=="number"&&!Number.isFinite(e)?Number.isNaN(e)?{$float:"NaN"}:{$float:e>0?"Infinity":"-Infinity"}:typeof e=="string"&&nz(e)?{$uuid:e}:e}function XR(e){if(e!=null&&!(typeof e=="boolean"||typeof e=="number"||typeof e=="string")){if(e instanceof Date){if(Number.isNaN(e.getTime()))throw new z("UNSUPPORTED_PARAM","cannot encode invalid Date query parameter");return}if(!(e instanceof Uint8Array||e instanceof Float32Array||e instanceof Float64Array||typeof Buffer<"u"&&e instanceof Buffer)){if(Array.isArray(e)){if(e.every(t=>typeof t=="number"))return;throw new z("UNSUPPORTED_PARAM","array query parameters must contain only numbers")}if(!(typeof e=="object"&&Object.getPrototypeOf(e)===Object.prototype))throw new z("UNSUPPORTED_PARAM",`cannot encode query parameter of type ${typeof e}`)}}}function ez(e){return e.length===0?null:e.length===1&&Array.isArray(e[0])?e[0].map(Xy):e.map(Xy)}function tz(e){let t=e instanceof Uint8Array?e:new Uint8Array(e.buffer,e.byteOffset,e.byteLength);if(typeof Buffer<"u")return Buffer.from(t.buffer,t.byteOffset,t.byteLength).toString("base64");let r="";for(let n of t)r+=String.fromCharCode(n);return btoa(r)}function rz(e){if(typeof Buffer<"u"){let n=Buffer.from(e,"base64");return new Uint8Array(n.buffer,n.byteOffset,n.byteLength)}let t=atob(e),r=new Uint8Array(t.length);for(let n=0;n<t.length;n++)r[n]=t.charCodeAt(n);return r}function nz(e){return/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(e)}function ki(e){if(Array.isArray(e))return e.map(ki);if(e&&typeof e=="object"){if(Object.keys(e).length===1){if(typeof e.$bytes=="string")return rz(e.$bytes);if(typeof e.$uuid=="string")return e.$uuid;if(typeof e.$float=="string"){if(e.$float==="NaN")return Number.NaN;if(e.$float==="Infinity"||e.$float==="+Infinity")return 1/0;if(e.$float==="-Infinity")return-1/0}if(typeof e.$ts=="string"||typeof e.$ts=="number"){let n=typeof e.$ts=="string"?BigInt(e.$ts):BigInt(Math.trunc(e.$ts));return new Date(Number(n/1000000n))}}let r={};for(let[n,o]of Object.entries(e))r[n]=ki(o);return r}return e}function oz(e){return e.path?["rpc","--stdio","--path",e.path]:["rpc","--stdio"]}function iz(e,t){let r={token:e.token??e.apiKey??null,username:e.username??null,password:e.password??null,loginUrl:e.loginUrl??null};if(t==null)return r;if(typeof t!="object")throw new TypeError("options.auth must be an object");if(t.token!=null){if(typeof t.token!="string"||t.token.length===0)throw new TypeError("options.auth.token must be a non-empty string");r.token=t.token}if(t.apiKey!=null){if(typeof t.apiKey!="string"||t.apiKey.length===0)throw new TypeError("options.auth.apiKey must be a non-empty string");r.token=t.apiKey}if(t.username!=null){if(typeof t.username!="string"||t.username.length===0)throw new TypeError("options.auth.username must be a non-empty string");r.username=t.username}if(t.password!=null){if(typeof t.password!="string"||t.password.length===0)throw new TypeError("options.auth.password must be a non-empty string");r.password=t.password}return t.loginUrl!=null&&(r.loginUrl=t.loginUrl),r}function sz(e){if(e.kind!=="embedded")throw new z("EMBEDDED_ONLY",QR)}var $i=class{constructor(t){this.db=t}query(t,...r){return this.db.query(t,...r)}execute(t,...r){return this.db.execute(t,...r)}insert(t,r){return this.db.insert(t,r)}bulkInsert(t,r){return this.db.bulkInsert(t,r)}async transaction(){throw Bu()}},qu=class{constructor(t){this.db=t,this.active=!1}async begin(){if(this.db.inTransaction)throw Bu();this.db.inTransaction=!0,this.active=!0;try{return await this.db.query("BEGIN")}catch(t){throw this.db.inTransaction=!1,this.active=!1,t}}async commit(){if(!this.active)throw new z("INVALID_ARGUMENT","tx.commit() called without an open transaction");try{return await this.db.query("COMMIT")}finally{this.active=!1,this.db.inTransaction=!1}}async rollback(){if(!this.active)throw new z("INVALID_ARGUMENT","tx.rollback() called without an open transaction");try{return await this.db.query("ROLLBACK")}finally{this.active=!1,this.db.inTransaction=!1}}async run(t){if(typeof t!="function")throw new TypeError("tx.run(callback) requires a function");if(this.db.inTransaction)throw new z("INVALID_ARGUMENT","nested tx.run() is not supported; issue savepoints via tx.query() instead");await this.begin();try{let r=await t(new $i(this.db));return await this.commit(),r}catch(r){if(this.active)try{await this.rollback()}catch(n){r_(r,n)}throw r}}},Lu=class{constructor(t,r={}){this.client=t,this.transport=r.transport??null,this.helperSpecVersion=YR,this.cache=new Ln(t,this.transport),this.queue=new Bn(t),this.queues=this.queue,this.documents=new Zn(this);let n=new Ir(t);this.kv=Object.assign((o="kv_default")=>new Ir(t,o),{put:n.put.bind(n),invalidateTags:n.invalidateTags.bind(n),watch:n.watch.bind(n),watchPrefix:n.watchPrefix.bind(n)}),this.config=(o="red.config")=>new Un(t,o),this.vault=(o="red.vault")=>new Fn(t,o),this.inTransaction=!1}query(t,...r){if(typeof t!="string"||t.trim().length===0)return Promise.reject(new z("INVALID_ARGUMENT","query() requires a non-empty SQL string"));let n=ez(r);return n==null?this.client.call("query",{sql:t}).then(ki):this.client.call("query",{sql:t,params:n}).then(ki)}execute(t,...r){return this.query(t,...r)}async insert(t,r){let n=await this.client.call("insert",{collection:t,payload:r});return az(n,"insert")}async bulkInsert(t,r){if(Array.isArray(r)&&r.length===0)return{affected:0,rids:[],ids:[]};let n=await this.client.call("bulk_insert",{collection:t,payloads:r});return cz(n,r.length)}tx(){return new qu(this)}async transaction(t){if(this.inTransaction)throw Bu();if(typeof t!="function")throw new TypeError("transaction(callback) requires a function");this.inTransaction=!0;let r=!1;try{await this.query("BEGIN"),r=!0;let n=await t(new $i(this));return await this.query("COMMIT"),n}catch(n){if(r)try{await this.query("ROLLBACK")}catch(o){r_(n,o)}throw n}finally{this.inTransaction=!1}}exists(t){return Qy(this,t)}list(){return Jy(this)}from(t){return new Vn(this,t)}get(t,r){return this.client.call("get",{collection:t,id:String(r)})}delete(t,r){return this.client.call("delete",{collection:t,id:String(r)})}health(){return this.client.call("health",{})}version(){return this.client.call("version",{})}login(t,r){return this.client.call("auth.login",{username:t,password:r})}whoami(){return this.client.call("auth.whoami",{})}changePassword(t,r){return this.client.call("auth.change_password",{current_password:t,new_password:r})}createApiKey({username:t,role:r}={}){return this.client.call("auth.create_api_key",{username:t,role:r})}revokeApiKey(t){return this.client.call("auth.revoke_api_key",{key:t})}close(){return this.client.close()}};function Bu(){return new z(Yy,`${Yy}: nested transactions are not supported on one connection`)}function r_(e,t){if(e&&typeof e=="object")try{e.rollbackError=t}catch{}}function az(e,t){if(!e||typeof e!="object"||e.rid==null&&e.id==null)throw new z("ENGINE_TOO_OLD",`${t}() requires RedDB engine >= ${e_} with insert id support`);return e.rid==null&&(e.rid=e.id),e.id==null&&(e.id=e.rid),e}function cz(e,t){if(!e||typeof e!="object"||!Array.isArray(e.rids)&&!Array.isArray(e.ids))throw new z("ENGINE_TOO_OLD",`bulkInsert() requires RedDB engine >= ${e_} with bulk insert id support`);if(Array.isArray(e.rids)||(e.rids=e.ids),Array.isArray(e.ids)||(e.ids=e.rids),e.rids.length!==t)throw new z("INVALID_RESPONSE",`bulkInsert() expected ${t} rids, got ${e.rids.length}`);return e}function Kn(e){if(typeof e!="object"||e===null)return!1;let t=e;return t.schemaVersion===1&&typeof t.id=="string"&&t.id.length>0&&typeof t.emitter=="string"&&t.emitter.length>0&&typeof t.occurredAt=="string"&&typeof t.taskClass=="string"&&uz(t.chosenOption)&&lz(t.outcome)&&dz(t.cost)}function uz(e){if(typeof e!="object"||e===null)return!1;let t=e;return typeof t.kind=="string"&&t.kind.length>0}function lz(e){return e==="success"||e==="failure"||e==="escalated"}function dz(e){if(typeof e!="object"||e===null)return!1;let t=e.signal;return t==="none"||t==="low"||t==="medium"||t==="high"||t==="unknown"}import{createHash as fz}from"node:crypto";function Zu(e){return fz("sha256").update(e).digest("hex")}function n_(e){return Zu(JSON.stringify(e))}function o_(e){return e.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/-{2,}/g,"-").replace(/^-|-$/g,"")||"artifact"}var Uu="unknown",Si=class{artifacts;constructor(t){this.artifacts=t}events(t={}){let r=t.interval??"day",n=t.timeField??"event",o=Ku(t.from),i=Ku(t.to),s=this.artifacts.filter(p=>p.kind==="event").map(p=>pz(p,n)).filter(p=>p!=null).filter(p=>hz(p,t)).filter(p=>gz(p.ts,o,i)).sort((p,m)=>p.ts-m.ts),a=s.length,c=o??(s.length>0?s[0].ts:null),l=i??(s.length>0?s[s.length-1].ts:null),u=wz(c,l,r),f=[i_(null,s,u,r)];if(t.groupBy){let m=[...yz(s,t.groupBy).entries()].map(([h,_])=>i_(h,_,u,r)).sort((h,_)=>_.total-h.total||bz(h.group,_.group));f.push(...m)}return{kind:"event",interval:r,timeField:n,range:{from:c,to:l},total:a,series:f}}};function pz(e,t){let r=e.properties.metadata??{},n=mz(e,r,t);return n==null?null:{ts:n,platform:Fu(r,"platform")??Uu,eventType:Fu(r,"event_type")??Uu,target:Fu(r,"target")??Uu}}function mz(e,t,r){let n=Number.isFinite(e.properties.created_at)?e.properties.created_at:null;return r==="ingested"?n:Ku(t.timestamp)??n}function Fu(e,t){let r=e[t];return typeof r=="string"&&r.length>0?r:void 0}function hz(e,t){return!(t.platform!=null&&e.platform!==t.platform||t.eventType!=null&&e.eventType!==t.eventType||t.target!=null&&e.target!==t.target)}function gz(e,t,r){return!(t!=null&&e<t||r!=null&&e>r)}function yz(e,t){let r=new Map;for(let n of e){let o=_z(n,t),i=r.get(o);i?i.push(n):r.set(o,[n])}return r}function _z(e,t){switch(t){case"platform":return e.platform;case"event_type":return e.eventType;case"target":return e.target}}function i_(e,t,r,n){let o=new Map;for(let s of t){let a=Vu(s.ts,n);o.set(a,(o.get(a)??0)+1)}let i=r.map(s=>({start:s,startIso:new Date(s).toISOString(),count:o.get(s)??0}));return{group:e,total:t.length,buckets:i}}function wz(e,t,r){if(e==null||t==null)return[];let n=[],o=Vu(e,r),i=Vu(t,r),s=0;for(;o<=i&&s<1e6;)n.push(o),o=vz(o,r),s++;return n}function Vu(e,t){let r=new Date(e);switch(t){case"hour":return Date.UTC(r.getUTCFullYear(),r.getUTCMonth(),r.getUTCDate(),r.getUTCHours());case"day":return Date.UTC(r.getUTCFullYear(),r.getUTCMonth(),r.getUTCDate());case"week":{let n=Date.UTC(r.getUTCFullYear(),r.getUTCMonth(),r.getUTCDate()),i=(new Date(n).getUTCDay()+6)%7;return n-i*864e5}case"month":return Date.UTC(r.getUTCFullYear(),r.getUTCMonth(),1)}}function vz(e,t){switch(t){case"hour":return e+36e5;case"day":return e+864e5;case"week":return e+6048e5;case"month":{let r=new Date(e);return Date.UTC(r.getUTCFullYear(),r.getUTCMonth()+1,1)}}}function Ku(e){if(e==null)return null;if(typeof e=="number")return Number.isFinite(e)?e:null;let t=e.trim();if(t==="")return null;if(/^\d+$/.test(t)){let n=Number(t);return Number.isFinite(n)?n:null}let r=Date.parse(t);return Number.isNaN(r)?null:r}function bz(e,t){return String(e??"").localeCompare(String(t??""))}var xz=["validate","simple","complex","think"];var kz={validate:1,simple:.85,complex:.65,think:.45};function $z(){return{schemaVersion:1,buckets:{}}}function a_(e,t={}){let r=zz(t.initial??$z());for(let n of e)Sz(r,n,t);return r}function Sz(e,t,r={}){let n=(r.tierForEvent??Ez)(t);if(!n)return e;let i=Pz(e,t.taskClass).arms[n],s=Tz(t,n);return i.posterior.alpha=s_(i.posterior.alpha+s),i.posterior.beta=s_(i.posterior.beta+(1-s)),i.observations+=1,t.outcome==="success"?(i.successes+=1,i.consecutiveFailures=0):(i.failures+=1,i.consecutiveFailures+=1),e}function Ez(e){let t=e.chosenOption.kind;if(Iz(t))return t;let r=e.chosenOption.model?.toLowerCase()??"",n=e.chosenOption.effort?.toLowerCase()??"";if(r.includes("haiku"))return"validate";if(r.includes("sonnet"))return"simple";if(r.includes("opus")&&n==="high")return"think";if(r.includes("opus"))return"complex"}function Tz(e,t){return e.outcome!=="success"?0:kz[t]}function Pz(e,t){let r=t.trim()||"unknown";return e.buckets[r]??=Rz(),e.buckets[r]}function Rz(){return{arms:{validate:Ei(),simple:Ei(),complex:Ei(),think:Ei()}}}function Ei(){return{posterior:{alpha:1,beta:1},observations:0,successes:0,failures:0,consecutiveFailures:0}}function zz(e){return JSON.parse(JSON.stringify(e))}function Iz(e){return xz.includes(e)}function s_(e){return Math.round(e*1e3)/1e3}var Ti=["pillar","decision","concept","question","playbook","task","event","pattern","hypothesis","fact","source","bookmark","note","reference","custom","project","idea","meeting","claim","organization","person"],c_={contact:"person"},Pi=["supports","contradicts","depends_on","derived_from","related_to","part_of","preceded_by","followed_by","authored","tagged"],Ge={artifacts:"brain_artifacts",connections:"brain_connections",outcomeEvents:"brain_outcome_events",kv:"brain_kv"};var zi=class e{constructor(t){this.opts=t}db;artifactCache=null;connectionCache=null;outcomeEventCache=null;modelTierBanditCache=null;static async open(t){let r=new e(t);return r.db=await t_(t.uri),await r.bootstrap(),r}get raw(){return this.db}async close(){await this.db.close()}async bootstrap(){await this.db.execute(`CREATE GRAPH IF NOT EXISTS ${Ge.artifacts}`),await this.db.execute(`CREATE GRAPH IF NOT EXISTS ${Ge.connections}`),await this.db.execute(`CREATE GRAPH IF NOT EXISTS ${Ge.outcomeEvents}`)}kv(){return this.db.kv(Ge.kv)}async capture(t){let r=h_(t.kind??"note"),n=Date.now(),o=Cz(t.tags??[]),i=n_([r,t.title,t.content,o,t.sourcePath,t.sourceSession]),s=await this.findArtifactByHash(i);if(s!=null){let h=await this.getArtifact(s);if(h)return h}let a=await this.listArtifacts(),c=`${o_(t.title)}-${i.slice(0,8)}`,l={id:c,title:t.title,content:t.content,tags:o,source_agent:t.sourceAgent,source_runner:t.sourceRunner,source_session:t.sourceSession,source_path:t.sourcePath,created_at:n,updated_at:n,hash:i,metadata:t.metadata},u={label:c,kind:r,properties:l},f=(await this.db.query(`INSERT INTO ${Ge.artifacts} NODE (label, node_type, hash, properties) VALUES ($1, $2, $3, $4) RETURNING *`,u.label,u.kind,i,l)).rows[0];if(!f)throw new Error("INSERT artifact returned no row");let p=Number(f.red_entity_id??f.rid);await this.kv().put(l_(i),p),this.artifactCache=null;let m={...u,rid:p};return await this.autoLinkArtifact(m,a),await this.materializeTagConnections(m),m}async getArtifact(t){let r=await this.listArtifacts();return typeof t=="number"?r.find(n=>n.rid===t)??null:r.find(n=>n.properties.id===t||n.label===t)??null}async listArtifacts(){if(this.artifactCache==null){let t=await this.db.query(`SELECT * FROM ${Ge.artifacts}`);this.artifactCache=t.rows.map(Oz).filter(Ri)}return this.artifactCache}async search(t,r=10,n={}){let o=Dz(t),i=new Set(n.excludeRids??[]),s=await this.listArtifacts(),a=await this.listConnections(),c=new Map(s.map(u=>[u.rid,u]));return s.filter(u=>!i.has(u.rid)).map(u=>{let d=y_(u,o),f=__({...d,connections:jz(u,o,a,c),vector:0});return{artifact:u,score:f.total,score_breakdown:f,excerpt:qz(u.properties.content,o)}}).filter(u=>u.score>0).sort((u,d)=>d.score-u.score||d.artifact.properties.updated_at-u.artifact.properties.updated_at).slice(0,r)}async link(t){let r=await this.getArtifact(t.from),n=await this.getArtifact(t.to);if(!r)throw new Error(`Brain artifact not found: ${t.from}`);if(!n)throw new Error(`Brain artifact not found: ${t.to}`);let o=g_(t.kind??"related_to"),i=await this.findConnection(r.rid,n.rid,o);if(i!=null){let u=(await this.listConnections()).find(d=>d.rid===i);if(u)return u}let s={reason:t.reason,confidence:t.confidence??"explicit",created_at:Date.now(),metadata:t.metadata},c=(await this.db.query(`INSERT INTO ${Ge.connections} EDGE (label, from, to, weight, properties) VALUES ($1, $2, $3, $4, $5) RETURNING *`,o,r.rid,n.rid,1,s)).rows[0];if(!c)throw new Error("INSERT connection returned no row");let l=Number(c.red_entity_id??c.rid);return await this.kv().put(d_(r.rid,n.rid,o),l),this.connectionCache=null,{rid:l,kind:o,from_rid:r.rid,to_rid:n.rid,weight:1,properties:s}}async backlinks(t){let r=await this.getArtifact(t);if(!r)throw new Error(`Brain artifact not found: ${t}`);return(await this.listConnections()).filter(n=>n.to_rid===r.rid)}async listConnections(){if(this.connectionCache==null){let t=await this.db.query(`SELECT * FROM ${Ge.connections}`);this.connectionCache=t.rows.map(Az).filter(Ri)}return this.connectionCache}async status(){let t=await this.listArtifacts(),r=await this.listConnections();return{uri:this.opts.uri,artifacts:t.length,connections:r.length,kinds:Kz(t.map(n=>n.kind))}}async eventKpis(t={}){let r=await this.listArtifacts();return new Si(r).events(t)}async appendOutcomeEvent(t){if(!Kn(t))throw new Error("invalid Brain outcome event");let r={...t};if(!(await this.db.query(`INSERT INTO ${Ge.outcomeEvents} NODE (label, node_type, properties) VALUES ($1, $2, $3) RETURNING *`,t.id,`outcome_event.v${t.schemaVersion}`,r)).rows[0])throw new Error("INSERT outcome event returned no row");return this.outcomeEventCache=null,t}async replayOutcomeEvents(){if(this.outcomeEventCache==null){let t=await this.db.query(`SELECT * FROM ${Ge.outcomeEvents}`);this.outcomeEventCache=t.rows.map(Nz).filter(Ri).sort((r,n)=>r.rid-n.rid).map(({rid:r,event:n})=>n)}return[...this.outcomeEventCache]}async loadModelTierBanditDocument(){if(this.modelTierBanditCache!=null)return this.modelTierBanditCache;let t=await this.kv().get(f_());if(t==null)return null;let r=typeof t=="string"?JSON.parse(t):t;return p_(r)?(this.modelTierBanditCache=r,r):null}async saveModelTierBanditDocument(t){if(!p_(t))throw new Error("invalid Brain model-tier bandit document");return await this.kv().put(f_(),JSON.stringify(t)),this.modelTierBanditCache=t,t}async refreshModelTierBanditDocument(){let t=a_(await this.replayOutcomeEvents());return this.saveModelTierBanditDocument(t)}async think(t,r=8,n={}){let o=(await this.search(t,Math.max(r*2,r+5),n)).filter(i=>!Rr(i.artifact)).slice(0,r);return Lz(t,o)}async deriveAutoLinks(t){return this.autoLinkArtifact(t,await this.listArtifacts())}async findArtifactByHash(t){let r=await this.kv().get(l_(t));return r!=null?Number(r):null}async findConnection(t,r,n){let o=await this.kv().get(d_(t,r,n));return o!=null?Number(o):null}async materializeTagConnections(t){if(t.properties.metadata?.derived_kind!=="tag")for(let r of t.properties.tags){let n=await this.capture({title:r,content:`Tag: ${r}`,kind:"custom",tags:["tag"],metadata:{derived:!0,derived_kind:"tag"}});await this.link({from:t.rid,to:n.rid,kind:"tagged",confidence:"derived"})}}async autoLinkArtifact(t,r){if(!this.opts.autoLinker||Rr(t))return[];let n=new Set(r.filter(o=>o.rid!==t.rid).map(o=>o.rid));if(n.size===0)return[];try{let o=Iy(t),i=new Set([t.rid]);for(let d of r)Rr(d)&&i.add(d.rid);let s=await this.think(o,8,{excludeRids:i}),a=s.hits.filter(d=>n.has(d.artifact.rid)&&!Rr(d.artifact)).map(d=>({artifact:Tu(d.artifact),score:d.score,excerpt:d.excerpt}));if(a.length===0)return[];let c={newArtifact:Tu(t),candidates:a,think:{query:o,answer:s.answer},allowedKinds:Eu},l=await this.opts.autoLinker.deriveConnections(c),u=[];for(let d of l){if(!Pu(d.kind))continue;let f=await this.getArtifact(d.from),p=await this.getArtifact(d.to);if(!f||!p)continue;let m=f.rid===t.rid||p.rid===t.rid,h=n.has(f.rid)||n.has(p.rid);if(!m||!h||f.rid===p.rid)continue;let _=await this.link({from:f.rid,to:p.rid,kind:d.kind,reason:d.reason,confidence:"derived",metadata:{...d.metadata??{},derived_by:"brain.autolink.afk-headless",source_artifact_rid:t.rid}});u.push({proposal:d,connection:_})}return u}catch(o){if(this.opts.autoLinkErrors==="throw")throw o;return[]}}};function h_(e){let r=c_[e]??e;if(Ti.includes(r))return r;throw new Error(`invalid Brain artifact kind: ${e}`)}function g_(e){if(Pi.includes(e))return e;throw new Error(`invalid Brain connection kind: ${e}`)}function Oz(e){let t=Number(e.red_entity_id??e.rid),r=Hu(e.properties??e.PROPERTIES),n=String(e.node_type??e.NODE_TYPE??r.kind??"note");if(!Number.isFinite(t))return null;let o=String(r.id??e.label??e.LABEL??t),i=String(r.title??e.label??e.LABEL??o),s=String(r.content??""),a=Array.isArray(r.tags)?r.tags.map(String):[],c=Date.now();return{rid:t,label:String(e.label??e.LABEL??o),kind:h_(n),properties:{...r,id:o,title:i,content:s,tags:a,created_at:Number(r.created_at??c),updated_at:Number(r.updated_at??r.created_at??c),hash:String(r.hash??"")}}}function Az(e){let t=Number(e.red_entity_id??e.rid),r=Number(e.from??e.FROM??e.from_rid??e.source),n=Number(e.to??e.TO??e.to_rid??e.target),o=String(e.label??e.LABEL??"related_to");return!Number.isFinite(t)||!Number.isFinite(r)||!Number.isFinite(n)?null:{rid:t,kind:g_(o),from_rid:r,to_rid:n,weight:Number(e.weight??1),properties:Hu(e.properties??e.PROPERTIES)}}function Nz(e){let t=Number(e.red_entity_id??e.rid),r=Hu(e.properties??e.PROPERTIES);return!Number.isFinite(t)||!Kn(r)?null:{rid:t,event:r}}function Hu(e){return e==null?{}:typeof e=="string"?JSON.parse(e):e}function Ri(e){return e!=null}function Cz(e){return Array.from(new Set(e.map(t=>t.trim()).filter(Boolean))).sort()}function Dz(e){return e.toLowerCase().split(/[^a-z0-9_]+/).map(t=>t.trim()).filter(t=>t.length>1)}function u_(e,t){let r=0,n=e.indexOf(t);for(;n>=0;)r++,n=e.indexOf(t,n+t.length);return r}function y_(e,t){let r=e.properties.title.toLowerCase(),n=e.properties.content.toLowerCase(),o=e.properties.tags.map(s=>s.toLowerCase()),i=e.kind.toLowerCase();return{lexical:t.reduce((s,a)=>s+u_(r,a)*3+u_(n,a),0),tags:t.reduce((s,a)=>{let c=o.reduce((l,u)=>u===a?l+4:u.includes(a)||a.includes(u)?l+2:l,0);return s+c},0),kind:t.reduce((s,a)=>i===a?s+3:i.includes(a)||a.includes(i)?s+1:s,0)}}function jz(e,t,r,n){let o=0;for(let i of r){let s=i.from_rid===e.rid?i.to_rid:i.to_rid===e.rid?i.from_rid:null;if(s==null)continue;let a=n.get(s);if(!a||Rr(a))continue;let c=__({...y_(a,t),connections:0,vector:0}).total;c<=0||(o+=Math.min(c,12)*Mz(i.kind))}return Jt(o*.35)}function Mz(e){switch(e){case"supports":case"contradicts":case"depends_on":case"derived_from":case"part_of":return 1;case"related_to":case"authored":return .75;case"preceded_by":case"followed_by":return .5;case"tagged":return .2}}function __(e){return{...e,lexical:Jt(e.lexical),tags:Jt(e.tags),kind:Jt(e.kind),connections:Jt(e.connections),vector:Jt(e.vector),total:Jt(e.lexical+e.tags+e.kind+e.connections+e.vector)}}function Jt(e){return Math.round(e*1e3)/1e3}function qz(e,t){if(e.length<=220)return e;let r=e.toLowerCase(),n=t.map(i=>r.indexOf(i)).filter(i=>i>=0).sort((i,s)=>i-s)[0]??0,o=Math.max(0,n-80);return`${o>0?"...":""}${e.slice(o,o+220)}${o+220<e.length?"...":""}`}function Lz(e,t){let r=t.map(Bz),n=Zz(t),o=Uz(e,r,n);return{hits:t,citations:r,confidence:n,missing_evidence:o,answer:Fz(e,r,n,o)}}function Bz(e,t){let r=e.artifact,n={};return r.properties.source_path&&(n.path=r.properties.source_path),r.properties.source_session&&(n.session=r.properties.source_session),r.properties.source_agent&&(n.agent=r.properties.source_agent),r.properties.source_runner&&(n.runner=r.properties.source_runner),{ref:`B${t+1}`,rid:r.rid,id:r.properties.id,title:r.properties.title,kind:r.kind,score:e.score,score_breakdown:e.score_breakdown,excerpt:e.excerpt,source:Object.keys(n).length>0?n:void 0}}function Zz(e){let t=e[0];if(!t)return"none";let r=Object.entries(t.score_breakdown).filter(([n,o])=>n!=="total"&&o>0).length;return t.score>=8||t.score>=5&&r>=2?"high":t.score>=3?"medium":"low"}function Uz(e,t,r){if(t.length===0)return[`No Brain artifacts matched "${e}". Capture or ingest cited artifacts before relying on Brain for this answer.`];let n=[];return r==="low"&&n.push("Only low-scoring deterministic matches were found; open the cited artifacts before treating this as settled."),t.length===1&&n.push("Only one cited artifact matched; missing context or contradictions may not be visible yet."),t.every(o=>o.source==null)&&n.push("The matched artifacts do not carry source path, session, agent, or runner provenance."),n}function Fz(e,t,r,n){if(t.length===0)return[`Brain has no cited evidence for "${e}".`,"","Missing evidence:",...n.map(a=>`- ${a}`)].join(`
69
+ `).find(d=>d.startsWith("data: "));u&&(yield JSON.parse(u.slice(6)))}}watchPrefix(t,r={}){return this.watch(`${t}.*`,r)}};function Nu(e,t){return`${Cu(e)}.${AR(t)}`}function Cu(e){let t=String(e),r=t.match(/[^A-Za-z0-9_]/);if(r)throw new z("INVALID_KV_KEY",`invalid KV key "${t}": character "${r[0]}" is not supported`);return t}function AR(e){let t=String(e);return/^[A-Za-z0-9_]+$/.test(t)?t:`'${t.replace(/'/g,"''")}'`}function NR(e){return typeof e=="number"||typeof e=="boolean"?String(e):e==null?"NULL":typeof e=="object"?`'${JSON.stringify(e).replace(/'/g,"''")}'`:`'${String(e).replace(/'/g,"''")}'`}function Uy(e){return`'${String(e).replace(/'/g,"''")}'`}var Bn=class{constructor(t){this.client=t}create(t){return this.client.call("query",{sql:`CREATE QUEUE IF NOT EXISTS ${mt(t)}`})}push(t,r,n={}){let o=jR(n);return this.client.call("query",{sql:`QUEUE PUSH ${mt(t)} ${MR(r)}${o}`})}async pop(t,r){let n=await this.client.call("query",{sql:`QUEUE POP ${mt(t)}${ju(r)}`});return Du(n)}async peek(t,r){let n=await this.client.call("query",{sql:`QUEUE PEEK ${mt(t)}${ju(r)}`});return Du(n)}async len(t){let r=await this.client.call("query",{sql:`QUEUE LEN ${mt(t)}`});return Number(r?.rows?.[0]?.len??0)}purge(t){return this.client.call("query",{sql:`QUEUE PURGE ${mt(t)}`})}async readWait(t,r,n={}){let o=CR(t,r,n),i=await this.client.call("query",{sql:o});return Du(i)}};function CR(e,t,r){let{waitMs:n,group:o=null,count:i=null}=r??{};if(!Number.isInteger(n)||n<0)throw new z("INVALID_QUEUE_WAIT","queue readWait requires an explicit non-negative integer waitMs (no infinite wait)");let s=mt(e),a=mt(t),c=o!=null?` GROUP ${mt(o)}`:"",l=i!=null?ju(i):"";return`QUEUE READ ${s}${c} CONSUMER ${a}${l} WAIT ${n}ms`}function mt(e){let t=String(e);if(!/^[A-Za-z_][A-Za-z0-9_]*$/.test(t))throw new z("INVALID_QUEUE_NAME",`invalid queue name "${t}": expected an SQL identifier`);return t}function ju(e){if(e==null)return"";if(!Number.isInteger(e)||e<0)throw new z("INVALID_QUEUE_COUNT","queue count must be a non-negative integer");return` COUNT ${e}`}function DR(e){if(!Number.isInteger(e))throw new z("INVALID_QUEUE_PRIORITY","queue priority must be an integer");return String(e)}function jR(e){if(e.key!=null&&(e.delay!=null||e.at!=null))throw new z("INVALID_ARGUMENT","QUEUE PUSH KEY cannot be combined with DELAY / AVAILABLE AT");let t="";return e.priority!=null&&(t+=` PRIORITY ${DR(e.priority)}`),e.key!=null&&(t+=` KEY ${Mu(e.key)}`),e.dedup!=null&&(t+=` DEDUP ${Mu(e.dedup)}`),e.delay!=null&&(t+=` DELAY ${e.delay}`),e.at!=null&&(t+=` AVAILABLE AT ${e.at}`),t}function MR(e){return typeof e=="number"||typeof e=="boolean"?String(e):e==null?"NULL":typeof e=="string"?Mu(e):JSON.stringify(e)}function Mu(e){return`'${String(e).replace(/'/g,"''")}'`}function Du(e){return Array.isArray(e?.rows)?e.rows.map(t=>t.payload):[]}var Zn=class{constructor(t){this.db=t}async insert(t,r){Fy(r,"documents.insert document"),await this.ensureCollection(t);let n=await this.db.query(`INSERT INTO ${xi(t)} DOCUMENT VALUES (${BR(r)}) RETURNING *`),o=n.rows?.[0];if(!o||o.rid==null)throw new z("INVALID_RESPONSE","documents.insert expected one returned item with rid");return{affected:n.affected??1,rid:o.rid,item:o}}async get(t,r){let n=await this.db.get(t,r);if(!n.entity)throw new z("NOT_FOUND",`document ${String(r)} was not found`);return n.entity}async list(t,r={}){let n=qR(r.limit),o=r.orderBy??r.order_by??"rid ASC",i=r.filter?` WHERE ${String(r.filter)}`:"";return{items:(await this.db.query(`SELECT * FROM ${xi(t)}${i} ORDER BY ${o} LIMIT ${n}`)).rows??[]}}async patch(t,r,n){Fy(n,"documents.patch patch");let o=Object.entries(n);if(o.length===0)throw new z("INVALID_ARGUMENT","documents.patch patch must be a non-empty object");for(let[c]of o)if(c.includes("/"))throw new z("INVALID_ARGUMENT","documents.patch currently accepts top-level document fields");let i=o.map(([c,l])=>`${Vy(c)} = ${ZR(l)}`).join(", "),a=(await this.db.query(`UPDATE ${xi(t)} SET ${i} WHERE rid = $1 RETURNING *`,r)).rows?.[0];if(!a)throw new z("NOT_FOUND",`document ${String(r)} was not found`);return a}async delete(t,r){let o=(await this.db.delete(t,r)).affected??0;return{affected:o,deleted:o>0}}async ensureCollection(t){try{await this.db.query(`CREATE DOCUMENT ${xi(t)}`)}catch(r){if(!String(r?.message??"").includes("already exists"))throw r}}};function Fy(e,t){if(!e||typeof e!="object"||Array.isArray(e))throw new z("INVALID_ARGUMENT",`${t} must be an object`)}function qR(e){if(e==null)return 100;if(!Number.isInteger(e)||e<=0)throw new z("INVALID_ARGUMENT","limit must be a positive integer");return e}function xi(e){return String(e).split(".").map(Vy).join(".")}function Vy(e){let t=String(e);if(!/^[A-Za-z_][A-Za-z0-9_]*$/.test(t))throw new z("INVALID_ARGUMENT",`invalid SQL identifier "${t}"`);return t}function LR(e){return Ky(JSON.stringify(e))}function BR(e){return JSON.stringify(e)}function ZR(e){return e==null?"NULL":typeof e=="number"||typeof e=="boolean"?String(e):typeof e=="object"?LR(e):Ky(e)}function Ky(e){return`'${String(e).replace(/'/g,"''")}'`}var Un=class{constructor(t,r="red.config"){this.client=t,this.collection=r}put(t,r,n={}){FR(n,"config");let o=n.collection??this.collection,i=Array.isArray(n.tags)&&n.tags.length>0?` TAGS [${n.tags.map(Hy).join(", ")}]`:"";return this.client.call("query",{sql:`PUT CONFIG ${It(o)} ${It(t)} = ${UR(r,n)}${i}`})}get(t,r={}){let n=r.collection??this.collection;return this.client.call("query",{sql:`GET CONFIG ${It(n)} ${It(t)}`})}resolve(t,r={}){let n=r.collection??this.collection;return this.client.call("query",{sql:`RESOLVE CONFIG ${It(n)} ${It(t)}`})}};function UR(e,t){if(t.secretRef){let{collection:r,key:n}=t.secretRef;return`SECRET_REF(vault, ${It(r)}.${It(n)})`}return VR(e)}function FR(e,t){for(let r of["ttl","ttlMs","ttl_ms","expireMs","expire_ms","expiresAt"])if(e[r]!=null)throw new TypeError(`${t} does not support TTL or expiration options`)}function It(e){let t=String(e);if(!/^[A-Za-z0-9_.]+$/.test(t))throw new TypeError("keyed collection and key names must use letters, numbers, underscores, or dots");return t}function VR(e){return typeof e=="number"||typeof e=="boolean"?String(e):e==null?"NULL":Array.isArray(e)||typeof e=="object"?JSON.stringify(e):Hy(e)}function Hy(e){return`'${String(e).replace(/'/g,"''")}'`}var Fn=class{constructor(t,r="red.vault"){this.client=t,this.collection=r}put(t,r,n={}){KR(n,"vault");let o=n.collection??this.collection,i=Array.isArray(n.tags)&&n.tags.length>0?` TAGS [${n.tags.map(Wy).join(", ")}]`:"";return this.client.call("query",{sql:`VAULT PUT ${Or(o)}.${Or(t)} = ${HR(r)}${i}`})}get(t,r={}){let n=r.collection??this.collection;return this.client.call("query",{sql:`VAULT GET ${Or(n)}.${Or(t)}`})}unseal(t,r={}){let n=r.collection??this.collection;return this.client.call("query",{sql:`UNSEAL VAULT ${Or(n)}.${Or(t)}`})}};function KR(e,t){for(let r of["ttl","ttlMs","ttl_ms","expireMs","expire_ms","expiresAt"])if(e[r]!=null)throw new TypeError(`${t} does not support TTL or expiration options`)}function Or(e){let t=String(e);if(!/^[A-Za-z0-9_.]+$/.test(t))throw new TypeError("keyed collection and key names must use letters, numbers, underscores, or dots");return t}function HR(e){return typeof e=="number"||typeof e=="boolean"?String(e):e==null?"NULL":Array.isArray(e)||typeof e=="object"?JSON.stringify(e):Wy(e)}function Wy(e){return`'${String(e).replace(/'/g,"''")}'`}async function Jy(e){return((await e.query("SHOW COLLECTIONS")).rows??[]).map(WR)}async function Qy(e,t){return((await e.query(`SHOW COLLECTIONS WHERE name = ${JR(t)}`)).rows??[]).some(n=>n.name===String(t))}var Vn=class e{constructor(t,r,n=null,o=[],i=[]){this.db=t,this.collection=r,this.columns=n,this.whereClauses=o,this.params=i}select(...t){let r=t.length===1&&Array.isArray(t[0])?t[0]:t,n=r.length===1&&r[0]==="*"?null:r;return new e(this.db,this.collection,n!=null&&n.length>0?n:null,this.whereClauses,this.params)}where(t,...r){if(typeof t!="string"||t.trim().length===0)throw new z("INVALID_QUERY_BUILDER","where() requires a non-empty SQL condition");let n=r.length===1&&Array.isArray(r[0])?r[0]:r;return new e(this.db,this.collection,this.columns,[...this.whereClauses,t.trim()],[...this.params,...n])}async run(){let t=this.columns==null?"*":this.columns.map(Gy).join(", "),r=this.whereClauses.length>0?` WHERE ${this.whereClauses.map(s=>`(${s})`).join(" AND ")}`:"",n=`SELECT ${t} FROM ${Gy(this.collection)}${r}`,i=(this.params.length>0?await this.db.query(n,this.params):await this.db.query(n)).rows??[];return this.columns==null?i:i.map(s=>{let a={};for(let c of this.columns)a[c]=s[c];return a})}};function WR(e){return{...e,name:String(e.name),model:String(e.model),capabilities:Array.isArray(e.capabilities)?e.capabilities:[]}}function Gy(e){return String(e).split(".").map(GR).join(".")}function GR(e){let t=String(e);if(!/^[A-Za-z_][A-Za-z0-9_]*$/.test(t))throw new z("INVALID_IDENTIFIER",`invalid SQL identifier "${t}"`);return t}function JR(e){return`'${String(e).replace(/'/g,"''")}'`}var QR="remote URIs are not supported in @reddb-io/sdk; install @reddb-io/client for grpc/http/red transports",YR="1.0",e_="1.0.9",Yy="NESTED_TX_NOT_SUPPORTED";async function t_(e,t={}){let r=Au(e);if(sz(r),r.kind==="embedded"){let n=iz(r,t.auth);if(n.token||n.username)throw new z("AUTH_NOT_APPLICABLE","auth is only meaningful for remote connections; embedded modes inherit caller privileges.");let o=oz(r),i=t.binary??By(),s=await qy(i,o),a=new bi(s);return await a.call("version",{}),new Lu(a,{transport:"embedded"})}}function Xy(e){return XR(e),e instanceof Float32Array||e instanceof Float64Array?Array.from(e):e instanceof Date?{$ts:String(BigInt(e.getTime())*1000000n)}:e instanceof Uint8Array||typeof Buffer<"u"&&e instanceof Buffer?{$bytes:tz(e)}:typeof e=="number"&&!Number.isFinite(e)?Number.isNaN(e)?{$float:"NaN"}:{$float:e>0?"Infinity":"-Infinity"}:typeof e=="string"&&nz(e)?{$uuid:e}:e}function XR(e){if(e!=null&&!(typeof e=="boolean"||typeof e=="number"||typeof e=="string")){if(e instanceof Date){if(Number.isNaN(e.getTime()))throw new z("UNSUPPORTED_PARAM","cannot encode invalid Date query parameter");return}if(!(e instanceof Uint8Array||e instanceof Float32Array||e instanceof Float64Array||typeof Buffer<"u"&&e instanceof Buffer)){if(Array.isArray(e)){if(e.every(t=>typeof t=="number"))return;throw new z("UNSUPPORTED_PARAM","array query parameters must contain only numbers")}if(!(typeof e=="object"&&Object.getPrototypeOf(e)===Object.prototype))throw new z("UNSUPPORTED_PARAM",`cannot encode query parameter of type ${typeof e}`)}}}function ez(e){return e.length===0?null:e.length===1&&Array.isArray(e[0])?e[0].map(Xy):e.map(Xy)}function tz(e){let t=e instanceof Uint8Array?e:new Uint8Array(e.buffer,e.byteOffset,e.byteLength);if(typeof Buffer<"u")return Buffer.from(t.buffer,t.byteOffset,t.byteLength).toString("base64");let r="";for(let n of t)r+=String.fromCharCode(n);return btoa(r)}function rz(e){if(typeof Buffer<"u"){let n=Buffer.from(e,"base64");return new Uint8Array(n.buffer,n.byteOffset,n.byteLength)}let t=atob(e),r=new Uint8Array(t.length);for(let n=0;n<t.length;n++)r[n]=t.charCodeAt(n);return r}function nz(e){return/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(e)}function ki(e){if(Array.isArray(e))return e.map(ki);if(e&&typeof e=="object"){if(Object.keys(e).length===1){if(typeof e.$bytes=="string")return rz(e.$bytes);if(typeof e.$uuid=="string")return e.$uuid;if(typeof e.$float=="string"){if(e.$float==="NaN")return Number.NaN;if(e.$float==="Infinity"||e.$float==="+Infinity")return 1/0;if(e.$float==="-Infinity")return-1/0}if(typeof e.$ts=="string"||typeof e.$ts=="number"){let n=typeof e.$ts=="string"?BigInt(e.$ts):BigInt(Math.trunc(e.$ts));return new Date(Number(n/1000000n))}}let r={};for(let[n,o]of Object.entries(e))r[n]=ki(o);return r}return e}function oz(e){return e.path?["rpc","--stdio","--path",e.path]:["rpc","--stdio"]}function iz(e,t){let r={token:e.token??e.apiKey??null,username:e.username??null,password:e.password??null,loginUrl:e.loginUrl??null};if(t==null)return r;if(typeof t!="object")throw new TypeError("options.auth must be an object");if(t.token!=null){if(typeof t.token!="string"||t.token.length===0)throw new TypeError("options.auth.token must be a non-empty string");r.token=t.token}if(t.apiKey!=null){if(typeof t.apiKey!="string"||t.apiKey.length===0)throw new TypeError("options.auth.apiKey must be a non-empty string");r.token=t.apiKey}if(t.username!=null){if(typeof t.username!="string"||t.username.length===0)throw new TypeError("options.auth.username must be a non-empty string");r.username=t.username}if(t.password!=null){if(typeof t.password!="string"||t.password.length===0)throw new TypeError("options.auth.password must be a non-empty string");r.password=t.password}return t.loginUrl!=null&&(r.loginUrl=t.loginUrl),r}function sz(e){if(e.kind!=="embedded")throw new z("EMBEDDED_ONLY",QR)}var $i=class{constructor(t){this.db=t}query(t,...r){return this.db.query(t,...r)}execute(t,...r){return this.db.execute(t,...r)}insert(t,r){return this.db.insert(t,r)}bulkInsert(t,r){return this.db.bulkInsert(t,r)}async transaction(){throw Bu()}},qu=class{constructor(t){this.db=t,this.active=!1}async begin(){if(this.db.inTransaction)throw Bu();this.db.inTransaction=!0,this.active=!0;try{return await this.db.query("BEGIN")}catch(t){throw this.db.inTransaction=!1,this.active=!1,t}}async commit(){if(!this.active)throw new z("INVALID_ARGUMENT","tx.commit() called without an open transaction");try{return await this.db.query("COMMIT")}finally{this.active=!1,this.db.inTransaction=!1}}async rollback(){if(!this.active)throw new z("INVALID_ARGUMENT","tx.rollback() called without an open transaction");try{return await this.db.query("ROLLBACK")}finally{this.active=!1,this.db.inTransaction=!1}}async run(t){if(typeof t!="function")throw new TypeError("tx.run(callback) requires a function");if(this.db.inTransaction)throw new z("INVALID_ARGUMENT","nested tx.run() is not supported; issue savepoints via tx.query() instead");await this.begin();try{let r=await t(new $i(this.db));return await this.commit(),r}catch(r){if(this.active)try{await this.rollback()}catch(n){r_(r,n)}throw r}}},Lu=class{constructor(t,r={}){this.client=t,this.transport=r.transport??null,this.helperSpecVersion=YR,this.cache=new Ln(t,this.transport),this.queue=new Bn(t),this.queues=this.queue,this.documents=new Zn(this);let n=new Ir(t);this.kv=Object.assign((o="kv_default")=>new Ir(t,o),{put:n.put.bind(n),invalidateTags:n.invalidateTags.bind(n),watch:n.watch.bind(n),watchPrefix:n.watchPrefix.bind(n)}),this.config=(o="red.config")=>new Un(t,o),this.vault=(o="red.vault")=>new Fn(t,o),this.inTransaction=!1}query(t,...r){if(typeof t!="string"||t.trim().length===0)return Promise.reject(new z("INVALID_ARGUMENT","query() requires a non-empty SQL string"));let n=ez(r);return n==null?this.client.call("query",{sql:t}).then(ki):this.client.call("query",{sql:t,params:n}).then(ki)}execute(t,...r){return this.query(t,...r)}async insert(t,r){let n=await this.client.call("insert",{collection:t,payload:r});return az(n,"insert")}async bulkInsert(t,r){if(Array.isArray(r)&&r.length===0)return{affected:0,rids:[],ids:[]};let n=await this.client.call("bulk_insert",{collection:t,payloads:r});return cz(n,r.length)}tx(){return new qu(this)}async transaction(t){if(this.inTransaction)throw Bu();if(typeof t!="function")throw new TypeError("transaction(callback) requires a function");this.inTransaction=!0;let r=!1;try{await this.query("BEGIN"),r=!0;let n=await t(new $i(this));return await this.query("COMMIT"),n}catch(n){if(r)try{await this.query("ROLLBACK")}catch(o){r_(n,o)}throw n}finally{this.inTransaction=!1}}exists(t){return Qy(this,t)}list(){return Jy(this)}from(t){return new Vn(this,t)}get(t,r){return this.client.call("get",{collection:t,id:String(r)})}delete(t,r){return this.client.call("delete",{collection:t,id:String(r)})}health(){return this.client.call("health",{})}version(){return this.client.call("version",{})}login(t,r){return this.client.call("auth.login",{username:t,password:r})}whoami(){return this.client.call("auth.whoami",{})}changePassword(t,r){return this.client.call("auth.change_password",{current_password:t,new_password:r})}createApiKey({username:t,role:r}={}){return this.client.call("auth.create_api_key",{username:t,role:r})}revokeApiKey(t){return this.client.call("auth.revoke_api_key",{key:t})}close(){return this.client.close()}};function Bu(){return new z(Yy,`${Yy}: nested transactions are not supported on one connection`)}function r_(e,t){if(e&&typeof e=="object")try{e.rollbackError=t}catch{}}function az(e,t){if(!e||typeof e!="object"||e.rid==null&&e.id==null)throw new z("ENGINE_TOO_OLD",`${t}() requires RedDB engine >= ${e_} with insert id support`);return e.rid==null&&(e.rid=e.id),e.id==null&&(e.id=e.rid),e}function cz(e,t){if(!e||typeof e!="object"||!Array.isArray(e.rids)&&!Array.isArray(e.ids))throw new z("ENGINE_TOO_OLD",`bulkInsert() requires RedDB engine >= ${e_} with bulk insert id support`);if(Array.isArray(e.rids)||(e.rids=e.ids),Array.isArray(e.ids)||(e.ids=e.rids),e.rids.length!==t)throw new z("INVALID_RESPONSE",`bulkInsert() expected ${t} rids, got ${e.rids.length}`);return e}function Kn(e){if(typeof e!="object"||e===null)return!1;let t=e;return t.schemaVersion===1&&typeof t.id=="string"&&t.id.length>0&&typeof t.emitter=="string"&&t.emitter.length>0&&typeof t.occurredAt=="string"&&typeof t.taskClass=="string"&&uz(t.chosenOption)&&lz(t.outcome)&&dz(t.cost)}function uz(e){if(typeof e!="object"||e===null)return!1;let t=e;return typeof t.kind=="string"&&t.kind.length>0}function lz(e){return e==="success"||e==="failure"||e==="escalated"}function dz(e){if(typeof e!="object"||e===null)return!1;let t=e.signal;return t==="none"||t==="low"||t==="medium"||t==="high"||t==="unknown"}import{createHash as fz}from"node:crypto";function Zu(e){return fz("sha256").update(e).digest("hex")}function n_(e){return Zu(JSON.stringify(e))}function o_(e){return e.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/-{2,}/g,"-").replace(/^-|-$/g,"")||"artifact"}var Uu="unknown",Si=class{artifacts;constructor(t){this.artifacts=t}events(t={}){let r=t.interval??"day",n=t.timeField??"event",o=Ku(t.from),i=Ku(t.to),s=this.artifacts.filter(p=>p.kind==="event").map(p=>pz(p,n)).filter(p=>p!=null).filter(p=>hz(p,t)).filter(p=>gz(p.ts,o,i)).sort((p,m)=>p.ts-m.ts),a=s.length,c=o??(s.length>0?s[0].ts:null),l=i??(s.length>0?s[s.length-1].ts:null),u=wz(c,l,r),f=[i_(null,s,u,r)];if(t.groupBy){let m=[...yz(s,t.groupBy).entries()].map(([h,_])=>i_(h,_,u,r)).sort((h,_)=>_.total-h.total||bz(h.group,_.group));f.push(...m)}return{kind:"event",interval:r,timeField:n,range:{from:c,to:l},total:a,series:f}}};function pz(e,t){let r=e.properties.metadata??{},n=mz(e,r,t);return n==null?null:{ts:n,platform:Fu(r,"platform")??Uu,eventType:Fu(r,"event_type")??Uu,target:Fu(r,"target")??Uu}}function mz(e,t,r){let n=Number.isFinite(e.properties.created_at)?e.properties.created_at:null;return r==="ingested"?n:Ku(t.timestamp)??n}function Fu(e,t){let r=e[t];return typeof r=="string"&&r.length>0?r:void 0}function hz(e,t){return!(t.platform!=null&&e.platform!==t.platform||t.eventType!=null&&e.eventType!==t.eventType||t.target!=null&&e.target!==t.target)}function gz(e,t,r){return!(t!=null&&e<t||r!=null&&e>r)}function yz(e,t){let r=new Map;for(let n of e){let o=_z(n,t),i=r.get(o);i?i.push(n):r.set(o,[n])}return r}function _z(e,t){switch(t){case"platform":return e.platform;case"event_type":return e.eventType;case"target":return e.target}}function i_(e,t,r,n){let o=new Map;for(let s of t){let a=Vu(s.ts,n);o.set(a,(o.get(a)??0)+1)}let i=r.map(s=>({start:s,startIso:new Date(s).toISOString(),count:o.get(s)??0}));return{group:e,total:t.length,buckets:i}}function wz(e,t,r){if(e==null||t==null)return[];let n=[],o=Vu(e,r),i=Vu(t,r),s=0;for(;o<=i&&s<1e6;)n.push(o),o=vz(o,r),s++;return n}function Vu(e,t){let r=new Date(e);switch(t){case"hour":return Date.UTC(r.getUTCFullYear(),r.getUTCMonth(),r.getUTCDate(),r.getUTCHours());case"day":return Date.UTC(r.getUTCFullYear(),r.getUTCMonth(),r.getUTCDate());case"week":{let n=Date.UTC(r.getUTCFullYear(),r.getUTCMonth(),r.getUTCDate()),i=(new Date(n).getUTCDay()+6)%7;return n-i*864e5}case"month":return Date.UTC(r.getUTCFullYear(),r.getUTCMonth(),1)}}function vz(e,t){switch(t){case"hour":return e+36e5;case"day":return e+864e5;case"week":return e+6048e5;case"month":{let r=new Date(e);return Date.UTC(r.getUTCFullYear(),r.getUTCMonth()+1,1)}}}function Ku(e){if(e==null)return null;if(typeof e=="number")return Number.isFinite(e)?e:null;let t=e.trim();if(t==="")return null;if(/^\d+$/.test(t)){let n=Number(t);return Number.isFinite(n)?n:null}let r=Date.parse(t);return Number.isNaN(r)?null:r}function bz(e,t){return String(e??"").localeCompare(String(t??""))}var xz=["validate","simple","complex","think"];var kz={validate:1,simple:.85,complex:.65,think:.45};function $z(){return{schemaVersion:1,buckets:{}}}function a_(e,t={}){let r=zz(t.initial??$z());for(let n of e)Sz(r,n,t);return r}function Sz(e,t,r={}){let n=(r.tierForEvent??Ez)(t);if(!n)return e;let i=Pz(e,t.taskClass).arms[n],s=Tz(t,n);return i.posterior.alpha=s_(i.posterior.alpha+s),i.posterior.beta=s_(i.posterior.beta+(1-s)),i.observations+=1,t.outcome==="success"?(i.successes+=1,i.consecutiveFailures=0):(i.failures+=1,i.consecutiveFailures+=1),e}function Ez(e){let t=e.chosenOption.kind;if(Iz(t))return t;let r=e.chosenOption.model?.toLowerCase()??"",n=e.chosenOption.effort?.toLowerCase()??"";if(r.includes("haiku"))return"validate";if(r.includes("sonnet"))return"simple";if(r.includes("opus")&&n==="high")return"think";if(r.includes("opus"))return"complex"}function Tz(e,t){return e.outcome!=="success"?0:kz[t]}function Pz(e,t){let r=t.trim()||"unknown";return e.buckets[r]??=Rz(),e.buckets[r]}function Rz(){return{arms:{validate:Ei(),simple:Ei(),complex:Ei(),think:Ei()}}}function Ei(){return{posterior:{alpha:1,beta:1},observations:0,successes:0,failures:0,consecutiveFailures:0}}function zz(e){return JSON.parse(JSON.stringify(e))}function Iz(e){return xz.includes(e)}function s_(e){return Math.round(e*1e3)/1e3}var Ti=["pillar","decision","concept","question","playbook","task","event","pattern","hypothesis","fact","source","bookmark","note","reference","custom","project","idea","meeting","claim","organization","person"],c_={contact:"person"},Pi=["supports","contradicts","depends_on","derived_from","related_to","part_of","preceded_by","followed_by","authored","tagged"],Ge={artifacts:"brain_artifacts",connections:"brain_connections",outcomeEvents:"brain_outcome_events",kv:"brain_kv"};var zi=class e{constructor(t){this.opts=t}db;artifactCache=null;connectionCache=null;outcomeEventCache=null;modelTierBanditCache=null;static async open(t){let r=new e(t);return r.db=await t_(t.uri),await r.bootstrap(),r}get raw(){return this.db}async close(){await this.db.close()}async bootstrap(){await this.db.execute(`CREATE GRAPH IF NOT EXISTS ${Ge.artifacts}`),await this.db.execute(`CREATE GRAPH IF NOT EXISTS ${Ge.connections}`),await this.db.execute(`CREATE GRAPH IF NOT EXISTS ${Ge.outcomeEvents}`)}kv(){return this.db.kv(Ge.kv)}async capture(t){let r=h_(t.kind??"note"),n=Date.now(),o=Cz(t.tags??[]),i=n_([r,t.title,t.content,o,t.sourcePath,t.sourceSession]),s=await this.findArtifactByHash(i);if(s!=null){let h=await this.getArtifact(s);if(h)return h}let a=await this.listArtifacts(),c=`${o_(t.title)}-${i.slice(0,8)}`,l={id:c,title:t.title,content:t.content,tags:o,source_agent:t.sourceAgent,source_runner:t.sourceRunner,source_session:t.sourceSession,source_path:t.sourcePath,created_at:n,updated_at:n,hash:i,metadata:t.metadata},u={label:c,kind:r,properties:l},f=(await this.db.query(`INSERT INTO ${Ge.artifacts} NODE (label, node_type, hash, properties) VALUES ($1, $2, $3, $4) RETURNING *`,u.label,u.kind,i,l)).rows[0];if(!f)throw new Error("INSERT artifact returned no row");let p=Number(f.red_entity_id??f.rid);await this.kv().put(l_(i),p),this.artifactCache=null;let m={...u,rid:p};return await this.autoLinkArtifact(m,a),await this.materializeTagConnections(m),m}async getArtifact(t){let r=await this.listArtifacts();return typeof t=="number"?r.find(n=>n.rid===t)??null:r.find(n=>n.properties.id===t||n.label===t)??null}async listArtifacts(){if(this.artifactCache==null){let t=await this.db.query(`SELECT * FROM ${Ge.artifacts}`);this.artifactCache=t.rows.map(Oz).filter(Ri)}return this.artifactCache}async search(t,r=10,n={}){let o=Dz(t),i=new Set(n.excludeRids??[]),s=await this.listArtifacts(),a=await this.listConnections(),c=new Map(s.map(u=>[u.rid,u]));return s.filter(u=>!i.has(u.rid)).map(u=>{let d=y_(u,o),f=__({...d,connections:jz(u,o,a,c),vector:0});return{artifact:u,score:f.total,score_breakdown:f,excerpt:qz(u.properties.content,o)}}).filter(u=>u.score>0).sort((u,d)=>d.score-u.score||d.artifact.properties.updated_at-u.artifact.properties.updated_at).slice(0,r)}async link(t){let r=await this.getArtifact(t.from),n=await this.getArtifact(t.to);if(!r)throw new Error(`Brain artifact not found: ${t.from}`);if(!n)throw new Error(`Brain artifact not found: ${t.to}`);let o=g_(t.kind??"related_to"),i=await this.findConnection(r.rid,n.rid,o);if(i!=null){let u=(await this.listConnections()).find(d=>d.rid===i);if(u)return u}let s={reason:t.reason,confidence:t.confidence??"explicit",created_at:Date.now(),metadata:t.metadata},c=(await this.db.query(`INSERT INTO ${Ge.connections} EDGE (label, from, to, weight, properties) VALUES ($1, $2, $3, $4, $5) RETURNING *`,o,r.rid,n.rid,1,s)).rows[0];if(!c)throw new Error("INSERT connection returned no row");let l=Number(c.red_entity_id??c.rid);return await this.kv().put(d_(r.rid,n.rid,o),l),this.connectionCache=null,{rid:l,kind:o,from_rid:r.rid,to_rid:n.rid,weight:1,properties:s}}async backlinks(t){let r=await this.getArtifact(t);if(!r)throw new Error(`Brain artifact not found: ${t}`);return(await this.listConnections()).filter(n=>n.to_rid===r.rid)}async listConnections(){if(this.connectionCache==null){let t=await this.db.query(`SELECT * FROM ${Ge.connections}`);this.connectionCache=t.rows.map(Az).filter(Ri)}return this.connectionCache}async status(){let t=await this.listArtifacts(),r=await this.listConnections();return{uri:this.opts.uri,artifacts:t.length,connections:r.length,kinds:Kz(t.map(n=>n.kind))}}async eventKpis(t={}){let r=await this.listArtifacts();return new Si(r).events(t)}async appendOutcomeEvent(t){if(!Kn(t))throw new Error("invalid Brain outcome event");let r={...t};if(!(await this.db.query(`INSERT INTO ${Ge.outcomeEvents} NODE (label, node_type, properties) VALUES ($1, $2, $3) RETURNING *`,t.id,`outcome_event.v${t.schemaVersion}`,r)).rows[0])throw new Error("INSERT outcome event returned no row");return this.outcomeEventCache=null,t}async replayOutcomeEvents(){if(this.outcomeEventCache==null){let t=await this.db.query(`SELECT * FROM ${Ge.outcomeEvents}`);this.outcomeEventCache=t.rows.map(Nz).filter(Ri).sort((r,n)=>r.rid-n.rid).map(({rid:r,event:n})=>n)}return[...this.outcomeEventCache]}async loadModelTierBanditDocument(){if(this.modelTierBanditCache!=null)return this.modelTierBanditCache;let t=await this.kv().get(f_());if(t==null)return null;let r=typeof t=="string"?JSON.parse(t):t;return p_(r)?(this.modelTierBanditCache=r,r):null}async saveModelTierBanditDocument(t){if(!p_(t))throw new Error("invalid Brain model-tier bandit document");return await this.kv().put(f_(),JSON.stringify(t)),this.modelTierBanditCache=t,t}async refreshModelTierBanditDocument(){let t=a_(await this.replayOutcomeEvents());return this.saveModelTierBanditDocument(t)}async think(t,r=8,n={}){let o=(await this.search(t,Math.max(r*2,r+5),n)).filter(i=>!Rr(i.artifact)).slice(0,r);return Lz(t,o)}async deriveAutoLinks(t){return this.autoLinkArtifact(t,await this.listArtifacts())}async findArtifactByHash(t){let r=await this.kv().get(l_(t));return r!=null?Number(r):null}async findConnection(t,r,n){let o=await this.kv().get(d_(t,r,n));return o!=null?Number(o):null}async materializeTagConnections(t){if(t.properties.metadata?.derived_kind!=="tag")for(let r of t.properties.tags){let n=await this.capture({title:r,content:`Tag: ${r}`,kind:"custom",tags:["tag"],metadata:{derived:!0,derived_kind:"tag"}});await this.link({from:t.rid,to:n.rid,kind:"tagged",confidence:"derived"})}}async autoLinkArtifact(t,r){if(!this.opts.autoLinker||Rr(t))return[];let n=new Set(r.filter(o=>o.rid!==t.rid).map(o=>o.rid));if(n.size===0)return[];try{let o=Iy(t),i=new Set([t.rid]);for(let d of r)Rr(d)&&i.add(d.rid);let s=await this.think(o,8,{excludeRids:i}),a=s.hits.filter(d=>n.has(d.artifact.rid)&&!Rr(d.artifact)).map(d=>({artifact:Tu(d.artifact),score:d.score,excerpt:d.excerpt}));if(a.length===0)return[];let c={newArtifact:Tu(t),candidates:a,think:{query:o,answer:s.answer},allowedKinds:Eu},l=await this.opts.autoLinker.deriveConnections(c),u=[];for(let d of l){if(!Pu(d.kind))continue;let f=await this.getArtifact(d.from),p=await this.getArtifact(d.to);if(!f||!p)continue;let m=f.rid===t.rid||p.rid===t.rid,h=n.has(f.rid)||n.has(p.rid);if(!m||!h||f.rid===p.rid)continue;let _=await this.link({from:f.rid,to:p.rid,kind:d.kind,reason:d.reason,confidence:"derived",metadata:{...d.metadata??{},derived_by:"brain.autolink.afk-headless",source_artifact_rid:t.rid}});u.push({proposal:d,connection:_})}return u}catch(o){if(this.opts.autoLinkErrors==="throw")throw o;return[]}}};function h_(e){let r=c_[e]??e;if(Ti.includes(r))return r;throw new Error(`invalid Brain artifact kind: ${e}`)}function g_(e){if(Pi.includes(e))return e;throw new Error(`invalid Brain connection kind: ${e}`)}function Oz(e){let t=Number(e.red_entity_id??e.rid),r=Hu(e.properties??e.PROPERTIES),n=String(e.node_type??e.NODE_TYPE??r.kind??"note");if(!Number.isFinite(t))return null;let o=String(r.id??e.label??e.LABEL??t),i=String(r.title??e.label??e.LABEL??o),s=String(r.content??""),a=Array.isArray(r.tags)?r.tags.map(String):[],c=Date.now();return{rid:t,label:String(e.label??e.LABEL??o),kind:h_(n),properties:{...r,id:o,title:i,content:s,tags:a,created_at:Number(r.created_at??c),updated_at:Number(r.updated_at??r.created_at??c),hash:String(r.hash??"")}}}function Az(e){let t=Number(e.red_entity_id??e.rid),r=Number(e.from??e.FROM??e.from_rid??e.source),n=Number(e.to??e.TO??e.to_rid??e.target),o=String(e.label??e.LABEL??"related_to");return!Number.isFinite(t)||!Number.isFinite(r)||!Number.isFinite(n)?null:{rid:t,kind:g_(o),from_rid:r,to_rid:n,weight:Number(e.weight??1),properties:Hu(e.properties??e.PROPERTIES)}}function Nz(e){let t=Number(e.red_entity_id??e.rid),r=Hu(e.properties??e.PROPERTIES);return!Number.isFinite(t)||!Kn(r)?null:{rid:t,event:r}}function Hu(e){return e==null?{}:typeof e=="string"?JSON.parse(e):e}function Ri(e){return e!=null}function Cz(e){return Array.from(new Set(e.map(t=>t.trim()).filter(Boolean))).sort()}function Dz(e){return e.toLowerCase().split(/[^a-z0-9_]+/).map(t=>t.trim()).filter(t=>t.length>1)}function u_(e,t){let r=0,n=e.indexOf(t);for(;n>=0;)r++,n=e.indexOf(t,n+t.length);return r}function y_(e,t){let r=e.properties.title.toLowerCase(),n=e.properties.content.toLowerCase(),o=e.properties.tags.map(s=>s.toLowerCase()),i=e.kind.toLowerCase();return{lexical:t.reduce((s,a)=>s+u_(r,a)*3+u_(n,a),0),tags:t.reduce((s,a)=>{let c=o.reduce((l,u)=>u===a?l+4:u.includes(a)||a.includes(u)?l+2:l,0);return s+c},0),kind:t.reduce((s,a)=>i===a?s+3:i.includes(a)||a.includes(i)?s+1:s,0)}}function jz(e,t,r,n){let o=0;for(let i of r){let s=i.from_rid===e.rid?i.to_rid:i.to_rid===e.rid?i.from_rid:null;if(s==null)continue;let a=n.get(s);if(!a||Rr(a))continue;let c=__({...y_(a,t),connections:0,vector:0}).total;c<=0||(o+=Math.min(c,12)*Mz(i.kind))}return Jt(o*.35)}function Mz(e){switch(e){case"supports":case"contradicts":case"depends_on":case"derived_from":case"part_of":return 1;case"related_to":case"authored":return .75;case"preceded_by":case"followed_by":return .5;case"tagged":return .2}}function __(e){return{...e,lexical:Jt(e.lexical),tags:Jt(e.tags),kind:Jt(e.kind),connections:Jt(e.connections),vector:Jt(e.vector),total:Jt(e.lexical+e.tags+e.kind+e.connections+e.vector)}}function Jt(e){return Math.round(e*1e3)/1e3}function qz(e,t){if(e.length<=220)return e;let r=e.toLowerCase(),n=t.map(i=>r.indexOf(i)).filter(i=>i>=0).sort((i,s)=>i-s)[0]??0,o=Math.max(0,n-80);return`${o>0?"...":""}${e.slice(o,o+220)}${o+220<e.length?"...":""}`}function Lz(e,t){let r=t.map(Bz),n=Zz(t),o=Uz(e,r,n);return{hits:t,citations:r,confidence:n,missing_evidence:o,answer:Fz(e,r,n,o)}}function Bz(e,t){let r=e.artifact,n={};return r.properties.source_path&&(n.path=r.properties.source_path),r.properties.source_session&&(n.session=r.properties.source_session),r.properties.source_agent&&(n.agent=r.properties.source_agent),r.properties.source_runner&&(n.runner=r.properties.source_runner),{ref:`B${t+1}`,rid:r.rid,id:r.properties.id,title:r.properties.title,kind:r.kind,score:e.score,score_breakdown:e.score_breakdown,excerpt:e.excerpt,source:Object.keys(n).length>0?n:void 0}}function Zz(e){let t=e[0];if(!t)return"none";let r=Object.entries(t.score_breakdown).filter(([n,o])=>n!=="total"&&o>0).length;return t.score>=8||t.score>=5&&r>=2?"high":t.score>=3?"medium":"low"}function Uz(e,t,r){if(t.length===0)return[`No Brain artifacts matched "${e}". Capture or ingest cited artifacts before relying on Brain for this answer.`];let n=[];return r==="low"&&n.push("Only low-scoring deterministic matches were found; open the cited artifacts before treating this as settled."),t.length===1&&n.push("Only one cited artifact matched; missing context or contradictions may not be visible yet."),t.every(o=>o.source==null)&&n.push("The matched artifacts do not carry source path, session, agent, or runner provenance."),n}function Fz(e,t,r,n){if(t.length===0)return[`Brain has no cited evidence for "${e}".`,"","Missing evidence:",...n.map(a=>`- ${a}`)].join(`
70
70
  `);let o=t.slice(0,5).map(a=>`- ${a.title}: ${a.excerpt} [${a.ref}]`),i=t.map(a=>{let c=Object.entries(a.score_breakdown).filter(([l,u])=>l!=="total"&&u>0).map(([l,u])=>`${l} ${u}`).join(", ");return`[${a.ref}] ${a.title} (${a.kind}, rid ${a.rid}, score ${a.score})${c?` [${c}]`:""}; ${Vz(a)}`}),s=n.length>0?n.map(a=>`- ${a}`):["- No deterministic evidence gap detected in the returned Brain citations."];return[`Brain answer for "${e}"`,"",`Confidence: ${r}`,"","Best cited evidence:",...o,"","Missing evidence:",...s,"","Citations:",...i].join(`
71
- `)}function Vz(e){if(!e.source)return`source: Brain artifact ${e.id}`;let t=[e.source.path?`path ${e.source.path}`:null,e.source.session?`session ${e.source.session}`:null,e.source.agent?`agent ${e.source.agent}`:null,e.source.runner?`runner ${e.source.runner}`:null].filter(Ri);return`source: ${t.length>0?t.join(", "):`Brain artifact ${e.id}`}`}function l_(e){return`artifact.hash.${e}`}function d_(e,t,r){return`connection.${e}.${r}.${t}`}function f_(){return`model-tier-bandit.v${1}`}function p_(e){if(typeof e!="object"||e===null)return!1;let t=e;return t.schemaVersion===1&&typeof t.buckets=="object"}function Kz(e){let t={};for(let r of e)t[r]=(t[r]??0)+1;return t}async function Hz(e=process.cwd()){let t=await Cy(e);if(jy(t))try{return{config:t,store:await My(t),project:w_(t.rootDir)}}catch(n){let o=_i(t.rootDir);if(await qn(o.socketPath,50))throw n}let r=await zi.open({uri:t.connectionString,autoLinker:Oy()});return{config:t,store:r,project:w_(t.rootDir)}}async function we(e,t=process.cwd()){let r=await Hz(t);try{return await e(r)}finally{await r.store.close()}}async function b_(e,t){if(e!=="SessionStart")return{};let r=await we(async({config:o,store:i})=>(await i.status(),o)),n=v_(r.rootDir,".red","brain","sessions");return await Wz(n,{recursive:!0}),await Gz(v_(n,"last-session.json"),JSON.stringify({runner:t,lifecycle:e,rootDir:r.rootDir,connectionString:r.connectionString,startedAt:new Date().toISOString()},null,2),"utf8"),{}}var Ii=class{map({event:t,sourceAgent:r}){return{title:Jz(t),content:Qz(t),kind:"event",tags:Yz(t),sourceAgent:r??"brain.ingest-events",sourceRunner:"hermes",sourceSession:x_(t),metadata:Xz(t)}}};function x_(e){return e.id?`evt:${e.id}`:e.cursor!=null?`cursor:${String(e.cursor)}`:`hash:${Zu(JSON.stringify({platform:e.platform??null,target:e.target??null,timestamp:e.timestamp??null,message:e.message??null}))}`}function Jz(e){let t=[];e.platform&&t.push(e.platform),e.target&&t.push(e.target);let r=t.length>0?`[${t.join(":")}]`:"[channel-event]";if(e.message){let n=e.message.slice(0,60).replace(/\n/g," ");return`${r} ${n}`}return e.type?`${r} ${e.type}`:`${r} event`}function Qz(e){let t=[];return e.message&&t.push(e.message),e.type&&t.push(`type: ${e.type}`),e.platform&&t.push(`platform: ${e.platform}`),e.target&&t.push(`target: ${e.target}`),e.timestamp&&t.push(`timestamp: ${e.timestamp}`),t.join(`
72
- `)||JSON.stringify(e.raw)}function Yz(e){let t=new Set(["channel-event"]);return e.platform&&t.add(e.platform),e.type&&t.add(e.type),Array.from(t)}function Xz(e){let t={event_key:x_(e)};return e.id!=null&&(t.event_id=e.id),e.cursor!=null&&(t.cursor=e.cursor),e.timestamp!=null&&(t.timestamp=e.timestamp),e.platform!=null&&(t.platform=e.platform),e.target!=null&&(t.target=e.target),e.sessionKey!=null&&(t.session_key=e.sessionKey),e.type!=null&&(t.event_type=e.type),t}async function Oi(e){let t=new Ii,r=await e.bridge.poll({afterCursor:e.afterCursor,sessionKey:e.sessionKey,limit:e.limit}),n=new Set((await e.store.listArtifacts()).map(s=>s.rid)),o=0,i=0;for(let s of r.events){let a=t.map({event:s,sourceAgent:e.sourceAgent}),c=await e.store.capture(a);n.has(c.rid)?i++:(o++,n.add(c.rid))}return{polled:r.events.length,captured:o,skipped:i,nextCursor:r.nextCursor}}var Qt=class extends Error{constructor(t,r){super(t),this.name="BrainActError",r?.cause!==void 0&&(this.cause=r.cause)}};async function $_(e,t={}){let r=e.target?.trim(),n=e.message;if(!r)throw new Qt("brain_act requires a non-empty channel target");if(!n||!n.trim())throw new Qt("brain_act requires a non-empty message");let o=t.connect??(a=>Ht.connect(a)),i=t.process??eI(t.env??process.env),s;try{s=await o(i)}catch(a){throw new Qt(`brain_act could not reach the channel bridge: ${k_(a)}`,{cause:a})}try{let a;try{a=await s.send(r,n)}catch(c){throw new Qt(`brain_act could not send to "${r}": ${k_(c)}`,{cause:c})}if(!a.ok)throw new Qt(`brain_act could not send to "${r}": ${tI(a)}`);return{ok:!0,target:a.target,messageId:a.messageId,raw:a.raw}}finally{await s.close().catch(()=>{})}}function eI(e=process.env){let t=e.RED_BRAIN_HERMES_COMMAND?.trim()||void 0,r=e.RED_BRAIN_HERMES_ARGS?.trim(),n=r?r.split(/\s+/).filter(Boolean):void 0;return{command:t,args:n}}function tI(e){return rI(e.raw,["error","message","reason","detail"])??"the channel bridge reported a failed send"}function rI(e,t){if(typeof e!="object"||e===null||Array.isArray(e))return;let r=e;for(let n of t){let o=r[n];if(typeof o=="string"&&o.trim())return o}}function k_(e){return e instanceof Error?e.message:String(e)}import{createServer as nI}from"node:http";async function T_(e,t){let r=await e.listArtifacts(),n=await e.listConnections(),o=new Map(r.map(u=>[u.rid,u])),i=await e.eventKpis({interval:"day"}),s=await e.eventKpis({interval:"day",groupBy:"platform"}),a=await e.eventKpis({interval:"day",groupBy:"event_type"}),c=t.decisionLimit??8,l=t.connectionLimit??12;return{schema_version:"brain.dashboard.v1",generated_at:new Date(t.now??Date.now()).toISOString(),project:t.project,root:t.rootDir,stats:{artifacts:r.length,connections:n.length,decisions:r.filter(u=>u.kind==="decision").length,events:i.total,supports:Wu(n,"supports"),contradicts:Wu(n,"contradicts"),depends_on:Wu(n,"depends_on")},kpis:{events_daily:i,events_by_platform:s,events_by_type:a},recent_decisions:r.filter(u=>u.kind==="decision").sort((u,d)=>d.properties.updated_at-u.properties.updated_at||d.rid-u.rid).slice(0,c).map(u=>oI(u,n)),recent_connections:n.filter(u=>o.has(u.from_rid)&&o.has(u.to_rid)).sort((u,d)=>d.properties.created_at-u.properties.created_at||d.rid-u.rid).slice(0,l).map(u=>iI(u,o)),attribution:{red_hermes:"Dashboard layout and command-center interaction model are adapted from the red-hermes web surface; NOTICE records the MIT attribution."}}}function P_(e){return{contract:{name:"brain.dashboard.viewer",version:"brain.dashboard.viewer.v1",consumes:"brain.dashboard.v1"},html:sI(e)}}async function R_(e,t={}){let r=t.host??"127.0.0.1",n=t.port??4738,o=nI((i,s)=>{let a=i.url??"/";if(a==="/"||a==="/dashboard"){s.writeHead(200,{"content-type":"text/html; charset=utf-8","cache-control":"no-store"}),s.end(e);return}s.writeHead(404,{"content-type":"text/plain; charset=utf-8"}),s.end(`not found
73
- `)});return await new Promise((i,s)=>{o.once("error",s),o.listen(n,r,()=>{o.off("error",s),i()})}),o}function oI(e,t){let r=t.filter(n=>n.from_rid===e.rid||n.to_rid===e.rid);return{rid:e.rid,id:e.properties.id,title:e.properties.title,updated_at:new Date(e.properties.updated_at).toISOString(),tags:e.properties.tags,connection_counts:{supports:r.filter(n=>n.kind==="supports").length,contradicts:r.filter(n=>n.kind==="contradicts").length,depends_on:r.filter(n=>n.kind==="depends_on").length,related_to:r.filter(n=>n.kind==="related_to").length},excerpt:uI(e.properties.content)}}function iI(e,t){let r=t.get(e.from_rid),n=t.get(e.to_rid);if(!r||!n)throw new Error(`connection ${e.rid} references missing artifacts`);return{rid:e.rid,kind:e.kind,from:{rid:r.rid,title:r.properties.title},to:{rid:n.rid,title:n.properties.title},created_at:new Date(e.properties.created_at).toISOString(),reason:e.properties.reason??null}}function sI(e){return`<!doctype html>
71
+ `)}function Vz(e){if(!e.source)return`source: Brain artifact ${e.id}`;let t=[e.source.path?`path ${e.source.path}`:null,e.source.session?`session ${e.source.session}`:null,e.source.agent?`agent ${e.source.agent}`:null,e.source.runner?`runner ${e.source.runner}`:null].filter(Ri);return`source: ${t.length>0?t.join(", "):`Brain artifact ${e.id}`}`}function l_(e){return`artifact.hash.${e}`}function d_(e,t,r){return`connection.${e}.${r}.${t}`}function f_(){return`model-tier-bandit.v${1}`}function p_(e){if(typeof e!="object"||e===null)return!1;let t=e;return t.schemaVersion===1&&typeof t.buckets=="object"}function Kz(e){let t={};for(let r of e)t[r]=(t[r]??0)+1;return t}async function Hz(e=process.cwd()){let t=await Cy(e);if(jy(t))try{return{config:t,store:await My(t),project:w_(t.rootDir)}}catch(n){let o=_i(t.rootDir);if(await qn(o.socketPath,50))throw n}let r=await zi.open({uri:t.connectionString,autoLinker:Oy()});return{config:t,store:r,project:w_(t.rootDir)}}async function we(e,t=process.cwd()){let r=await Hz(t);try{return await e(r)}finally{await r.store.close()}}function Jz(e){return pt(e)}async function b_(e,t){if(e!=="SessionStart")return{};let r=await we(async({config:o,store:i})=>(await i.status(),o)),n=v_(r.rootDir,".red","brain","sessions");return await Wz(n,{recursive:!0}),await Gz(v_(n,"last-session.json"),Jz({runner:t,lifecycle:e,rootDir:r.rootDir,connectionString:r.connectionString,startedAt:new Date().toISOString()}),"utf8"),{}}var Ii=class{map({event:t,sourceAgent:r}){return{title:Qz(t),content:Yz(t),kind:"event",tags:Xz(t),sourceAgent:r??"brain.ingest-events",sourceRunner:"hermes",sourceSession:x_(t),metadata:eI(t)}}};function x_(e){return e.id?`evt:${e.id}`:e.cursor!=null?`cursor:${String(e.cursor)}`:`hash:${Zu(JSON.stringify({platform:e.platform??null,target:e.target??null,timestamp:e.timestamp??null,message:e.message??null}))}`}function Qz(e){let t=[];e.platform&&t.push(e.platform),e.target&&t.push(e.target);let r=t.length>0?`[${t.join(":")}]`:"[channel-event]";if(e.message){let n=e.message.slice(0,60).replace(/\n/g," ");return`${r} ${n}`}return e.type?`${r} ${e.type}`:`${r} event`}function Yz(e){let t=[];return e.message&&t.push(e.message),e.type&&t.push(`type: ${e.type}`),e.platform&&t.push(`platform: ${e.platform}`),e.target&&t.push(`target: ${e.target}`),e.timestamp&&t.push(`timestamp: ${e.timestamp}`),t.join(`
72
+ `)||JSON.stringify(e.raw)}function Xz(e){let t=new Set(["channel-event"]);return e.platform&&t.add(e.platform),e.type&&t.add(e.type),Array.from(t)}function eI(e){let t={event_key:x_(e)};return e.id!=null&&(t.event_id=e.id),e.cursor!=null&&(t.cursor=e.cursor),e.timestamp!=null&&(t.timestamp=e.timestamp),e.platform!=null&&(t.platform=e.platform),e.target!=null&&(t.target=e.target),e.sessionKey!=null&&(t.session_key=e.sessionKey),e.type!=null&&(t.event_type=e.type),t}async function Oi(e){let t=new Ii,r=await e.bridge.poll({afterCursor:e.afterCursor,sessionKey:e.sessionKey,limit:e.limit}),n=new Set((await e.store.listArtifacts()).map(s=>s.rid)),o=0,i=0;for(let s of r.events){let a=t.map({event:s,sourceAgent:e.sourceAgent}),c=await e.store.capture(a);n.has(c.rid)?i++:(o++,n.add(c.rid))}return{polled:r.events.length,captured:o,skipped:i,nextCursor:r.nextCursor}}var Qt=class extends Error{constructor(t,r){super(t),this.name="BrainActError",r?.cause!==void 0&&(this.cause=r.cause)}};async function $_(e,t={}){let r=e.target?.trim(),n=e.message;if(!r)throw new Qt("brain_act requires a non-empty channel target");if(!n||!n.trim())throw new Qt("brain_act requires a non-empty message");let o=t.connect??(a=>Wt.connect(a)),i=t.process??tI(t.env??process.env),s;try{s=await o(i)}catch(a){throw new Qt(`brain_act could not reach the channel bridge: ${k_(a)}`,{cause:a})}try{let a;try{a=await s.send(r,n)}catch(c){throw new Qt(`brain_act could not send to "${r}": ${k_(c)}`,{cause:c})}if(!a.ok)throw new Qt(`brain_act could not send to "${r}": ${rI(a)}`);return{ok:!0,target:a.target,messageId:a.messageId,raw:a.raw}}finally{await s.close().catch(()=>{})}}function tI(e=process.env){let t=e.RED_BRAIN_HERMES_COMMAND?.trim()||void 0,r=e.RED_BRAIN_HERMES_ARGS?.trim(),n=r?r.split(/\s+/).filter(Boolean):void 0;return{command:t,args:n}}function rI(e){return nI(e.raw,["error","message","reason","detail"])??"the channel bridge reported a failed send"}function nI(e,t){if(typeof e!="object"||e===null||Array.isArray(e))return;let r=e;for(let n of t){let o=r[n];if(typeof o=="string"&&o.trim())return o}}function k_(e){return e instanceof Error?e.message:String(e)}import{createServer as oI}from"node:http";async function T_(e,t){let r=await e.listArtifacts(),n=await e.listConnections(),o=new Map(r.map(u=>[u.rid,u])),i=await e.eventKpis({interval:"day"}),s=await e.eventKpis({interval:"day",groupBy:"platform"}),a=await e.eventKpis({interval:"day",groupBy:"event_type"}),c=t.decisionLimit??8,l=t.connectionLimit??12;return{schema_version:"brain.dashboard.v1",generated_at:new Date(t.now??Date.now()).toISOString(),project:t.project,root:t.rootDir,stats:{artifacts:r.length,connections:n.length,decisions:r.filter(u=>u.kind==="decision").length,events:i.total,supports:Wu(n,"supports"),contradicts:Wu(n,"contradicts"),depends_on:Wu(n,"depends_on")},kpis:{events_daily:i,events_by_platform:s,events_by_type:a},recent_decisions:r.filter(u=>u.kind==="decision").sort((u,d)=>d.properties.updated_at-u.properties.updated_at||d.rid-u.rid).slice(0,c).map(u=>iI(u,n)),recent_connections:n.filter(u=>o.has(u.from_rid)&&o.has(u.to_rid)).sort((u,d)=>d.properties.created_at-u.properties.created_at||d.rid-u.rid).slice(0,l).map(u=>sI(u,o)),attribution:{red_hermes:"Dashboard layout and command-center interaction model are adapted from the red-hermes web surface; NOTICE records the MIT attribution."}}}function P_(e){return{contract:{name:"brain.dashboard.viewer",version:"brain.dashboard.viewer.v1",consumes:"brain.dashboard.v1"},html:aI(e)}}async function R_(e,t={}){let r=t.host??"127.0.0.1",n=t.port??4738,o=oI((i,s)=>{let a=i.url??"/";if(a==="/"||a==="/dashboard"){s.writeHead(200,{"content-type":"text/html; charset=utf-8","cache-control":"no-store"}),s.end(e);return}s.writeHead(404,{"content-type":"text/plain; charset=utf-8"}),s.end(`not found
73
+ `)});return await new Promise((i,s)=>{o.once("error",s),o.listen(n,r,()=>{o.off("error",s),i()})}),o}function iI(e,t){let r=t.filter(n=>n.from_rid===e.rid||n.to_rid===e.rid);return{rid:e.rid,id:e.properties.id,title:e.properties.title,updated_at:new Date(e.properties.updated_at).toISOString(),tags:e.properties.tags,connection_counts:{supports:r.filter(n=>n.kind==="supports").length,contradicts:r.filter(n=>n.kind==="contradicts").length,depends_on:r.filter(n=>n.kind==="depends_on").length,related_to:r.filter(n=>n.kind==="related_to").length},excerpt:lI(e.properties.content)}}function sI(e,t){let r=t.get(e.from_rid),n=t.get(e.to_rid);if(!r||!n)throw new Error(`connection ${e.rid} references missing artifacts`);return{rid:e.rid,kind:e.kind,from:{rid:r.rid,title:r.properties.title},to:{rid:n.rid,title:n.properties.title},created_at:new Date(e.properties.created_at).toISOString(),reason:e.properties.reason??null}}function aI(e){return`<!doctype html>
74
74
  <html lang="en">
75
75
  <head>
76
76
  <meta charset="utf-8">
@@ -268,30 +268,30 @@ ${o}`),n.join(`
268
268
  <section>
269
269
  <h2>Recent Decisions</h2>
270
270
  <div class="feed">
271
- ${e.recent_decisions.length===0?E_("No decision artifacts captured yet."):e.recent_decisions.map(aI).join("")}
271
+ ${e.recent_decisions.length===0?E_("No decision artifacts captured yet."):e.recent_decisions.map(cI).join("")}
272
272
  </div>
273
273
  </section>
274
274
  </div>
275
275
  <section>
276
276
  <h2>Recent Connections</h2>
277
277
  <div class="feed">
278
- ${e.recent_connections.length===0?E_("No graph connections captured yet."):e.recent_connections.map(cI).join("")}
278
+ ${e.recent_connections.length===0?E_("No graph connections captured yet."):e.recent_connections.map(uI).join("")}
279
279
  </div>
280
280
  </section>
281
281
  </main>
282
282
  <footer class="meta">${se(e.attribution.red_hermes)}</footer>
283
- <script id="brain-dashboard-data" type="application/json">${lI(e)}</script>
283
+ <script id="brain-dashboard-data" type="application/json">${dI(e)}</script>
284
284
  </body>
285
- </html>`}function Ar(e,t,r){return`<div class="metric"><span>${se(e)}</span><strong>${t}</strong><div class="meta">${se(r)}</div></div>`}function S_(e,t){let r=e.series.filter(o=>o.group!=null);if(r.length===0)return`<div class="empty">No ${se(t.toLowerCase())} split available.</div>`;let n=Math.max(...r.map(o=>o.total),1);return`<div class="bars" aria-label="${se(t)}">${r.map(o=>{let i=o.group??"all",s=Math.round(o.total/n*100);return`<div class="bar"><div class="meta">${se(i)}</div><div class="track"><div class="fill" style="width:${s}%"></div></div><strong>${o.total}</strong></div>`}).join("")}</div>`}function aI(e){let t=e.connection_counts,r=e.tags.length===0?"":`<div class="tags">${e.tags.slice(0,6).map(n=>`<span class="tag">${se(n)}</span>`).join("")}</div>`;return`<article class="item">
285
+ </html>`}function Ar(e,t,r){return`<div class="metric"><span>${se(e)}</span><strong>${t}</strong><div class="meta">${se(r)}</div></div>`}function S_(e,t){let r=e.series.filter(o=>o.group!=null);if(r.length===0)return`<div class="empty">No ${se(t.toLowerCase())} split available.</div>`;let n=Math.max(...r.map(o=>o.total),1);return`<div class="bars" aria-label="${se(t)}">${r.map(o=>{let i=o.group??"all",s=Math.round(o.total/n*100);return`<div class="bar"><div class="meta">${se(i)}</div><div class="track"><div class="fill" style="width:${s}%"></div></div><strong>${o.total}</strong></div>`}).join("")}</div>`}function cI(e){let t=e.connection_counts,r=e.tags.length===0?"":`<div class="tags">${e.tags.slice(0,6).map(n=>`<span class="tag">${se(n)}</span>`).join("")}</div>`;return`<article class="item">
286
286
  <h3>${se(e.title)}</h3>
287
287
  <div class="meta">#${e.rid} - ${se(e.updated_at)} - supports ${t.supports}, contradicts ${t.contradicts}, depends_on ${t.depends_on}, related_to ${t.related_to}</div>
288
288
  <p class="meta">${se(e.excerpt)}</p>
289
289
  ${r}
290
- </article>`}function cI(e){return`<article class="item">
290
+ </article>`}function uI(e){return`<article class="item">
291
291
  <h3><span class="edge ${se(e.kind)}">${se(e.kind)}</span> ${se(e.from.title)} -> ${se(e.to.title)}</h3>
292
292
  <div class="meta">#${e.rid} - ${se(e.created_at)}${e.reason?` - ${se(e.reason)}`:""}</div>
293
- </article>`}function E_(e){return`<div class="empty">${se(e)}</div>`}function Wu(e,t){return e.filter(r=>r.kind===t).length}function uI(e){let t=e.replace(/\s+/g," ").trim();return t.length>180?`${t.slice(0,177)}...`:t}function se(e){return e.replace(/[&<>"']/g,t=>{switch(t){case"&":return"&amp;";case"<":return"&lt;";case">":return"&gt;";case'"':return"&quot;";case"'":return"&#39;";default:return t}})}function lI(e){return JSON.stringify(e).replace(/</g,"\\u003c")}import{mkdir as pI,readFile as mI,writeFile as hI}from"node:fs/promises";import{dirname as gI}from"node:path";function z_(e){return Gt(e,{keyedMapCollapse:!0})}var dI=[{id:"memory.config",plugin:"memory",legacyPath:".red/memory/config.json",toonPath:".red/memory/config.toon",kind:"toon"}],fI=[{id:"dev.afk-history",plugin:"dev",legacyPath:".red/state/afk-history.jsonl",toonPath:".red/state/castle/history.toonl",kind:"toonl"},{id:"dev.agent-log",plugin:"dev",legacyPath:".red/tmp/agent.log.jsonl",toonPath:".red/tmp/agent.log.toonl",kind:"toonl"},{id:"dev.supervisor-firehose",plugin:"dev",legacyPath:".red/tmp/afk-supervisor.log.jsonl",toonPath:".red/tmp/supervisors/default/supervisor.log.toonl",kind:"toonl",migration:"sniff-read"},{id:"dev.code-understanding-bench-runs",plugin:"dev",legacyPath:".red/tmp/bench/code-understanding/runs.jsonl",toonPath:".red/tmp/bench/code-understanding/runs.toonl",kind:"toonl"},{id:"dev.attempt-state",plugin:"dev",legacyPath:".red/tmp/{workers,go-workers,scout-workers}/*/*/afk.state.json",toonPath:".red/tmp/{workers,go-workers,scout-workers}/*/*/afk.state.json",kind:"toon"},{id:"dev.statusline-count-cache",plugin:"dev",legacyPath:".red/tmp/statusline-cache.json",toonPath:".red/state/statusline/statusline-cache.toon",kind:"toon"},{id:"dev.statusline-repo-cache",plugin:"dev",legacyPath:".red/tmp/statusline-repo-cache.json",toonPath:".red/state/statusline/statusline-repo-cache.toon",kind:"toon"},{id:"dev.rsp-resident-registry",plugin:"dev",legacyPath:".red/state/rsp/rsp-resident.pid.json",toonPath:".red/state/rsp/rsp-resident.pid.json",kind:"toon"},{id:"dev.rsp-status-summary",plugin:"dev",legacyPath:".red/state/rsp/rsp-status-summary.json",toonPath:".red/state/rsp/rsp-status-summary.json",kind:"toon"},{id:"dev.rsp-wait-registry",plugin:"dev",legacyPath:".red/tmp/waits/*.json",toonPath:".red/tmp/waits/*.json",kind:"toon"}],rB=[...dI,...fI];async function I_(e){let t=await Oi({bridge:e.bridge,store:e.store,afterCursor:e.state.cursor,sessionKey:e.sessionKey,limit:e.limit,sourceAgent:e.sourceAgent}),r={cursor:t.nextCursor??e.state.cursor,lastRunAt:new Date().toISOString()};return{polled:t.polled,captured:t.captured,skipped:t.skipped,state:r}}async function O_(e){try{let r=(await mI(e,"utf8")).trim();if(!r)return{};try{return JSON.parse(r)}catch{return Pt(r)}}catch(t){if(t.code==="ENOENT")return{};throw t}}async function A_(e,t){await pI(gI(e),{recursive:!0}),await hI(e,`${z_(t)}
294
- `,"utf8")}async function bI(){let[e="help",...t]=process.argv.slice(2);switch(e){case"help":case"--help":case"-h":jI();return;case"init":await we(async({config:r,store:n})=>{let o=await n.status();$e({rootDir:r.rootDir,configPath:r.configPath,...o})});return;case"status":await we(async({config:r,store:n})=>{$e({rootDir:r.rootDir,configPath:r.configPath,...await n.status()})});return;case"capture":await kI(t);return;case"search":await $I(t);return;case"think":case"query":await SI(t);return;case"get":await EI(t);return;case"link":await TI(t);return;case"backlinks":await PI(t);return;case"act":await AI(t);return;case"hook":await NI(t);return;case"ingest-events":await zI(t);return;case"schedule-ingest":await RI(t);return;case"kpi":case"kpis":await II(t);return;case"dashboard":await OI(t);return;case"outcome-event":await xI(t);return;default:throw new Error(`unknown brain command: ${e}`)}}async function xI(e){let[t,...r]=e;if(t!=="record")throw new Error("brain outcome-event requires subcommand: record");let n=Je(r),o=await DI(),i=JSON.parse(o);if(!Kn(i))throw new Error("invalid brain outcome event");await we(async({store:s})=>{$e(await s.appendOutcomeEvent(i))},M(n,"root")??process.cwd())}async function kI(e){let t=Je(e),r=(M(t,"title")??t._.join(" ").slice(0,80))||"Untitled artifact",n=M(t,"content")??(M(t,"file")?await yI(String(M(t,"file")),"utf8"):t._.join(" "));if(!n.trim())throw new Error("brain capture requires content, --content, or --file");await we(async({store:o})=>{let i=await o.capture({title:r,content:n,kind:M(t,"kind")??"note",tags:CI(t,"tag"),sourceAgent:M(t,"agent"),sourceRunner:M(t,"runner"),sourceSession:M(t,"session"),sourcePath:process.cwd()});$e(i)})}async function $I(e){let t=Je(e),r=M(t,"query")??t._.join(" ");if(!r)throw new Error("brain search requires a query");let n=Hn(t,"limit")??10;await we(async({store:o})=>$e(await o.search(r,n)))}async function SI(e){let t=Je(e),r=M(t,"query")??t._.join(" ");if(!r)throw new Error("brain think requires a query");let n=Hn(t,"limit")??8;await we(async({store:o})=>{let i=await o.think(r,n);t.json===!0?$e(i):console.log(i.answer)})}async function EI(e){let t=e[0];if(!t)throw new Error("brain get requires a rid or artifact id");await we(async({store:r})=>{let n=await r.getArtifact(Ai(t));if(!n)throw new Error(`Brain artifact not found: ${t}`);$e(n)})}async function TI(e){let t=Je(e),r=M(t,"from"),n=M(t,"to");if(!r||!n)throw new Error("brain link requires --from and --to");await we(async({store:o})=>{$e(await o.link({from:Ai(r),to:Ai(n),kind:M(t,"kind")??"related_to",reason:M(t,"reason")}))})}async function PI(e){let t=e[0];if(!t)throw new Error("brain backlinks requires a rid or artifact id");await we(async({store:r})=>$e(await r.backlinks(Ai(t))))}async function RI(e){let t=Je(e),r=M(t,"session-key")??M(t,"session"),n=Hn(t,"limit"),o=await Ht.connect();try{await we(async({config:i,store:s})=>{let a=M(t,"state")??N_(i.rootDir,".red","brain","ingestion-state.json"),c=await O_(a),l=await I_({bridge:o,store:s,state:c,sessionKey:r??void 0,limit:n??void 0,sourceAgent:"brain.schedule-ingest"});await A_(a,l.state),$e(l)})}finally{await o.close().catch(()=>{})}}async function zI(e){let t=Je(e),r=M(t,"after-cursor")??M(t,"cursor"),n=M(t,"session-key")??M(t,"session"),o=Hn(t,"limit"),i=await Ht.connect();try{await we(async({store:s})=>{let a=await Oi({bridge:i,store:s,afterCursor:r??void 0,sessionKey:n??void 0,limit:o??void 0,sourceAgent:"brain.ingest-events"});$e(a)})}finally{await i.close().catch(()=>{})}}async function II(e){let t=Je(e),r=M(t,"interval"),n=M(t,"group-by"),o=M(t,"time-field");await we(async({store:i})=>{$e(await i.eventKpis({interval:r,groupBy:n,timeField:o,from:M(t,"from"),to:M(t,"to"),platform:M(t,"platform"),eventType:M(t,"event-type"),target:M(t,"target")}))})}async function OI(e){let t=Je(e),r=await we(async({config:o,store:i,project:s})=>{let a=await T_(i,{project:s,rootDir:o.rootDir});return{dashboard:a,artifact:P_(a),defaultOut:N_(o.rootDir,".red","brain","dashboard.html")}});if(t.json===!0){$e(r.dashboard);return}if(t.serve===!0){let o=M(t,"host")??"127.0.0.1",i=Hn(t,"port")??4738,s=await R_(r.artifact.html,{host:o,port:i}),a=s.address();console.log(`brain: dashboard serving at http://${a.address}:${a.port}/`),await new Promise(c=>{let l=()=>s.close(()=>c());process.once("SIGINT",l),process.once("SIGTERM",l)});return}let n=M(t,"out")??r.defaultOut;await _I(vI(n),{recursive:!0}),await wI(n,r.artifact.html,"utf8"),console.log(`brain: dashboard written ${n}`)}async function AI(e){let t=Je(e),r=M(t,"target")??t._[0],n=M(t,"message")??t._.slice(1).join(" ");if(!r)throw new Error("brain act requires --target <channel>");if(!n)throw new Error("brain act requires --message <text>");$e(await $_({target:r,message:n}))}async function NI(e){let[t="SessionStart",...r]=e,n=Je(r),o=M(n,"runner")??"unknown";$e(await b_(t,o))}function Ai(e){return/^\d+$/.test(e)?Number(e):e}function Je(e){let t={_:[]};for(let r=0;r<e.length;r++){let n=e[r];if(!n.startsWith("--")){t._.push(n);continue}let o=n.slice(2),i=e[r+1],s=i&&!i.startsWith("--")?e[++r]:!0,a=t[o];a==null||a===!1?t[o]=s:Array.isArray(a)?a.push(String(s)):t[o]=[String(a),String(s)]}return t}function M(e,t){let r=e[t];if(typeof r=="string")return r;if(Array.isArray(r))return r[r.length-1]}function CI(e,t){let r=e[t];return typeof r=="string"?[r]:Array.isArray(r)?r:[]}function Hn(e,t){let r=M(e,t);if(r==null)return;let n=Number(r);if(!Number.isFinite(n))throw new Error(`--${t} must be a number`);return n}function $e(e){console.log(JSON.stringify(e,null,2))}async function DI(){let e=[];for await(let t of process.stdin)e.push(Buffer.isBuffer(t)?t:Buffer.from(String(t)));return Buffer.concat(e).toString("utf8")}function jI(){console.log(`brain commands:
293
+ </article>`}function E_(e){return`<div class="empty">${se(e)}</div>`}function Wu(e,t){return e.filter(r=>r.kind===t).length}function lI(e){let t=e.replace(/\s+/g," ").trim();return t.length>180?`${t.slice(0,177)}...`:t}function se(e){return e.replace(/[&<>"']/g,t=>{switch(t){case"&":return"&amp;";case"<":return"&lt;";case">":return"&gt;";case'"':return"&quot;";case"'":return"&#39;";default:return t}})}function dI(e){return JSON.stringify(e).replace(/</g,"\\u003c")}import{mkdir as mI,readFile as hI,writeFile as gI}from"node:fs/promises";import{dirname as yI}from"node:path";function z_(e){return pt(e,{keyedMapCollapse:!0})}var fI=[{id:"memory.config",plugin:"memory",legacyPath:".red/memory/config.json",toonPath:".red/memory/config.toon",kind:"toon"}],pI=[{id:"dev.afk-history",plugin:"dev",legacyPath:".red/state/afk-history.jsonl",toonPath:".red/state/castle/history.toonl",kind:"toonl"},{id:"dev.agent-log",plugin:"dev",legacyPath:".red/tmp/agent.log.jsonl",toonPath:".red/tmp/agent.log.toonl",kind:"toonl"},{id:"dev.supervisor-firehose",plugin:"dev",legacyPath:".red/tmp/afk-supervisor.log.jsonl",toonPath:".red/tmp/supervisors/default/supervisor.log.toonl",kind:"toonl",migration:"sniff-read"},{id:"dev.code-understanding-bench-runs",plugin:"dev",legacyPath:".red/tmp/bench/code-understanding/runs.jsonl",toonPath:".red/tmp/bench/code-understanding/runs.toonl",kind:"toonl"},{id:"dev.attempt-state",plugin:"dev",legacyPath:".red/tmp/{workers,go-workers,scout-workers}/*/*/afk.state.json",toonPath:".red/tmp/{workers,go-workers,scout-workers}/*/*/afk.state.json",kind:"toon"},{id:"dev.statusline-count-cache",plugin:"dev",legacyPath:".red/tmp/statusline-cache.json",toonPath:".red/state/statusline/statusline-cache.toon",kind:"toon"},{id:"dev.statusline-repo-cache",plugin:"dev",legacyPath:".red/tmp/statusline-repo-cache.json",toonPath:".red/state/statusline/statusline-repo-cache.toon",kind:"toon"},{id:"dev.rsp-resident-registry",plugin:"dev",legacyPath:".red/state/rsp/rsp-resident.pid.json",toonPath:".red/state/rsp/rsp-resident.pid.json",kind:"toon"},{id:"dev.rsp-status-summary",plugin:"dev",legacyPath:".red/state/rsp/rsp-status-summary.json",toonPath:".red/state/rsp/rsp-status-summary.json",kind:"toon"},{id:"dev.rsp-wait-registry",plugin:"dev",legacyPath:".red/tmp/waits/*.json",toonPath:".red/tmp/waits/*.json",kind:"toon"}],oB=[...fI,...pI];async function I_(e){let t=await Oi({bridge:e.bridge,store:e.store,afterCursor:e.state.cursor,sessionKey:e.sessionKey,limit:e.limit,sourceAgent:e.sourceAgent}),r={cursor:t.nextCursor??e.state.cursor,lastRunAt:new Date().toISOString()};return{polled:t.polled,captured:t.captured,skipped:t.skipped,state:r}}async function O_(e){try{let r=(await hI(e,"utf8")).trim();if(!r)return{};try{return JSON.parse(r)}catch{return ft(r)}}catch(t){if(t.code==="ENOENT")return{};throw t}}async function A_(e,t){await mI(yI(e),{recursive:!0}),await gI(e,`${z_(t)}
294
+ `,"utf8")}async function xI(){let[e="help",...t]=process.argv.slice(2);switch(e){case"help":case"--help":case"-h":MI();return;case"init":await we(async({config:r,store:n})=>{let o=await n.status();$e({rootDir:r.rootDir,configPath:r.configPath,...o})});return;case"status":await we(async({config:r,store:n})=>{$e({rootDir:r.rootDir,configPath:r.configPath,...await n.status()})});return;case"capture":await $I(t);return;case"search":await SI(t);return;case"think":case"query":await EI(t);return;case"get":await TI(t);return;case"link":await PI(t);return;case"backlinks":await RI(t);return;case"act":await NI(t);return;case"hook":await CI(t);return;case"ingest-events":await II(t);return;case"schedule-ingest":await zI(t);return;case"kpi":case"kpis":await OI(t);return;case"dashboard":await AI(t);return;case"outcome-event":await kI(t);return;default:throw new Error(`unknown brain command: ${e}`)}}async function kI(e){let[t,...r]=e;if(t!=="record")throw new Error("brain outcome-event requires subcommand: record");let n=Je(r),o=await jI(),i=JSON.parse(o);if(!Kn(i))throw new Error("invalid brain outcome event");await we(async({store:s})=>{$e(await s.appendOutcomeEvent(i))},M(n,"root")??process.cwd())}async function $I(e){let t=Je(e),r=(M(t,"title")??t._.join(" ").slice(0,80))||"Untitled artifact",n=M(t,"content")??(M(t,"file")?await _I(String(M(t,"file")),"utf8"):t._.join(" "));if(!n.trim())throw new Error("brain capture requires content, --content, or --file");await we(async({store:o})=>{let i=await o.capture({title:r,content:n,kind:M(t,"kind")??"note",tags:DI(t,"tag"),sourceAgent:M(t,"agent"),sourceRunner:M(t,"runner"),sourceSession:M(t,"session"),sourcePath:process.cwd()});$e(i)})}async function SI(e){let t=Je(e),r=M(t,"query")??t._.join(" ");if(!r)throw new Error("brain search requires a query");let n=Hn(t,"limit")??10;await we(async({store:o})=>$e(await o.search(r,n)))}async function EI(e){let t=Je(e),r=M(t,"query")??t._.join(" ");if(!r)throw new Error("brain think requires a query");let n=Hn(t,"limit")??8;await we(async({store:o})=>{let i=await o.think(r,n);t.json===!0?$e(i):console.log(i.answer)})}async function TI(e){let t=e[0];if(!t)throw new Error("brain get requires a rid or artifact id");await we(async({store:r})=>{let n=await r.getArtifact(Ai(t));if(!n)throw new Error(`Brain artifact not found: ${t}`);$e(n)})}async function PI(e){let t=Je(e),r=M(t,"from"),n=M(t,"to");if(!r||!n)throw new Error("brain link requires --from and --to");await we(async({store:o})=>{$e(await o.link({from:Ai(r),to:Ai(n),kind:M(t,"kind")??"related_to",reason:M(t,"reason")}))})}async function RI(e){let t=e[0];if(!t)throw new Error("brain backlinks requires a rid or artifact id");await we(async({store:r})=>$e(await r.backlinks(Ai(t))))}async function zI(e){let t=Je(e),r=M(t,"session-key")??M(t,"session"),n=Hn(t,"limit"),o=await Wt.connect();try{await we(async({config:i,store:s})=>{let a=M(t,"state")??N_(i.rootDir,".red","brain","ingestion-state.json"),c=await O_(a),l=await I_({bridge:o,store:s,state:c,sessionKey:r??void 0,limit:n??void 0,sourceAgent:"brain.schedule-ingest"});await A_(a,l.state),$e(l)})}finally{await o.close().catch(()=>{})}}async function II(e){let t=Je(e),r=M(t,"after-cursor")??M(t,"cursor"),n=M(t,"session-key")??M(t,"session"),o=Hn(t,"limit"),i=await Wt.connect();try{await we(async({store:s})=>{let a=await Oi({bridge:i,store:s,afterCursor:r??void 0,sessionKey:n??void 0,limit:o??void 0,sourceAgent:"brain.ingest-events"});$e(a)})}finally{await i.close().catch(()=>{})}}async function OI(e){let t=Je(e),r=M(t,"interval"),n=M(t,"group-by"),o=M(t,"time-field");await we(async({store:i})=>{$e(await i.eventKpis({interval:r,groupBy:n,timeField:o,from:M(t,"from"),to:M(t,"to"),platform:M(t,"platform"),eventType:M(t,"event-type"),target:M(t,"target")}))})}async function AI(e){let t=Je(e),r=await we(async({config:o,store:i,project:s})=>{let a=await T_(i,{project:s,rootDir:o.rootDir});return{dashboard:a,artifact:P_(a),defaultOut:N_(o.rootDir,".red","brain","dashboard.html")}});if(t.json===!0){$e(r.dashboard);return}if(t.serve===!0){let o=M(t,"host")??"127.0.0.1",i=Hn(t,"port")??4738,s=await R_(r.artifact.html,{host:o,port:i}),a=s.address();console.log(`brain: dashboard serving at http://${a.address}:${a.port}/`),await new Promise(c=>{let l=()=>s.close(()=>c());process.once("SIGINT",l),process.once("SIGTERM",l)});return}let n=M(t,"out")??r.defaultOut;await wI(bI(n),{recursive:!0}),await vI(n,r.artifact.html,"utf8"),console.log(`brain: dashboard written ${n}`)}async function NI(e){let t=Je(e),r=M(t,"target")??t._[0],n=M(t,"message")??t._.slice(1).join(" ");if(!r)throw new Error("brain act requires --target <channel>");if(!n)throw new Error("brain act requires --message <text>");$e(await $_({target:r,message:n}))}async function CI(e){let[t="SessionStart",...r]=e,n=Je(r),o=M(n,"runner")??"unknown";$e(await b_(t,o))}function Ai(e){return/^\d+$/.test(e)?Number(e):e}function Je(e){let t={_:[]};for(let r=0;r<e.length;r++){let n=e[r];if(!n.startsWith("--")){t._.push(n);continue}let o=n.slice(2),i=e[r+1],s=i&&!i.startsWith("--")?e[++r]:!0,a=t[o];a==null||a===!1?t[o]=s:Array.isArray(a)?a.push(String(s)):t[o]=[String(a),String(s)]}return t}function M(e,t){let r=e[t];if(typeof r=="string")return r;if(Array.isArray(r))return r[r.length-1]}function DI(e,t){let r=e[t];return typeof r=="string"?[r]:Array.isArray(r)?r:[]}function Hn(e,t){let r=M(e,t);if(r==null)return;let n=Number(r);if(!Number.isFinite(n))throw new Error(`--${t} must be a number`);return n}function $e(e){console.log(JSON.stringify(e,null,2))}async function jI(){let e=[];for await(let t of process.stdin)e.push(Buffer.isBuffer(t)?t:Buffer.from(String(t)));return Buffer.concat(e).toString("utf8")}function MI(){console.log(`brain commands:
295
295
  init
296
296
  status
297
297
  capture [text] --title <title> --kind <${Ti.join("|")}> --tag <tag>
@@ -306,4 +306,4 @@ ${o}`),n.join(`
306
306
  kpi [--interval hour|day|week|month] [--group-by platform|event_type|target] [--time-field event|ingested] [--from T] [--to T] [--platform P] [--event-type T] [--target T]
307
307
  dashboard [--out PATH] [--json] [--serve] [--host 127.0.0.1] [--port 4738]
308
308
  outcome-event record [--root PATH] < event.json
309
- `)}bI().catch(e=>{console.error(e instanceof Error?e.message:String(e)),process.exit(1)});
309
+ `)}xI().catch(e=>{console.error(e instanceof Error?e.message:String(e)),process.exit(1)});