@xiaozhiclaw/qlogicagent-core 0.1.3 → 0.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -27,7 +27,13 @@ for await (const event of agent.run({
27
27
  }
28
28
  ```
29
29
 
30
- The embedding boundary owns only model/tool turn behavior. The caller retains
30
+ The embedding boundary owns model/tool turn behavior plus host-neutral response
31
+ content blocks, standard presentation-tool contracts, and engineering-file
32
+ evidence extraction. Choice, table, diagram, attachment, and 2D/3D engineering
33
+ semantics therefore stay consistent across desktop, SaaS, and future hosts.
34
+ Each host remains responsible for rendering those semantics with its own UI.
35
+
36
+ The caller retains
31
37
  authentication, tenant and conversation authority, persistence, knowledge,
32
38
  business workflows, and deployment. The package does not require the desktop
33
39
  Host, ACP, MCP, SQLite, Redis, Skills, sub-agents, filesystem tools, or shell
package/dist/index.js CHANGED
@@ -1,11 +1,11 @@
1
- var yu=Object.create;var _i=Object.defineProperty;var _u=Object.getOwnPropertyDescriptor;var Tu=Object.getOwnPropertyNames;var bu=Object.getPrototypeOf,vu=Object.prototype.hasOwnProperty;var _=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Ru=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Tu(t))!vu.call(e,o)&&o!==r&&_i(e,o,{get:()=>t[o],enumerable:!(n=_u(t,o))||n.enumerable});return e};var ku=(e,t,r)=>(r=e!=null?yu(bu(e)):{},Ru(t||!e||!e.__esModule?_i(r,"default",{value:e,enumerable:!0}):r,e));var zt=_(j=>{"use strict";Object.defineProperty(j,"__esModule",{value:!0});j.regexpCode=j.getEsmExportName=j.getProperty=j.safeStringify=j.stringify=j.strConcat=j.addCodeArg=j.str=j._=j.nil=j._Code=j.Name=j.IDENTIFIER=j._CodeOrName=void 0;var Ut=class{};j._CodeOrName=Ut;j.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Xe=class extends Ut{constructor(t){if(super(),!j.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}}};j.Name=Xe;var ue=class extends Ut{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 Xe&&(r[n.str]=(r[n.str]||0)+1),r),{})}};j._Code=ue;j.nil=new ue("");function Bi(e,...t){let r=[e[0]],n=0;for(;n<t.length;)Wn(r,t[n]),r.push(e[++n]);return new ue(r)}j._=Bi;var Gn=new ue("+");function zi(e,...t){let r=[Bt(e[0])],n=0;for(;n<t.length;)r.push(Gn),Wn(r,t[n]),r.push(Gn,Bt(e[++n]));return Rd(r),new ue(r)}j.str=zi;function Wn(e,t){t instanceof ue?e.push(...t._items):t instanceof Xe?e.push(t):e.push(Cd(t))}j.addCodeArg=Wn;function Rd(e){let t=1;for(;t<e.length-1;){if(e[t]===Gn){let r=kd(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+"}t++}}function kd(e,t){if(t==='""')return e;if(e==='""')return t;if(typeof e=="string")return t instanceof Xe||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 Xe))return`"${e}${t.slice(1)}`}function Ed(e,t){return t.emptyStr()?e:e.emptyStr()?t:zi`${e}${t}`}j.strConcat=Ed;function Cd(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:Bt(Array.isArray(e)?e.join(","):e)}function $d(e){return new ue(Bt(e))}j.stringify=$d;function Bt(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}j.safeStringify=Bt;function wd(e){return typeof e=="string"&&j.IDENTIFIER.test(e)?new ue(`.${e}`):Bi`[${e}]`}j.getProperty=wd;function Sd(e){if(typeof e=="string"&&j.IDENTIFIER.test(e))return new ue(`${e}`);throw new Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}j.getEsmExportName=Sd;function Pd(e){return new ue(e.toString())}j.regexpCode=Pd});var Xn=_(ae=>{"use strict";Object.defineProperty(ae,"__esModule",{value:!0});ae.ValueScope=ae.ValueScopeName=ae.Scope=ae.varKinds=ae.UsedValueState=void 0;var ie=zt(),Jn=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},Or;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(Or||(ae.UsedValueState=Or={}));ae.varKinds={const:new ie.Name("const"),let:new ie.Name("let"),var:new ie.Name("var")};var Nr=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof ie.Name?t:this.name(t)}name(t){return new ie.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}}};ae.Scope=Nr;var jr=class extends ie.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0,ie._)`.${new ie.Name(r)}[${n}]`}};ae.ValueScopeName=jr;var xd=(0,ie._)`\n`,Yn=class extends Nr{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?xd:ie.nil}}get(){return this._scope}name(t){return new jr(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:s}=o,i=(n=r.key)!==null&&n!==void 0?n:r.ref,a=this._values[s];if(a){let u=a.get(i);if(u)return u}else a=this._values[s]=new Map;a.set(i,o);let l=this._scope[s]||(this._scope[s]=[]),c=l.length;return l[c]=r.ref,o.setValue(r,{property:s,itemIndex:c}),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,ie._)`${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 s=ie.nil;for(let i in t){let a=t[i];if(!a)continue;let l=n[i]=n[i]||new Map;a.forEach(c=>{if(l.has(c))return;l.set(c,Or.Started);let u=r(c);if(u){let d=this.opts.es5?ae.varKinds.var:ae.varKinds.const;s=(0,ie._)`${s}${d} ${c} = ${u};${this.opts._n}`}else if(u=o?.(c))s=(0,ie._)`${s}${u}${this.opts._n}`;else throw new Jn(c);l.set(c,Or.Completed)})}return s}};ae.ValueScope=Yn});var P=_(A=>{"use strict";Object.defineProperty(A,"__esModule",{value:!0});A.or=A.and=A.not=A.CodeGen=A.operators=A.varKinds=A.ValueScopeName=A.ValueScope=A.Scope=A.Name=A.regexpCode=A.stringify=A.getProperty=A.nil=A.strConcat=A.str=A._=void 0;var O=zt(),_e=Xn(),je=zt();Object.defineProperty(A,"_",{enumerable:!0,get:function(){return je._}});Object.defineProperty(A,"str",{enumerable:!0,get:function(){return je.str}});Object.defineProperty(A,"strConcat",{enumerable:!0,get:function(){return je.strConcat}});Object.defineProperty(A,"nil",{enumerable:!0,get:function(){return je.nil}});Object.defineProperty(A,"getProperty",{enumerable:!0,get:function(){return je.getProperty}});Object.defineProperty(A,"stringify",{enumerable:!0,get:function(){return je.stringify}});Object.defineProperty(A,"regexpCode",{enumerable:!0,get:function(){return je.regexpCode}});Object.defineProperty(A,"Name",{enumerable:!0,get:function(){return je.Name}});var Fr=Xn();Object.defineProperty(A,"Scope",{enumerable:!0,get:function(){return Fr.Scope}});Object.defineProperty(A,"ValueScope",{enumerable:!0,get:function(){return Fr.ValueScope}});Object.defineProperty(A,"ValueScopeName",{enumerable:!0,get:function(){return Fr.ValueScopeName}});Object.defineProperty(A,"varKinds",{enumerable:!0,get:function(){return Fr.varKinds}});A.operators={GT:new O._Code(">"),GTE:new O._Code(">="),LT:new O._Code("<"),LTE:new O._Code("<="),EQ:new O._Code("==="),NEQ:new O._Code("!=="),NOT:new O._Code("!"),OR:new O._Code("||"),AND:new O._Code("&&"),ADD:new O._Code("+")};var Ae=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},Qn=class extends Ae{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n}render({es5:t,_n:r}){let n=t?_e.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=yt(this.rhs,t,r)),this}get names(){return this.rhs instanceof O._CodeOrName?this.rhs.names:{}}},Lr=class extends Ae{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 O.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=yt(this.rhs,t,r),this}get names(){let t=this.lhs instanceof O.Name?{}:{...this.lhs.names};return Dr(t,this.rhs)}},Zn=class extends Lr{constructor(t,r,n,o){super(t,n,o),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},eo=class extends Ae{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},to=class extends Ae{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},ro=class extends Ae{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},no=class extends Ae{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=yt(this.code,t,r),this}get names(){return this.code instanceof O._CodeOrName?this.code.names:{}}},Vt=class extends Ae{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 s=n[o];s.optimizeNames(t,r)||(Ad(t,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>et(t,r.names),{})}},Me=class extends Vt{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},oo=class extends Vt{},gt=class extends Me{};gt.kind="else";var Qe=class e extends Me{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 gt(n):n}if(r)return t===!1?r instanceof e?r:r.nodes:this.nodes.length?this:new e(Vi(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=yt(this.condition,t,r),this}get names(){let t=super.names;return Dr(t,this.condition),this.else&&et(t,this.else.names),t}};Qe.kind="if";var Ze=class extends Me{};Ze.kind="for";var so=class extends Ze{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=yt(this.iteration,t,r),this}get names(){return et(super.names,this.iteration.names)}},io=class extends Ze{constructor(t,r,n,o){super(),this.varKind=t,this.name=r,this.from=n,this.to=o}render(t){let r=t.es5?_e.varKinds.var:this.varKind,{name:n,from:o,to:s}=this;return`for(${r} ${n}=${o}; ${n}<${s}; ${n}++)`+super.render(t)}get names(){let t=Dr(super.names,this.from);return Dr(t,this.to)}},qr=class extends Ze{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=yt(this.iterable,t,r),this}get names(){return et(super.names,this.iterable.names)}},Kt=class extends Me{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)}};Kt.kind="func";var Ht=class extends Vt{render(t){return"return "+super.render(t)}};Ht.kind="return";var ao=class extends Me{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&&et(t,this.catch.names),this.finally&&et(t,this.finally.names),t}},Gt=class extends Me{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};Gt.kind="catch";var Wt=class extends Me{render(t){return"finally"+super.render(t)}};Wt.kind="finally";var lo=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
2
- `:""},this._extScope=t,this._scope=new _e.Scope({parent:t}),this._nodes=[new oo]}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 s=this._scope.toName(r);return n!==void 0&&o&&(this._constants[s.str]=n),this._leafNode(new Qn(t,s,n)),s}const(t,r,n){return this._def(_e.varKinds.const,t,r,n)}let(t,r,n){return this._def(_e.varKinds.let,t,r,n)}var(t,r,n){return this._def(_e.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new Lr(t,r,n))}add(t,r){return this._leafNode(new Zn(t,A.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==O.nil&&this._leafNode(new no(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,O.addCodeArg)(r,o));return r.push("}"),new O._Code(r)}if(t,r,n){if(this._blockNode(new Qe(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 Qe(t))}else(){return this._elseNode(new gt)}endIf(){return this._endBlockNode(Qe,gt)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new so(t),r)}forRange(t,r,n,o,s=this.opts.es5?_e.varKinds.var:_e.varKinds.let){let i=this._scope.toName(t);return this._for(new io(s,i,r,n),()=>o(i))}forOf(t,r,n,o=_e.varKinds.const){let s=this._scope.toName(t);if(this.opts.es5){let i=r instanceof O.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,O._)`${i}.length`,a=>{this.var(s,(0,O._)`${i}[${a}]`),n(s)})}return this._for(new qr("of",o,s,r),()=>n(s))}forIn(t,r,n,o=this.opts.es5?_e.varKinds.var:_e.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0,O._)`Object.keys(${r})`,n);let s=this._scope.toName(t);return this._for(new qr("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(Ze)}label(t){return this._leafNode(new eo(t))}break(t){return this._leafNode(new to(t))}return(t){let r=new Ht;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Ht)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new ao;if(this._blockNode(o),this.code(t),r){let s=this.name("e");this._currNode=o.catch=new Gt(s),r(s)}return n&&(this._currNode=o.finally=new Wt,this.code(n)),this._endBlockNode(Gt,Wt)}throw(t){return this._leafNode(new ro(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=O.nil,n,o){return this._blockNode(new Kt(t,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Kt)}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 Qe))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}};A.CodeGen=lo;function et(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function Dr(e,t){return t instanceof O._CodeOrName?et(e,t.names):e}function yt(e,t,r){if(e instanceof O.Name)return n(e);if(!o(e))return e;return new O._Code(e._items.reduce((s,i)=>(i instanceof O.Name&&(i=n(i)),i instanceof O._Code?s.push(...i._items):s.push(i),s),[]));function n(s){let i=r[s.str];return i===void 0||t[s.str]!==1?s:(delete t[s.str],i)}function o(s){return s instanceof O._Code&&s._items.some(i=>i instanceof O.Name&&t[i.str]===1&&r[i.str]!==void 0)}}function Ad(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function Vi(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,O._)`!${co(e)}`}A.not=Vi;var Md=Ki(A.operators.AND);function Id(...e){return e.reduce(Md)}A.and=Id;var Od=Ki(A.operators.OR);function Nd(...e){return e.reduce(Od)}A.or=Nd;function Ki(e){return(t,r)=>t===O.nil?r:r===O.nil?t:(0,O._)`${co(t)} ${e} ${co(r)}`}function co(e){return e instanceof O.Name?e:(0,O._)`(${e})`}});var I=_(M=>{"use strict";Object.defineProperty(M,"__esModule",{value:!0});M.checkStrictMode=M.getErrorPath=M.Type=M.useFunc=M.setEvaluated=M.evaluatedPropsToName=M.mergeEvaluated=M.eachItem=M.unescapeJsonPointer=M.escapeJsonPointer=M.escapeFragment=M.unescapeFragment=M.schemaRefOrVal=M.schemaHasRulesButRef=M.schemaHasRules=M.checkUnknownRules=M.alwaysValidSchema=M.toHash=void 0;var F=P(),jd=zt();function Ld(e){let t={};for(let r of e)t[r]=!0;return t}M.toHash=Ld;function qd(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(Wi(e,t),!Ji(t,e.self.RULES.all))}M.alwaysValidSchema=qd;function Wi(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema||typeof t=="boolean")return;let o=n.RULES.keywords;for(let s in t)o[s]||Qi(e,`unknown keyword: "${s}"`)}M.checkUnknownRules=Wi;function Ji(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}M.schemaHasRules=Ji;function Dd(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}M.schemaHasRulesButRef=Dd;function Fd({topSchemaRef:e,schemaPath:t},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,F._)`${r}`}return(0,F._)`${e}${t}${(0,F.getProperty)(n)}`}M.schemaRefOrVal=Fd;function Ud(e){return Yi(decodeURIComponent(e))}M.unescapeFragment=Ud;function Bd(e){return encodeURIComponent(fo(e))}M.escapeFragment=Bd;function fo(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}M.escapeJsonPointer=fo;function Yi(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}M.unescapeJsonPointer=Yi;function zd(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}M.eachItem=zd;function Hi({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let l=i===void 0?s:i instanceof F.Name?(s instanceof F.Name?e(o,s,i):t(o,s,i),i):s instanceof F.Name?(t(o,i,s),s):r(s,i);return a===F.Name&&!(l instanceof F.Name)?n(o,l):l}}M.mergeEvaluated={props:Hi({mergeNames:(e,t,r)=>e.if((0,F._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,F._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,F._)`${r} || {}`).code((0,F._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,F._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,F._)`${r} || {}`),po(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:Xi}),items:Hi({mergeNames:(e,t,r)=>e.if((0,F._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,F._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,F._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,F._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function Xi(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,F._)`{}`);return t!==void 0&&po(e,r,t),r}M.evaluatedPropsToName=Xi;function po(e,t,r){Object.keys(r).forEach(n=>e.assign((0,F._)`${t}${(0,F.getProperty)(n)}`,!0))}M.setEvaluated=po;var Gi={};function Vd(e,t){return e.scopeValue("func",{ref:t,code:Gi[t.code]||(Gi[t.code]=new jd._Code(t.code))})}M.useFunc=Vd;var uo;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(uo||(M.Type=uo={}));function Kd(e,t,r){if(e instanceof F.Name){let n=t===uo.Num;return r?n?(0,F._)`"[" + ${e} + "]"`:(0,F._)`"['" + ${e} + "']"`:n?(0,F._)`"/" + ${e}`:(0,F._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,F.getProperty)(e).toString():"/"+fo(e)}M.getErrorPath=Kd;function Qi(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===!0)throw new Error(t);e.self.logger.warn(t)}}M.checkStrictMode=Qi});var de=_(mo=>{"use strict";Object.defineProperty(mo,"__esModule",{value:!0});var ee=P(),Hd={data:new ee.Name("data"),valCxt:new ee.Name("valCxt"),instancePath:new ee.Name("instancePath"),parentData:new ee.Name("parentData"),parentDataProperty:new ee.Name("parentDataProperty"),rootData:new ee.Name("rootData"),dynamicAnchors:new ee.Name("dynamicAnchors"),vErrors:new ee.Name("vErrors"),errors:new ee.Name("errors"),this:new ee.Name("this"),self:new ee.Name("self"),scope:new ee.Name("scope"),json:new ee.Name("json"),jsonPos:new ee.Name("jsonPos"),jsonLen:new ee.Name("jsonLen"),jsonPart:new ee.Name("jsonPart")};mo.default=Hd});var Jt=_(te=>{"use strict";Object.defineProperty(te,"__esModule",{value:!0});te.extendErrors=te.resetErrorsCount=te.reportExtraError=te.reportError=te.keyword$DataError=te.keywordError=void 0;var N=P(),Ur=I(),ne=de();te.keywordError={message:({keyword:e})=>(0,N.str)`must pass "${e}" keyword validation`};te.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,N.str)`"${e}" keyword must be ${t} ($data)`:(0,N.str)`"${e}" keyword is invalid ($data)`};function Gd(e,t=te.keywordError,r,n){let{it:o}=e,{gen:s,compositeRule:i,allErrors:a}=o,l=ta(e,t,r);n??(i||a)?Zi(s,l):ea(o,(0,N._)`[${l}]`)}te.reportError=Gd;function Wd(e,t=te.keywordError,r){let{it:n}=e,{gen:o,compositeRule:s,allErrors:i}=n,a=ta(e,t,r);Zi(o,a),s||i||ea(n,ne.default.vErrors)}te.reportExtraError=Wd;function Jd(e,t){e.assign(ne.default.errors,t),e.if((0,N._)`${ne.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,N._)`${ne.default.vErrors}.length`,t),()=>e.assign(ne.default.vErrors,null)))}te.resetErrorsCount=Jd;function Yd({gen:e,keyword:t,schemaValue:r,data:n,errsCount:o,it:s}){if(o===void 0)throw new Error("ajv implementation error");let i=e.name("err");e.forRange("i",o,ne.default.errors,a=>{e.const(i,(0,N._)`${ne.default.vErrors}[${a}]`),e.if((0,N._)`${i}.instancePath === undefined`,()=>e.assign((0,N._)`${i}.instancePath`,(0,N.strConcat)(ne.default.instancePath,s.errorPath))),e.assign((0,N._)`${i}.schemaPath`,(0,N.str)`${s.errSchemaPath}/${t}`),s.opts.verbose&&(e.assign((0,N._)`${i}.schema`,r),e.assign((0,N._)`${i}.data`,n))})}te.extendErrors=Yd;function Zi(e,t){let r=e.const("err",t);e.if((0,N._)`${ne.default.vErrors} === null`,()=>e.assign(ne.default.vErrors,(0,N._)`[${r}]`),(0,N._)`${ne.default.vErrors}.push(${r})`),e.code((0,N._)`${ne.default.errors}++`)}function ea(e,t){let{gen:r,validateName:n,schemaEnv:o}=e;o.$async?r.throw((0,N._)`new ${e.ValidationError}(${t})`):(r.assign((0,N._)`${n}.errors`,t),r.return(!1))}var tt={keyword:new N.Name("keyword"),schemaPath:new N.Name("schemaPath"),params:new N.Name("params"),propertyName:new N.Name("propertyName"),message:new N.Name("message"),schema:new N.Name("schema"),parentSchema:new N.Name("parentSchema")};function ta(e,t,r){let{createErrors:n}=e.it;return n===!1?(0,N._)`{}`:Xd(e,t,r)}function Xd(e,t,r={}){let{gen:n,it:o}=e,s=[Qd(o,r),Zd(e,r)];return ef(e,t,s),n.object(...s)}function Qd({errorPath:e},{instancePath:t}){let r=t?(0,N.str)`${e}${(0,Ur.getErrorPath)(t,Ur.Type.Str)}`:e;return[ne.default.instancePath,(0,N.strConcat)(ne.default.instancePath,r)]}function Zd({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let o=n?t:(0,N.str)`${t}/${e}`;return r&&(o=(0,N.str)`${o}${(0,Ur.getErrorPath)(r,Ur.Type.Str)}`),[tt.schemaPath,o]}function ef(e,{params:t,message:r},n){let{keyword:o,data:s,schemaValue:i,it:a}=e,{opts:l,propertyName:c,topSchemaRef:u,schemaPath:d}=a;n.push([tt.keyword,o],[tt.params,typeof t=="function"?t(e):t||(0,N._)`{}`]),l.messages&&n.push([tt.message,typeof r=="function"?r(e):r]),l.verbose&&n.push([tt.schema,i],[tt.parentSchema,(0,N._)`${u}${d}`],[ne.default.data,s]),c&&n.push([tt.propertyName,c])}});var na=_(_t=>{"use strict";Object.defineProperty(_t,"__esModule",{value:!0});_t.boolOrEmptySchema=_t.topBoolOrEmptySchema=void 0;var tf=Jt(),rf=P(),nf=de(),of={message:"boolean schema is false"};function sf(e){let{gen:t,schema:r,validateName:n}=e;r===!1?ra(e,!1):typeof r=="object"&&r.$async===!0?t.return(nf.default.data):(t.assign((0,rf._)`${n}.errors`,null),t.return(!0))}_t.topBoolOrEmptySchema=sf;function af(e,t){let{gen:r,schema:n}=e;n===!1?(r.var(t,!1),ra(e)):r.var(t,!0)}_t.boolOrEmptySchema=af;function ra(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,tf.reportError)(o,of,void 0,t)}});var ho=_(Tt=>{"use strict";Object.defineProperty(Tt,"__esModule",{value:!0});Tt.getRules=Tt.isJSONType=void 0;var lf=["string","number","integer","boolean","null","object","array"],cf=new Set(lf);function uf(e){return typeof e=="string"&&cf.has(e)}Tt.isJSONType=uf;function df(){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:{}}}Tt.getRules=df});var go=_(Le=>{"use strict";Object.defineProperty(Le,"__esModule",{value:!0});Le.shouldUseRule=Le.shouldUseGroup=Le.schemaHasRulesForType=void 0;function ff({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&oa(e,n)}Le.schemaHasRulesForType=ff;function oa(e,t){return t.rules.some(r=>sa(e,r))}Le.shouldUseGroup=oa;function sa(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))}Le.shouldUseRule=sa});var Yt=_(re=>{"use strict";Object.defineProperty(re,"__esModule",{value:!0});re.reportTypeError=re.checkDataTypes=re.checkDataType=re.coerceAndCheckDataType=re.getJSONTypes=re.getSchemaTypes=re.DataType=void 0;var pf=ho(),mf=go(),hf=Jt(),x=P(),ia=I(),bt;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(bt||(re.DataType=bt={}));function gf(e){let t=aa(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}re.getSchemaTypes=gf;function aa(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(pf.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}re.getJSONTypes=aa;function yf(e,t){let{gen:r,data:n,opts:o}=e,s=_f(t,o.coerceTypes),i=t.length>0&&!(s.length===0&&t.length===1&&(0,mf.schemaHasRulesForType)(e,t[0]));if(i){let a=_o(t,n,o.strictNumbers,bt.Wrong);r.if(a,()=>{s.length?Tf(e,t,s):To(e)})}return i}re.coerceAndCheckDataType=yf;var la=new Set(["string","number","integer","boolean","null"]);function _f(e,t){return t?e.filter(r=>la.has(r)||t==="array"&&r==="array"):[]}function Tf(e,t,r){let{gen:n,data:o,opts:s}=e,i=n.let("dataType",(0,x._)`typeof ${o}`),a=n.let("coerced",(0,x._)`undefined`);s.coerceTypes==="array"&&n.if((0,x._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,x._)`${o}[0]`).assign(i,(0,x._)`typeof ${o}`).if(_o(t,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,x._)`${a} !== undefined`);for(let c of r)(la.has(c)||c==="array"&&s.coerceTypes==="array")&&l(c);n.else(),To(e),n.endIf(),n.if((0,x._)`${a} !== undefined`,()=>{n.assign(o,a),bf(e,a)});function l(c){switch(c){case"string":n.elseIf((0,x._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,x._)`"" + ${o}`).elseIf((0,x._)`${o} === null`).assign(a,(0,x._)`""`);return;case"number":n.elseIf((0,x._)`${i} == "boolean" || ${o} === null
3
- || (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,x._)`+${o}`);return;case"integer":n.elseIf((0,x._)`${i} === "boolean" || ${o} === null
4
- || (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,x._)`+${o}`);return;case"boolean":n.elseIf((0,x._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,x._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,x._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,x._)`${i} === "string" || ${i} === "number"
5
- || ${i} === "boolean" || ${o} === null`).assign(a,(0,x._)`[${o}]`)}}}function bf({gen:e,parentData:t,parentDataProperty:r},n){e.if((0,x._)`${t} !== undefined`,()=>e.assign((0,x._)`${t}[${r}]`,n))}function yo(e,t,r,n=bt.Correct){let o=n===bt.Correct?x.operators.EQ:x.operators.NEQ,s;switch(e){case"null":return(0,x._)`${t} ${o} null`;case"array":s=(0,x._)`Array.isArray(${t})`;break;case"object":s=(0,x._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":s=i((0,x._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":s=i();break;default:return(0,x._)`typeof ${t} ${o} ${e}`}return n===bt.Correct?s:(0,x.not)(s);function i(a=x.nil){return(0,x.and)((0,x._)`typeof ${t} == "number"`,a,r?(0,x._)`isFinite(${t})`:x.nil)}}re.checkDataType=yo;function _o(e,t,r,n){if(e.length===1)return yo(e[0],t,r,n);let o,s=(0,ia.toHash)(e);if(s.array&&s.object){let i=(0,x._)`typeof ${t} != "object"`;o=s.null?i:(0,x._)`!${t} || ${i}`,delete s.null,delete s.array,delete s.object}else o=x.nil;s.number&&delete s.integer;for(let i in s)o=(0,x.and)(o,yo(i,t,r,n));return o}re.checkDataTypes=_o;var vf={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,x._)`{type: ${e}}`:(0,x._)`{type: ${t}}`};function To(e){let t=Rf(e);(0,hf.reportError)(t,vf)}re.reportTypeError=To;function Rf(e){let{gen:t,data:r,schema:n}=e,o=(0,ia.schemaRefOrVal)(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:e}}});var ua=_(Br=>{"use strict";Object.defineProperty(Br,"__esModule",{value:!0});Br.assignDefaults=void 0;var vt=P(),kf=I();function Ef(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let o in r)ca(e,o,r[o].default);else t==="array"&&Array.isArray(n)&&n.forEach((o,s)=>ca(e,s,o.default))}Br.assignDefaults=Ef;function ca(e,t,r){let{gen:n,compositeRule:o,data:s,opts:i}=e;if(r===void 0)return;let a=(0,vt._)`${s}${(0,vt.getProperty)(t)}`;if(o){(0,kf.checkStrictMode)(e,`default is ignored for: ${a}`);return}let l=(0,vt._)`${a} === undefined`;i.useDefaults==="empty"&&(l=(0,vt._)`${l} || ${a} === null || ${a} === ""`),n.if(l,(0,vt._)`${a} = ${(0,vt.stringify)(r)}`)}});var fe=_(D=>{"use strict";Object.defineProperty(D,"__esModule",{value:!0});D.validateUnion=D.validateArray=D.usePattern=D.callValidateCode=D.schemaProperties=D.allSchemaProperties=D.noPropertyInData=D.propertyInData=D.isOwnProperty=D.hasPropFunc=D.reportMissingProp=D.checkMissingProp=D.checkReportMissingProp=void 0;var B=P(),bo=I(),qe=de(),Cf=I();function $f(e,t){let{gen:r,data:n,it:o}=e;r.if(Ro(r,n,t,o.opts.ownProperties),()=>{e.setParams({missingProperty:(0,B._)`${t}`},!0),e.error()})}D.checkReportMissingProp=$f;function wf({gen:e,data:t,it:{opts:r}},n,o){return(0,B.or)(...n.map(s=>(0,B.and)(Ro(e,t,s,r.ownProperties),(0,B._)`${o} = ${s}`)))}D.checkMissingProp=wf;function Sf(e,t){e.setParams({missingProperty:t},!0),e.error()}D.reportMissingProp=Sf;function da(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,B._)`Object.prototype.hasOwnProperty`})}D.hasPropFunc=da;function vo(e,t,r){return(0,B._)`${da(e)}.call(${t}, ${r})`}D.isOwnProperty=vo;function Pf(e,t,r,n){let o=(0,B._)`${t}${(0,B.getProperty)(r)} !== undefined`;return n?(0,B._)`${o} && ${vo(e,t,r)}`:o}D.propertyInData=Pf;function Ro(e,t,r,n){let o=(0,B._)`${t}${(0,B.getProperty)(r)} === undefined`;return n?(0,B.or)(o,(0,B.not)(vo(e,t,r))):o}D.noPropertyInData=Ro;function fa(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}D.allSchemaProperties=fa;function xf(e,t){return fa(t).filter(r=>!(0,bo.alwaysValidSchema)(e,t[r]))}D.schemaProperties=xf;function Af({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,l,c){let u=c?(0,B._)`${e}, ${t}, ${n}${o}`:t,d=[[qe.default.instancePath,(0,B.strConcat)(qe.default.instancePath,s)],[qe.default.parentData,i.parentData],[qe.default.parentDataProperty,i.parentDataProperty],[qe.default.rootData,qe.default.rootData]];i.opts.dynamicRef&&d.push([qe.default.dynamicAnchors,qe.default.dynamicAnchors]);let m=(0,B._)`${u}, ${r.object(...d)}`;return l!==B.nil?(0,B._)`${a}.call(${l}, ${m})`:(0,B._)`${a}(${m})`}D.callValidateCode=Af;var Mf=(0,B._)`new RegExp`;function If({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:o}=t.code,s=o(r,n);return e.scopeValue("pattern",{key:s.toString(),ref:s,code:(0,B._)`${o.code==="new RegExp"?Mf:(0,Cf.useFunc)(e,o)}(${r}, ${n})`})}D.usePattern=If;function Of(e){let{gen:t,data:r,keyword:n,it:o}=e,s=t.name("valid");if(o.allErrors){let a=t.let("valid",!0);return i(()=>t.assign(a,!1)),a}return t.var(s,!0),i(()=>t.break()),s;function i(a){let l=t.const("len",(0,B._)`${r}.length`);t.forRange("i",0,l,c=>{e.subschema({keyword:n,dataProp:c,dataPropType:bo.Type.Num},s),t.if((0,B.not)(s),a)})}}D.validateArray=Of;function Nf(e){let{gen:t,schema:r,keyword:n,it:o}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(l=>(0,bo.alwaysValidSchema)(o,l))&&!o.opts.unevaluated)return;let i=t.let("valid",!1),a=t.name("_valid");t.block(()=>r.forEach((l,c)=>{let u=e.subschema({keyword:n,schemaProp:c,compositeRule:!0},a);t.assign(i,(0,B._)`${i} || ${a}`),e.mergeValidEvaluated(u,a)||t.if((0,B.not)(i))})),e.result(i,()=>e.reset(),()=>e.error(!0))}D.validateUnion=Nf});var ha=_($e=>{"use strict";Object.defineProperty($e,"__esModule",{value:!0});$e.validateKeywordUsage=$e.validSchemaType=$e.funcKeywordCode=$e.macroKeywordCode=void 0;var oe=P(),rt=de(),jf=fe(),Lf=Jt();function qf(e,t){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=e,a=t.macro.call(i.self,o,s,i),l=ma(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let c=r.name("valid");e.subschema({schema:a,schemaPath:oe.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:l,compositeRule:!0},c),e.pass(c,()=>e.error(!0))}$e.macroKeywordCode=qf;function Df(e,t){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:l}=e;Uf(l,t);let c=!a&&t.compile?t.compile.call(l.self,s,i,l):t.validate,u=ma(n,o,c),d=n.let("valid");e.block$data(d,m),e.ok((r=t.valid)!==null&&r!==void 0?r:d);function m(){if(t.errors===!1)f(),t.modifying&&pa(e),T(()=>e.error());else{let b=t.async?h():p();t.modifying&&pa(e),T(()=>Ff(e,b))}}function h(){let b=n.let("ruleErrs",null);return n.try(()=>f((0,oe._)`await `),$=>n.assign(d,!1).if((0,oe._)`${$} instanceof ${l.ValidationError}`,()=>n.assign(b,(0,oe._)`${$}.errors`),()=>n.throw($))),b}function p(){let b=(0,oe._)`${u}.errors`;return n.assign(b,null),f(oe.nil),b}function f(b=t.async?(0,oe._)`await `:oe.nil){let $=l.opts.passContext?rt.default.this:rt.default.self,E=!("compile"in t&&!a||t.schema===!1);n.assign(d,(0,oe._)`${b}${(0,jf.callValidateCode)(e,u,$,E)}`,t.modifying)}function T(b){var $;n.if((0,oe.not)(($=t.valid)!==null&&$!==void 0?$:d),b)}}$e.funcKeywordCode=Df;function pa(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0,oe._)`${n.parentData}[${n.parentDataProperty}]`))}function Ff(e,t){let{gen:r}=e;r.if((0,oe._)`Array.isArray(${t})`,()=>{r.assign(rt.default.vErrors,(0,oe._)`${rt.default.vErrors} === null ? ${t} : ${rt.default.vErrors}.concat(${t})`).assign(rt.default.errors,(0,oe._)`${rt.default.vErrors}.length`),(0,Lf.extendErrors)(e)},()=>e.error())}function Uf({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function ma(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,oe.stringify)(r)})}function Bf(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")}$e.validSchemaType=Bf;function zf({schema:e,opts:t,self:r,errSchemaPath:n},o,s){if(Array.isArray(o.keyword)?!o.keyword.includes(s):o.keyword!==s)throw new Error("ajv implementation error");let i=o.dependencies;if(i?.some(a=>!Object.prototype.hasOwnProperty.call(e,a)))throw new Error(`parent schema must have dependencies of ${s}: ${i.join(",")}`);if(o.validateSchema&&!o.validateSchema(e[s])){let l=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(l);else throw new Error(l)}}$e.validateKeywordUsage=zf});var ya=_(De=>{"use strict";Object.defineProperty(De,"__esModule",{value:!0});De.extendSubschemaMode=De.extendSubschemaData=De.getSubschema=void 0;var we=P(),ga=I();function Vf(e,{keyword:t,schemaProp:r,schema:n,schemaPath:o,errSchemaPath:s,topSchemaRef:i}){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,we._)`${e.schemaPath}${(0,we.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:a[r],schemaPath:(0,we._)`${e.schemaPath}${(0,we.getProperty)(t)}${(0,we.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,ga.escapeFragment)(r)}`}}if(n!==void 0){if(o===void 0||s===void 0||i===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:o,topSchemaRef:i,errSchemaPath:s}}throw new Error('either "keyword" or "schema" must be passed')}De.getSubschema=Vf;function Kf(e,t,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=t;if(r!==void 0){let{errorPath:c,dataPathArr:u,opts:d}=t,m=a.let("data",(0,we._)`${t.data}${(0,we.getProperty)(r)}`,!0);l(m),e.errorPath=(0,we.str)`${c}${(0,ga.getErrorPath)(r,n,d.jsPropertySyntax)}`,e.parentDataProperty=(0,we._)`${r}`,e.dataPathArr=[...u,e.parentDataProperty]}if(o!==void 0){let c=o instanceof we.Name?o:a.let("data",o,!0);l(c),i!==void 0&&(e.propertyName=i)}s&&(e.dataTypes=s);function l(c){e.data=c,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,c]}}De.extendSubschemaData=Kf;function Hf(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:o,allErrors:s}){n!==void 0&&(e.compositeRule=n),o!==void 0&&(e.createErrors=o),s!==void 0&&(e.allErrors=s),e.jtdDiscriminator=t,e.jtdMetadata=r}De.extendSubschemaMode=Hf});var ko=_((Pb,_a)=>{"use strict";_a.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,s;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(s=Object.keys(t),n=s.length,n!==Object.keys(r).length)return!1;for(o=n;o--!==0;)if(!Object.prototype.hasOwnProperty.call(r,s[o]))return!1;for(o=n;o--!==0;){var i=s[o];if(!e(t[i],r[i]))return!1}return!0}return t!==t&&r!==r}});var ba=_((xb,Ta)=>{"use strict";var Fe=Ta.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(){};zr(t,n,o,e,"",e)};Fe.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Fe.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Fe.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Fe.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 zr(e,t,r,n,o,s,i,a,l,c){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,o,s,i,a,l,c);for(var u in n){var d=n[u];if(Array.isArray(d)){if(u in Fe.arrayKeywords)for(var m=0;m<d.length;m++)zr(e,t,r,d[m],o+"/"+u+"/"+m,s,o,u,n,m)}else if(u in Fe.propsKeywords){if(d&&typeof d=="object")for(var h in d)zr(e,t,r,d[h],o+"/"+u+"/"+Gf(h),s,o,u,n,h)}else(u in Fe.keywords||e.allKeys&&!(u in Fe.skipKeywords))&&zr(e,t,r,d,o+"/"+u,s,o,u,n)}r(n,o,s,i,a,l,c)}}function Gf(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var Xt=_(le=>{"use strict";Object.defineProperty(le,"__esModule",{value:!0});le.getSchemaRefs=le.resolveUrl=le.normalizeId=le._getFullPath=le.getFullPath=le.inlineRef=void 0;var Wf=I(),Jf=ko(),Yf=ba(),Xf=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function Qf(e,t=!0){return typeof e=="boolean"?!0:t===!0?!Eo(e):t?va(e)<=t:!1}le.inlineRef=Qf;var Zf=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Eo(e){for(let t in e){if(Zf.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(Eo)||typeof r=="object"&&Eo(r))return!0}return!1}function va(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!Xf.has(r)&&(typeof e[r]=="object"&&(0,Wf.eachItem)(e[r],n=>t+=va(n)),t===1/0))return 1/0}return t}function Ra(e,t="",r){r!==!1&&(t=Rt(t));let n=e.parse(t);return ka(e,n)}le.getFullPath=Ra;function ka(e,t){return e.serialize(t).split("#")[0]+"#"}le._getFullPath=ka;var ep=/#\/?$/;function Rt(e){return e?e.replace(ep,""):""}le.normalizeId=Rt;function tp(e,t,r){return r=Rt(r),e.resolve(t,r)}le.resolveUrl=tp;var rp=/^[a-z_][-a-z0-9._]*$/i;function np(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Rt(e[r]||t),s={"":o},i=Ra(n,o,!1),a={},l=new Set;return Yf(e,{allKeys:!0},(d,m,h,p)=>{if(p===void 0)return;let f=i+m,T=s[p];typeof d[r]=="string"&&(T=b.call(this,d[r])),$.call(this,d.$anchor),$.call(this,d.$dynamicAnchor),s[m]=T;function b(E){let L=this.opts.uriResolver.resolve;if(E=Rt(T?L(T,E):E),l.has(E))throw u(E);l.add(E);let k=this.refs[E];return typeof k=="string"&&(k=this.refs[k]),typeof k=="object"?c(d,k.schema,E):E!==Rt(f)&&(E[0]==="#"?(c(d,a[E],E),a[E]=d):this.refs[E]=f),E}function $(E){if(typeof E=="string"){if(!rp.test(E))throw new Error(`invalid anchor "${E}"`);b.call(this,`#${E}`)}}}),a;function c(d,m,h){if(m!==void 0&&!Jf(d,m))throw u(h)}function u(d){return new Error(`reference "${d}" resolves to more than one schema`)}}le.getSchemaRefs=np});var er=_(Ue=>{"use strict";Object.defineProperty(Ue,"__esModule",{value:!0});Ue.getData=Ue.KeywordCxt=Ue.validateFunctionCode=void 0;var Sa=na(),Ea=Yt(),$o=go(),Vr=Yt(),op=ua(),Zt=ha(),Co=ya(),v=P(),w=de(),sp=Xt(),Ie=I(),Qt=Jt();function ip(e){if(Aa(e)&&(Ma(e),xa(e))){cp(e);return}Pa(e,()=>(0,Sa.topBoolOrEmptySchema)(e))}Ue.validateFunctionCode=ip;function Pa({gen:e,validateName:t,schema:r,schemaEnv:n,opts:o},s){o.code.es5?e.func(t,(0,v._)`${w.default.data}, ${w.default.valCxt}`,n.$async,()=>{e.code((0,v._)`"use strict"; ${Ca(r,o)}`),lp(e,o),e.code(s)}):e.func(t,(0,v._)`${w.default.data}, ${ap(o)}`,n.$async,()=>e.code(Ca(r,o)).code(s))}function ap(e){return(0,v._)`{${w.default.instancePath}="", ${w.default.parentData}, ${w.default.parentDataProperty}, ${w.default.rootData}=${w.default.data}${e.dynamicRef?(0,v._)`, ${w.default.dynamicAnchors}={}`:v.nil}}={}`}function lp(e,t){e.if(w.default.valCxt,()=>{e.var(w.default.instancePath,(0,v._)`${w.default.valCxt}.${w.default.instancePath}`),e.var(w.default.parentData,(0,v._)`${w.default.valCxt}.${w.default.parentData}`),e.var(w.default.parentDataProperty,(0,v._)`${w.default.valCxt}.${w.default.parentDataProperty}`),e.var(w.default.rootData,(0,v._)`${w.default.valCxt}.${w.default.rootData}`),t.dynamicRef&&e.var(w.default.dynamicAnchors,(0,v._)`${w.default.valCxt}.${w.default.dynamicAnchors}`)},()=>{e.var(w.default.instancePath,(0,v._)`""`),e.var(w.default.parentData,(0,v._)`undefined`),e.var(w.default.parentDataProperty,(0,v._)`undefined`),e.var(w.default.rootData,w.default.data),t.dynamicRef&&e.var(w.default.dynamicAnchors,(0,v._)`{}`)})}function cp(e){let{schema:t,opts:r,gen:n}=e;Pa(e,()=>{r.$comment&&t.$comment&&Oa(e),mp(e),n.let(w.default.vErrors,null),n.let(w.default.errors,0),r.unevaluated&&up(e),Ia(e),yp(e)})}function up(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0,v._)`${r}.evaluated`),t.if((0,v._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,v._)`${e.evaluated}.props`,(0,v._)`undefined`)),t.if((0,v._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,v._)`${e.evaluated}.items`,(0,v._)`undefined`))}function Ca(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0,v._)`/*# sourceURL=${r} */`:v.nil}function dp(e,t){if(Aa(e)&&(Ma(e),xa(e))){fp(e,t);return}(0,Sa.boolOrEmptySchema)(e,t)}function xa({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 Aa(e){return typeof e.schema!="boolean"}function fp(e,t){let{schema:r,gen:n,opts:o}=e;o.$comment&&r.$comment&&Oa(e),hp(e),gp(e);let s=n.const("_errs",w.default.errors);Ia(e,s),n.var(t,(0,v._)`${s} === ${w.default.errors}`)}function Ma(e){(0,Ie.checkUnknownRules)(e),pp(e)}function Ia(e,t){if(e.opts.jtd)return $a(e,[],!1,t);let r=(0,Ea.getSchemaTypes)(e.schema),n=(0,Ea.coerceAndCheckDataType)(e,r);$a(e,r,!n,t)}function pp(e){let{schema:t,errSchemaPath:r,opts:n,self:o}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0,Ie.schemaHasRulesButRef)(t,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function mp(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Ie.checkStrictMode)(e,"default is ignored in the schema root")}function hp(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,sp.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function gp(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function Oa({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)e.code((0,v._)`${w.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,v.str)`${n}/$comment`,a=e.scopeValue("root",{ref:t.root});e.code((0,v._)`${w.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function yp(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=e;r.$async?t.if((0,v._)`${w.default.errors} === 0`,()=>t.return(w.default.data),()=>t.throw((0,v._)`new ${o}(${w.default.vErrors})`)):(t.assign((0,v._)`${n}.errors`,w.default.vErrors),s.unevaluated&&_p(e),t.return((0,v._)`${w.default.errors} === 0`))}function _p({gen:e,evaluated:t,props:r,items:n}){r instanceof v.Name&&e.assign((0,v._)`${t}.props`,r),n instanceof v.Name&&e.assign((0,v._)`${t}.items`,n)}function $a(e,t,r,n){let{gen:o,schema:s,data:i,allErrors:a,opts:l,self:c}=e,{RULES:u}=c;if(s.$ref&&(l.ignoreKeywordsWithRef||!(0,Ie.schemaHasRulesButRef)(s,u))){o.block(()=>ja(e,"$ref",u.all.$ref.definition));return}l.jtd||Tp(e,t),o.block(()=>{for(let m of u.rules)d(m);d(u.post)});function d(m){(0,$o.shouldUseGroup)(s,m)&&(m.type?(o.if((0,Vr.checkDataType)(m.type,i,l.strictNumbers)),wa(e,m),t.length===1&&t[0]===m.type&&r&&(o.else(),(0,Vr.reportTypeError)(e)),o.endIf()):wa(e,m),a||o.if((0,v._)`${w.default.errors} === ${n||0}`))}}function wa(e,t){let{gen:r,schema:n,opts:{useDefaults:o}}=e;o&&(0,op.assignDefaults)(e,t.type),r.block(()=>{for(let s of t.rules)(0,$o.shouldUseRule)(n,s)&&ja(e,s.keyword,s.definition,t.type)})}function Tp(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(bp(e,t),e.opts.allowUnionTypes||vp(e,t),Rp(e,e.dataTypes))}function bp(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{Na(e.dataTypes,r)||wo(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),Ep(e,t)}}function vp(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&wo(e,"use allowUnionTypes to allow union type keyword")}function Rp(e,t){let r=e.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,$o.shouldUseRule)(e.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>kp(t,i))&&wo(e,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function kp(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function Na(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function Ep(e,t){let r=[];for(let n of e.dataTypes)Na(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r}function wo(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,Ie.checkStrictMode)(e,t,e.opts.strictTypes)}var Kr=class{constructor(t,r,n){if((0,Zt.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,Ie.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",La(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,Zt.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",w.default.errors))}result(t,r,n){this.failResult((0,v.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,v.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,v._)`${r} !== undefined && (${(0,v.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?Qt.reportExtraError:Qt.reportError)(this,this.def.error,r)}$dataError(){(0,Qt.reportError)(this,this.def.$dataError||Qt.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Qt.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=v.nil){this.gen.block(()=>{this.check$data(t,n),r()})}check$data(t=v.nil,r=v.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,v.or)((0,v._)`${o} === undefined`,r)),t!==v.nil&&n.assign(t,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==v.nil&&n.assign(t,!1)),n.else()}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,v.or)(i(),a());function i(){if(n.length){if(!(r instanceof v.Name))throw new Error("ajv implementation error");let l=Array.isArray(n)?n:[n];return(0,v._)`${(0,Vr.checkDataTypes)(l,r,s.opts.strictNumbers,Vr.DataType.Wrong)}`}return v.nil}function a(){if(o.validateSchema){let l=t.scopeValue("validate$data",{ref:o.validateSchema});return(0,v._)`!${l}(${r})`}return v.nil}}subschema(t,r){let n=(0,Co.getSubschema)(this.it,t);(0,Co.extendSubschemaData)(n,this.it,t),(0,Co.extendSubschemaMode)(n,t);let o={...this.it,...n,items:void 0,props:void 0};return dp(o,r),o}mergeEvaluated(t,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&t.props!==void 0&&(n.props=Ie.mergeEvaluated.props(o,t.props,n.props,r)),n.items!==!0&&t.items!==void 0&&(n.items=Ie.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,v.Name)),!0}};Ue.KeywordCxt=Kr;function ja(e,t,r,n){let o=new Kr(e,r,t);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Zt.funcKeywordCode)(o,r):"macro"in r?(0,Zt.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Zt.funcKeywordCode)(o,r)}var Cp=/^\/(?:[^~]|~0|~1)*$/,$p=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function La(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let o,s;if(e==="")return w.default.rootData;if(e[0]==="/"){if(!Cp.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);o=e,s=w.default.rootData}else{let c=$p.exec(e);if(!c)throw new Error(`Invalid JSON-pointer: ${e}`);let u=+c[1];if(o=c[2],o==="#"){if(u>=t)throw new Error(l("property/index",u));return n[t-u]}if(u>t)throw new Error(l("data",u));if(s=r[t-u],!o)return s}let i=s,a=o.split("/");for(let c of a)c&&(s=(0,v._)`${s}${(0,v.getProperty)((0,Ie.unescapeJsonPointer)(c))}`,i=(0,v._)`${i} && ${s}`);return i;function l(c,u){return`Cannot access ${c} ${u} levels up, current level is ${t}`}}Ue.getData=La});var Hr=_(Po=>{"use strict";Object.defineProperty(Po,"__esModule",{value:!0});var So=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};Po.default=So});var tr=_(Mo=>{"use strict";Object.defineProperty(Mo,"__esModule",{value:!0});var xo=Xt(),Ao=class extends Error{constructor(t,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,xo.resolveUrl)(t,r,n),this.missingSchema=(0,xo.normalizeId)((0,xo.getFullPath)(t,this.missingRef))}};Mo.default=Ao});var rr=_(pe=>{"use strict";Object.defineProperty(pe,"__esModule",{value:!0});pe.resolveSchema=pe.getCompilingSchema=pe.resolveRef=pe.compileSchema=pe.SchemaEnv=void 0;var Te=P(),wp=Hr(),nt=de(),be=Xt(),qa=I(),Sp=er(),kt=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,be.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={}}};pe.SchemaEnv=kt;function Oo(e){let t=Da.call(this,e);if(t)return t;let r=(0,be.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new Te.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;e.$async&&(a=i.scopeValue("Error",{ref:wp.default,code:(0,Te._)`require("ajv/dist/runtime/validation_error").default`}));let l=i.scopeName("validate");e.validateName=l;let c={gen:i,allErrors:this.opts.allErrors,data:nt.default.data,parentData:nt.default.parentData,parentDataProperty:nt.default.parentDataProperty,dataNames:[nt.default.data],dataPathArr:[Te.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,Te.stringify)(e.schema)}:{ref:e.schema}),validateName:l,ValidationError:a,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:Te.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Te._)`""`,opts:this.opts,self:this},u;try{this._compilations.add(e),(0,Sp.validateFunctionCode)(c),i.optimize(this.opts.code.optimize);let d=i.toString();u=`${i.scopeRefs(nt.default.scope)}return ${d}`,this.opts.code.process&&(u=this.opts.code.process(u,e));let h=new Function(`${nt.default.self}`,`${nt.default.scope}`,u)(this,this.scope.get());if(this.scope.value(l,{ref:h}),h.errors=null,h.schema=e.schema,h.schemaEnv=e,e.$async&&(h.$async=!0),this.opts.code.source===!0&&(h.source={validateName:l,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:p,items:f}=c;h.evaluated={props:p instanceof Te.Name?void 0:p,items:f instanceof Te.Name?void 0:f,dynamicProps:p instanceof Te.Name,dynamicItems:f instanceof Te.Name},h.source&&(h.source.evaluated=(0,Te.stringify)(h.evaluated))}return e.validate=h,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)}}pe.compileSchema=Oo;function Pp(e,t,r){var n;r=(0,be.resolveUrl)(this.opts.uriResolver,t,r);let o=e.refs[r];if(o)return o;let s=Mp.call(this,e,r);if(s===void 0){let i=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:a}=this.opts;i&&(s=new kt({schema:i,schemaId:a,root:e,baseId:t}))}if(s!==void 0)return e.refs[r]=xp.call(this,s)}pe.resolveRef=Pp;function xp(e){return(0,be.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:Oo.call(this,e)}function Da(e){for(let t of this._compilations)if(Ap(t,e))return t}pe.getCompilingSchema=Da;function Ap(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function Mp(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||Gr.call(this,e,t)}function Gr(e,t){let r=this.opts.uriResolver.parse(t),n=(0,be._getFullPath)(this.opts.uriResolver,r),o=(0,be.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===o)return Io.call(this,r,e);let s=(0,be.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Gr.call(this,e,i);return typeof a?.schema!="object"?void 0:Io.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||Oo.call(this,i),s===(0,be.normalizeId)(t)){let{schema:a}=i,{schemaId:l}=this.opts,c=a[l];return c&&(o=(0,be.resolveUrl)(this.opts.uriResolver,o,c)),new kt({schema:a,schemaId:l,root:e,baseId:o})}return Io.call(this,r,i)}}pe.resolveSchema=Gr;var Ip=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Io(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 l=r[(0,qa.unescapeFragment)(a)];if(l===void 0)return;r=l;let c=typeof r=="object"&&r[this.opts.schemaId];!Ip.has(a)&&c&&(t=(0,be.resolveUrl)(this.opts.uriResolver,t,c))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,qa.schemaHasRulesButRef)(r,this.RULES)){let a=(0,be.resolveUrl)(this.opts.uriResolver,t,r.$ref);s=Gr.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new kt({schema:r,schemaId:i,root:n,baseId:t}),s.schema!==s.root.schema)return s}});var Fa=_((jb,Op)=>{Op.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 Lo=_((Lb,Ha)=>{"use strict";var Np=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),Ba=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),No=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),za=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),jp=RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);function jo(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 Lp=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function Ua(e){return e.length=0,!0}function qp(e,t,r){if(e.length){let n=jo(e);if(n!=="")t.push(n);else return r.error=!0,!1;e.length=0}return!0}function Dp(e){let t=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=qp;for(let l=0;l<e.length;l++){let c=e[l];if(!(c==="["||c==="]"))if(c===":"){if(s===!0&&(i=!0),!a(o,n,r))break;if(++t>7){r.error=!0;break}l>0&&e[l-1]===":"&&(s=!0),n.push(":");continue}else if(c==="%"){if(!a(o,n,r))break;a=Ua}else{o.push(c);continue}}return o.length&&(a===Ua?r.zone=o.join(""):i?n.push(o.join("")):n.push(jo(o))),r.address=n.join(""),r}function Va(e){if(Fp(e,":")<2)return{host:e,isIPV6:!1};let t=Dp(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 Fp(e,t){let r=0;for(let n=0;n<e.length;n++)e[n]===t&&r++;return r}function Up(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 Bp={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},zp=/[@/?#:]/g,Vp=/[@/?#]/g;function Ka(e,t){let r=t?Vp:zp;return r.lastIndex=0,e.replace(r,n=>Bp[n])}function Kp(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(No(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));t&&za(i)?r+=i:r+="%"+s,n+=2;continue}}r+=e[n]}return r}function Hp(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(No(n)){let o=n.toUpperCase(),s=String.fromCharCode(parseInt(o,16));s!=="."&&za(s)?t+=s:t+="%"+o,r+=2;continue}}jp(e[r])?t+=e[r]:t+=escape(e[r])}return t}function Gp(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(No(n)){t+="%"+n.toUpperCase(),r+=2;continue}}t+=escape(e[r])}return t}function Wp(e){let t=[];if(e.userinfo!==void 0&&(t.push(e.userinfo),t.push("@")),e.host!==void 0){let r=unescape(e.host);if(!Ba(r)){let n=Va(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=Ka(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}Ha.exports={nonSimpleDomain:Lp,recomposeAuthority:Wp,reescapeHostDelimiters:Ka,normalizePercentEncoding:Kp,normalizePathEncoding:Hp,escapePreservingEscapes:Gp,removeDotSegments:Up,isIPv4:Ba,isUUID:Np,normalizeIPv6:Va,stringArrayToHexStripped:jo}});var Xa=_((qb,Ya)=>{"use strict";var{isUUID:Jp}=Lo(),Yp=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,Xp=["http","https","ws","wss","urn","urn:uuid"];function Qp(e){return Xp.indexOf(e)!==-1}function qo(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 Ga(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function Wa(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 Zp(e){return e.secure=qo(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function em(e){if((e.port===(qo(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 tm(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(Yp);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}`,s=Do(o);e.path=void 0,s&&(e=s.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function rm(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}`,s=Do(o);s&&(e=s.serialize(e,t));let i=e,a=e.nss;return i.path=`${n||t.nid}:${a}`,t.skipEscape=!0,i}function nm(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!Jp(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function om(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var Ja={scheme:"http",domainHost:!0,parse:Ga,serialize:Wa},sm={scheme:"https",domainHost:Ja.domainHost,parse:Ga,serialize:Wa},Wr={scheme:"ws",domainHost:!0,parse:Zp,serialize:em},im={scheme:"wss",domainHost:Wr.domainHost,parse:Wr.parse,serialize:Wr.serialize},am={scheme:"urn",parse:tm,serialize:rm,skipNormalize:!0},lm={scheme:"urn:uuid",parse:nm,serialize:om,skipNormalize:!0},Jr={http:Ja,https:sm,ws:Wr,wss:im,urn:am,"urn:uuid":lm};Object.setPrototypeOf(Jr,null);function Do(e){return e&&(Jr[e]||Jr[e.toLowerCase()])||void 0}Ya.exports={wsIsSecure:qo,SCHEMES:Jr,isValidSchemeName:Qp,getSchemeHandler:Do}});var nl=_((Db,Yr)=>{"use strict";var{normalizeIPv6:cm,removeDotSegments:nr,recomposeAuthority:um,normalizePercentEncoding:dm,normalizePathEncoding:fm,escapePreservingEscapes:pm,reescapeHostDelimiters:mm,isIPv4:hm,nonSimpleDomain:gm}=Lo(),{SCHEMES:ym,getSchemeHandler:Za}=Xa();function _m(e,t){return typeof e=="string"?e=km(e,t):typeof e=="object"&&(e=Et(ot(e,t),t)),e}function Tm(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=el(Et(e,n),Et(t,n),n,!0);return n.skipEscape=!0,ot(o,n)}function el(e,t,r,n){let o={};return n||(e=Et(ot(e,r),r),t=Et(ot(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=nr(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=nr(t.path||""),o.query=t.query):(t.path?(t.path[0]==="/"?o.path=nr(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=nr(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 bm(e,t,r){let n=Qa(e,r),o=Qa(t,r);return n!==void 0&&o!==void 0&&n.toLowerCase()===o.toLowerCase()}function ot(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=[],s=Za(n.scheme||r.scheme);s&&s.serialize&&s.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=dm(r.path):(r.path=pm(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&o.push(r.scheme,":");let i=um(r);if(i!==void 0&&(n.reference!=="suffix"&&o.push("//"),o.push(i),r.path&&r.path[0]!=="/"&&o.push("/")),r.path!==void 0){let a=r.path;!n.absolutePath&&(!s||!s.absolutePath)&&(a=nr(a)),i===void 0&&a[0]==="/"&&a[1]==="/"&&(a="/%2F"+a.slice(2)),o.push(a)}return r.query!==void 0&&o.push("?",r.query),r.fragment!==void 0&&o.push("#",r.fragment),o.join("")}var vm=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Rm(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 tl(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,s=!1;r.reference==="suffix"&&(r.scheme?e=r.scheme+":"+e:e="//"+e);let i=e.match(vm);if(i){n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]);let a=Rm(n,i);if(a!==void 0&&(n.error=n.error||a,o=!0),n.host)if(hm(n.host)===!1){let u=cm(n.host);n.host=u.host.toLowerCase(),s=u.isIPV6}else s=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let l=Za(r.scheme||n.scheme);if(!r.unicodeSupport&&(!l||!l.unicodeSupport)&&n.host&&(r.domainHost||l&&l.domainHost)&&s===!1&&gm(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(c){n.error=n.error||"Host's domain name can not be converted to ASCII: "+c}if((!l||l&&!l.skipNormalize)&&(e.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=mm(unescape(n.host),s))),n.path&&(n.path=fm(n.path)),n.fragment))try{n.fragment=encodeURI(decodeURIComponent(n.fragment))}catch{n.error=n.error||"URI malformed"}l&&l.parse&&l.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return{parsed:n,malformedAuthorityOrPort:o}}function Et(e,t){return tl(e,t).parsed}function km(e,t){return rl(e,t).normalized}function rl(e,t){let{parsed:r,malformedAuthorityOrPort:n}=tl(e,t);return{normalized:n?e:ot(r,t),malformedAuthorityOrPort:n}}function Qa(e,t){if(typeof e=="string"){let{normalized:r,malformedAuthorityOrPort:n}=rl(e,t);return n?void 0:r}if(typeof e=="object")return ot(e,t)}var Fo={SCHEMES:ym,normalize:_m,resolve:Tm,resolveComponent:el,equal:bm,serialize:ot,parse:Et};Yr.exports=Fo;Yr.exports.default=Fo;Yr.exports.fastUri=Fo});var sl=_(Uo=>{"use strict";Object.defineProperty(Uo,"__esModule",{value:!0});var ol=nl();ol.code='require("ajv/dist/runtime/uri").default';Uo.default=ol});var pl=_(Y=>{"use strict";Object.defineProperty(Y,"__esModule",{value:!0});Y.CodeGen=Y.Name=Y.nil=Y.stringify=Y.str=Y._=Y.KeywordCxt=void 0;var Em=er();Object.defineProperty(Y,"KeywordCxt",{enumerable:!0,get:function(){return Em.KeywordCxt}});var Ct=P();Object.defineProperty(Y,"_",{enumerable:!0,get:function(){return Ct._}});Object.defineProperty(Y,"str",{enumerable:!0,get:function(){return Ct.str}});Object.defineProperty(Y,"stringify",{enumerable:!0,get:function(){return Ct.stringify}});Object.defineProperty(Y,"nil",{enumerable:!0,get:function(){return Ct.nil}});Object.defineProperty(Y,"Name",{enumerable:!0,get:function(){return Ct.Name}});Object.defineProperty(Y,"CodeGen",{enumerable:!0,get:function(){return Ct.CodeGen}});var Cm=Hr(),ul=tr(),$m=ho(),or=rr(),wm=P(),sr=Xt(),Xr=Yt(),zo=I(),il=Fa(),Sm=sl(),dl=(e,t)=>new RegExp(e,t);dl.code="new RegExp";var Pm=["removeAdditional","useDefaults","coerceTypes"],xm=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),Am={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."},Mm={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},al=200;function Im(e){var t,r,n,o,s,i,a,l,c,u,d,m,h,p,f,T,b,$,E,L,k,Q,G,Re,ke;let he=e.strict,Pe=(t=e.code)===null||t===void 0?void 0:t.optimize,Ve=Pe===!0||Pe===void 0?1:Pe||0,ct=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:dl,_r=(o=e.uriResolver)!==null&&o!==void 0?o:Sm.default;return{strictSchema:(i=(s=e.strictSchema)!==null&&s!==void 0?s:he)!==null&&i!==void 0?i:!0,strictNumbers:(l=(a=e.strictNumbers)!==null&&a!==void 0?a:he)!==null&&l!==void 0?l:!0,strictTypes:(u=(c=e.strictTypes)!==null&&c!==void 0?c:he)!==null&&u!==void 0?u:"log",strictTuples:(m=(d=e.strictTuples)!==null&&d!==void 0?d:he)!==null&&m!==void 0?m:"log",strictRequired:(p=(h=e.strictRequired)!==null&&h!==void 0?h:he)!==null&&p!==void 0?p:!1,code:e.code?{...e.code,optimize:Ve,regExp:ct}:{optimize:Ve,regExp:ct},loopRequired:(f=e.loopRequired)!==null&&f!==void 0?f:al,loopEnum:(T=e.loopEnum)!==null&&T!==void 0?T:al,meta:(b=e.meta)!==null&&b!==void 0?b:!0,messages:($=e.messages)!==null&&$!==void 0?$:!0,inlineRefs:(E=e.inlineRefs)!==null&&E!==void 0?E:!0,schemaId:(L=e.schemaId)!==null&&L!==void 0?L:"$id",addUsedSchema:(k=e.addUsedSchema)!==null&&k!==void 0?k:!0,validateSchema:(Q=e.validateSchema)!==null&&Q!==void 0?Q:!0,validateFormats:(G=e.validateFormats)!==null&&G!==void 0?G:!0,unicodeRegExp:(Re=e.unicodeRegExp)!==null&&Re!==void 0?Re:!0,int32range:(ke=e.int32range)!==null&&ke!==void 0?ke:!0,uriResolver:_r}}var ir=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,...Im(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new wm.ValueScope({scope:{},prefixes:xm,es5:r,lines:n}),this.logger=Dm(t.logger);let o=t.validateFormats;t.validateFormats=!1,this.RULES=(0,$m.getRules)(),ll.call(this,Am,t,"NOT SUPPORTED"),ll.call(this,Mm,t,"DEPRECATED","warn"),this._metaOpts=Lm.call(this),t.formats&&Nm.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&jm.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),Om.call(this),t.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,o=il;n==="id"&&(o={...il},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 s.call(this,u.$schema);let m=this._addSchema(u,d);return m.validate||i.call(this,m)}async function s(u){u&&!this.getSchema(u)&&await o.call(this,{$ref:u},!0)}async function i(u){try{return this._compileSchemaEnv(u)}catch(d){if(!(d instanceof ul.default))throw d;return a.call(this,d),await l.call(this,d.missingSchema),i.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 l(u){let d=await c.call(this,u);this.refs[u]||await s.call(this,d.$schema),this.refs[u]||this.addSchema(d,u,r)}async function c(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 i of t)this.addSchema(i,void 0,n,o);return this}let s;if(typeof t=="object"){let{schemaId:i}=this.opts;if(s=t[i],s!==void 0&&typeof s!="string")throw new Error(`schema ${i} must be string`)}return r=(0,sr.normalizeId)(r||s),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 s="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(s);else throw new Error(s)}return o}getSchema(t){let r;for(;typeof(r=cl.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,o=new or.SchemaEnv({schema:{},schemaId:n});if(r=or.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=cl.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,sr.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(Um.call(this,n,r),!r)return(0,zo.eachItem)(n,s=>Bo.call(this,s)),this;zm.call(this,r);let o={...r,type:(0,Xr.getJSONTypes)(r.type),schemaType:(0,Xr.getJSONTypes)(r.schemaType)};return(0,zo.eachItem)(n,o.type.length===0?s=>Bo.call(this,s,o):s=>o.type.forEach(i=>Bo.call(this,s,o,i))),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(s=>s.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,s)=>o+r+s)}$dataMetaSchema(t,r){let n=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let o of r){let s=o.split("/").slice(1),i=t;for(let a of s)i=i[a];for(let a in n){let l=n[a];if(typeof l!="object")continue;let{$data:c}=l.definition,u=i[a];c&&u&&(i[a]=fl(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,s=this.opts.addUsedSchema){let i,{schemaId:a}=this.opts;if(typeof t=="object")i=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 l=this._cache.get(t);if(l!==void 0)return l;n=(0,sr.normalizeId)(i||n);let c=sr.getSchemaRefs.call(this,t,n);return l=new or.SchemaEnv({schema:t,schemaId:a,meta:r,baseId:n,localRefs:c}),this._cache.set(l.schema,l),s&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=l),o&&this.validateSchema(t,!0),l}_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):or.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{or.compileSchema.call(this,t)}finally{this.opts=r}}};ir.ValidationError=Cm.default;ir.MissingRefError=ul.default;Y.default=ir;function ll(e,t,r,n="error"){for(let o in e){let s=o;s in t&&this.logger[n](`${r}: option ${o}. ${e[s]}`)}}function cl(e){return e=(0,sr.normalizeId)(e),this.schemas[e]||this.refs[e]}function Om(){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 Nm(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function jm(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 Lm(){let e={...this.opts};for(let t of Pm)delete e[t];return e}var qm={log(){},warn(){},error(){}};function Dm(e){if(e===!1)return qm;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 Fm=/^[a-z_$][a-z0-9_$:-]*$/i;function Um(e,t){let{RULES:r}=this;if((0,zo.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!Fm.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 Bo(e,t,r){var n;let o=t?.post;if(r&&o)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:s}=this,i=o?s.post:s.rules.find(({type:l})=>l===r);if(i||(i={type:r,rules:[]},s.rules.push(i)),s.keywords[e]=!0,!t)return;let a={keyword:e,definition:{...t,type:(0,Xr.getJSONTypes)(t.type),schemaType:(0,Xr.getJSONTypes)(t.schemaType)}};t.before?Bm.call(this,i,a,t.before):i.rules.push(a),s.all[e]=a,(n=t.implements)===null||n===void 0||n.forEach(l=>this.addKeyword(l))}function Bm(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 zm(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=fl(t)),e.validateSchema=this.compile(t,!0))}var Vm={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function fl(e){return{anyOf:[e,Vm]}}});var ml=_(Vo=>{"use strict";Object.defineProperty(Vo,"__esModule",{value:!0});var Km={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Vo.default=Km});var en=_(st=>{"use strict";Object.defineProperty(st,"__esModule",{value:!0});st.callRef=st.getValidate=void 0;var Hm=tr(),hl=fe(),ce=P(),$t=de(),gl=rr(),Qr=I(),Gm={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:o,schemaEnv:s,validateName:i,opts:a,self:l}=n,{root:c}=s;if((r==="#"||r==="#/")&&o===c.baseId)return d();let u=gl.resolveRef.call(l,c,o,r);if(u===void 0)throw new Hm.default(n.opts.uriResolver,o,r);if(u instanceof gl.SchemaEnv)return m(u);return h(u);function d(){if(s===c)return Zr(e,i,s,s.$async);let p=t.scopeValue("root",{ref:c});return Zr(e,(0,ce._)`${p}.validate`,c,c.$async)}function m(p){let f=yl(e,p);Zr(e,f,p,p.$async)}function h(p){let f=t.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,ce.stringify)(p)}:{ref:p}),T=t.name("valid"),b=e.subschema({schema:p,dataTypes:[],schemaPath:ce.nil,topSchemaRef:f,errSchemaPath:r},T);e.mergeEvaluated(b),e.ok(T)}}};function yl(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,ce._)`${r.scopeValue("wrapper",{ref:t})}.validate`}st.getValidate=yl;function Zr(e,t,r,n){let{gen:o,it:s}=e,{allErrors:i,schemaEnv:a,opts:l}=s,c=l.passContext?$t.default.this:ce.nil;n?u():d();function u(){if(!a.$async)throw new Error("async schema referenced by sync schema");let p=o.let("valid");o.try(()=>{o.code((0,ce._)`await ${(0,hl.callValidateCode)(e,t,c)}`),h(t),i||o.assign(p,!0)},f=>{o.if((0,ce._)`!(${f} instanceof ${s.ValidationError})`,()=>o.throw(f)),m(f),i||o.assign(p,!1)}),e.ok(p)}function d(){e.result((0,hl.callValidateCode)(e,t,c),()=>h(t),()=>m(t))}function m(p){let f=(0,ce._)`${p}.errors`;o.assign($t.default.vErrors,(0,ce._)`${$t.default.vErrors} === null ? ${f} : ${$t.default.vErrors}.concat(${f})`),o.assign($t.default.errors,(0,ce._)`${$t.default.vErrors}.length`)}function h(p){var f;if(!s.opts.unevaluated)return;let T=(f=r?.validate)===null||f===void 0?void 0:f.evaluated;if(s.props!==!0)if(T&&!T.dynamicProps)T.props!==void 0&&(s.props=Qr.mergeEvaluated.props(o,T.props,s.props));else{let b=o.var("props",(0,ce._)`${p}.evaluated.props`);s.props=Qr.mergeEvaluated.props(o,b,s.props,ce.Name)}if(s.items!==!0)if(T&&!T.dynamicItems)T.items!==void 0&&(s.items=Qr.mergeEvaluated.items(o,T.items,s.items));else{let b=o.var("items",(0,ce._)`${p}.evaluated.items`);s.items=Qr.mergeEvaluated.items(o,b,s.items,ce.Name)}}}st.callRef=Zr;st.default=Gm});var _l=_(Ko=>{"use strict";Object.defineProperty(Ko,"__esModule",{value:!0});var Wm=ml(),Jm=en(),Ym=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",Wm.default,Jm.default];Ko.default=Ym});var Tl=_(Ho=>{"use strict";Object.defineProperty(Ho,"__esModule",{value:!0});var tn=P(),Be=tn.operators,rn={maximum:{okStr:"<=",ok:Be.LTE,fail:Be.GT},minimum:{okStr:">=",ok:Be.GTE,fail:Be.LT},exclusiveMaximum:{okStr:"<",ok:Be.LT,fail:Be.GTE},exclusiveMinimum:{okStr:">",ok:Be.GT,fail:Be.LTE}},Xm={message:({keyword:e,schemaCode:t})=>(0,tn.str)`must be ${rn[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,tn._)`{comparison: ${rn[e].okStr}, limit: ${t}}`},Qm={keyword:Object.keys(rn),type:"number",schemaType:"number",$data:!0,error:Xm,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0,tn._)`${r} ${rn[t].fail} ${n} || isNaN(${r})`)}};Ho.default=Qm});var bl=_(Go=>{"use strict";Object.defineProperty(Go,"__esModule",{value:!0});var ar=P(),Zm={message:({schemaCode:e})=>(0,ar.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,ar._)`{multipleOf: ${e}}`},eh={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:Zm,code(e){let{gen:t,data:r,schemaCode:n,it:o}=e,s=o.opts.multipleOfPrecision,i=t.let("res"),a=s?(0,ar._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,ar._)`${i} !== parseInt(${i})`;e.fail$data((0,ar._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};Go.default=eh});var Rl=_(Wo=>{"use strict";Object.defineProperty(Wo,"__esModule",{value:!0});function vl(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}Wo.default=vl;vl.code='require("ajv/dist/runtime/ucs2length").default'});var kl=_(Jo=>{"use strict";Object.defineProperty(Jo,"__esModule",{value:!0});var it=P(),th=I(),rh=Rl(),nh={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return(0,it.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,it._)`{limit: ${e}}`},oh={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:nh,code(e){let{keyword:t,data:r,schemaCode:n,it:o}=e,s=t==="maxLength"?it.operators.GT:it.operators.LT,i=o.opts.unicode===!1?(0,it._)`${r}.length`:(0,it._)`${(0,th.useFunc)(e.gen,rh.default)}(${r})`;e.fail$data((0,it._)`${i} ${s} ${n}`)}};Jo.default=oh});var El=_(Yo=>{"use strict";Object.defineProperty(Yo,"__esModule",{value:!0});var sh=fe(),ih=I(),wt=P(),ah={message:({schemaCode:e})=>(0,wt.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,wt._)`{pattern: ${e}}`},lh={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:ah,code(e){let{gen:t,data:r,$data:n,schema:o,schemaCode:s,it:i}=e,a=i.opts.unicodeRegExp?"u":"";if(n){let{regExp:l}=i.opts.code,c=l.code==="new RegExp"?(0,wt._)`new RegExp`:(0,ih.useFunc)(t,l),u=t.let("valid");t.try(()=>t.assign(u,(0,wt._)`${c}(${s}, ${a}).test(${r})`),()=>t.assign(u,!1)),e.fail$data((0,wt._)`!${u}`)}else{let l=(0,sh.usePattern)(e,o);e.fail$data((0,wt._)`!${l}.test(${r})`)}}};Yo.default=lh});var Cl=_(Xo=>{"use strict";Object.defineProperty(Xo,"__esModule",{value:!0});var lr=P(),ch={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,lr.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,lr._)`{limit: ${e}}`},uh={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:ch,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxProperties"?lr.operators.GT:lr.operators.LT;e.fail$data((0,lr._)`Object.keys(${r}).length ${o} ${n}`)}};Xo.default=uh});var $l=_(Qo=>{"use strict";Object.defineProperty(Qo,"__esModule",{value:!0});var cr=fe(),ur=P(),dh=I(),fh={message:({params:{missingProperty:e}})=>(0,ur.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,ur._)`{missingProperty: ${e}}`},ph={keyword:"required",type:"object",schemaType:"array",$data:!0,error:fh,code(e){let{gen:t,schema:r,schemaCode:n,data:o,$data:s,it:i}=e,{opts:a}=i;if(!s&&r.length===0)return;let l=r.length>=a.loopRequired;if(i.allErrors?c():u(),a.strictRequired){let h=e.parentSchema.properties,{definedProperties:p}=e.it;for(let f of r)if(h?.[f]===void 0&&!p.has(f)){let T=i.schemaEnv.baseId+i.errSchemaPath,b=`required property "${f}" is not defined at "${T}" (strictRequired)`;(0,dh.checkStrictMode)(i,b,i.opts.strictRequired)}}function c(){if(l||s)e.block$data(ur.nil,d);else for(let h of r)(0,cr.checkReportMissingProp)(e,h)}function u(){let h=t.let("missing");if(l||s){let p=t.let("valid",!0);e.block$data(p,()=>m(h,p)),e.ok(p)}else t.if((0,cr.checkMissingProp)(e,r,h)),(0,cr.reportMissingProp)(e,h),t.else()}function d(){t.forOf("prop",n,h=>{e.setParams({missingProperty:h}),t.if((0,cr.noPropertyInData)(t,o,h,a.ownProperties),()=>e.error())})}function m(h,p){e.setParams({missingProperty:h}),t.forOf(h,n,()=>{t.assign(p,(0,cr.propertyInData)(t,o,h,a.ownProperties)),t.if((0,ur.not)(p),()=>{e.error(),t.break()})},ur.nil)}}};Qo.default=ph});var wl=_(Zo=>{"use strict";Object.defineProperty(Zo,"__esModule",{value:!0});var dr=P(),mh={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,dr.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,dr._)`{limit: ${e}}`},hh={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:mh,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxItems"?dr.operators.GT:dr.operators.LT;e.fail$data((0,dr._)`${r}.length ${o} ${n}`)}};Zo.default=hh});var nn=_(es=>{"use strict";Object.defineProperty(es,"__esModule",{value:!0});var Sl=ko();Sl.code='require("ajv/dist/runtime/equal").default';es.default=Sl});var Pl=_(rs=>{"use strict";Object.defineProperty(rs,"__esModule",{value:!0});var ts=Yt(),X=P(),gh=I(),yh=nn(),_h={message:({params:{i:e,j:t}})=>(0,X.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,X._)`{i: ${e}, j: ${t}}`},Th={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:_h,code(e){let{gen:t,data:r,$data:n,schema:o,parentSchema:s,schemaCode:i,it:a}=e;if(!n&&!o)return;let l=t.let("valid"),c=s.items?(0,ts.getSchemaTypes)(s.items):[];e.block$data(l,u,(0,X._)`${i} === false`),e.ok(l);function u(){let p=t.let("i",(0,X._)`${r}.length`),f=t.let("j");e.setParams({i:p,j:f}),t.assign(l,!0),t.if((0,X._)`${p} > 1`,()=>(d()?m:h)(p,f))}function d(){return c.length>0&&!c.some(p=>p==="object"||p==="array")}function m(p,f){let T=t.name("item"),b=(0,ts.checkDataTypes)(c,T,a.opts.strictNumbers,ts.DataType.Wrong),$=t.const("indices",(0,X._)`{}`);t.for((0,X._)`;${p}--;`,()=>{t.let(T,(0,X._)`${r}[${p}]`),t.if(b,(0,X._)`continue`),c.length>1&&t.if((0,X._)`typeof ${T} == "string"`,(0,X._)`${T} += "_"`),t.if((0,X._)`typeof ${$}[${T}] == "number"`,()=>{t.assign(f,(0,X._)`${$}[${T}]`),e.error(),t.assign(l,!1).break()}).code((0,X._)`${$}[${T}] = ${p}`)})}function h(p,f){let T=(0,gh.useFunc)(t,yh.default),b=t.name("outer");t.label(b).for((0,X._)`;${p}--;`,()=>t.for((0,X._)`${f} = ${p}; ${f}--;`,()=>t.if((0,X._)`${T}(${r}[${p}], ${r}[${f}])`,()=>{e.error(),t.assign(l,!1).break(b)})))}}};rs.default=Th});var xl=_(os=>{"use strict";Object.defineProperty(os,"__esModule",{value:!0});var ns=P(),bh=I(),vh=nn(),Rh={message:"must be equal to constant",params:({schemaCode:e})=>(0,ns._)`{allowedValue: ${e}}`},kh={keyword:"const",$data:!0,error:Rh,code(e){let{gen:t,data:r,$data:n,schemaCode:o,schema:s}=e;n||s&&typeof s=="object"?e.fail$data((0,ns._)`!${(0,bh.useFunc)(t,vh.default)}(${r}, ${o})`):e.fail((0,ns._)`${s} !== ${r}`)}};os.default=kh});var Al=_(ss=>{"use strict";Object.defineProperty(ss,"__esModule",{value:!0});var fr=P(),Eh=I(),Ch=nn(),$h={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,fr._)`{allowedValues: ${e}}`},wh={keyword:"enum",schemaType:"array",$data:!0,error:$h,code(e){let{gen:t,data:r,$data:n,schema:o,schemaCode:s,it:i}=e;if(!n&&o.length===0)throw new Error("enum must have non-empty array");let a=o.length>=i.opts.loopEnum,l,c=()=>l??(l=(0,Eh.useFunc)(t,Ch.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 h=t.const("vSchema",s);u=(0,fr.or)(...o.map((p,f)=>m(h,f)))}e.pass(u);function d(){t.assign(u,!1),t.forOf("v",s,h=>t.if((0,fr._)`${c()}(${r}, ${h})`,()=>t.assign(u,!0).break()))}function m(h,p){let f=o[p];return typeof f=="object"&&f!==null?(0,fr._)`${c()}(${r}, ${h}[${p}])`:(0,fr._)`${r} === ${f}`}}};ss.default=wh});var Ml=_(is=>{"use strict";Object.defineProperty(is,"__esModule",{value:!0});var Sh=Tl(),Ph=bl(),xh=kl(),Ah=El(),Mh=Cl(),Ih=$l(),Oh=wl(),Nh=Pl(),jh=xl(),Lh=Al(),qh=[Sh.default,Ph.default,xh.default,Ah.default,Mh.default,Ih.default,Oh.default,Nh.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},jh.default,Lh.default];is.default=qh});var ls=_(pr=>{"use strict";Object.defineProperty(pr,"__esModule",{value:!0});pr.validateAdditionalItems=void 0;var at=P(),as=I(),Dh={message:({params:{len:e}})=>(0,at.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,at._)`{limit: ${e}}`},Fh={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:Dh,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0,as.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}Il(e,n)}};function Il(e,t){let{gen:r,schema:n,data:o,keyword:s,it:i}=e;i.items=!0;let a=r.const("len",(0,at._)`${o}.length`);if(n===!1)e.setParams({len:t.length}),e.pass((0,at._)`${a} <= ${t.length}`);else if(typeof n=="object"&&!(0,as.alwaysValidSchema)(i,n)){let c=r.var("valid",(0,at._)`${a} <= ${t.length}`);r.if((0,at.not)(c),()=>l(c)),e.ok(c)}function l(c){r.forRange("i",t.length,a,u=>{e.subschema({keyword:s,dataProp:u,dataPropType:as.Type.Num},c),i.allErrors||r.if((0,at.not)(c),()=>r.break())})}}pr.validateAdditionalItems=Il;pr.default=Fh});var cs=_(mr=>{"use strict";Object.defineProperty(mr,"__esModule",{value:!0});mr.validateTuple=void 0;var Ol=P(),on=I(),Uh=fe(),Bh={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return Nl(e,"additionalItems",t);r.items=!0,!(0,on.alwaysValidSchema)(r,t)&&e.ok((0,Uh.validateArray)(e))}};function Nl(e,t,r=e.schema){let{gen:n,parentSchema:o,data:s,keyword:i,it:a}=e;u(o),a.opts.unevaluated&&r.length&&a.items!==!0&&(a.items=on.mergeEvaluated.items(n,r.length,a.items));let l=n.name("valid"),c=n.const("len",(0,Ol._)`${s}.length`);r.forEach((d,m)=>{(0,on.alwaysValidSchema)(a,d)||(n.if((0,Ol._)`${c} > ${m}`,()=>e.subschema({keyword:i,schemaProp:m,dataProp:m},l)),e.ok(l))});function u(d){let{opts:m,errSchemaPath:h}=a,p=r.length,f=p===d.minItems&&(p===d.maxItems||d[t]===!1);if(m.strictTuples&&!f){let T=`"${i}" is ${p}-tuple, but minItems or maxItems/${t} are not specified or different at path "${h}"`;(0,on.checkStrictMode)(a,T,m.strictTuples)}}}mr.validateTuple=Nl;mr.default=Bh});var jl=_(us=>{"use strict";Object.defineProperty(us,"__esModule",{value:!0});var zh=cs(),Vh={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,zh.validateTuple)(e,"items")};us.default=Vh});var ql=_(ds=>{"use strict";Object.defineProperty(ds,"__esModule",{value:!0});var Ll=P(),Kh=I(),Hh=fe(),Gh=ls(),Wh={message:({params:{len:e}})=>(0,Ll.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,Ll._)`{limit: ${e}}`},Jh={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:Wh,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:o}=r;n.items=!0,!(0,Kh.alwaysValidSchema)(n,t)&&(o?(0,Gh.validateAdditionalItems)(e,o):e.ok((0,Hh.validateArray)(e)))}};ds.default=Jh});var Dl=_(fs=>{"use strict";Object.defineProperty(fs,"__esModule",{value:!0});var me=P(),sn=I(),Yh={message:({params:{min:e,max:t}})=>t===void 0?(0,me.str)`must contain at least ${e} valid item(s)`:(0,me.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,me._)`{minContains: ${e}}`:(0,me._)`{minContains: ${e}, maxContains: ${t}}`},Xh={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:Yh,code(e){let{gen:t,schema:r,parentSchema:n,data:o,it:s}=e,i,a,{minContains:l,maxContains:c}=n;s.opts.next?(i=l===void 0?1:l,a=c):i=1;let u=t.const("len",(0,me._)`${o}.length`);if(e.setParams({min:i,max:a}),a===void 0&&i===0){(0,sn.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,sn.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,sn.alwaysValidSchema)(s,r)){let f=(0,me._)`${u} >= ${i}`;a!==void 0&&(f=(0,me._)`${f} && ${u} <= ${a}`),e.pass(f);return}s.items=!0;let d=t.name("valid");a===void 0&&i===1?h(d,()=>t.if(d,()=>t.break())):i===0?(t.let(d,!0),a!==void 0&&t.if((0,me._)`${o}.length > 0`,m)):(t.let(d,!1),m()),e.result(d,()=>e.reset());function m(){let f=t.name("_valid"),T=t.let("count",0);h(f,()=>t.if(f,()=>p(T)))}function h(f,T){t.forRange("i",0,u,b=>{e.subschema({keyword:"contains",dataProp:b,dataPropType:sn.Type.Num,compositeRule:!0},f),T()})}function p(f){t.code((0,me._)`${f}++`),a===void 0?t.if((0,me._)`${f} >= ${i}`,()=>t.assign(d,!0).break()):(t.if((0,me._)`${f} > ${a}`,()=>t.assign(d,!1).break()),i===1?t.assign(d,!0):t.if((0,me._)`${f} >= ${i}`,()=>t.assign(d,!0)))}}};fs.default=Xh});var an=_(Se=>{"use strict";Object.defineProperty(Se,"__esModule",{value:!0});Se.validateSchemaDeps=Se.validatePropertyDeps=Se.error=void 0;var ps=P(),Qh=I(),hr=fe();Se.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return(0,ps.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0,ps._)`{property: ${e},
6
- missingProperty: ${n},
7
- depsCount: ${t},
8
- deps: ${r}}`};var Zh={keyword:"dependencies",type:"object",schemaType:"object",error:Se.error,code(e){let[t,r]=eg(e);Fl(e,t),Ul(e,r)}};function eg({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 Fl(e,t=e.schema){let{gen:r,data:n,it:o}=e;if(Object.keys(t).length===0)return;let s=r.let("missing");for(let i in t){let a=t[i];if(a.length===0)continue;let l=(0,hr.propertyInData)(r,n,i,o.opts.ownProperties);e.setParams({property:i,depsCount:a.length,deps:a.join(", ")}),o.allErrors?r.if(l,()=>{for(let c of a)(0,hr.checkReportMissingProp)(e,c)}):(r.if((0,ps._)`${l} && (${(0,hr.checkMissingProp)(e,a,s)})`),(0,hr.reportMissingProp)(e,s),r.else())}}Se.validatePropertyDeps=Fl;function Ul(e,t=e.schema){let{gen:r,data:n,keyword:o,it:s}=e,i=r.name("valid");for(let a in t)(0,Qh.alwaysValidSchema)(s,t[a])||(r.if((0,hr.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let l=e.subschema({keyword:o,schemaProp:a},i);e.mergeValidEvaluated(l,i)},()=>r.var(i,!0)),e.ok(i))}Se.validateSchemaDeps=Ul;Se.default=Zh});var zl=_(ms=>{"use strict";Object.defineProperty(ms,"__esModule",{value:!0});var Bl=P(),tg=I(),rg={message:"property name must be valid",params:({params:e})=>(0,Bl._)`{propertyName: ${e.propertyName}}`},ng={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:rg,code(e){let{gen:t,schema:r,data:n,it:o}=e;if((0,tg.alwaysValidSchema)(o,r))return;let s=t.name("valid");t.forIn("key",n,i=>{e.setParams({propertyName:i}),e.subschema({keyword:"propertyNames",data:i,dataTypes:["string"],propertyName:i,compositeRule:!0},s),t.if((0,Bl.not)(s),()=>{e.error(!0),o.allErrors||t.break()})}),e.ok(s)}};ms.default=ng});var gs=_(hs=>{"use strict";Object.defineProperty(hs,"__esModule",{value:!0});var ln=fe(),ve=P(),og=de(),cn=I(),sg={message:"must NOT have additional properties",params:({params:e})=>(0,ve._)`{additionalProperty: ${e.additionalProperty}}`},ig={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:sg,code(e){let{gen:t,schema:r,parentSchema:n,data:o,errsCount:s,it:i}=e;if(!s)throw new Error("ajv implementation error");let{allErrors:a,opts:l}=i;if(i.props=!0,l.removeAdditional!=="all"&&(0,cn.alwaysValidSchema)(i,r))return;let c=(0,ln.allSchemaProperties)(n.properties),u=(0,ln.allSchemaProperties)(n.patternProperties);d(),e.ok((0,ve._)`${s} === ${og.default.errors}`);function d(){t.forIn("key",o,T=>{!c.length&&!u.length?p(T):t.if(m(T),()=>p(T))})}function m(T){let b;if(c.length>8){let $=(0,cn.schemaRefOrVal)(i,n.properties,"properties");b=(0,ln.isOwnProperty)(t,$,T)}else c.length?b=(0,ve.or)(...c.map($=>(0,ve._)`${T} === ${$}`)):b=ve.nil;return u.length&&(b=(0,ve.or)(b,...u.map($=>(0,ve._)`${(0,ln.usePattern)(e,$)}.test(${T})`))),(0,ve.not)(b)}function h(T){t.code((0,ve._)`delete ${o}[${T}]`)}function p(T){if(l.removeAdditional==="all"||l.removeAdditional&&r===!1){h(T);return}if(r===!1){e.setParams({additionalProperty:T}),e.error(),a||t.break();return}if(typeof r=="object"&&!(0,cn.alwaysValidSchema)(i,r)){let b=t.name("valid");l.removeAdditional==="failing"?(f(T,b,!1),t.if((0,ve.not)(b),()=>{e.reset(),h(T)})):(f(T,b),a||t.if((0,ve.not)(b),()=>t.break()))}}function f(T,b,$){let E={keyword:"additionalProperties",dataProp:T,dataPropType:cn.Type.Str};$===!1&&Object.assign(E,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(E,b)}}};hs.default=ig});var Hl=_(_s=>{"use strict";Object.defineProperty(_s,"__esModule",{value:!0});var ag=er(),Vl=fe(),ys=I(),Kl=gs(),lg={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:o,it:s}=e;s.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&Kl.default.code(new ag.KeywordCxt(s,Kl.default,"additionalProperties"));let i=(0,Vl.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=ys.mergeEvaluated.props(t,(0,ys.toHash)(i),s.props));let a=i.filter(d=>!(0,ys.alwaysValidSchema)(s,r[d]));if(a.length===0)return;let l=t.name("valid");for(let d of a)c(d)?u(d):(t.if((0,Vl.propertyInData)(t,o,d,s.opts.ownProperties)),u(d),s.allErrors||t.else().var(l,!0),t.endIf()),e.it.definedProperties.add(d),e.ok(l);function c(d){return s.opts.useDefaults&&!s.compositeRule&&r[d].default!==void 0}function u(d){e.subschema({keyword:"properties",schemaProp:d,dataProp:d},l)}}};_s.default=lg});var Yl=_(Ts=>{"use strict";Object.defineProperty(Ts,"__esModule",{value:!0});var Gl=fe(),un=P(),Wl=I(),Jl=I(),cg={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:o,it:s}=e,{opts:i}=s,a=(0,Gl.allSchemaProperties)(r),l=a.filter(f=>(0,Wl.alwaysValidSchema)(s,r[f]));if(a.length===0||l.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let c=i.strictSchema&&!i.allowMatchingProperties&&o.properties,u=t.name("valid");s.props!==!0&&!(s.props instanceof un.Name)&&(s.props=(0,Jl.evaluatedPropsToName)(t,s.props));let{props:d}=s;m();function m(){for(let f of a)c&&h(f),s.allErrors?p(f):(t.var(u,!0),p(f),t.if(u))}function h(f){for(let T in c)new RegExp(f).test(T)&&(0,Wl.checkStrictMode)(s,`property ${T} matches pattern ${f} (use allowMatchingProperties)`)}function p(f){t.forIn("key",n,T=>{t.if((0,un._)`${(0,Gl.usePattern)(e,f)}.test(${T})`,()=>{let b=l.includes(f);b||e.subschema({keyword:"patternProperties",schemaProp:f,dataProp:T,dataPropType:Jl.Type.Str},u),s.opts.unevaluated&&d!==!0?t.assign((0,un._)`${d}[${T}]`,!0):!b&&!s.allErrors&&t.if((0,un.not)(u),()=>t.break())})})}}};Ts.default=cg});var Xl=_(bs=>{"use strict";Object.defineProperty(bs,"__esModule",{value:!0});var ug=I(),dg={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if((0,ug.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"}};bs.default=dg});var Ql=_(vs=>{"use strict";Object.defineProperty(vs,"__esModule",{value:!0});var fg=fe(),pg={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:fg.validateUnion,error:{message:"must match a schema in anyOf"}};vs.default=pg});var Zl=_(Rs=>{"use strict";Object.defineProperty(Rs,"__esModule",{value:!0});var dn=P(),mg=I(),hg={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,dn._)`{passingSchemas: ${e.passing}}`},gg={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:hg,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 s=r,i=t.let("valid",!1),a=t.let("passing",null),l=t.name("_valid");e.setParams({passing:a}),t.block(c),e.result(i,()=>e.reset(),()=>e.error(!0));function c(){s.forEach((u,d)=>{let m;(0,mg.alwaysValidSchema)(o,u)?t.var(l,!0):m=e.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},l),d>0&&t.if((0,dn._)`${l} && ${i}`).assign(i,!1).assign(a,(0,dn._)`[${a}, ${d}]`).else(),t.if(l,()=>{t.assign(i,!0),t.assign(a,d),m&&e.mergeEvaluated(m,dn.Name)})})}}};Rs.default=gg});var ec=_(ks=>{"use strict";Object.defineProperty(ks,"__esModule",{value:!0});var yg=I(),_g={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((s,i)=>{if((0,yg.alwaysValidSchema)(n,s))return;let a=e.subschema({keyword:"allOf",schemaProp:i},o);e.ok(o),e.mergeEvaluated(a)})}};ks.default=_g});var nc=_(Es=>{"use strict";Object.defineProperty(Es,"__esModule",{value:!0});var fn=P(),rc=I(),Tg={message:({params:e})=>(0,fn.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,fn._)`{failingKeyword: ${e.ifClause}}`},bg={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:Tg,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0,rc.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=tc(n,"then"),s=tc(n,"else");if(!o&&!s)return;let i=t.let("valid",!0),a=t.name("_valid");if(l(),e.reset(),o&&s){let u=t.let("ifClause");e.setParams({ifClause:u}),t.if(a,c("then",u),c("else",u))}else o?t.if(a,c("then")):t.if((0,fn.not)(a),c("else"));e.pass(i,()=>e.error(!0));function l(){let u=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);e.mergeEvaluated(u)}function c(u,d){return()=>{let m=e.subschema({keyword:u},a);t.assign(i,a),e.mergeValidEvaluated(m,i),d?t.assign(d,(0,fn._)`${u}`):e.setParams({ifClause:u})}}}};function tc(e,t){let r=e.schema[t];return r!==void 0&&!(0,rc.alwaysValidSchema)(e,r)}Es.default=bg});var oc=_(Cs=>{"use strict";Object.defineProperty(Cs,"__esModule",{value:!0});var vg=I(),Rg={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,vg.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};Cs.default=Rg});var sc=_($s=>{"use strict";Object.defineProperty($s,"__esModule",{value:!0});var kg=ls(),Eg=jl(),Cg=cs(),$g=ql(),wg=Dl(),Sg=an(),Pg=zl(),xg=gs(),Ag=Hl(),Mg=Yl(),Ig=Xl(),Og=Ql(),Ng=Zl(),jg=ec(),Lg=nc(),qg=oc();function Dg(e=!1){let t=[Ig.default,Og.default,Ng.default,jg.default,Lg.default,qg.default,Pg.default,xg.default,Sg.default,Ag.default,Mg.default];return e?t.push(Eg.default,$g.default):t.push(kg.default,Cg.default),t.push(wg.default),t}$s.default=Dg});var Ss=_(gr=>{"use strict";Object.defineProperty(gr,"__esModule",{value:!0});gr.dynamicAnchor=void 0;var ws=P(),Fg=de(),ic=rr(),Ug=en(),Bg={keyword:"$dynamicAnchor",schemaType:"string",code:e=>ac(e,e.schema)};function ac(e,t){let{gen:r,it:n}=e;n.schemaEnv.root.dynamicAnchors[t]=!0;let o=(0,ws._)`${Fg.default.dynamicAnchors}${(0,ws.getProperty)(t)}`,s=n.errSchemaPath==="#"?n.validateName:zg(e);r.if((0,ws._)`!${o}`,()=>r.assign(o,s))}gr.dynamicAnchor=ac;function zg(e){let{schemaEnv:t,schema:r,self:n}=e.it,{root:o,baseId:s,localRefs:i,meta:a}=t.root,{schemaId:l}=n.opts,c=new ic.SchemaEnv({schema:r,schemaId:l,root:o,baseId:s,localRefs:i,meta:a});return ic.compileSchema.call(n,c),(0,Ug.getValidate)(e,c)}gr.default=Bg});var Ps=_(yr=>{"use strict";Object.defineProperty(yr,"__esModule",{value:!0});yr.dynamicRef=void 0;var lc=P(),Vg=de(),cc=en(),Kg={keyword:"$dynamicRef",schemaType:"string",code:e=>uc(e,e.schema)};function uc(e,t){let{gen:r,keyword:n,it:o}=e;if(t[0]!=="#")throw new Error(`"${n}" only supports hash fragment reference`);let s=t.slice(1);if(o.allErrors)i();else{let l=r.let("valid",!1);i(l),e.ok(l)}function i(l){if(o.schemaEnv.root.dynamicAnchors[s]){let c=r.let("_v",(0,lc._)`${Vg.default.dynamicAnchors}${(0,lc.getProperty)(s)}`);r.if(c,a(c,l),a(o.validateName,l))}else a(o.validateName,l)()}function a(l,c){return c?()=>r.block(()=>{(0,cc.callRef)(e,l),r.let(c,!0)}):()=>(0,cc.callRef)(e,l)}}yr.dynamicRef=uc;yr.default=Kg});var dc=_(xs=>{"use strict";Object.defineProperty(xs,"__esModule",{value:!0});var Hg=Ss(),Gg=I(),Wg={keyword:"$recursiveAnchor",schemaType:"boolean",code(e){e.schema?(0,Hg.dynamicAnchor)(e,""):(0,Gg.checkStrictMode)(e.it,"$recursiveAnchor: false is ignored")}};xs.default=Wg});var fc=_(As=>{"use strict";Object.defineProperty(As,"__esModule",{value:!0});var Jg=Ps(),Yg={keyword:"$recursiveRef",schemaType:"string",code:e=>(0,Jg.dynamicRef)(e,e.schema)};As.default=Yg});var pc=_(Ms=>{"use strict";Object.defineProperty(Ms,"__esModule",{value:!0});var Xg=Ss(),Qg=Ps(),Zg=dc(),ey=fc(),ty=[Xg.default,Qg.default,Zg.default,ey.default];Ms.default=ty});var hc=_(Is=>{"use strict";Object.defineProperty(Is,"__esModule",{value:!0});var mc=an(),ry={keyword:"dependentRequired",type:"object",schemaType:"object",error:mc.error,code:e=>(0,mc.validatePropertyDeps)(e)};Is.default=ry});var gc=_(Os=>{"use strict";Object.defineProperty(Os,"__esModule",{value:!0});var ny=an(),oy={keyword:"dependentSchemas",type:"object",schemaType:"object",code:e=>(0,ny.validateSchemaDeps)(e)};Os.default=oy});var yc=_(Ns=>{"use strict";Object.defineProperty(Ns,"__esModule",{value:!0});var sy=I(),iy={keyword:["maxContains","minContains"],type:"array",schemaType:"number",code({keyword:e,parentSchema:t,it:r}){t.contains===void 0&&(0,sy.checkStrictMode)(r,`"${e}" without "contains" is ignored`)}};Ns.default=iy});var _c=_(js=>{"use strict";Object.defineProperty(js,"__esModule",{value:!0});var ay=hc(),ly=gc(),cy=yc(),uy=[ay.default,ly.default,cy.default];js.default=uy});var bc=_(Ls=>{"use strict";Object.defineProperty(Ls,"__esModule",{value:!0});var ze=P(),Tc=I(),dy=de(),fy={message:"must NOT have unevaluated properties",params:({params:e})=>(0,ze._)`{unevaluatedProperty: ${e.unevaluatedProperty}}`},py={keyword:"unevaluatedProperties",type:"object",schemaType:["boolean","object"],trackErrors:!0,error:fy,code(e){let{gen:t,schema:r,data:n,errsCount:o,it:s}=e;if(!o)throw new Error("ajv implementation error");let{allErrors:i,props:a}=s;a instanceof ze.Name?t.if((0,ze._)`${a} !== true`,()=>t.forIn("key",n,d=>t.if(c(a,d),()=>l(d)))):a!==!0&&t.forIn("key",n,d=>a===void 0?l(d):t.if(u(a,d),()=>l(d))),s.props=!0,e.ok((0,ze._)`${o} === ${dy.default.errors}`);function l(d){if(r===!1){e.setParams({unevaluatedProperty:d}),e.error(),i||t.break();return}if(!(0,Tc.alwaysValidSchema)(s,r)){let m=t.name("valid");e.subschema({keyword:"unevaluatedProperties",dataProp:d,dataPropType:Tc.Type.Str},m),i||t.if((0,ze.not)(m),()=>t.break())}}function c(d,m){return(0,ze._)`!${d} || !${d}[${m}]`}function u(d,m){let h=[];for(let p in d)d[p]===!0&&h.push((0,ze._)`${m} !== ${p}`);return(0,ze.and)(...h)}}};Ls.default=py});var Rc=_(qs=>{"use strict";Object.defineProperty(qs,"__esModule",{value:!0});var lt=P(),vc=I(),my={message:({params:{len:e}})=>(0,lt.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,lt._)`{limit: ${e}}`},hy={keyword:"unevaluatedItems",type:"array",schemaType:["boolean","object"],error:my,code(e){let{gen:t,schema:r,data:n,it:o}=e,s=o.items||0;if(s===!0)return;let i=t.const("len",(0,lt._)`${n}.length`);if(r===!1)e.setParams({len:s}),e.fail((0,lt._)`${i} > ${s}`);else if(typeof r=="object"&&!(0,vc.alwaysValidSchema)(o,r)){let l=t.var("valid",(0,lt._)`${i} <= ${s}`);t.if((0,lt.not)(l),()=>a(l,s)),e.ok(l)}o.items=!0;function a(l,c){t.forRange("i",c,i,u=>{e.subschema({keyword:"unevaluatedItems",dataProp:u,dataPropType:vc.Type.Num},l),o.allErrors||t.if((0,lt.not)(l),()=>t.break())})}}};qs.default=hy});var kc=_(Ds=>{"use strict";Object.defineProperty(Ds,"__esModule",{value:!0});var gy=bc(),yy=Rc(),_y=[gy.default,yy.default];Ds.default=_y});var Ec=_(Fs=>{"use strict";Object.defineProperty(Fs,"__esModule",{value:!0});var K=P(),Ty={message:({schemaCode:e})=>(0,K.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,K._)`{format: ${e}}`},by={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:Ty,code(e,t){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=e,{opts:l,errSchemaPath:c,schemaEnv:u,self:d}=a;if(!l.validateFormats)return;o?m():h();function m(){let p=r.scopeValue("formats",{ref:d.formats,code:l.code.formats}),f=r.const("fDef",(0,K._)`${p}[${i}]`),T=r.let("fType"),b=r.let("format");r.if((0,K._)`typeof ${f} == "object" && !(${f} instanceof RegExp)`,()=>r.assign(T,(0,K._)`${f}.type || "string"`).assign(b,(0,K._)`${f}.validate`),()=>r.assign(T,(0,K._)`"string"`).assign(b,f)),e.fail$data((0,K.or)($(),E()));function $(){return l.strictSchema===!1?K.nil:(0,K._)`${i} && !${b}`}function E(){let L=u.$async?(0,K._)`(${f}.async ? await ${b}(${n}) : ${b}(${n}))`:(0,K._)`${b}(${n})`,k=(0,K._)`(typeof ${b} == "function" ? ${L} : ${b}.test(${n}))`;return(0,K._)`${b} && ${b} !== true && ${T} === ${t} && !${k}`}}function h(){let p=d.formats[s];if(!p){$();return}if(p===!0)return;let[f,T,b]=E(p);f===t&&e.pass(L());function $(){if(l.strictSchema===!1){d.logger.warn(k());return}throw new Error(k());function k(){return`unknown format "${s}" ignored in schema at path "${c}"`}}function E(k){let Q=k instanceof RegExp?(0,K.regexpCode)(k):l.code.formats?(0,K._)`${l.code.formats}${(0,K.getProperty)(s)}`:void 0,G=r.scopeValue("formats",{key:s,ref:k,code:Q});return typeof k=="object"&&!(k instanceof RegExp)?[k.type||"string",k.validate,(0,K._)`${G}.validate`]:["string",k,G]}function L(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!u.$async)throw new Error("async format in sync schema");return(0,K._)`await ${b}(${n})`}return typeof T=="function"?(0,K._)`${b}(${n})`:(0,K._)`${b}.test(${n})`}}}};Fs.default=by});var Cc=_(Us=>{"use strict";Object.defineProperty(Us,"__esModule",{value:!0});var vy=Ec(),Ry=[vy.default];Us.default=Ry});var $c=_(St=>{"use strict";Object.defineProperty(St,"__esModule",{value:!0});St.contentVocabulary=St.metadataVocabulary=void 0;St.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];St.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Sc=_(Bs=>{"use strict";Object.defineProperty(Bs,"__esModule",{value:!0});var ky=_l(),Ey=Ml(),Cy=sc(),$y=pc(),wy=_c(),Sy=kc(),Py=Cc(),wc=$c(),xy=[$y.default,ky.default,Ey.default,(0,Cy.default)(!0),Py.default,wc.metadataVocabulary,wc.contentVocabulary,wy.default,Sy.default];Bs.default=xy});var xc=_(pn=>{"use strict";Object.defineProperty(pn,"__esModule",{value:!0});pn.DiscrError=void 0;var Pc;(function(e){e.Tag="tag",e.Mapping="mapping"})(Pc||(pn.DiscrError=Pc={}))});var Mc=_(Vs=>{"use strict";Object.defineProperty(Vs,"__esModule",{value:!0});var Pt=P(),zs=xc(),Ac=rr(),Ay=tr(),My=I(),Iy={message:({params:{discrError:e,tagName:t}})=>e===zs.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,Pt._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},Oy={keyword:"discriminator",type:"object",schemaType:"object",error:Iy,code(e){let{gen:t,data:r,schema:n,parentSchema:o,it:s}=e,{oneOf:i}=o;if(!s.opts.discriminator)throw new Error("discriminator: requires discriminator option");let a=n.propertyName;if(typeof a!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!i)throw new Error("discriminator: requires oneOf keyword");let l=t.let("valid",!1),c=t.const("tag",(0,Pt._)`${r}${(0,Pt.getProperty)(a)}`);t.if((0,Pt._)`typeof ${c} == "string"`,()=>u(),()=>e.error(!1,{discrError:zs.DiscrError.Tag,tag:c,tagName:a})),e.ok(l);function u(){let h=m();t.if(!1);for(let p in h)t.elseIf((0,Pt._)`${c} === ${p}`),t.assign(l,d(h[p]));t.else(),e.error(!1,{discrError:zs.DiscrError.Mapping,tag:c,tagName:a}),t.endIf()}function d(h){let p=t.name("valid"),f=e.subschema({keyword:"oneOf",schemaProp:h},p);return e.mergeEvaluated(f,Pt.Name),p}function m(){var h;let p={},f=b(o),T=!0;for(let L=0;L<i.length;L++){let k=i[L];if(k?.$ref&&!(0,My.schemaHasRulesButRef)(k,s.self.RULES)){let G=k.$ref;if(k=Ac.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,G),k instanceof Ac.SchemaEnv&&(k=k.schema),k===void 0)throw new Ay.default(s.opts.uriResolver,s.baseId,G)}let Q=(h=k?.properties)===null||h===void 0?void 0:h[a];if(typeof Q!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);T=T&&(f||b(k)),$(Q,L)}if(!T)throw new Error(`discriminator: "${a}" must be required`);return p;function b({required:L}){return Array.isArray(L)&&L.includes(a)}function $(L,k){if(L.const)E(L.const,k);else if(L.enum)for(let Q of L.enum)E(Q,k);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function E(L,k){if(typeof L!="string"||L in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[L]=k}}}};Vs.default=Oy});var Ic=_((Dv,Ny)=>{Ny.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/schema",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/core":!0,"https://json-schema.org/draft/2020-12/vocab/applicator":!0,"https://json-schema.org/draft/2020-12/vocab/unevaluated":!0,"https://json-schema.org/draft/2020-12/vocab/validation":!0,"https://json-schema.org/draft/2020-12/vocab/meta-data":!0,"https://json-schema.org/draft/2020-12/vocab/format-annotation":!0,"https://json-schema.org/draft/2020-12/vocab/content":!0},$dynamicAnchor:"meta",title:"Core and Validation specifications meta-schema",allOf:[{$ref:"meta/core"},{$ref:"meta/applicator"},{$ref:"meta/unevaluated"},{$ref:"meta/validation"},{$ref:"meta/meta-data"},{$ref:"meta/format-annotation"},{$ref:"meta/content"}],type:["object","boolean"],$comment:"This meta-schema also defines keywords that have appeared in previous drafts in order to prevent incompatible extensions as they remain in common use.",properties:{definitions:{$comment:'"definitions" has been replaced by "$defs".',type:"object",additionalProperties:{$dynamicRef:"#meta"},deprecated:!0,default:{}},dependencies:{$comment:'"dependencies" has been split and replaced by "dependentSchemas" and "dependentRequired" in order to serve their differing semantics.',type:"object",additionalProperties:{anyOf:[{$dynamicRef:"#meta"},{$ref:"meta/validation#/$defs/stringArray"}]},deprecated:!0,default:{}},$recursiveAnchor:{$comment:'"$recursiveAnchor" has been replaced by "$dynamicAnchor".',$ref:"meta/core#/$defs/anchorString",deprecated:!0},$recursiveRef:{$comment:'"$recursiveRef" has been replaced by "$dynamicRef".',$ref:"meta/core#/$defs/uriReferenceString",deprecated:!0}}}});var Oc=_((Fv,jy)=>{jy.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/applicator",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/applicator":!0},$dynamicAnchor:"meta",title:"Applicator vocabulary meta-schema",type:["object","boolean"],properties:{prefixItems:{$ref:"#/$defs/schemaArray"},items:{$dynamicRef:"#meta"},contains:{$dynamicRef:"#meta"},additionalProperties:{$dynamicRef:"#meta"},properties:{type:"object",additionalProperties:{$dynamicRef:"#meta"},default:{}},patternProperties:{type:"object",additionalProperties:{$dynamicRef:"#meta"},propertyNames:{format:"regex"},default:{}},dependentSchemas:{type:"object",additionalProperties:{$dynamicRef:"#meta"},default:{}},propertyNames:{$dynamicRef:"#meta"},if:{$dynamicRef:"#meta"},then:{$dynamicRef:"#meta"},else:{$dynamicRef:"#meta"},allOf:{$ref:"#/$defs/schemaArray"},anyOf:{$ref:"#/$defs/schemaArray"},oneOf:{$ref:"#/$defs/schemaArray"},not:{$dynamicRef:"#meta"}},$defs:{schemaArray:{type:"array",minItems:1,items:{$dynamicRef:"#meta"}}}}});var Nc=_((Uv,Ly)=>{Ly.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/unevaluated",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/unevaluated":!0},$dynamicAnchor:"meta",title:"Unevaluated applicator vocabulary meta-schema",type:["object","boolean"],properties:{unevaluatedItems:{$dynamicRef:"#meta"},unevaluatedProperties:{$dynamicRef:"#meta"}}}});var jc=_((Bv,qy)=>{qy.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/content",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/content":!0},$dynamicAnchor:"meta",title:"Content vocabulary meta-schema",type:["object","boolean"],properties:{contentEncoding:{type:"string"},contentMediaType:{type:"string"},contentSchema:{$dynamicRef:"#meta"}}}});var Lc=_((zv,Dy)=>{Dy.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/core",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/core":!0},$dynamicAnchor:"meta",title:"Core vocabulary meta-schema",type:["object","boolean"],properties:{$id:{$ref:"#/$defs/uriReferenceString",$comment:"Non-empty fragments not allowed.",pattern:"^[^#]*#?$"},$schema:{$ref:"#/$defs/uriString"},$ref:{$ref:"#/$defs/uriReferenceString"},$anchor:{$ref:"#/$defs/anchorString"},$dynamicRef:{$ref:"#/$defs/uriReferenceString"},$dynamicAnchor:{$ref:"#/$defs/anchorString"},$vocabulary:{type:"object",propertyNames:{$ref:"#/$defs/uriString"},additionalProperties:{type:"boolean"}},$comment:{type:"string"},$defs:{type:"object",additionalProperties:{$dynamicRef:"#meta"}}},$defs:{anchorString:{type:"string",pattern:"^[A-Za-z_][-A-Za-z0-9._]*$"},uriString:{type:"string",format:"uri"},uriReferenceString:{type:"string",format:"uri-reference"}}}});var qc=_((Vv,Fy)=>{Fy.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/format-annotation",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/format-annotation":!0},$dynamicAnchor:"meta",title:"Format vocabulary meta-schema for annotation results",type:["object","boolean"],properties:{format:{type:"string"}}}});var Dc=_((Kv,Uy)=>{Uy.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/meta-data",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/meta-data":!0},$dynamicAnchor:"meta",title:"Meta-data vocabulary meta-schema",type:["object","boolean"],properties:{title:{type:"string"},description:{type:"string"},default:!0,deprecated:{type:"boolean",default:!1},readOnly:{type:"boolean",default:!1},writeOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0}}}});var Fc=_((Hv,By)=>{By.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/validation",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/validation":!0},$dynamicAnchor:"meta",title:"Validation vocabulary meta-schema",type:["object","boolean"],properties:{type:{anyOf:[{$ref:"#/$defs/simpleTypes"},{type:"array",items:{$ref:"#/$defs/simpleTypes"},minItems:1,uniqueItems:!0}]},const:!0,enum:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/$defs/nonNegativeInteger"},minLength:{$ref:"#/$defs/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},maxItems:{$ref:"#/$defs/nonNegativeInteger"},minItems:{$ref:"#/$defs/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},maxContains:{$ref:"#/$defs/nonNegativeInteger"},minContains:{$ref:"#/$defs/nonNegativeInteger",default:1},maxProperties:{$ref:"#/$defs/nonNegativeInteger"},minProperties:{$ref:"#/$defs/nonNegativeIntegerDefault0"},required:{$ref:"#/$defs/stringArray"},dependentRequired:{type:"object",additionalProperties:{$ref:"#/$defs/stringArray"}}},$defs:{nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{$ref:"#/$defs/nonNegativeInteger",default:0},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}}}});var Uc=_(Ks=>{"use strict";Object.defineProperty(Ks,"__esModule",{value:!0});var zy=Ic(),Vy=Oc(),Ky=Nc(),Hy=jc(),Gy=Lc(),Wy=qc(),Jy=Dc(),Yy=Fc(),Xy=["/properties"];function Qy(e){return[zy,Vy,Ky,Hy,Gy,t(this,Wy),Jy,t(this,Yy)].forEach(r=>this.addMetaSchema(r,void 0,!1)),this;function t(r,n){return e?r.$dataMetaSchema(n,Xy):n}}Ks.default=Qy});var Bc=_((z,Gs)=>{"use strict";Object.defineProperty(z,"__esModule",{value:!0});z.MissingRefError=z.ValidationError=z.CodeGen=z.Name=z.nil=z.stringify=z.str=z._=z.KeywordCxt=z.Ajv2020=void 0;var Zy=pl(),e_=Sc(),t_=Mc(),r_=Uc(),Hs="https://json-schema.org/draft/2020-12/schema",xt=class extends Zy.default{constructor(t={}){super({...t,dynamicRef:!0,next:!0,unevaluated:!0})}_addVocabularies(){super._addVocabularies(),e_.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(t_.default)}_addDefaultMetaSchema(){super._addDefaultMetaSchema();let{$data:t,meta:r}=this.opts;r&&(r_.default.call(this,t),this.refs["http://json-schema.org/schema"]=Hs)}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Hs)?Hs:void 0)}};z.Ajv2020=xt;Gs.exports=z=xt;Gs.exports.Ajv2020=xt;Object.defineProperty(z,"__esModule",{value:!0});z.default=xt;var n_=er();Object.defineProperty(z,"KeywordCxt",{enumerable:!0,get:function(){return n_.KeywordCxt}});var At=P();Object.defineProperty(z,"_",{enumerable:!0,get:function(){return At._}});Object.defineProperty(z,"str",{enumerable:!0,get:function(){return At.str}});Object.defineProperty(z,"stringify",{enumerable:!0,get:function(){return At.stringify}});Object.defineProperty(z,"nil",{enumerable:!0,get:function(){return At.nil}});Object.defineProperty(z,"Name",{enumerable:!0,get:function(){return At.Name}});Object.defineProperty(z,"CodeGen",{enumerable:!0,get:function(){return At.CodeGen}});var o_=Hr();Object.defineProperty(z,"ValidationError",{enumerable:!0,get:function(){return o_.default}});var s_=tr();Object.defineProperty(z,"MissingRefError",{enumerable:!0,get:function(){return s_.default}})});function Pn(e,t,r,n){return{role:"assistant",content:t||null,tool_calls:e,...r&&r.length>0?{thinkingBlocks:r}:{},...n?{reasoning_content:n}:{}}}function qt(e,t){let r=t.ok?typeof t.payload=="string"?t.payload:JSON.stringify(t.payload??""):`Error: ${t.error??"Tool execution failed"}`;return{role:"tool",tool_call_id:e,content:r,...!t.ok&&{is_error:!0},...t.toolReferences?.length?{toolReferences:t.toolReferences}:{},...t.imageUrls?.length?{imageUrls:t.imageUrls}:{},...t.contentBlocks!==void 0?{contentBlocks:t.contentBlocks}:{},...t.structuredContent!==void 0?{structuredContent:t.structuredContent}:{},...t.mcpMeta!==void 0?{mcpMeta:t.mcpMeta}:{},...t.mcpIsError!==void 0?{mcpIsError:t.mcpIsError}:{}}}var Eu=/\b(?:daily|weekly|monthly)(?:\/(?:daily|weekly|monthly))* (?:usage )?limit(?:s)?(?: (?:exhausted|reached|exceeded))?\b/i,Je={rateLimit:[/rate[_ ]limit|too many requests|429/,"model_cooldown","exceeded your current quota","resource has been exhausted","quota exceeded","resource_exhausted","usage limit",/\btpm\b/i,"tokens per minute","tokens per day"],overloaded:[/overloaded_error|"type"\s*:\s*"overloaded_error"/i,"overloaded",/service[_ ]unavailable.*(?:overload|capacity|high[_ ]demand)|(?:overload|capacity|high[_ ]demand).*service[_ ]unavailable/i,"high demand"],timeout:["timeout","timed out","service unavailable","deadline exceeded","context deadline exceeded","connection error","network error","network request failed","fetch failed","socket hang up",/\beconn(?:refused|reset|aborted)\b/i,/\benotfound\b/i,/\beai_again\b/i,/without sending (?:any )?chunks?/i,/\bstop reason:\s*(?:abort|error|network_error)\b/i,/\breason:\s*(?:abort|error|network_error)\b/i,/\bunhandled stop reason:\s*(?:abort|error|network_error)\b/i],billing:[/["']?(?:status|code)["']?\s*[:=]\s*402\b|\bhttp\s*402\b|\berror(?:\s+code)?\s*[:=]?\s*402\b|\b(?:got|returned|received)\s+(?:a\s+)?402\b|^\s*402\s+payment/i,"payment required","insufficient credits",/insufficient[_ ]quota/i,"credit balance","plans & billing","insufficient balance"],authPermanent:[/api[_ ]?key[_ ]?(?:revoked|invalid|deactivated|deleted)/i,"invalid_api_key","key has been disabled","key has been revoked","account has been deactivated",/could not (?:authenticate|validate).*(?:api[_ ]?key|credentials)/i,"permission_error","not allowed for this organization"],auth:[/invalid[_ ]?api[_ ]?key/,"incorrect api key","invalid token","authentication","re-authenticate","oauth token refresh failed","unauthorized","forbidden","access denied","insufficient permissions","insufficient permission",/missing scopes?:/i,"expired","token has expired",/\b401\b/,/\b403\b/,"no credentials found","no api key found"],format:["string should match pattern","tool_use.id","tool_use_id","messages.1.content.1.tool_use.id","invalid request format",/tool call id was.*must be/i]},Cu=/^(?:error[:\s-]+)?billing(?:\s+error)?(?:[:\s-]+|$)|^(?:error[:\s-]+)?(?:credit balance|insufficient credits?|payment required|http\s*402\b)/i,$u=/["']?(?:status|code)["']?\s*[:=]\s*402\b|\bhttp\s*402\b|\berror(?:\s+code)?\s*[:=]?\s*402\b|^\s*402\s+payment/i,wu=512,Su=/^(?:http\s*)?(\d{3})(?:\s+([\s\S]+))?$/i;var Pu=new Set([500,502,503,504,521,522,523,524,529]),xu=["insufficient credits","insufficient quota","credit balance","insufficient balance","plans & billing","add more credits","top up"],Au=["upgrade your plan","upgrade plan","current plan","subscription"],Mu=["daily","weekly","monthly"],Iu=["try again","retry","temporary","cooldown"],Ou=["usage limit","rate limit","organization usage"],Nu=["organization","workspace"],ju=["billing period","exceeded","reached","exhausted"],Lu=/["']?(?:status|code)["']?\s*[:=]\s*402\b|\bhttp\s*402\b|\berror(?:\s+code)?\s*[:=]?\s*402\b|\b(?:got|returned|received)\s+(?:a\s+)?402\b|^\s*402\s+payment required\b/i,qu=/^(?:error[:\s-]+)?(?:(?:http\s*)?402(?:\s+payment required)?|payment required)(?:[:\s-]+|$)/i;function Ye(e,t){if(!e)return!1;let r=e.toLowerCase();return t.some(n=>n instanceof RegExp?n.test(r):r.includes(n))}function Du(e){return Ye(e,Je.format)}function Ti(e){return Ye(e,Je.rateLimit)}function Fu(e){return Ye(e,Je.timeout)}function Uu(e){return Eu.test(e)}function xn(e){let t=e.toLowerCase();return t?e.length>wu?$u.test(t):Ye(t,Je.billing)?!0:Cu.test(e)?t.includes("upgrade")||t.includes("credits")||t.includes("payment")||t.includes("plan"):!1:!1}function bi(e){return Ye(e,Je.authPermanent)}function Bu(e){return Ye(e,Je.auth)}function vi(e){return Ye(e,Je.overloaded)}function We(e,t){return t.some(r=>e.includes(r))}function zu(e){return We(e,xu)||We(e,Au)&&e.includes("limit")||e.includes("billing hard limit")||e.includes("hard limit reached")||e.includes("maximum allowed")&&e.includes("limit")}function Vu(e){let t=We(e,Mu),r=e.includes("spend limit")||e.includes("spending limit"),n=We(e,Nu);return We(e,Iu)&&We(e,Ou)||t&&(e.includes("usage limit")||r)||t&&e.includes("limit")&&e.includes("reset")||n&&e.includes("limit")&&(r||We(e,ju))}function Ku(e){return e.trim().toLowerCase().replace(qu,"").trim()}function Ri(e){let t=Ku(e);return!t||zu(t)?"billing":Ti(t)||Vu(t)?"rate_limit":"billing"}function Hu(e){return Lu.test(e)?Ri(e):null}function ki(e){let t=e.match(Su);if(!t)return null;let r=Number(t[1]);return Number.isFinite(r)?{code:r,rest:(t[2]??"").trim()}:null}function Gu(e){if(!e)return!1;let t=e.toLowerCase();return t.includes('"type":"api_error"')&&t.includes("internal server error")}function Wu(e){let t=e.trim();if(!t)return!1;let r=ki(t);return r?Pu.has(r.code):!1}function Ei(e,t){return typeof e!="number"||!Number.isFinite(e)?null:e===402?t?Ri(t):"billing":e===429?"rate_limit":e===401||e===403?t&&bi(t)?"auth_permanent":"auth":e===408?"timeout":e===503?t&&vi(t)?"overloaded":"timeout":e===502||e===504?"timeout":e===529?"overloaded":e===400?t&&xn(t)?"billing":"format":null}function Ju(e){if(!e)return!1;let t=e.toLowerCase();return!!(t.includes("unknown model")||t.includes("model not found")||t.includes("model_not_found")||t.includes("not_found_error")||t.includes("does not exist")&&t.includes("model")||t.includes("invalid model")&&!t.includes("invalid model reference")||/models\/[^\s]+ is not found/i.test(e)||/\b404\b/.test(e)&&/not[-_ ]?found/i.test(e))}function Yu(e){if(!e)return!1;let t=e.toLowerCase();return t.includes("session not found")||t.includes("session does not exist")||t.includes("session expired")||t.includes("session invalid")||t.includes("conversation not found")||t.includes("conversation does not exist")||t.includes("conversation expired")||t.includes("conversation invalid")||t.includes("no such session")||t.includes("invalid session")||t.includes("session id not found")||t.includes("conversation id not found")}function Ci(e){if(Yu(e))return"session_expired";if(Ju(e))return"model_not_found";let t=Hu(e);return t||(Uu(e)?xn(e)?"billing":"rate_limit":Ti(e)?"rate_limit":vi(e)?"overloaded":Wu(e)?ki(e.trim())?.code===529?"overloaded":"timeout":Gu(e)?"timeout":Du(e)?"format":xn(e)?"billing":Fu(e)?"timeout":bi(e)?"auth_permanent":Bu(e)?"auth":null)}var Xu=new Set(["RETRYABLE_TRANSIENT","RETRYABLE_DEGRADED","TOOL_EXECUTION_FAILED"]);function Sr(e){return Xu.has(e)}var Qu={timeout:"RETRYABLE_TRANSIENT",overloaded:"RETRYABLE_TRANSIENT",rate_limit:"RETRYABLE_DEGRADED",auth:"NON_RETRYABLE_AUTH",auth_permanent:"NON_RETRYABLE_AUTH",billing:"NON_RETRYABLE_QUOTA",format:"NON_RETRYABLE_CONTENT",model_not_found:"NON_RETRYABLE_CONTENT",session_expired:"NON_RETRYABLE_CONTENT",unknown:"RETRYABLE_TRANSIENT"};function mt(e,t){let r=Ei(e,t)??(t?Ci(t):null);return r?Qu[r]:typeof e=="number"&&e>=400&&e<500?"NON_RETRYABLE_CONTENT":"RETRYABLE_TRANSIENT"}var $i=4;function wi(e){return{role:"user",content:`[${e} earlier messages removed to fit the context budget]`}}var Dt=class{constructor(t){this.estimateTokens=t}estimateTokens;compress(t,r){let n=[],o=[];for(let d of t)d.role==="system"?n.push(d):o.push(d);let s=r;for(let d of n)s-=this.estimateTokens(d);let i;for(let d of o)if(d.role==="user"){i=d;break}if(i&&(s-=this.estimateTokens(i)),s<=0){let d=o.length-(i?1:0),m=i?[...n,i]:[...n];return d>0&&m.push(wi(d)),{messages:m,droppedCount:d,strategy:"sliding-window"}}let a=[],l=0;for(let d=o.length-1;d>=0;d--){let m=o[d];if(m===i)continue;let h=this.estimateTokens(m);if(s-h<0&&l>=$i)break;if(s-h<0&&l<$i){a.unshift(m),l++;continue}s-=h,a.unshift(m),l++}let c=o.length-(a.length+(i&&!a.includes(i)?1:0)),u=[...n];return i&&!a.includes(i)&&u.push(i),c>0&&u.push(wi(c)),u.push(...a),{messages:u,droppedCount:c,strategy:"sliding-window"}}};function Si(e){return e.function&&typeof e.function=="object"&&typeof e.function.name=="string"?e.function.name.trim():typeof e.name=="string"?e.name.trim():""}function Zu(e){return e==="enabled-eligible"||e==="installed-awaiting-approval"}function ed(e){return new Map((e??[]).map(t=>[t.toolName,t]))}function td(e){if(!e.eligibility?.length)return[...e.tools];let t=ed(e.eligibility);return e.tools.filter(r=>{let n=Si(r);if(!n)return!1;let o=t.get(n);return!o||Zu(o.status)})}function rd(e){let t=[],r=e.compatibility??{},n=e.toolChoice;if(e.thinkingEnabled&&r.requireAutoWhenThinking){let o=typeof n=="object"&&n&&!Array.isArray(n)?String(n.type??""):n;o&&o!=="auto"&&o!=="none"&&(t.push("tool_choice downgraded to auto because thinking mode requires auto/none compatibility."),n="auto")}if(n==="required"&&r.allowRequiredToolChoice===!1){let o=r.requiredFallback??"auto";t.push(`tool_choice=required is not supported by this provider; downgraded to ${o}.`),n=o}if(n&&typeof n=="object"&&!Array.isArray(n)&&n.type==="function"&&r.allowNamedToolChoice===!1){let o=r.namedFallback??"required";t.push(`named tool_choice is not supported by this provider; downgraded to ${o}.`),n=o}return{normalizedToolChoice:n,warnings:t}}function An(e){let t=rd({toolChoice:e.toolChoice,thinkingEnabled:e.thinkingEnabled,compatibility:e.compatibility}),r=t.normalizedToolChoice,n=[...t.warnings],o=td({tools:e.tools,eligibility:e.eligibility});if(!r||r==="auto")return{tools:o,normalizedToolChoice:r,warnings:n};if(r==="none")return{tools:[],normalizedToolChoice:"none",warnings:n};if(r==="required"){if(o.length===0)throw new Error("tool_choice=required but no tools were provided");return{tools:o,normalizedToolChoice:"required",warnings:n}}if(typeof r=="object"&&!Array.isArray(r)&&r.type==="function"){let s=r.function??void 0,i=typeof s?.name=="string"?s.name.trim():"";if(!i)throw new Error("tool_choice.function.name is required");let a=o.filter(l=>Si(l)===i);if(a.length===0)throw new Error(`tool_choice requested unknown tool: ${i}`);return{tools:a,normalizedToolChoice:{type:"function",function:{name:i}},warnings:n}}return{tools:o,normalizedToolChoice:r,warnings:n}}var nd=["stop","aborted","timeout","cancelled","interrupted","error"],od=["tool_calls","toolCalls","function_call","functionCall","raw_tool_calls","rawToolCalls"];function Pi(e){return e==null?[]:typeof e=="string"?e.length>0?[{type:"text",text:e}]:[]:Array.isArray(e)?e:[{type:"text",text:String(e)}]}function sd(e,t){return{...e,...t,content:[...Pi(e.content),...Pi(t.content)]}}function id(e){let t=new Set;if(e.role!=="assistant"||!Array.isArray(e.tool_calls))return t;for(let r of e.tool_calls)typeof r.id=="string"&&r.id&&t.add(r.id);return t}function ad(e){let t=new Set,r=[];for(let n=0;n<e.length;n+=1){if(t.has(n))continue;let o=e[n];if(!o)continue;r.push(o);let s=id(o);if(s.size!==0)for(let i=n+1;i<e.length;i+=1){if(t.has(i))continue;let a=e[i];a?.role==="tool"&&typeof a.tool_call_id=="string"&&s.has(a.tool_call_id)&&(r.push(a),t.add(i))}}return r}function ld(e){if(!e||typeof e!="object")return!1;if(e.function&&typeof e.function=="object"){let t=e.function.name;if(typeof t=="string"&&t.length>0)return!0}return typeof e.name=="string"&&e.name.length>0}function cd(e){return new Set((e??nd).map(t=>t.trim().toLowerCase()))}function ud(e,t){return e?cd(t).has(e.trim().toLowerCase()):!1}function Mn(e){if(!Array.isArray(e)||e.length===0)return[...e];let t=e.map(l=>{if(l.role==="assistant"&&Array.isArray(l.tool_calls)){let c=l.tool_calls.filter(u=>ld(u));return{...l,...c.length>0?{tool_calls:c}:{tool_calls:void 0}}}return{...l}}),r=new Set;for(let l of t)if(!(l.role!=="assistant"||!Array.isArray(l.tool_calls)))for(let c of l.tool_calls)typeof c.id=="string"&&c.id&&r.add(c.id);let n=t.filter(l=>l.role!=="tool"?!0:!!(l.tool_call_id&&r.has(l.tool_call_id))),o=new Set;for(let l of n)l.role==="tool"&&typeof l.tool_call_id=="string"&&l.tool_call_id&&o.add(l.tool_call_id);let s=[];for(let l of n){if(l.role==="assistant"&&Array.isArray(l.tool_calls)&&l.tool_calls.length>0){let c=l.tool_calls.filter(u=>typeof u.id=="string"&&o.has(u.id));if(c.length===0){let{tool_calls:u,...d}=l;d.content!=null&&d.content!==""&&s.push(d);continue}if(c.length<l.tool_calls.length){s.push({...l,tool_calls:c});continue}}s.push(l)}let i=ad(s),a=[];for(let l of i){let c=a.length>0?a[a.length-1]:void 0;if(l.role==="user"&&c?.role==="user"){a[a.length-1]=sd(c,l);continue}a.push(l)}return a}function In(e,t){return ud(t?.stopReason,t?.forcedStopReasons)?e.map(r=>{if(r.role!=="assistant")return{...r};let n={...r};for(let o of od)delete n[o];return n}):[...e]}function On(e,t){let r=t?.placeholderToolResult??"Error: Tool loop interrupted before the tool result was replayed.",n=new Set;for(let s of e)s.role==="tool"&&typeof s.tool_call_id=="string"&&s.tool_call_id&&n.add(s.tool_call_id);let o=[];for(let s of e)if(o.push({...s}),!(s.role!=="assistant"||!Array.isArray(s.tool_calls)||s.tool_calls.length===0))for(let i of s.tool_calls)typeof i.id!="string"||!i.id||n.has(i.id)||(n.add(i.id),o.push({role:"tool",tool_call_id:i.id,content:r}));return o}function Nn(e,t){let r=Mn(e),n=In(r,t);return On(n,t)}function dd(e){let t=new Set,r=new Set;for(let n of e){if(n.role==="assistant"&&Array.isArray(n.tool_calls))for(let o of n.tool_calls)typeof o.id=="string"&&o.id&&t.add(o.id);n.role==="tool"&&typeof n.tool_call_id=="string"&&n.tool_call_id&&r.add(n.tool_call_id)}return[...t].filter(n=>!r.has(n))}function fd(e){let t=new Set;for(let r of e)r.role==="tool"&&typeof r.tool_call_id=="string"&&r.tool_call_id&&t.add(r.tool_call_id);return[...t]}function pd(e){return{round:e.round??0,maxRounds:e.maxRounds,pendingToolCallIds:[...e.pendingToolCallIds??[]],completedToolCallIds:[...e.completedToolCallIds??[]],lastStopReason:e.lastStopReason,replayMessages:[...e.replayMessages??[]]}}function jn(e,t){return{round:e.round+1,maxRounds:e.maxRounds,pendingToolCallIds:[...t.pendingToolCallIds??e.pendingToolCallIds],completedToolCallIds:[...t.completedToolCallIds??e.completedToolCallIds],lastStopReason:t.lastStopReason??e.lastStopReason,replayMessages:[...t.replayMessages??e.replayMessages]}}function Pr(e,t){return{round:e.round,maxRounds:e.maxRounds,pendingToolCallIds:[],completedToolCallIds:[...t.completedToolCallIds??e.completedToolCallIds],lastStopReason:t.lastStopReason??e.lastStopReason,replayMessages:[...t.replayMessages??e.replayMessages]}}function xr(e){let t=[],r=Mn(e.replayMessages);r.length!==e.replayMessages.length&&t.push({kind:"drop-orphan-tool-result",detail:"Removed orphan tool results or invalid assistant tool calls."});let n=In(r,e.options);n.some((s,i)=>s!==r[i])&&t.push({kind:"strip-forced-stop-tool-metadata",detail:"Removed assistant tool-call metadata after forced stop."});let o=On(n,e.options);return o.length>n.length&&t.push({kind:"inject-placeholder-tool-result",detail:"Injected placeholder tool result for pending tool calls."}),{state:pd({maxRounds:e.maxRounds,round:e.round,lastStopReason:e.lastStopReason,replayMessages:o,pendingToolCallIds:dd(o),completedToolCallIds:fd(o)}),recoveryActions:t}}var md=new Set(["main","sdk","agent","compact","hook","verification","side_question"]);function Ln(e){return e?md.has(e):!0}function qn(e){return e===429||e===529}function Ar(e,t=500,r=32e3){let n=Math.min(t*Math.pow(2,e-1),r);return n+Math.floor(Math.random()*n*.25)}var V_={maxBackoffMs:300*1e3,resetCapMs:360*60*1e3,heartbeatIntervalMs:3e4};function Mr(){let e=process.env.QLOGICAGENT_PERSISTENT_RETRY;return e==="1"||e==="true"}var xi=Math.max(1e3,Number(process.env.TOOL_LOOP_TOOL_TIMEOUT_MS)||24e4),Ai=128e3,Mi=13e3,Ii=16384;var Oi=3e4,ht=2;var H_=50*1024,G_=500*1024,W_=500*1024*1024,J_=50*1024*1024;function Dn(e){let t=Number.isFinite(e.totalPromptTokens)&&(e.totalPromptTokens??0)>0?Math.floor(e.totalPromptTokens):0,r=Number.isFinite(e.promptTokens)&&e.promptTokens>0?Math.floor(e.promptTokens):0,n=Number.isFinite(e.cacheReadTokens)&&(e.cacheReadTokens??0)>0?Math.floor(e.cacheReadTokens):0,o=Number.isFinite(e.cacheCreationTokens)&&(e.cacheCreationTokens??0)>0?Math.floor(e.cacheCreationTokens):0,s=n+o,i=s>r?r+s:r;return Math.max(t,i)}function Fn(e){return{promptTokens:0,hasAttemptedReactiveCompact:!1,currentMaxOutputTokens:e.maxOutputTokens,aborted:e.abortSignal?.aborted??!1}}function Un(e,t){let r=t.contextWindowTokens-t.responseBufferTokens-e.currentMaxOutputTokens,n=r>0?e.promptTokens/r*100:100;return n>=85?{level:"warning",usagePercent:n,remainingTokens:Math.max(0,r-e.promptTokens)}:{level:"ok"}}function Bn(e,t,r){let n=e.message?.toLowerCase()??"",o=e.status??0;return o===413||n.includes("prompt_too_long")||n.includes("context_length_exceeded")?!t.hasAttemptedReactiveCompact&&r.reactiveCompactEnabled?{action:"reactive_compact"}:{action:"abort",reason:"prompt_too_long_unrecoverable"}:o>=500&&o<600?{action:"retry",reason:`server_error_${o}`}:o===429?{action:"retry",reason:"rate_limited"}:o===401||o===403?{action:"abort",reason:"auth_error"}:o===404?{action:"abort",reason:"model_not_found"}:{action:"abort",reason:n||"unknown_error"}}function zn(e,t){return e.aborted?!0:t.abortSignal?.aborted?(e.aborted=!0,!0):!1}function Vn(){return{attemptedThisTurn:!1,lastCompactAt:null,toolsAtLastCompact:[]}}function Ft(e){return!e.attemptedThisTurn}function Ir(e,t){let r=t.ok?typeof t.payload=="string"?t.payload:JSON.stringify(t.payload??""):`Error: ${t.error??"Tool execution failed"}`;return{role:"tool",tool_call_id:e,content:r,...!t.ok&&{is_error:!0},...t.toolReferences?.length?{toolReferences:t.toolReferences}:{},...t.imageUrls?.length?{imageUrls:t.imageUrls}:{},...t.contentBlocks?{contentBlocks:t.contentBlocks}:{},...t.structuredContent!==void 0?{structuredContent:t.structuredContent}:{},...t.mcpMeta!==void 0?{mcpMeta:t.mcpMeta}:{},...t.mcpIsError!==void 0?{mcpIsError:t.mcpIsError}:{}}}function Kn(e,t){let r=e.get(t.index)??{id:"",name:"",arguments:""};t.id&&(r.id=t.id),t.name&&(r.name=t.name),r.arguments=t.argumentsMode==="replace"?t.arguments??"":`${r.arguments}${t.arguments??""}`,e.set(t.index,r)}function Ni(e){let t=e.indexOf("__");return t<=0||t+2>=e.length?e:e.slice(t+2)}function ji(e){let t=e.indexOf("__");if(!(t<=0||t+2>=e.length))return e.slice(0,t)}var Hn="tool_schema_load";function Li(e){return e?.type!=="tool_schema_load"||!Array.isArray(e.requestedToolNames)?[]:[...new Set(e.requestedToolNames.filter(t=>typeof t=="string"&&t.trim().length>0))]}function H(e,t,r,n){e?.invoke(t,r).catch(o=>{let s=o instanceof Error?o.message:String(o);n.warn(`[hook:${t}] handler failed: ${s}`)})}function qi(e){if(e.blocked)return"policy_blocked";let t=typeof e.details?.error=="string"?e.details.error:"",r=`${t} ${e.error??""}`;return t==="semantic_quality_failed"?"semantic_quality_failed":/MCP_START_FAILED/iu.test(r)?"mcp_start_failed":/mcp_not_connected|mcp_unavailable/iu.test(r)?"mcp_unavailable":/\bTIMEOUT\b|timed out/iu.test(r)?"timeout":"tool_execution_failed"}function Di(e,t){let r=typeof t.message?.content=="string"?t.message.content:"",n=r?r.slice(0,2e3):void 0,o=t.details,s=typeof o?.stdout=="string"?o.stdout.slice(0,8e3):void 0,i=typeof o?.stderr=="string"?o.stderr.slice(0,4e3):void 0,a=typeof o?.exitCode=="number"?o.exitCode:void 0;return{type:"tool_result",turnId:e,callId:t.callId,name:t.toolName,ok:t.ok,error:t.error,outputPreview:n,durationMs:t.durationMs,exitCode:a,stdout:s,stderr:i,details:o}}function Fi(e,t){if(!t.ok)return[];let r=t.details;if(!r)return[];let n=[],o=Array.isArray(r.inlineImageUrls)?r.inlineImageUrls.filter(s=>typeof s=="string"&&s.trim().length>0):[];for(let s of o)n.push(gd(e,"image",s,r));return n}function gd(e,t,r,n){return{type:"media_result",turnId:e,mediaType:t,url:r,model:typeof n.model=="string"?n.model:void 0,provider:typeof n.provider=="string"?n.provider:void 0,durationSeconds:typeof n.durationMs=="number"?n.durationMs/1e3:void 0,...typeof n.mimeType=="string"?{mimeType:n.mimeType}:{},...typeof n.filename=="string"?{filename:n.filename}:{},...typeof n.size=="number"?{size:n.size}:{},taskId:typeof n.taskId=="string"?n.taskId:void 0}}var yd=new Set(["write","edit","patch"]);function Ui(e){let{turnId:t,result:r,toolCalls:n}=e;if(!r.ok)return[];let o=n.find(a=>a.id===r.callId);if(!o)return[];let s=[],i=_d(o.function.arguments);if(!i)return s;if(yd.has(r.toolName)){let a=Td(i);a&&s.push({type:"artifact",turnId:t,artifactId:`artifact-${r.callId}`,artifactType:bd(a),title:a.split(/[\\/]/).pop()||a,filePath:a,language:vd(a)})}return s}function _d(e){try{return JSON.parse(e)}catch{return null}}function Td(e){return typeof e.file_path=="string"?e.file_path:typeof e.filePath=="string"?e.filePath:typeof e.path=="string"?e.path:void 0}function bd(e){let t=e.split(".").pop()?.toLowerCase()??"";return["png","jpg","jpeg","gif","webp","svg","bmp","ico"].includes(t)?"image":["md","txt","pdf","doc","docx","rtf","html"].includes(t)?"document":["mermaid","mmd","dot","puml","plantuml"].includes(t)?"diagram":["csv","tsv","xlsx","xls"].includes(t)?"table":["ts","tsx","js","jsx","py","rs","go","java","c","cpp","h","cs","rb","sh","sql","json","yaml","yml","toml","xml","css","scss","vue","svelte"].includes(t)?"code":"file"}function vd(e){let t=e.split(".").pop()?.toLowerCase()??"";return{ts:"typescript",tsx:"typescriptreact",js:"javascript",jsx:"javascriptreact",py:"python",rs:"rust",go:"go",java:"java",c:"c",cpp:"cpp",h:"c",cs:"csharp",rb:"ruby",sh:"shellscript",sql:"sql",json:"json",yaml:"yaml",yml:"yaml",toml:"toml",xml:"xml",html:"html",css:"css",scss:"scss",vue:"vue",svelte:"svelte",md:"markdown"}[t]}var Vc=ku(Bc(),1),i_=new Vc.Ajv2020({allErrors:!0,allowUnionTypes:!0,strict:!1,validateFormats:!1}),zc=new WeakMap;function a_(e){let t=zc.get(e);if(t)return t;let r=i_.compile(e);return zc.set(e,r),r}function l_(e){return e.instancePath?`arguments${e.instancePath}`:e.keyword==="required"&&typeof e.params.missingProperty=="string"?`arguments/${e.params.missingProperty}`:"arguments"}function c_(e){return(e??[]).slice(0,4).map(t=>`${l_(t)} ${t.message??`violates ${t.keyword}`}`).join("; ")}function Kc(e,t,r){let n;try{n=JSON.parse(r)}catch{return{ok:!1,error:`Tool "${e}" arguments must be valid JSON.`}}if(!n||typeof n!="object"||Array.isArray(n))return{ok:!1,error:`Tool "${e}" arguments must be a JSON object.`};if(!t)return{ok:!0};try{let o=a_(t);return o(n)?{ok:!0}:{ok:!1,error:`Tool "${e}" arguments do not match the offered schema: ${c_(o.errors)}.`}}catch(o){return{ok:!1,error:`Tool "${e}" has an invalid offered JSON Schema: ${o instanceof Error?o.message:String(o)}.`}}}function mn(e,t){return typeof e=="number"&&Number.isFinite(e)&&e>=1?Math.round(e):0}function hn(e){if(typeof e=="number"&&Number.isFinite(e)&&e>=1)return Math.round(e)}function Hc(e){return e.filter(t=>t.role!=="assistant"?!0:!(typeof t.content=="string"&&t.content.trim()===""))}function Gc(e){try{let t=JSON.parse(e),n=[t.description,t.command,t.query,t.url,t.path,t.file_path,t.filePath,t.pattern,t.model].find(s=>typeof s=="string"&&s.trim().length>0);if(typeof n=="string")return n.trim().slice(0,240);let o=Object.keys(t);return o.length>0?o.slice(0,5).join(" / "):void 0}catch{return}}function Ws(e){let t=e.message.toLowerCase();return e.status===413||t.includes("prompt_too_long")||t.includes("context_length_exceeded")||t.includes("maximum context length")}function Js(e){return e==="length"||e==="max_tokens"}function Ys(e){let t=e.message.toLowerCase();return(t.includes("image")||t.includes("media")||t.includes("file too large")||t.includes("payload too large"))&&(e.status===413||t.includes("too large")||t.includes("size"))}function Wc(e){let t=e.headers;if(!t)return null;let r=t["retry-after"]??t["Retry-After"];if(!r)return null;let n=parseInt(r,10);return!isNaN(n)&&n>0?n*1e3:null}function Jc(e){if(e.status!==400)return null;let t=e.message.match(/input length and `max_tokens` exceed context limit: (\d+) \+ (\d+) > (\d+)/);if(!t?.[1]||!t?.[3])return null;let r=parseInt(t[1],10),n=parseInt(t[3],10);if(isNaN(r)||isNaN(n))return null;let o=n-r-1e3;return o>=3e3?o:null}async function*Yc(e){let{messages:t,contentReplacementState:r,guardConfig:n,runtimePorts:o,hooks:s,hookCtx:i,sessionId:a,currentModel:l,log:c,recovery:u,onAutocompact:d}=e,m;{let h=await o.enforceToolResultBudget(t,r,a);if(m=h.messages,h.newlyReplacedCount>0){let p=h.newlyPersistedBytes??0,f=p>0?` (~${Math.max(1,Math.round(p/1024))} KB)`:"";c.info(`tool-result-budget: persisted ${h.newlyReplacedCount} oversized tool results${f}`),yield u("tool_result_budget",`${h.newlyReplacedCount} persisted${f}`)}}if(n.contextWindowTokens>0){let h=n.contextWindowTokens*.75,p=o.getActiveContextCompressionEngine(),f;p?f=await p.compressAsync(m,h,{model:l,sessionId:a}):f=o.compressMessages(m,{budget:h,model:l}),f.droppedCount>0&&(m=f.messages,c.info(`autocompact: ${f.strategy}, dropped ${f.droppedCount}`),yield u("autocompact",`${f.strategy}: ${f.droppedCount} dropped`),yield{type:"lifecycle",turnId:i.turnId,kind:"context_compression",status:"completed",detail:`${f.strategy}: ${f.droppedCount} dropped`},d(),H(s,"context.after_compact",{...i,removedCount:f.droppedCount},c))}return m=Hc(m),m}async function*Xc(e,t){let{state:r,guardState:n,signal:o,querySource:s,turnId:i,log:a,emitRecovery:l}=t,c=e instanceof Error?e.message:String(e),u=typeof e?.status=="number"?e.status:void 0;if(!u&&c&&(c.includes("ECONNRESET")||c.includes("EPIPE"))){let m=(r.consecutiveApiRetries??0)+1;return m>ht?(a.info(`stale connection retry limit reached (${ht}), aborting`),yield{type:"error",turnId:i,error:c,code:"RETRIES_EXHAUSTED",usage:r.totalUsage},{kind:"return"}):(a.info(`stale connection (${c.includes("ECONNRESET")?"ECONNRESET":"EPIPE"}): retrying`),yield l("stale_connection_retry",c.slice(0,80)),{kind:"continue",patch:{consecutiveApiRetries:m,transition:void 0}})}let d=Jc({status:u,message:c});if(d!==null)return a.info(`max_tokens overflow: adjusting to ${d}`),n.currentMaxOutputTokens=d,{kind:"continue",patch:{transition:void 0}};if(qn(u)){if(r.consecutive529Errors++,r.consecutive529Errors>2&&!Mr())return a.info(`transient ${u} \xD7 ${r.consecutive529Errors}: hard limit reached, aborting`),yield{type:"error",turnId:i,error:`API unavailable after ${r.consecutive529Errors} consecutive ${u} errors`,code:"API_ERROR",usage:r.totalUsage},{kind:"return"};if(Mr()){let h=Ar(r.consecutive529Errors);a.info(`persistent retry: waiting ${h}ms (attempt ${r.consecutive529Errors})`);let p=h;for(;p>0;){if(o?.aborted)return yield{type:"error",turnId:i,error:"Aborted during retry wait",code:"ABORTED",usage:r.totalUsage},{kind:"return"};yield{type:"heartbeat",turnId:i,message:`Retrying in ${Math.ceil(p/1e3)}s (${u})`};let f=Math.min(p,Oi);await new Promise(T=>setTimeout(T,f)),p-=f}return{kind:"continue",patch:{transition:void 0}}}if(Ln(s)){let p=Wc({status:u,message:c})??Ar(r.consecutive529Errors);return a.info(`transient ${u}: retry in ${p}ms`),yield l("retry",`${u} retry in ${p}ms`),await new Promise(f=>setTimeout(f,p)),{kind:"continue",patch:{transition:void 0}}}a.info(`background source ${s}: not retrying ${u}`)}return{kind:"streamError",streamError:{status:u,message:c}}}function Qc(e){return[...new Set(e.map(t=>t.function.name))].sort()}function d_(e){return e?.find(t=>t.source==="llmrouter.settlement")??e?.find(t=>t.source==="provider.reported")}function f_(e){let t=new Set,r=[];for(let n of e){let o=`${n.name}\0${n.reason}`;t.has(o)||(t.add(o),r.push(n))}return r.sort((n,o)=>`${n.name}:${n.reason}`.localeCompare(`${o.name}:${o.reason}`))}function p_(e){let t=typeof e.blockReason=="string"?e.blockReason:void 0;if(e.blocked&&/confirmation timed out/i.test(t??""))return"confirmation-timeout";if(e.blocked)return"blocked-by-policy";let r=typeof e.details?.error=="string"?e.details.error:void 0;if(r==="write.target_exists")return"existing-file-update-tool-required";if(r==="invalid_arguments")return"invalid-arguments";if(r==="blocked_global_process_kill")return"global-process-kill-blocked";if(r==="blocked_by_guard")return"blocked-by-policy";if(r==="semantic_quality_failed")return"semantic-quality-failed"}function Zc(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:null}function m_(e,t){if(!e)return null;let r=Zc(e.function.parameters),n=Zc(r?.properties)??{},o=Array.isArray(r?.required)?r.required.filter(a=>typeof a=="string"&&a.trim().length>0):[],s=__(t);if(!s)return`Tool "${e.function.name}" arguments must be a JSON object.`;for(let a of o){let l=s[a];if(typeof l=="string"?l.trim().length===0:l==null)return`Tool "${e.function.name}" missing required field \`${a}\`. Use the offered tool schema exactly.`}if(r?.additionalProperties===!1){let a=new Set(Object.keys(n)),l=Object.keys(s).filter(c=>!a.has(c));if(l.length>0){let c=[...a].map(u=>`\`${u}\``).join(", ")||"none";return`Tool "${e.function.name}" has unexpected field${l.length===1?"":"s"} ${l.map(u=>`\`${u}\``).join(", ")}. Remove ${l.length===1?"it":"them"}; the only allowed fields are ${c}. Use the canonical tool schema exactly and do not retry the rejected arguments unchanged.`}}let i=Kc(e.function.name,r??void 0,t);return i.ok?null:i.error??`Tool "${e.function.name}" arguments do not match the offered schema.`}function h_(e,t){let r=e?.meta?.identity;if(r?.schemaVersion===1&&r.wireName===t)return r;let n=e?.meta?.category,o=Ni(t),s=ji(t),a=n==="orchestration"?"orchestration":o==="skill_search"||o==="skill_load"||o==="skill_resource_read"?"skill":s!==void 0||n==="mcp"?"mcp":"builtin",l="agent";return{schemaVersion:1,wireName:t,logicalName:o,family:a,owner:l,...s?{serverId:s}:{},capabilityId:`${l}:${s??"native"}:${o}`}}function eu(e){return{role:"user",content:`Background sub-agent result(s) became available while the main task continued.
9
- `+e.join(`
10
- `)}}var g_=18e4,gn=class extends Error{constructor(r){super(`LLM stream idle timeout after ${r}ms without a chunk.`);this.timeoutMs=r;this.name="LLMStreamIdleTimeoutError"}timeoutMs;code="LLM_STREAM_TIMEOUT"};async function*y_(e,t){if(!Number.isFinite(t)||t<=0){yield*e;return}let r=e[Symbol.asyncIterator]();try{for(;;){let n,o=await Promise.race([r.next(),new Promise(s=>{n=setTimeout(()=>s("timeout"),t)})]);if(n&&clearTimeout(n),o==="timeout")throw new gn(t);if(o.done)return;yield o.value}}finally{r.return?.().catch(()=>{})}}function __(e){try{let t=JSON.parse(e);return t&&typeof t=="object"&&!Array.isArray(t)?t:null}catch{return null}}async function*tu(e,t,r,n){let{turnId:o,sessionId:s,messages:i,availableTools:a,tools:l,model:c,apiKey:u,temperature:d=0,hooks:m,signal:h}=e,p=(R,U)=>{R.push(U)},f={sessionId:s,turnId:o},T=e.maxTurns??0,b=e.querySource,$=a??l,E=e.runtimePorts.resolveToolEligibility($,e.toolEligibilityContext),L=new Set(l.map(R=>R.function.name)),k=E.eligibleTools,Q=new Map(k.map(R=>[R.function.name,R])),G=E.eligibleTools.filter(R=>L.has(R.function.name)),Re=[];for(let R of E.blockedTools)Re.push({name:R.toolName,reason:"blocked-by-policy"}),yield{type:"tool_blocked",turnId:o,callId:"",name:R.toolName,reason:"blocked-by-policy"};let ke=mn(e.maxRounds,i),he=hn(e.maxToolCalls),Pe={contextWindowTokens:e.contextWindowTokens??Ai,responseBufferTokens:Mi,maxOutputTokens:e.maxOutputTokens??Ii,abortSignal:h,reactiveCompactEnabled:!0},Ve=new Set,ct=[],_r=new Map,Tn=0,ou=new Set,su=0,Tr=new Set(e.deferredToolNames??[]),ut=new Set;for(let R of e.loadedDeferredToolNames??[])Tr.has(R)&&Q.has(R)?ut.add(R):e.loadedDeferredToolNames?.delete(R);let bn=()=>{let R=new Map(G.map(U=>[U.function.name,U]));for(let U of ut){let W=Q.get(U);W&&R.set(U,W)}return[...R.values()]},Xs=(R,U)=>U?R.filter(W=>U.has(W.function.name)):[...R],Ee=bn(),iu=()=>Qc(Ee),Qs=!1,C={messages:[...i],hasAttemptedReactiveCompact:!1,turnCount:1,transition:void 0,guardState:Fn(Pe),reactiveCompactState:Vn(),toolLoopState:xr({maxRounds:ke,replayMessages:[...i]}).state,finalText:"",totalUsage:{inputTokens:0,outputTokens:0},consecutive529Errors:0,consecutiveApiRetries:0,contentReplacementState:e.runtimePorts.createContentReplacementState(),recoveryTrace:new Map},au=4,lu=4,Zs=0,vn=!1,ei=new Map,ti,Oe=(R,U)=>{let W=`${R}:${U??""}`,Ce=(ei.get(W)??0)+1;if(ei.set(W,Ce),R==="autocompact"){let se=C.recoveryTrace.get("autocompact")??0;if(Ce>au||se>=lu){let Ke=`Repeated context compression made no forward progress: ${U??"autocompact"}`;return ti=Ke,C.recoveryTrace.set("compression_loop_guard",(C.recoveryTrace.get("compression_loop_guard")??0)+1),{type:"recovery",turnId:o,action:"compression_loop_guard",detail:Ke}}}return C.recoveryTrace.set(R,(C.recoveryTrace.get(R)??0)+1),{type:"recovery",turnId:o,action:R,detail:U}},ri=()=>({type:"tool_use_summary",turnId:o,ledgerSchemaVersion:5,toolCalls:ct.map(R=>({...R})),availableToolNames:Qc(a??l),enabledToolNames:iu(),toolCallNames:[...Ve].sort(),blockedToolCalls:f_(Re)}),cu=(R,U)=>({type:"end",turnId:o,content:R,turnStatus:U,taskOutcome:"unverified",usage:C.totalUsage,model:c,...C.recoveryTrace.size>0?{recoveryTrace:Object.fromEntries(C.recoveryTrace)}:{}});function*br(R,U="completed"){yield ri(),yield cu(R,U)}function*ge(R,U){yield ri(),yield{type:"error",turnId:o,error:R,code:U,usage:C.totalUsage}}let dt=0,Mt=0;function*uu(R){dt<=Mt||(yield{type:"text_rollback",turnId:o,keepLength:Mt,reason:R},dt=Mt)}for(Ee=bn();;){yield*uu("round_restart"),Zs++,vn=!1;let{messages:R,turnCount:U,guardState:W,reactiveCompactState:Ce}=C,{toolLoopState:se}=C;if(e.refreshTools&&Zs>1){let y=e.refreshTools(),g=new Set(y.map(V=>V.function.name)),S=Xs(k.filter(V=>!Tr.has(V.function.name)||ut.has(V.function.name)),g),J=S;J!==Ee&&(Ee=J,n.debug(`tools refreshed within initial turn snapshot: ${S.length}/${k.length} tools`))}if(e.drainPendingGuidance)for(let y of e.drainPendingGuidance()){let g=y.trim();g&&(R.push({role:"user",content:g}),n.info(`mid-turn guidance injected (${g.length} chars)`))}if(e.drainPendingTaskNotifications){let y=e.drainPendingTaskNotifications().filter(g=>g.trim());y.length>0&&(R.push(eu(y)),n.info(`background task result injected (${y.length} item(s))`))}if(zn(W,Pe)){n.info(`turn aborted by guard at turn ${U}`),yield*ge("Turn aborted","ABORTED");return}let Ke=yield*Yc({messages:R,contentReplacementState:C.contentReplacementState,guardConfig:Pe,runtimePorts:e.runtimePorts,hooks:m,hookCtx:f,sessionId:s,currentModel:c,log:n,recovery:(y,g)=>Oe(y,g),onAutocompact:()=>{C.hasAttemptedReactiveCompact=!1}});if(Ke!==R&&R.splice(0,R.length,...Ke),ti){yield*br("","stopped");return}let Rn=Un(W,Pe);Rn.level==="warning"&&n.info(`token budget warning: ${Rn.usagePercent}% used, ${Rn.remainingTokens} remaining`);let ni=e.toolChoice==="required"&&Qs?"auto":e.toolChoice??"auto",vr=An({tools:Ee,toolChoice:ni}),Rr=xr({maxRounds:ke,replayMessages:Ke,lastStopReason:se.lastStopReason,options:{stopReason:se.lastStopReason}}),oi=Rr.state.replayMessages;se=Rr.state,Rr.recoveryActions.length>0&&n.debug(`tool loop recovery: ${Rr.recoveryActions.map(y=>y.detail??y.kind).join("; ")}`),n.debug(`turn ${U}, messages: ${oi.length}`),H(m,"turn.before_inference",{...f,model:c},n);let It=!1,si=[],ii=ni==="required",kn=0,Ot="";function*du(y){if(y){if(ii){Ot+=y;return}kn+=y.length,dt+=y.length,yield{type:"delta",turnId:o,text:y}}}function*fu(){if(!Ot)return;let y=Ot;Ot="",kn+=y.length,dt+=y.length,yield{type:"delta",turnId:o,text:y}}let ai=new Map,En="stop",Z,kr,q=null,Er=null,pu=performance.now(),Cn,li=0,ci=0,ui=0,$n=0,di,He,fi=!1,Cr=!1,pi=!1,ft=[],Nt=[];try{let y=t.stream({model:c,messages:oi,...vr.tools.length>0?{tools:vr.tools,toolChoice:vr.normalizedToolChoice??"auto"}:{},temperature:d,maxTokens:W.currentMaxOutputTokens||void 0,streamRequired:e.streamRequired,reasoning:e.reasoning,promptCacheKey:e.promptCacheKey,promptCacheRetention:e.promptCacheRetention,serviceTier:e.serviceTier,openaiBuiltinTools:e.openaiBuiltinTools,...he!==void 0?{maxToolCalls:he}:{},parallelToolCalls:e.parallelToolCalls,textVerbosity:e.textVerbosity},u,h);for await(let g of y_(y,e.llmStreamIdleTimeoutMs??g_))switch(Cn===void 0&&g.type!=="usage"&&g.type!=="response_id"&&(Cn=Math.max(0,Math.round(performance.now()-pu))),g.type){case"delta":li+=1,ci+=g.text.length,He===void 0&&(He="text"),$n===0&&(fi=!0),si.push(g.text),yield*du(g.text);break;case"tool_call_delta":$n+=1,He===void 0&&(He="tool_call"),It=!0,Kn(ai,g);break;case"reasoning_delta":ui+=1,He===void 0&&(He="reasoning"),ft.push(g.text),yield{type:"reasoning_delta",turnId:o,text:g.text};break;case"reasoning_block_complete":g.signature&&Nt.push({thinking:ft.join(""),signature:g.signature}),ft.length=0;break;case"usage":kr=Dn(g);let S=d_(g.records);Z={inputTokens:S?.tokens.inputTokens??g.promptTokens,outputTokens:S?.tokens.outputTokens??g.completionTokens,reasoningTokens:S?.tokens.reasoningTokens??g.reasoningTokens,cacheRead:S?.tokens.cacheReadTokens??g.cacheReadTokens,cacheWrite:S?.tokens.cacheWriteTokens??g.cacheCreationTokens,records:g.records};break;case"response_id":di=g.id;break;case"annotations":yield{type:"annotations",turnId:o,annotations:g.annotations};break;case"builtin_tool_status":yield{type:"heartbeat",turnId:o,message:`${g.toolType}: ${g.event}`};break;case"error":Er=g.message||"LLM provider returned an error chunk";break;case"done":pi=!0,En=g.finishReason;break}if(Er){H(m,"stop.failure",{sessionId:s,reason:"PROVIDER_STREAM_ERROR",error:Er},n),yield*ge(Er,"PROVIDER_STREAM_ERROR");return}if(It||H(m,"turn.after_inference",{...f,model:c},n),e.postSamplingHooks&&e.postSamplingHooks.length>0){let g=c;for(let S of e.postSamplingHooks)try{S({messages:[...Ke],model:g,sessionId:s})}catch{}}}catch(y){if(y instanceof gn){H(m,"stop.failure",{sessionId:s,reason:y.code,error:y.message},n),yield*ge(y.message,y.code);return}let g=yield*Xc(y,{state:C,guardState:W,signal:h,querySource:b,turnId:o,log:n,emitRecovery:Oe});if(g.kind==="return")return;if(g.kind==="continue"){C={...C,...g.patch};continue}q=g.streamError}if(!q&&!pi){let y="LLM stream closed before a terminal event; the response was likely truncated upstream.";H(m,"stop.failure",{sessionId:s,reason:"RETRYABLE_TRANSIENT",error:y},n),yield*ge(y,"RETRYABLE_TRANSIENT");return}if(q&&H(m,"turn.after_inference",{...f,model:c,response:{error:q.message}},n),q)if(Ws(q))Cr=!0,n.info(`withheld prompt_too_long error (status=${q.status})`);else if(Ys(q))Cr=!0,n.info(`withheld media_size error (status=${q.status})`);else{let y=Bn({status:q.status??500,message:q.message},W,Pe);if(y.action==="reactive_compact"&&Ft(Ce)&&(Ce.attemptedThisTurn=!0,W.hasAttemptedReactiveCompact=!0,yield Oe("reactive_compact",`API ${q.status??500}: ${q.message}`)),y.action==="retry"){let S=(C.consecutiveApiRetries??0)+1;if(S>ht){n.info(`API retry limit reached (${ht}), aborting`);let J=mt(q.status,q.message);yield*ge(q.message,J);return}yield Oe("retry",y.reason),C={...C,consecutiveApiRetries:S,transition:void 0};continue}let g=mt(q.status,q.message);H(m,"stop.failure",{sessionId:s,reason:g,error:q.message},n),yield*ge(q.message,g);return}Z&&(C.totalUsage.inputTokens+=Z.inputTokens,C.totalUsage.outputTokens+=Z.outputTokens,Z.reasoningTokens&&(C.totalUsage.reasoningTokens=(C.totalUsage.reasoningTokens??0)+Z.reasoningTokens),Z.cacheRead&&(C.totalUsage.cacheRead=(C.totalUsage.cacheRead??0)+Z.cacheRead),Z.cacheWrite&&(C.totalUsage.cacheWrite=(C.totalUsage.cacheWrite??0)+Z.cacheWrite),Z.records?.length&&(C.totalUsage.records=[...C.totalUsage.records??[],...Z.records])),n.info(`[provider-context] ${JSON.stringify({event:"context_ledger_round",turnId:o,round:U,ttftMs:Cn,inputTokens:Z?.inputTokens??0,outputTokens:Z?.outputTokens??0,cacheReadTokens:Z?.cacheRead??0,cacheWriteTokens:Z?.cacheWrite??0,totalPromptTokens:kr??0,responseIdReceived:di!==void 0,toolDefinitionCount:Ee.length,providerTextChunkCount:li,providerTextChars:ci,providerReasoningChunkCount:ui,providerToolCallDeltaCount:$n,firstSemanticProviderEvent:He??"none",textBeforeFirstToolCall:fi,suppressLiveText:ii,liveEmittedTextChars:kn,bufferedSuppressedTextChars:Ot.length})}`),kr&&(W.promptTokens=kr);let xe=si.join(""),Ne=[...ai.values()].map((y,g)=>({id:y.id||`tc_${o}_${U}_${g}`,type:"function",function:{name:y.name,arguments:y.arguments}}));if(!q&&Tn===0&&Ne.length===0&&!It&&xe.trim()===""&&ft.join("").trim()===""&&Nt.length===0){let y="LLM returned an empty response before any tool use.";H(m,"stop.failure",{sessionId:s,reason:"EMPTY_MODEL_RESPONSE",error:y},n),yield*ge(y,"EMPTY_MODEL_RESPONSE");return}if(!q&&Tn>0&&Ne.length===0&&!It&&xe.trim()===""&&!Js(En)){let y="LLM returned no user-visible response after tool use.";H(m,"stop.failure",{sessionId:s,reason:"EMPTY_MODEL_RESPONSE_AFTER_TOOL",error:y},n),yield*ge(y,"EMPTY_MODEL_RESPONSE_AFTER_TOOL");return}if(Ne.length===0&&!It){if(e.drainPendingTaskNotifications){let S=e.drainPendingTaskNotifications().filter(J=>J.trim());if(S.length>0){C={...C,messages:[...R,...xe?[{role:"assistant",content:xe}]:[],eu(S)]},n.info(`late background task result consumed at completion (${S.length} item(s)) \u2014 running another round`);continue}}if(e.drainPendingGuidance){let S=e.drainPendingGuidance().map(J=>J.trim()).filter(Boolean);if(S.length>0){C={...C,messages:[...R,...xe?[{role:"assistant",content:xe}]:[],...S.map(J=>({role:"user",content:J}))]},n.info(`late mid-turn guidance consumed at completion (${S.length} item(s)) \u2014 running another round`);continue}}if(xe&&(C.finalText=xe),Cr&&q&&Ws(q)){if(Ft(Ce)){Ce.attemptedThisTurn=!0,W.hasAttemptedReactiveCompact=!0,n.info("withheld 413: reactive compact attempt"),yield Oe("reactive_compact","withheld prompt_too_long"),C={...C,hasAttemptedReactiveCompact:!0,transition:{reason:"reactive_compact_retry"}};continue}n.info("withheld 413: recovery exhausted, surfacing error"),H(m,"stop.failure",{sessionId:s,reason:"prompt_too_long",error:q.message},n),yield*ge(q.message,"PROMPT_TOO_LONG");return}if(Cr&&q&&Ys(q)){if(Ft(Ce)){Ce.attemptedThisTurn=!0,W.hasAttemptedReactiveCompact=!0,n.info("withheld media error: reactive compact strip-retry"),yield Oe("reactive_compact","media error strip-retry"),C={...C,hasAttemptedReactiveCompact:!0,transition:{reason:"reactive_compact_retry"}};continue}n.info("withheld media error: recovery exhausted"),H(m,"stop.failure",{sessionId:s,reason:"media_error",error:q.message},n),yield*ge(q.message,"IMAGE_ERROR");return}Js(En)&&(n.info("provider stopped at its output-token limit; preserving partial content"),vn=!0),se=Pr(se,{replayMessages:R,lastStopReason:"completed"});let y=!C.finalText,g=C.finalText;yield*br(g,vn||y?"stopped":"completed");return}let mu=Nt.length===0&&ft.length>0?ft.join(""):void 0;Mt=dt,p(R,Pn(Ne,xe||void 0,Nt.length>0?Nt:void 0,mu)),se=jn(se,{replayMessages:R,pendingToolCallIds:Ne.map(y=>y.id),completedToolCallIds:se.completedToolCallIds,lastStopReason:"tool_calls"});let jt=[],hu=new Set(Ee.map(y=>y.function.name)),mi=[],hi=[];for(let y of Ne)hu.has(y.function.name)?mi.push(y):hi.push(y);for(let y of hi){let S=Tr.has(y.function.name)&&!ut.has(y.function.name)?`Tool "${y.function.name}" schema is not loaded. Call "${Hn}" with that exact tool name before invoking it.`:`Tool "${y.function.name}" was not offered for this turn and will not be executed. Use only the tools listed in the current request.`;Re.push({name:y.function.name,reason:"not-offered"}),p(R,qt(y.id,{ok:!1,error:S})),jt.push(y.id),Ve.add(y.function.name),n.warn(`unoffered tool call suppressed: ${y.function.name}`)}let wn=[],gi=[];for(let y of mi){let g=vr.tools.find(J=>J.function.name===y.function.name),S=m_(g,y.function.arguments);S?gi.push({call:y,error:S}):wn.push(y)}for(let y of gi){let g=y.call;Re.push({name:g.function.name,reason:"invalid-arguments"}),p(R,qt(g.id,{ok:!1,error:y.error})),jt.push(g.id),Ve.add(g.function.name),n.info(`invalid tool arguments blocked: ${g.function.name}`)}let $r=wn.slice(0,he);$r.length>0&&(yield*fu(),Mt=dt);let yi=wn.slice($r.length);if(yi.length>0){let y=`This model round proposed more than ${he} tool calls. Only the first ${he} were executed; re-issue any still-needed calls in the next round.`;for(let g of yi){Re.push({name:g.function.name,reason:"per-round-tool-call-limit"});let S=qt(g.id,{ok:!1,error:y});p(R,S),jt.push(g.id)}}for(let y of $r){let g=y.function.arguments,S=Ee.find(V=>V.function.name===y.function.name);if(S?.backfillObservableInput)try{let V=JSON.parse(y.function.arguments),Ge={...V};S.backfillObservableInput(Ge),Object.keys(Ge).some(pt=>!(pt in V))&&(g=JSON.stringify(Ge))}catch{}let J={sequence:ct.length,callId:y.id,name:y.function.name,identity:h_(S,y.function.name),status:"running",arguments:g};ct.push(J),_r.set(y.id,J),yield{type:"tool_call",turnId:o,callId:y.id,name:y.function.name,...S?.meta?.displayName?.fallback?.trim()?{displayName:S.meta.displayName.fallback.trim()}:{},arguments:g,inputSummary:Gc(g)},ou.add(y.function.name),su++}try{let y=e.runtimePorts.createStreamingToolExecutor({toolInvoker:r,hooks:m,sessionId:s,turnId:o,log:n,signal:h,maxConcurrentTools:e?.maxConcurrentTools,maxExecutionMs:xi,executionTimeoutMsByTool:new Map(Ee.flatMap(g=>{let S=g.meta?.executionTimeoutMs;return typeof S=="number"&&Number.isFinite(S)&&S>0?[[g.function.name,S]]:[]})),contextState:C.contentReplacementState});for(let g of $r)y.addTool(g);for await(let g of y.getRemainingResults()){let S=_r.get(g.callId);S&&(S.status=g.blocked?"blocked":g.ok?"succeeded":"failed",!g.ok&&typeof g.error=="string"&&g.error.trim()&&(S.error=g.error),g.ok||(S.failureKind=qi(g)));let J=p_(g);if(J&&Re.push({name:g.toolName,reason:J}),g.blocked&&(yield{type:"tool_blocked",turnId:o,callId:g.callId,name:g.toolName,reason:g.blockReason??"blocked"}),g.ok&&g.toolName===Hn){let V=Li(g.details),Ge=e.refreshTools?new Set(e.refreshTools().map(ye=>ye.function.name)):void 0,Lt=[],pt=[],wr=[];for(let ye of V)!Q.get(ye)||Ge&&!Ge.has(ye)?wr.push(ye):!Tr.has(ye)||ut.has(ye)?pt.push(ye):(ut.add(ye),e.loadedDeferredToolNames?.add(ye),Lt.push(ye));Ee=Xs(bn(),Ge);let gu=g.message;gu.content=JSON.stringify({loaded:Lt,alreadyResident:pt,unavailable:wr}),g.details={type:"tool_schema_load",requestedToolNames:V,loaded:Lt,alreadyResident:pt,unavailable:wr},n.info({turnId:o,loaded:Lt,alreadyResident:pt,unavailable:wr},"tool schemas materialized by Agent selection")}{let V=g.message;e.sanitizeToolResultMedia&&(Array.isArray(V.imageUrls)||Array.isArray(V.audioUrls)||Array.isArray(V.videoUrls))&&await e.sanitizeToolResultMedia(V)}p(R,g.message),jt.push(g.callId),g.blocked||(Ve.add(g.toolName),Tn++),yield Di(o,g);for(let V of Fi(o,g))yield V;for(let V of Ui({turnId:o,result:g,toolCalls:Ne}))yield V}}catch(y){let g=y instanceof Error?y.message:String(y);yield*ge(g,"TOOL_EXECUTION_ERROR");return}se=Pr(se,{replayMessages:R,completedToolCallIds:[...se.completedToolCallIds,...jt],lastStopReason:"tool_calls"}),e.toolChoice==="required"&&Ne.length>0&&(Qs=!0);let Sn=U+1;if(T>0&&Sn>T){n.info(`max turns reached (${T}), completing`),yield Oe("turn_limit_reached",`${T} tool rounds`),yield*br(C.finalText,"stopped");return}if(ke>0&&Sn>ke){n.info(`tool loop budget exhausted (${ke} rounds), returning`),yield Oe("tool_budget_exhausted",`${ke} rounds`),yield*br(C.finalText,"stopped");return}C={messages:R,hasAttemptedReactiveCompact:!1,turnCount:Sn,transition:{reason:"next_turn"},guardState:W,reactiveCompactState:Ce,toolLoopState:se,finalText:C.finalText,totalUsage:C.totalUsage,consecutive529Errors:0,consecutiveApiRetries:0,contentReplacementState:C.contentReplacementState,recoveryTrace:C.recoveryTrace}}}function ru(e){return[...new Set((e??[]).map(t=>t.function.name))].sort()}var yn=class{transport;apiKey;toolInvoker;log;hooks;configuredMaxRounds;projectRoot;runtimePorts;constructor(t){this.transport=t.llmTransport,this.apiKey=t.apiKey,this.toolInvoker=t.toolInvoker,this.log=t.log,this.hooks=t.hooks,this.projectRoot=t.projectRoot,this.runtimePorts=t.runtimePorts,this.configuredMaxRounds=typeof t.maxRounds=="number"&&Number.isFinite(t.maxRounds)&&t.maxRounds>=1?Math.round(t.maxRounds):void 0}async*run(t,r){let{turnId:n,messages:o,availableTools:s,tools:i,systemPrompt:a,config:l}=t,c={sessionId:t.sessionId,turnId:n},u=[...o].reverse().find($=>$.role==="user"&&typeof $.content=="string")?.content,d=!1,m=()=>({type:"tool_use_summary",turnId:n,telemetrySource:"agent",ledgerSchemaVersion:5,toolCalls:[],availableToolNames:ru(s??i),enabledToolNames:ru(i),toolCallNames:[],blockedToolCalls:[]}),h=typeof l?.maxRounds=="number"&&Number.isFinite(l.maxRounds)?l.maxRounds:this.configuredMaxRounds,p=h===void 0?void 0:Math.round(h),T=typeof l?.maxToolCalls=="number"&&Number.isFinite(l.maxToolCalls)?l.maxToolCalls:void 0,b=hn(T);yield{type:"start",turnId:n,effectiveMaxRounds:mn(p,o),...b!==void 0?{effectiveMaxToolCalls:b}:{}};try{H(this.hooks,"turn.submitted",{...c,prompt:o[o.length-1]?.content??void 0},this.log);let $=Nn(o),E=[];a&&E.push({role:"system",content:a}),E.push(...$);let L=l?.model??"",k=l?.reasoning;l?.reasoning?.effort==="auto"&&(k=void 0);let Q={turnId:n,sessionId:t.sessionId,messages:E,availableTools:s,tools:i,deferredToolNames:t.deferredToolNames,loadedDeferredToolNames:t.loadedDeferredToolNames,refreshTools:t.refreshTools,drainPendingGuidance:t.drainPendingGuidance,drainPendingTaskNotifications:t.drainPendingTaskNotifications,sanitizeToolResultMedia:t.sanitizeToolResultMedia,model:L,apiKey:l?.apiKey??this.apiKey,temperature:l?.temperature,maxRounds:p,contextWindowTokens:l?.contextWindowTokens,maxOutputTokens:l?.maxOutputTokens,modelMaxOutputTokens:l?.modelMaxOutputTokens,toolChoice:l?.toolChoice,parentDepth:l?.parentDepth,hooks:this.hooks,maxTurns:l?.maxTurns,maxConcurrentTools:l?.maxConcurrentTools,streamRequired:l?.streamRequired,reasoning:k,promptCacheKey:l?.promptCacheKey,promptCacheRetention:l?.promptCacheRetention,serviceTier:l?.serviceTier,openaiBuiltinTools:l?.openaiBuiltinTools,maxToolCalls:T,parallelToolCalls:l?.parallelToolCalls??!1,textVerbosity:l?.textVerbosity,projectRoot:this.projectRoot,runtimePorts:this.runtimePorts.toolLoop,signal:r};for await(let G of tu(Q,this.transport,this.toolInvoker,this.log))G.type==="tool_use_summary"&&(d=!0),G.type==="end"?H(this.hooks,"turn.completed",{...c,...u?{prompt:u}:{},response:G.content},this.log):G.type==="error"&&H(this.hooks,"turn.failed",{...c,code:G.code,error:G.error},this.log),yield G}catch($){if(d||(d=!0,yield m()),r?.aborted)H(this.hooks,"turn.failed",{...c,code:"ABORTED",error:"Turn aborted"},this.log),yield{type:"error",turnId:n,error:"Turn aborted",code:"ABORTED"};else{let E=$ instanceof Error?$.message:String($),L=typeof $?.status=="number"?$.status:void 0,k=mt(L,E);this.log.error(`turn ${n} error [${k}, retryable=${Sr(k)}]: ${E}`),H(this.hooks,"turn.failed",{...c,code:k,error:E},this.log),yield{type:"error",turnId:n,error:E,code:k}}}}};function T_(e,t){let r=e.executionTimeoutMsByTool?.get(t)??e.maxExecutionMs;return typeof r=="number"&&Number.isFinite(r)&&r>0?Math.round(r):void 0}function b_(e,t){let r=[e,t?AbortSignal.timeout(t):void 0].filter(n=>n!==void 0);if(r.length!==0)return r.length===1?r[0]:AbortSignal.any(r)}async function v_(e,t){let{call:r}=e,n=r.function.name,o=Date.now();try{let s=await t.toolInvoker.invoke(t.turnId,n,r.function.arguments,b_(t.signal,T_(t,n))),i=s.error??(s.mcpIsError?"Tool execution failed":void 0),a=i===void 0;return{callId:r.id,toolName:n,ok:a,...i?{error:i}:{},durationMs:Date.now()-o,...s.details?{details:s.details}:{},message:Ir(r.id,{ok:a,payload:s.result,...i?{error:i}:{},toolReferences:s.toolReferences,imageUrls:s.imageUrls,contentBlocks:s.contentBlocks,structuredContent:s.structuredContent,mcpMeta:s.mcpMeta,mcpIsError:s.mcpIsError})}}catch(s){let i=s instanceof Error?s.message:String(s);return{callId:r.id,toolName:n,ok:!1,error:i,durationMs:Date.now()-o,message:Ir(r.id,{ok:!1,error:i})}}}var _n=class{constructor(t){this.config=t}config;calls=[];addTool(t){this.calls.push({call:t,index:this.calls.length})}async*getRemainingResults(){let t=Math.max(1,Math.min(this.config.maxConcurrentTools??1,Math.max(1,this.calls.length))),r=new Array(this.calls.length),n=0,o=async()=>{for(;n<this.calls.length;){let s=this.calls[n++];if(!s)return;r[s.index]=await v_(s,this.config)}};await Promise.all(Array.from({length:t},()=>o()));for(let s of r)s&&(yield s)}};var R_=8e3;function k_(e,t){return typeof e=="number"&&Number.isFinite(e)&&e>0?Math.round(e):t}function E_(e){let t=typeof e.content=="string"?e.content:JSON.stringify(e.content??"");return Math.ceil(t.length/4)}function C_(e){let t=k_(e.maxToolResultChars,R_),r=new Dt(E_);return{createContentReplacementState:()=>({}),enforceToolResultBudget:async n=>{let o=0;return{messages:n.map(i=>{if(i.role!=="tool"||typeof i.content!="string"||i.content.length<=t)return i;o+=1;let a=`
11
- [tool result truncated: ${i.content.length-t} characters omitted]`;return{...i,content:`${i.content.slice(0,Math.max(0,t-a.length))}${a}`}}),newlyReplacedCount:o}},getActiveContextCompressionEngine:()=>null,compressMessages:(n,o)=>{let s=r.compress(n,o.budget);return{messages:s.messages,droppedCount:s.droppedCount,strategy:s.strategy}},createStreamingToolExecutor:n=>new _n(n),resolveToolEligibility:n=>({eligibleTools:n,blockedTools:[]})}}function nu(e={}){return{toolLoop:C_(e)}}var $_={info:()=>{},warn:()=>{},error:()=>{},debug:()=>{}};function A0(e){let t=new yn({llmTransport:e.llmTransport,toolInvoker:e.toolInvoker,apiKey:e.apiKey??"",log:e.logger??$_,maxRounds:e.maxRounds,runtimePorts:nu(e.runtime)});return{async*run(r,n){for await(let o of t.run(r,n))yield o}}}export{A0 as createEmbeddedAgent};
1
+ var xu=Object.create;var Si=Object.defineProperty;var Pu=Object.getOwnPropertyDescriptor;var Mu=Object.getOwnPropertyNames;var Iu=Object.getPrototypeOf,Ou=Object.prototype.hasOwnProperty;var _=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var Nu=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Mu(e))!Ou.call(t,o)&&o!==n&&Si(t,o,{get:()=>e[o],enumerable:!(r=Pu(e,o))||r.enumerable});return t};var ju=(t,e,n)=>(n=t!=null?xu(Iu(t)):{},Nu(e||!t||!t.__esModule?Si(n,"default",{value:t,enumerable:!0}):n,t));var Jt=_(L=>{"use strict";Object.defineProperty(L,"__esModule",{value:!0});L.regexpCode=L.getEsmExportName=L.getProperty=L.safeStringify=L.stringify=L.strConcat=L.addCodeArg=L.str=L._=L.nil=L._Code=L.Name=L.IDENTIFIER=L._CodeOrName=void 0;var Ht=class{};L._CodeOrName=Ht;L.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var nt=class extends Ht{constructor(e){if(super(),!L.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};L.Name=nt;var fe=class extends Ht{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((n,r)=>`${n}${r}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((n,r)=>(r instanceof nt&&(n[r.str]=(n[r.str]||0)+1),n),{})}};L._Code=fe;L.nil=new fe("");function Qi(t,...e){let n=[t[0]],r=0;for(;r<e.length;)no(n,e[r]),n.push(t[++r]);return new fe(n)}L._=Qi;var to=new fe("+");function Zi(t,...e){let n=[Wt(t[0])],r=0;for(;r<e.length;)n.push(to),no(n,e[r]),n.push(to,Wt(t[++r]));return Nd(n),new fe(n)}L.str=Zi;function no(t,e){e instanceof fe?t.push(...e._items):e instanceof nt?t.push(e):t.push(qd(e))}L.addCodeArg=no;function Nd(t){let e=1;for(;e<t.length-1;){if(t[e]===to){let n=jd(t[e-1],t[e+1]);if(n!==void 0){t.splice(e-1,3,n);continue}t[e++]="+"}e++}}function jd(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof nt||t[t.length-1]!=='"'?void 0:typeof e!="string"?`${t.slice(0,-1)}${e}"`:e[0]==='"'?t.slice(0,-1)+e.slice(1):void 0;if(typeof e=="string"&&e[0]==='"'&&!(t instanceof nt))return`"${t}${e.slice(1)}`}function Ld(t,e){return e.emptyStr()?t:t.emptyStr()?e:Zi`${t}${e}`}L.strConcat=Ld;function qd(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Wt(Array.isArray(t)?t.join(","):t)}function Dd(t){return new fe(Wt(t))}L.stringify=Dd;function Wt(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}L.safeStringify=Wt;function Fd(t){return typeof t=="string"&&L.IDENTIFIER.test(t)?new fe(`.${t}`):Qi`[${t}]`}L.getProperty=Fd;function Ud(t){if(typeof t=="string"&&L.IDENTIFIER.test(t))return new fe(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}L.getEsmExportName=Ud;function Bd(t){return new fe(t.toString())}L.regexpCode=Bd});var so=_(ce=>{"use strict";Object.defineProperty(ce,"__esModule",{value:!0});ce.ValueScope=ce.ValueScopeName=ce.Scope=ce.varKinds=ce.UsedValueState=void 0;var le=Jt(),ro=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},Bn;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(Bn||(ce.UsedValueState=Bn={}));ce.varKinds={const:new le.Name("const"),let:new le.Name("let"),var:new le.Name("var")};var zn=class{constructor({prefixes:e,parent:n}={}){this._names={},this._prefixes=e,this._parent=n}toName(e){return e instanceof le.Name?e:this.name(e)}name(e){return new le.Name(this._newName(e))}_newName(e){let n=this._names[e]||this._nameGroup(e);return`${e}${n.index++}`}_nameGroup(e){var n,r;if(!((r=(n=this._parent)===null||n===void 0?void 0:n._prefixes)===null||r===void 0)&&r.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};ce.Scope=zn;var Vn=class extends le.Name{constructor(e,n){super(n),this.prefix=e}setValue(e,{property:n,itemIndex:r}){this.value=e,this.scopePath=(0,le._)`.${new le.Name(n)}[${r}]`}};ce.ValueScopeName=Vn;var zd=(0,le._)`\n`,oo=class extends zn{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?zd:le.nil}}get(){return this._scope}name(e){return new Vn(e,this._newName(e))}value(e,n){var r;if(n.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let o=this.toName(e),{prefix:s}=o,i=(r=n.key)!==null&&r!==void 0?r:n.ref,a=this._values[s];if(a){let u=a.get(i);if(u)return u}else a=this._values[s]=new Map;a.set(i,o);let l=this._scope[s]||(this._scope[s]=[]),c=l.length;return l[c]=n.ref,o.setValue(n,{property:s,itemIndex:c}),o}getValue(e,n){let r=this._values[e];if(r)return r.get(n)}scopeRefs(e,n=this._values){return this._reduceValues(n,r=>{if(r.scopePath===void 0)throw new Error(`CodeGen: name "${r}" has no value`);return(0,le._)`${e}${r.scopePath}`})}scopeCode(e=this._values,n,r){return this._reduceValues(e,o=>{if(o.value===void 0)throw new Error(`CodeGen: name "${o}" has no value`);return o.value.code},n,r)}_reduceValues(e,n,r={},o){let s=le.nil;for(let i in e){let a=e[i];if(!a)continue;let l=r[i]=r[i]||new Map;a.forEach(c=>{if(l.has(c))return;l.set(c,Bn.Started);let u=n(c);if(u){let d=this.opts.es5?ce.varKinds.var:ce.varKinds.const;s=(0,le._)`${s}${d} ${c} = ${u};${this.opts._n}`}else if(u=o?.(c))s=(0,le._)`${s}${u}${this.opts._n}`;else throw new ro(c);l.set(c,Bn.Completed)})}return s}};ce.ValueScope=oo});var A=_(P=>{"use strict";Object.defineProperty(P,"__esModule",{value:!0});P.or=P.and=P.not=P.CodeGen=P.operators=P.varKinds=P.ValueScopeName=P.ValueScope=P.Scope=P.Name=P.regexpCode=P.stringify=P.getProperty=P.nil=P.strConcat=P.str=P._=void 0;var N=Jt(),Te=so(),Fe=Jt();Object.defineProperty(P,"_",{enumerable:!0,get:function(){return Fe._}});Object.defineProperty(P,"str",{enumerable:!0,get:function(){return Fe.str}});Object.defineProperty(P,"strConcat",{enumerable:!0,get:function(){return Fe.strConcat}});Object.defineProperty(P,"nil",{enumerable:!0,get:function(){return Fe.nil}});Object.defineProperty(P,"getProperty",{enumerable:!0,get:function(){return Fe.getProperty}});Object.defineProperty(P,"stringify",{enumerable:!0,get:function(){return Fe.stringify}});Object.defineProperty(P,"regexpCode",{enumerable:!0,get:function(){return Fe.regexpCode}});Object.defineProperty(P,"Name",{enumerable:!0,get:function(){return Fe.Name}});var Wn=so();Object.defineProperty(P,"Scope",{enumerable:!0,get:function(){return Wn.Scope}});Object.defineProperty(P,"ValueScope",{enumerable:!0,get:function(){return Wn.ValueScope}});Object.defineProperty(P,"ValueScopeName",{enumerable:!0,get:function(){return Wn.ValueScopeName}});Object.defineProperty(P,"varKinds",{enumerable:!0,get:function(){return Wn.varKinds}});P.operators={GT:new N._Code(">"),GTE:new N._Code(">="),LT:new N._Code("<"),LTE:new N._Code("<="),EQ:new N._Code("==="),NEQ:new N._Code("!=="),NOT:new N._Code("!"),OR:new N._Code("||"),AND:new N._Code("&&"),ADD:new N._Code("+")};var Oe=class{optimizeNodes(){return this}optimizeNames(e,n){return this}},io=class extends Oe{constructor(e,n,r){super(),this.varKind=e,this.name=n,this.rhs=r}render({es5:e,_n:n}){let r=e?Te.varKinds.var:this.varKind,o=this.rhs===void 0?"":` = ${this.rhs}`;return`${r} ${this.name}${o};`+n}optimizeNames(e,n){if(e[this.name.str])return this.rhs&&(this.rhs=kt(this.rhs,e,n)),this}get names(){return this.rhs instanceof N._CodeOrName?this.rhs.names:{}}},Kn=class extends Oe{constructor(e,n,r){super(),this.lhs=e,this.rhs=n,this.sideEffects=r}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,n){if(!(this.lhs instanceof N.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=kt(this.rhs,e,n),this}get names(){let e=this.lhs instanceof N.Name?{}:{...this.lhs.names};return Hn(e,this.rhs)}},ao=class extends Kn{constructor(e,n,r,o){super(e,r,o),this.op=n}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},lo=class extends Oe{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},co=class extends Oe{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},uo=class extends Oe{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},fo=class extends Oe{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,n){return this.code=kt(this.code,e,n),this}get names(){return this.code instanceof N._CodeOrName?this.code.names:{}}},Yt=class extends Oe{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((n,r)=>n+r.render(e),"")}optimizeNodes(){let{nodes:e}=this,n=e.length;for(;n--;){let r=e[n].optimizeNodes();Array.isArray(r)?e.splice(n,1,...r):r?e[n]=r:e.splice(n,1)}return e.length>0?this:void 0}optimizeNames(e,n){let{nodes:r}=this,o=r.length;for(;o--;){let s=r[o];s.optimizeNames(e,n)||(Vd(e,s.names),r.splice(o,1))}return r.length>0?this:void 0}get names(){return this.nodes.reduce((e,n)=>st(e,n.names),{})}},Ne=class extends Yt{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},po=class extends Yt{},vt=class extends Ne{};vt.kind="else";var rt=class t extends Ne{constructor(e,n){super(n),this.condition=e}render(e){let n=`if(${this.condition})`+super.render(e);return this.else&&(n+="else "+this.else.render(e)),n}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let n=this.else;if(n){let r=n.optimizeNodes();n=this.else=Array.isArray(r)?new vt(r):r}if(n)return e===!1?n instanceof t?n:n.nodes:this.nodes.length?this:new t(ea(e),n instanceof t?[n]:n.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,n){var r;if(this.else=(r=this.else)===null||r===void 0?void 0:r.optimizeNames(e,n),!!(super.optimizeNames(e,n)||this.else))return this.condition=kt(this.condition,e,n),this}get names(){let e=super.names;return Hn(e,this.condition),this.else&&st(e,this.else.names),e}};rt.kind="if";var ot=class extends Ne{};ot.kind="for";var mo=class extends ot{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,n){if(super.optimizeNames(e,n))return this.iteration=kt(this.iteration,e,n),this}get names(){return st(super.names,this.iteration.names)}},go=class extends ot{constructor(e,n,r,o){super(),this.varKind=e,this.name=n,this.from=r,this.to=o}render(e){let n=e.es5?Te.varKinds.var:this.varKind,{name:r,from:o,to:s}=this;return`for(${n} ${r}=${o}; ${r}<${s}; ${r}++)`+super.render(e)}get names(){let e=Hn(super.names,this.from);return Hn(e,this.to)}},Gn=class extends ot{constructor(e,n,r,o){super(),this.loop=e,this.varKind=n,this.name=r,this.iterable=o}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,n){if(super.optimizeNames(e,n))return this.iterable=kt(this.iterable,e,n),this}get names(){return st(super.names,this.iterable.names)}},Xt=class extends Ne{constructor(e,n,r){super(),this.name=e,this.args=n,this.async=r}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};Xt.kind="func";var Qt=class extends Yt{render(e){return"return "+super.render(e)}};Qt.kind="return";var ho=class extends Ne{render(e){let n="try"+super.render(e);return this.catch&&(n+=this.catch.render(e)),this.finally&&(n+=this.finally.render(e)),n}optimizeNodes(){var e,n;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(n=this.finally)===null||n===void 0||n.optimizeNodes(),this}optimizeNames(e,n){var r,o;return super.optimizeNames(e,n),(r=this.catch)===null||r===void 0||r.optimizeNames(e,n),(o=this.finally)===null||o===void 0||o.optimizeNames(e,n),this}get names(){let e=super.names;return this.catch&&st(e,this.catch.names),this.finally&&st(e,this.finally.names),e}},Zt=class extends Ne{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Zt.kind="catch";var en=class extends Ne{render(e){return"finally"+super.render(e)}};en.kind="finally";var yo=class{constructor(e,n={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...n,_n:n.lines?`
2
+ `:""},this._extScope=e,this._scope=new Te.Scope({parent:e}),this._nodes=[new po]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,n){let r=this._extScope.value(e,n);return(this._values[r.prefix]||(this._values[r.prefix]=new Set)).add(r),r}getScopeValue(e,n){return this._extScope.getValue(e,n)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,n,r,o){let s=this._scope.toName(n);return r!==void 0&&o&&(this._constants[s.str]=r),this._leafNode(new io(e,s,r)),s}const(e,n,r){return this._def(Te.varKinds.const,e,n,r)}let(e,n,r){return this._def(Te.varKinds.let,e,n,r)}var(e,n,r){return this._def(Te.varKinds.var,e,n,r)}assign(e,n,r){return this._leafNode(new Kn(e,n,r))}add(e,n){return this._leafNode(new ao(e,P.operators.ADD,n))}code(e){return typeof e=="function"?e():e!==N.nil&&this._leafNode(new fo(e)),this}object(...e){let n=["{"];for(let[r,o]of e)n.length>1&&n.push(","),n.push(r),(r!==o||this.opts.es5)&&(n.push(":"),(0,N.addCodeArg)(n,o));return n.push("}"),new N._Code(n)}if(e,n,r){if(this._blockNode(new rt(e)),n&&r)this.code(n).else().code(r).endIf();else if(n)this.code(n).endIf();else if(r)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new rt(e))}else(){return this._elseNode(new vt)}endIf(){return this._endBlockNode(rt,vt)}_for(e,n){return this._blockNode(e),n&&this.code(n).endFor(),this}for(e,n){return this._for(new mo(e),n)}forRange(e,n,r,o,s=this.opts.es5?Te.varKinds.var:Te.varKinds.let){let i=this._scope.toName(e);return this._for(new go(s,i,n,r),()=>o(i))}forOf(e,n,r,o=Te.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=n instanceof N.Name?n:this.var("_arr",n);return this.forRange("_i",0,(0,N._)`${i}.length`,a=>{this.var(s,(0,N._)`${i}[${a}]`),r(s)})}return this._for(new Gn("of",o,s,n),()=>r(s))}forIn(e,n,r,o=this.opts.es5?Te.varKinds.var:Te.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,N._)`Object.keys(${n})`,r);let s=this._scope.toName(e);return this._for(new Gn("in",o,s,n),()=>r(s))}endFor(){return this._endBlockNode(ot)}label(e){return this._leafNode(new lo(e))}break(e){return this._leafNode(new co(e))}return(e){let n=new Qt;if(this._blockNode(n),this.code(e),n.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Qt)}try(e,n,r){if(!n&&!r)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new ho;if(this._blockNode(o),this.code(e),n){let s=this.name("e");this._currNode=o.catch=new Zt(s),n(s)}return r&&(this._currNode=o.finally=new en,this.code(r)),this._endBlockNode(Zt,en)}throw(e){return this._leafNode(new uo(e))}block(e,n){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(n),this}endBlock(e){let n=this._blockStarts.pop();if(n===void 0)throw new Error("CodeGen: not in self-balancing block");let r=this._nodes.length-n;if(r<0||e!==void 0&&r!==e)throw new Error(`CodeGen: wrong number of nodes: ${r} vs ${e} expected`);return this._nodes.length=n,this}func(e,n=N.nil,r,o){return this._blockNode(new Xt(e,n,r)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Xt)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,n){let r=this._currNode;if(r instanceof e||n&&r instanceof n)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${n?`${e.kind}/${n.kind}`:e.kind}"`)}_elseNode(e){let n=this._currNode;if(!(n instanceof rt))throw new Error('CodeGen: "else" without "if"');return this._currNode=n.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let n=this._nodes;n[n.length-1]=e}};P.CodeGen=yo;function st(t,e){for(let n in e)t[n]=(t[n]||0)+(e[n]||0);return t}function Hn(t,e){return e instanceof N._CodeOrName?st(t,e.names):t}function kt(t,e,n){if(t instanceof N.Name)return r(t);if(!o(t))return t;return new N._Code(t._items.reduce((s,i)=>(i instanceof N.Name&&(i=r(i)),i instanceof N._Code?s.push(...i._items):s.push(i),s),[]));function r(s){let i=n[s.str];return i===void 0||e[s.str]!==1?s:(delete e[s.str],i)}function o(s){return s instanceof N._Code&&s._items.some(i=>i instanceof N.Name&&e[i.str]===1&&n[i.str]!==void 0)}}function Vd(t,e){for(let n in e)t[n]=(t[n]||0)-(e[n]||0)}function ea(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,N._)`!${_o(t)}`}P.not=ea;var Kd=ta(P.operators.AND);function Gd(...t){return t.reduce(Kd)}P.and=Gd;var Hd=ta(P.operators.OR);function Wd(...t){return t.reduce(Hd)}P.or=Wd;function ta(t){return(e,n)=>e===N.nil?n:n===N.nil?e:(0,N._)`${_o(e)} ${t} ${_o(n)}`}function _o(t){return t instanceof N.Name?t:(0,N._)`(${t})`}});var O=_(I=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});I.checkStrictMode=I.getErrorPath=I.Type=I.useFunc=I.setEvaluated=I.evaluatedPropsToName=I.mergeEvaluated=I.eachItem=I.unescapeJsonPointer=I.escapeJsonPointer=I.escapeFragment=I.unescapeFragment=I.schemaRefOrVal=I.schemaHasRulesButRef=I.schemaHasRules=I.checkUnknownRules=I.alwaysValidSchema=I.toHash=void 0;var U=A(),Jd=Jt();function Yd(t){let e={};for(let n of t)e[n]=!0;return e}I.toHash=Yd;function Xd(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(oa(t,e),!sa(e,t.self.RULES.all))}I.alwaysValidSchema=Xd;function oa(t,e=t.schema){let{opts:n,self:r}=t;if(!n.strictSchema||typeof e=="boolean")return;let o=r.RULES.keywords;for(let s in e)o[s]||la(t,`unknown keyword: "${s}"`)}I.checkUnknownRules=oa;function sa(t,e){if(typeof t=="boolean")return!t;for(let n in t)if(e[n])return!0;return!1}I.schemaHasRules=sa;function Qd(t,e){if(typeof t=="boolean")return!t;for(let n in t)if(n!=="$ref"&&e.all[n])return!0;return!1}I.schemaHasRulesButRef=Qd;function Zd({topSchemaRef:t,schemaPath:e},n,r,o){if(!o){if(typeof n=="number"||typeof n=="boolean")return n;if(typeof n=="string")return(0,U._)`${n}`}return(0,U._)`${t}${e}${(0,U.getProperty)(r)}`}I.schemaRefOrVal=Zd;function ef(t){return ia(decodeURIComponent(t))}I.unescapeFragment=ef;function tf(t){return encodeURIComponent(To(t))}I.escapeFragment=tf;function To(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}I.escapeJsonPointer=To;function ia(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}I.unescapeJsonPointer=ia;function nf(t,e){if(Array.isArray(t))for(let n of t)e(n);else e(t)}I.eachItem=nf;function na({mergeNames:t,mergeToName:e,mergeValues:n,resultToName:r}){return(o,s,i,a)=>{let l=i===void 0?s:i instanceof U.Name?(s instanceof U.Name?t(o,s,i):e(o,s,i),i):s instanceof U.Name?(e(o,i,s),s):n(s,i);return a===U.Name&&!(l instanceof U.Name)?r(o,l):l}}I.mergeEvaluated={props:na({mergeNames:(t,e,n)=>t.if((0,U._)`${n} !== true && ${e} !== undefined`,()=>{t.if((0,U._)`${e} === true`,()=>t.assign(n,!0),()=>t.assign(n,(0,U._)`${n} || {}`).code((0,U._)`Object.assign(${n}, ${e})`))}),mergeToName:(t,e,n)=>t.if((0,U._)`${n} !== true`,()=>{e===!0?t.assign(n,!0):(t.assign(n,(0,U._)`${n} || {}`),vo(t,n,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:aa}),items:na({mergeNames:(t,e,n)=>t.if((0,U._)`${n} !== true && ${e} !== undefined`,()=>t.assign(n,(0,U._)`${e} === true ? true : ${n} > ${e} ? ${n} : ${e}`)),mergeToName:(t,e,n)=>t.if((0,U._)`${n} !== true`,()=>t.assign(n,e===!0?!0:(0,U._)`${n} > ${e} ? ${n} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function aa(t,e){if(e===!0)return t.var("props",!0);let n=t.var("props",(0,U._)`{}`);return e!==void 0&&vo(t,n,e),n}I.evaluatedPropsToName=aa;function vo(t,e,n){Object.keys(n).forEach(r=>t.assign((0,U._)`${e}${(0,U.getProperty)(r)}`,!0))}I.setEvaluated=vo;var ra={};function rf(t,e){return t.scopeValue("func",{ref:e,code:ra[e.code]||(ra[e.code]=new Jd._Code(e.code))})}I.useFunc=rf;var bo;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(bo||(I.Type=bo={}));function of(t,e,n){if(t instanceof U.Name){let r=e===bo.Num;return n?r?(0,U._)`"[" + ${t} + "]"`:(0,U._)`"['" + ${t} + "']"`:r?(0,U._)`"/" + ${t}`:(0,U._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return n?(0,U.getProperty)(t).toString():"/"+To(t)}I.getErrorPath=of;function la(t,e,n=t.opts.strictSchema){if(n){if(e=`strict mode: ${e}`,n===!0)throw new Error(e);t.self.logger.warn(e)}}I.checkStrictMode=la});var pe=_(ko=>{"use strict";Object.defineProperty(ko,"__esModule",{value:!0});var ne=A(),sf={data:new ne.Name("data"),valCxt:new ne.Name("valCxt"),instancePath:new ne.Name("instancePath"),parentData:new ne.Name("parentData"),parentDataProperty:new ne.Name("parentDataProperty"),rootData:new ne.Name("rootData"),dynamicAnchors:new ne.Name("dynamicAnchors"),vErrors:new ne.Name("vErrors"),errors:new ne.Name("errors"),this:new ne.Name("this"),self:new ne.Name("self"),scope:new ne.Name("scope"),json:new ne.Name("json"),jsonPos:new ne.Name("jsonPos"),jsonLen:new ne.Name("jsonLen"),jsonPart:new ne.Name("jsonPart")};ko.default=sf});var tn=_(re=>{"use strict";Object.defineProperty(re,"__esModule",{value:!0});re.extendErrors=re.resetErrorsCount=re.reportExtraError=re.reportError=re.keyword$DataError=re.keywordError=void 0;var j=A(),Jn=O(),se=pe();re.keywordError={message:({keyword:t})=>(0,j.str)`must pass "${t}" keyword validation`};re.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,j.str)`"${t}" keyword must be ${e} ($data)`:(0,j.str)`"${t}" keyword is invalid ($data)`};function af(t,e=re.keywordError,n,r){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,l=da(t,e,n);r??(i||a)?ca(s,l):ua(o,(0,j._)`[${l}]`)}re.reportError=af;function lf(t,e=re.keywordError,n){let{it:r}=t,{gen:o,compositeRule:s,allErrors:i}=r,a=da(t,e,n);ca(o,a),s||i||ua(r,se.default.vErrors)}re.reportExtraError=lf;function cf(t,e){t.assign(se.default.errors,e),t.if((0,j._)`${se.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,j._)`${se.default.vErrors}.length`,e),()=>t.assign(se.default.vErrors,null)))}re.resetErrorsCount=cf;function uf({gen:t,keyword:e,schemaValue:n,data:r,errsCount:o,it:s}){if(o===void 0)throw new Error("ajv implementation error");let i=t.name("err");t.forRange("i",o,se.default.errors,a=>{t.const(i,(0,j._)`${se.default.vErrors}[${a}]`),t.if((0,j._)`${i}.instancePath === undefined`,()=>t.assign((0,j._)`${i}.instancePath`,(0,j.strConcat)(se.default.instancePath,s.errorPath))),t.assign((0,j._)`${i}.schemaPath`,(0,j.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,j._)`${i}.schema`,n),t.assign((0,j._)`${i}.data`,r))})}re.extendErrors=uf;function ca(t,e){let n=t.const("err",e);t.if((0,j._)`${se.default.vErrors} === null`,()=>t.assign(se.default.vErrors,(0,j._)`[${n}]`),(0,j._)`${se.default.vErrors}.push(${n})`),t.code((0,j._)`${se.default.errors}++`)}function ua(t,e){let{gen:n,validateName:r,schemaEnv:o}=t;o.$async?n.throw((0,j._)`new ${t.ValidationError}(${e})`):(n.assign((0,j._)`${r}.errors`,e),n.return(!1))}var it={keyword:new j.Name("keyword"),schemaPath:new j.Name("schemaPath"),params:new j.Name("params"),propertyName:new j.Name("propertyName"),message:new j.Name("message"),schema:new j.Name("schema"),parentSchema:new j.Name("parentSchema")};function da(t,e,n){let{createErrors:r}=t.it;return r===!1?(0,j._)`{}`:df(t,e,n)}function df(t,e,n={}){let{gen:r,it:o}=t,s=[ff(o,n),pf(t,n)];return mf(t,e,s),r.object(...s)}function ff({errorPath:t},{instancePath:e}){let n=e?(0,j.str)`${t}${(0,Jn.getErrorPath)(e,Jn.Type.Str)}`:t;return[se.default.instancePath,(0,j.strConcat)(se.default.instancePath,n)]}function pf({keyword:t,it:{errSchemaPath:e}},{schemaPath:n,parentSchema:r}){let o=r?e:(0,j.str)`${e}/${t}`;return n&&(o=(0,j.str)`${o}${(0,Jn.getErrorPath)(n,Jn.Type.Str)}`),[it.schemaPath,o]}function mf(t,{params:e,message:n},r){let{keyword:o,data:s,schemaValue:i,it:a}=t,{opts:l,propertyName:c,topSchemaRef:u,schemaPath:d}=a;r.push([it.keyword,o],[it.params,typeof e=="function"?e(t):e||(0,j._)`{}`]),l.messages&&r.push([it.message,typeof n=="function"?n(t):n]),l.verbose&&r.push([it.schema,i],[it.parentSchema,(0,j._)`${u}${d}`],[se.default.data,s]),c&&r.push([it.propertyName,c])}});var pa=_(Rt=>{"use strict";Object.defineProperty(Rt,"__esModule",{value:!0});Rt.boolOrEmptySchema=Rt.topBoolOrEmptySchema=void 0;var gf=tn(),hf=A(),yf=pe(),_f={message:"boolean schema is false"};function bf(t){let{gen:e,schema:n,validateName:r}=t;n===!1?fa(t,!1):typeof n=="object"&&n.$async===!0?e.return(yf.default.data):(e.assign((0,hf._)`${r}.errors`,null),e.return(!0))}Rt.topBoolOrEmptySchema=bf;function Tf(t,e){let{gen:n,schema:r}=t;r===!1?(n.var(e,!1),fa(t)):n.var(e,!0)}Rt.boolOrEmptySchema=Tf;function fa(t,e){let{gen:n,data:r}=t,o={gen:n,keyword:"false schema",data:r,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,gf.reportError)(o,_f,void 0,e)}});var Ro=_(wt=>{"use strict";Object.defineProperty(wt,"__esModule",{value:!0});wt.getRules=wt.isJSONType=void 0;var vf=["string","number","integer","boolean","null","object","array"],kf=new Set(vf);function Rf(t){return typeof t=="string"&&kf.has(t)}wt.isJSONType=Rf;function wf(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}wt.getRules=wf});var wo=_(Ue=>{"use strict";Object.defineProperty(Ue,"__esModule",{value:!0});Ue.shouldUseRule=Ue.shouldUseGroup=Ue.schemaHasRulesForType=void 0;function Ef({schema:t,self:e},n){let r=e.RULES.types[n];return r&&r!==!0&&ma(t,r)}Ue.schemaHasRulesForType=Ef;function ma(t,e){return e.rules.some(n=>ga(t,n))}Ue.shouldUseGroup=ma;function ga(t,e){var n;return t[e.keyword]!==void 0||((n=e.definition.implements)===null||n===void 0?void 0:n.some(r=>t[r]!==void 0))}Ue.shouldUseRule=ga});var nn=_(oe=>{"use strict";Object.defineProperty(oe,"__esModule",{value:!0});oe.reportTypeError=oe.checkDataTypes=oe.checkDataType=oe.coerceAndCheckDataType=oe.getJSONTypes=oe.getSchemaTypes=oe.DataType=void 0;var Cf=Ro(),$f=wo(),Sf=tn(),x=A(),ha=O(),Et;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Et||(oe.DataType=Et={}));function Af(t){let e=ya(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}oe.getSchemaTypes=Af;function ya(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(Cf.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}oe.getJSONTypes=ya;function xf(t,e){let{gen:n,data:r,opts:o}=t,s=Pf(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,$f.schemaHasRulesForType)(t,e[0]));if(i){let a=Co(e,r,o.strictNumbers,Et.Wrong);n.if(a,()=>{s.length?Mf(t,e,s):$o(t)})}return i}oe.coerceAndCheckDataType=xf;var _a=new Set(["string","number","integer","boolean","null"]);function Pf(t,e){return e?t.filter(n=>_a.has(n)||e==="array"&&n==="array"):[]}function Mf(t,e,n){let{gen:r,data:o,opts:s}=t,i=r.let("dataType",(0,x._)`typeof ${o}`),a=r.let("coerced",(0,x._)`undefined`);s.coerceTypes==="array"&&r.if((0,x._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>r.assign(o,(0,x._)`${o}[0]`).assign(i,(0,x._)`typeof ${o}`).if(Co(e,o,s.strictNumbers),()=>r.assign(a,o))),r.if((0,x._)`${a} !== undefined`);for(let c of n)(_a.has(c)||c==="array"&&s.coerceTypes==="array")&&l(c);r.else(),$o(t),r.endIf(),r.if((0,x._)`${a} !== undefined`,()=>{r.assign(o,a),If(t,a)});function l(c){switch(c){case"string":r.elseIf((0,x._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,x._)`"" + ${o}`).elseIf((0,x._)`${o} === null`).assign(a,(0,x._)`""`);return;case"number":r.elseIf((0,x._)`${i} == "boolean" || ${o} === null
3
+ || (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,x._)`+${o}`);return;case"integer":r.elseIf((0,x._)`${i} === "boolean" || ${o} === null
4
+ || (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,x._)`+${o}`);return;case"boolean":r.elseIf((0,x._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,x._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":r.elseIf((0,x._)`${o} === "" || ${o} === 0 || ${o} === false`),r.assign(a,null);return;case"array":r.elseIf((0,x._)`${i} === "string" || ${i} === "number"
5
+ || ${i} === "boolean" || ${o} === null`).assign(a,(0,x._)`[${o}]`)}}}function If({gen:t,parentData:e,parentDataProperty:n},r){t.if((0,x._)`${e} !== undefined`,()=>t.assign((0,x._)`${e}[${n}]`,r))}function Eo(t,e,n,r=Et.Correct){let o=r===Et.Correct?x.operators.EQ:x.operators.NEQ,s;switch(t){case"null":return(0,x._)`${e} ${o} null`;case"array":s=(0,x._)`Array.isArray(${e})`;break;case"object":s=(0,x._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,x._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,x._)`typeof ${e} ${o} ${t}`}return r===Et.Correct?s:(0,x.not)(s);function i(a=x.nil){return(0,x.and)((0,x._)`typeof ${e} == "number"`,a,n?(0,x._)`isFinite(${e})`:x.nil)}}oe.checkDataType=Eo;function Co(t,e,n,r){if(t.length===1)return Eo(t[0],e,n,r);let o,s=(0,ha.toHash)(t);if(s.array&&s.object){let i=(0,x._)`typeof ${e} != "object"`;o=s.null?i:(0,x._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=x.nil;s.number&&delete s.integer;for(let i in s)o=(0,x.and)(o,Eo(i,e,n,r));return o}oe.checkDataTypes=Co;var Of={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,x._)`{type: ${t}}`:(0,x._)`{type: ${e}}`};function $o(t){let e=Nf(t);(0,Sf.reportError)(e,Of)}oe.reportTypeError=$o;function Nf(t){let{gen:e,data:n,schema:r}=t,o=(0,ha.schemaRefOrVal)(t,r,"type");return{gen:e,keyword:"type",data:n,schema:r.type,schemaCode:o,schemaValue:o,parentSchema:r,params:{},it:t}}});var Ta=_(Yn=>{"use strict";Object.defineProperty(Yn,"__esModule",{value:!0});Yn.assignDefaults=void 0;var Ct=A(),jf=O();function Lf(t,e){let{properties:n,items:r}=t.schema;if(e==="object"&&n)for(let o in n)ba(t,o,n[o].default);else e==="array"&&Array.isArray(r)&&r.forEach((o,s)=>ba(t,s,o.default))}Yn.assignDefaults=Lf;function ba(t,e,n){let{gen:r,compositeRule:o,data:s,opts:i}=t;if(n===void 0)return;let a=(0,Ct._)`${s}${(0,Ct.getProperty)(e)}`;if(o){(0,jf.checkStrictMode)(t,`default is ignored for: ${a}`);return}let l=(0,Ct._)`${a} === undefined`;i.useDefaults==="empty"&&(l=(0,Ct._)`${l} || ${a} === null || ${a} === ""`),r.if(l,(0,Ct._)`${a} = ${(0,Ct.stringify)(n)}`)}});var me=_(F=>{"use strict";Object.defineProperty(F,"__esModule",{value:!0});F.validateUnion=F.validateArray=F.usePattern=F.callValidateCode=F.schemaProperties=F.allSchemaProperties=F.noPropertyInData=F.propertyInData=F.isOwnProperty=F.hasPropFunc=F.reportMissingProp=F.checkMissingProp=F.checkReportMissingProp=void 0;var z=A(),So=O(),Be=pe(),qf=O();function Df(t,e){let{gen:n,data:r,it:o}=t;n.if(xo(n,r,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,z._)`${e}`},!0),t.error()})}F.checkReportMissingProp=Df;function Ff({gen:t,data:e,it:{opts:n}},r,o){return(0,z.or)(...r.map(s=>(0,z.and)(xo(t,e,s,n.ownProperties),(0,z._)`${o} = ${s}`)))}F.checkMissingProp=Ff;function Uf(t,e){t.setParams({missingProperty:e},!0),t.error()}F.reportMissingProp=Uf;function va(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,z._)`Object.prototype.hasOwnProperty`})}F.hasPropFunc=va;function Ao(t,e,n){return(0,z._)`${va(t)}.call(${e}, ${n})`}F.isOwnProperty=Ao;function Bf(t,e,n,r){let o=(0,z._)`${e}${(0,z.getProperty)(n)} !== undefined`;return r?(0,z._)`${o} && ${Ao(t,e,n)}`:o}F.propertyInData=Bf;function xo(t,e,n,r){let o=(0,z._)`${e}${(0,z.getProperty)(n)} === undefined`;return r?(0,z.or)(o,(0,z.not)(Ao(t,e,n))):o}F.noPropertyInData=xo;function ka(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}F.allSchemaProperties=ka;function zf(t,e){return ka(e).filter(n=>!(0,So.alwaysValidSchema)(t,e[n]))}F.schemaProperties=zf;function Vf({schemaCode:t,data:e,it:{gen:n,topSchemaRef:r,schemaPath:o,errorPath:s},it:i},a,l,c){let u=c?(0,z._)`${t}, ${e}, ${r}${o}`:e,d=[[Be.default.instancePath,(0,z.strConcat)(Be.default.instancePath,s)],[Be.default.parentData,i.parentData],[Be.default.parentDataProperty,i.parentDataProperty],[Be.default.rootData,Be.default.rootData]];i.opts.dynamicRef&&d.push([Be.default.dynamicAnchors,Be.default.dynamicAnchors]);let f=(0,z._)`${u}, ${n.object(...d)}`;return l!==z.nil?(0,z._)`${a}.call(${l}, ${f})`:(0,z._)`${a}(${f})`}F.callValidateCode=Vf;var Kf=(0,z._)`new RegExp`;function Gf({gen:t,it:{opts:e}},n){let r=e.unicodeRegExp?"u":"",{regExp:o}=e.code,s=o(n,r);return t.scopeValue("pattern",{key:s.toString(),ref:s,code:(0,z._)`${o.code==="new RegExp"?Kf:(0,qf.useFunc)(t,o)}(${n}, ${r})`})}F.usePattern=Gf;function Hf(t){let{gen:e,data:n,keyword:r,it:o}=t,s=e.name("valid");if(o.allErrors){let a=e.let("valid",!0);return i(()=>e.assign(a,!1)),a}return e.var(s,!0),i(()=>e.break()),s;function i(a){let l=e.const("len",(0,z._)`${n}.length`);e.forRange("i",0,l,c=>{t.subschema({keyword:r,dataProp:c,dataPropType:So.Type.Num},s),e.if((0,z.not)(s),a)})}}F.validateArray=Hf;function Wf(t){let{gen:e,schema:n,keyword:r,it:o}=t;if(!Array.isArray(n))throw new Error("ajv implementation error");if(n.some(l=>(0,So.alwaysValidSchema)(o,l))&&!o.opts.unevaluated)return;let i=e.let("valid",!1),a=e.name("_valid");e.block(()=>n.forEach((l,c)=>{let u=t.subschema({keyword:r,schemaProp:c,compositeRule:!0},a);e.assign(i,(0,z._)`${i} || ${a}`),t.mergeValidEvaluated(u,a)||e.if((0,z.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}F.validateUnion=Wf});var Ea=_(Se=>{"use strict";Object.defineProperty(Se,"__esModule",{value:!0});Se.validateKeywordUsage=Se.validSchemaType=Se.funcKeywordCode=Se.macroKeywordCode=void 0;var ie=A(),at=pe(),Jf=me(),Yf=tn();function Xf(t,e){let{gen:n,keyword:r,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),l=wa(n,r,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let c=n.name("valid");t.subschema({schema:a,schemaPath:ie.nil,errSchemaPath:`${i.errSchemaPath}/${r}`,topSchemaRef:l,compositeRule:!0},c),t.pass(c,()=>t.error(!0))}Se.macroKeywordCode=Xf;function Qf(t,e){var n;let{gen:r,keyword:o,schema:s,parentSchema:i,$data:a,it:l}=t;ep(l,e);let c=!a&&e.compile?e.compile.call(l.self,s,i,l):e.validate,u=wa(r,o,c),d=r.let("valid");t.block$data(d,f),t.ok((n=e.valid)!==null&&n!==void 0?n:d);function f(){if(e.errors===!1)p(),e.modifying&&Ra(t),b(()=>t.error());else{let T=e.async?g():m();e.modifying&&Ra(t),b(()=>Zf(t,T))}}function g(){let T=r.let("ruleErrs",null);return r.try(()=>p((0,ie._)`await `),C=>r.assign(d,!1).if((0,ie._)`${C} instanceof ${l.ValidationError}`,()=>r.assign(T,(0,ie._)`${C}.errors`),()=>r.throw(C))),T}function m(){let T=(0,ie._)`${u}.errors`;return r.assign(T,null),p(ie.nil),T}function p(T=e.async?(0,ie._)`await `:ie.nil){let C=l.opts.passContext?at.default.this:at.default.self,w=!("compile"in e&&!a||e.schema===!1);r.assign(d,(0,ie._)`${T}${(0,Jf.callValidateCode)(t,u,C,w)}`,e.modifying)}function b(T){var C;r.if((0,ie.not)((C=e.valid)!==null&&C!==void 0?C:d),T)}}Se.funcKeywordCode=Qf;function Ra(t){let{gen:e,data:n,it:r}=t;e.if(r.parentData,()=>e.assign(n,(0,ie._)`${r.parentData}[${r.parentDataProperty}]`))}function Zf(t,e){let{gen:n}=t;n.if((0,ie._)`Array.isArray(${e})`,()=>{n.assign(at.default.vErrors,(0,ie._)`${at.default.vErrors} === null ? ${e} : ${at.default.vErrors}.concat(${e})`).assign(at.default.errors,(0,ie._)`${at.default.vErrors}.length`),(0,Yf.extendErrors)(t)},()=>t.error())}function ep({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function wa(t,e,n){if(n===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof n=="function"?{ref:n}:{ref:n,code:(0,ie.stringify)(n)})}function tp(t,e,n=!1){return!e.length||e.some(r=>r==="array"?Array.isArray(t):r==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==r||n&&typeof t>"u")}Se.validSchemaType=tp;function np({schema:t,opts:e,self:n,errSchemaPath:r},o,s){if(Array.isArray(o.keyword)?!o.keyword.includes(s):o.keyword!==s)throw new Error("ajv implementation error");let i=o.dependencies;if(i?.some(a=>!Object.prototype.hasOwnProperty.call(t,a)))throw new Error(`parent schema must have dependencies of ${s}: ${i.join(",")}`);if(o.validateSchema&&!o.validateSchema(t[s])){let l=`keyword "${s}" value is invalid at path "${r}": `+n.errorsText(o.validateSchema.errors);if(e.validateSchema==="log")n.logger.error(l);else throw new Error(l)}}Se.validateKeywordUsage=np});var $a=_(ze=>{"use strict";Object.defineProperty(ze,"__esModule",{value:!0});ze.extendSubschemaMode=ze.extendSubschemaData=ze.getSubschema=void 0;var Ae=A(),Ca=O();function rp(t,{keyword:e,schemaProp:n,schema:r,schemaPath:o,errSchemaPath:s,topSchemaRef:i}){if(e!==void 0&&r!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let a=t.schema[e];return n===void 0?{schema:a,schemaPath:(0,Ae._)`${t.schemaPath}${(0,Ae.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[n],schemaPath:(0,Ae._)`${t.schemaPath}${(0,Ae.getProperty)(e)}${(0,Ae.getProperty)(n)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Ca.escapeFragment)(n)}`}}if(r!==void 0){if(o===void 0||s===void 0||i===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:r,schemaPath:o,topSchemaRef:i,errSchemaPath:s}}throw new Error('either "keyword" or "schema" must be passed')}ze.getSubschema=rp;function op(t,e,{dataProp:n,dataPropType:r,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&n!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(n!==void 0){let{errorPath:c,dataPathArr:u,opts:d}=e,f=a.let("data",(0,Ae._)`${e.data}${(0,Ae.getProperty)(n)}`,!0);l(f),t.errorPath=(0,Ae.str)`${c}${(0,Ca.getErrorPath)(n,r,d.jsPropertySyntax)}`,t.parentDataProperty=(0,Ae._)`${n}`,t.dataPathArr=[...u,t.parentDataProperty]}if(o!==void 0){let c=o instanceof Ae.Name?o:a.let("data",o,!0);l(c),i!==void 0&&(t.propertyName=i)}s&&(t.dataTypes=s);function l(c){t.data=c,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,c]}}ze.extendSubschemaData=op;function sp(t,{jtdDiscriminator:e,jtdMetadata:n,compositeRule:r,createErrors:o,allErrors:s}){r!==void 0&&(t.compositeRule=r),o!==void 0&&(t.createErrors=o),s!==void 0&&(t.allErrors=s),t.jtdDiscriminator=e,t.jtdMetadata=n}ze.extendSubschemaMode=sp});var Po=_((XT,Sa)=>{"use strict";Sa.exports=function t(e,n){if(e===n)return!0;if(e&&n&&typeof e=="object"&&typeof n=="object"){if(e.constructor!==n.constructor)return!1;var r,o,s;if(Array.isArray(e)){if(r=e.length,r!=n.length)return!1;for(o=r;o--!==0;)if(!t(e[o],n[o]))return!1;return!0}if(e.constructor===RegExp)return e.source===n.source&&e.flags===n.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===n.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===n.toString();if(s=Object.keys(e),r=s.length,r!==Object.keys(n).length)return!1;for(o=r;o--!==0;)if(!Object.prototype.hasOwnProperty.call(n,s[o]))return!1;for(o=r;o--!==0;){var i=s[o];if(!t(e[i],n[i]))return!1}return!0}return e!==e&&n!==n}});var xa=_((QT,Aa)=>{"use strict";var Ve=Aa.exports=function(t,e,n){typeof e=="function"&&(n=e,e={}),n=e.cb||n;var r=typeof n=="function"?n:n.pre||function(){},o=n.post||function(){};Xn(e,r,o,t,"",t)};Ve.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Ve.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Ve.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Ve.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 Xn(t,e,n,r,o,s,i,a,l,c){if(r&&typeof r=="object"&&!Array.isArray(r)){e(r,o,s,i,a,l,c);for(var u in r){var d=r[u];if(Array.isArray(d)){if(u in Ve.arrayKeywords)for(var f=0;f<d.length;f++)Xn(t,e,n,d[f],o+"/"+u+"/"+f,s,o,u,r,f)}else if(u in Ve.propsKeywords){if(d&&typeof d=="object")for(var g in d)Xn(t,e,n,d[g],o+"/"+u+"/"+ip(g),s,o,u,r,g)}else(u in Ve.keywords||t.allKeys&&!(u in Ve.skipKeywords))&&Xn(t,e,n,d,o+"/"+u,s,o,u,r)}n(r,o,s,i,a,l,c)}}function ip(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var rn=_(ue=>{"use strict";Object.defineProperty(ue,"__esModule",{value:!0});ue.getSchemaRefs=ue.resolveUrl=ue.normalizeId=ue._getFullPath=ue.getFullPath=ue.inlineRef=void 0;var ap=O(),lp=Po(),cp=xa(),up=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function dp(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Mo(t):e?Pa(t)<=e:!1}ue.inlineRef=dp;var fp=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Mo(t){for(let e in t){if(fp.has(e))return!0;let n=t[e];if(Array.isArray(n)&&n.some(Mo)||typeof n=="object"&&Mo(n))return!0}return!1}function Pa(t){let e=0;for(let n in t){if(n==="$ref")return 1/0;if(e++,!up.has(n)&&(typeof t[n]=="object"&&(0,ap.eachItem)(t[n],r=>e+=Pa(r)),e===1/0))return 1/0}return e}function Ma(t,e="",n){n!==!1&&(e=$t(e));let r=t.parse(e);return Ia(t,r)}ue.getFullPath=Ma;function Ia(t,e){return t.serialize(e).split("#")[0]+"#"}ue._getFullPath=Ia;var pp=/#\/?$/;function $t(t){return t?t.replace(pp,""):""}ue.normalizeId=$t;function mp(t,e,n){return n=$t(n),t.resolve(e,n)}ue.resolveUrl=mp;var gp=/^[a-z_][-a-z0-9._]*$/i;function hp(t,e){if(typeof t=="boolean")return{};let{schemaId:n,uriResolver:r}=this.opts,o=$t(t[n]||e),s={"":o},i=Ma(r,o,!1),a={},l=new Set;return cp(t,{allKeys:!0},(d,f,g,m)=>{if(m===void 0)return;let p=i+f,b=s[m];typeof d[n]=="string"&&(b=T.call(this,d[n])),C.call(this,d.$anchor),C.call(this,d.$dynamicAnchor),s[f]=b;function T(w){let q=this.opts.uriResolver.resolve;if(w=$t(b?q(b,w):w),l.has(w))throw u(w);l.add(w);let R=this.refs[w];return typeof R=="string"&&(R=this.refs[R]),typeof R=="object"?c(d,R.schema,w):w!==$t(p)&&(w[0]==="#"?(c(d,a[w],w),a[w]=d):this.refs[w]=p),w}function C(w){if(typeof w=="string"){if(!gp.test(w))throw new Error(`invalid anchor "${w}"`);T.call(this,`#${w}`)}}}),a;function c(d,f,g){if(f!==void 0&&!lp(d,f))throw u(g)}function u(d){return new Error(`reference "${d}" resolves to more than one schema`)}}ue.getSchemaRefs=hp});var an=_(Ke=>{"use strict";Object.defineProperty(Ke,"__esModule",{value:!0});Ke.getData=Ke.KeywordCxt=Ke.validateFunctionCode=void 0;var qa=pa(),Oa=nn(),Oo=wo(),Qn=nn(),yp=Ta(),sn=Ea(),Io=$a(),v=A(),$=pe(),_p=rn(),je=O(),on=tn();function bp(t){if(Ua(t)&&(Ba(t),Fa(t))){kp(t);return}Da(t,()=>(0,qa.topBoolOrEmptySchema)(t))}Ke.validateFunctionCode=bp;function Da({gen:t,validateName:e,schema:n,schemaEnv:r,opts:o},s){o.code.es5?t.func(e,(0,v._)`${$.default.data}, ${$.default.valCxt}`,r.$async,()=>{t.code((0,v._)`"use strict"; ${Na(n,o)}`),vp(t,o),t.code(s)}):t.func(e,(0,v._)`${$.default.data}, ${Tp(o)}`,r.$async,()=>t.code(Na(n,o)).code(s))}function Tp(t){return(0,v._)`{${$.default.instancePath}="", ${$.default.parentData}, ${$.default.parentDataProperty}, ${$.default.rootData}=${$.default.data}${t.dynamicRef?(0,v._)`, ${$.default.dynamicAnchors}={}`:v.nil}}={}`}function vp(t,e){t.if($.default.valCxt,()=>{t.var($.default.instancePath,(0,v._)`${$.default.valCxt}.${$.default.instancePath}`),t.var($.default.parentData,(0,v._)`${$.default.valCxt}.${$.default.parentData}`),t.var($.default.parentDataProperty,(0,v._)`${$.default.valCxt}.${$.default.parentDataProperty}`),t.var($.default.rootData,(0,v._)`${$.default.valCxt}.${$.default.rootData}`),e.dynamicRef&&t.var($.default.dynamicAnchors,(0,v._)`${$.default.valCxt}.${$.default.dynamicAnchors}`)},()=>{t.var($.default.instancePath,(0,v._)`""`),t.var($.default.parentData,(0,v._)`undefined`),t.var($.default.parentDataProperty,(0,v._)`undefined`),t.var($.default.rootData,$.default.data),e.dynamicRef&&t.var($.default.dynamicAnchors,(0,v._)`{}`)})}function kp(t){let{schema:e,opts:n,gen:r}=t;Da(t,()=>{n.$comment&&e.$comment&&Va(t),$p(t),r.let($.default.vErrors,null),r.let($.default.errors,0),n.unevaluated&&Rp(t),za(t),xp(t)})}function Rp(t){let{gen:e,validateName:n}=t;t.evaluated=e.const("evaluated",(0,v._)`${n}.evaluated`),e.if((0,v._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,v._)`${t.evaluated}.props`,(0,v._)`undefined`)),e.if((0,v._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,v._)`${t.evaluated}.items`,(0,v._)`undefined`))}function Na(t,e){let n=typeof t=="object"&&t[e.schemaId];return n&&(e.code.source||e.code.process)?(0,v._)`/*# sourceURL=${n} */`:v.nil}function wp(t,e){if(Ua(t)&&(Ba(t),Fa(t))){Ep(t,e);return}(0,qa.boolOrEmptySchema)(t,e)}function Fa({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let n in t)if(e.RULES.all[n])return!0;return!1}function Ua(t){return typeof t.schema!="boolean"}function Ep(t,e){let{schema:n,gen:r,opts:o}=t;o.$comment&&n.$comment&&Va(t),Sp(t),Ap(t);let s=r.const("_errs",$.default.errors);za(t,s),r.var(e,(0,v._)`${s} === ${$.default.errors}`)}function Ba(t){(0,je.checkUnknownRules)(t),Cp(t)}function za(t,e){if(t.opts.jtd)return ja(t,[],!1,e);let n=(0,Oa.getSchemaTypes)(t.schema),r=(0,Oa.coerceAndCheckDataType)(t,n);ja(t,n,!r,e)}function Cp(t){let{schema:e,errSchemaPath:n,opts:r,self:o}=t;e.$ref&&r.ignoreKeywordsWithRef&&(0,je.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${n}"`)}function $p(t){let{schema:e,opts:n}=t;e.default!==void 0&&n.useDefaults&&n.strictSchema&&(0,je.checkStrictMode)(t,"default is ignored in the schema root")}function Sp(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,_p.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function Ap(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function Va({gen:t,schemaEnv:e,schema:n,errSchemaPath:r,opts:o}){let s=n.$comment;if(o.$comment===!0)t.code((0,v._)`${$.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,v.str)`${r}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,v._)`${$.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function xp(t){let{gen:e,schemaEnv:n,validateName:r,ValidationError:o,opts:s}=t;n.$async?e.if((0,v._)`${$.default.errors} === 0`,()=>e.return($.default.data),()=>e.throw((0,v._)`new ${o}(${$.default.vErrors})`)):(e.assign((0,v._)`${r}.errors`,$.default.vErrors),s.unevaluated&&Pp(t),e.return((0,v._)`${$.default.errors} === 0`))}function Pp({gen:t,evaluated:e,props:n,items:r}){n instanceof v.Name&&t.assign((0,v._)`${e}.props`,n),r instanceof v.Name&&t.assign((0,v._)`${e}.items`,r)}function ja(t,e,n,r){let{gen:o,schema:s,data:i,allErrors:a,opts:l,self:c}=t,{RULES:u}=c;if(s.$ref&&(l.ignoreKeywordsWithRef||!(0,je.schemaHasRulesButRef)(s,u))){o.block(()=>Ga(t,"$ref",u.all.$ref.definition));return}l.jtd||Mp(t,e),o.block(()=>{for(let f of u.rules)d(f);d(u.post)});function d(f){(0,Oo.shouldUseGroup)(s,f)&&(f.type?(o.if((0,Qn.checkDataType)(f.type,i,l.strictNumbers)),La(t,f),e.length===1&&e[0]===f.type&&n&&(o.else(),(0,Qn.reportTypeError)(t)),o.endIf()):La(t,f),a||o.if((0,v._)`${$.default.errors} === ${r||0}`))}}function La(t,e){let{gen:n,schema:r,opts:{useDefaults:o}}=t;o&&(0,yp.assignDefaults)(t,e.type),n.block(()=>{for(let s of e.rules)(0,Oo.shouldUseRule)(r,s)&&Ga(t,s.keyword,s.definition,e.type)})}function Mp(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(Ip(t,e),t.opts.allowUnionTypes||Op(t,e),Np(t,t.dataTypes))}function Ip(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(n=>{Ka(t.dataTypes,n)||No(t,`type "${n}" not allowed by context "${t.dataTypes.join(",")}"`)}),Lp(t,e)}}function Op(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&No(t,"use allowUnionTypes to allow union type keyword")}function Np(t,e){let n=t.self.RULES.all;for(let r in n){let o=n[r];if(typeof o=="object"&&(0,Oo.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>jp(e,i))&&No(t,`missing type "${s.join(",")}" for keyword "${r}"`)}}}function jp(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function Ka(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function Lp(t,e){let n=[];for(let r of t.dataTypes)Ka(e,r)?n.push(r):e.includes("integer")&&r==="number"&&n.push("integer");t.dataTypes=n}function No(t,e){let n=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${n}" (strictTypes)`,(0,je.checkStrictMode)(t,e,t.opts.strictTypes)}var Zn=class{constructor(e,n,r){if((0,sn.validateKeywordUsage)(e,n,r),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=r,this.data=e.data,this.schema=e.schema[r],this.$data=n.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,je.schemaRefOrVal)(e,this.schema,r,this.$data),this.schemaType=n.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=n,this.$data)this.schemaCode=e.gen.const("vSchema",Ha(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,sn.validSchemaType)(this.schema,n.schemaType,n.allowUndefined))throw new Error(`${r} value must be ${JSON.stringify(n.schemaType)}`);("code"in n?n.trackErrors:n.errors!==!1)&&(this.errsCount=e.gen.const("_errs",$.default.errors))}result(e,n,r){this.failResult((0,v.not)(e),n,r)}failResult(e,n,r){this.gen.if(e),r?r():this.error(),n?(this.gen.else(),n(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,n){this.failResult((0,v.not)(e),void 0,n)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:n}=this;this.fail((0,v._)`${n} !== undefined && (${(0,v.or)(this.invalid$data(),e)})`)}error(e,n,r){if(n){this.setParams(n),this._error(e,r),this.setParams({});return}this._error(e,r)}_error(e,n){(e?on.reportExtraError:on.reportError)(this,this.def.error,n)}$dataError(){(0,on.reportError)(this,this.def.$dataError||on.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,on.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,n){n?Object.assign(this.params,e):this.params=e}block$data(e,n,r=v.nil){this.gen.block(()=>{this.check$data(e,r),n()})}check$data(e=v.nil,n=v.nil){if(!this.$data)return;let{gen:r,schemaCode:o,schemaType:s,def:i}=this;r.if((0,v.or)((0,v._)`${o} === undefined`,n)),e!==v.nil&&r.assign(e,!0),(s.length||i.validateSchema)&&(r.elseIf(this.invalid$data()),this.$dataError(),e!==v.nil&&r.assign(e,!1)),r.else()}invalid$data(){let{gen:e,schemaCode:n,schemaType:r,def:o,it:s}=this;return(0,v.or)(i(),a());function i(){if(r.length){if(!(n instanceof v.Name))throw new Error("ajv implementation error");let l=Array.isArray(r)?r:[r];return(0,v._)`${(0,Qn.checkDataTypes)(l,n,s.opts.strictNumbers,Qn.DataType.Wrong)}`}return v.nil}function a(){if(o.validateSchema){let l=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,v._)`!${l}(${n})`}return v.nil}}subschema(e,n){let r=(0,Io.getSubschema)(this.it,e);(0,Io.extendSubschemaData)(r,this.it,e),(0,Io.extendSubschemaMode)(r,e);let o={...this.it,...r,items:void 0,props:void 0};return wp(o,n),o}mergeEvaluated(e,n){let{it:r,gen:o}=this;r.opts.unevaluated&&(r.props!==!0&&e.props!==void 0&&(r.props=je.mergeEvaluated.props(o,e.props,r.props,n)),r.items!==!0&&e.items!==void 0&&(r.items=je.mergeEvaluated.items(o,e.items,r.items,n)))}mergeValidEvaluated(e,n){let{it:r,gen:o}=this;if(r.opts.unevaluated&&(r.props!==!0||r.items!==!0))return o.if(n,()=>this.mergeEvaluated(e,v.Name)),!0}};Ke.KeywordCxt=Zn;function Ga(t,e,n,r){let o=new Zn(t,n,e);"code"in n?n.code(o,r):o.$data&&n.validate?(0,sn.funcKeywordCode)(o,n):"macro"in n?(0,sn.macroKeywordCode)(o,n):(n.compile||n.validate)&&(0,sn.funcKeywordCode)(o,n)}var qp=/^\/(?:[^~]|~0|~1)*$/,Dp=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function Ha(t,{dataLevel:e,dataNames:n,dataPathArr:r}){let o,s;if(t==="")return $.default.rootData;if(t[0]==="/"){if(!qp.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=$.default.rootData}else{let c=Dp.exec(t);if(!c)throw new Error(`Invalid JSON-pointer: ${t}`);let u=+c[1];if(o=c[2],o==="#"){if(u>=e)throw new Error(l("property/index",u));return r[e-u]}if(u>e)throw new Error(l("data",u));if(s=n[e-u],!o)return s}let i=s,a=o.split("/");for(let c of a)c&&(s=(0,v._)`${s}${(0,v.getProperty)((0,je.unescapeJsonPointer)(c))}`,i=(0,v._)`${i} && ${s}`);return i;function l(c,u){return`Cannot access ${c} ${u} levels up, current level is ${e}`}}Ke.getData=Ha});var er=_(Lo=>{"use strict";Object.defineProperty(Lo,"__esModule",{value:!0});var jo=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Lo.default=jo});var ln=_(Fo=>{"use strict";Object.defineProperty(Fo,"__esModule",{value:!0});var qo=rn(),Do=class extends Error{constructor(e,n,r,o){super(o||`can't resolve reference ${r} from id ${n}`),this.missingRef=(0,qo.resolveUrl)(e,n,r),this.missingSchema=(0,qo.normalizeId)((0,qo.getFullPath)(e,this.missingRef))}};Fo.default=Do});var cn=_(ge=>{"use strict";Object.defineProperty(ge,"__esModule",{value:!0});ge.resolveSchema=ge.getCompilingSchema=ge.resolveRef=ge.compileSchema=ge.SchemaEnv=void 0;var ve=A(),Fp=er(),lt=pe(),ke=rn(),Wa=O(),Up=an(),St=class{constructor(e){var n;this.refs={},this.dynamicAnchors={};let r;typeof e.schema=="object"&&(r=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(n=e.baseId)!==null&&n!==void 0?n:(0,ke.normalizeId)(r?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=r?.$async,this.refs={}}};ge.SchemaEnv=St;function Bo(t){let e=Ja.call(this,t);if(e)return e;let n=(0,ke.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:r,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new ve.CodeGen(this.scope,{es5:r,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:Fp.default,code:(0,ve._)`require("ajv/dist/runtime/validation_error").default`}));let l=i.scopeName("validate");t.validateName=l;let c={gen:i,allErrors:this.opts.allErrors,data:lt.default.data,parentData:lt.default.parentData,parentDataProperty:lt.default.parentDataProperty,dataNames:[lt.default.data],dataPathArr:[ve.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,ve.stringify)(t.schema)}:{ref:t.schema}),validateName:l,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:n,baseId:t.baseId||n,schemaPath:ve.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,ve._)`""`,opts:this.opts,self:this},u;try{this._compilations.add(t),(0,Up.validateFunctionCode)(c),i.optimize(this.opts.code.optimize);let d=i.toString();u=`${i.scopeRefs(lt.default.scope)}return ${d}`,this.opts.code.process&&(u=this.opts.code.process(u,t));let g=new Function(`${lt.default.self}`,`${lt.default.scope}`,u)(this,this.scope.get());if(this.scope.value(l,{ref:g}),g.errors=null,g.schema=t.schema,g.schemaEnv=t,t.$async&&(g.$async=!0),this.opts.code.source===!0&&(g.source={validateName:l,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:m,items:p}=c;g.evaluated={props:m instanceof ve.Name?void 0:m,items:p instanceof ve.Name?void 0:p,dynamicProps:m instanceof ve.Name,dynamicItems:p instanceof ve.Name},g.source&&(g.source.evaluated=(0,ve.stringify)(g.evaluated))}return t.validate=g,t}catch(d){throw delete t.validate,delete t.validateName,u&&this.logger.error("Error compiling schema, function code:",u),d}finally{this._compilations.delete(t)}}ge.compileSchema=Bo;function Bp(t,e,n){var r;n=(0,ke.resolveUrl)(this.opts.uriResolver,e,n);let o=t.refs[n];if(o)return o;let s=Kp.call(this,t,n);if(s===void 0){let i=(r=t.localRefs)===null||r===void 0?void 0:r[n],{schemaId:a}=this.opts;i&&(s=new St({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[n]=zp.call(this,s)}ge.resolveRef=Bp;function zp(t){return(0,ke.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:Bo.call(this,t)}function Ja(t){for(let e of this._compilations)if(Vp(e,t))return e}ge.getCompilingSchema=Ja;function Vp(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function Kp(t,e){let n;for(;typeof(n=this.refs[e])=="string";)e=n;return n||this.schemas[e]||tr.call(this,t,e)}function tr(t,e){let n=this.opts.uriResolver.parse(e),r=(0,ke._getFullPath)(this.opts.uriResolver,n),o=(0,ke.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&r===o)return Uo.call(this,n,t);let s=(0,ke.normalizeId)(r),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=tr.call(this,t,i);return typeof a?.schema!="object"?void 0:Uo.call(this,n,a)}if(typeof i?.schema=="object"){if(i.validate||Bo.call(this,i),s===(0,ke.normalizeId)(e)){let{schema:a}=i,{schemaId:l}=this.opts,c=a[l];return c&&(o=(0,ke.resolveUrl)(this.opts.uriResolver,o,c)),new St({schema:a,schemaId:l,root:t,baseId:o})}return Uo.call(this,n,i)}}ge.resolveSchema=tr;var Gp=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Uo(t,{baseId:e,schema:n,root:r}){var o;if(((o=t.fragment)===null||o===void 0?void 0:o[0])!=="/")return;for(let a of t.fragment.slice(1).split("/")){if(typeof n=="boolean")return;let l=n[(0,Wa.unescapeFragment)(a)];if(l===void 0)return;n=l;let c=typeof n=="object"&&n[this.opts.schemaId];!Gp.has(a)&&c&&(e=(0,ke.resolveUrl)(this.opts.uriResolver,e,c))}let s;if(typeof n!="boolean"&&n.$ref&&!(0,Wa.schemaHasRulesButRef)(n,this.RULES)){let a=(0,ke.resolveUrl)(this.opts.uriResolver,e,n.$ref);s=tr.call(this,r,a)}let{schemaId:i}=this.opts;if(s=s||new St({schema:n,schemaId:i,root:r,baseId:e}),s.schema!==s.root.schema)return s}});var Ya=_((ov,Hp)=>{Hp.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 Ko=_((sv,nl)=>{"use strict";var Wp=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),Qa=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),zo=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),Za=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),Jp=RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);function Vo(t){let e="",n=0,r=0;for(r=0;r<t.length;r++)if(n=t[r].charCodeAt(0),n!==48){if(!(n>=48&&n<=57||n>=65&&n<=70||n>=97&&n<=102))return"";e+=t[r];break}for(r+=1;r<t.length;r++){if(n=t[r].charCodeAt(0),!(n>=48&&n<=57||n>=65&&n<=70||n>=97&&n<=102))return"";e+=t[r]}return e}var Yp=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function Xa(t){return t.length=0,!0}function Xp(t,e,n){if(t.length){let r=Vo(t);if(r!=="")e.push(r);else return n.error=!0,!1;t.length=0}return!0}function Qp(t){let e=0,n={error:!1,address:"",zone:""},r=[],o=[],s=!1,i=!1,a=Xp;for(let l=0;l<t.length;l++){let c=t[l];if(!(c==="["||c==="]"))if(c===":"){if(s===!0&&(i=!0),!a(o,r,n))break;if(++e>7){n.error=!0;break}l>0&&t[l-1]===":"&&(s=!0),r.push(":");continue}else if(c==="%"){if(!a(o,r,n))break;a=Xa}else{o.push(c);continue}}return o.length&&(a===Xa?n.zone=o.join(""):i?r.push(o.join("")):r.push(Vo(o))),n.address=r.join(""),n}function el(t){if(Zp(t,":")<2)return{host:t,isIPV6:!1};let e=Qp(t);if(e.error)return{host:t,isIPV6:!1};{let n=e.address,r=e.address;return e.zone&&(n+="%"+e.zone,r+="%25"+e.zone),{host:n,isIPV6:!0,escapedHost:r}}}function Zp(t,e){let n=0;for(let r=0;r<t.length;r++)t[r]===e&&n++;return n}function em(t){let e=t,n=[],r=-1,o=0;for(;o=e.length;){if(o===1){if(e===".")break;if(e==="/"){n.push("/");break}else{n.push(e);break}}else if(o===2){if(e[0]==="."){if(e[1]===".")break;if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&(e[1]==="."||e[1]==="/")){n.push("/");break}}else if(o===3&&e==="/.."){n.length!==0&&n.pop(),n.push("/");break}if(e[0]==="."){if(e[1]==="."){if(e[2]==="/"){e=e.slice(3);continue}}else if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&e[1]==="."){if(e[2]==="/"){e=e.slice(2);continue}else if(e[2]==="."&&e[3]==="/"){e=e.slice(3),n.length!==0&&n.pop();continue}}if((r=e.indexOf("/",1))===-1){n.push(e);break}else n.push(e.slice(0,r)),e=e.slice(r)}return n.join("")}var tm={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},nm=/[@/?#:]/g,rm=/[@/?#]/g;function tl(t,e){let n=e?rm:nm;return n.lastIndex=0,t.replace(n,r=>tm[r])}function om(t,e=!1){if(t.indexOf("%")===-1)return t;let n="";for(let r=0;r<t.length;r++){if(t[r]==="%"&&r+2<t.length){let o=t.slice(r+1,r+3);if(zo(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));e&&Za(i)?n+=i:n+="%"+s,r+=2;continue}}n+=t[r]}return n}function sm(t){let e="";for(let n=0;n<t.length;n++){if(t[n]==="%"&&n+2<t.length){let r=t.slice(n+1,n+3);if(zo(r)){let o=r.toUpperCase(),s=String.fromCharCode(parseInt(o,16));s!=="."&&Za(s)?e+=s:e+="%"+o,n+=2;continue}}Jp(t[n])?e+=t[n]:e+=escape(t[n])}return e}function im(t){let e="";for(let n=0;n<t.length;n++){if(t[n]==="%"&&n+2<t.length){let r=t.slice(n+1,n+3);if(zo(r)){e+="%"+r.toUpperCase(),n+=2;continue}}e+=escape(t[n])}return e}function am(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let n=unescape(t.host);if(!Qa(n)){let r=el(n);r.isIPV6===!0?n=`[${r.escapedHost}]`:n=tl(n,!1)}e.push(n)}return(typeof t.port=="number"||typeof t.port=="string")&&(e.push(":"),e.push(String(t.port))),e.length?e.join(""):void 0}nl.exports={nonSimpleDomain:Yp,recomposeAuthority:am,reescapeHostDelimiters:tl,normalizePercentEncoding:om,normalizePathEncoding:sm,escapePreservingEscapes:im,removeDotSegments:em,isIPv4:Qa,isUUID:Wp,normalizeIPv6:el,stringArrayToHexStripped:Vo}});var al=_((iv,il)=>{"use strict";var{isUUID:lm}=Ko(),cm=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,um=["http","https","ws","wss","urn","urn:uuid"];function dm(t){return um.indexOf(t)!==-1}function Go(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function rl(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function ol(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function fm(t){return t.secure=Go(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function pm(t){if((t.port===(Go(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,n]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=n,t.resourceName=void 0}return t.fragment=void 0,t}function mm(t,e){if(!t.path)return t.error="URN can not be parsed",t;let n=t.path.match(cm);if(n){let r=e.scheme||t.scheme||"urn";t.nid=n[1].toLowerCase(),t.nss=n[2];let o=`${r}:${e.nid||t.nid}`,s=Ho(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function gm(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let n=e.scheme||t.scheme||"urn",r=t.nid.toLowerCase(),o=`${n}:${e.nid||r}`,s=Ho(o);s&&(t=s.serialize(t,e));let i=t,a=t.nss;return i.path=`${r||e.nid}:${a}`,e.skipEscape=!0,i}function hm(t,e){let n=t;return n.uuid=n.nss,n.nss=void 0,!e.tolerant&&(!n.uuid||!lm(n.uuid))&&(n.error=n.error||"UUID is not valid."),n}function ym(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var sl={scheme:"http",domainHost:!0,parse:rl,serialize:ol},_m={scheme:"https",domainHost:sl.domainHost,parse:rl,serialize:ol},nr={scheme:"ws",domainHost:!0,parse:fm,serialize:pm},bm={scheme:"wss",domainHost:nr.domainHost,parse:nr.parse,serialize:nr.serialize},Tm={scheme:"urn",parse:mm,serialize:gm,skipNormalize:!0},vm={scheme:"urn:uuid",parse:hm,serialize:ym,skipNormalize:!0},rr={http:sl,https:_m,ws:nr,wss:bm,urn:Tm,"urn:uuid":vm};Object.setPrototypeOf(rr,null);function Ho(t){return t&&(rr[t]||rr[t.toLowerCase()])||void 0}il.exports={wsIsSecure:Go,SCHEMES:rr,isValidSchemeName:dm,getSchemeHandler:Ho}});var pl=_((av,or)=>{"use strict";var{normalizeIPv6:km,removeDotSegments:un,recomposeAuthority:Rm,normalizePercentEncoding:wm,normalizePathEncoding:Em,escapePreservingEscapes:Cm,reescapeHostDelimiters:$m,isIPv4:Sm,nonSimpleDomain:Am}=Ko(),{SCHEMES:xm,getSchemeHandler:cl}=al();function Pm(t,e){return typeof t=="string"?t=jm(t,e):typeof t=="object"&&(t=At(ct(t,e),e)),t}function Mm(t,e,n){let r=n?Object.assign({scheme:"null"},n):{scheme:"null"},o=ul(At(t,r),At(e,r),r,!0);return r.skipEscape=!0,ct(o,r)}function ul(t,e,n,r){let o={};return r||(t=At(ct(t,n),n),e=At(ct(e,n),n)),n=n||{},!n.tolerant&&e.scheme?(o.scheme=e.scheme,o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=un(e.path||""),o.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=un(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=un(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?o.path="/"+e.path:t.path?o.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:o.path=e.path,o.path=un(o.path)),o.query=e.query):(o.path=t.path,e.query!==void 0?o.query=e.query:o.query=t.query),o.userinfo=t.userinfo,o.host=t.host,o.port=t.port),o.scheme=t.scheme),o.fragment=e.fragment,o}function Im(t,e,n){let r=ll(t,n),o=ll(e,n);return r!==void 0&&o!==void 0&&r.toLowerCase()===o.toLowerCase()}function ct(t,e){let n={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},r=Object.assign({},e),o=[],s=cl(r.scheme||n.scheme);s&&s.serialize&&s.serialize(n,r),n.path!==void 0&&(r.skipEscape?n.path=wm(n.path):(n.path=Cm(n.path),n.scheme!==void 0&&(n.path=n.path.split("%3A").join(":")))),r.reference!=="suffix"&&n.scheme&&o.push(n.scheme,":");let i=Rm(n);if(i!==void 0&&(r.reference!=="suffix"&&o.push("//"),o.push(i),n.path&&n.path[0]!=="/"&&o.push("/")),n.path!==void 0){let a=n.path;!r.absolutePath&&(!s||!s.absolutePath)&&(a=un(a)),i===void 0&&a[0]==="/"&&a[1]==="/"&&(a="/%2F"+a.slice(2)),o.push(a)}return n.query!==void 0&&o.push("?",n.query),n.fragment!==void 0&&o.push("#",n.fragment),o.join("")}var Om=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Nm(t,e){if(e[2]!==void 0&&t.path&&t.path[0]!=="/")return'URI path must start with "/" when authority is present.';if(typeof t.port=="number"&&(t.port<0||t.port>65535))return"URI port is malformed."}function dl(t,e){let n=Object.assign({},e),r={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},o=!1,s=!1;n.reference==="suffix"&&(n.scheme?t=n.scheme+":"+t:t="//"+t);let i=t.match(Om);if(i){r.scheme=i[1],r.userinfo=i[3],r.host=i[4],r.port=parseInt(i[5],10),r.path=i[6]||"",r.query=i[7],r.fragment=i[8],isNaN(r.port)&&(r.port=i[5]);let a=Nm(r,i);if(a!==void 0&&(r.error=r.error||a,o=!0),r.host)if(Sm(r.host)===!1){let u=km(r.host);r.host=u.host.toLowerCase(),s=u.isIPV6}else s=!0;r.scheme===void 0&&r.userinfo===void 0&&r.host===void 0&&r.port===void 0&&r.query===void 0&&!r.path?r.reference="same-document":r.scheme===void 0?r.reference="relative":r.fragment===void 0?r.reference="absolute":r.reference="uri",n.reference&&n.reference!=="suffix"&&n.reference!==r.reference&&(r.error=r.error||"URI is not a "+n.reference+" reference.");let l=cl(n.scheme||r.scheme);if(!n.unicodeSupport&&(!l||!l.unicodeSupport)&&r.host&&(n.domainHost||l&&l.domainHost)&&s===!1&&Am(r.host))try{r.host=URL.domainToASCII(r.host.toLowerCase())}catch(c){r.error=r.error||"Host's domain name can not be converted to ASCII: "+c}if((!l||l&&!l.skipNormalize)&&(t.indexOf("%")!==-1&&(r.scheme!==void 0&&(r.scheme=unescape(r.scheme)),r.host!==void 0&&(r.host=$m(unescape(r.host),s))),r.path&&(r.path=Em(r.path)),r.fragment))try{r.fragment=encodeURI(decodeURIComponent(r.fragment))}catch{r.error=r.error||"URI malformed"}l&&l.parse&&l.parse(r,n)}else r.error=r.error||"URI can not be parsed.";return{parsed:r,malformedAuthorityOrPort:o}}function At(t,e){return dl(t,e).parsed}function jm(t,e){return fl(t,e).normalized}function fl(t,e){let{parsed:n,malformedAuthorityOrPort:r}=dl(t,e);return{normalized:r?t:ct(n,e),malformedAuthorityOrPort:r}}function ll(t,e){if(typeof t=="string"){let{normalized:n,malformedAuthorityOrPort:r}=fl(t,e);return r?void 0:n}if(typeof t=="object")return ct(t,e)}var Wo={SCHEMES:xm,normalize:Pm,resolve:Mm,resolveComponent:ul,equal:Im,serialize:ct,parse:At};or.exports=Wo;or.exports.default=Wo;or.exports.fastUri=Wo});var gl=_(Jo=>{"use strict";Object.defineProperty(Jo,"__esModule",{value:!0});var ml=pl();ml.code='require("ajv/dist/runtime/uri").default';Jo.default=ml});var Rl=_(Q=>{"use strict";Object.defineProperty(Q,"__esModule",{value:!0});Q.CodeGen=Q.Name=Q.nil=Q.stringify=Q.str=Q._=Q.KeywordCxt=void 0;var Lm=an();Object.defineProperty(Q,"KeywordCxt",{enumerable:!0,get:function(){return Lm.KeywordCxt}});var xt=A();Object.defineProperty(Q,"_",{enumerable:!0,get:function(){return xt._}});Object.defineProperty(Q,"str",{enumerable:!0,get:function(){return xt.str}});Object.defineProperty(Q,"stringify",{enumerable:!0,get:function(){return xt.stringify}});Object.defineProperty(Q,"nil",{enumerable:!0,get:function(){return xt.nil}});Object.defineProperty(Q,"Name",{enumerable:!0,get:function(){return xt.Name}});Object.defineProperty(Q,"CodeGen",{enumerable:!0,get:function(){return xt.CodeGen}});var qm=er(),Tl=ln(),Dm=Ro(),dn=cn(),Fm=A(),fn=rn(),sr=nn(),Xo=O(),hl=Ya(),Um=gl(),vl=(t,e)=>new RegExp(t,e);vl.code="new RegExp";var Bm=["removeAdditional","useDefaults","coerceTypes"],zm=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),Vm={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."},Km={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},yl=200;function Gm(t){var e,n,r,o,s,i,a,l,c,u,d,f,g,m,p,b,T,C,w,q,R,ee,W,we,Ee;let ye=t.strict,Me=(e=t.code)===null||e===void 0?void 0:e.optimize,Je=Me===!0||Me===void 0?1:Me||0,mt=(r=(n=t.code)===null||n===void 0?void 0:n.regExp)!==null&&r!==void 0?r:vl,Cn=(o=t.uriResolver)!==null&&o!==void 0?o:Um.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:ye)!==null&&i!==void 0?i:!0,strictNumbers:(l=(a=t.strictNumbers)!==null&&a!==void 0?a:ye)!==null&&l!==void 0?l:!0,strictTypes:(u=(c=t.strictTypes)!==null&&c!==void 0?c:ye)!==null&&u!==void 0?u:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:ye)!==null&&f!==void 0?f:"log",strictRequired:(m=(g=t.strictRequired)!==null&&g!==void 0?g:ye)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:Je,regExp:mt}:{optimize:Je,regExp:mt},loopRequired:(p=t.loopRequired)!==null&&p!==void 0?p:yl,loopEnum:(b=t.loopEnum)!==null&&b!==void 0?b:yl,meta:(T=t.meta)!==null&&T!==void 0?T:!0,messages:(C=t.messages)!==null&&C!==void 0?C:!0,inlineRefs:(w=t.inlineRefs)!==null&&w!==void 0?w:!0,schemaId:(q=t.schemaId)!==null&&q!==void 0?q:"$id",addUsedSchema:(R=t.addUsedSchema)!==null&&R!==void 0?R:!0,validateSchema:(ee=t.validateSchema)!==null&&ee!==void 0?ee:!0,validateFormats:(W=t.validateFormats)!==null&&W!==void 0?W:!0,unicodeRegExp:(we=t.unicodeRegExp)!==null&&we!==void 0?we:!0,int32range:(Ee=t.int32range)!==null&&Ee!==void 0?Ee:!0,uriResolver:Cn}}var pn=class{constructor(e={}){this.schemas={},this.refs={},this.formats=Object.create(null),this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...Gm(e)};let{es5:n,lines:r}=this.opts.code;this.scope=new Fm.ValueScope({scope:{},prefixes:zm,es5:n,lines:r}),this.logger=Qm(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,Dm.getRules)(),_l.call(this,Vm,e,"NOT SUPPORTED"),_l.call(this,Km,e,"DEPRECATED","warn"),this._metaOpts=Ym.call(this),e.formats&&Wm.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&Jm.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),Hm.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:n,schemaId:r}=this.opts,o=hl;r==="id"&&(o={...hl},o.id=o.$id,delete o.$id),n&&e&&this.addMetaSchema(o,o[r],!1)}defaultMeta(){let{meta:e,schemaId:n}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[n]||e:void 0}validate(e,n){let r;if(typeof e=="string"){if(r=this.getSchema(e),!r)throw new Error(`no schema with key or ref "${e}"`)}else r=this.compile(e);let o=r(n);return"$async"in r||(this.errors=r.errors),o}compile(e,n){let r=this._addSchema(e,n);return r.validate||this._compileSchemaEnv(r)}compileAsync(e,n){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:r}=this.opts;return o.call(this,e,n);async function o(u,d){await s.call(this,u.$schema);let f=this._addSchema(u,d);return f.validate||i.call(this,f)}async function s(u){u&&!this.getSchema(u)&&await o.call(this,{$ref:u},!0)}async function i(u){try{return this._compileSchemaEnv(u)}catch(d){if(!(d instanceof Tl.default))throw d;return a.call(this,d),await l.call(this,d.missingSchema),i.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 l(u){let d=await c.call(this,u);this.refs[u]||await s.call(this,d.$schema),this.refs[u]||this.addSchema(d,u,n)}async function c(u){let d=this._loading[u];if(d)return d;try{return await(this._loading[u]=r(u))}finally{delete this._loading[u]}}}addSchema(e,n,r,o=this.opts.validateSchema){if(Array.isArray(e)){for(let i of e)this.addSchema(i,void 0,r,o);return this}let s;if(typeof e=="object"){let{schemaId:i}=this.opts;if(s=e[i],s!==void 0&&typeof s!="string")throw new Error(`schema ${i} must be string`)}return n=(0,fn.normalizeId)(n||s),this._checkUnique(n),this.schemas[n]=this._addSchema(e,r,n,o,!0),this}addMetaSchema(e,n,r=this.opts.validateSchema){return this.addSchema(e,n,!0,r),this}validateSchema(e,n){if(typeof e=="boolean")return!0;let r;if(r=e.$schema,r!==void 0&&typeof r!="string")throw new Error("$schema must be a string");if(r=r||this.opts.defaultMeta||this.defaultMeta(),!r)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let o=this.validate(r,e);if(!o&&n){let s="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(s);else throw new Error(s)}return o}getSchema(e){let n;for(;typeof(n=bl.call(this,e))=="string";)e=n;if(n===void 0){let{schemaId:r}=this.opts,o=new dn.SchemaEnv({schema:{},schemaId:r});if(n=dn.resolveSchema.call(this,o,e),!n)return;this.refs[e]=n}return n.validate||this._compileSchemaEnv(n)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let n=bl.call(this,e);return typeof n=="object"&&this._cache.delete(n.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let n=e;this._cache.delete(n);let r=e[this.opts.schemaId];return r&&(r=(0,fn.normalizeId)(r),delete this.schemas[r],delete this.refs[r]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let n of e)this.addKeyword(n);return this}addKeyword(e,n){let r;if(typeof e=="string")r=e,typeof n=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),n.keyword=r);else if(typeof e=="object"&&n===void 0){if(n=e,r=n.keyword,Array.isArray(r)&&!r.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(eg.call(this,r,n),!n)return(0,Xo.eachItem)(r,s=>Yo.call(this,s)),this;ng.call(this,n);let o={...n,type:(0,sr.getJSONTypes)(n.type),schemaType:(0,sr.getJSONTypes)(n.schemaType)};return(0,Xo.eachItem)(r,o.type.length===0?s=>Yo.call(this,s,o):s=>o.type.forEach(i=>Yo.call(this,s,o,i))),this}getKeyword(e){let n=this.RULES.all[e];return typeof n=="object"?n.definition:!!n}removeKeyword(e){let{RULES:n}=this;delete n.keywords[e],delete n.all[e];for(let r of n.rules){let o=r.rules.findIndex(s=>s.keyword===e);o>=0&&r.rules.splice(o,1)}return this}addFormat(e,n){return typeof n=="string"&&(n=new RegExp(n)),this.formats[e]=n,this}errorsText(e=this.errors,{separator:n=", ",dataVar:r="data"}={}){return!e||e.length===0?"No errors":e.map(o=>`${r}${o.instancePath} ${o.message}`).reduce((o,s)=>o+n+s)}$dataMetaSchema(e,n){let r=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let o of n){let s=o.split("/").slice(1),i=e;for(let a of s)i=i[a];for(let a in r){let l=r[a];if(typeof l!="object")continue;let{$data:c}=l.definition,u=i[a];c&&u&&(i[a]=kl(u))}}return e}_removeAllSchemas(e,n){for(let r in e){let o=e[r];(!n||n.test(r))&&(typeof o=="string"?delete e[r]:o&&!o.meta&&(this._cache.delete(o.schema),delete e[r]))}}_addSchema(e,n,r,o=this.opts.validateSchema,s=this.opts.addUsedSchema){let i,{schemaId:a}=this.opts;if(typeof e=="object")i=e[a];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let l=this._cache.get(e);if(l!==void 0)return l;r=(0,fn.normalizeId)(i||r);let c=fn.getSchemaRefs.call(this,e,r);return l=new dn.SchemaEnv({schema:e,schemaId:a,meta:n,baseId:r,localRefs:c}),this._cache.set(l.schema,l),s&&!r.startsWith("#")&&(r&&this._checkUnique(r),this.refs[r]=l),o&&this.validateSchema(e,!0),l}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):dn.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let n=this.opts;this.opts=this._metaOpts;try{dn.compileSchema.call(this,e)}finally{this.opts=n}}};pn.ValidationError=qm.default;pn.MissingRefError=Tl.default;Q.default=pn;function _l(t,e,n,r="error"){for(let o in t){let s=o;s in e&&this.logger[r](`${n}: option ${o}. ${t[s]}`)}}function bl(t){return t=(0,fn.normalizeId)(t),this.schemas[t]||this.refs[t]}function Hm(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function Wm(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function Jm(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let n=t[e];n.keyword||(n.keyword=e),this.addKeyword(n)}}function Ym(){let t={...this.opts};for(let e of Bm)delete t[e];return t}var Xm={log(){},warn(){},error(){}};function Qm(t){if(t===!1)return Xm;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var Zm=/^[a-z_$][a-z0-9_$:-]*$/i;function eg(t,e){let{RULES:n}=this;if((0,Xo.eachItem)(t,r=>{if(n.keywords[r])throw new Error(`Keyword ${r} is already defined`);if(!Zm.test(r))throw new Error(`Keyword ${r} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function Yo(t,e,n){var r;let o=e?.post;if(n&&o)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:s}=this,i=o?s.post:s.rules.find(({type:l})=>l===n);if(i||(i={type:n,rules:[]},s.rules.push(i)),s.keywords[t]=!0,!e)return;let a={keyword:t,definition:{...e,type:(0,sr.getJSONTypes)(e.type),schemaType:(0,sr.getJSONTypes)(e.schemaType)}};e.before?tg.call(this,i,a,e.before):i.rules.push(a),s.all[t]=a,(r=e.implements)===null||r===void 0||r.forEach(l=>this.addKeyword(l))}function tg(t,e,n){let r=t.rules.findIndex(o=>o.keyword===n);r>=0?t.rules.splice(r,0,e):(t.rules.push(e),this.logger.warn(`rule ${n} is not defined`))}function ng(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=kl(e)),t.validateSchema=this.compile(e,!0))}var rg={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function kl(t){return{anyOf:[t,rg]}}});var wl=_(Qo=>{"use strict";Object.defineProperty(Qo,"__esModule",{value:!0});var og={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Qo.default=og});var lr=_(ut=>{"use strict";Object.defineProperty(ut,"__esModule",{value:!0});ut.callRef=ut.getValidate=void 0;var sg=ln(),El=me(),de=A(),Pt=pe(),Cl=cn(),ir=O(),ig={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:n,it:r}=t,{baseId:o,schemaEnv:s,validateName:i,opts:a,self:l}=r,{root:c}=s;if((n==="#"||n==="#/")&&o===c.baseId)return d();let u=Cl.resolveRef.call(l,c,o,n);if(u===void 0)throw new sg.default(r.opts.uriResolver,o,n);if(u instanceof Cl.SchemaEnv)return f(u);return g(u);function d(){if(s===c)return ar(t,i,s,s.$async);let m=e.scopeValue("root",{ref:c});return ar(t,(0,de._)`${m}.validate`,c,c.$async)}function f(m){let p=$l(t,m);ar(t,p,m,m.$async)}function g(m){let p=e.scopeValue("schema",a.code.source===!0?{ref:m,code:(0,de.stringify)(m)}:{ref:m}),b=e.name("valid"),T=t.subschema({schema:m,dataTypes:[],schemaPath:de.nil,topSchemaRef:p,errSchemaPath:n},b);t.mergeEvaluated(T),t.ok(b)}}};function $l(t,e){let{gen:n}=t;return e.validate?n.scopeValue("validate",{ref:e.validate}):(0,de._)`${n.scopeValue("wrapper",{ref:e})}.validate`}ut.getValidate=$l;function ar(t,e,n,r){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:l}=s,c=l.passContext?Pt.default.this:de.nil;r?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,de._)`await ${(0,El.callValidateCode)(t,e,c)}`),g(e),i||o.assign(m,!0)},p=>{o.if((0,de._)`!(${p} instanceof ${s.ValidationError})`,()=>o.throw(p)),f(p),i||o.assign(m,!1)}),t.ok(m)}function d(){t.result((0,El.callValidateCode)(t,e,c),()=>g(e),()=>f(e))}function f(m){let p=(0,de._)`${m}.errors`;o.assign(Pt.default.vErrors,(0,de._)`${Pt.default.vErrors} === null ? ${p} : ${Pt.default.vErrors}.concat(${p})`),o.assign(Pt.default.errors,(0,de._)`${Pt.default.vErrors}.length`)}function g(m){var p;if(!s.opts.unevaluated)return;let b=(p=n?.validate)===null||p===void 0?void 0:p.evaluated;if(s.props!==!0)if(b&&!b.dynamicProps)b.props!==void 0&&(s.props=ir.mergeEvaluated.props(o,b.props,s.props));else{let T=o.var("props",(0,de._)`${m}.evaluated.props`);s.props=ir.mergeEvaluated.props(o,T,s.props,de.Name)}if(s.items!==!0)if(b&&!b.dynamicItems)b.items!==void 0&&(s.items=ir.mergeEvaluated.items(o,b.items,s.items));else{let T=o.var("items",(0,de._)`${m}.evaluated.items`);s.items=ir.mergeEvaluated.items(o,T,s.items,de.Name)}}}ut.callRef=ar;ut.default=ig});var Sl=_(Zo=>{"use strict";Object.defineProperty(Zo,"__esModule",{value:!0});var ag=wl(),lg=lr(),cg=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",ag.default,lg.default];Zo.default=cg});var Al=_(es=>{"use strict";Object.defineProperty(es,"__esModule",{value:!0});var cr=A(),Ge=cr.operators,ur={maximum:{okStr:"<=",ok:Ge.LTE,fail:Ge.GT},minimum:{okStr:">=",ok:Ge.GTE,fail:Ge.LT},exclusiveMaximum:{okStr:"<",ok:Ge.LT,fail:Ge.GTE},exclusiveMinimum:{okStr:">",ok:Ge.GT,fail:Ge.LTE}},ug={message:({keyword:t,schemaCode:e})=>(0,cr.str)`must be ${ur[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,cr._)`{comparison: ${ur[t].okStr}, limit: ${e}}`},dg={keyword:Object.keys(ur),type:"number",schemaType:"number",$data:!0,error:ug,code(t){let{keyword:e,data:n,schemaCode:r}=t;t.fail$data((0,cr._)`${n} ${ur[e].fail} ${r} || isNaN(${n})`)}};es.default=dg});var xl=_(ts=>{"use strict";Object.defineProperty(ts,"__esModule",{value:!0});var mn=A(),fg={message:({schemaCode:t})=>(0,mn.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,mn._)`{multipleOf: ${t}}`},pg={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:fg,code(t){let{gen:e,data:n,schemaCode:r,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,mn._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,mn._)`${i} !== parseInt(${i})`;t.fail$data((0,mn._)`(${r} === 0 || (${i} = ${n}/${r}, ${a}))`)}};ts.default=pg});var Ml=_(ns=>{"use strict";Object.defineProperty(ns,"__esModule",{value:!0});function Pl(t){let e=t.length,n=0,r=0,o;for(;r<e;)n++,o=t.charCodeAt(r++),o>=55296&&o<=56319&&r<e&&(o=t.charCodeAt(r),(o&64512)===56320&&r++);return n}ns.default=Pl;Pl.code='require("ajv/dist/runtime/ucs2length").default'});var Il=_(rs=>{"use strict";Object.defineProperty(rs,"__esModule",{value:!0});var dt=A(),mg=O(),gg=Ml(),hg={message({keyword:t,schemaCode:e}){let n=t==="maxLength"?"more":"fewer";return(0,dt.str)`must NOT have ${n} than ${e} characters`},params:({schemaCode:t})=>(0,dt._)`{limit: ${t}}`},yg={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:hg,code(t){let{keyword:e,data:n,schemaCode:r,it:o}=t,s=e==="maxLength"?dt.operators.GT:dt.operators.LT,i=o.opts.unicode===!1?(0,dt._)`${n}.length`:(0,dt._)`${(0,mg.useFunc)(t.gen,gg.default)}(${n})`;t.fail$data((0,dt._)`${i} ${s} ${r}`)}};rs.default=yg});var Ol=_(os=>{"use strict";Object.defineProperty(os,"__esModule",{value:!0});var _g=me(),bg=O(),Mt=A(),Tg={message:({schemaCode:t})=>(0,Mt.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Mt._)`{pattern: ${t}}`},vg={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:Tg,code(t){let{gen:e,data:n,$data:r,schema:o,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"";if(r){let{regExp:l}=i.opts.code,c=l.code==="new RegExp"?(0,Mt._)`new RegExp`:(0,bg.useFunc)(e,l),u=e.let("valid");e.try(()=>e.assign(u,(0,Mt._)`${c}(${s}, ${a}).test(${n})`),()=>e.assign(u,!1)),t.fail$data((0,Mt._)`!${u}`)}else{let l=(0,_g.usePattern)(t,o);t.fail$data((0,Mt._)`!${l}.test(${n})`)}}};os.default=vg});var Nl=_(ss=>{"use strict";Object.defineProperty(ss,"__esModule",{value:!0});var gn=A(),kg={message({keyword:t,schemaCode:e}){let n=t==="maxProperties"?"more":"fewer";return(0,gn.str)`must NOT have ${n} than ${e} properties`},params:({schemaCode:t})=>(0,gn._)`{limit: ${t}}`},Rg={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:kg,code(t){let{keyword:e,data:n,schemaCode:r}=t,o=e==="maxProperties"?gn.operators.GT:gn.operators.LT;t.fail$data((0,gn._)`Object.keys(${n}).length ${o} ${r}`)}};ss.default=Rg});var jl=_(is=>{"use strict";Object.defineProperty(is,"__esModule",{value:!0});var hn=me(),yn=A(),wg=O(),Eg={message:({params:{missingProperty:t}})=>(0,yn.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,yn._)`{missingProperty: ${t}}`},Cg={keyword:"required",type:"object",schemaType:"array",$data:!0,error:Eg,code(t){let{gen:e,schema:n,schemaCode:r,data:o,$data:s,it:i}=t,{opts:a}=i;if(!s&&n.length===0)return;let l=n.length>=a.loopRequired;if(i.allErrors?c():u(),a.strictRequired){let g=t.parentSchema.properties,{definedProperties:m}=t.it;for(let p of n)if(g?.[p]===void 0&&!m.has(p)){let b=i.schemaEnv.baseId+i.errSchemaPath,T=`required property "${p}" is not defined at "${b}" (strictRequired)`;(0,wg.checkStrictMode)(i,T,i.opts.strictRequired)}}function c(){if(l||s)t.block$data(yn.nil,d);else for(let g of n)(0,hn.checkReportMissingProp)(t,g)}function u(){let g=e.let("missing");if(l||s){let m=e.let("valid",!0);t.block$data(m,()=>f(g,m)),t.ok(m)}else e.if((0,hn.checkMissingProp)(t,n,g)),(0,hn.reportMissingProp)(t,g),e.else()}function d(){e.forOf("prop",r,g=>{t.setParams({missingProperty:g}),e.if((0,hn.noPropertyInData)(e,o,g,a.ownProperties),()=>t.error())})}function f(g,m){t.setParams({missingProperty:g}),e.forOf(g,r,()=>{e.assign(m,(0,hn.propertyInData)(e,o,g,a.ownProperties)),e.if((0,yn.not)(m),()=>{t.error(),e.break()})},yn.nil)}}};is.default=Cg});var Ll=_(as=>{"use strict";Object.defineProperty(as,"__esModule",{value:!0});var _n=A(),$g={message({keyword:t,schemaCode:e}){let n=t==="maxItems"?"more":"fewer";return(0,_n.str)`must NOT have ${n} than ${e} items`},params:({schemaCode:t})=>(0,_n._)`{limit: ${t}}`},Sg={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:$g,code(t){let{keyword:e,data:n,schemaCode:r}=t,o=e==="maxItems"?_n.operators.GT:_n.operators.LT;t.fail$data((0,_n._)`${n}.length ${o} ${r}`)}};as.default=Sg});var dr=_(ls=>{"use strict";Object.defineProperty(ls,"__esModule",{value:!0});var ql=Po();ql.code='require("ajv/dist/runtime/equal").default';ls.default=ql});var Dl=_(us=>{"use strict";Object.defineProperty(us,"__esModule",{value:!0});var cs=nn(),Z=A(),Ag=O(),xg=dr(),Pg={message:({params:{i:t,j:e}})=>(0,Z.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Z._)`{i: ${t}, j: ${e}}`},Mg={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:Pg,code(t){let{gen:e,data:n,$data:r,schema:o,parentSchema:s,schemaCode:i,it:a}=t;if(!r&&!o)return;let l=e.let("valid"),c=s.items?(0,cs.getSchemaTypes)(s.items):[];t.block$data(l,u,(0,Z._)`${i} === false`),t.ok(l);function u(){let m=e.let("i",(0,Z._)`${n}.length`),p=e.let("j");t.setParams({i:m,j:p}),e.assign(l,!0),e.if((0,Z._)`${m} > 1`,()=>(d()?f:g)(m,p))}function d(){return c.length>0&&!c.some(m=>m==="object"||m==="array")}function f(m,p){let b=e.name("item"),T=(0,cs.checkDataTypes)(c,b,a.opts.strictNumbers,cs.DataType.Wrong),C=e.const("indices",(0,Z._)`{}`);e.for((0,Z._)`;${m}--;`,()=>{e.let(b,(0,Z._)`${n}[${m}]`),e.if(T,(0,Z._)`continue`),c.length>1&&e.if((0,Z._)`typeof ${b} == "string"`,(0,Z._)`${b} += "_"`),e.if((0,Z._)`typeof ${C}[${b}] == "number"`,()=>{e.assign(p,(0,Z._)`${C}[${b}]`),t.error(),e.assign(l,!1).break()}).code((0,Z._)`${C}[${b}] = ${m}`)})}function g(m,p){let b=(0,Ag.useFunc)(e,xg.default),T=e.name("outer");e.label(T).for((0,Z._)`;${m}--;`,()=>e.for((0,Z._)`${p} = ${m}; ${p}--;`,()=>e.if((0,Z._)`${b}(${n}[${m}], ${n}[${p}])`,()=>{t.error(),e.assign(l,!1).break(T)})))}}};us.default=Mg});var Fl=_(fs=>{"use strict";Object.defineProperty(fs,"__esModule",{value:!0});var ds=A(),Ig=O(),Og=dr(),Ng={message:"must be equal to constant",params:({schemaCode:t})=>(0,ds._)`{allowedValue: ${t}}`},jg={keyword:"const",$data:!0,error:Ng,code(t){let{gen:e,data:n,$data:r,schemaCode:o,schema:s}=t;r||s&&typeof s=="object"?t.fail$data((0,ds._)`!${(0,Ig.useFunc)(e,Og.default)}(${n}, ${o})`):t.fail((0,ds._)`${s} !== ${n}`)}};fs.default=jg});var Ul=_(ps=>{"use strict";Object.defineProperty(ps,"__esModule",{value:!0});var bn=A(),Lg=O(),qg=dr(),Dg={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,bn._)`{allowedValues: ${t}}`},Fg={keyword:"enum",schemaType:"array",$data:!0,error:Dg,code(t){let{gen:e,data:n,$data:r,schema:o,schemaCode:s,it:i}=t;if(!r&&o.length===0)throw new Error("enum must have non-empty array");let a=o.length>=i.opts.loopEnum,l,c=()=>l??(l=(0,Lg.useFunc)(e,qg.default)),u;if(a||r)u=e.let("valid"),t.block$data(u,d);else{if(!Array.isArray(o))throw new Error("ajv implementation error");let g=e.const("vSchema",s);u=(0,bn.or)(...o.map((m,p)=>f(g,p)))}t.pass(u);function d(){e.assign(u,!1),e.forOf("v",s,g=>e.if((0,bn._)`${c()}(${n}, ${g})`,()=>e.assign(u,!0).break()))}function f(g,m){let p=o[m];return typeof p=="object"&&p!==null?(0,bn._)`${c()}(${n}, ${g}[${m}])`:(0,bn._)`${n} === ${p}`}}};ps.default=Fg});var Bl=_(ms=>{"use strict";Object.defineProperty(ms,"__esModule",{value:!0});var Ug=Al(),Bg=xl(),zg=Il(),Vg=Ol(),Kg=Nl(),Gg=jl(),Hg=Ll(),Wg=Dl(),Jg=Fl(),Yg=Ul(),Xg=[Ug.default,Bg.default,zg.default,Vg.default,Kg.default,Gg.default,Hg.default,Wg.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},Jg.default,Yg.default];ms.default=Xg});var hs=_(Tn=>{"use strict";Object.defineProperty(Tn,"__esModule",{value:!0});Tn.validateAdditionalItems=void 0;var ft=A(),gs=O(),Qg={message:({params:{len:t}})=>(0,ft.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,ft._)`{limit: ${t}}`},Zg={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:Qg,code(t){let{parentSchema:e,it:n}=t,{items:r}=e;if(!Array.isArray(r)){(0,gs.checkStrictMode)(n,'"additionalItems" is ignored when "items" is not an array of schemas');return}zl(t,r)}};function zl(t,e){let{gen:n,schema:r,data:o,keyword:s,it:i}=t;i.items=!0;let a=n.const("len",(0,ft._)`${o}.length`);if(r===!1)t.setParams({len:e.length}),t.pass((0,ft._)`${a} <= ${e.length}`);else if(typeof r=="object"&&!(0,gs.alwaysValidSchema)(i,r)){let c=n.var("valid",(0,ft._)`${a} <= ${e.length}`);n.if((0,ft.not)(c),()=>l(c)),t.ok(c)}function l(c){n.forRange("i",e.length,a,u=>{t.subschema({keyword:s,dataProp:u,dataPropType:gs.Type.Num},c),i.allErrors||n.if((0,ft.not)(c),()=>n.break())})}}Tn.validateAdditionalItems=zl;Tn.default=Zg});var ys=_(vn=>{"use strict";Object.defineProperty(vn,"__esModule",{value:!0});vn.validateTuple=void 0;var Vl=A(),fr=O(),eh=me(),th={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:n}=t;if(Array.isArray(e))return Kl(t,"additionalItems",e);n.items=!0,!(0,fr.alwaysValidSchema)(n,e)&&t.ok((0,eh.validateArray)(t))}};function Kl(t,e,n=t.schema){let{gen:r,parentSchema:o,data:s,keyword:i,it:a}=t;u(o),a.opts.unevaluated&&n.length&&a.items!==!0&&(a.items=fr.mergeEvaluated.items(r,n.length,a.items));let l=r.name("valid"),c=r.const("len",(0,Vl._)`${s}.length`);n.forEach((d,f)=>{(0,fr.alwaysValidSchema)(a,d)||(r.if((0,Vl._)`${c} > ${f}`,()=>t.subschema({keyword:i,schemaProp:f,dataProp:f},l)),t.ok(l))});function u(d){let{opts:f,errSchemaPath:g}=a,m=n.length,p=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(f.strictTuples&&!p){let b=`"${i}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${g}"`;(0,fr.checkStrictMode)(a,b,f.strictTuples)}}}vn.validateTuple=Kl;vn.default=th});var Gl=_(_s=>{"use strict";Object.defineProperty(_s,"__esModule",{value:!0});var nh=ys(),rh={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,nh.validateTuple)(t,"items")};_s.default=rh});var Wl=_(bs=>{"use strict";Object.defineProperty(bs,"__esModule",{value:!0});var Hl=A(),oh=O(),sh=me(),ih=hs(),ah={message:({params:{len:t}})=>(0,Hl.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Hl._)`{limit: ${t}}`},lh={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:ah,code(t){let{schema:e,parentSchema:n,it:r}=t,{prefixItems:o}=n;r.items=!0,!(0,oh.alwaysValidSchema)(r,e)&&(o?(0,ih.validateAdditionalItems)(t,o):t.ok((0,sh.validateArray)(t)))}};bs.default=lh});var Jl=_(Ts=>{"use strict";Object.defineProperty(Ts,"__esModule",{value:!0});var he=A(),pr=O(),ch={message:({params:{min:t,max:e}})=>e===void 0?(0,he.str)`must contain at least ${t} valid item(s)`:(0,he.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,he._)`{minContains: ${t}}`:(0,he._)`{minContains: ${t}, maxContains: ${e}}`},uh={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:ch,code(t){let{gen:e,schema:n,parentSchema:r,data:o,it:s}=t,i,a,{minContains:l,maxContains:c}=r;s.opts.next?(i=l===void 0?1:l,a=c):i=1;let u=e.const("len",(0,he._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,pr.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,pr.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,pr.alwaysValidSchema)(s,n)){let p=(0,he._)`${u} >= ${i}`;a!==void 0&&(p=(0,he._)`${p} && ${u} <= ${a}`),t.pass(p);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?g(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,he._)`${o}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let p=e.name("_valid"),b=e.let("count",0);g(p,()=>e.if(p,()=>m(b)))}function g(p,b){e.forRange("i",0,u,T=>{t.subschema({keyword:"contains",dataProp:T,dataPropType:pr.Type.Num,compositeRule:!0},p),b()})}function m(p){e.code((0,he._)`${p}++`),a===void 0?e.if((0,he._)`${p} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,he._)`${p} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,he._)`${p} >= ${i}`,()=>e.assign(d,!0)))}}};Ts.default=uh});var mr=_(xe=>{"use strict";Object.defineProperty(xe,"__esModule",{value:!0});xe.validateSchemaDeps=xe.validatePropertyDeps=xe.error=void 0;var vs=A(),dh=O(),kn=me();xe.error={message:({params:{property:t,depsCount:e,deps:n}})=>{let r=e===1?"property":"properties";return(0,vs.str)`must have ${r} ${n} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:n,missingProperty:r}})=>(0,vs._)`{property: ${t},
6
+ missingProperty: ${r},
7
+ depsCount: ${e},
8
+ deps: ${n}}`};var fh={keyword:"dependencies",type:"object",schemaType:"object",error:xe.error,code(t){let[e,n]=ph(t);Yl(t,e),Xl(t,n)}};function ph({schema:t}){let e={},n={};for(let r in t){if(r==="__proto__")continue;let o=Array.isArray(t[r])?e:n;o[r]=t[r]}return[e,n]}function Yl(t,e=t.schema){let{gen:n,data:r,it:o}=t;if(Object.keys(e).length===0)return;let s=n.let("missing");for(let i in e){let a=e[i];if(a.length===0)continue;let l=(0,kn.propertyInData)(n,r,i,o.opts.ownProperties);t.setParams({property:i,depsCount:a.length,deps:a.join(", ")}),o.allErrors?n.if(l,()=>{for(let c of a)(0,kn.checkReportMissingProp)(t,c)}):(n.if((0,vs._)`${l} && (${(0,kn.checkMissingProp)(t,a,s)})`),(0,kn.reportMissingProp)(t,s),n.else())}}xe.validatePropertyDeps=Yl;function Xl(t,e=t.schema){let{gen:n,data:r,keyword:o,it:s}=t,i=n.name("valid");for(let a in e)(0,dh.alwaysValidSchema)(s,e[a])||(n.if((0,kn.propertyInData)(n,r,a,s.opts.ownProperties),()=>{let l=t.subschema({keyword:o,schemaProp:a},i);t.mergeValidEvaluated(l,i)},()=>n.var(i,!0)),t.ok(i))}xe.validateSchemaDeps=Xl;xe.default=fh});var Zl=_(ks=>{"use strict";Object.defineProperty(ks,"__esModule",{value:!0});var Ql=A(),mh=O(),gh={message:"property name must be valid",params:({params:t})=>(0,Ql._)`{propertyName: ${t.propertyName}}`},hh={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:gh,code(t){let{gen:e,schema:n,data:r,it:o}=t;if((0,mh.alwaysValidSchema)(o,n))return;let s=e.name("valid");e.forIn("key",r,i=>{t.setParams({propertyName:i}),t.subschema({keyword:"propertyNames",data:i,dataTypes:["string"],propertyName:i,compositeRule:!0},s),e.if((0,Ql.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};ks.default=hh});var ws=_(Rs=>{"use strict";Object.defineProperty(Rs,"__esModule",{value:!0});var gr=me(),Re=A(),yh=pe(),hr=O(),_h={message:"must NOT have additional properties",params:({params:t})=>(0,Re._)`{additionalProperty: ${t.additionalProperty}}`},bh={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:_h,code(t){let{gen:e,schema:n,parentSchema:r,data:o,errsCount:s,it:i}=t;if(!s)throw new Error("ajv implementation error");let{allErrors:a,opts:l}=i;if(i.props=!0,l.removeAdditional!=="all"&&(0,hr.alwaysValidSchema)(i,n))return;let c=(0,gr.allSchemaProperties)(r.properties),u=(0,gr.allSchemaProperties)(r.patternProperties);d(),t.ok((0,Re._)`${s} === ${yh.default.errors}`);function d(){e.forIn("key",o,b=>{!c.length&&!u.length?m(b):e.if(f(b),()=>m(b))})}function f(b){let T;if(c.length>8){let C=(0,hr.schemaRefOrVal)(i,r.properties,"properties");T=(0,gr.isOwnProperty)(e,C,b)}else c.length?T=(0,Re.or)(...c.map(C=>(0,Re._)`${b} === ${C}`)):T=Re.nil;return u.length&&(T=(0,Re.or)(T,...u.map(C=>(0,Re._)`${(0,gr.usePattern)(t,C)}.test(${b})`))),(0,Re.not)(T)}function g(b){e.code((0,Re._)`delete ${o}[${b}]`)}function m(b){if(l.removeAdditional==="all"||l.removeAdditional&&n===!1){g(b);return}if(n===!1){t.setParams({additionalProperty:b}),t.error(),a||e.break();return}if(typeof n=="object"&&!(0,hr.alwaysValidSchema)(i,n)){let T=e.name("valid");l.removeAdditional==="failing"?(p(b,T,!1),e.if((0,Re.not)(T),()=>{t.reset(),g(b)})):(p(b,T),a||e.if((0,Re.not)(T),()=>e.break()))}}function p(b,T,C){let w={keyword:"additionalProperties",dataProp:b,dataPropType:hr.Type.Str};C===!1&&Object.assign(w,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(w,T)}}};Rs.default=bh});var nc=_(Cs=>{"use strict";Object.defineProperty(Cs,"__esModule",{value:!0});var Th=an(),ec=me(),Es=O(),tc=ws(),vh={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:n,parentSchema:r,data:o,it:s}=t;s.opts.removeAdditional==="all"&&r.additionalProperties===void 0&&tc.default.code(new Th.KeywordCxt(s,tc.default,"additionalProperties"));let i=(0,ec.allSchemaProperties)(n);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=Es.mergeEvaluated.props(e,(0,Es.toHash)(i),s.props));let a=i.filter(d=>!(0,Es.alwaysValidSchema)(s,n[d]));if(a.length===0)return;let l=e.name("valid");for(let d of a)c(d)?u(d):(e.if((0,ec.propertyInData)(e,o,d,s.opts.ownProperties)),u(d),s.allErrors||e.else().var(l,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(l);function c(d){return s.opts.useDefaults&&!s.compositeRule&&n[d].default!==void 0}function u(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},l)}}};Cs.default=vh});var ic=_($s=>{"use strict";Object.defineProperty($s,"__esModule",{value:!0});var rc=me(),yr=A(),oc=O(),sc=O(),kh={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:n,data:r,parentSchema:o,it:s}=t,{opts:i}=s,a=(0,rc.allSchemaProperties)(n),l=a.filter(p=>(0,oc.alwaysValidSchema)(s,n[p]));if(a.length===0||l.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let c=i.strictSchema&&!i.allowMatchingProperties&&o.properties,u=e.name("valid");s.props!==!0&&!(s.props instanceof yr.Name)&&(s.props=(0,sc.evaluatedPropsToName)(e,s.props));let{props:d}=s;f();function f(){for(let p of a)c&&g(p),s.allErrors?m(p):(e.var(u,!0),m(p),e.if(u))}function g(p){for(let b in c)new RegExp(p).test(b)&&(0,oc.checkStrictMode)(s,`property ${b} matches pattern ${p} (use allowMatchingProperties)`)}function m(p){e.forIn("key",r,b=>{e.if((0,yr._)`${(0,rc.usePattern)(t,p)}.test(${b})`,()=>{let T=l.includes(p);T||t.subschema({keyword:"patternProperties",schemaProp:p,dataProp:b,dataPropType:sc.Type.Str},u),s.opts.unevaluated&&d!==!0?e.assign((0,yr._)`${d}[${b}]`,!0):!T&&!s.allErrors&&e.if((0,yr.not)(u),()=>e.break())})})}}};$s.default=kh});var ac=_(Ss=>{"use strict";Object.defineProperty(Ss,"__esModule",{value:!0});var Rh=O(),wh={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:n,it:r}=t;if((0,Rh.alwaysValidSchema)(r,n)){t.fail();return}let o=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},o),t.failResult(o,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};Ss.default=wh});var lc=_(As=>{"use strict";Object.defineProperty(As,"__esModule",{value:!0});var Eh=me(),Ch={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:Eh.validateUnion,error:{message:"must match a schema in anyOf"}};As.default=Ch});var cc=_(xs=>{"use strict";Object.defineProperty(xs,"__esModule",{value:!0});var _r=A(),$h=O(),Sh={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,_r._)`{passingSchemas: ${t.passing}}`},Ah={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:Sh,code(t){let{gen:e,schema:n,parentSchema:r,it:o}=t;if(!Array.isArray(n))throw new Error("ajv implementation error");if(o.opts.discriminator&&r.discriminator)return;let s=n,i=e.let("valid",!1),a=e.let("passing",null),l=e.name("_valid");t.setParams({passing:a}),e.block(c),t.result(i,()=>t.reset(),()=>t.error(!0));function c(){s.forEach((u,d)=>{let f;(0,$h.alwaysValidSchema)(o,u)?e.var(l,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},l),d>0&&e.if((0,_r._)`${l} && ${i}`).assign(i,!1).assign(a,(0,_r._)`[${a}, ${d}]`).else(),e.if(l,()=>{e.assign(i,!0),e.assign(a,d),f&&t.mergeEvaluated(f,_r.Name)})})}}};xs.default=Ah});var uc=_(Ps=>{"use strict";Object.defineProperty(Ps,"__esModule",{value:!0});var xh=O(),Ph={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:n,it:r}=t;if(!Array.isArray(n))throw new Error("ajv implementation error");let o=e.name("valid");n.forEach((s,i)=>{if((0,xh.alwaysValidSchema)(r,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Ps.default=Ph});var pc=_(Ms=>{"use strict";Object.defineProperty(Ms,"__esModule",{value:!0});var br=A(),fc=O(),Mh={message:({params:t})=>(0,br.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,br._)`{failingKeyword: ${t.ifClause}}`},Ih={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:Mh,code(t){let{gen:e,parentSchema:n,it:r}=t;n.then===void 0&&n.else===void 0&&(0,fc.checkStrictMode)(r,'"if" without "then" and "else" is ignored');let o=dc(r,"then"),s=dc(r,"else");if(!o&&!s)return;let i=e.let("valid",!0),a=e.name("_valid");if(l(),t.reset(),o&&s){let u=e.let("ifClause");t.setParams({ifClause:u}),e.if(a,c("then",u),c("else",u))}else o?e.if(a,c("then")):e.if((0,br.not)(a),c("else"));t.pass(i,()=>t.error(!0));function l(){let u=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(u)}function c(u,d){return()=>{let f=t.subschema({keyword:u},a);e.assign(i,a),t.mergeValidEvaluated(f,i),d?e.assign(d,(0,br._)`${u}`):t.setParams({ifClause:u})}}}};function dc(t,e){let n=t.schema[e];return n!==void 0&&!(0,fc.alwaysValidSchema)(t,n)}Ms.default=Ih});var mc=_(Is=>{"use strict";Object.defineProperty(Is,"__esModule",{value:!0});var Oh=O(),Nh={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:n}){e.if===void 0&&(0,Oh.checkStrictMode)(n,`"${t}" without "if" is ignored`)}};Is.default=Nh});var gc=_(Os=>{"use strict";Object.defineProperty(Os,"__esModule",{value:!0});var jh=hs(),Lh=Gl(),qh=ys(),Dh=Wl(),Fh=Jl(),Uh=mr(),Bh=Zl(),zh=ws(),Vh=nc(),Kh=ic(),Gh=ac(),Hh=lc(),Wh=cc(),Jh=uc(),Yh=pc(),Xh=mc();function Qh(t=!1){let e=[Gh.default,Hh.default,Wh.default,Jh.default,Yh.default,Xh.default,Bh.default,zh.default,Uh.default,Vh.default,Kh.default];return t?e.push(Lh.default,Dh.default):e.push(jh.default,qh.default),e.push(Fh.default),e}Os.default=Qh});var js=_(Rn=>{"use strict";Object.defineProperty(Rn,"__esModule",{value:!0});Rn.dynamicAnchor=void 0;var Ns=A(),Zh=pe(),hc=cn(),ey=lr(),ty={keyword:"$dynamicAnchor",schemaType:"string",code:t=>yc(t,t.schema)};function yc(t,e){let{gen:n,it:r}=t;r.schemaEnv.root.dynamicAnchors[e]=!0;let o=(0,Ns._)`${Zh.default.dynamicAnchors}${(0,Ns.getProperty)(e)}`,s=r.errSchemaPath==="#"?r.validateName:ny(t);n.if((0,Ns._)`!${o}`,()=>n.assign(o,s))}Rn.dynamicAnchor=yc;function ny(t){let{schemaEnv:e,schema:n,self:r}=t.it,{root:o,baseId:s,localRefs:i,meta:a}=e.root,{schemaId:l}=r.opts,c=new hc.SchemaEnv({schema:n,schemaId:l,root:o,baseId:s,localRefs:i,meta:a});return hc.compileSchema.call(r,c),(0,ey.getValidate)(t,c)}Rn.default=ty});var Ls=_(wn=>{"use strict";Object.defineProperty(wn,"__esModule",{value:!0});wn.dynamicRef=void 0;var _c=A(),ry=pe(),bc=lr(),oy={keyword:"$dynamicRef",schemaType:"string",code:t=>Tc(t,t.schema)};function Tc(t,e){let{gen:n,keyword:r,it:o}=t;if(e[0]!=="#")throw new Error(`"${r}" only supports hash fragment reference`);let s=e.slice(1);if(o.allErrors)i();else{let l=n.let("valid",!1);i(l),t.ok(l)}function i(l){if(o.schemaEnv.root.dynamicAnchors[s]){let c=n.let("_v",(0,_c._)`${ry.default.dynamicAnchors}${(0,_c.getProperty)(s)}`);n.if(c,a(c,l),a(o.validateName,l))}else a(o.validateName,l)()}function a(l,c){return c?()=>n.block(()=>{(0,bc.callRef)(t,l),n.let(c,!0)}):()=>(0,bc.callRef)(t,l)}}wn.dynamicRef=Tc;wn.default=oy});var vc=_(qs=>{"use strict";Object.defineProperty(qs,"__esModule",{value:!0});var sy=js(),iy=O(),ay={keyword:"$recursiveAnchor",schemaType:"boolean",code(t){t.schema?(0,sy.dynamicAnchor)(t,""):(0,iy.checkStrictMode)(t.it,"$recursiveAnchor: false is ignored")}};qs.default=ay});var kc=_(Ds=>{"use strict";Object.defineProperty(Ds,"__esModule",{value:!0});var ly=Ls(),cy={keyword:"$recursiveRef",schemaType:"string",code:t=>(0,ly.dynamicRef)(t,t.schema)};Ds.default=cy});var Rc=_(Fs=>{"use strict";Object.defineProperty(Fs,"__esModule",{value:!0});var uy=js(),dy=Ls(),fy=vc(),py=kc(),my=[uy.default,dy.default,fy.default,py.default];Fs.default=my});var Ec=_(Us=>{"use strict";Object.defineProperty(Us,"__esModule",{value:!0});var wc=mr(),gy={keyword:"dependentRequired",type:"object",schemaType:"object",error:wc.error,code:t=>(0,wc.validatePropertyDeps)(t)};Us.default=gy});var Cc=_(Bs=>{"use strict";Object.defineProperty(Bs,"__esModule",{value:!0});var hy=mr(),yy={keyword:"dependentSchemas",type:"object",schemaType:"object",code:t=>(0,hy.validateSchemaDeps)(t)};Bs.default=yy});var $c=_(zs=>{"use strict";Object.defineProperty(zs,"__esModule",{value:!0});var _y=O(),by={keyword:["maxContains","minContains"],type:"array",schemaType:"number",code({keyword:t,parentSchema:e,it:n}){e.contains===void 0&&(0,_y.checkStrictMode)(n,`"${t}" without "contains" is ignored`)}};zs.default=by});var Sc=_(Vs=>{"use strict";Object.defineProperty(Vs,"__esModule",{value:!0});var Ty=Ec(),vy=Cc(),ky=$c(),Ry=[Ty.default,vy.default,ky.default];Vs.default=Ry});var xc=_(Ks=>{"use strict";Object.defineProperty(Ks,"__esModule",{value:!0});var He=A(),Ac=O(),wy=pe(),Ey={message:"must NOT have unevaluated properties",params:({params:t})=>(0,He._)`{unevaluatedProperty: ${t.unevaluatedProperty}}`},Cy={keyword:"unevaluatedProperties",type:"object",schemaType:["boolean","object"],trackErrors:!0,error:Ey,code(t){let{gen:e,schema:n,data:r,errsCount:o,it:s}=t;if(!o)throw new Error("ajv implementation error");let{allErrors:i,props:a}=s;a instanceof He.Name?e.if((0,He._)`${a} !== true`,()=>e.forIn("key",r,d=>e.if(c(a,d),()=>l(d)))):a!==!0&&e.forIn("key",r,d=>a===void 0?l(d):e.if(u(a,d),()=>l(d))),s.props=!0,t.ok((0,He._)`${o} === ${wy.default.errors}`);function l(d){if(n===!1){t.setParams({unevaluatedProperty:d}),t.error(),i||e.break();return}if(!(0,Ac.alwaysValidSchema)(s,n)){let f=e.name("valid");t.subschema({keyword:"unevaluatedProperties",dataProp:d,dataPropType:Ac.Type.Str},f),i||e.if((0,He.not)(f),()=>e.break())}}function c(d,f){return(0,He._)`!${d} || !${d}[${f}]`}function u(d,f){let g=[];for(let m in d)d[m]===!0&&g.push((0,He._)`${f} !== ${m}`);return(0,He.and)(...g)}}};Ks.default=Cy});var Mc=_(Gs=>{"use strict";Object.defineProperty(Gs,"__esModule",{value:!0});var pt=A(),Pc=O(),$y={message:({params:{len:t}})=>(0,pt.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,pt._)`{limit: ${t}}`},Sy={keyword:"unevaluatedItems",type:"array",schemaType:["boolean","object"],error:$y,code(t){let{gen:e,schema:n,data:r,it:o}=t,s=o.items||0;if(s===!0)return;let i=e.const("len",(0,pt._)`${r}.length`);if(n===!1)t.setParams({len:s}),t.fail((0,pt._)`${i} > ${s}`);else if(typeof n=="object"&&!(0,Pc.alwaysValidSchema)(o,n)){let l=e.var("valid",(0,pt._)`${i} <= ${s}`);e.if((0,pt.not)(l),()=>a(l,s)),t.ok(l)}o.items=!0;function a(l,c){e.forRange("i",c,i,u=>{t.subschema({keyword:"unevaluatedItems",dataProp:u,dataPropType:Pc.Type.Num},l),o.allErrors||e.if((0,pt.not)(l),()=>e.break())})}}};Gs.default=Sy});var Ic=_(Hs=>{"use strict";Object.defineProperty(Hs,"__esModule",{value:!0});var Ay=xc(),xy=Mc(),Py=[Ay.default,xy.default];Hs.default=Py});var Oc=_(Ws=>{"use strict";Object.defineProperty(Ws,"__esModule",{value:!0});var K=A(),My={message:({schemaCode:t})=>(0,K.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,K._)`{format: ${t}}`},Iy={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:My,code(t,e){let{gen:n,data:r,$data:o,schema:s,schemaCode:i,it:a}=t,{opts:l,errSchemaPath:c,schemaEnv:u,self:d}=a;if(!l.validateFormats)return;o?f():g();function f(){let m=n.scopeValue("formats",{ref:d.formats,code:l.code.formats}),p=n.const("fDef",(0,K._)`${m}[${i}]`),b=n.let("fType"),T=n.let("format");n.if((0,K._)`typeof ${p} == "object" && !(${p} instanceof RegExp)`,()=>n.assign(b,(0,K._)`${p}.type || "string"`).assign(T,(0,K._)`${p}.validate`),()=>n.assign(b,(0,K._)`"string"`).assign(T,p)),t.fail$data((0,K.or)(C(),w()));function C(){return l.strictSchema===!1?K.nil:(0,K._)`${i} && !${T}`}function w(){let q=u.$async?(0,K._)`(${p}.async ? await ${T}(${r}) : ${T}(${r}))`:(0,K._)`${T}(${r})`,R=(0,K._)`(typeof ${T} == "function" ? ${q} : ${T}.test(${r}))`;return(0,K._)`${T} && ${T} !== true && ${b} === ${e} && !${R}`}}function g(){let m=d.formats[s];if(!m){C();return}if(m===!0)return;let[p,b,T]=w(m);p===e&&t.pass(q());function C(){if(l.strictSchema===!1){d.logger.warn(R());return}throw new Error(R());function R(){return`unknown format "${s}" ignored in schema at path "${c}"`}}function w(R){let ee=R instanceof RegExp?(0,K.regexpCode)(R):l.code.formats?(0,K._)`${l.code.formats}${(0,K.getProperty)(s)}`:void 0,W=n.scopeValue("formats",{key:s,ref:R,code:ee});return typeof R=="object"&&!(R instanceof RegExp)?[R.type||"string",R.validate,(0,K._)`${W}.validate`]:["string",R,W]}function q(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!u.$async)throw new Error("async format in sync schema");return(0,K._)`await ${T}(${r})`}return typeof b=="function"?(0,K._)`${T}(${r})`:(0,K._)`${T}.test(${r})`}}}};Ws.default=Iy});var Nc=_(Js=>{"use strict";Object.defineProperty(Js,"__esModule",{value:!0});var Oy=Oc(),Ny=[Oy.default];Js.default=Ny});var jc=_(It=>{"use strict";Object.defineProperty(It,"__esModule",{value:!0});It.contentVocabulary=It.metadataVocabulary=void 0;It.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];It.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var qc=_(Ys=>{"use strict";Object.defineProperty(Ys,"__esModule",{value:!0});var jy=Sl(),Ly=Bl(),qy=gc(),Dy=Rc(),Fy=Sc(),Uy=Ic(),By=Nc(),Lc=jc(),zy=[Dy.default,jy.default,Ly.default,(0,qy.default)(!0),By.default,Lc.metadataVocabulary,Lc.contentVocabulary,Fy.default,Uy.default];Ys.default=zy});var Fc=_(Tr=>{"use strict";Object.defineProperty(Tr,"__esModule",{value:!0});Tr.DiscrError=void 0;var Dc;(function(t){t.Tag="tag",t.Mapping="mapping"})(Dc||(Tr.DiscrError=Dc={}))});var Bc=_(Qs=>{"use strict";Object.defineProperty(Qs,"__esModule",{value:!0});var Ot=A(),Xs=Fc(),Uc=cn(),Vy=ln(),Ky=O(),Gy={message:({params:{discrError:t,tagName:e}})=>t===Xs.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:n}})=>(0,Ot._)`{error: ${t}, tag: ${n}, tagValue: ${e}}`},Hy={keyword:"discriminator",type:"object",schemaType:"object",error:Gy,code(t){let{gen:e,data:n,schema:r,parentSchema:o,it:s}=t,{oneOf:i}=o;if(!s.opts.discriminator)throw new Error("discriminator: requires discriminator option");let a=r.propertyName;if(typeof a!="string")throw new Error("discriminator: requires propertyName");if(r.mapping)throw new Error("discriminator: mapping is not supported");if(!i)throw new Error("discriminator: requires oneOf keyword");let l=e.let("valid",!1),c=e.const("tag",(0,Ot._)`${n}${(0,Ot.getProperty)(a)}`);e.if((0,Ot._)`typeof ${c} == "string"`,()=>u(),()=>t.error(!1,{discrError:Xs.DiscrError.Tag,tag:c,tagName:a})),t.ok(l);function u(){let g=f();e.if(!1);for(let m in g)e.elseIf((0,Ot._)`${c} === ${m}`),e.assign(l,d(g[m]));e.else(),t.error(!1,{discrError:Xs.DiscrError.Mapping,tag:c,tagName:a}),e.endIf()}function d(g){let m=e.name("valid"),p=t.subschema({keyword:"oneOf",schemaProp:g},m);return t.mergeEvaluated(p,Ot.Name),m}function f(){var g;let m={},p=T(o),b=!0;for(let q=0;q<i.length;q++){let R=i[q];if(R?.$ref&&!(0,Ky.schemaHasRulesButRef)(R,s.self.RULES)){let W=R.$ref;if(R=Uc.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,W),R instanceof Uc.SchemaEnv&&(R=R.schema),R===void 0)throw new Vy.default(s.opts.uriResolver,s.baseId,W)}let ee=(g=R?.properties)===null||g===void 0?void 0:g[a];if(typeof ee!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);b=b&&(p||T(R)),C(ee,q)}if(!b)throw new Error(`discriminator: "${a}" must be required`);return m;function T({required:q}){return Array.isArray(q)&&q.includes(a)}function C(q,R){if(q.const)w(q.const,R);else if(q.enum)for(let ee of q.enum)w(ee,R);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function w(q,R){if(typeof q!="string"||q in m)throw new Error(`discriminator: "${a}" values must be unique strings`);m[q]=R}}}};Qs.default=Hy});var zc=_((a0,Wy)=>{Wy.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/schema",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/core":!0,"https://json-schema.org/draft/2020-12/vocab/applicator":!0,"https://json-schema.org/draft/2020-12/vocab/unevaluated":!0,"https://json-schema.org/draft/2020-12/vocab/validation":!0,"https://json-schema.org/draft/2020-12/vocab/meta-data":!0,"https://json-schema.org/draft/2020-12/vocab/format-annotation":!0,"https://json-schema.org/draft/2020-12/vocab/content":!0},$dynamicAnchor:"meta",title:"Core and Validation specifications meta-schema",allOf:[{$ref:"meta/core"},{$ref:"meta/applicator"},{$ref:"meta/unevaluated"},{$ref:"meta/validation"},{$ref:"meta/meta-data"},{$ref:"meta/format-annotation"},{$ref:"meta/content"}],type:["object","boolean"],$comment:"This meta-schema also defines keywords that have appeared in previous drafts in order to prevent incompatible extensions as they remain in common use.",properties:{definitions:{$comment:'"definitions" has been replaced by "$defs".',type:"object",additionalProperties:{$dynamicRef:"#meta"},deprecated:!0,default:{}},dependencies:{$comment:'"dependencies" has been split and replaced by "dependentSchemas" and "dependentRequired" in order to serve their differing semantics.',type:"object",additionalProperties:{anyOf:[{$dynamicRef:"#meta"},{$ref:"meta/validation#/$defs/stringArray"}]},deprecated:!0,default:{}},$recursiveAnchor:{$comment:'"$recursiveAnchor" has been replaced by "$dynamicAnchor".',$ref:"meta/core#/$defs/anchorString",deprecated:!0},$recursiveRef:{$comment:'"$recursiveRef" has been replaced by "$dynamicRef".',$ref:"meta/core#/$defs/uriReferenceString",deprecated:!0}}}});var Vc=_((l0,Jy)=>{Jy.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/applicator",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/applicator":!0},$dynamicAnchor:"meta",title:"Applicator vocabulary meta-schema",type:["object","boolean"],properties:{prefixItems:{$ref:"#/$defs/schemaArray"},items:{$dynamicRef:"#meta"},contains:{$dynamicRef:"#meta"},additionalProperties:{$dynamicRef:"#meta"},properties:{type:"object",additionalProperties:{$dynamicRef:"#meta"},default:{}},patternProperties:{type:"object",additionalProperties:{$dynamicRef:"#meta"},propertyNames:{format:"regex"},default:{}},dependentSchemas:{type:"object",additionalProperties:{$dynamicRef:"#meta"},default:{}},propertyNames:{$dynamicRef:"#meta"},if:{$dynamicRef:"#meta"},then:{$dynamicRef:"#meta"},else:{$dynamicRef:"#meta"},allOf:{$ref:"#/$defs/schemaArray"},anyOf:{$ref:"#/$defs/schemaArray"},oneOf:{$ref:"#/$defs/schemaArray"},not:{$dynamicRef:"#meta"}},$defs:{schemaArray:{type:"array",minItems:1,items:{$dynamicRef:"#meta"}}}}});var Kc=_((c0,Yy)=>{Yy.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/unevaluated",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/unevaluated":!0},$dynamicAnchor:"meta",title:"Unevaluated applicator vocabulary meta-schema",type:["object","boolean"],properties:{unevaluatedItems:{$dynamicRef:"#meta"},unevaluatedProperties:{$dynamicRef:"#meta"}}}});var Gc=_((u0,Xy)=>{Xy.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/content",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/content":!0},$dynamicAnchor:"meta",title:"Content vocabulary meta-schema",type:["object","boolean"],properties:{contentEncoding:{type:"string"},contentMediaType:{type:"string"},contentSchema:{$dynamicRef:"#meta"}}}});var Hc=_((d0,Qy)=>{Qy.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/core",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/core":!0},$dynamicAnchor:"meta",title:"Core vocabulary meta-schema",type:["object","boolean"],properties:{$id:{$ref:"#/$defs/uriReferenceString",$comment:"Non-empty fragments not allowed.",pattern:"^[^#]*#?$"},$schema:{$ref:"#/$defs/uriString"},$ref:{$ref:"#/$defs/uriReferenceString"},$anchor:{$ref:"#/$defs/anchorString"},$dynamicRef:{$ref:"#/$defs/uriReferenceString"},$dynamicAnchor:{$ref:"#/$defs/anchorString"},$vocabulary:{type:"object",propertyNames:{$ref:"#/$defs/uriString"},additionalProperties:{type:"boolean"}},$comment:{type:"string"},$defs:{type:"object",additionalProperties:{$dynamicRef:"#meta"}}},$defs:{anchorString:{type:"string",pattern:"^[A-Za-z_][-A-Za-z0-9._]*$"},uriString:{type:"string",format:"uri"},uriReferenceString:{type:"string",format:"uri-reference"}}}});var Wc=_((f0,Zy)=>{Zy.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/format-annotation",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/format-annotation":!0},$dynamicAnchor:"meta",title:"Format vocabulary meta-schema for annotation results",type:["object","boolean"],properties:{format:{type:"string"}}}});var Jc=_((p0,e_)=>{e_.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/meta-data",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/meta-data":!0},$dynamicAnchor:"meta",title:"Meta-data vocabulary meta-schema",type:["object","boolean"],properties:{title:{type:"string"},description:{type:"string"},default:!0,deprecated:{type:"boolean",default:!1},readOnly:{type:"boolean",default:!1},writeOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0}}}});var Yc=_((m0,t_)=>{t_.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/validation",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/validation":!0},$dynamicAnchor:"meta",title:"Validation vocabulary meta-schema",type:["object","boolean"],properties:{type:{anyOf:[{$ref:"#/$defs/simpleTypes"},{type:"array",items:{$ref:"#/$defs/simpleTypes"},minItems:1,uniqueItems:!0}]},const:!0,enum:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/$defs/nonNegativeInteger"},minLength:{$ref:"#/$defs/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},maxItems:{$ref:"#/$defs/nonNegativeInteger"},minItems:{$ref:"#/$defs/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},maxContains:{$ref:"#/$defs/nonNegativeInteger"},minContains:{$ref:"#/$defs/nonNegativeInteger",default:1},maxProperties:{$ref:"#/$defs/nonNegativeInteger"},minProperties:{$ref:"#/$defs/nonNegativeIntegerDefault0"},required:{$ref:"#/$defs/stringArray"},dependentRequired:{type:"object",additionalProperties:{$ref:"#/$defs/stringArray"}}},$defs:{nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{$ref:"#/$defs/nonNegativeInteger",default:0},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}}}});var Xc=_(Zs=>{"use strict";Object.defineProperty(Zs,"__esModule",{value:!0});var n_=zc(),r_=Vc(),o_=Kc(),s_=Gc(),i_=Hc(),a_=Wc(),l_=Jc(),c_=Yc(),u_=["/properties"];function d_(t){return[n_,r_,o_,s_,i_,e(this,a_),l_,e(this,c_)].forEach(n=>this.addMetaSchema(n,void 0,!1)),this;function e(n,r){return t?n.$dataMetaSchema(r,u_):r}}Zs.default=d_});var Qc=_((V,ti)=>{"use strict";Object.defineProperty(V,"__esModule",{value:!0});V.MissingRefError=V.ValidationError=V.CodeGen=V.Name=V.nil=V.stringify=V.str=V._=V.KeywordCxt=V.Ajv2020=void 0;var f_=Rl(),p_=qc(),m_=Bc(),g_=Xc(),ei="https://json-schema.org/draft/2020-12/schema",Nt=class extends f_.default{constructor(e={}){super({...e,dynamicRef:!0,next:!0,unevaluated:!0})}_addVocabularies(){super._addVocabularies(),p_.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(m_.default)}_addDefaultMetaSchema(){super._addDefaultMetaSchema();let{$data:e,meta:n}=this.opts;n&&(g_.default.call(this,e),this.refs["http://json-schema.org/schema"]=ei)}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(ei)?ei:void 0)}};V.Ajv2020=Nt;ti.exports=V=Nt;ti.exports.Ajv2020=Nt;Object.defineProperty(V,"__esModule",{value:!0});V.default=Nt;var h_=an();Object.defineProperty(V,"KeywordCxt",{enumerable:!0,get:function(){return h_.KeywordCxt}});var jt=A();Object.defineProperty(V,"_",{enumerable:!0,get:function(){return jt._}});Object.defineProperty(V,"str",{enumerable:!0,get:function(){return jt.str}});Object.defineProperty(V,"stringify",{enumerable:!0,get:function(){return jt.stringify}});Object.defineProperty(V,"nil",{enumerable:!0,get:function(){return jt.nil}});Object.defineProperty(V,"Name",{enumerable:!0,get:function(){return jt.Name}});Object.defineProperty(V,"CodeGen",{enumerable:!0,get:function(){return jt.CodeGen}});var y_=er();Object.defineProperty(V,"ValidationError",{enumerable:!0,get:function(){return y_.default}});var __=ln();Object.defineProperty(V,"MissingRefError",{enumerable:!0,get:function(){return __.default}})});function Lr(t,e,n,r){return{role:"assistant",content:e||null,tool_calls:t,...n&&n.length>0?{thinkingBlocks:n}:{},...r?{reasoning_content:r}:{}}}function Vt(t,e){let n=e.ok?typeof e.payload=="string"?e.payload:JSON.stringify(e.payload??""):`Error: ${e.error??"Tool execution failed"}`;return{role:"tool",tool_call_id:t,content:n,...!e.ok&&{is_error:!0},...e.toolReferences?.length?{toolReferences:e.toolReferences}:{},...e.imageUrls?.length?{imageUrls:e.imageUrls}:{},...e.contentBlocks!==void 0?{contentBlocks:e.contentBlocks}:{},...e.structuredContent!==void 0?{structuredContent:e.structuredContent}:{},...e.mcpMeta!==void 0?{mcpMeta:e.mcpMeta}:{},...e.mcpIsError!==void 0?{mcpIsError:e.mcpIsError}:{}}}var Lu=/\b(?:daily|weekly|monthly)(?:\/(?:daily|weekly|monthly))* (?:usage )?limit(?:s)?(?: (?:exhausted|reached|exceeded))?\b/i,et={rateLimit:[/rate[_ ]limit|too many requests|429/,"model_cooldown","exceeded your current quota","resource has been exhausted","quota exceeded","resource_exhausted","usage limit",/\btpm\b/i,"tokens per minute","tokens per day"],overloaded:[/overloaded_error|"type"\s*:\s*"overloaded_error"/i,"overloaded",/service[_ ]unavailable.*(?:overload|capacity|high[_ ]demand)|(?:overload|capacity|high[_ ]demand).*service[_ ]unavailable/i,"high demand"],timeout:["timeout","timed out","service unavailable","deadline exceeded","context deadline exceeded","connection error","network error","network request failed","fetch failed","socket hang up",/\beconn(?:refused|reset|aborted)\b/i,/\benotfound\b/i,/\beai_again\b/i,/without sending (?:any )?chunks?/i,/\bstop reason:\s*(?:abort|error|network_error)\b/i,/\breason:\s*(?:abort|error|network_error)\b/i,/\bunhandled stop reason:\s*(?:abort|error|network_error)\b/i],billing:[/["']?(?:status|code)["']?\s*[:=]\s*402\b|\bhttp\s*402\b|\berror(?:\s+code)?\s*[:=]?\s*402\b|\b(?:got|returned|received)\s+(?:a\s+)?402\b|^\s*402\s+payment/i,"payment required","insufficient credits",/insufficient[_ ]quota/i,"credit balance","plans & billing","insufficient balance"],authPermanent:[/api[_ ]?key[_ ]?(?:revoked|invalid|deactivated|deleted)/i,"invalid_api_key","key has been disabled","key has been revoked","account has been deactivated",/could not (?:authenticate|validate).*(?:api[_ ]?key|credentials)/i,"permission_error","not allowed for this organization"],auth:[/invalid[_ ]?api[_ ]?key/,"incorrect api key","invalid token","authentication","re-authenticate","oauth token refresh failed","unauthorized","forbidden","access denied","insufficient permissions","insufficient permission",/missing scopes?:/i,"expired","token has expired",/\b401\b/,/\b403\b/,"no credentials found","no api key found"],format:["string should match pattern","tool_use.id","tool_use_id","messages.1.content.1.tool_use.id","invalid request format",/tool call id was.*must be/i]},qu=/^(?:error[:\s-]+)?billing(?:\s+error)?(?:[:\s-]+|$)|^(?:error[:\s-]+)?(?:credit balance|insufficient credits?|payment required|http\s*402\b)/i,Du=/["']?(?:status|code)["']?\s*[:=]\s*402\b|\bhttp\s*402\b|\berror(?:\s+code)?\s*[:=]?\s*402\b|^\s*402\s+payment/i,Fu=512,Uu=/^(?:http\s*)?(\d{3})(?:\s+([\s\S]+))?$/i;var Bu=new Set([500,502,503,504,521,522,523,524,529]),zu=["insufficient credits","insufficient quota","credit balance","insufficient balance","plans & billing","add more credits","top up"],Vu=["upgrade your plan","upgrade plan","current plan","subscription"],Ku=["daily","weekly","monthly"],Gu=["try again","retry","temporary","cooldown"],Hu=["usage limit","rate limit","organization usage"],Wu=["organization","workspace"],Ju=["billing period","exceeded","reached","exhausted"],Yu=/["']?(?:status|code)["']?\s*[:=]\s*402\b|\bhttp\s*402\b|\berror(?:\s+code)?\s*[:=]?\s*402\b|\b(?:got|returned|received)\s+(?:a\s+)?402\b|^\s*402\s+payment required\b/i,Xu=/^(?:error[:\s-]+)?(?:(?:http\s*)?402(?:\s+payment required)?|payment required)(?:[:\s-]+|$)/i;function tt(t,e){if(!t)return!1;let n=t.toLowerCase();return e.some(r=>r instanceof RegExp?r.test(n):n.includes(r))}function Qu(t){return tt(t,et.format)}function Ai(t){return tt(t,et.rateLimit)}function Zu(t){return tt(t,et.timeout)}function ed(t){return Lu.test(t)}function qr(t){let e=t.toLowerCase();return e?t.length>Fu?Du.test(e):tt(e,et.billing)?!0:qu.test(t)?e.includes("upgrade")||e.includes("credits")||e.includes("payment")||e.includes("plan"):!1:!1}function xi(t){return tt(t,et.authPermanent)}function td(t){return tt(t,et.auth)}function Pi(t){return tt(t,et.overloaded)}function Ze(t,e){return e.some(n=>t.includes(n))}function nd(t){return Ze(t,zu)||Ze(t,Vu)&&t.includes("limit")||t.includes("billing hard limit")||t.includes("hard limit reached")||t.includes("maximum allowed")&&t.includes("limit")}function rd(t){let e=Ze(t,Ku),n=t.includes("spend limit")||t.includes("spending limit"),r=Ze(t,Wu);return Ze(t,Gu)&&Ze(t,Hu)||e&&(t.includes("usage limit")||n)||e&&t.includes("limit")&&t.includes("reset")||r&&t.includes("limit")&&(n||Ze(t,Ju))}function od(t){return t.trim().toLowerCase().replace(Xu,"").trim()}function Mi(t){let e=od(t);return!e||nd(e)?"billing":Ai(e)||rd(e)?"rate_limit":"billing"}function sd(t){return Yu.test(t)?Mi(t):null}function Ii(t){let e=t.match(Uu);if(!e)return null;let n=Number(e[1]);return Number.isFinite(n)?{code:n,rest:(e[2]??"").trim()}:null}function id(t){if(!t)return!1;let e=t.toLowerCase();return e.includes('"type":"api_error"')&&e.includes("internal server error")}function ad(t){let e=t.trim();if(!e)return!1;let n=Ii(e);return n?Bu.has(n.code):!1}function Oi(t,e){return typeof t!="number"||!Number.isFinite(t)?null:t===402?e?Mi(e):"billing":t===429?"rate_limit":t===401||t===403?e&&xi(e)?"auth_permanent":"auth":t===408?"timeout":t===503?e&&Pi(e)?"overloaded":"timeout":t===502||t===504?"timeout":t===529?"overloaded":t===400?e&&qr(e)?"billing":"format":null}function ld(t){if(!t)return!1;let e=t.toLowerCase();return!!(e.includes("unknown model")||e.includes("model not found")||e.includes("model_not_found")||e.includes("not_found_error")||e.includes("does not exist")&&e.includes("model")||e.includes("invalid model")&&!e.includes("invalid model reference")||/models\/[^\s]+ is not found/i.test(t)||/\b404\b/.test(t)&&/not[-_ ]?found/i.test(t))}function cd(t){if(!t)return!1;let e=t.toLowerCase();return e.includes("session not found")||e.includes("session does not exist")||e.includes("session expired")||e.includes("session invalid")||e.includes("conversation not found")||e.includes("conversation does not exist")||e.includes("conversation expired")||e.includes("conversation invalid")||e.includes("no such session")||e.includes("invalid session")||e.includes("session id not found")||e.includes("conversation id not found")}function Ni(t){if(cd(t))return"session_expired";if(ld(t))return"model_not_found";let e=sd(t);return e||(ed(t)?qr(t)?"billing":"rate_limit":Ai(t)?"rate_limit":Pi(t)?"overloaded":ad(t)?Ii(t.trim())?.code===529?"overloaded":"timeout":id(t)?"timeout":Qu(t)?"format":qr(t)?"billing":Zu(t)?"timeout":xi(t)?"auth_permanent":td(t)?"auth":null)}var ud=new Set(["RETRYABLE_TRANSIENT","RETRYABLE_DEGRADED","TOOL_EXECUTION_FAILED"]);function jn(t){return ud.has(t)}var dd={timeout:"RETRYABLE_TRANSIENT",overloaded:"RETRYABLE_TRANSIENT",rate_limit:"RETRYABLE_DEGRADED",auth:"NON_RETRYABLE_AUTH",auth_permanent:"NON_RETRYABLE_AUTH",billing:"NON_RETRYABLE_QUOTA",format:"NON_RETRYABLE_CONTENT",model_not_found:"NON_RETRYABLE_CONTENT",session_expired:"NON_RETRYABLE_CONTENT",unknown:"RETRYABLE_TRANSIENT"};function bt(t,e){let n=Oi(t,e)??(e?Ni(e):null);return n?dd[n]:typeof t=="number"&&t>=400&&t<500?"NON_RETRYABLE_CONTENT":"RETRYABLE_TRANSIENT"}var ji=4;function Li(t){return{role:"user",content:`[${t} earlier messages removed to fit the context budget]`}}var Kt=class{constructor(e){this.estimateTokens=e}estimateTokens;compress(e,n){let r=[],o=[];for(let d of e)d.role==="system"?r.push(d):o.push(d);let s=n;for(let d of r)s-=this.estimateTokens(d);let i;for(let d of o)if(d.role==="user"){i=d;break}if(i&&(s-=this.estimateTokens(i)),s<=0){let d=o.length-(i?1:0),f=i?[...r,i]:[...r];return d>0&&f.push(Li(d)),{messages:f,droppedCount:d,strategy:"sliding-window"}}let a=[],l=0;for(let d=o.length-1;d>=0;d--){let f=o[d];if(f===i)continue;let g=this.estimateTokens(f);if(s-g<0&&l>=ji)break;if(s-g<0&&l<ji){a.unshift(f),l++;continue}s-=g,a.unshift(f),l++}let c=o.length-(a.length+(i&&!a.includes(i)?1:0)),u=[...r];return i&&!a.includes(i)&&u.push(i),c>0&&u.push(Li(c)),u.push(...a),{messages:u,droppedCount:c,strategy:"sliding-window"}}};function qi(t){return t.function&&typeof t.function=="object"&&typeof t.function.name=="string"?t.function.name.trim():typeof t.name=="string"?t.name.trim():""}function fd(t){return t==="enabled-eligible"||t==="installed-awaiting-approval"}function pd(t){return new Map((t??[]).map(e=>[e.toolName,e]))}function md(t){if(!t.eligibility?.length)return[...t.tools];let e=pd(t.eligibility);return t.tools.filter(n=>{let r=qi(n);if(!r)return!1;let o=e.get(r);return!o||fd(o.status)})}function gd(t){let e=[],n=t.compatibility??{},r=t.toolChoice;if(t.thinkingEnabled&&n.requireAutoWhenThinking){let o=typeof r=="object"&&r&&!Array.isArray(r)?String(r.type??""):r;o&&o!=="auto"&&o!=="none"&&(e.push("tool_choice downgraded to auto because thinking mode requires auto/none compatibility."),r="auto")}if(r==="required"&&n.allowRequiredToolChoice===!1){let o=n.requiredFallback??"auto";e.push(`tool_choice=required is not supported by this provider; downgraded to ${o}.`),r=o}if(r&&typeof r=="object"&&!Array.isArray(r)&&r.type==="function"&&n.allowNamedToolChoice===!1){let o=n.namedFallback??"required";e.push(`named tool_choice is not supported by this provider; downgraded to ${o}.`),r=o}return{normalizedToolChoice:r,warnings:e}}function Dr(t){let e=gd({toolChoice:t.toolChoice,thinkingEnabled:t.thinkingEnabled,compatibility:t.compatibility}),n=e.normalizedToolChoice,r=[...e.warnings],o=md({tools:t.tools,eligibility:t.eligibility});if(!n||n==="auto")return{tools:o,normalizedToolChoice:n,warnings:r};if(n==="none")return{tools:[],normalizedToolChoice:"none",warnings:r};if(n==="required"){if(o.length===0)throw new Error("tool_choice=required but no tools were provided");return{tools:o,normalizedToolChoice:"required",warnings:r}}if(typeof n=="object"&&!Array.isArray(n)&&n.type==="function"){let s=n.function??void 0,i=typeof s?.name=="string"?s.name.trim():"";if(!i)throw new Error("tool_choice.function.name is required");let a=o.filter(l=>qi(l)===i);if(a.length===0)throw new Error(`tool_choice requested unknown tool: ${i}`);return{tools:a,normalizedToolChoice:{type:"function",function:{name:i}},warnings:r}}return{tools:o,normalizedToolChoice:n,warnings:r}}var hd=["stop","aborted","timeout","cancelled","interrupted","error"],yd=["tool_calls","toolCalls","function_call","functionCall","raw_tool_calls","rawToolCalls"];function Di(t){return t==null?[]:typeof t=="string"?t.length>0?[{type:"text",text:t}]:[]:Array.isArray(t)?t:[{type:"text",text:String(t)}]}function _d(t,e){return{...t,...e,content:[...Di(t.content),...Di(e.content)]}}function bd(t){let e=new Set;if(t.role!=="assistant"||!Array.isArray(t.tool_calls))return e;for(let n of t.tool_calls)typeof n.id=="string"&&n.id&&e.add(n.id);return e}function Td(t){let e=new Set,n=[];for(let r=0;r<t.length;r+=1){if(e.has(r))continue;let o=t[r];if(!o)continue;n.push(o);let s=bd(o);if(s.size!==0)for(let i=r+1;i<t.length;i+=1){if(e.has(i))continue;let a=t[i];a?.role==="tool"&&typeof a.tool_call_id=="string"&&s.has(a.tool_call_id)&&(n.push(a),e.add(i))}}return n}function vd(t){if(!t||typeof t!="object")return!1;if(t.function&&typeof t.function=="object"){let e=t.function.name;if(typeof e=="string"&&e.length>0)return!0}return typeof t.name=="string"&&t.name.length>0}function kd(t){return new Set((t??hd).map(e=>e.trim().toLowerCase()))}function Rd(t,e){return t?kd(e).has(t.trim().toLowerCase()):!1}function Fr(t){if(!Array.isArray(t)||t.length===0)return[...t];let e=t.map(l=>{if(l.role==="assistant"&&Array.isArray(l.tool_calls)){let c=l.tool_calls.filter(u=>vd(u));return{...l,...c.length>0?{tool_calls:c}:{tool_calls:void 0}}}return{...l}}),n=new Set;for(let l of e)if(!(l.role!=="assistant"||!Array.isArray(l.tool_calls)))for(let c of l.tool_calls)typeof c.id=="string"&&c.id&&n.add(c.id);let r=e.filter(l=>l.role!=="tool"?!0:!!(l.tool_call_id&&n.has(l.tool_call_id))),o=new Set;for(let l of r)l.role==="tool"&&typeof l.tool_call_id=="string"&&l.tool_call_id&&o.add(l.tool_call_id);let s=[];for(let l of r){if(l.role==="assistant"&&Array.isArray(l.tool_calls)&&l.tool_calls.length>0){let c=l.tool_calls.filter(u=>typeof u.id=="string"&&o.has(u.id));if(c.length===0){let{tool_calls:u,...d}=l;d.content!=null&&d.content!==""&&s.push(d);continue}if(c.length<l.tool_calls.length){s.push({...l,tool_calls:c});continue}}s.push(l)}let i=Td(s),a=[];for(let l of i){let c=a.length>0?a[a.length-1]:void 0;if(l.role==="user"&&c?.role==="user"){a[a.length-1]=_d(c,l);continue}a.push(l)}return a}function Ur(t,e){return Rd(e?.stopReason,e?.forcedStopReasons)?t.map(n=>{if(n.role!=="assistant")return{...n};let r={...n};for(let o of yd)delete r[o];return r}):[...t]}function Br(t,e){let n=e?.placeholderToolResult??"Error: Tool loop interrupted before the tool result was replayed.",r=new Set;for(let s of t)s.role==="tool"&&typeof s.tool_call_id=="string"&&s.tool_call_id&&r.add(s.tool_call_id);let o=[];for(let s of t)if(o.push({...s}),!(s.role!=="assistant"||!Array.isArray(s.tool_calls)||s.tool_calls.length===0))for(let i of s.tool_calls)typeof i.id!="string"||!i.id||r.has(i.id)||(r.add(i.id),o.push({role:"tool",tool_call_id:i.id,content:n}));return o}function zr(t,e){let n=Fr(t),r=Ur(n,e);return Br(r,e)}function wd(t){let e=new Set,n=new Set;for(let r of t){if(r.role==="assistant"&&Array.isArray(r.tool_calls))for(let o of r.tool_calls)typeof o.id=="string"&&o.id&&e.add(o.id);r.role==="tool"&&typeof r.tool_call_id=="string"&&r.tool_call_id&&n.add(r.tool_call_id)}return[...e].filter(r=>!n.has(r))}function Ed(t){let e=new Set;for(let n of t)n.role==="tool"&&typeof n.tool_call_id=="string"&&n.tool_call_id&&e.add(n.tool_call_id);return[...e]}function Cd(t){return{round:t.round??0,maxRounds:t.maxRounds,pendingToolCallIds:[...t.pendingToolCallIds??[]],completedToolCallIds:[...t.completedToolCallIds??[]],lastStopReason:t.lastStopReason,replayMessages:[...t.replayMessages??[]]}}function Vr(t,e){return{round:t.round+1,maxRounds:t.maxRounds,pendingToolCallIds:[...e.pendingToolCallIds??t.pendingToolCallIds],completedToolCallIds:[...e.completedToolCallIds??t.completedToolCallIds],lastStopReason:e.lastStopReason??t.lastStopReason,replayMessages:[...e.replayMessages??t.replayMessages]}}function Ln(t,e){return{round:t.round,maxRounds:t.maxRounds,pendingToolCallIds:[],completedToolCallIds:[...e.completedToolCallIds??t.completedToolCallIds],lastStopReason:e.lastStopReason??t.lastStopReason,replayMessages:[...e.replayMessages??t.replayMessages]}}function qn(t){let e=[],n=Fr(t.replayMessages);n.length!==t.replayMessages.length&&e.push({kind:"drop-orphan-tool-result",detail:"Removed orphan tool results or invalid assistant tool calls."});let r=Ur(n,t.options);r.some((s,i)=>s!==n[i])&&e.push({kind:"strip-forced-stop-tool-metadata",detail:"Removed assistant tool-call metadata after forced stop."});let o=Br(r,t.options);return o.length>r.length&&e.push({kind:"inject-placeholder-tool-result",detail:"Injected placeholder tool result for pending tool calls."}),{state:Cd({maxRounds:t.maxRounds,round:t.round,lastStopReason:t.lastStopReason,replayMessages:o,pendingToolCallIds:wd(o),completedToolCallIds:Ed(o)}),recoveryActions:e}}var $d=new Set(["main","sdk","agent","compact","hook","verification","side_question"]);function Kr(t){return t?$d.has(t):!0}function Gr(t){return t===429||t===529}function Dn(t,e=500,n=32e3){let r=Math.min(e*Math.pow(2,t-1),n);return r+Math.floor(Math.random()*r*.25)}var fb={maxBackoffMs:300*1e3,resetCapMs:360*60*1e3,heartbeatIntervalMs:3e4};function Fn(){let t=process.env.QLOGICAGENT_PERSISTENT_RETRY;return t==="1"||t==="true"}var Fi=Math.max(1e3,Number(process.env.TOOL_LOOP_TOOL_TIMEOUT_MS)||24e4),Ui=128e3,Bi=13e3,zi=16384;var Vi=3e4,Tt=2;var mb=50*1024,gb=500*1024,hb=500*1024*1024,yb=50*1024*1024;function Hr(t){let e=Number.isFinite(t.totalPromptTokens)&&(t.totalPromptTokens??0)>0?Math.floor(t.totalPromptTokens):0,n=Number.isFinite(t.promptTokens)&&t.promptTokens>0?Math.floor(t.promptTokens):0,r=Number.isFinite(t.cacheReadTokens)&&(t.cacheReadTokens??0)>0?Math.floor(t.cacheReadTokens):0,o=Number.isFinite(t.cacheCreationTokens)&&(t.cacheCreationTokens??0)>0?Math.floor(t.cacheCreationTokens):0,s=r+o,i=s>n?n+s:n;return Math.max(e,i)}function Wr(t){return{promptTokens:0,hasAttemptedReactiveCompact:!1,currentMaxOutputTokens:t.maxOutputTokens,aborted:t.abortSignal?.aborted??!1}}function Jr(t,e){let n=e.contextWindowTokens-e.responseBufferTokens-t.currentMaxOutputTokens,r=n>0?t.promptTokens/n*100:100;return r>=85?{level:"warning",usagePercent:r,remainingTokens:Math.max(0,n-t.promptTokens)}:{level:"ok"}}function Yr(t,e,n){let r=t.message?.toLowerCase()??"",o=t.status??0;return o===413||r.includes("prompt_too_long")||r.includes("context_length_exceeded")?!e.hasAttemptedReactiveCompact&&n.reactiveCompactEnabled?{action:"reactive_compact"}:{action:"abort",reason:"prompt_too_long_unrecoverable"}:o>=500&&o<600?{action:"retry",reason:`server_error_${o}`}:o===429?{action:"retry",reason:"rate_limited"}:o===401||o===403?{action:"abort",reason:"auth_error"}:o===404?{action:"abort",reason:"model_not_found"}:{action:"abort",reason:r||"unknown_error"}}function Xr(t,e){return t.aborted?!0:e.abortSignal?.aborted?(t.aborted=!0,!0):!1}function Qr(){return{attemptedThisTurn:!1,lastCompactAt:null,toolsAtLastCompact:[]}}function Gt(t){return!t.attemptedThisTurn}function Un(t,e){let n=e.ok?typeof e.payload=="string"?e.payload:JSON.stringify(e.payload??""):`Error: ${e.error??"Tool execution failed"}`;return{role:"tool",tool_call_id:t,content:n,...!e.ok&&{is_error:!0},...e.toolReferences?.length?{toolReferences:e.toolReferences}:{},...e.imageUrls?.length?{imageUrls:e.imageUrls}:{},...e.contentBlocks?{contentBlocks:e.contentBlocks}:{},...e.structuredContent!==void 0?{structuredContent:e.structuredContent}:{},...e.mcpMeta!==void 0?{mcpMeta:e.mcpMeta}:{},...e.mcpIsError!==void 0?{mcpIsError:e.mcpIsError}:{}}}function Zr(t,e){let n=t.get(e.index)??{id:"",name:"",arguments:""};e.id&&(n.id=e.id),e.name&&(n.name=e.name),n.arguments=e.argumentsMode==="replace"?e.arguments??"":`${n.arguments}${e.arguments??""}`,t.set(e.index,n)}function Ki(t){let e=t.indexOf("__");return e<=0||e+2>=t.length?t:t.slice(e+2)}function Gi(t){let e=t.indexOf("__");if(!(e<=0||e+2>=t.length))return t.slice(0,e)}var eo="tool_schema_load";function Hi(t){return t?.type!=="tool_schema_load"||!Array.isArray(t.requestedToolNames)?[]:[...new Set(t.requestedToolNames.filter(e=>typeof e=="string"&&e.trim().length>0))]}function H(t,e,n,r){t?.invoke(e,n).catch(o=>{let s=o instanceof Error?o.message:String(o);r.warn(`[hook:${e}] handler failed: ${s}`)})}function Wi(t){if(t.blocked)return"policy_blocked";let e=typeof t.details?.error=="string"?t.details.error:"",n=`${e} ${t.error??""}`;return e==="semantic_quality_failed"?"semantic_quality_failed":/MCP_START_FAILED/iu.test(n)?"mcp_start_failed":/mcp_not_connected|mcp_unavailable/iu.test(n)?"mcp_unavailable":/\bTIMEOUT\b|timed out/iu.test(n)?"timeout":"tool_execution_failed"}function Ji(t,e){let n=typeof e.message?.content=="string"?e.message.content:"",r=n?n.slice(0,2e3):void 0,o=e.details,s=typeof o?.stdout=="string"?o.stdout.slice(0,8e3):void 0,i=typeof o?.stderr=="string"?o.stderr.slice(0,4e3):void 0,a=typeof o?.exitCode=="number"?o.exitCode:void 0;return{type:"tool_result",turnId:t,callId:e.callId,name:e.toolName,ok:e.ok,error:e.error,outputPreview:r,durationMs:e.durationMs,exitCode:a,stdout:s,stderr:i,details:o}}function Yi(t,e){if(!e.ok)return[];let n=e.details;if(!n)return[];let r=[],o=Array.isArray(n.inlineImageUrls)?n.inlineImageUrls.filter(s=>typeof s=="string"&&s.trim().length>0):[];for(let s of o)r.push(Ad(t,"image",s,n));return r}function Ad(t,e,n,r){return{type:"media_result",turnId:t,mediaType:e,url:n,model:typeof r.model=="string"?r.model:void 0,provider:typeof r.provider=="string"?r.provider:void 0,durationSeconds:typeof r.durationMs=="number"?r.durationMs/1e3:void 0,...typeof r.mimeType=="string"?{mimeType:r.mimeType}:{},...typeof r.filename=="string"?{filename:r.filename}:{},...typeof r.size=="number"?{size:r.size}:{},taskId:typeof r.taskId=="string"?r.taskId:void 0}}var xd=new Set(["write","edit","patch"]);function Xi(t){let{turnId:e,result:n,toolCalls:r}=t;if(!n.ok)return[];let o=r.find(a=>a.id===n.callId);if(!o)return[];let s=[],i=Pd(o.function.arguments);if(!i)return s;if(xd.has(n.toolName)){let a=Md(i);a&&s.push({type:"artifact",turnId:e,artifactId:`artifact-${n.callId}`,artifactType:Id(a),title:a.split(/[\\/]/).pop()||a,filePath:a,language:Od(a)})}return s}function Pd(t){try{return JSON.parse(t)}catch{return null}}function Md(t){return typeof t.file_path=="string"?t.file_path:typeof t.filePath=="string"?t.filePath:typeof t.path=="string"?t.path:void 0}function Id(t){let e=t.split(".").pop()?.toLowerCase()??"";return["png","jpg","jpeg","gif","webp","svg","bmp","ico"].includes(e)?"image":["md","txt","pdf","doc","docx","rtf","html"].includes(e)?"document":["mermaid","mmd","dot","puml","plantuml"].includes(e)?"diagram":["csv","tsv","xlsx","xls"].includes(e)?"table":["ts","tsx","js","jsx","py","rs","go","java","c","cpp","h","cs","rb","sh","sql","json","yaml","yml","toml","xml","css","scss","vue","svelte"].includes(e)?"code":"file"}function Od(t){let e=t.split(".").pop()?.toLowerCase()??"";return{ts:"typescript",tsx:"typescriptreact",js:"javascript",jsx:"javascriptreact",py:"python",rs:"rust",go:"go",java:"java",c:"c",cpp:"cpp",h:"c",cs:"csharp",rb:"ruby",sh:"shellscript",sql:"sql",json:"json",yaml:"yaml",yml:"yaml",toml:"toml",xml:"xml",html:"html",css:"css",scss:"scss",vue:"vue",svelte:"svelte",md:"markdown"}[e]}var eu=ju(Qc(),1),b_=new eu.Ajv2020({allErrors:!0,allowUnionTypes:!0,strict:!1,validateFormats:!1}),Zc=new WeakMap;function T_(t){let e=Zc.get(t);if(e)return e;let n=b_.compile(t);return Zc.set(t,n),n}function v_(t){return t.instancePath?`arguments${t.instancePath}`:t.keyword==="required"&&typeof t.params.missingProperty=="string"?`arguments/${t.params.missingProperty}`:"arguments"}function k_(t){return(t??[]).slice(0,4).map(e=>`${v_(e)} ${e.message??`violates ${e.keyword}`}`).join("; ")}function tu(t,e,n){let r;try{r=JSON.parse(n)}catch{return{ok:!1,error:`Tool "${t}" arguments must be valid JSON.`}}if(!r||typeof r!="object"||Array.isArray(r))return{ok:!1,error:`Tool "${t}" arguments must be a JSON object.`};if(!e)return{ok:!0};try{let o=T_(e);return o(r)?{ok:!0}:{ok:!1,error:`Tool "${t}" arguments do not match the offered schema: ${k_(o.errors)}.`}}catch(o){return{ok:!1,error:`Tool "${t}" has an invalid offered JSON Schema: ${o instanceof Error?o.message:String(o)}.`}}}function vr(t,e){return typeof t=="number"&&Number.isFinite(t)&&t>=1?Math.round(t):0}function kr(t){if(typeof t=="number"&&Number.isFinite(t)&&t>=1)return Math.round(t)}function nu(t){return t.filter(e=>e.role!=="assistant"?!0:!(typeof e.content=="string"&&e.content.trim()===""))}function ru(t){try{let e=JSON.parse(t),r=[e.description,e.command,e.query,e.url,e.path,e.file_path,e.filePath,e.pattern,e.model].find(s=>typeof s=="string"&&s.trim().length>0);if(typeof r=="string")return r.trim().slice(0,240);let o=Object.keys(e);return o.length>0?o.slice(0,5).join(" / "):void 0}catch{return}}function ni(t){let e=t.message.toLowerCase();return t.status===413||e.includes("prompt_too_long")||e.includes("context_length_exceeded")||e.includes("maximum context length")}function ri(t){return t==="length"||t==="max_tokens"}function oi(t){let e=t.message.toLowerCase();return(e.includes("image")||e.includes("media")||e.includes("file too large")||e.includes("payload too large"))&&(t.status===413||e.includes("too large")||e.includes("size"))}function ou(t){let e=t.headers;if(!e)return null;let n=e["retry-after"]??e["Retry-After"];if(!n)return null;let r=parseInt(n,10);return!isNaN(r)&&r>0?r*1e3:null}function su(t){if(t.status!==400)return null;let e=t.message.match(/input length and `max_tokens` exceed context limit: (\d+) \+ (\d+) > (\d+)/);if(!e?.[1]||!e?.[3])return null;let n=parseInt(e[1],10),r=parseInt(e[3],10);if(isNaN(n)||isNaN(r))return null;let o=r-n-1e3;return o>=3e3?o:null}async function*iu(t){let{messages:e,contentReplacementState:n,guardConfig:r,runtimePorts:o,hooks:s,hookCtx:i,sessionId:a,currentModel:l,log:c,recovery:u,onAutocompact:d}=t,f;{let g=await o.enforceToolResultBudget(e,n,a);if(f=g.messages,g.newlyReplacedCount>0){let m=g.newlyPersistedBytes??0,p=m>0?` (~${Math.max(1,Math.round(m/1024))} KB)`:"";c.info(`tool-result-budget: persisted ${g.newlyReplacedCount} oversized tool results${p}`),yield u("tool_result_budget",`${g.newlyReplacedCount} persisted${p}`)}}if(r.contextWindowTokens>0){let g=r.contextWindowTokens*.75,m=o.getActiveContextCompressionEngine(),p;m?p=await m.compressAsync(f,g,{model:l,sessionId:a}):p=o.compressMessages(f,{budget:g,model:l}),p.droppedCount>0&&(f=p.messages,c.info(`autocompact: ${p.strategy}, dropped ${p.droppedCount}`),yield u("autocompact",`${p.strategy}: ${p.droppedCount} dropped`),yield{type:"lifecycle",turnId:i.turnId,kind:"context_compression",status:"completed",detail:`${p.strategy}: ${p.droppedCount} dropped`},d(),H(s,"context.after_compact",{...i,removedCount:p.droppedCount},c))}return f=nu(f),f}async function*au(t,e){let{state:n,guardState:r,signal:o,querySource:s,turnId:i,log:a,emitRecovery:l}=e,c=t instanceof Error?t.message:String(t),u=typeof t?.status=="number"?t.status:void 0;if(!u&&c&&(c.includes("ECONNRESET")||c.includes("EPIPE"))){let f=(n.consecutiveApiRetries??0)+1;return f>Tt?(a.info(`stale connection retry limit reached (${Tt}), aborting`),yield{type:"error",turnId:i,error:c,code:"RETRIES_EXHAUSTED",usage:n.totalUsage},{kind:"return"}):(a.info(`stale connection (${c.includes("ECONNRESET")?"ECONNRESET":"EPIPE"}): retrying`),yield l("stale_connection_retry",c.slice(0,80)),{kind:"continue",patch:{consecutiveApiRetries:f,transition:void 0}})}let d=su({status:u,message:c});if(d!==null)return a.info(`max_tokens overflow: adjusting to ${d}`),r.currentMaxOutputTokens=d,{kind:"continue",patch:{transition:void 0}};if(Gr(u)){if(n.consecutive529Errors++,n.consecutive529Errors>2&&!Fn())return a.info(`transient ${u} \xD7 ${n.consecutive529Errors}: hard limit reached, aborting`),yield{type:"error",turnId:i,error:`API unavailable after ${n.consecutive529Errors} consecutive ${u} errors`,code:"API_ERROR",usage:n.totalUsage},{kind:"return"};if(Fn()){let g=Dn(n.consecutive529Errors);a.info(`persistent retry: waiting ${g}ms (attempt ${n.consecutive529Errors})`);let m=g;for(;m>0;){if(o?.aborted)return yield{type:"error",turnId:i,error:"Aborted during retry wait",code:"ABORTED",usage:n.totalUsage},{kind:"return"};yield{type:"heartbeat",turnId:i,message:`Retrying in ${Math.ceil(m/1e3)}s (${u})`};let p=Math.min(m,Vi);await new Promise(b=>setTimeout(b,p)),m-=p}return{kind:"continue",patch:{transition:void 0}}}if(Kr(s)){let m=ou({status:u,message:c})??Dn(n.consecutive529Errors);return a.info(`transient ${u}: retry in ${m}ms`),yield l("retry",`${u} retry in ${m}ms`),await new Promise(p=>setTimeout(p,m)),{kind:"continue",patch:{transition:void 0}}}a.info(`background source ${s}: not retrying ${u}`)}return{kind:"streamError",streamError:{status:u,message:c}}}function lu(t){return[...new Set(t.map(e=>e.function.name))].sort()}function w_(t){return t?.find(e=>e.source==="llmrouter.settlement")??t?.find(e=>e.source==="provider.reported")}function E_(t){let e=new Set,n=[];for(let r of t){let o=`${r.name}\0${r.reason}`;e.has(o)||(e.add(o),n.push(r))}return n.sort((r,o)=>`${r.name}:${r.reason}`.localeCompare(`${o.name}:${o.reason}`))}function C_(t){let e=typeof t.blockReason=="string"?t.blockReason:void 0;if(t.blocked&&/confirmation timed out/i.test(e??""))return"confirmation-timeout";if(t.blocked)return"blocked-by-policy";let n=typeof t.details?.error=="string"?t.details.error:void 0;if(n==="write.target_exists")return"existing-file-update-tool-required";if(n==="invalid_arguments")return"invalid-arguments";if(n==="blocked_global_process_kill")return"global-process-kill-blocked";if(n==="blocked_by_guard")return"blocked-by-policy";if(n==="semantic_quality_failed")return"semantic-quality-failed"}function cu(t){return t&&typeof t=="object"&&!Array.isArray(t)?t:null}function $_(t,e){if(!t)return null;let n=cu(t.function.parameters),r=cu(n?.properties)??{},o=Array.isArray(n?.required)?n.required.filter(a=>typeof a=="string"&&a.trim().length>0):[],s=P_(e);if(!s)return`Tool "${t.function.name}" arguments must be a JSON object.`;for(let a of o){let l=s[a];if(typeof l=="string"?l.trim().length===0:l==null)return`Tool "${t.function.name}" missing required field \`${a}\`. Use the offered tool schema exactly.`}if(n?.additionalProperties===!1){let a=new Set(Object.keys(r)),l=Object.keys(s).filter(c=>!a.has(c));if(l.length>0){let c=[...a].map(u=>`\`${u}\``).join(", ")||"none";return`Tool "${t.function.name}" has unexpected field${l.length===1?"":"s"} ${l.map(u=>`\`${u}\``).join(", ")}. Remove ${l.length===1?"it":"them"}; the only allowed fields are ${c}. Use the canonical tool schema exactly and do not retry the rejected arguments unchanged.`}}let i=tu(t.function.name,n??void 0,e);return i.ok?null:i.error??`Tool "${t.function.name}" arguments do not match the offered schema.`}function S_(t,e){let n=t?.meta?.identity;if(n?.schemaVersion===1&&n.wireName===e)return n;let r=t?.meta?.category,o=Ki(e),s=Gi(e),a=r==="orchestration"?"orchestration":o==="skill_search"||o==="skill_load"||o==="skill_resource_read"?"skill":s!==void 0||r==="mcp"?"mcp":"builtin",l="agent";return{schemaVersion:1,wireName:e,logicalName:o,family:a,owner:l,...s?{serverId:s}:{},capabilityId:`${l}:${s??"native"}:${o}`}}function uu(t){return{role:"user",content:`Background sub-agent result(s) became available while the main task continued.
9
+ `+t.join(`
10
+ `)}}var A_=18e4,Rr=class extends Error{constructor(n){super(`LLM stream idle timeout after ${n}ms without a chunk.`);this.timeoutMs=n;this.name="LLMStreamIdleTimeoutError"}timeoutMs;code="LLM_STREAM_TIMEOUT"};async function*x_(t,e){if(!Number.isFinite(e)||e<=0){yield*t;return}let n=t[Symbol.asyncIterator]();try{for(;;){let r,o=await Promise.race([n.next(),new Promise(s=>{r=setTimeout(()=>s("timeout"),e)})]);if(r&&clearTimeout(r),o==="timeout")throw new Rr(e);if(o.done)return;yield o.value}}finally{n.return?.().catch(()=>{})}}function P_(t){try{let e=JSON.parse(t);return e&&typeof e=="object"&&!Array.isArray(e)?e:null}catch{return null}}async function*du(t,e,n,r){let{turnId:o,sessionId:s,messages:i,availableTools:a,tools:l,model:c,apiKey:u,temperature:d=0,hooks:f,signal:g}=t,m=(k,B)=>{k.push(B)},p={sessionId:s,turnId:o},b=t.maxTurns??0,T=t.querySource,C=a??l,w=t.runtimePorts.resolveToolEligibility(C,t.toolEligibilityContext),q=new Set(l.map(k=>k.function.name)),R=w.eligibleTools,ee=new Map(R.map(k=>[k.function.name,k])),W=w.eligibleTools.filter(k=>q.has(k.function.name)),we=[];for(let k of w.blockedTools)we.push({name:k.toolName,reason:"blocked-by-policy"}),yield{type:"tool_blocked",turnId:o,callId:"",name:k.toolName,reason:"blocked-by-policy"};let Ee=vr(t.maxRounds,i),ye=kr(t.maxToolCalls),Me={contextWindowTokens:t.contextWindowTokens??Ui,responseBufferTokens:Bi,maxOutputTokens:t.maxOutputTokens??zi,abortSignal:g,reactiveCompactEnabled:!0},Je=new Set,mt=[],Cn=new Map,$r=0,yu=new Set,_u=0,$n=new Set(t.deferredToolNames??[]),gt=new Set;for(let k of t.loadedDeferredToolNames??[])$n.has(k)&&ee.has(k)?gt.add(k):t.loadedDeferredToolNames?.delete(k);let Sr=()=>{let k=new Map(W.map(B=>[B.function.name,B]));for(let B of gt){let J=ee.get(B);J&&k.set(B,J)}return[...k.values()]},ai=(k,B)=>B?k.filter(J=>B.has(J.function.name)):[...k],Ce=Sr(),bu=()=>lu(Ce),li=!1,E={messages:[...i],hasAttemptedReactiveCompact:!1,turnCount:1,transition:void 0,guardState:Wr(Me),reactiveCompactState:Qr(),toolLoopState:qn({maxRounds:Ee,replayMessages:[...i]}).state,finalText:"",totalUsage:{inputTokens:0,outputTokens:0},consecutive529Errors:0,consecutiveApiRetries:0,contentReplacementState:t.runtimePorts.createContentReplacementState(),recoveryTrace:new Map},Tu=4,vu=4,ci=0,Ar=!1,ui=new Map,di,qe=(k,B)=>{let J=`${k}:${B??""}`,$e=(ui.get(J)??0)+1;if(ui.set(J,$e),k==="autocompact"){let ae=E.recoveryTrace.get("autocompact")??0;if($e>Tu||ae>=vu){let Ye=`Repeated context compression made no forward progress: ${B??"autocompact"}`;return di=Ye,E.recoveryTrace.set("compression_loop_guard",(E.recoveryTrace.get("compression_loop_guard")??0)+1),{type:"recovery",turnId:o,action:"compression_loop_guard",detail:Ye}}}return E.recoveryTrace.set(k,(E.recoveryTrace.get(k)??0)+1),{type:"recovery",turnId:o,action:k,detail:B}},fi=()=>({type:"tool_use_summary",turnId:o,ledgerSchemaVersion:5,toolCalls:mt.map(k=>({...k})),availableToolNames:lu(a??l),enabledToolNames:bu(),toolCallNames:[...Je].sort(),blockedToolCalls:E_(we)}),ku=(k,B)=>({type:"end",turnId:o,content:k,turnStatus:B,taskOutcome:"unverified",usage:E.totalUsage,model:c,...E.recoveryTrace.size>0?{recoveryTrace:Object.fromEntries(E.recoveryTrace)}:{}});function*Sn(k,B="completed"){yield fi(),yield ku(k,B)}function*_e(k,B){yield fi(),yield{type:"error",turnId:o,error:k,code:B,usage:E.totalUsage}}let ht=0,qt=0;function*Ru(k){ht<=qt||(yield{type:"text_rollback",turnId:o,keepLength:qt,reason:k},ht=qt)}for(Ce=Sr();;){yield*Ru("round_restart"),ci++,Ar=!1;let{messages:k,turnCount:B,guardState:J,reactiveCompactState:$e}=E,{toolLoopState:ae}=E;if(t.refreshTools&&ci>1){let y=t.refreshTools(),h=new Set(y.map(X=>X.function.name)),S=ai(R.filter(X=>!$n.has(X.function.name)||gt.has(X.function.name)),h),Y=S;Y!==Ce&&(Ce=Y,r.debug(`tools refreshed within initial turn snapshot: ${S.length}/${R.length} tools`))}if(t.drainPendingGuidance)for(let y of t.drainPendingGuidance()){let h=y.trim();h&&(k.push({role:"user",content:h}),r.info(`mid-turn guidance injected (${h.length} chars)`))}if(t.drainPendingTaskNotifications){let y=t.drainPendingTaskNotifications().filter(h=>h.trim());y.length>0&&(k.push(uu(y)),r.info(`background task result injected (${y.length} item(s))`))}if(Xr(J,Me)){r.info(`turn aborted by guard at turn ${B}`),yield*_e("Turn aborted","ABORTED");return}let Ye=yield*iu({messages:k,contentReplacementState:E.contentReplacementState,guardConfig:Me,runtimePorts:t.runtimePorts,hooks:f,hookCtx:p,sessionId:s,currentModel:c,log:r,recovery:(y,h)=>qe(y,h),onAutocompact:()=>{E.hasAttemptedReactiveCompact=!1}});if(Ye!==k&&k.splice(0,k.length,...Ye),di){yield*Sn("","stopped");return}let xr=Jr(J,Me);xr.level==="warning"&&r.info(`token budget warning: ${xr.usagePercent}% used, ${xr.remainingTokens} remaining`);let pi=t.toolChoice==="required"&&li?"auto":t.toolChoice??"auto",An=Dr({tools:Ce,toolChoice:pi}),xn=qn({maxRounds:Ee,replayMessages:Ye,lastStopReason:ae.lastStopReason,options:{stopReason:ae.lastStopReason}}),mi=xn.state.replayMessages;ae=xn.state,xn.recoveryActions.length>0&&r.debug(`tool loop recovery: ${xn.recoveryActions.map(y=>y.detail??y.kind).join("; ")}`),r.debug(`turn ${B}, messages: ${mi.length}`),H(f,"turn.before_inference",{...p,model:c},r);let Dt=!1,gi=[],hi=pi==="required",Pr=0,Ft="";function*wu(y){if(y){if(hi){Ft+=y;return}Pr+=y.length,ht+=y.length,yield{type:"delta",turnId:o,text:y}}}function*Eu(){if(!Ft)return;let y=Ft;Ft="",Pr+=y.length,ht+=y.length,yield{type:"delta",turnId:o,text:y}}let yi=new Map,Mr="stop",te,Pn,D=null,Mn=null,Cu=performance.now(),Ir,_i=0,bi=0,Ti=0,Or=0,vi,Xe,ki=!1,In=!1,Ri=!1,yt=[],Ut=[];try{let y=e.stream({model:c,messages:mi,...An.tools.length>0?{tools:An.tools,toolChoice:An.normalizedToolChoice??"auto"}:{},temperature:d,maxTokens:J.currentMaxOutputTokens||void 0,streamRequired:t.streamRequired,reasoning:t.reasoning,promptCacheKey:t.promptCacheKey,promptCacheRetention:t.promptCacheRetention,serviceTier:t.serviceTier,openaiBuiltinTools:t.openaiBuiltinTools,...ye!==void 0?{maxToolCalls:ye}:{},parallelToolCalls:t.parallelToolCalls,textVerbosity:t.textVerbosity},u,g);for await(let h of x_(y,t.llmStreamIdleTimeoutMs??A_))switch(Ir===void 0&&h.type!=="usage"&&h.type!=="response_id"&&(Ir=Math.max(0,Math.round(performance.now()-Cu))),h.type){case"delta":_i+=1,bi+=h.text.length,Xe===void 0&&(Xe="text"),Or===0&&(ki=!0),gi.push(h.text),yield*wu(h.text);break;case"tool_call_delta":Or+=1,Xe===void 0&&(Xe="tool_call"),Dt=!0,Zr(yi,h);break;case"reasoning_delta":Ti+=1,Xe===void 0&&(Xe="reasoning"),yt.push(h.text),yield{type:"reasoning_delta",turnId:o,text:h.text};break;case"reasoning_block_complete":h.signature&&Ut.push({thinking:yt.join(""),signature:h.signature}),yt.length=0;break;case"usage":Pn=Hr(h);let S=w_(h.records);te={inputTokens:S?.tokens.inputTokens??h.promptTokens,outputTokens:S?.tokens.outputTokens??h.completionTokens,reasoningTokens:S?.tokens.reasoningTokens??h.reasoningTokens,cacheRead:S?.tokens.cacheReadTokens??h.cacheReadTokens,cacheWrite:S?.tokens.cacheWriteTokens??h.cacheCreationTokens,records:h.records};break;case"response_id":vi=h.id;break;case"annotations":yield{type:"annotations",turnId:o,annotations:h.annotations};break;case"builtin_tool_status":yield{type:"heartbeat",turnId:o,message:`${h.toolType}: ${h.event}`};break;case"error":Mn=h.message||"LLM provider returned an error chunk";break;case"done":Ri=!0,Mr=h.finishReason;break}if(Mn){H(f,"stop.failure",{sessionId:s,reason:"PROVIDER_STREAM_ERROR",error:Mn},r),yield*_e(Mn,"PROVIDER_STREAM_ERROR");return}if(Dt||H(f,"turn.after_inference",{...p,model:c},r),t.postSamplingHooks&&t.postSamplingHooks.length>0){let h=c;for(let S of t.postSamplingHooks)try{S({messages:[...Ye],model:h,sessionId:s})}catch{}}}catch(y){if(y instanceof Rr){H(f,"stop.failure",{sessionId:s,reason:y.code,error:y.message},r),yield*_e(y.message,y.code);return}let h=yield*au(y,{state:E,guardState:J,signal:g,querySource:T,turnId:o,log:r,emitRecovery:qe});if(h.kind==="return")return;if(h.kind==="continue"){E={...E,...h.patch};continue}D=h.streamError}if(!D&&!Ri){let y="LLM stream closed before a terminal event; the response was likely truncated upstream.";H(f,"stop.failure",{sessionId:s,reason:"RETRYABLE_TRANSIENT",error:y},r),yield*_e(y,"RETRYABLE_TRANSIENT");return}if(D&&H(f,"turn.after_inference",{...p,model:c,response:{error:D.message}},r),D)if(ni(D))In=!0,r.info(`withheld prompt_too_long error (status=${D.status})`);else if(oi(D))In=!0,r.info(`withheld media_size error (status=${D.status})`);else{let y=Yr({status:D.status??500,message:D.message},J,Me);if(y.action==="reactive_compact"&&Gt($e)&&($e.attemptedThisTurn=!0,J.hasAttemptedReactiveCompact=!0,yield qe("reactive_compact",`API ${D.status??500}: ${D.message}`)),y.action==="retry"){let S=(E.consecutiveApiRetries??0)+1;if(S>Tt){r.info(`API retry limit reached (${Tt}), aborting`);let Y=bt(D.status,D.message);yield*_e(D.message,Y);return}yield qe("retry",y.reason),E={...E,consecutiveApiRetries:S,transition:void 0};continue}let h=bt(D.status,D.message);H(f,"stop.failure",{sessionId:s,reason:h,error:D.message},r),yield*_e(D.message,h);return}te&&(E.totalUsage.inputTokens+=te.inputTokens,E.totalUsage.outputTokens+=te.outputTokens,te.reasoningTokens&&(E.totalUsage.reasoningTokens=(E.totalUsage.reasoningTokens??0)+te.reasoningTokens),te.cacheRead&&(E.totalUsage.cacheRead=(E.totalUsage.cacheRead??0)+te.cacheRead),te.cacheWrite&&(E.totalUsage.cacheWrite=(E.totalUsage.cacheWrite??0)+te.cacheWrite),te.records?.length&&(E.totalUsage.records=[...E.totalUsage.records??[],...te.records])),r.info(`[provider-context] ${JSON.stringify({event:"context_ledger_round",turnId:o,round:B,ttftMs:Ir,inputTokens:te?.inputTokens??0,outputTokens:te?.outputTokens??0,cacheReadTokens:te?.cacheRead??0,cacheWriteTokens:te?.cacheWrite??0,totalPromptTokens:Pn??0,responseIdReceived:vi!==void 0,toolDefinitionCount:Ce.length,providerTextChunkCount:_i,providerTextChars:bi,providerReasoningChunkCount:Ti,providerToolCallDeltaCount:Or,firstSemanticProviderEvent:Xe??"none",textBeforeFirstToolCall:ki,suppressLiveText:hi,liveEmittedTextChars:Pr,bufferedSuppressedTextChars:Ft.length})}`),Pn&&(J.promptTokens=Pn);let Ie=gi.join(""),De=[...yi.values()].map((y,h)=>({id:y.id||`tc_${o}_${B}_${h}`,type:"function",function:{name:y.name,arguments:y.arguments}}));if(!D&&$r===0&&De.length===0&&!Dt&&Ie.trim()===""&&yt.join("").trim()===""&&Ut.length===0){let y="LLM returned an empty response before any tool use.";H(f,"stop.failure",{sessionId:s,reason:"EMPTY_MODEL_RESPONSE",error:y},r),yield*_e(y,"EMPTY_MODEL_RESPONSE");return}if(!D&&$r>0&&De.length===0&&!Dt&&Ie.trim()===""&&!ri(Mr)){let y="LLM returned no user-visible response after tool use.";H(f,"stop.failure",{sessionId:s,reason:"EMPTY_MODEL_RESPONSE_AFTER_TOOL",error:y},r),yield*_e(y,"EMPTY_MODEL_RESPONSE_AFTER_TOOL");return}if(De.length===0&&!Dt){if(t.drainPendingTaskNotifications){let S=t.drainPendingTaskNotifications().filter(Y=>Y.trim());if(S.length>0){E={...E,messages:[...k,...Ie?[{role:"assistant",content:Ie}]:[],uu(S)]},r.info(`late background task result consumed at completion (${S.length} item(s)) \u2014 running another round`);continue}}if(t.drainPendingGuidance){let S=t.drainPendingGuidance().map(Y=>Y.trim()).filter(Boolean);if(S.length>0){E={...E,messages:[...k,...Ie?[{role:"assistant",content:Ie}]:[],...S.map(Y=>({role:"user",content:Y}))]},r.info(`late mid-turn guidance consumed at completion (${S.length} item(s)) \u2014 running another round`);continue}}if(Ie&&(E.finalText=Ie),In&&D&&ni(D)){if(Gt($e)){$e.attemptedThisTurn=!0,J.hasAttemptedReactiveCompact=!0,r.info("withheld 413: reactive compact attempt"),yield qe("reactive_compact","withheld prompt_too_long"),E={...E,hasAttemptedReactiveCompact:!0,transition:{reason:"reactive_compact_retry"}};continue}r.info("withheld 413: recovery exhausted, surfacing error"),H(f,"stop.failure",{sessionId:s,reason:"prompt_too_long",error:D.message},r),yield*_e(D.message,"PROMPT_TOO_LONG");return}if(In&&D&&oi(D)){if(Gt($e)){$e.attemptedThisTurn=!0,J.hasAttemptedReactiveCompact=!0,r.info("withheld media error: reactive compact strip-retry"),yield qe("reactive_compact","media error strip-retry"),E={...E,hasAttemptedReactiveCompact:!0,transition:{reason:"reactive_compact_retry"}};continue}r.info("withheld media error: recovery exhausted"),H(f,"stop.failure",{sessionId:s,reason:"media_error",error:D.message},r),yield*_e(D.message,"IMAGE_ERROR");return}ri(Mr)&&(r.info("provider stopped at its output-token limit; preserving partial content"),Ar=!0),ae=Ln(ae,{replayMessages:k,lastStopReason:"completed"});let y=!E.finalText,h=E.finalText;yield*Sn(h,Ar||y?"stopped":"completed");return}let $u=Ut.length===0&&yt.length>0?yt.join(""):void 0;qt=ht,m(k,Lr(De,Ie||void 0,Ut.length>0?Ut:void 0,$u)),ae=Vr(ae,{replayMessages:k,pendingToolCallIds:De.map(y=>y.id),completedToolCallIds:ae.completedToolCallIds,lastStopReason:"tool_calls"});let Bt=[],Su=new Set(Ce.map(y=>y.function.name)),wi=[],Ei=[];for(let y of De)Su.has(y.function.name)?wi.push(y):Ei.push(y);for(let y of Ei){let S=$n.has(y.function.name)&&!gt.has(y.function.name)?`Tool "${y.function.name}" schema is not loaded. Call "${eo}" with that exact tool name before invoking it.`:`Tool "${y.function.name}" was not offered for this turn and will not be executed. Use only the tools listed in the current request.`;we.push({name:y.function.name,reason:"not-offered"}),m(k,Vt(y.id,{ok:!1,error:S})),Bt.push(y.id),Je.add(y.function.name),r.warn(`unoffered tool call suppressed: ${y.function.name}`)}let Nr=[],Ci=[];for(let y of wi){let h=An.tools.find(Y=>Y.function.name===y.function.name),S=$_(h,y.function.arguments);S?Ci.push({call:y,error:S}):Nr.push(y)}for(let y of Ci){let h=y.call;we.push({name:h.function.name,reason:"invalid-arguments"}),m(k,Vt(h.id,{ok:!1,error:y.error})),Bt.push(h.id),Je.add(h.function.name),r.info(`invalid tool arguments blocked: ${h.function.name}`)}let On=Nr.slice(0,ye);On.length>0&&(yield*Eu(),qt=ht);let $i=Nr.slice(On.length);if($i.length>0){let y=`This model round proposed more than ${ye} tool calls. Only the first ${ye} were executed; re-issue any still-needed calls in the next round.`;for(let h of $i){we.push({name:h.function.name,reason:"per-round-tool-call-limit"});let S=Vt(h.id,{ok:!1,error:y});m(k,S),Bt.push(h.id)}}for(let y of On){let h=y.function.arguments,S=Ce.find(X=>X.function.name===y.function.name);if(S?.backfillObservableInput)try{let X=JSON.parse(y.function.arguments),Qe={...X};S.backfillObservableInput(Qe),Object.keys(Qe).some(_t=>!(_t in X))&&(h=JSON.stringify(Qe))}catch{}let Y={sequence:mt.length,callId:y.id,name:y.function.name,identity:S_(S,y.function.name),status:"running",arguments:h};mt.push(Y),Cn.set(y.id,Y),yield{type:"tool_call",turnId:o,callId:y.id,name:y.function.name,...S?.meta?.displayName?.fallback?.trim()?{displayName:S.meta.displayName.fallback.trim()}:{},arguments:h,inputSummary:ru(h)},yu.add(y.function.name),_u++}try{let y=t.runtimePorts.createStreamingToolExecutor({toolInvoker:n,hooks:f,sessionId:s,turnId:o,log:r,signal:g,maxConcurrentTools:t?.maxConcurrentTools,maxExecutionMs:Fi,executionTimeoutMsByTool:new Map(Ce.flatMap(h=>{let S=h.meta?.executionTimeoutMs;return typeof S=="number"&&Number.isFinite(S)&&S>0?[[h.function.name,S]]:[]})),contextState:E.contentReplacementState});for(let h of On)y.addTool(h);for await(let h of y.getRemainingResults()){let S=Cn.get(h.callId);S&&(S.status=h.blocked?"blocked":h.ok?"succeeded":"failed",!h.ok&&typeof h.error=="string"&&h.error.trim()&&(S.error=h.error),h.ok||(S.failureKind=Wi(h)));let Y=C_(h);if(Y&&we.push({name:h.toolName,reason:Y}),h.blocked&&(yield{type:"tool_blocked",turnId:o,callId:h.callId,name:h.toolName,reason:h.blockReason??"blocked"}),h.ok&&h.toolName===eo){let X=Hi(h.details),Qe=t.refreshTools?new Set(t.refreshTools().map(be=>be.function.name)):void 0,zt=[],_t=[],Nn=[];for(let be of X)!ee.get(be)||Qe&&!Qe.has(be)?Nn.push(be):!$n.has(be)||gt.has(be)?_t.push(be):(gt.add(be),t.loadedDeferredToolNames?.add(be),zt.push(be));Ce=ai(Sr(),Qe);let Au=h.message;Au.content=JSON.stringify({loaded:zt,alreadyResident:_t,unavailable:Nn}),h.details={type:"tool_schema_load",requestedToolNames:X,loaded:zt,alreadyResident:_t,unavailable:Nn},r.info({turnId:o,loaded:zt,alreadyResident:_t,unavailable:Nn},"tool schemas materialized by Agent selection")}{let X=h.message;t.sanitizeToolResultMedia&&await t.sanitizeToolResultMedia(X)}m(k,h.message),Bt.push(h.callId),h.blocked||(Je.add(h.toolName),$r++),yield Ji(o,h);for(let X of Yi(o,h))yield X;for(let X of Xi({turnId:o,result:h,toolCalls:De}))yield X}}catch(y){let h=y instanceof Error?y.message:String(y);yield*_e(h,"TOOL_EXECUTION_ERROR");return}ae=Ln(ae,{replayMessages:k,completedToolCallIds:[...ae.completedToolCallIds,...Bt],lastStopReason:"tool_calls"}),t.toolChoice==="required"&&De.length>0&&(li=!0);let jr=B+1;if(b>0&&jr>b){r.info(`max turns reached (${b}), completing`),yield qe("turn_limit_reached",`${b} tool rounds`),yield*Sn(E.finalText,"stopped");return}if(Ee>0&&jr>Ee){r.info(`tool loop budget exhausted (${Ee} rounds), returning`),yield qe("tool_budget_exhausted",`${Ee} rounds`),yield*Sn(E.finalText,"stopped");return}E={messages:k,hasAttemptedReactiveCompact:!1,turnCount:jr,transition:{reason:"next_turn"},guardState:J,reactiveCompactState:$e,toolLoopState:ae,finalText:E.finalText,totalUsage:E.totalUsage,consecutive529Errors:0,consecutiveApiRetries:0,contentReplacementState:E.contentReplacementState,recoveryTrace:E.recoveryTrace}}}function fu(t){return[...new Set((t??[]).map(e=>e.function.name))].sort()}var wr=class{transport;apiKey;toolInvoker;log;hooks;configuredMaxRounds;projectRoot;runtimePorts;constructor(e){this.transport=e.llmTransport,this.apiKey=e.apiKey,this.toolInvoker=e.toolInvoker,this.log=e.log,this.hooks=e.hooks,this.projectRoot=e.projectRoot,this.runtimePorts=e.runtimePorts,this.configuredMaxRounds=typeof e.maxRounds=="number"&&Number.isFinite(e.maxRounds)&&e.maxRounds>=1?Math.round(e.maxRounds):void 0}async*run(e,n){let{turnId:r,messages:o,availableTools:s,tools:i,systemPrompt:a,config:l}=e,c={sessionId:e.sessionId,turnId:r},u=[...o].reverse().find(C=>C.role==="user"&&typeof C.content=="string")?.content,d=!1,f=()=>({type:"tool_use_summary",turnId:r,telemetrySource:"agent",ledgerSchemaVersion:5,toolCalls:[],availableToolNames:fu(s??i),enabledToolNames:fu(i),toolCallNames:[],blockedToolCalls:[]}),g=typeof l?.maxRounds=="number"&&Number.isFinite(l.maxRounds)?l.maxRounds:this.configuredMaxRounds,m=g===void 0?void 0:Math.round(g),b=typeof l?.maxToolCalls=="number"&&Number.isFinite(l.maxToolCalls)?l.maxToolCalls:void 0,T=kr(b);yield{type:"start",turnId:r,effectiveMaxRounds:vr(m,o),...T!==void 0?{effectiveMaxToolCalls:T}:{}};try{H(this.hooks,"turn.submitted",{...c,prompt:o[o.length-1]?.content??void 0},this.log);let C=zr(o),w=[];a&&w.push({role:"system",content:a}),w.push(...C);let q=l?.model??"",R=l?.reasoning;l?.reasoning?.effort==="auto"&&(R=void 0);let ee={turnId:r,sessionId:e.sessionId,messages:w,availableTools:s,tools:i,deferredToolNames:e.deferredToolNames,loadedDeferredToolNames:e.loadedDeferredToolNames,refreshTools:e.refreshTools,drainPendingGuidance:e.drainPendingGuidance,drainPendingTaskNotifications:e.drainPendingTaskNotifications,sanitizeToolResultMedia:e.sanitizeToolResultMedia,model:q,apiKey:l?.apiKey??this.apiKey,temperature:l?.temperature,maxRounds:m,contextWindowTokens:l?.contextWindowTokens,maxOutputTokens:l?.maxOutputTokens,modelMaxOutputTokens:l?.modelMaxOutputTokens,toolChoice:l?.toolChoice,parentDepth:l?.parentDepth,hooks:this.hooks,maxTurns:l?.maxTurns,maxConcurrentTools:l?.maxConcurrentTools,streamRequired:l?.streamRequired,reasoning:R,promptCacheKey:l?.promptCacheKey,promptCacheRetention:l?.promptCacheRetention,serviceTier:l?.serviceTier,openaiBuiltinTools:l?.openaiBuiltinTools,maxToolCalls:b,parallelToolCalls:l?.parallelToolCalls??!1,textVerbosity:l?.textVerbosity,projectRoot:this.projectRoot,runtimePorts:this.runtimePorts.toolLoop,signal:n};for await(let W of du(ee,this.transport,this.toolInvoker,this.log))W.type==="tool_use_summary"&&(d=!0),W.type==="end"?H(this.hooks,"turn.completed",{...c,...u?{prompt:u}:{},response:W.content},this.log):W.type==="error"&&H(this.hooks,"turn.failed",{...c,code:W.code,error:W.error},this.log),yield W}catch(C){if(d||(d=!0,yield f()),n?.aborted)H(this.hooks,"turn.failed",{...c,code:"ABORTED",error:"Turn aborted"},this.log),yield{type:"error",turnId:r,error:"Turn aborted",code:"ABORTED"};else{let w=C instanceof Error?C.message:String(C),q=typeof C?.status=="number"?C.status:void 0,R=bt(q,w);this.log.error(`turn ${r} error [${R}, retryable=${jn(R)}]: ${w}`),H(this.hooks,"turn.failed",{...c,code:R,error:w},this.log),yield{type:"error",turnId:r,error:w,code:R}}}}};import{randomUUID as M_}from"node:crypto";var pu=["response_present_choice","response_present_table","response_present_diagram"],Pe=t=>({type:"string",minLength:1,maxLength:t}),Lt=t=>({type:"string",maxLength:t}),I_=[{type:"function",function:{name:"response_present_choice",description:"Present a single-choice or multiple-choice question as an interactive response block.",parameters:{type:"object",additionalProperties:!1,required:["prompt","selection","options","submitLabel"],properties:{prompt:Pe(1e3),selection:{type:"string",enum:["single","multiple"]},options:{type:"array",minItems:2,maxItems:20,items:{type:"object",additionalProperties:!1,required:["id","label"],properties:{id:Pe(80),label:Pe(200),description:Lt(500)}}},required:{type:"boolean"},minSelections:{type:"integer",minimum:0,maximum:20},maxSelections:{type:"integer",minimum:1,maximum:20},submitLabel:Pe(80)}}}},{type:"function",function:{name:"response_present_table",description:"Present structured rows and columns as an accessible table response block.",parameters:{type:"object",additionalProperties:!1,required:["columns","rows"],properties:{title:Lt(300),caption:Lt(1e3),columns:{type:"array",minItems:1,maxItems:20,items:{type:"object",additionalProperties:!1,required:["key","label"],properties:{key:Pe(80),label:Pe(200),align:{type:"string",enum:["start","center","end"]}}}},rows:{type:"array",maxItems:200,items:{type:"object"}}}}}},{type:"function",function:{name:"response_present_diagram",description:"Present a bounded node-and-edge relationship or process diagram.",parameters:{type:"object",additionalProperties:!1,required:["nodes","edges"],properties:{title:Lt(300),direction:{type:"string",enum:["horizontal","vertical"]},nodes:{type:"array",minItems:1,maxItems:30,items:{type:"object",additionalProperties:!1,required:["id","label"],properties:{id:Pe(80),label:Pe(200),description:Lt(500),tone:{type:"string",enum:["neutral","info","success","warning","danger"]}}}},edges:{type:"array",maxItems:60,items:{type:"object",additionalProperties:!1,required:["from","to"],properties:{from:Pe(80),to:Pe(80),label:Lt(120)}}}}}}}],M=class extends Error{constructor(e){super(e),this.name="AgentContentBlockValidationError"}},Le=(t,e)=>{if(!t||typeof t!="object"||Array.isArray(t))throw new M(`${e} must be an object`);return t},G=(t,e,n,r=!1)=>{if(typeof t!="string")throw new M(`${e} must be a string`);let o=t.trim();if(!r&&o.length===0)throw new M(`${e} must not be empty`);if(o.length>n)throw new M(`${e} exceeds ${n} characters`);return o},We=(t,e,n)=>t===void 0?"":G(t,e,n,!0),si=(t,e,n,r,o)=>{if(t===void 0)return o;if(!Number.isInteger(t)||t<n||t>r)throw new M(`${e} must be an integer from ${n} to ${r}`);return t},ii=(t,e)=>{if(new Set(t).size!==t.length)throw new M(`${e} must contain unique ids`)};function Er(t){let e=Le(t,"content block"),n=G(e.id,"id",200),r=G(e.type,"type",40);if(r==="choice"){let o=e.selection;if(o!=="single"&&o!=="multiple")throw new M("selection must be single or multiple");if(!Array.isArray(e.options)||e.options.length<2||e.options.length>20)throw new M("options must contain 2 to 20 items");let s=e.options.map((c,u)=>{let d=Le(c,`options[${u}]`);return{id:G(d.id,`options[${u}].id`,80),label:G(d.label,`options[${u}].label`,200),description:We(d.description,`options[${u}].description`,500)}});if(ii(s.map(c=>c.id),"options"),e.required!==void 0&&typeof e.required!="boolean")throw new M("required must be a boolean");let i=e.required??!0,a=si(e.maxSelections,"maxSelections",1,20,1),l=si(e.minSelections,"minSelections",0,20,i?1:0);if(o==="single"&&a!==1)throw new M("single choice must allow exactly one selection");if(l>a||a>s.length)throw new M("choice selection bounds are invalid");return{id:n,type:r,prompt:G(e.prompt,"prompt",1e3),selection:o,options:s,required:i,minSelections:l,maxSelections:a,submitLabel:G(e.submitLabel,"submitLabel",80)}}if(r==="table"){if(!Array.isArray(e.columns)||e.columns.length<1||e.columns.length>20)throw new M("columns must contain 1 to 20 items");let o=e.columns.map((i,a)=>{let l=Le(i,`columns[${a}]`),c=l.align??"start";if(c!=="start"&&c!=="center"&&c!=="end")throw new M(`columns[${a}].align is invalid`);return{key:G(l.key,`columns[${a}].key`,80),label:G(l.label,`columns[${a}].label`,200),align:c}});if(ii(o.map(i=>i.key),"columns"),!Array.isArray(e.rows)||e.rows.length>200)throw new M("rows must contain at most 200 items");let s=e.rows.map((i,a)=>{let l=Le(i,`rows[${a}]`),c={};for(let[u,d]of Object.entries(l)){if(d!==null&&typeof d!="string"&&typeof d!="number"&&typeof d!="boolean")throw new M(`rows[${a}].${u} is not a table cell`);if(typeof d=="string"&&d.length>2e3)throw new M(`rows[${a}].${u} exceeds 2000 characters`);c[u]=d}return c});return{id:n,type:r,title:We(e.title,"title",300),caption:We(e.caption,"caption",1e3),columns:o,rows:s}}if(r==="diagram"){let o=e.direction??"horizontal";if(o!=="horizontal"&&o!=="vertical")throw new M("direction is invalid");if(!Array.isArray(e.nodes)||e.nodes.length<1||e.nodes.length>30)throw new M("nodes must contain 1 to 30 items");let s=new Set(["neutral","info","success","warning","danger"]),i=e.nodes.map((c,u)=>{let d=Le(c,`nodes[${u}]`),f=d.tone??"neutral";if(typeof f!="string"||!s.has(f))throw new M(`nodes[${u}].tone is invalid`);return{id:G(d.id,`nodes[${u}].id`,80),label:G(d.label,`nodes[${u}].label`,200),description:We(d.description,`nodes[${u}].description`,500),tone:f}});if(ii(i.map(c=>c.id),"nodes"),!Array.isArray(e.edges)||e.edges.length>60)throw new M("edges must contain at most 60 items");let a=new Set(i.map(c=>c.id)),l=e.edges.map((c,u)=>{let d=Le(c,`edges[${u}]`),f={from:G(d.from,`edges[${u}].from`,80),to:G(d.to,`edges[${u}].to`,80),label:We(d.label,`edges[${u}].label`,120)};if(!a.has(f.from)||!a.has(f.to))throw new M(`edges[${u}] references an unknown node`);return f});return{id:n,type:r,title:We(e.title,"title",300),direction:o,nodes:i,edges:l}}if(r==="attachment"){let o=Le(e.attachment,"attachment"),s=new Set(["image","spreadsheet","presentation","document","engineering_2d","engineering_3d","file"]);if(typeof o.kind!="string"||!s.has(o.kind))throw new M("attachment.kind is invalid");let i=G(o.downloadUrl,"attachment.downloadUrl",4e3),a=G(o.expiresAt,"attachment.expiresAt",100);try{new URL(i)}catch{throw new M("attachment.downloadUrl must be an absolute URL")}if(!Number.isFinite(Date.parse(a)))throw new M("attachment.expiresAt must be an ISO timestamp");return{id:n,type:r,attachment:{id:G(o.id,"attachment.id",200),kind:o.kind,fileName:G(o.fileName,"attachment.fileName",500),mimeType:G(o.mimeType,"attachment.mimeType",255),byteSize:si(o.byteSize,"attachment.byteSize",0,Number.MAX_SAFE_INTEGER,0),downloadUrl:i,expiresAt:a,note:We(o.note,"attachment.note",500),engineering:O_(o.engineering)}}}throw new M(`unsupported content block type: ${r}`)}function O_(t){if(t==null)return null;let e=Le(t,"engineering"),n=G(e.format,"engineering.format",20);if(!["dxf","dwg","step","stp","glb","gltf"].includes(n))throw new M("engineering.format is invalid");let r=G(e.previewMode,"engineering.previewMode",50);if(!["direct","browser_conversion","external_conversion_required"].includes(r))throw new M("engineering.previewMode is invalid");let o=G(e.parseStatus,"engineering.parseStatus",50);if(!["parsed","partial","conversion_required"].includes(o))throw new M("engineering.parseStatus is invalid");return{format:n,previewMode:r,parseStatus:o,summary:We(e.summary,"engineering.summary",2e3)}}function N_(t,e,n=M_){if(!pu.includes(t))throw new M(`unsupported presentation tool: ${t}`);let r;try{r=JSON.parse(e)}catch{throw new M("presentation tool arguments must be valid JSON")}let o=t==="response_present_choice"?"choice":t==="response_present_table"?"table":"diagram",s=Er({...Le(r,"arguments"),id:n(),type:o});return{result:JSON.stringify({presented:!0,type:s.type}),contentBlocks:[s]}}var mu=new Set(["dxf","dwg","step","stp","glb","gltf"]),En=t=>new TextDecoder("utf-8",{fatal:!1}).decode(t),gu=t=>{let e=t.split(/[\\/]/u).at(-1)??t,n=e.lastIndexOf(".");return n<0?"":e.slice(n+1).toLowerCase()};function j_(t){return mu.has(gu(t))}function L_(t,e){let n=gu(t);if(!mu.has(n))return null;if(n==="dxf")return q_(e);if(n==="step"||n==="stp")return D_(e,n);if(n==="glb"||n==="gltf")return F_(e,n);let r=En(e.subarray(0,6));if(!/^AC10\d{2}$/u.test(r))throw new M("invalid DWG signature");let o={signature:r};return{format:n,status:"conversion_required",previewMode:"external_conversion_required",metadata:o,extractedText:JSON.stringify({format:n,...o,conversionRequired:!0})}}function q_(t){let e=En(t).split(/\r?\n/u),n=e.map(l=>l.trim().toUpperCase());if(!n.includes("SECTION")||!n.includes("EOF"))throw new M("invalid DXF structure");let r={},o=new Set,s=[],i=[];for(let l=0;l+1<e.length;l+=2){let c=e[l]?.trim(),u=e[l+1]?.trim()??"";if(c==="0"&&/^[A-Z][A-Z0-9_]*$/u.test(u)&&(r[u]=(r[u]??0)+1),c==="8"&&u&&o.add(u),c==="10"||c==="11"){let d=Number(u);Number.isFinite(d)&&s.push(d)}if(c==="20"||c==="21"){let d=Number(u);Number.isFinite(d)&&i.push(d)}}let a={layers:[...o].slice(0,100),entityCounts:r,bounds2d:s.length>0&&i.length>0?{minX:Math.min(...s),maxX:Math.max(...s),minY:Math.min(...i),maxY:Math.max(...i)}:null};return{format:"dxf",status:"parsed",previewMode:"browser_conversion",metadata:a,extractedText:JSON.stringify({format:"dxf",...a})}}function D_(t,e){let n=En(t);if(!/^\s*ISO-10303-21;/iu.test(n)||!/END-ISO-10303-21;\s*$/iu.test(n))throw new M("invalid STEP structure");let r=n.match(/FILE_SCHEMA\s*\(\s*\(([^)]+)\)/iu)?.[1]?.replace(/['"]/gu,"").trim()??null,o=[...n.matchAll(/PRODUCT\s*\(\s*'[^']*'\s*,\s*'([^']*)'/giu)].map(a=>a[1]?.trim()).filter(a=>!!a),s={};for(let a of n.matchAll(/^#\d+\s*=\s*([A-Z0-9_]+)\s*\(/gmu)){let l=a[1]??"UNKNOWN";s[l]=(s[l]??0)+1}let i={schema:r,products:[...new Set(o)].slice(0,50),entityCounts:s};return{format:e,status:"parsed",previewMode:"browser_conversion",metadata:i,extractedText:JSON.stringify({format:e,...i})}}function F_(t,e){let n;if(e==="gltf")n=JSON.parse(En(t));else{let i=new DataView(t.buffer,t.byteOffset,t.byteLength);if(t.byteLength<20||i.getUint32(0,!0)!==1179937895)throw new M("invalid GLB header");let a=i.getUint32(12,!0);if(i.getUint32(16,!0)!==1313821514||20+a>t.byteLength)throw new M("GLB JSON chunk is missing");n=JSON.parse(En(t.subarray(20,20+a)))}let r=n.asset;if(!r||typeof r!="object"||Array.isArray(r)||typeof r.version!="string")throw new M("glTF asset metadata is missing");let o=i=>Array.isArray(n[i])?n[i].length:0,s={scenes:o("scenes"),nodes:o("nodes"),meshes:o("meshes"),materials:o("materials")};return{format:e,status:"parsed",previewMode:"direct",metadata:s,extractedText:JSON.stringify({format:e,...s})}}function U_(t,e){let n=t.executionTimeoutMsByTool?.get(e)??t.maxExecutionMs;return typeof n=="number"&&Number.isFinite(n)&&n>0?Math.round(n):void 0}function B_(t,e){let n=[t,e?AbortSignal.timeout(e):void 0].filter(r=>r!==void 0);if(n.length!==0)return n.length===1?n[0]:AbortSignal.any(n)}async function z_(t,e){let{call:n}=t,r=n.function.name,o=Date.now();try{let s=await e.toolInvoker.invoke(e.turnId,r,n.function.arguments,B_(e.signal,U_(e,r))),i=s.error??(s.mcpIsError?"Tool execution failed":void 0),a=i===void 0;return{callId:n.id,toolName:r,ok:a,...i?{error:i}:{},durationMs:Date.now()-o,...s.details?{details:s.details}:{},message:Un(n.id,{ok:a,payload:s.result,...i?{error:i}:{},toolReferences:s.toolReferences,imageUrls:s.imageUrls,contentBlocks:s.contentBlocks,structuredContent:s.structuredContent,mcpMeta:s.mcpMeta,mcpIsError:s.mcpIsError})}}catch(s){let i=s instanceof Error?s.message:String(s);return{callId:n.id,toolName:r,ok:!1,error:i,durationMs:Date.now()-o,message:Un(n.id,{ok:!1,error:i})}}}var Cr=class{constructor(e){this.config=e}config;calls=[];addTool(e){this.calls.push({call:e,index:this.calls.length})}async*getRemainingResults(){let e=Math.max(1,Math.min(this.config.maxConcurrentTools??1,Math.max(1,this.calls.length))),n=new Array(this.calls.length),r=0,o=async()=>{for(;r<this.calls.length;){let s=this.calls[r++];if(!s)return;n[s.index]=await z_(s,this.config)}};await Promise.all(Array.from({length:e},()=>o()));for(let s of n)s&&(yield s)}};var V_=8e3;function K_(t,e){return typeof t=="number"&&Number.isFinite(t)&&t>0?Math.round(t):e}function G_(t){let e=typeof t.content=="string"?t.content:JSON.stringify(t.content??"");return Math.ceil(e.length/4)}function H_(t){let e=K_(t.maxToolResultChars,V_),n=new Kt(G_);return{createContentReplacementState:()=>({}),enforceToolResultBudget:async r=>{let o=0;return{messages:r.map(i=>{if(i.role!=="tool"||typeof i.content!="string"||i.content.length<=e)return i;o+=1;let a=`
11
+ [tool result truncated: ${i.content.length-e} characters omitted]`;return{...i,content:`${i.content.slice(0,Math.max(0,e-a.length))}${a}`}}),newlyReplacedCount:o}},getActiveContextCompressionEngine:()=>null,compressMessages:(r,o)=>{let s=n.compress(r,o.budget);return{messages:s.messages,droppedCount:s.droppedCount,strategy:s.strategy}},createStreamingToolExecutor:r=>new Cr(r),resolveToolEligibility:r=>({eligibleTools:r,blockedTools:[]})}}function hu(t={}){return{toolLoop:H_(t)}}var W_={info:()=>{},warn:()=>{},error:()=>{},debug:()=>{}};function nk(t){let e=new Map,n={async invoke(o,s,i,a){let l=await t.toolInvoker.invoke(o,s,i,a);if(l.contentBlocks?.length){let c=e.get(o)??[],u=l.contentBlocks.map(Er);if(c.length+u.length>30)throw new Error("a turn cannot return more than 30 content blocks");let d=new Set(c.map(f=>f.id));for(let f of u)d.has(f.id)||c.push(f),d.add(f.id);e.set(o,c)}return l}},r=new wr({llmTransport:t.llmTransport,toolInvoker:n,apiKey:t.apiKey??"",log:t.logger??W_,maxRounds:t.maxRounds,runtimePorts:hu(t.runtime)});return{async*run(o,s){e.delete(o.turnId);try{for await(let i of r.run(o,s))if(i.type==="end"){let a=e.get(o.turnId)??[];yield{...i,...a.length>0?{contentBlocks:a}:{}}}else yield i}finally{e.delete(o.turnId)}}}}export{M as AgentContentBlockValidationError,L_ as analyzeEngineeringFile,nk as createEmbeddedAgent,N_ as createStandardPresentationToolResult,j_ as isEngineeringFile,Er as parseAgentContentBlock,I_ as standardPresentationToolDefinitions,pu as standardPresentationToolNames};
@@ -0,0 +1,109 @@
1
+ export type AgentEngineeringFormat = "dxf" | "dwg" | "step" | "stp" | "glb" | "gltf";
2
+ export type AgentEngineeringPreviewMode = "direct" | "browser_conversion" | "external_conversion_required";
3
+ export type AgentEngineeringParseStatus = "parsed" | "partial" | "conversion_required";
4
+ export interface AgentEngineeringMetadata {
5
+ format: AgentEngineeringFormat;
6
+ previewMode: AgentEngineeringPreviewMode;
7
+ parseStatus: AgentEngineeringParseStatus;
8
+ summary: string;
9
+ }
10
+ export type AgentAttachmentKind = "image" | "spreadsheet" | "presentation" | "document" | "engineering_2d" | "engineering_3d" | "file";
11
+ export interface AgentAttachment {
12
+ id: string;
13
+ kind: AgentAttachmentKind;
14
+ fileName: string;
15
+ mimeType: string;
16
+ byteSize: number;
17
+ downloadUrl: string;
18
+ expiresAt: string;
19
+ note: string;
20
+ engineering: AgentEngineeringMetadata | null;
21
+ }
22
+ export interface AgentInputAttachmentEvidence {
23
+ id: string;
24
+ kind: "engineering_2d" | "engineering_3d" | "file";
25
+ fileName: string;
26
+ mimeType: string;
27
+ byteSize: number;
28
+ engineering: AgentEngineeringMetadata | null;
29
+ extractedText: string;
30
+ }
31
+ export interface AgentAttachmentContentBlock {
32
+ id: string;
33
+ type: "attachment";
34
+ attachment: AgentAttachment;
35
+ }
36
+ export interface AgentChoiceContentBlock {
37
+ id: string;
38
+ type: "choice";
39
+ prompt: string;
40
+ selection: "single" | "multiple";
41
+ options: Array<{
42
+ id: string;
43
+ label: string;
44
+ description: string;
45
+ }>;
46
+ required: boolean;
47
+ minSelections: number;
48
+ maxSelections: number;
49
+ submitLabel: string;
50
+ }
51
+ export type AgentTableCell = string | number | boolean | null;
52
+ export interface AgentTableContentBlock {
53
+ id: string;
54
+ type: "table";
55
+ title: string;
56
+ caption: string;
57
+ columns: Array<{
58
+ key: string;
59
+ label: string;
60
+ align: "start" | "center" | "end";
61
+ }>;
62
+ rows: Array<Record<string, AgentTableCell>>;
63
+ }
64
+ export interface AgentDiagramContentBlock {
65
+ id: string;
66
+ type: "diagram";
67
+ title: string;
68
+ direction: "horizontal" | "vertical";
69
+ nodes: Array<{
70
+ id: string;
71
+ label: string;
72
+ description: string;
73
+ tone: "neutral" | "info" | "success" | "warning" | "danger";
74
+ }>;
75
+ edges: Array<{
76
+ from: string;
77
+ to: string;
78
+ label: string;
79
+ }>;
80
+ }
81
+ export type AgentContentBlock = AgentAttachmentContentBlock | AgentChoiceContentBlock | AgentTableContentBlock | AgentDiagramContentBlock;
82
+ export interface StandardPresentationToolDefinition {
83
+ type: "function";
84
+ function: {
85
+ name: StandardPresentationToolName;
86
+ description: string;
87
+ parameters: Record<string, unknown>;
88
+ };
89
+ }
90
+ export declare const standardPresentationToolNames: readonly ["response_present_choice", "response_present_table", "response_present_diagram"];
91
+ export type StandardPresentationToolName = typeof standardPresentationToolNames[number];
92
+ export declare const standardPresentationToolDefinitions: StandardPresentationToolDefinition[];
93
+ export declare class AgentContentBlockValidationError extends Error {
94
+ constructor(message: string);
95
+ }
96
+ export declare function parseAgentContentBlock(value: unknown): AgentContentBlock;
97
+ export declare function createStandardPresentationToolResult(toolName: string, rawArguments: string, createId?: () => string): {
98
+ result: string;
99
+ contentBlocks: AgentContentBlock[];
100
+ };
101
+ export interface EngineeringFileAnalysis {
102
+ format: AgentEngineeringFormat;
103
+ status: AgentEngineeringParseStatus;
104
+ previewMode: AgentEngineeringPreviewMode;
105
+ metadata: Record<string, unknown>;
106
+ extractedText: string;
107
+ }
108
+ export declare function isEngineeringFile(fileName: string): boolean;
109
+ export declare function analyzeEngineeringFile(fileName: string, bytes: Uint8Array): EngineeringFileAnalysis | null;
@@ -1,3 +1,4 @@
1
+ import type { AgentContentBlock } from "./content-blocks.js";
1
2
  export interface AgentLogger {
2
3
  info(message: string): void;
3
4
  info(context: Record<string, unknown>, message: string): void;
@@ -110,6 +111,7 @@ export interface ToolInvoker {
110
111
  error?: string;
111
112
  toolReferences?: string[];
112
113
  imageUrls?: string[];
114
+ contentBlocks?: AgentContentBlock[];
113
115
  details?: Record<string, unknown>;
114
116
  }>;
115
117
  }
@@ -221,6 +223,7 @@ export type TurnEvent = {
221
223
  model?: string;
222
224
  provider?: string;
223
225
  recoveryTrace?: Record<string, number>;
226
+ contentBlocks?: AgentContentBlock[];
224
227
  } | {
225
228
  type: "error";
226
229
  turnId: string;
@@ -1,3 +1,5 @@
1
1
  import type { CreateEmbeddedAgentOptions, EmbeddedAgent } from "./contracts.js";
2
2
  export declare function createEmbeddedAgent(options: CreateEmbeddedAgentOptions): EmbeddedAgent;
3
+ export { AgentContentBlockValidationError, analyzeEngineeringFile, createStandardPresentationToolResult, isEngineeringFile, parseAgentContentBlock, standardPresentationToolDefinitions, standardPresentationToolNames, } from "./content-blocks.js";
3
4
  export type { AgentLogger, ChatMessage, CreateEmbeddedAgentOptions, EmbeddedAgent, EmbeddedRuntimeOptions, LLMChunk, LLMRequest, LLMTransport, ToolDefinition, ToolInvoker, TurnConfig, TurnEvent, TurnRequest, } from "./contracts.js";
5
+ export type { AgentAttachment, AgentAttachmentContentBlock, AgentAttachmentKind, AgentChoiceContentBlock, AgentContentBlock, AgentDiagramContentBlock, AgentEngineeringFormat, AgentEngineeringMetadata, AgentEngineeringParseStatus, AgentEngineeringPreviewMode, AgentInputAttachmentEvidence, AgentTableCell, AgentTableContentBlock, EngineeringFileAnalysis, StandardPresentationToolDefinition, StandardPresentationToolName, } from "./content-blocks.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xiaozhiclaw/qlogicagent-core",
3
- "version": "0.1.3",
3
+ "version": "0.1.5",
4
4
  "description": "Host-neutral qlogicagent tool-loop runtime for server embedding",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",