@xiaozhiclaw/qlogicagent-core 0.4.1 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +79 -5
- package/dist/index.js +9 -9
- package/dist/types/contracts/turn-event.d.ts +2 -0
- package/dist/types/contracts/usage.d.ts +2 -2
- package/dist/types/embedded/business-contracts.d.ts +6 -39
- package/dist/types/embedded/business-tool-adapter.d.ts +37 -0
- package/dist/types/embedded/cloud-agent.d.ts +7 -0
- package/dist/types/embedded/cloud-task.d.ts +4 -2
- package/dist/types/embedded/content-blocks.d.ts +7 -105
- package/dist/types/embedded/contracts.d.ts +20 -0
- package/dist/types/embedded/default-runtime-ports.d.ts +6 -0
- package/dist/types/embedded/index.d.ts +6 -3
- package/dist/types/runtime/ports/agent-runtime-ports.d.ts +4 -1
- package/dist/types/runtime/ports/model-transport-contracts.d.ts +3 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
var Cu=Object.create;var xi=Object.defineProperty;var bu=Object.getOwnPropertyDescriptor;var wu=Object.getOwnPropertyNames;var Eu=Object.getPrototypeOf,ku=Object.prototype.hasOwnProperty;var C=(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 wu(t))!ku.call(e,o)&&o!==r&&xi(e,o,{get:()=>t[o],enumerable:!(n=bu(t,o))||n.enumerable});return e};var $u=(e,t,r)=>(r=e!=null?Cu(Eu(e)):{},Ru(t||!e||!e.__esModule?xi(r,"default",{value:e,enumerable:!0}):r,e));var Qt=C(K=>{"use strict";Object.defineProperty(K,"__esModule",{value:!0});K.regexpCode=K.getEsmExportName=K.getProperty=K.safeStringify=K.stringify=K.strConcat=K.addCodeArg=K.str=K._=K.nil=K._Code=K.Name=K.IDENTIFIER=K._CodeOrName=void 0;var Wt=class{};K._CodeOrName=Wt;K.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var ot=class extends Wt{constructor(t){if(super(),!K.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}}};K.Name=ot;var we=class extends Wt{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 ot&&(r[n.str]=(r[n.str]||0)+1),r),{})}};K._Code=we;K.nil=new we("");function Di(e,...t){let r=[e[0]],n=0;for(;n<t.length;)ro(r,t[n]),r.push(e[++n]);return new we(r)}K._=Di;var to=new we("+");function Ui(e,...t){let r=[Jt(e[0])],n=0;for(;n<t.length;)r.push(to),ro(r,t[n]),r.push(to,Jt(e[++n]));return Uu(r),new we(r)}K.str=Ui;function ro(e,t){t instanceof we?e.push(...t._items):t instanceof ot?e.push(t):e.push(Vu(t))}K.addCodeArg=ro;function Uu(e){let t=1;for(;t<e.length-1;){if(e[t]===to){let r=Fu(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+"}t++}}function Fu(e,t){if(t==='""')return e;if(e==='""')return t;if(typeof e=="string")return t instanceof ot||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 ot))return`"${e}${t.slice(1)}`}function Bu(e,t){return t.emptyStr()?e:e.emptyStr()?t:Ui`${e}${t}`}K.strConcat=Bu;function Vu(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:Jt(Array.isArray(e)?e.join(","):e)}function zu(e){return new we(Jt(e))}K.stringify=zu;function Jt(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}K.safeStringify=Jt;function Gu(e){return typeof e=="string"&&K.IDENTIFIER.test(e)?new we(`.${e}`):Di`[${e}]`}K.getProperty=Gu;function Ku(e){if(typeof e=="string"&&K.IDENTIFIER.test(e))return new we(`${e}`);throw new Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}K.getEsmExportName=Ku;function Hu(e){return new we(e.toString())}K.regexpCode=Hu});var so=C(_e=>{"use strict";Object.defineProperty(_e,"__esModule",{value:!0});_e.ValueScope=_e.ValueScopeName=_e.Scope=_e.varKinds=_e.UsedValueState=void 0;var ye=Qt(),no=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},Vr;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(Vr||(_e.UsedValueState=Vr={}));_e.varKinds={const:new ye.Name("const"),let:new ye.Name("let"),var:new ye.Name("var")};var zr=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof ye.Name?t:this.name(t)}name(t){return new ye.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}}};_e.Scope=zr;var Gr=class extends ye.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0,ye._)`.${new ye.Name(r)}[${n}]`}};_e.ValueScopeName=Gr;var Wu=(0,ye._)`\n`,oo=class extends zr{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?Wu:ye.nil}}get(){return this._scope}name(t){return new Gr(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 c=this._scope[s]||(this._scope[s]=[]),l=c.length;return c[l]=r.ref,o.setValue(r,{property:s,itemIndex:l}),o}getValue(t,r){let n=this._values[t];if(n)return n.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,ye._)`${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=ye.nil;for(let i in t){let a=t[i];if(!a)continue;let c=n[i]=n[i]||new Map;a.forEach(l=>{if(c.has(l))return;c.set(l,Vr.Started);let u=r(l);if(u){let d=this.opts.es5?_e.varKinds.var:_e.varKinds.const;s=(0,ye._)`${s}${d} ${l} = ${u};${this.opts._n}`}else if(u=o?.(l))s=(0,ye._)`${s}${u}${this.opts._n}`;else throw new no(l);c.set(l,Vr.Completed)})}return s}};_e.ValueScope=oo});var x=C(N=>{"use strict";Object.defineProperty(N,"__esModule",{value:!0});N.or=N.and=N.not=N.CodeGen=N.operators=N.varKinds=N.ValueScopeName=N.ValueScope=N.Scope=N.Name=N.regexpCode=N.stringify=N.getProperty=N.nil=N.strConcat=N.str=N._=void 0;var B=Qt(),Oe=so(),He=Qt();Object.defineProperty(N,"_",{enumerable:!0,get:function(){return He._}});Object.defineProperty(N,"str",{enumerable:!0,get:function(){return He.str}});Object.defineProperty(N,"strConcat",{enumerable:!0,get:function(){return He.strConcat}});Object.defineProperty(N,"nil",{enumerable:!0,get:function(){return He.nil}});Object.defineProperty(N,"getProperty",{enumerable:!0,get:function(){return He.getProperty}});Object.defineProperty(N,"stringify",{enumerable:!0,get:function(){return He.stringify}});Object.defineProperty(N,"regexpCode",{enumerable:!0,get:function(){return He.regexpCode}});Object.defineProperty(N,"Name",{enumerable:!0,get:function(){return He.Name}});var Jr=so();Object.defineProperty(N,"Scope",{enumerable:!0,get:function(){return Jr.Scope}});Object.defineProperty(N,"ValueScope",{enumerable:!0,get:function(){return Jr.ValueScope}});Object.defineProperty(N,"ValueScopeName",{enumerable:!0,get:function(){return Jr.ValueScopeName}});Object.defineProperty(N,"varKinds",{enumerable:!0,get:function(){return Jr.varKinds}});N.operators={GT:new B._Code(">"),GTE:new B._Code(">="),LT:new B._Code("<"),LTE:new B._Code("<="),EQ:new B._Code("==="),NEQ:new B._Code("!=="),NOT:new B._Code("!"),OR:new B._Code("||"),AND:new B._Code("&&"),ADD:new B._Code("+")};var Be=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},io=class extends Be{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n}render({es5:t,_n:r}){let n=t?Oe.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=Et(this.rhs,t,r)),this}get names(){return this.rhs instanceof B._CodeOrName?this.rhs.names:{}}},Kr=class extends Be{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 B.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=Et(this.rhs,t,r),this}get names(){let t=this.lhs instanceof B.Name?{}:{...this.lhs.names};return Wr(t,this.rhs)}},ao=class extends Kr{constructor(t,r,n,o){super(t,n,o),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},co=class extends Be{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},lo=class extends Be{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},uo=class extends Be{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},fo=class extends Be{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=Et(this.code,t,r),this}get names(){return this.code instanceof B._CodeOrName?this.code.names:{}}},Yt=class extends Be{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)||(Ju(t,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>at(t,r.names),{})}},Ve=class extends Yt{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},po=class extends Yt{},wt=class extends Ve{};wt.kind="else";var st=class e extends Ve{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 wt(n):n}if(r)return t===!1?r instanceof e?r:r.nodes:this.nodes.length?this:new e(Fi(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=Et(this.condition,t,r),this}get names(){let t=super.names;return Wr(t,this.condition),this.else&&at(t,this.else.names),t}};st.kind="if";var it=class extends Ve{};it.kind="for";var mo=class extends it{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=Et(this.iteration,t,r),this}get names(){return at(super.names,this.iteration.names)}},ho=class extends it{constructor(t,r,n,o){super(),this.varKind=t,this.name=r,this.from=n,this.to=o}render(t){let r=t.es5?Oe.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=Wr(super.names,this.from);return Wr(t,this.to)}},Hr=class extends it{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=Et(this.iterable,t,r),this}get names(){return at(super.names,this.iterable.names)}},Xt=class extends Ve{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)}};Xt.kind="func";var Zt=class extends Yt{render(t){return"return "+super.render(t)}};Zt.kind="return";var go=class extends Ve{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&&at(t,this.catch.names),this.finally&&at(t,this.finally.names),t}},er=class extends Ve{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};er.kind="catch";var tr=class extends Ve{render(t){return"finally"+super.render(t)}};tr.kind="finally";var yo=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
2
|
-
`:""},this._extScope=t,this._scope=new Oe.Scope({parent:t}),this._nodes=[new po]}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 io(t,s,n)),s}const(t,r,n){return this._def(Oe.varKinds.const,t,r,n)}let(t,r,n){return this._def(Oe.varKinds.let,t,r,n)}var(t,r,n){return this._def(Oe.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new Kr(t,r,n))}add(t,r){return this._leafNode(new ao(t,N.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==B.nil&&this._leafNode(new fo(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,B.addCodeArg)(r,o));return r.push("}"),new B._Code(r)}if(t,r,n){if(this._blockNode(new st(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 st(t))}else(){return this._elseNode(new wt)}endIf(){return this._endBlockNode(st,wt)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new mo(t),r)}forRange(t,r,n,o,s=this.opts.es5?Oe.varKinds.var:Oe.varKinds.let){let i=this._scope.toName(t);return this._for(new ho(s,i,r,n),()=>o(i))}forOf(t,r,n,o=Oe.varKinds.const){let s=this._scope.toName(t);if(this.opts.es5){let i=r instanceof B.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,B._)`${i}.length`,a=>{this.var(s,(0,B._)`${i}[${a}]`),n(s)})}return this._for(new Hr("of",o,s,r),()=>n(s))}forIn(t,r,n,o=this.opts.es5?Oe.varKinds.var:Oe.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0,B._)`Object.keys(${r})`,n);let s=this._scope.toName(t);return this._for(new Hr("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(it)}label(t){return this._leafNode(new co(t))}break(t){return this._leafNode(new lo(t))}return(t){let r=new Zt;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Zt)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new go;if(this._blockNode(o),this.code(t),r){let s=this.name("e");this._currNode=o.catch=new er(s),r(s)}return n&&(this._currNode=o.finally=new tr,this.code(n)),this._endBlockNode(er,tr)}throw(t){return this._leafNode(new uo(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=B.nil,n,o){return this._blockNode(new Xt(t,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Xt)}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 st))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}};N.CodeGen=yo;function at(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function Wr(e,t){return t instanceof B._CodeOrName?at(e,t.names):e}function Et(e,t,r){if(e instanceof B.Name)return n(e);if(!o(e))return e;return new B._Code(e._items.reduce((s,i)=>(i instanceof B.Name&&(i=n(i)),i instanceof B._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 B._Code&&s._items.some(i=>i instanceof B.Name&&t[i.str]===1&&r[i.str]!==void 0)}}function Ju(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function Fi(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,B._)`!${_o(e)}`}N.not=Fi;var Qu=Bi(N.operators.AND);function Yu(...e){return e.reduce(Qu)}N.and=Yu;var Xu=Bi(N.operators.OR);function Zu(...e){return e.reduce(Xu)}N.or=Zu;function Bi(e){return(t,r)=>t===B.nil?r:r===B.nil?t:(0,B._)`${_o(t)} ${e} ${_o(r)}`}function _o(e){return e instanceof B.Name?e:(0,B._)`(${e})`}});var D=C(q=>{"use strict";Object.defineProperty(q,"__esModule",{value:!0});q.checkStrictMode=q.getErrorPath=q.Type=q.useFunc=q.setEvaluated=q.evaluatedPropsToName=q.mergeEvaluated=q.eachItem=q.unescapeJsonPointer=q.escapeJsonPointer=q.escapeFragment=q.unescapeFragment=q.schemaRefOrVal=q.schemaHasRulesButRef=q.schemaHasRules=q.checkUnknownRules=q.alwaysValidSchema=q.toHash=void 0;var X=x(),ed=Qt();function td(e){let t={};for(let r of e)t[r]=!0;return t}q.toHash=td;function rd(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(Gi(e,t),!Ki(t,e.self.RULES.all))}q.alwaysValidSchema=rd;function Gi(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]||Ji(e,`unknown keyword: "${s}"`)}q.checkUnknownRules=Gi;function Ki(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}q.schemaHasRules=Ki;function nd(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}q.schemaHasRulesButRef=nd;function od({topSchemaRef:e,schemaPath:t},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,X._)`${r}`}return(0,X._)`${e}${t}${(0,X.getProperty)(n)}`}q.schemaRefOrVal=od;function sd(e){return Hi(decodeURIComponent(e))}q.unescapeFragment=sd;function id(e){return encodeURIComponent(vo(e))}q.escapeFragment=id;function vo(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}q.escapeJsonPointer=vo;function Hi(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}q.unescapeJsonPointer=Hi;function ad(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}q.eachItem=ad;function Vi({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof X.Name?(s instanceof X.Name?e(o,s,i):t(o,s,i),i):s instanceof X.Name?(t(o,i,s),s):r(s,i);return a===X.Name&&!(c instanceof X.Name)?n(o,c):c}}q.mergeEvaluated={props:Vi({mergeNames:(e,t,r)=>e.if((0,X._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,X._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,X._)`${r} || {}`).code((0,X._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,X._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,X._)`${r} || {}`),Co(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:Wi}),items:Vi({mergeNames:(e,t,r)=>e.if((0,X._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,X._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,X._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,X._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function Wi(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,X._)`{}`);return t!==void 0&&Co(e,r,t),r}q.evaluatedPropsToName=Wi;function Co(e,t,r){Object.keys(r).forEach(n=>e.assign((0,X._)`${t}${(0,X.getProperty)(n)}`,!0))}q.setEvaluated=Co;var zi={};function cd(e,t){return e.scopeValue("func",{ref:t,code:zi[t.code]||(zi[t.code]=new ed._Code(t.code))})}q.useFunc=cd;var To;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(To||(q.Type=To={}));function ld(e,t,r){if(e instanceof X.Name){let n=t===To.Num;return r?n?(0,X._)`"[" + ${e} + "]"`:(0,X._)`"['" + ${e} + "']"`:n?(0,X._)`"/" + ${e}`:(0,X._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,X.getProperty)(e).toString():"/"+vo(e)}q.getErrorPath=ld;function Ji(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===!0)throw new Error(t);e.self.logger.warn(t)}}q.checkStrictMode=Ji});var Ee=C(bo=>{"use strict";Object.defineProperty(bo,"__esModule",{value:!0});var ue=x(),ud={data:new ue.Name("data"),valCxt:new ue.Name("valCxt"),instancePath:new ue.Name("instancePath"),parentData:new ue.Name("parentData"),parentDataProperty:new ue.Name("parentDataProperty"),rootData:new ue.Name("rootData"),dynamicAnchors:new ue.Name("dynamicAnchors"),vErrors:new ue.Name("vErrors"),errors:new ue.Name("errors"),this:new ue.Name("this"),self:new ue.Name("self"),scope:new ue.Name("scope"),json:new ue.Name("json"),jsonPos:new ue.Name("jsonPos"),jsonLen:new ue.Name("jsonLen"),jsonPart:new ue.Name("jsonPart")};bo.default=ud});var rr=C(de=>{"use strict";Object.defineProperty(de,"__esModule",{value:!0});de.extendErrors=de.resetErrorsCount=de.reportExtraError=de.reportError=de.keyword$DataError=de.keywordError=void 0;var G=x(),Qr=D(),pe=Ee();de.keywordError={message:({keyword:e})=>(0,G.str)`must pass "${e}" keyword validation`};de.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,G.str)`"${e}" keyword must be ${t} ($data)`:(0,G.str)`"${e}" keyword is invalid ($data)`};function dd(e,t=de.keywordError,r,n){let{it:o}=e,{gen:s,compositeRule:i,allErrors:a}=o,c=Xi(e,t,r);n??(i||a)?Qi(s,c):Yi(o,(0,G._)`[${c}]`)}de.reportError=dd;function fd(e,t=de.keywordError,r){let{it:n}=e,{gen:o,compositeRule:s,allErrors:i}=n,a=Xi(e,t,r);Qi(o,a),s||i||Yi(n,pe.default.vErrors)}de.reportExtraError=fd;function pd(e,t){e.assign(pe.default.errors,t),e.if((0,G._)`${pe.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,G._)`${pe.default.vErrors}.length`,t),()=>e.assign(pe.default.vErrors,null)))}de.resetErrorsCount=pd;function md({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,pe.default.errors,a=>{e.const(i,(0,G._)`${pe.default.vErrors}[${a}]`),e.if((0,G._)`${i}.instancePath === undefined`,()=>e.assign((0,G._)`${i}.instancePath`,(0,G.strConcat)(pe.default.instancePath,s.errorPath))),e.assign((0,G._)`${i}.schemaPath`,(0,G.str)`${s.errSchemaPath}/${t}`),s.opts.verbose&&(e.assign((0,G._)`${i}.schema`,r),e.assign((0,G._)`${i}.data`,n))})}de.extendErrors=md;function Qi(e,t){let r=e.const("err",t);e.if((0,G._)`${pe.default.vErrors} === null`,()=>e.assign(pe.default.vErrors,(0,G._)`[${r}]`),(0,G._)`${pe.default.vErrors}.push(${r})`),e.code((0,G._)`${pe.default.errors}++`)}function Yi(e,t){let{gen:r,validateName:n,schemaEnv:o}=e;o.$async?r.throw((0,G._)`new ${e.ValidationError}(${t})`):(r.assign((0,G._)`${n}.errors`,t),r.return(!1))}var ct={keyword:new G.Name("keyword"),schemaPath:new G.Name("schemaPath"),params:new G.Name("params"),propertyName:new G.Name("propertyName"),message:new G.Name("message"),schema:new G.Name("schema"),parentSchema:new G.Name("parentSchema")};function Xi(e,t,r){let{createErrors:n}=e.it;return n===!1?(0,G._)`{}`:hd(e,t,r)}function hd(e,t,r={}){let{gen:n,it:o}=e,s=[gd(o,r),yd(e,r)];return _d(e,t,s),n.object(...s)}function gd({errorPath:e},{instancePath:t}){let r=t?(0,G.str)`${e}${(0,Qr.getErrorPath)(t,Qr.Type.Str)}`:e;return[pe.default.instancePath,(0,G.strConcat)(pe.default.instancePath,r)]}function yd({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let o=n?t:(0,G.str)`${t}/${e}`;return r&&(o=(0,G.str)`${o}${(0,Qr.getErrorPath)(r,Qr.Type.Str)}`),[ct.schemaPath,o]}function _d(e,{params:t,message:r},n){let{keyword:o,data:s,schemaValue:i,it:a}=e,{opts:c,propertyName:l,topSchemaRef:u,schemaPath:d}=a;n.push([ct.keyword,o],[ct.params,typeof t=="function"?t(e):t||(0,G._)`{}`]),c.messages&&n.push([ct.message,typeof r=="function"?r(e):r]),c.verbose&&n.push([ct.schema,i],[ct.parentSchema,(0,G._)`${u}${d}`],[pe.default.data,s]),l&&n.push([ct.propertyName,l])}});var ea=C(kt=>{"use strict";Object.defineProperty(kt,"__esModule",{value:!0});kt.boolOrEmptySchema=kt.topBoolOrEmptySchema=void 0;var Td=rr(),vd=x(),Cd=Ee(),bd={message:"boolean schema is false"};function wd(e){let{gen:t,schema:r,validateName:n}=e;r===!1?Zi(e,!1):typeof r=="object"&&r.$async===!0?t.return(Cd.default.data):(t.assign((0,vd._)`${n}.errors`,null),t.return(!0))}kt.topBoolOrEmptySchema=wd;function Ed(e,t){let{gen:r,schema:n}=e;n===!1?(r.var(t,!1),Zi(e)):r.var(t,!0)}kt.boolOrEmptySchema=Ed;function Zi(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,Td.reportError)(o,bd,void 0,t)}});var wo=C(Rt=>{"use strict";Object.defineProperty(Rt,"__esModule",{value:!0});Rt.getRules=Rt.isJSONType=void 0;var kd=["string","number","integer","boolean","null","object","array"],Rd=new Set(kd);function $d(e){return typeof e=="string"&&Rd.has(e)}Rt.isJSONType=$d;function Ad(){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:{}}}Rt.getRules=Ad});var Eo=C(We=>{"use strict";Object.defineProperty(We,"__esModule",{value:!0});We.shouldUseRule=We.shouldUseGroup=We.schemaHasRulesForType=void 0;function Sd({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&ta(e,n)}We.schemaHasRulesForType=Sd;function ta(e,t){return t.rules.some(r=>ra(e,r))}We.shouldUseGroup=ta;function ra(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))}We.shouldUseRule=ra});var nr=C(fe=>{"use strict";Object.defineProperty(fe,"__esModule",{value:!0});fe.reportTypeError=fe.checkDataTypes=fe.checkDataType=fe.coerceAndCheckDataType=fe.getJSONTypes=fe.getSchemaTypes=fe.DataType=void 0;var Od=wo(),Id=Eo(),xd=rr(),P=x(),na=D(),$t;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})($t||(fe.DataType=$t={}));function Pd(e){let t=oa(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}fe.getSchemaTypes=Pd;function oa(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(Od.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}fe.getJSONTypes=oa;function Md(e,t){let{gen:r,data:n,opts:o}=e,s=Nd(t,o.coerceTypes),i=t.length>0&&!(s.length===0&&t.length===1&&(0,Id.schemaHasRulesForType)(e,t[0]));if(i){let a=Ro(t,n,o.strictNumbers,$t.Wrong);r.if(a,()=>{s.length?Ld(e,t,s):$o(e)})}return i}fe.coerceAndCheckDataType=Md;var sa=new Set(["string","number","integer","boolean","null"]);function Nd(e,t){return t?e.filter(r=>sa.has(r)||t==="array"&&r==="array"):[]}function Ld(e,t,r){let{gen:n,data:o,opts:s}=e,i=n.let("dataType",(0,P._)`typeof ${o}`),a=n.let("coerced",(0,P._)`undefined`);s.coerceTypes==="array"&&n.if((0,P._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,P._)`${o}[0]`).assign(i,(0,P._)`typeof ${o}`).if(Ro(t,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,P._)`${a} !== undefined`);for(let l of r)(sa.has(l)||l==="array"&&s.coerceTypes==="array")&&c(l);n.else(),$o(e),n.endIf(),n.if((0,P._)`${a} !== undefined`,()=>{n.assign(o,a),jd(e,a)});function c(l){switch(l){case"string":n.elseIf((0,P._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,P._)`"" + ${o}`).elseIf((0,P._)`${o} === null`).assign(a,(0,P._)`""`);return;case"number":n.elseIf((0,P._)`${i} == "boolean" || ${o} === null
|
|
3
|
-
|| (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,
|
|
4
|
-
|| (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,
|
|
5
|
-
|| ${i} === "boolean" || ${o} === null`).assign(a,(0,P._)`[${o}]`)}}}function jd({gen:e,parentData:t,parentDataProperty:r},n){e.if((0,P._)`${t} !== undefined`,()=>e.assign((0,P._)`${t}[${r}]`,n))}function ko(e,t,r,n=$t.Correct){let o=n===$t.Correct?P.operators.EQ:P.operators.NEQ,s;switch(e){case"null":return(0,P._)`${t} ${o} null`;case"array":s=(0,P._)`Array.isArray(${t})`;break;case"object":s=(0,P._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":s=i((0,P._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":s=i();break;default:return(0,P._)`typeof ${t} ${o} ${e}`}return n===$t.Correct?s:(0,P.not)(s);function i(a=P.nil){return(0,P.and)((0,P._)`typeof ${t} == "number"`,a,r?(0,P._)`isFinite(${t})`:P.nil)}}fe.checkDataType=ko;function Ro(e,t,r,n){if(e.length===1)return ko(e[0],t,r,n);let o,s=(0,na.toHash)(e);if(s.array&&s.object){let i=(0,P._)`typeof ${t} != "object"`;o=s.null?i:(0,P._)`!${t} || ${i}`,delete s.null,delete s.array,delete s.object}else o=P.nil;s.number&&delete s.integer;for(let i in s)o=(0,P.and)(o,ko(i,t,r,n));return o}fe.checkDataTypes=Ro;var qd={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,P._)`{type: ${e}}`:(0,P._)`{type: ${t}}`};function $o(e){let t=Dd(e);(0,xd.reportError)(t,qd)}fe.reportTypeError=$o;function Dd(e){let{gen:t,data:r,schema:n}=e,o=(0,na.schemaRefOrVal)(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:e}}});var aa=C(Yr=>{"use strict";Object.defineProperty(Yr,"__esModule",{value:!0});Yr.assignDefaults=void 0;var At=x(),Ud=D();function Fd(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let o in r)ia(e,o,r[o].default);else t==="array"&&Array.isArray(n)&&n.forEach((o,s)=>ia(e,s,o.default))}Yr.assignDefaults=Fd;function ia(e,t,r){let{gen:n,compositeRule:o,data:s,opts:i}=e;if(r===void 0)return;let a=(0,At._)`${s}${(0,At.getProperty)(t)}`;if(o){(0,Ud.checkStrictMode)(e,`default is ignored for: ${a}`);return}let c=(0,At._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,At._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,At._)`${a} = ${(0,At.stringify)(r)}`)}});var ke=C(Q=>{"use strict";Object.defineProperty(Q,"__esModule",{value:!0});Q.validateUnion=Q.validateArray=Q.usePattern=Q.callValidateCode=Q.schemaProperties=Q.allSchemaProperties=Q.noPropertyInData=Q.propertyInData=Q.isOwnProperty=Q.hasPropFunc=Q.reportMissingProp=Q.checkMissingProp=Q.checkReportMissingProp=void 0;var Z=x(),Ao=D(),Je=Ee(),Bd=D();function Vd(e,t){let{gen:r,data:n,it:o}=e;r.if(Oo(r,n,t,o.opts.ownProperties),()=>{e.setParams({missingProperty:(0,Z._)`${t}`},!0),e.error()})}Q.checkReportMissingProp=Vd;function zd({gen:e,data:t,it:{opts:r}},n,o){return(0,Z.or)(...n.map(s=>(0,Z.and)(Oo(e,t,s,r.ownProperties),(0,Z._)`${o} = ${s}`)))}Q.checkMissingProp=zd;function Gd(e,t){e.setParams({missingProperty:t},!0),e.error()}Q.reportMissingProp=Gd;function ca(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Z._)`Object.prototype.hasOwnProperty`})}Q.hasPropFunc=ca;function So(e,t,r){return(0,Z._)`${ca(e)}.call(${t}, ${r})`}Q.isOwnProperty=So;function Kd(e,t,r,n){let o=(0,Z._)`${t}${(0,Z.getProperty)(r)} !== undefined`;return n?(0,Z._)`${o} && ${So(e,t,r)}`:o}Q.propertyInData=Kd;function Oo(e,t,r,n){let o=(0,Z._)`${t}${(0,Z.getProperty)(r)} === undefined`;return n?(0,Z.or)(o,(0,Z.not)(So(e,t,r))):o}Q.noPropertyInData=Oo;function la(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}Q.allSchemaProperties=la;function Hd(e,t){return la(t).filter(r=>!(0,Ao.alwaysValidSchema)(e,t[r]))}Q.schemaProperties=Hd;function Wd({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,l){let u=l?(0,Z._)`${e}, ${t}, ${n}${o}`:t,d=[[Je.default.instancePath,(0,Z.strConcat)(Je.default.instancePath,s)],[Je.default.parentData,i.parentData],[Je.default.parentDataProperty,i.parentDataProperty],[Je.default.rootData,Je.default.rootData]];i.opts.dynamicRef&&d.push([Je.default.dynamicAnchors,Je.default.dynamicAnchors]);let m=(0,Z._)`${u}, ${r.object(...d)}`;return c!==Z.nil?(0,Z._)`${a}.call(${c}, ${m})`:(0,Z._)`${a}(${m})`}Q.callValidateCode=Wd;var Jd=(0,Z._)`new RegExp`;function Qd({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,Z._)`${o.code==="new RegExp"?Jd:(0,Bd.useFunc)(e,o)}(${r}, ${n})`})}Q.usePattern=Qd;function Yd(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 c=t.const("len",(0,Z._)`${r}.length`);t.forRange("i",0,c,l=>{e.subschema({keyword:n,dataProp:l,dataPropType:Ao.Type.Num},s),t.if((0,Z.not)(s),a)})}}Q.validateArray=Yd;function Xd(e){let{gen:t,schema:r,keyword:n,it:o}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,Ao.alwaysValidSchema)(o,c))&&!o.opts.unevaluated)return;let i=t.let("valid",!1),a=t.name("_valid");t.block(()=>r.forEach((c,l)=>{let u=e.subschema({keyword:n,schemaProp:l,compositeRule:!0},a);t.assign(i,(0,Z._)`${i} || ${a}`),e.mergeValidEvaluated(u,a)||t.if((0,Z.not)(i))})),e.result(i,()=>e.reset(),()=>e.error(!0))}Q.validateUnion=Xd});var fa=C(je=>{"use strict";Object.defineProperty(je,"__esModule",{value:!0});je.validateKeywordUsage=je.validSchemaType=je.funcKeywordCode=je.macroKeywordCode=void 0;var me=x(),lt=Ee(),Zd=ke(),ef=rr();function tf(e,t){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=e,a=t.macro.call(i.self,o,s,i),c=da(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let l=r.name("valid");e.subschema({schema:a,schemaPath:me.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},l),e.pass(l,()=>e.error(!0))}je.macroKeywordCode=tf;function rf(e,t){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=e;of(c,t);let l=!a&&t.compile?t.compile.call(c.self,s,i,c):t.validate,u=da(n,o,l),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)p(),t.modifying&&ua(e),g(()=>e.error());else{let v=t.async?h():f();t.modifying&&ua(e),g(()=>nf(e,v))}}function h(){let v=n.let("ruleErrs",null);return n.try(()=>p((0,me._)`await `),b=>n.assign(d,!1).if((0,me._)`${b} instanceof ${c.ValidationError}`,()=>n.assign(v,(0,me._)`${b}.errors`),()=>n.throw(b))),v}function f(){let v=(0,me._)`${u}.errors`;return n.assign(v,null),p(me.nil),v}function p(v=t.async?(0,me._)`await `:me.nil){let b=c.opts.passContext?lt.default.this:lt.default.self,w=!("compile"in t&&!a||t.schema===!1);n.assign(d,(0,me._)`${v}${(0,Zd.callValidateCode)(e,u,b,w)}`,t.modifying)}function g(v){var b;n.if((0,me.not)((b=t.valid)!==null&&b!==void 0?b:d),v)}}je.funcKeywordCode=rf;function ua(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0,me._)`${n.parentData}[${n.parentDataProperty}]`))}function nf(e,t){let{gen:r}=e;r.if((0,me._)`Array.isArray(${t})`,()=>{r.assign(lt.default.vErrors,(0,me._)`${lt.default.vErrors} === null ? ${t} : ${lt.default.vErrors}.concat(${t})`).assign(lt.default.errors,(0,me._)`${lt.default.vErrors}.length`),(0,ef.extendErrors)(e)},()=>e.error())}function of({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function da(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,me.stringify)(r)})}function sf(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")}je.validSchemaType=sf;function af({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 c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}je.validateKeywordUsage=af});var ma=C(Qe=>{"use strict";Object.defineProperty(Qe,"__esModule",{value:!0});Qe.extendSubschemaMode=Qe.extendSubschemaData=Qe.getSubschema=void 0;var qe=x(),pa=D();function cf(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,qe._)`${e.schemaPath}${(0,qe.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:a[r],schemaPath:(0,qe._)`${e.schemaPath}${(0,qe.getProperty)(t)}${(0,qe.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,pa.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')}Qe.getSubschema=cf;function lf(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:l,dataPathArr:u,opts:d}=t,m=a.let("data",(0,qe._)`${t.data}${(0,qe.getProperty)(r)}`,!0);c(m),e.errorPath=(0,qe.str)`${l}${(0,pa.getErrorPath)(r,n,d.jsPropertySyntax)}`,e.parentDataProperty=(0,qe._)`${r}`,e.dataPathArr=[...u,e.parentDataProperty]}if(o!==void 0){let l=o instanceof qe.Name?o:a.let("data",o,!0);c(l),i!==void 0&&(e.propertyName=i)}s&&(e.dataTypes=s);function c(l){e.data=l,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,l]}}Qe.extendSubschemaData=lf;function uf(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}Qe.extendSubschemaMode=uf});var Io=C((oT,ha)=>{"use strict";ha.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 ya=C((sT,ga)=>{"use strict";var Ye=ga.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(){};Xr(t,n,o,e,"",e)};Ye.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Ye.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Ye.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Ye.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 Xr(e,t,r,n,o,s,i,a,c,l){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,o,s,i,a,c,l);for(var u in n){var d=n[u];if(Array.isArray(d)){if(u in Ye.arrayKeywords)for(var m=0;m<d.length;m++)Xr(e,t,r,d[m],o+"/"+u+"/"+m,s,o,u,n,m)}else if(u in Ye.propsKeywords){if(d&&typeof d=="object")for(var h in d)Xr(e,t,r,d[h],o+"/"+u+"/"+df(h),s,o,u,n,h)}else(u in Ye.keywords||e.allKeys&&!(u in Ye.skipKeywords))&&Xr(e,t,r,d,o+"/"+u,s,o,u,n)}r(n,o,s,i,a,c,l)}}function df(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var or=C(Te=>{"use strict";Object.defineProperty(Te,"__esModule",{value:!0});Te.getSchemaRefs=Te.resolveUrl=Te.normalizeId=Te._getFullPath=Te.getFullPath=Te.inlineRef=void 0;var ff=D(),pf=Io(),mf=ya(),hf=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function gf(e,t=!0){return typeof e=="boolean"?!0:t===!0?!xo(e):t?_a(e)<=t:!1}Te.inlineRef=gf;var yf=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function xo(e){for(let t in e){if(yf.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(xo)||typeof r=="object"&&xo(r))return!0}return!1}function _a(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!hf.has(r)&&(typeof e[r]=="object"&&(0,ff.eachItem)(e[r],n=>t+=_a(n)),t===1/0))return 1/0}return t}function Ta(e,t="",r){r!==!1&&(t=St(t));let n=e.parse(t);return va(e,n)}Te.getFullPath=Ta;function va(e,t){return e.serialize(t).split("#")[0]+"#"}Te._getFullPath=va;var _f=/#\/?$/;function St(e){return e?e.replace(_f,""):""}Te.normalizeId=St;function Tf(e,t,r){return r=St(r),e.resolve(t,r)}Te.resolveUrl=Tf;var vf=/^[a-z_][-a-z0-9._]*$/i;function Cf(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=St(e[r]||t),s={"":o},i=Ta(n,o,!1),a={},c=new Set;return mf(e,{allKeys:!0},(d,m,h,f)=>{if(f===void 0)return;let p=i+m,g=s[f];typeof d[r]=="string"&&(g=v.call(this,d[r])),b.call(this,d.$anchor),b.call(this,d.$dynamicAnchor),s[m]=g;function v(w){let O=this.opts.uriResolver.resolve;if(w=St(g?O(g,w):w),c.has(w))throw u(w);c.add(w);let E=this.refs[w];return typeof E=="string"&&(E=this.refs[E]),typeof E=="object"?l(d,E.schema,w):w!==St(p)&&(w[0]==="#"?(l(d,a[w],w),a[w]=d):this.refs[w]=p),w}function b(w){if(typeof w=="string"){if(!vf.test(w))throw new Error(`invalid anchor "${w}"`);v.call(this,`#${w}`)}}}),a;function l(d,m,h){if(m!==void 0&&!pf(d,m))throw u(h)}function u(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Te.getSchemaRefs=Cf});var ar=C(Xe=>{"use strict";Object.defineProperty(Xe,"__esModule",{value:!0});Xe.getData=Xe.KeywordCxt=Xe.validateFunctionCode=void 0;var ka=ea(),Ca=nr(),Mo=Eo(),Zr=nr(),bf=aa(),ir=fa(),Po=ma(),R=x(),S=Ee(),wf=or(),ze=D(),sr=rr();function Ef(e){if(Aa(e)&&(Sa(e),$a(e))){$f(e);return}Ra(e,()=>(0,ka.topBoolOrEmptySchema)(e))}Xe.validateFunctionCode=Ef;function Ra({gen:e,validateName:t,schema:r,schemaEnv:n,opts:o},s){o.code.es5?e.func(t,(0,R._)`${S.default.data}, ${S.default.valCxt}`,n.$async,()=>{e.code((0,R._)`"use strict"; ${ba(r,o)}`),Rf(e,o),e.code(s)}):e.func(t,(0,R._)`${S.default.data}, ${kf(o)}`,n.$async,()=>e.code(ba(r,o)).code(s))}function kf(e){return(0,R._)`{${S.default.instancePath}="", ${S.default.parentData}, ${S.default.parentDataProperty}, ${S.default.rootData}=${S.default.data}${e.dynamicRef?(0,R._)`, ${S.default.dynamicAnchors}={}`:R.nil}}={}`}function Rf(e,t){e.if(S.default.valCxt,()=>{e.var(S.default.instancePath,(0,R._)`${S.default.valCxt}.${S.default.instancePath}`),e.var(S.default.parentData,(0,R._)`${S.default.valCxt}.${S.default.parentData}`),e.var(S.default.parentDataProperty,(0,R._)`${S.default.valCxt}.${S.default.parentDataProperty}`),e.var(S.default.rootData,(0,R._)`${S.default.valCxt}.${S.default.rootData}`),t.dynamicRef&&e.var(S.default.dynamicAnchors,(0,R._)`${S.default.valCxt}.${S.default.dynamicAnchors}`)},()=>{e.var(S.default.instancePath,(0,R._)`""`),e.var(S.default.parentData,(0,R._)`undefined`),e.var(S.default.parentDataProperty,(0,R._)`undefined`),e.var(S.default.rootData,S.default.data),t.dynamicRef&&e.var(S.default.dynamicAnchors,(0,R._)`{}`)})}function $f(e){let{schema:t,opts:r,gen:n}=e;Ra(e,()=>{r.$comment&&t.$comment&&Ia(e),xf(e),n.let(S.default.vErrors,null),n.let(S.default.errors,0),r.unevaluated&&Af(e),Oa(e),Nf(e)})}function Af(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0,R._)`${r}.evaluated`),t.if((0,R._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,R._)`${e.evaluated}.props`,(0,R._)`undefined`)),t.if((0,R._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,R._)`${e.evaluated}.items`,(0,R._)`undefined`))}function ba(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0,R._)`/*# sourceURL=${r} */`:R.nil}function Sf(e,t){if(Aa(e)&&(Sa(e),$a(e))){Of(e,t);return}(0,ka.boolOrEmptySchema)(e,t)}function $a({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 Of(e,t){let{schema:r,gen:n,opts:o}=e;o.$comment&&r.$comment&&Ia(e),Pf(e),Mf(e);let s=n.const("_errs",S.default.errors);Oa(e,s),n.var(t,(0,R._)`${s} === ${S.default.errors}`)}function Sa(e){(0,ze.checkUnknownRules)(e),If(e)}function Oa(e,t){if(e.opts.jtd)return wa(e,[],!1,t);let r=(0,Ca.getSchemaTypes)(e.schema),n=(0,Ca.coerceAndCheckDataType)(e,r);wa(e,r,!n,t)}function If(e){let{schema:t,errSchemaPath:r,opts:n,self:o}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0,ze.schemaHasRulesButRef)(t,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function xf(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,ze.checkStrictMode)(e,"default is ignored in the schema root")}function Pf(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,wf.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function Mf(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function Ia({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)e.code((0,R._)`${S.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,R.str)`${n}/$comment`,a=e.scopeValue("root",{ref:t.root});e.code((0,R._)`${S.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function Nf(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=e;r.$async?t.if((0,R._)`${S.default.errors} === 0`,()=>t.return(S.default.data),()=>t.throw((0,R._)`new ${o}(${S.default.vErrors})`)):(t.assign((0,R._)`${n}.errors`,S.default.vErrors),s.unevaluated&&Lf(e),t.return((0,R._)`${S.default.errors} === 0`))}function Lf({gen:e,evaluated:t,props:r,items:n}){r instanceof R.Name&&e.assign((0,R._)`${t}.props`,r),n instanceof R.Name&&e.assign((0,R._)`${t}.items`,n)}function wa(e,t,r,n){let{gen:o,schema:s,data:i,allErrors:a,opts:c,self:l}=e,{RULES:u}=l;if(s.$ref&&(c.ignoreKeywordsWithRef||!(0,ze.schemaHasRulesButRef)(s,u))){o.block(()=>Pa(e,"$ref",u.all.$ref.definition));return}c.jtd||jf(e,t),o.block(()=>{for(let m of u.rules)d(m);d(u.post)});function d(m){(0,Mo.shouldUseGroup)(s,m)&&(m.type?(o.if((0,Zr.checkDataType)(m.type,i,c.strictNumbers)),Ea(e,m),t.length===1&&t[0]===m.type&&r&&(o.else(),(0,Zr.reportTypeError)(e)),o.endIf()):Ea(e,m),a||o.if((0,R._)`${S.default.errors} === ${n||0}`))}}function Ea(e,t){let{gen:r,schema:n,opts:{useDefaults:o}}=e;o&&(0,bf.assignDefaults)(e,t.type),r.block(()=>{for(let s of t.rules)(0,Mo.shouldUseRule)(n,s)&&Pa(e,s.keyword,s.definition,t.type)})}function jf(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(qf(e,t),e.opts.allowUnionTypes||Df(e,t),Uf(e,e.dataTypes))}function qf(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{xa(e.dataTypes,r)||No(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),Bf(e,t)}}function Df(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&No(e,"use allowUnionTypes to allow union type keyword")}function Uf(e,t){let r=e.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Mo.shouldUseRule)(e.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>Ff(t,i))&&No(e,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function Ff(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function xa(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function Bf(e,t){let r=[];for(let n of e.dataTypes)xa(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r}function No(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,ze.checkStrictMode)(e,t,e.opts.strictTypes)}var en=class{constructor(t,r,n){if((0,ir.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,ze.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",Ma(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,ir.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",S.default.errors))}result(t,r,n){this.failResult((0,R.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,R.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,R._)`${r} !== undefined && (${(0,R.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?sr.reportExtraError:sr.reportError)(this,this.def.error,r)}$dataError(){(0,sr.reportError)(this,this.def.$dataError||sr.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,sr.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=R.nil){this.gen.block(()=>{this.check$data(t,n),r()})}check$data(t=R.nil,r=R.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,R.or)((0,R._)`${o} === undefined`,r)),t!==R.nil&&n.assign(t,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==R.nil&&n.assign(t,!1)),n.else()}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,R.or)(i(),a());function i(){if(n.length){if(!(r instanceof R.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,R._)`${(0,Zr.checkDataTypes)(c,r,s.opts.strictNumbers,Zr.DataType.Wrong)}`}return R.nil}function a(){if(o.validateSchema){let c=t.scopeValue("validate$data",{ref:o.validateSchema});return(0,R._)`!${c}(${r})`}return R.nil}}subschema(t,r){let n=(0,Po.getSubschema)(this.it,t);(0,Po.extendSubschemaData)(n,this.it,t),(0,Po.extendSubschemaMode)(n,t);let o={...this.it,...n,items:void 0,props:void 0};return Sf(o,r),o}mergeEvaluated(t,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&t.props!==void 0&&(n.props=ze.mergeEvaluated.props(o,t.props,n.props,r)),n.items!==!0&&t.items!==void 0&&(n.items=ze.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,R.Name)),!0}};Xe.KeywordCxt=en;function Pa(e,t,r,n){let o=new en(e,r,t);"code"in r?r.code(o,n):o.$data&&r.validate?(0,ir.funcKeywordCode)(o,r):"macro"in r?(0,ir.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,ir.funcKeywordCode)(o,r)}var Vf=/^\/(?:[^~]|~0|~1)*$/,zf=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function Ma(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let o,s;if(e==="")return S.default.rootData;if(e[0]==="/"){if(!Vf.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);o=e,s=S.default.rootData}else{let l=zf.exec(e);if(!l)throw new Error(`Invalid JSON-pointer: ${e}`);let u=+l[1];if(o=l[2],o==="#"){if(u>=t)throw new Error(c("property/index",u));return n[t-u]}if(u>t)throw new Error(c("data",u));if(s=r[t-u],!o)return s}let i=s,a=o.split("/");for(let l of a)l&&(s=(0,R._)`${s}${(0,R.getProperty)((0,ze.unescapeJsonPointer)(l))}`,i=(0,R._)`${i} && ${s}`);return i;function c(l,u){return`Cannot access ${l} ${u} levels up, current level is ${t}`}}Xe.getData=Ma});var tn=C(jo=>{"use strict";Object.defineProperty(jo,"__esModule",{value:!0});var Lo=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};jo.default=Lo});var cr=C(Uo=>{"use strict";Object.defineProperty(Uo,"__esModule",{value:!0});var qo=or(),Do=class extends Error{constructor(t,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,qo.resolveUrl)(t,r,n),this.missingSchema=(0,qo.normalizeId)((0,qo.getFullPath)(t,this.missingRef))}};Uo.default=Do});var lr=C(Re=>{"use strict";Object.defineProperty(Re,"__esModule",{value:!0});Re.resolveSchema=Re.getCompilingSchema=Re.resolveRef=Re.compileSchema=Re.SchemaEnv=void 0;var Ie=x(),Gf=tn(),ut=Ee(),xe=or(),Na=D(),Kf=ar(),Ot=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,xe.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={}}};Re.SchemaEnv=Ot;function Bo(e){let t=La.call(this,e);if(t)return t;let r=(0,xe.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new Ie.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;e.$async&&(a=i.scopeValue("Error",{ref:Gf.default,code:(0,Ie._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");e.validateName=c;let l={gen:i,allErrors:this.opts.allErrors,data:ut.default.data,parentData:ut.default.parentData,parentDataProperty:ut.default.parentDataProperty,dataNames:[ut.default.data],dataPathArr:[Ie.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,Ie.stringify)(e.schema)}:{ref:e.schema}),validateName:c,ValidationError:a,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:Ie.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Ie._)`""`,opts:this.opts,self:this},u;try{this._compilations.add(e),(0,Kf.validateFunctionCode)(l),i.optimize(this.opts.code.optimize);let d=i.toString();u=`${i.scopeRefs(ut.default.scope)}return ${d}`,this.opts.code.process&&(u=this.opts.code.process(u,e));let h=new Function(`${ut.default.self}`,`${ut.default.scope}`,u)(this,this.scope.get());if(this.scope.value(c,{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:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:f,items:p}=l;h.evaluated={props:f instanceof Ie.Name?void 0:f,items:p instanceof Ie.Name?void 0:p,dynamicProps:f instanceof Ie.Name,dynamicItems:p instanceof Ie.Name},h.source&&(h.source.evaluated=(0,Ie.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)}}Re.compileSchema=Bo;function Hf(e,t,r){var n;r=(0,xe.resolveUrl)(this.opts.uriResolver,t,r);let o=e.refs[r];if(o)return o;let s=Qf.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 Ot({schema:i,schemaId:a,root:e,baseId:t}))}if(s!==void 0)return e.refs[r]=Wf.call(this,s)}Re.resolveRef=Hf;function Wf(e){return(0,xe.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:Bo.call(this,e)}function La(e){for(let t of this._compilations)if(Jf(t,e))return t}Re.getCompilingSchema=La;function Jf(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function Qf(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||rn.call(this,e,t)}function rn(e,t){let r=this.opts.uriResolver.parse(t),n=(0,xe._getFullPath)(this.opts.uriResolver,r),o=(0,xe.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===o)return Fo.call(this,r,e);let s=(0,xe.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=rn.call(this,e,i);return typeof a?.schema!="object"?void 0:Fo.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||Bo.call(this,i),s===(0,xe.normalizeId)(t)){let{schema:a}=i,{schemaId:c}=this.opts,l=a[c];return l&&(o=(0,xe.resolveUrl)(this.opts.uriResolver,o,l)),new Ot({schema:a,schemaId:c,root:e,baseId:o})}return Fo.call(this,r,i)}}Re.resolveSchema=rn;var Yf=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Fo(e,{baseId:t,schema:r,root:n}){var o;if(((o=e.fragment)===null||o===void 0?void 0:o[0])!=="/")return;for(let a of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,Na.unescapeFragment)(a)];if(c===void 0)return;r=c;let l=typeof r=="object"&&r[this.opts.schemaId];!Yf.has(a)&&l&&(t=(0,xe.resolveUrl)(this.opts.uriResolver,t,l))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,Na.schemaHasRulesButRef)(r,this.RULES)){let a=(0,xe.resolveUrl)(this.opts.uriResolver,t,r.$ref);s=rn.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new Ot({schema:r,schemaId:i,root:n,baseId:t}),s.schema!==s.root.schema)return s}});var ja=C((dT,Xf)=>{Xf.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 Go=C((fT,Va)=>{"use strict";var Zf=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),Da=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),Vo=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),Ua=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),ep=RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);function zo(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 tp=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function qa(e){return e.length=0,!0}function rp(e,t,r){if(e.length){let n=zo(e);if(n!=="")t.push(n);else return r.error=!0,!1;e.length=0}return!0}function np(e){let t=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=rp;for(let c=0;c<e.length;c++){let l=e[c];if(!(l==="["||l==="]"))if(l===":"){if(s===!0&&(i=!0),!a(o,n,r))break;if(++t>7){r.error=!0;break}c>0&&e[c-1]===":"&&(s=!0),n.push(":");continue}else if(l==="%"){if(!a(o,n,r))break;a=qa}else{o.push(l);continue}}return o.length&&(a===qa?r.zone=o.join(""):i?n.push(o.join("")):n.push(zo(o))),r.address=n.join(""),r}function Fa(e){if(op(e,":")<2)return{host:e,isIPV6:!1};let t=np(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 op(e,t){let r=0;for(let n=0;n<e.length;n++)e[n]===t&&r++;return r}function sp(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 ip={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},ap=/[@/?#:]/g,cp=/[@/?#]/g;function Ba(e,t){let r=t?cp:ap;return r.lastIndex=0,e.replace(r,n=>ip[n])}function lp(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(Vo(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));t&&Ua(i)?r+=i:r+="%"+s,n+=2;continue}}r+=e[n]}return r}function up(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(Vo(n)){let o=n.toUpperCase(),s=String.fromCharCode(parseInt(o,16));s!=="."&&Ua(s)?t+=s:t+="%"+o,r+=2;continue}}ep(e[r])?t+=e[r]:t+=escape(e[r])}return t}function dp(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(Vo(n)){t+="%"+n.toUpperCase(),r+=2;continue}}t+=escape(e[r])}return t}function fp(e){let t=[];if(e.userinfo!==void 0&&(t.push(e.userinfo),t.push("@")),e.host!==void 0){let r=unescape(e.host);if(!Da(r)){let n=Fa(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=Ba(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}Va.exports={nonSimpleDomain:tp,recomposeAuthority:fp,reescapeHostDelimiters:Ba,normalizePercentEncoding:lp,normalizePathEncoding:up,escapePreservingEscapes:dp,removeDotSegments:sp,isIPv4:Da,isUUID:Zf,normalizeIPv6:Fa,stringArrayToHexStripped:zo}});var Wa=C((pT,Ha)=>{"use strict";var{isUUID:pp}=Go(),mp=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,hp=["http","https","ws","wss","urn","urn:uuid"];function gp(e){return hp.indexOf(e)!==-1}function Ko(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 za(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function Ga(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 yp(e){return e.secure=Ko(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function _p(e){if((e.port===(Ko(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 Tp(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(mp);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=Ho(o);e.path=void 0,s&&(e=s.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function vp(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=Ho(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 Cp(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!pp(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function bp(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var Ka={scheme:"http",domainHost:!0,parse:za,serialize:Ga},wp={scheme:"https",domainHost:Ka.domainHost,parse:za,serialize:Ga},nn={scheme:"ws",domainHost:!0,parse:yp,serialize:_p},Ep={scheme:"wss",domainHost:nn.domainHost,parse:nn.parse,serialize:nn.serialize},kp={scheme:"urn",parse:Tp,serialize:vp,skipNormalize:!0},Rp={scheme:"urn:uuid",parse:Cp,serialize:bp,skipNormalize:!0},on={http:Ka,https:wp,ws:nn,wss:Ep,urn:kp,"urn:uuid":Rp};Object.setPrototypeOf(on,null);function Ho(e){return e&&(on[e]||on[e.toLowerCase()])||void 0}Ha.exports={wsIsSecure:Ko,SCHEMES:on,isValidSchemeName:gp,getSchemeHandler:Ho}});var ec=C((mT,sn)=>{"use strict";var{normalizeIPv6:$p,removeDotSegments:ur,recomposeAuthority:Ap,normalizePercentEncoding:Sp,normalizePathEncoding:Op,escapePreservingEscapes:Ip,reescapeHostDelimiters:xp,isIPv4:Pp,nonSimpleDomain:Mp}=Go(),{SCHEMES:Np,getSchemeHandler:Qa}=Wa();function Lp(e,t){return typeof e=="string"?e=Fp(e,t):typeof e=="object"&&(e=It(dt(e,t),t)),e}function jp(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=Ya(It(e,n),It(t,n),n,!0);return n.skipEscape=!0,dt(o,n)}function Ya(e,t,r,n){let o={};return n||(e=It(dt(e,r),r),t=It(dt(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=ur(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=ur(t.path||""),o.query=t.query):(t.path?(t.path[0]==="/"?o.path=ur(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=ur(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 qp(e,t,r){let n=Ja(e,r),o=Ja(t,r);return n!==void 0&&o!==void 0&&n.toLowerCase()===o.toLowerCase()}function dt(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=Qa(n.scheme||r.scheme);s&&s.serialize&&s.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=Sp(r.path):(r.path=Ip(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&o.push(r.scheme,":");let i=Ap(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=ur(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 Dp=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Up(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 Xa(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(Dp);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=Up(n,i);if(a!==void 0&&(n.error=n.error||a,o=!0),n.host)if(Pp(n.host)===!1){let u=$p(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 c=Qa(r.scheme||n.scheme);if(!r.unicodeSupport&&(!c||!c.unicodeSupport)&&n.host&&(r.domainHost||c&&c.domainHost)&&s===!1&&Mp(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(l){n.error=n.error||"Host's domain name can not be converted to ASCII: "+l}if((!c||c&&!c.skipNormalize)&&(e.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=xp(unescape(n.host),s))),n.path&&(n.path=Op(n.path)),n.fragment))try{n.fragment=encodeURI(decodeURIComponent(n.fragment))}catch{n.error=n.error||"URI malformed"}c&&c.parse&&c.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return{parsed:n,malformedAuthorityOrPort:o}}function It(e,t){return Xa(e,t).parsed}function Fp(e,t){return Za(e,t).normalized}function Za(e,t){let{parsed:r,malformedAuthorityOrPort:n}=Xa(e,t);return{normalized:n?e:dt(r,t),malformedAuthorityOrPort:n}}function Ja(e,t){if(typeof e=="string"){let{normalized:r,malformedAuthorityOrPort:n}=Za(e,t);return n?void 0:r}if(typeof e=="object")return dt(e,t)}var Wo={SCHEMES:Np,normalize:Lp,resolve:jp,resolveComponent:Ya,equal:qp,serialize:dt,parse:It};sn.exports=Wo;sn.exports.default=Wo;sn.exports.fastUri=Wo});var rc=C(Jo=>{"use strict";Object.defineProperty(Jo,"__esModule",{value:!0});var tc=ec();tc.code='require("ajv/dist/runtime/uri").default';Jo.default=tc});var uc=C(ae=>{"use strict";Object.defineProperty(ae,"__esModule",{value:!0});ae.CodeGen=ae.Name=ae.nil=ae.stringify=ae.str=ae._=ae.KeywordCxt=void 0;var Bp=ar();Object.defineProperty(ae,"KeywordCxt",{enumerable:!0,get:function(){return Bp.KeywordCxt}});var xt=x();Object.defineProperty(ae,"_",{enumerable:!0,get:function(){return xt._}});Object.defineProperty(ae,"str",{enumerable:!0,get:function(){return xt.str}});Object.defineProperty(ae,"stringify",{enumerable:!0,get:function(){return xt.stringify}});Object.defineProperty(ae,"nil",{enumerable:!0,get:function(){return xt.nil}});Object.defineProperty(ae,"Name",{enumerable:!0,get:function(){return xt.Name}});Object.defineProperty(ae,"CodeGen",{enumerable:!0,get:function(){return xt.CodeGen}});var Vp=tn(),ac=cr(),zp=wo(),dr=lr(),Gp=x(),fr=or(),an=nr(),Yo=D(),nc=ja(),Kp=rc(),cc=(e,t)=>new RegExp(e,t);cc.code="new RegExp";var Hp=["removeAdditional","useDefaults","coerceTypes"],Wp=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),Jp={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."},Qp={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},oc=200;function Yp(e){var t,r,n,o,s,i,a,c,l,u,d,m,h,f,p,g,v,b,w,O,E,Y,U,y,$;let j=e.strict,V=(t=e.code)===null||t===void 0?void 0:t.optimize,W=V===!0||V===void 0?1:V||0,J=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:cc,Ce=(o=e.uriResolver)!==null&&o!==void 0?o:Kp.default;return{strictSchema:(i=(s=e.strictSchema)!==null&&s!==void 0?s:j)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=e.strictNumbers)!==null&&a!==void 0?a:j)!==null&&c!==void 0?c:!0,strictTypes:(u=(l=e.strictTypes)!==null&&l!==void 0?l:j)!==null&&u!==void 0?u:"log",strictTuples:(m=(d=e.strictTuples)!==null&&d!==void 0?d:j)!==null&&m!==void 0?m:"log",strictRequired:(f=(h=e.strictRequired)!==null&&h!==void 0?h:j)!==null&&f!==void 0?f:!1,code:e.code?{...e.code,optimize:W,regExp:J}:{optimize:W,regExp:J},loopRequired:(p=e.loopRequired)!==null&&p!==void 0?p:oc,loopEnum:(g=e.loopEnum)!==null&&g!==void 0?g:oc,meta:(v=e.meta)!==null&&v!==void 0?v:!0,messages:(b=e.messages)!==null&&b!==void 0?b:!0,inlineRefs:(w=e.inlineRefs)!==null&&w!==void 0?w:!0,schemaId:(O=e.schemaId)!==null&&O!==void 0?O:"$id",addUsedSchema:(E=e.addUsedSchema)!==null&&E!==void 0?E:!0,validateSchema:(Y=e.validateSchema)!==null&&Y!==void 0?Y:!0,validateFormats:(U=e.validateFormats)!==null&&U!==void 0?U:!0,unicodeRegExp:(y=e.unicodeRegExp)!==null&&y!==void 0?y:!0,int32range:($=e.int32range)!==null&&$!==void 0?$:!0,uriResolver:Ce}}var pr=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,...Yp(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new Gp.ValueScope({scope:{},prefixes:Wp,es5:r,lines:n}),this.logger=nm(t.logger);let o=t.validateFormats;t.validateFormats=!1,this.RULES=(0,zp.getRules)(),sc.call(this,Jp,t,"NOT SUPPORTED"),sc.call(this,Qp,t,"DEPRECATED","warn"),this._metaOpts=tm.call(this),t.formats&&Zp.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&em.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),Xp.call(this),t.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,o=nc;n==="id"&&(o={...nc},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 ac.default))throw d;return a.call(this,d),await c.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 c(u){let d=await l.call(this,u);this.refs[u]||await s.call(this,d.$schema),this.refs[u]||this.addSchema(d,u,r)}async function l(u){let d=this._loading[u];if(d)return d;try{return await(this._loading[u]=n(u))}finally{delete this._loading[u]}}}addSchema(t,r,n,o=this.opts.validateSchema){if(Array.isArray(t)){for(let 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,fr.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=ic.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,o=new dr.SchemaEnv({schema:{},schemaId:n});if(r=dr.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=ic.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,fr.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(sm.call(this,n,r),!r)return(0,Yo.eachItem)(n,s=>Qo.call(this,s)),this;am.call(this,r);let o={...r,type:(0,an.getJSONTypes)(r.type),schemaType:(0,an.getJSONTypes)(r.schemaType)};return(0,Yo.eachItem)(n,o.type.length===0?s=>Qo.call(this,s,o):s=>o.type.forEach(i=>Qo.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 c=n[a];if(typeof c!="object")continue;let{$data:l}=c.definition,u=i[a];l&&u&&(i[a]=lc(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 c=this._cache.get(t);if(c!==void 0)return c;n=(0,fr.normalizeId)(i||n);let l=fr.getSchemaRefs.call(this,t,n);return c=new dr.SchemaEnv({schema:t,schemaId:a,meta:r,baseId:n,localRefs:l}),this._cache.set(c.schema,c),s&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),o&&this.validateSchema(t,!0),c}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):dr.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{dr.compileSchema.call(this,t)}finally{this.opts=r}}};pr.ValidationError=Vp.default;pr.MissingRefError=ac.default;ae.default=pr;function sc(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 ic(e){return e=(0,fr.normalizeId)(e),this.schemas[e]||this.refs[e]}function Xp(){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 Zp(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function em(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 tm(){let e={...this.opts};for(let t of Hp)delete e[t];return e}var rm={log(){},warn(){},error(){}};function nm(e){if(e===!1)return rm;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 om=/^[a-z_$][a-z0-9_$:-]*$/i;function sm(e,t){let{RULES:r}=this;if((0,Yo.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!om.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 Qo(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:c})=>c===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,an.getJSONTypes)(t.type),schemaType:(0,an.getJSONTypes)(t.schemaType)}};t.before?im.call(this,i,a,t.before):i.rules.push(a),s.all[e]=a,(n=t.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function im(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 am(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=lc(t)),e.validateSchema=this.compile(t,!0))}var cm={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function lc(e){return{anyOf:[e,cm]}}});var dc=C(Xo=>{"use strict";Object.defineProperty(Xo,"__esModule",{value:!0});var lm={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Xo.default=lm});var un=C(ft=>{"use strict";Object.defineProperty(ft,"__esModule",{value:!0});ft.callRef=ft.getValidate=void 0;var um=cr(),fc=ke(),ve=x(),Pt=Ee(),pc=lr(),cn=D(),dm={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:o,schemaEnv:s,validateName:i,opts:a,self:c}=n,{root:l}=s;if((r==="#"||r==="#/")&&o===l.baseId)return d();let u=pc.resolveRef.call(c,l,o,r);if(u===void 0)throw new um.default(n.opts.uriResolver,o,r);if(u instanceof pc.SchemaEnv)return m(u);return h(u);function d(){if(s===l)return ln(e,i,s,s.$async);let f=t.scopeValue("root",{ref:l});return ln(e,(0,ve._)`${f}.validate`,l,l.$async)}function m(f){let p=mc(e,f);ln(e,p,f,f.$async)}function h(f){let p=t.scopeValue("schema",a.code.source===!0?{ref:f,code:(0,ve.stringify)(f)}:{ref:f}),g=t.name("valid"),v=e.subschema({schema:f,dataTypes:[],schemaPath:ve.nil,topSchemaRef:p,errSchemaPath:r},g);e.mergeEvaluated(v),e.ok(g)}}};function mc(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,ve._)`${r.scopeValue("wrapper",{ref:t})}.validate`}ft.getValidate=mc;function ln(e,t,r,n){let{gen:o,it:s}=e,{allErrors:i,schemaEnv:a,opts:c}=s,l=c.passContext?Pt.default.this:ve.nil;n?u():d();function u(){if(!a.$async)throw new Error("async schema referenced by sync schema");let f=o.let("valid");o.try(()=>{o.code((0,ve._)`await ${(0,fc.callValidateCode)(e,t,l)}`),h(t),i||o.assign(f,!0)},p=>{o.if((0,ve._)`!(${p} instanceof ${s.ValidationError})`,()=>o.throw(p)),m(p),i||o.assign(f,!1)}),e.ok(f)}function d(){e.result((0,fc.callValidateCode)(e,t,l),()=>h(t),()=>m(t))}function m(f){let p=(0,ve._)`${f}.errors`;o.assign(Pt.default.vErrors,(0,ve._)`${Pt.default.vErrors} === null ? ${p} : ${Pt.default.vErrors}.concat(${p})`),o.assign(Pt.default.errors,(0,ve._)`${Pt.default.vErrors}.length`)}function h(f){var p;if(!s.opts.unevaluated)return;let g=(p=r?.validate)===null||p===void 0?void 0:p.evaluated;if(s.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(s.props=cn.mergeEvaluated.props(o,g.props,s.props));else{let v=o.var("props",(0,ve._)`${f}.evaluated.props`);s.props=cn.mergeEvaluated.props(o,v,s.props,ve.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=cn.mergeEvaluated.items(o,g.items,s.items));else{let v=o.var("items",(0,ve._)`${f}.evaluated.items`);s.items=cn.mergeEvaluated.items(o,v,s.items,ve.Name)}}}ft.callRef=ln;ft.default=dm});var hc=C(Zo=>{"use strict";Object.defineProperty(Zo,"__esModule",{value:!0});var fm=dc(),pm=un(),mm=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",fm.default,pm.default];Zo.default=mm});var gc=C(es=>{"use strict";Object.defineProperty(es,"__esModule",{value:!0});var dn=x(),Ze=dn.operators,fn={maximum:{okStr:"<=",ok:Ze.LTE,fail:Ze.GT},minimum:{okStr:">=",ok:Ze.GTE,fail:Ze.LT},exclusiveMaximum:{okStr:"<",ok:Ze.LT,fail:Ze.GTE},exclusiveMinimum:{okStr:">",ok:Ze.GT,fail:Ze.LTE}},hm={message:({keyword:e,schemaCode:t})=>(0,dn.str)`must be ${fn[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,dn._)`{comparison: ${fn[e].okStr}, limit: ${t}}`},gm={keyword:Object.keys(fn),type:"number",schemaType:"number",$data:!0,error:hm,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0,dn._)`${r} ${fn[t].fail} ${n} || isNaN(${r})`)}};es.default=gm});var yc=C(ts=>{"use strict";Object.defineProperty(ts,"__esModule",{value:!0});var mr=x(),ym={message:({schemaCode:e})=>(0,mr.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,mr._)`{multipleOf: ${e}}`},_m={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:ym,code(e){let{gen:t,data:r,schemaCode:n,it:o}=e,s=o.opts.multipleOfPrecision,i=t.let("res"),a=s?(0,mr._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,mr._)`${i} !== parseInt(${i})`;e.fail$data((0,mr._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};ts.default=_m});var Tc=C(rs=>{"use strict";Object.defineProperty(rs,"__esModule",{value:!0});function _c(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}rs.default=_c;_c.code='require("ajv/dist/runtime/ucs2length").default'});var vc=C(ns=>{"use strict";Object.defineProperty(ns,"__esModule",{value:!0});var pt=x(),Tm=D(),vm=Tc(),Cm={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return(0,pt.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,pt._)`{limit: ${e}}`},bm={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:Cm,code(e){let{keyword:t,data:r,schemaCode:n,it:o}=e,s=t==="maxLength"?pt.operators.GT:pt.operators.LT,i=o.opts.unicode===!1?(0,pt._)`${r}.length`:(0,pt._)`${(0,Tm.useFunc)(e.gen,vm.default)}(${r})`;e.fail$data((0,pt._)`${i} ${s} ${n}`)}};ns.default=bm});var Cc=C(os=>{"use strict";Object.defineProperty(os,"__esModule",{value:!0});var wm=ke(),Em=D(),Mt=x(),km={message:({schemaCode:e})=>(0,Mt.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,Mt._)`{pattern: ${e}}`},Rm={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:km,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:c}=i.opts.code,l=c.code==="new RegExp"?(0,Mt._)`new RegExp`:(0,Em.useFunc)(t,c),u=t.let("valid");t.try(()=>t.assign(u,(0,Mt._)`${l}(${s}, ${a}).test(${r})`),()=>t.assign(u,!1)),e.fail$data((0,Mt._)`!${u}`)}else{let c=(0,wm.usePattern)(e,o);e.fail$data((0,Mt._)`!${c}.test(${r})`)}}};os.default=Rm});var bc=C(ss=>{"use strict";Object.defineProperty(ss,"__esModule",{value:!0});var hr=x(),$m={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,hr.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,hr._)`{limit: ${e}}`},Am={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:$m,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxProperties"?hr.operators.GT:hr.operators.LT;e.fail$data((0,hr._)`Object.keys(${r}).length ${o} ${n}`)}};ss.default=Am});var wc=C(is=>{"use strict";Object.defineProperty(is,"__esModule",{value:!0});var gr=ke(),yr=x(),Sm=D(),Om={message:({params:{missingProperty:e}})=>(0,yr.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,yr._)`{missingProperty: ${e}}`},Im={keyword:"required",type:"object",schemaType:"array",$data:!0,error:Om,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 c=r.length>=a.loopRequired;if(i.allErrors?l():u(),a.strictRequired){let h=e.parentSchema.properties,{definedProperties:f}=e.it;for(let p of r)if(h?.[p]===void 0&&!f.has(p)){let g=i.schemaEnv.baseId+i.errSchemaPath,v=`required property "${p}" is not defined at "${g}" (strictRequired)`;(0,Sm.checkStrictMode)(i,v,i.opts.strictRequired)}}function l(){if(c||s)e.block$data(yr.nil,d);else for(let h of r)(0,gr.checkReportMissingProp)(e,h)}function u(){let h=t.let("missing");if(c||s){let f=t.let("valid",!0);e.block$data(f,()=>m(h,f)),e.ok(f)}else t.if((0,gr.checkMissingProp)(e,r,h)),(0,gr.reportMissingProp)(e,h),t.else()}function d(){t.forOf("prop",n,h=>{e.setParams({missingProperty:h}),t.if((0,gr.noPropertyInData)(t,o,h,a.ownProperties),()=>e.error())})}function m(h,f){e.setParams({missingProperty:h}),t.forOf(h,n,()=>{t.assign(f,(0,gr.propertyInData)(t,o,h,a.ownProperties)),t.if((0,yr.not)(f),()=>{e.error(),t.break()})},yr.nil)}}};is.default=Im});var Ec=C(as=>{"use strict";Object.defineProperty(as,"__esModule",{value:!0});var _r=x(),xm={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,_r.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,_r._)`{limit: ${e}}`},Pm={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:xm,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxItems"?_r.operators.GT:_r.operators.LT;e.fail$data((0,_r._)`${r}.length ${o} ${n}`)}};as.default=Pm});var pn=C(cs=>{"use strict";Object.defineProperty(cs,"__esModule",{value:!0});var kc=Io();kc.code='require("ajv/dist/runtime/equal").default';cs.default=kc});var Rc=C(us=>{"use strict";Object.defineProperty(us,"__esModule",{value:!0});var ls=nr(),ce=x(),Mm=D(),Nm=pn(),Lm={message:({params:{i:e,j:t}})=>(0,ce.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,ce._)`{i: ${e}, j: ${t}}`},jm={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:Lm,code(e){let{gen:t,data:r,$data:n,schema:o,parentSchema:s,schemaCode:i,it:a}=e;if(!n&&!o)return;let c=t.let("valid"),l=s.items?(0,ls.getSchemaTypes)(s.items):[];e.block$data(c,u,(0,ce._)`${i} === false`),e.ok(c);function u(){let f=t.let("i",(0,ce._)`${r}.length`),p=t.let("j");e.setParams({i:f,j:p}),t.assign(c,!0),t.if((0,ce._)`${f} > 1`,()=>(d()?m:h)(f,p))}function d(){return l.length>0&&!l.some(f=>f==="object"||f==="array")}function m(f,p){let g=t.name("item"),v=(0,ls.checkDataTypes)(l,g,a.opts.strictNumbers,ls.DataType.Wrong),b=t.const("indices",(0,ce._)`{}`);t.for((0,ce._)`;${f}--;`,()=>{t.let(g,(0,ce._)`${r}[${f}]`),t.if(v,(0,ce._)`continue`),l.length>1&&t.if((0,ce._)`typeof ${g} == "string"`,(0,ce._)`${g} += "_"`),t.if((0,ce._)`typeof ${b}[${g}] == "number"`,()=>{t.assign(p,(0,ce._)`${b}[${g}]`),e.error(),t.assign(c,!1).break()}).code((0,ce._)`${b}[${g}] = ${f}`)})}function h(f,p){let g=(0,Mm.useFunc)(t,Nm.default),v=t.name("outer");t.label(v).for((0,ce._)`;${f}--;`,()=>t.for((0,ce._)`${p} = ${f}; ${p}--;`,()=>t.if((0,ce._)`${g}(${r}[${f}], ${r}[${p}])`,()=>{e.error(),t.assign(c,!1).break(v)})))}}};us.default=jm});var $c=C(fs=>{"use strict";Object.defineProperty(fs,"__esModule",{value:!0});var ds=x(),qm=D(),Dm=pn(),Um={message:"must be equal to constant",params:({schemaCode:e})=>(0,ds._)`{allowedValue: ${e}}`},Fm={keyword:"const",$data:!0,error:Um,code(e){let{gen:t,data:r,$data:n,schemaCode:o,schema:s}=e;n||s&&typeof s=="object"?e.fail$data((0,ds._)`!${(0,qm.useFunc)(t,Dm.default)}(${r}, ${o})`):e.fail((0,ds._)`${s} !== ${r}`)}};fs.default=Fm});var Ac=C(ps=>{"use strict";Object.defineProperty(ps,"__esModule",{value:!0});var Tr=x(),Bm=D(),Vm=pn(),zm={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,Tr._)`{allowedValues: ${e}}`},Gm={keyword:"enum",schemaType:"array",$data:!0,error:zm,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,c,l=()=>c??(c=(0,Bm.useFunc)(t,Vm.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,Tr.or)(...o.map((f,p)=>m(h,p)))}e.pass(u);function d(){t.assign(u,!1),t.forOf("v",s,h=>t.if((0,Tr._)`${l()}(${r}, ${h})`,()=>t.assign(u,!0).break()))}function m(h,f){let p=o[f];return typeof p=="object"&&p!==null?(0,Tr._)`${l()}(${r}, ${h}[${f}])`:(0,Tr._)`${r} === ${p}`}}};ps.default=Gm});var Sc=C(ms=>{"use strict";Object.defineProperty(ms,"__esModule",{value:!0});var Km=gc(),Hm=yc(),Wm=vc(),Jm=Cc(),Qm=bc(),Ym=wc(),Xm=Ec(),Zm=Rc(),eh=$c(),th=Ac(),rh=[Km.default,Hm.default,Wm.default,Jm.default,Qm.default,Ym.default,Xm.default,Zm.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},eh.default,th.default];ms.default=rh});var gs=C(vr=>{"use strict";Object.defineProperty(vr,"__esModule",{value:!0});vr.validateAdditionalItems=void 0;var mt=x(),hs=D(),nh={message:({params:{len:e}})=>(0,mt.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,mt._)`{limit: ${e}}`},oh={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:nh,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0,hs.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}Oc(e,n)}};function Oc(e,t){let{gen:r,schema:n,data:o,keyword:s,it:i}=e;i.items=!0;let a=r.const("len",(0,mt._)`${o}.length`);if(n===!1)e.setParams({len:t.length}),e.pass((0,mt._)`${a} <= ${t.length}`);else if(typeof n=="object"&&!(0,hs.alwaysValidSchema)(i,n)){let l=r.var("valid",(0,mt._)`${a} <= ${t.length}`);r.if((0,mt.not)(l),()=>c(l)),e.ok(l)}function c(l){r.forRange("i",t.length,a,u=>{e.subschema({keyword:s,dataProp:u,dataPropType:hs.Type.Num},l),i.allErrors||r.if((0,mt.not)(l),()=>r.break())})}}vr.validateAdditionalItems=Oc;vr.default=oh});var ys=C(Cr=>{"use strict";Object.defineProperty(Cr,"__esModule",{value:!0});Cr.validateTuple=void 0;var Ic=x(),mn=D(),sh=ke(),ih={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return xc(e,"additionalItems",t);r.items=!0,!(0,mn.alwaysValidSchema)(r,t)&&e.ok((0,sh.validateArray)(e))}};function xc(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=mn.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),l=n.const("len",(0,Ic._)`${s}.length`);r.forEach((d,m)=>{(0,mn.alwaysValidSchema)(a,d)||(n.if((0,Ic._)`${l} > ${m}`,()=>e.subschema({keyword:i,schemaProp:m,dataProp:m},c)),e.ok(c))});function u(d){let{opts:m,errSchemaPath:h}=a,f=r.length,p=f===d.minItems&&(f===d.maxItems||d[t]===!1);if(m.strictTuples&&!p){let g=`"${i}" is ${f}-tuple, but minItems or maxItems/${t} are not specified or different at path "${h}"`;(0,mn.checkStrictMode)(a,g,m.strictTuples)}}}Cr.validateTuple=xc;Cr.default=ih});var Pc=C(_s=>{"use strict";Object.defineProperty(_s,"__esModule",{value:!0});var ah=ys(),ch={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,ah.validateTuple)(e,"items")};_s.default=ch});var Nc=C(Ts=>{"use strict";Object.defineProperty(Ts,"__esModule",{value:!0});var Mc=x(),lh=D(),uh=ke(),dh=gs(),fh={message:({params:{len:e}})=>(0,Mc.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,Mc._)`{limit: ${e}}`},ph={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:fh,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:o}=r;n.items=!0,!(0,lh.alwaysValidSchema)(n,t)&&(o?(0,dh.validateAdditionalItems)(e,o):e.ok((0,uh.validateArray)(e)))}};Ts.default=ph});var Lc=C(vs=>{"use strict";Object.defineProperty(vs,"__esModule",{value:!0});var $e=x(),hn=D(),mh={message:({params:{min:e,max:t}})=>t===void 0?(0,$e.str)`must contain at least ${e} valid item(s)`:(0,$e.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,$e._)`{minContains: ${e}}`:(0,$e._)`{minContains: ${e}, maxContains: ${t}}`},hh={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:mh,code(e){let{gen:t,schema:r,parentSchema:n,data:o,it:s}=e,i,a,{minContains:c,maxContains:l}=n;s.opts.next?(i=c===void 0?1:c,a=l):i=1;let u=t.const("len",(0,$e._)`${o}.length`);if(e.setParams({min:i,max:a}),a===void 0&&i===0){(0,hn.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,hn.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,hn.alwaysValidSchema)(s,r)){let p=(0,$e._)`${u} >= ${i}`;a!==void 0&&(p=(0,$e._)`${p} && ${u} <= ${a}`),e.pass(p);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,$e._)`${o}.length > 0`,m)):(t.let(d,!1),m()),e.result(d,()=>e.reset());function m(){let p=t.name("_valid"),g=t.let("count",0);h(p,()=>t.if(p,()=>f(g)))}function h(p,g){t.forRange("i",0,u,v=>{e.subschema({keyword:"contains",dataProp:v,dataPropType:hn.Type.Num,compositeRule:!0},p),g()})}function f(p){t.code((0,$e._)`${p}++`),a===void 0?t.if((0,$e._)`${p} >= ${i}`,()=>t.assign(d,!0).break()):(t.if((0,$e._)`${p} > ${a}`,()=>t.assign(d,!1).break()),i===1?t.assign(d,!0):t.if((0,$e._)`${p} >= ${i}`,()=>t.assign(d,!0)))}}};vs.default=hh});var gn=C(De=>{"use strict";Object.defineProperty(De,"__esModule",{value:!0});De.validateSchemaDeps=De.validatePropertyDeps=De.error=void 0;var Cs=x(),gh=D(),br=ke();De.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return(0,Cs.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0,Cs._)`{property: ${e},
|
|
1
|
+
var su=Object.create;var Ei=Object.defineProperty;var iu=Object.getOwnPropertyDescriptor;var au=Object.getOwnPropertyNames;var cu=Object.getPrototypeOf,lu=Object.prototype.hasOwnProperty;var v=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var uu=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of au(t))!lu.call(e,o)&&o!==r&&Ei(e,o,{get:()=>t[o],enumerable:!(n=iu(t,o))||n.enumerable});return e};var du=(e,t,r)=>(r=e!=null?su(cu(e)):{},uu(t||!e||!e.__esModule?Ei(r,"default",{value:e,enumerable:!0}):r,e));var Vt=v(K=>{"use strict";Object.defineProperty(K,"__esModule",{value:!0});K.regexpCode=K.getEsmExportName=K.getProperty=K.safeStringify=K.stringify=K.strConcat=K.addCodeArg=K.str=K._=K.nil=K._Code=K.Name=K.IDENTIFIER=K._CodeOrName=void 0;var Ut=class{};K._CodeOrName=Ut;K.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var tt=class extends Ut{constructor(t){if(super(),!K.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}}};K.Name=tt;var we=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 tt&&(r[n.str]=(r[n.str]||0)+1),r),{})}};K._Code=we;K.nil=new we("");function Oi(e,...t){let r=[e[0]],n=0;for(;n<t.length;)Yn(r,t[n]),r.push(e[++n]);return new we(r)}K._=Oi;var Qn=new we("+");function Ai(e,...t){let r=[Bt(e[0])],n=0;for(;n<t.length;)r.push(Qn),Yn(r,t[n]),r.push(Qn,Bt(e[++n]));return wu(r),new we(r)}K.str=Ai;function Yn(e,t){t instanceof we?e.push(...t._items):t instanceof tt?e.push(t):e.push($u(t))}K.addCodeArg=Yn;function wu(e){let t=1;for(;t<e.length-1;){if(e[t]===Qn){let r=ku(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+"}t++}}function ku(e,t){if(t==='""')return e;if(e==='""')return t;if(typeof e=="string")return t instanceof tt||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 tt))return`"${e}${t.slice(1)}`}function Ru(e,t){return t.emptyStr()?e:e.emptyStr()?t:Ai`${e}${t}`}K.strConcat=Ru;function $u(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:Bt(Array.isArray(e)?e.join(","):e)}function Su(e){return new we(Bt(e))}K.stringify=Su;function Bt(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}K.safeStringify=Bt;function Ou(e){return typeof e=="string"&&K.IDENTIFIER.test(e)?new we(`.${e}`):Oi`[${e}]`}K.getProperty=Ou;function Au(e){if(typeof e=="string"&&K.IDENTIFIER.test(e))return new we(`${e}`);throw new Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}K.getEsmExportName=Au;function Iu(e){return new we(e.toString())}K.regexpCode=Iu});var eo=v(Te=>{"use strict";Object.defineProperty(Te,"__esModule",{value:!0});Te.ValueScope=Te.ValueScopeName=Te.Scope=Te.varKinds=Te.UsedValueState=void 0;var _e=Vt(),Xn=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},Lr;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(Lr||(Te.UsedValueState=Lr={}));Te.varKinds={const:new _e.Name("const"),let:new _e.Name("let"),var:new _e.Name("var")};var jr=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof _e.Name?t:this.name(t)}name(t){return new _e.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return`${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};Te.Scope=jr;var Dr=class extends _e.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0,_e._)`.${new _e.Name(r)}[${n}]`}};Te.ValueScopeName=Dr;var Pu=(0,_e._)`\n`,Zn=class extends jr{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?Pu:_e.nil}}get(){return this._scope}name(t){return new Dr(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 c=this._scope[s]||(this._scope[s]=[]),l=c.length;return c[l]=r.ref,o.setValue(r,{property:s,itemIndex:l}),o}getValue(t,r){let n=this._values[t];if(n)return n.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,_e._)`${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=_e.nil;for(let i in t){let a=t[i];if(!a)continue;let c=n[i]=n[i]||new Map;a.forEach(l=>{if(c.has(l))return;c.set(l,Lr.Started);let u=r(l);if(u){let d=this.opts.es5?Te.varKinds.var:Te.varKinds.const;s=(0,_e._)`${s}${d} ${l} = ${u};${this.opts._n}`}else if(u=o?.(l))s=(0,_e._)`${s}${u}${this.opts._n}`;else throw new Xn(l);c.set(l,Lr.Completed)})}return s}};Te.ValueScope=Zn});var x=v(L=>{"use strict";Object.defineProperty(L,"__esModule",{value:!0});L.or=L.and=L.not=L.CodeGen=L.operators=L.varKinds=L.ValueScopeName=L.ValueScope=L.Scope=L.Name=L.regexpCode=L.stringify=L.getProperty=L.nil=L.strConcat=L.str=L._=void 0;var V=Vt(),Ae=eo(),Fe=Vt();Object.defineProperty(L,"_",{enumerable:!0,get:function(){return Fe._}});Object.defineProperty(L,"str",{enumerable:!0,get:function(){return Fe.str}});Object.defineProperty(L,"strConcat",{enumerable:!0,get:function(){return Fe.strConcat}});Object.defineProperty(L,"nil",{enumerable:!0,get:function(){return Fe.nil}});Object.defineProperty(L,"getProperty",{enumerable:!0,get:function(){return Fe.getProperty}});Object.defineProperty(L,"stringify",{enumerable:!0,get:function(){return Fe.stringify}});Object.defineProperty(L,"regexpCode",{enumerable:!0,get:function(){return Fe.regexpCode}});Object.defineProperty(L,"Name",{enumerable:!0,get:function(){return Fe.Name}});var Vr=eo();Object.defineProperty(L,"Scope",{enumerable:!0,get:function(){return Vr.Scope}});Object.defineProperty(L,"ValueScope",{enumerable:!0,get:function(){return Vr.ValueScope}});Object.defineProperty(L,"ValueScopeName",{enumerable:!0,get:function(){return Vr.ValueScopeName}});Object.defineProperty(L,"varKinds",{enumerable:!0,get:function(){return Vr.varKinds}});L.operators={GT:new V._Code(">"),GTE:new V._Code(">="),LT:new V._Code("<"),LTE:new V._Code("<="),EQ:new V._Code("==="),NEQ:new V._Code("!=="),NOT:new V._Code("!"),OR:new V._Code("||"),AND:new V._Code("&&"),ADD:new V._Code("+")};var Ue=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},to=class extends Ue{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n}render({es5:t,_n:r}){let n=t?Ae.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 V._CodeOrName?this.rhs.names:{}}},qr=class extends Ue{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 V.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=yt(this.rhs,t,r),this}get names(){let t=this.lhs instanceof V.Name?{}:{...this.lhs.names};return Br(t,this.rhs)}},ro=class extends qr{constructor(t,r,n,o){super(t,n,o),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},no=class extends Ue{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},oo=class extends Ue{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},so=class extends Ue{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},io=class extends Ue{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 V._CodeOrName?this.code.names:{}}},zt=class extends Ue{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)||(xu(t,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>ot(t,r.names),{})}},Be=class extends zt{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},ao=class extends zt{},gt=class extends Be{};gt.kind="else";var rt=class e extends Be{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(Ii(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 Br(t,this.condition),this.else&&ot(t,this.else.names),t}};rt.kind="if";var nt=class extends Be{};nt.kind="for";var co=class extends nt{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 ot(super.names,this.iteration.names)}},lo=class extends nt{constructor(t,r,n,o){super(),this.varKind=t,this.name=r,this.from=n,this.to=o}render(t){let r=t.es5?Ae.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=Br(super.names,this.from);return Br(t,this.to)}},Ur=class extends nt{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 ot(super.names,this.iterable.names)}},Ft=class extends Be{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)}};Ft.kind="func";var Gt=class extends zt{render(t){return"return "+super.render(t)}};Gt.kind="return";var uo=class extends Be{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&&ot(t,this.catch.names),this.finally&&ot(t,this.finally.names),t}},Kt=class extends Be{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};Kt.kind="catch";var Ht=class extends Be{render(t){return"finally"+super.render(t)}};Ht.kind="finally";var fo=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
2
|
+
`:""},this._extScope=t,this._scope=new Ae.Scope({parent:t}),this._nodes=[new ao]}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 to(t,s,n)),s}const(t,r,n){return this._def(Ae.varKinds.const,t,r,n)}let(t,r,n){return this._def(Ae.varKinds.let,t,r,n)}var(t,r,n){return this._def(Ae.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new qr(t,r,n))}add(t,r){return this._leafNode(new ro(t,L.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==V.nil&&this._leafNode(new io(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,V.addCodeArg)(r,o));return r.push("}"),new V._Code(r)}if(t,r,n){if(this._blockNode(new rt(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 rt(t))}else(){return this._elseNode(new gt)}endIf(){return this._endBlockNode(rt,gt)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new co(t),r)}forRange(t,r,n,o,s=this.opts.es5?Ae.varKinds.var:Ae.varKinds.let){let i=this._scope.toName(t);return this._for(new lo(s,i,r,n),()=>o(i))}forOf(t,r,n,o=Ae.varKinds.const){let s=this._scope.toName(t);if(this.opts.es5){let i=r instanceof V.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,V._)`${i}.length`,a=>{this.var(s,(0,V._)`${i}[${a}]`),n(s)})}return this._for(new Ur("of",o,s,r),()=>n(s))}forIn(t,r,n,o=this.opts.es5?Ae.varKinds.var:Ae.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0,V._)`Object.keys(${r})`,n);let s=this._scope.toName(t);return this._for(new Ur("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(nt)}label(t){return this._leafNode(new no(t))}break(t){return this._leafNode(new oo(t))}return(t){let r=new Gt;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Gt)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new uo;if(this._blockNode(o),this.code(t),r){let s=this.name("e");this._currNode=o.catch=new Kt(s),r(s)}return n&&(this._currNode=o.finally=new Ht,this.code(n)),this._endBlockNode(Kt,Ht)}throw(t){return this._leafNode(new so(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=V.nil,n,o){return this._blockNode(new Ft(t,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Ft)}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 rt))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}};L.CodeGen=fo;function ot(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function Br(e,t){return t instanceof V._CodeOrName?ot(e,t.names):e}function yt(e,t,r){if(e instanceof V.Name)return n(e);if(!o(e))return e;return new V._Code(e._items.reduce((s,i)=>(i instanceof V.Name&&(i=n(i)),i instanceof V._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 V._Code&&s._items.some(i=>i instanceof V.Name&&t[i.str]===1&&r[i.str]!==void 0)}}function xu(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function Ii(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,V._)`!${po(e)}`}L.not=Ii;var Mu=Pi(L.operators.AND);function Nu(...e){return e.reduce(Mu)}L.and=Nu;var Lu=Pi(L.operators.OR);function ju(...e){return e.reduce(Lu)}L.or=ju;function Pi(e){return(t,r)=>t===V.nil?r:r===V.nil?t:(0,V._)`${po(t)} ${e} ${po(r)}`}function po(e){return e instanceof V.Name?e:(0,V._)`(${e})`}});var D=v(j=>{"use strict";Object.defineProperty(j,"__esModule",{value:!0});j.checkStrictMode=j.getErrorPath=j.Type=j.useFunc=j.setEvaluated=j.evaluatedPropsToName=j.mergeEvaluated=j.eachItem=j.unescapeJsonPointer=j.escapeJsonPointer=j.escapeFragment=j.unescapeFragment=j.schemaRefOrVal=j.schemaHasRulesButRef=j.schemaHasRules=j.checkUnknownRules=j.alwaysValidSchema=j.toHash=void 0;var Q=x(),Du=Vt();function qu(e){let t={};for(let r of e)t[r]=!0;return t}j.toHash=qu;function Uu(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(Ni(e,t),!Li(t,e.self.RULES.all))}j.alwaysValidSchema=Uu;function Ni(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}"`)}j.checkUnknownRules=Ni;function Li(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}j.schemaHasRules=Li;function Bu(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}j.schemaHasRulesButRef=Bu;function Vu({topSchemaRef:e,schemaPath:t},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,Q._)`${r}`}return(0,Q._)`${e}${t}${(0,Q.getProperty)(n)}`}j.schemaRefOrVal=Vu;function zu(e){return ji(decodeURIComponent(e))}j.unescapeFragment=zu;function Fu(e){return encodeURIComponent(ho(e))}j.escapeFragment=Fu;function ho(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}j.escapeJsonPointer=ho;function ji(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}j.unescapeJsonPointer=ji;function Gu(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}j.eachItem=Gu;function xi({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof Q.Name?(s instanceof Q.Name?e(o,s,i):t(o,s,i),i):s instanceof Q.Name?(t(o,i,s),s):r(s,i);return a===Q.Name&&!(c instanceof Q.Name)?n(o,c):c}}j.mergeEvaluated={props:xi({mergeNames:(e,t,r)=>e.if((0,Q._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,Q._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,Q._)`${r} || {}`).code((0,Q._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,Q._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,Q._)`${r} || {}`),go(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:Di}),items:xi({mergeNames:(e,t,r)=>e.if((0,Q._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,Q._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,Q._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,Q._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function Di(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,Q._)`{}`);return t!==void 0&&go(e,r,t),r}j.evaluatedPropsToName=Di;function go(e,t,r){Object.keys(r).forEach(n=>e.assign((0,Q._)`${t}${(0,Q.getProperty)(n)}`,!0))}j.setEvaluated=go;var Mi={};function Ku(e,t){return e.scopeValue("func",{ref:t,code:Mi[t.code]||(Mi[t.code]=new Du._Code(t.code))})}j.useFunc=Ku;var mo;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(mo||(j.Type=mo={}));function Hu(e,t,r){if(e instanceof Q.Name){let n=t===mo.Num;return r?n?(0,Q._)`"[" + ${e} + "]"`:(0,Q._)`"['" + ${e} + "']"`:n?(0,Q._)`"/" + ${e}`:(0,Q._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,Q.getProperty)(e).toString():"/"+ho(e)}j.getErrorPath=Hu;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)}}j.checkStrictMode=qi});var ke=v(yo=>{"use strict";Object.defineProperty(yo,"__esModule",{value:!0});var pe=x(),Wu={data:new pe.Name("data"),valCxt:new pe.Name("valCxt"),instancePath:new pe.Name("instancePath"),parentData:new pe.Name("parentData"),parentDataProperty:new pe.Name("parentDataProperty"),rootData:new pe.Name("rootData"),dynamicAnchors:new pe.Name("dynamicAnchors"),vErrors:new pe.Name("vErrors"),errors:new pe.Name("errors"),this:new pe.Name("this"),self:new pe.Name("self"),scope:new pe.Name("scope"),json:new pe.Name("json"),jsonPos:new pe.Name("jsonPos"),jsonLen:new pe.Name("jsonLen"),jsonPart:new pe.Name("jsonPart")};yo.default=Wu});var Wt=v(me=>{"use strict";Object.defineProperty(me,"__esModule",{value:!0});me.extendErrors=me.resetErrorsCount=me.reportExtraError=me.reportError=me.keyword$DataError=me.keywordError=void 0;var z=x(),zr=D(),ge=ke();me.keywordError={message:({keyword:e})=>(0,z.str)`must pass "${e}" keyword validation`};me.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,z.str)`"${e}" keyword must be ${t} ($data)`:(0,z.str)`"${e}" keyword is invalid ($data)`};function Ju(e,t=me.keywordError,r,n){let{it:o}=e,{gen:s,compositeRule:i,allErrors:a}=o,c=Vi(e,t,r);n??(i||a)?Ui(s,c):Bi(o,(0,z._)`[${c}]`)}me.reportError=Ju;function Qu(e,t=me.keywordError,r){let{it:n}=e,{gen:o,compositeRule:s,allErrors:i}=n,a=Vi(e,t,r);Ui(o,a),s||i||Bi(n,ge.default.vErrors)}me.reportExtraError=Qu;function Yu(e,t){e.assign(ge.default.errors,t),e.if((0,z._)`${ge.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,z._)`${ge.default.vErrors}.length`,t),()=>e.assign(ge.default.vErrors,null)))}me.resetErrorsCount=Yu;function Xu({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,ge.default.errors,a=>{e.const(i,(0,z._)`${ge.default.vErrors}[${a}]`),e.if((0,z._)`${i}.instancePath === undefined`,()=>e.assign((0,z._)`${i}.instancePath`,(0,z.strConcat)(ge.default.instancePath,s.errorPath))),e.assign((0,z._)`${i}.schemaPath`,(0,z.str)`${s.errSchemaPath}/${t}`),s.opts.verbose&&(e.assign((0,z._)`${i}.schema`,r),e.assign((0,z._)`${i}.data`,n))})}me.extendErrors=Xu;function Ui(e,t){let r=e.const("err",t);e.if((0,z._)`${ge.default.vErrors} === null`,()=>e.assign(ge.default.vErrors,(0,z._)`[${r}]`),(0,z._)`${ge.default.vErrors}.push(${r})`),e.code((0,z._)`${ge.default.errors}++`)}function Bi(e,t){let{gen:r,validateName:n,schemaEnv:o}=e;o.$async?r.throw((0,z._)`new ${e.ValidationError}(${t})`):(r.assign((0,z._)`${n}.errors`,t),r.return(!1))}var st={keyword:new z.Name("keyword"),schemaPath:new z.Name("schemaPath"),params:new z.Name("params"),propertyName:new z.Name("propertyName"),message:new z.Name("message"),schema:new z.Name("schema"),parentSchema:new z.Name("parentSchema")};function Vi(e,t,r){let{createErrors:n}=e.it;return n===!1?(0,z._)`{}`:Zu(e,t,r)}function Zu(e,t,r={}){let{gen:n,it:o}=e,s=[ed(o,r),td(e,r)];return rd(e,t,s),n.object(...s)}function ed({errorPath:e},{instancePath:t}){let r=t?(0,z.str)`${e}${(0,zr.getErrorPath)(t,zr.Type.Str)}`:e;return[ge.default.instancePath,(0,z.strConcat)(ge.default.instancePath,r)]}function td({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let o=n?t:(0,z.str)`${t}/${e}`;return r&&(o=(0,z.str)`${o}${(0,zr.getErrorPath)(r,zr.Type.Str)}`),[st.schemaPath,o]}function rd(e,{params:t,message:r},n){let{keyword:o,data:s,schemaValue:i,it:a}=e,{opts:c,propertyName:l,topSchemaRef:u,schemaPath:d}=a;n.push([st.keyword,o],[st.params,typeof t=="function"?t(e):t||(0,z._)`{}`]),c.messages&&n.push([st.message,typeof r=="function"?r(e):r]),c.verbose&&n.push([st.schema,i],[st.parentSchema,(0,z._)`${u}${d}`],[ge.default.data,s]),l&&n.push([st.propertyName,l])}});var Fi=v(_t=>{"use strict";Object.defineProperty(_t,"__esModule",{value:!0});_t.boolOrEmptySchema=_t.topBoolOrEmptySchema=void 0;var nd=Wt(),od=x(),sd=ke(),id={message:"boolean schema is false"};function ad(e){let{gen:t,schema:r,validateName:n}=e;r===!1?zi(e,!1):typeof r=="object"&&r.$async===!0?t.return(sd.default.data):(t.assign((0,od._)`${n}.errors`,null),t.return(!0))}_t.topBoolOrEmptySchema=ad;function cd(e,t){let{gen:r,schema:n}=e;n===!1?(r.var(t,!1),zi(e)):r.var(t,!0)}_t.boolOrEmptySchema=cd;function zi(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,nd.reportError)(o,id,void 0,t)}});var _o=v(Tt=>{"use strict";Object.defineProperty(Tt,"__esModule",{value:!0});Tt.getRules=Tt.isJSONType=void 0;var ld=["string","number","integer","boolean","null","object","array"],ud=new Set(ld);function dd(e){return typeof e=="string"&&ud.has(e)}Tt.isJSONType=dd;function fd(){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=fd});var To=v(Ge=>{"use strict";Object.defineProperty(Ge,"__esModule",{value:!0});Ge.shouldUseRule=Ge.shouldUseGroup=Ge.schemaHasRulesForType=void 0;function pd({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&Gi(e,n)}Ge.schemaHasRulesForType=pd;function Gi(e,t){return t.rules.some(r=>Ki(e,r))}Ge.shouldUseGroup=Gi;function Ki(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))}Ge.shouldUseRule=Ki});var Jt=v(he=>{"use strict";Object.defineProperty(he,"__esModule",{value:!0});he.reportTypeError=he.checkDataTypes=he.checkDataType=he.coerceAndCheckDataType=he.getJSONTypes=he.getSchemaTypes=he.DataType=void 0;var md=_o(),hd=To(),gd=Wt(),N=x(),Hi=D(),vt;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(vt||(he.DataType=vt={}));function yd(e){let t=Wi(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}he.getSchemaTypes=yd;function Wi(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(md.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}he.getJSONTypes=Wi;function _d(e,t){let{gen:r,data:n,opts:o}=e,s=Td(t,o.coerceTypes),i=t.length>0&&!(s.length===0&&t.length===1&&(0,hd.schemaHasRulesForType)(e,t[0]));if(i){let a=Co(t,n,o.strictNumbers,vt.Wrong);r.if(a,()=>{s.length?vd(e,t,s):Eo(e)})}return i}he.coerceAndCheckDataType=_d;var Ji=new Set(["string","number","integer","boolean","null"]);function Td(e,t){return t?e.filter(r=>Ji.has(r)||t==="array"&&r==="array"):[]}function vd(e,t,r){let{gen:n,data:o,opts:s}=e,i=n.let("dataType",(0,N._)`typeof ${o}`),a=n.let("coerced",(0,N._)`undefined`);s.coerceTypes==="array"&&n.if((0,N._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,N._)`${o}[0]`).assign(i,(0,N._)`typeof ${o}`).if(Co(t,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,N._)`${a} !== undefined`);for(let l of r)(Ji.has(l)||l==="array"&&s.coerceTypes==="array")&&c(l);n.else(),Eo(e),n.endIf(),n.if((0,N._)`${a} !== undefined`,()=>{n.assign(o,a),Cd(e,a)});function c(l){switch(l){case"string":n.elseIf((0,N._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,N._)`"" + ${o}`).elseIf((0,N._)`${o} === null`).assign(a,(0,N._)`""`);return;case"number":n.elseIf((0,N._)`${i} == "boolean" || ${o} === null
|
|
3
|
+
|| (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,N._)`+${o}`);return;case"integer":n.elseIf((0,N._)`${i} === "boolean" || ${o} === null
|
|
4
|
+
|| (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,N._)`+${o}`);return;case"boolean":n.elseIf((0,N._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,N._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,N._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,N._)`${i} === "string" || ${i} === "number"
|
|
5
|
+
|| ${i} === "boolean" || ${o} === null`).assign(a,(0,N._)`[${o}]`)}}}function Cd({gen:e,parentData:t,parentDataProperty:r},n){e.if((0,N._)`${t} !== undefined`,()=>e.assign((0,N._)`${t}[${r}]`,n))}function vo(e,t,r,n=vt.Correct){let o=n===vt.Correct?N.operators.EQ:N.operators.NEQ,s;switch(e){case"null":return(0,N._)`${t} ${o} null`;case"array":s=(0,N._)`Array.isArray(${t})`;break;case"object":s=(0,N._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":s=i((0,N._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":s=i();break;default:return(0,N._)`typeof ${t} ${o} ${e}`}return n===vt.Correct?s:(0,N.not)(s);function i(a=N.nil){return(0,N.and)((0,N._)`typeof ${t} == "number"`,a,r?(0,N._)`isFinite(${t})`:N.nil)}}he.checkDataType=vo;function Co(e,t,r,n){if(e.length===1)return vo(e[0],t,r,n);let o,s=(0,Hi.toHash)(e);if(s.array&&s.object){let i=(0,N._)`typeof ${t} != "object"`;o=s.null?i:(0,N._)`!${t} || ${i}`,delete s.null,delete s.array,delete s.object}else o=N.nil;s.number&&delete s.integer;for(let i in s)o=(0,N.and)(o,vo(i,t,r,n));return o}he.checkDataTypes=Co;var Ed={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,N._)`{type: ${e}}`:(0,N._)`{type: ${t}}`};function Eo(e){let t=bd(e);(0,gd.reportError)(t,Ed)}he.reportTypeError=Eo;function bd(e){let{gen:t,data:r,schema:n}=e,o=(0,Hi.schemaRefOrVal)(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:e}}});var Yi=v(Fr=>{"use strict";Object.defineProperty(Fr,"__esModule",{value:!0});Fr.assignDefaults=void 0;var Ct=x(),wd=D();function kd(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let o in r)Qi(e,o,r[o].default);else t==="array"&&Array.isArray(n)&&n.forEach((o,s)=>Qi(e,s,o.default))}Fr.assignDefaults=kd;function Qi(e,t,r){let{gen:n,compositeRule:o,data:s,opts:i}=e;if(r===void 0)return;let a=(0,Ct._)`${s}${(0,Ct.getProperty)(t)}`;if(o){(0,wd.checkStrictMode)(e,`default is ignored for: ${a}`);return}let c=(0,Ct._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,Ct._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,Ct._)`${a} = ${(0,Ct.stringify)(r)}`)}});var Re=v(H=>{"use strict";Object.defineProperty(H,"__esModule",{value:!0});H.validateUnion=H.validateArray=H.usePattern=H.callValidateCode=H.schemaProperties=H.allSchemaProperties=H.noPropertyInData=H.propertyInData=H.isOwnProperty=H.hasPropFunc=H.reportMissingProp=H.checkMissingProp=H.checkReportMissingProp=void 0;var Y=x(),bo=D(),Ke=ke(),Rd=D();function $d(e,t){let{gen:r,data:n,it:o}=e;r.if(ko(r,n,t,o.opts.ownProperties),()=>{e.setParams({missingProperty:(0,Y._)`${t}`},!0),e.error()})}H.checkReportMissingProp=$d;function Sd({gen:e,data:t,it:{opts:r}},n,o){return(0,Y.or)(...n.map(s=>(0,Y.and)(ko(e,t,s,r.ownProperties),(0,Y._)`${o} = ${s}`)))}H.checkMissingProp=Sd;function Od(e,t){e.setParams({missingProperty:t},!0),e.error()}H.reportMissingProp=Od;function Xi(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Y._)`Object.prototype.hasOwnProperty`})}H.hasPropFunc=Xi;function wo(e,t,r){return(0,Y._)`${Xi(e)}.call(${t}, ${r})`}H.isOwnProperty=wo;function Ad(e,t,r,n){let o=(0,Y._)`${t}${(0,Y.getProperty)(r)} !== undefined`;return n?(0,Y._)`${o} && ${wo(e,t,r)}`:o}H.propertyInData=Ad;function ko(e,t,r,n){let o=(0,Y._)`${t}${(0,Y.getProperty)(r)} === undefined`;return n?(0,Y.or)(o,(0,Y.not)(wo(e,t,r))):o}H.noPropertyInData=ko;function Zi(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}H.allSchemaProperties=Zi;function Id(e,t){return Zi(t).filter(r=>!(0,bo.alwaysValidSchema)(e,t[r]))}H.schemaProperties=Id;function Pd({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,l){let u=l?(0,Y._)`${e}, ${t}, ${n}${o}`:t,d=[[Ke.default.instancePath,(0,Y.strConcat)(Ke.default.instancePath,s)],[Ke.default.parentData,i.parentData],[Ke.default.parentDataProperty,i.parentDataProperty],[Ke.default.rootData,Ke.default.rootData]];i.opts.dynamicRef&&d.push([Ke.default.dynamicAnchors,Ke.default.dynamicAnchors]);let g=(0,Y._)`${u}, ${r.object(...d)}`;return c!==Y.nil?(0,Y._)`${a}.call(${c}, ${g})`:(0,Y._)`${a}(${g})`}H.callValidateCode=Pd;var xd=(0,Y._)`new RegExp`;function Md({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,Y._)`${o.code==="new RegExp"?xd:(0,Rd.useFunc)(e,o)}(${r}, ${n})`})}H.usePattern=Md;function Nd(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 c=t.const("len",(0,Y._)`${r}.length`);t.forRange("i",0,c,l=>{e.subschema({keyword:n,dataProp:l,dataPropType:bo.Type.Num},s),t.if((0,Y.not)(s),a)})}}H.validateArray=Nd;function Ld(e){let{gen:t,schema:r,keyword:n,it:o}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,bo.alwaysValidSchema)(o,c))&&!o.opts.unevaluated)return;let i=t.let("valid",!1),a=t.name("_valid");t.block(()=>r.forEach((c,l)=>{let u=e.subschema({keyword:n,schemaProp:l,compositeRule:!0},a);t.assign(i,(0,Y._)`${i} || ${a}`),e.mergeValidEvaluated(u,a)||t.if((0,Y.not)(i))})),e.result(i,()=>e.reset(),()=>e.error(!0))}H.validateUnion=Ld});var ra=v(Ne=>{"use strict";Object.defineProperty(Ne,"__esModule",{value:!0});Ne.validateKeywordUsage=Ne.validSchemaType=Ne.funcKeywordCode=Ne.macroKeywordCode=void 0;var ye=x(),it=ke(),jd=Re(),Dd=Wt();function qd(e,t){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=e,a=t.macro.call(i.self,o,s,i),c=ta(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let l=r.name("valid");e.subschema({schema:a,schemaPath:ye.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},l),e.pass(l,()=>e.error(!0))}Ne.macroKeywordCode=qd;function Ud(e,t){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=e;Vd(c,t);let l=!a&&t.compile?t.compile.call(c.self,s,i,c):t.validate,u=ta(n,o,l),d=n.let("valid");e.block$data(d,g),e.ok((r=t.valid)!==null&&r!==void 0?r:d);function g(){if(t.errors===!1)f(),t.modifying&&ea(e),h(()=>e.error());else{let y=t.async?m():p();t.modifying&&ea(e),h(()=>Bd(e,y))}}function m(){let y=n.let("ruleErrs",null);return n.try(()=>f((0,ye._)`await `),E=>n.assign(d,!1).if((0,ye._)`${E} instanceof ${c.ValidationError}`,()=>n.assign(y,(0,ye._)`${E}.errors`),()=>n.throw(E))),y}function p(){let y=(0,ye._)`${u}.errors`;return n.assign(y,null),f(ye.nil),y}function f(y=t.async?(0,ye._)`await `:ye.nil){let E=c.opts.passContext?it.default.this:it.default.self,b=!("compile"in t&&!a||t.schema===!1);n.assign(d,(0,ye._)`${y}${(0,jd.callValidateCode)(e,u,E,b)}`,t.modifying)}function h(y){var E;n.if((0,ye.not)((E=t.valid)!==null&&E!==void 0?E:d),y)}}Ne.funcKeywordCode=Ud;function ea(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0,ye._)`${n.parentData}[${n.parentDataProperty}]`))}function Bd(e,t){let{gen:r}=e;r.if((0,ye._)`Array.isArray(${t})`,()=>{r.assign(it.default.vErrors,(0,ye._)`${it.default.vErrors} === null ? ${t} : ${it.default.vErrors}.concat(${t})`).assign(it.default.errors,(0,ye._)`${it.default.vErrors}.length`),(0,Dd.extendErrors)(e)},()=>e.error())}function Vd({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function ta(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,ye.stringify)(r)})}function zd(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")}Ne.validSchemaType=zd;function Fd({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 c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}Ne.validateKeywordUsage=Fd});var oa=v(He=>{"use strict";Object.defineProperty(He,"__esModule",{value:!0});He.extendSubschemaMode=He.extendSubschemaData=He.getSubschema=void 0;var Le=x(),na=D();function Gd(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,Le._)`${e.schemaPath}${(0,Le.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:a[r],schemaPath:(0,Le._)`${e.schemaPath}${(0,Le.getProperty)(t)}${(0,Le.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,na.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')}He.getSubschema=Gd;function Kd(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:l,dataPathArr:u,opts:d}=t,g=a.let("data",(0,Le._)`${t.data}${(0,Le.getProperty)(r)}`,!0);c(g),e.errorPath=(0,Le.str)`${l}${(0,na.getErrorPath)(r,n,d.jsPropertySyntax)}`,e.parentDataProperty=(0,Le._)`${r}`,e.dataPathArr=[...u,e.parentDataProperty]}if(o!==void 0){let l=o instanceof Le.Name?o:a.let("data",o,!0);c(l),i!==void 0&&(e.propertyName=i)}s&&(e.dataTypes=s);function c(l){e.data=l,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,l]}}He.extendSubschemaData=Kd;function Hd(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}He.extendSubschemaMode=Hd});var Ro=v((I_,sa)=>{"use strict";sa.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 aa=v((P_,ia)=>{"use strict";var We=ia.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(){};Gr(t,n,o,e,"",e)};We.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};We.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};We.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};We.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 Gr(e,t,r,n,o,s,i,a,c,l){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,o,s,i,a,c,l);for(var u in n){var d=n[u];if(Array.isArray(d)){if(u in We.arrayKeywords)for(var g=0;g<d.length;g++)Gr(e,t,r,d[g],o+"/"+u+"/"+g,s,o,u,n,g)}else if(u in We.propsKeywords){if(d&&typeof d=="object")for(var m in d)Gr(e,t,r,d[m],o+"/"+u+"/"+Wd(m),s,o,u,n,m)}else(u in We.keywords||e.allKeys&&!(u in We.skipKeywords))&&Gr(e,t,r,d,o+"/"+u,s,o,u,n)}r(n,o,s,i,a,c,l)}}function Wd(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var Qt=v(ve=>{"use strict";Object.defineProperty(ve,"__esModule",{value:!0});ve.getSchemaRefs=ve.resolveUrl=ve.normalizeId=ve._getFullPath=ve.getFullPath=ve.inlineRef=void 0;var Jd=D(),Qd=Ro(),Yd=aa(),Xd=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function Zd(e,t=!0){return typeof e=="boolean"?!0:t===!0?!$o(e):t?ca(e)<=t:!1}ve.inlineRef=Zd;var ef=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function $o(e){for(let t in e){if(ef.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some($o)||typeof r=="object"&&$o(r))return!0}return!1}function ca(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!Xd.has(r)&&(typeof e[r]=="object"&&(0,Jd.eachItem)(e[r],n=>t+=ca(n)),t===1/0))return 1/0}return t}function la(e,t="",r){r!==!1&&(t=Et(t));let n=e.parse(t);return ua(e,n)}ve.getFullPath=la;function ua(e,t){return e.serialize(t).split("#")[0]+"#"}ve._getFullPath=ua;var tf=/#\/?$/;function Et(e){return e?e.replace(tf,""):""}ve.normalizeId=Et;function rf(e,t,r){return r=Et(r),e.resolve(t,r)}ve.resolveUrl=rf;var nf=/^[a-z_][-a-z0-9._]*$/i;function of(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Et(e[r]||t),s={"":o},i=la(n,o,!1),a={},c=new Set;return Yd(e,{allKeys:!0},(d,g,m,p)=>{if(p===void 0)return;let f=i+g,h=s[p];typeof d[r]=="string"&&(h=y.call(this,d[r])),E.call(this,d.$anchor),E.call(this,d.$dynamicAnchor),s[g]=h;function y(b){let $=this.opts.uriResolver.resolve;if(b=Et(h?$(h,b):b),c.has(b))throw u(b);c.add(b);let w=this.refs[b];return typeof w=="string"&&(w=this.refs[w]),typeof w=="object"?l(d,w.schema,b):b!==Et(f)&&(b[0]==="#"?(l(d,a[b],b),a[b]=d):this.refs[b]=f),b}function E(b){if(typeof b=="string"){if(!nf.test(b))throw new Error(`invalid anchor "${b}"`);y.call(this,`#${b}`)}}}),a;function l(d,g,m){if(g!==void 0&&!Qd(d,g))throw u(m)}function u(d){return new Error(`reference "${d}" resolves to more than one schema`)}}ve.getSchemaRefs=of});var Zt=v(Je=>{"use strict";Object.defineProperty(Je,"__esModule",{value:!0});Je.getData=Je.KeywordCxt=Je.validateFunctionCode=void 0;var ha=Fi(),da=Jt(),Oo=To(),Kr=Jt(),sf=Yi(),Xt=ra(),So=oa(),k=x(),A=ke(),af=Qt(),Ve=D(),Yt=Wt();function cf(e){if(_a(e)&&(Ta(e),ya(e))){df(e);return}ga(e,()=>(0,ha.topBoolOrEmptySchema)(e))}Je.validateFunctionCode=cf;function ga({gen:e,validateName:t,schema:r,schemaEnv:n,opts:o},s){o.code.es5?e.func(t,(0,k._)`${A.default.data}, ${A.default.valCxt}`,n.$async,()=>{e.code((0,k._)`"use strict"; ${fa(r,o)}`),uf(e,o),e.code(s)}):e.func(t,(0,k._)`${A.default.data}, ${lf(o)}`,n.$async,()=>e.code(fa(r,o)).code(s))}function lf(e){return(0,k._)`{${A.default.instancePath}="", ${A.default.parentData}, ${A.default.parentDataProperty}, ${A.default.rootData}=${A.default.data}${e.dynamicRef?(0,k._)`, ${A.default.dynamicAnchors}={}`:k.nil}}={}`}function uf(e,t){e.if(A.default.valCxt,()=>{e.var(A.default.instancePath,(0,k._)`${A.default.valCxt}.${A.default.instancePath}`),e.var(A.default.parentData,(0,k._)`${A.default.valCxt}.${A.default.parentData}`),e.var(A.default.parentDataProperty,(0,k._)`${A.default.valCxt}.${A.default.parentDataProperty}`),e.var(A.default.rootData,(0,k._)`${A.default.valCxt}.${A.default.rootData}`),t.dynamicRef&&e.var(A.default.dynamicAnchors,(0,k._)`${A.default.valCxt}.${A.default.dynamicAnchors}`)},()=>{e.var(A.default.instancePath,(0,k._)`""`),e.var(A.default.parentData,(0,k._)`undefined`),e.var(A.default.parentDataProperty,(0,k._)`undefined`),e.var(A.default.rootData,A.default.data),t.dynamicRef&&e.var(A.default.dynamicAnchors,(0,k._)`{}`)})}function df(e){let{schema:t,opts:r,gen:n}=e;ga(e,()=>{r.$comment&&t.$comment&&Ca(e),gf(e),n.let(A.default.vErrors,null),n.let(A.default.errors,0),r.unevaluated&&ff(e),va(e),Tf(e)})}function ff(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0,k._)`${r}.evaluated`),t.if((0,k._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,k._)`${e.evaluated}.props`,(0,k._)`undefined`)),t.if((0,k._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,k._)`${e.evaluated}.items`,(0,k._)`undefined`))}function fa(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0,k._)`/*# sourceURL=${r} */`:k.nil}function pf(e,t){if(_a(e)&&(Ta(e),ya(e))){mf(e,t);return}(0,ha.boolOrEmptySchema)(e,t)}function ya({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 _a(e){return typeof e.schema!="boolean"}function mf(e,t){let{schema:r,gen:n,opts:o}=e;o.$comment&&r.$comment&&Ca(e),yf(e),_f(e);let s=n.const("_errs",A.default.errors);va(e,s),n.var(t,(0,k._)`${s} === ${A.default.errors}`)}function Ta(e){(0,Ve.checkUnknownRules)(e),hf(e)}function va(e,t){if(e.opts.jtd)return pa(e,[],!1,t);let r=(0,da.getSchemaTypes)(e.schema),n=(0,da.coerceAndCheckDataType)(e,r);pa(e,r,!n,t)}function hf(e){let{schema:t,errSchemaPath:r,opts:n,self:o}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0,Ve.schemaHasRulesButRef)(t,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function gf(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Ve.checkStrictMode)(e,"default is ignored in the schema root")}function yf(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,af.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function _f(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function Ca({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)e.code((0,k._)`${A.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,k.str)`${n}/$comment`,a=e.scopeValue("root",{ref:t.root});e.code((0,k._)`${A.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function Tf(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=e;r.$async?t.if((0,k._)`${A.default.errors} === 0`,()=>t.return(A.default.data),()=>t.throw((0,k._)`new ${o}(${A.default.vErrors})`)):(t.assign((0,k._)`${n}.errors`,A.default.vErrors),s.unevaluated&&vf(e),t.return((0,k._)`${A.default.errors} === 0`))}function vf({gen:e,evaluated:t,props:r,items:n}){r instanceof k.Name&&e.assign((0,k._)`${t}.props`,r),n instanceof k.Name&&e.assign((0,k._)`${t}.items`,n)}function pa(e,t,r,n){let{gen:o,schema:s,data:i,allErrors:a,opts:c,self:l}=e,{RULES:u}=l;if(s.$ref&&(c.ignoreKeywordsWithRef||!(0,Ve.schemaHasRulesButRef)(s,u))){o.block(()=>ba(e,"$ref",u.all.$ref.definition));return}c.jtd||Cf(e,t),o.block(()=>{for(let g of u.rules)d(g);d(u.post)});function d(g){(0,Oo.shouldUseGroup)(s,g)&&(g.type?(o.if((0,Kr.checkDataType)(g.type,i,c.strictNumbers)),ma(e,g),t.length===1&&t[0]===g.type&&r&&(o.else(),(0,Kr.reportTypeError)(e)),o.endIf()):ma(e,g),a||o.if((0,k._)`${A.default.errors} === ${n||0}`))}}function ma(e,t){let{gen:r,schema:n,opts:{useDefaults:o}}=e;o&&(0,sf.assignDefaults)(e,t.type),r.block(()=>{for(let s of t.rules)(0,Oo.shouldUseRule)(n,s)&&ba(e,s.keyword,s.definition,t.type)})}function Cf(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(Ef(e,t),e.opts.allowUnionTypes||bf(e,t),wf(e,e.dataTypes))}function Ef(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{Ea(e.dataTypes,r)||Ao(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),Rf(e,t)}}function bf(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&Ao(e,"use allowUnionTypes to allow union type keyword")}function wf(e,t){let r=e.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Oo.shouldUseRule)(e.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>kf(t,i))&&Ao(e,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function kf(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function Ea(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function Rf(e,t){let r=[];for(let n of e.dataTypes)Ea(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r}function Ao(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,Ve.checkStrictMode)(e,t,e.opts.strictTypes)}var Hr=class{constructor(t,r,n){if((0,Xt.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,Ve.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",wa(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,Xt.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=t.gen.const("_errs",A.default.errors))}result(t,r,n){this.failResult((0,k.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,k.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,k._)`${r} !== undefined && (${(0,k.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?Yt.reportExtraError:Yt.reportError)(this,this.def.error,r)}$dataError(){(0,Yt.reportError)(this,this.def.$dataError||Yt.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Yt.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=k.nil){this.gen.block(()=>{this.check$data(t,n),r()})}check$data(t=k.nil,r=k.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,k.or)((0,k._)`${o} === undefined`,r)),t!==k.nil&&n.assign(t,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==k.nil&&n.assign(t,!1)),n.else()}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,k.or)(i(),a());function i(){if(n.length){if(!(r instanceof k.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,k._)`${(0,Kr.checkDataTypes)(c,r,s.opts.strictNumbers,Kr.DataType.Wrong)}`}return k.nil}function a(){if(o.validateSchema){let c=t.scopeValue("validate$data",{ref:o.validateSchema});return(0,k._)`!${c}(${r})`}return k.nil}}subschema(t,r){let n=(0,So.getSubschema)(this.it,t);(0,So.extendSubschemaData)(n,this.it,t),(0,So.extendSubschemaMode)(n,t);let o={...this.it,...n,items:void 0,props:void 0};return pf(o,r),o}mergeEvaluated(t,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&t.props!==void 0&&(n.props=Ve.mergeEvaluated.props(o,t.props,n.props,r)),n.items!==!0&&t.items!==void 0&&(n.items=Ve.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,k.Name)),!0}};Je.KeywordCxt=Hr;function ba(e,t,r,n){let o=new Hr(e,r,t);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Xt.funcKeywordCode)(o,r):"macro"in r?(0,Xt.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Xt.funcKeywordCode)(o,r)}var $f=/^\/(?:[^~]|~0|~1)*$/,Sf=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function wa(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let o,s;if(e==="")return A.default.rootData;if(e[0]==="/"){if(!$f.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);o=e,s=A.default.rootData}else{let l=Sf.exec(e);if(!l)throw new Error(`Invalid JSON-pointer: ${e}`);let u=+l[1];if(o=l[2],o==="#"){if(u>=t)throw new Error(c("property/index",u));return n[t-u]}if(u>t)throw new Error(c("data",u));if(s=r[t-u],!o)return s}let i=s,a=o.split("/");for(let l of a)l&&(s=(0,k._)`${s}${(0,k.getProperty)((0,Ve.unescapeJsonPointer)(l))}`,i=(0,k._)`${i} && ${s}`);return i;function c(l,u){return`Cannot access ${l} ${u} levels up, current level is ${t}`}}Je.getData=wa});var Wr=v(Po=>{"use strict";Object.defineProperty(Po,"__esModule",{value:!0});var Io=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};Po.default=Io});var er=v(No=>{"use strict";Object.defineProperty(No,"__esModule",{value:!0});var xo=Qt(),Mo=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))}};No.default=Mo});var tr=v($e=>{"use strict";Object.defineProperty($e,"__esModule",{value:!0});$e.resolveSchema=$e.getCompilingSchema=$e.resolveRef=$e.compileSchema=$e.SchemaEnv=void 0;var Ie=x(),Of=Wr(),at=ke(),Pe=Qt(),ka=D(),Af=Zt(),bt=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,Pe.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={}}};$e.SchemaEnv=bt;function jo(e){let t=Ra.call(this,e);if(t)return t;let r=(0,Pe.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new Ie.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;e.$async&&(a=i.scopeValue("Error",{ref:Of.default,code:(0,Ie._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");e.validateName=c;let l={gen:i,allErrors:this.opts.allErrors,data:at.default.data,parentData:at.default.parentData,parentDataProperty:at.default.parentDataProperty,dataNames:[at.default.data],dataPathArr:[Ie.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,Ie.stringify)(e.schema)}:{ref:e.schema}),validateName:c,ValidationError:a,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:Ie.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Ie._)`""`,opts:this.opts,self:this},u;try{this._compilations.add(e),(0,Af.validateFunctionCode)(l),i.optimize(this.opts.code.optimize);let d=i.toString();u=`${i.scopeRefs(at.default.scope)}return ${d}`,this.opts.code.process&&(u=this.opts.code.process(u,e));let m=new Function(`${at.default.self}`,`${at.default.scope}`,u)(this,this.scope.get());if(this.scope.value(c,{ref:m}),m.errors=null,m.schema=e.schema,m.schemaEnv=e,e.$async&&(m.$async=!0),this.opts.code.source===!0&&(m.source={validateName:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:p,items:f}=l;m.evaluated={props:p instanceof Ie.Name?void 0:p,items:f instanceof Ie.Name?void 0:f,dynamicProps:p instanceof Ie.Name,dynamicItems:f instanceof Ie.Name},m.source&&(m.source.evaluated=(0,Ie.stringify)(m.evaluated))}return e.validate=m,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)}}$e.compileSchema=jo;function If(e,t,r){var n;r=(0,Pe.resolveUrl)(this.opts.uriResolver,t,r);let o=e.refs[r];if(o)return o;let s=Mf.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 bt({schema:i,schemaId:a,root:e,baseId:t}))}if(s!==void 0)return e.refs[r]=Pf.call(this,s)}$e.resolveRef=If;function Pf(e){return(0,Pe.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:jo.call(this,e)}function Ra(e){for(let t of this._compilations)if(xf(t,e))return t}$e.getCompilingSchema=Ra;function xf(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function Mf(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||Jr.call(this,e,t)}function Jr(e,t){let r=this.opts.uriResolver.parse(t),n=(0,Pe._getFullPath)(this.opts.uriResolver,r),o=(0,Pe.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===o)return Lo.call(this,r,e);let s=(0,Pe.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Jr.call(this,e,i);return typeof a?.schema!="object"?void 0:Lo.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||jo.call(this,i),s===(0,Pe.normalizeId)(t)){let{schema:a}=i,{schemaId:c}=this.opts,l=a[c];return l&&(o=(0,Pe.resolveUrl)(this.opts.uriResolver,o,l)),new bt({schema:a,schemaId:c,root:e,baseId:o})}return Lo.call(this,r,i)}}$e.resolveSchema=Jr;var Nf=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Lo(e,{baseId:t,schema:r,root:n}){var o;if(((o=e.fragment)===null||o===void 0?void 0:o[0])!=="/")return;for(let a of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,ka.unescapeFragment)(a)];if(c===void 0)return;r=c;let l=typeof r=="object"&&r[this.opts.schemaId];!Nf.has(a)&&l&&(t=(0,Pe.resolveUrl)(this.opts.uriResolver,t,l))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,ka.schemaHasRulesButRef)(r,this.RULES)){let a=(0,Pe.resolveUrl)(this.opts.uriResolver,t,r.$ref);s=Jr.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new bt({schema:r,schemaId:i,root:n,baseId:t}),s.schema!==s.root.schema)return s}});var $a=v((D_,Lf)=>{Lf.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 Uo=v((q_,xa)=>{"use strict";var jf=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),Oa=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),Do=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),Aa=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),Df=RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);function qo(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 qf=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function Sa(e){return e.length=0,!0}function Uf(e,t,r){if(e.length){let n=qo(e);if(n!=="")t.push(n);else return r.error=!0,!1;e.length=0}return!0}function Bf(e){let t=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=Uf;for(let c=0;c<e.length;c++){let l=e[c];if(!(l==="["||l==="]"))if(l===":"){if(s===!0&&(i=!0),!a(o,n,r))break;if(++t>7){r.error=!0;break}c>0&&e[c-1]===":"&&(s=!0),n.push(":");continue}else if(l==="%"){if(!a(o,n,r))break;a=Sa}else{o.push(l);continue}}return o.length&&(a===Sa?r.zone=o.join(""):i?n.push(o.join("")):n.push(qo(o))),r.address=n.join(""),r}function Ia(e){if(Vf(e,":")<2)return{host:e,isIPV6:!1};let t=Bf(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 Vf(e,t){let r=0;for(let n=0;n<e.length;n++)e[n]===t&&r++;return r}function zf(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 Ff={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},Gf=/[@/?#:]/g,Kf=/[@/?#]/g;function Pa(e,t){let r=t?Kf:Gf;return r.lastIndex=0,e.replace(r,n=>Ff[n])}function Hf(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(Do(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));t&&Aa(i)?r+=i:r+="%"+s,n+=2;continue}}r+=e[n]}return r}function Wf(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(Do(n)){let o=n.toUpperCase(),s=String.fromCharCode(parseInt(o,16));s!=="."&&Aa(s)?t+=s:t+="%"+o,r+=2;continue}}Df(e[r])?t+=e[r]:t+=escape(e[r])}return t}function Jf(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(Do(n)){t+="%"+n.toUpperCase(),r+=2;continue}}t+=escape(e[r])}return t}function Qf(e){let t=[];if(e.userinfo!==void 0&&(t.push(e.userinfo),t.push("@")),e.host!==void 0){let r=unescape(e.host);if(!Oa(r)){let n=Ia(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=Pa(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}xa.exports={nonSimpleDomain:qf,recomposeAuthority:Qf,reescapeHostDelimiters:Pa,normalizePercentEncoding:Hf,normalizePathEncoding:Wf,escapePreservingEscapes:Jf,removeDotSegments:zf,isIPv4:Oa,isUUID:jf,normalizeIPv6:Ia,stringArrayToHexStripped:qo}});var Da=v((U_,ja)=>{"use strict";var{isUUID:Yf}=Uo(),Xf=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,Zf=["http","https","ws","wss","urn","urn:uuid"];function ep(e){return Zf.indexOf(e)!==-1}function Bo(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 Ma(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function Na(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 tp(e){return e.secure=Bo(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function rp(e){if((e.port===(Bo(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 np(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(Xf);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=Vo(o);e.path=void 0,s&&(e=s.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function op(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=Vo(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 sp(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!Yf(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function ip(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var La={scheme:"http",domainHost:!0,parse:Ma,serialize:Na},ap={scheme:"https",domainHost:La.domainHost,parse:Ma,serialize:Na},Qr={scheme:"ws",domainHost:!0,parse:tp,serialize:rp},cp={scheme:"wss",domainHost:Qr.domainHost,parse:Qr.parse,serialize:Qr.serialize},lp={scheme:"urn",parse:np,serialize:op,skipNormalize:!0},up={scheme:"urn:uuid",parse:sp,serialize:ip,skipNormalize:!0},Yr={http:La,https:ap,ws:Qr,wss:cp,urn:lp,"urn:uuid":up};Object.setPrototypeOf(Yr,null);function Vo(e){return e&&(Yr[e]||Yr[e.toLowerCase()])||void 0}ja.exports={wsIsSecure:Bo,SCHEMES:Yr,isValidSchemeName:ep,getSchemeHandler:Vo}});var Fa=v((B_,Xr)=>{"use strict";var{normalizeIPv6:dp,removeDotSegments:rr,recomposeAuthority:fp,normalizePercentEncoding:pp,normalizePathEncoding:mp,escapePreservingEscapes:hp,reescapeHostDelimiters:gp,isIPv4:yp,nonSimpleDomain:_p}=Uo(),{SCHEMES:Tp,getSchemeHandler:Ua}=Da();function vp(e,t){return typeof e=="string"?e=kp(e,t):typeof e=="object"&&(e=wt(ct(e,t),t)),e}function Cp(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=Ba(wt(e,n),wt(t,n),n,!0);return n.skipEscape=!0,ct(o,n)}function Ba(e,t,r,n){let o={};return n||(e=wt(ct(e,r),r),t=wt(ct(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=rr(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=rr(t.path||""),o.query=t.query):(t.path?(t.path[0]==="/"?o.path=rr(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=rr(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 Ep(e,t,r){let n=qa(e,r),o=qa(t,r);return n!==void 0&&o!==void 0&&n.toLowerCase()===o.toLowerCase()}function ct(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=Ua(n.scheme||r.scheme);s&&s.serialize&&s.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=pp(r.path):(r.path=hp(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&o.push(r.scheme,":");let i=fp(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=rr(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 bp=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function wp(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 Va(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(bp);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=wp(n,i);if(a!==void 0&&(n.error=n.error||a,o=!0),n.host)if(yp(n.host)===!1){let u=dp(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 c=Ua(r.scheme||n.scheme);if(!r.unicodeSupport&&(!c||!c.unicodeSupport)&&n.host&&(r.domainHost||c&&c.domainHost)&&s===!1&&_p(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(l){n.error=n.error||"Host's domain name can not be converted to ASCII: "+l}if((!c||c&&!c.skipNormalize)&&(e.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=gp(unescape(n.host),s))),n.path&&(n.path=mp(n.path)),n.fragment))try{n.fragment=encodeURI(decodeURIComponent(n.fragment))}catch{n.error=n.error||"URI malformed"}c&&c.parse&&c.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return{parsed:n,malformedAuthorityOrPort:o}}function wt(e,t){return Va(e,t).parsed}function kp(e,t){return za(e,t).normalized}function za(e,t){let{parsed:r,malformedAuthorityOrPort:n}=Va(e,t);return{normalized:n?e:ct(r,t),malformedAuthorityOrPort:n}}function qa(e,t){if(typeof e=="string"){let{normalized:r,malformedAuthorityOrPort:n}=za(e,t);return n?void 0:r}if(typeof e=="object")return ct(e,t)}var zo={SCHEMES:Tp,normalize:vp,resolve:Cp,resolveComponent:Ba,equal:Ep,serialize:ct,parse:wt};Xr.exports=zo;Xr.exports.default=zo;Xr.exports.fastUri=zo});var Ka=v(Fo=>{"use strict";Object.defineProperty(Fo,"__esModule",{value:!0});var Ga=Fa();Ga.code='require("ajv/dist/runtime/uri").default';Fo.default=Ga});var ec=v(ue=>{"use strict";Object.defineProperty(ue,"__esModule",{value:!0});ue.CodeGen=ue.Name=ue.nil=ue.stringify=ue.str=ue._=ue.KeywordCxt=void 0;var Rp=Zt();Object.defineProperty(ue,"KeywordCxt",{enumerable:!0,get:function(){return Rp.KeywordCxt}});var kt=x();Object.defineProperty(ue,"_",{enumerable:!0,get:function(){return kt._}});Object.defineProperty(ue,"str",{enumerable:!0,get:function(){return kt.str}});Object.defineProperty(ue,"stringify",{enumerable:!0,get:function(){return kt.stringify}});Object.defineProperty(ue,"nil",{enumerable:!0,get:function(){return kt.nil}});Object.defineProperty(ue,"Name",{enumerable:!0,get:function(){return kt.Name}});Object.defineProperty(ue,"CodeGen",{enumerable:!0,get:function(){return kt.CodeGen}});var $p=Wr(),Ya=er(),Sp=_o(),nr=tr(),Op=x(),or=Qt(),Zr=Jt(),Ko=D(),Ha=$a(),Ap=Ka(),Xa=(e,t)=>new RegExp(e,t);Xa.code="new RegExp";var Ip=["removeAdditional","useDefaults","coerceTypes"],Pp=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),xp={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."},Mp={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Wa=200;function Np(e){var t,r,n,o,s,i,a,c,l,u,d,g,m,p,f,h,y,E,b,$,w,F,q,S,I;let W=e.strict,C=(t=e.code)===null||t===void 0?void 0:t.optimize,M=C===!0||C===void 0?1:C||0,Z=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Xa,re=(o=e.uriResolver)!==null&&o!==void 0?o:Ap.default;return{strictSchema:(i=(s=e.strictSchema)!==null&&s!==void 0?s:W)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=e.strictNumbers)!==null&&a!==void 0?a:W)!==null&&c!==void 0?c:!0,strictTypes:(u=(l=e.strictTypes)!==null&&l!==void 0?l:W)!==null&&u!==void 0?u:"log",strictTuples:(g=(d=e.strictTuples)!==null&&d!==void 0?d:W)!==null&&g!==void 0?g:"log",strictRequired:(p=(m=e.strictRequired)!==null&&m!==void 0?m:W)!==null&&p!==void 0?p:!1,code:e.code?{...e.code,optimize:M,regExp:Z}:{optimize:M,regExp:Z},loopRequired:(f=e.loopRequired)!==null&&f!==void 0?f:Wa,loopEnum:(h=e.loopEnum)!==null&&h!==void 0?h:Wa,meta:(y=e.meta)!==null&&y!==void 0?y:!0,messages:(E=e.messages)!==null&&E!==void 0?E:!0,inlineRefs:(b=e.inlineRefs)!==null&&b!==void 0?b:!0,schemaId:($=e.schemaId)!==null&&$!==void 0?$:"$id",addUsedSchema:(w=e.addUsedSchema)!==null&&w!==void 0?w:!0,validateSchema:(F=e.validateSchema)!==null&&F!==void 0?F:!0,validateFormats:(q=e.validateFormats)!==null&&q!==void 0?q:!0,unicodeRegExp:(S=e.unicodeRegExp)!==null&&S!==void 0?S:!0,int32range:(I=e.int32range)!==null&&I!==void 0?I:!0,uriResolver:re}}var sr=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,...Np(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new Op.ValueScope({scope:{},prefixes:Pp,es5:r,lines:n}),this.logger=Bp(t.logger);let o=t.validateFormats;t.validateFormats=!1,this.RULES=(0,Sp.getRules)(),Ja.call(this,xp,t,"NOT SUPPORTED"),Ja.call(this,Mp,t,"DEPRECATED","warn"),this._metaOpts=qp.call(this),t.formats&&jp.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&Dp.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),Lp.call(this),t.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,o=Ha;n==="id"&&(o={...Ha},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 g=this._addSchema(u,d);return g.validate||i.call(this,g)}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 Ya.default))throw d;return a.call(this,d),await c.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 c(u){let d=await l.call(this,u);this.refs[u]||await s.call(this,d.$schema),this.refs[u]||this.addSchema(d,u,r)}async function l(u){let d=this._loading[u];if(d)return d;try{return await(this._loading[u]=n(u))}finally{delete this._loading[u]}}}addSchema(t,r,n,o=this.opts.validateSchema){if(Array.isArray(t)){for(let 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,or.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=Qa.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,o=new nr.SchemaEnv({schema:{},schemaId:n});if(r=nr.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=Qa.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,or.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(zp.call(this,n,r),!r)return(0,Ko.eachItem)(n,s=>Go.call(this,s)),this;Gp.call(this,r);let o={...r,type:(0,Zr.getJSONTypes)(r.type),schemaType:(0,Zr.getJSONTypes)(r.schemaType)};return(0,Ko.eachItem)(n,o.type.length===0?s=>Go.call(this,s,o):s=>o.type.forEach(i=>Go.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 c=n[a];if(typeof c!="object")continue;let{$data:l}=c.definition,u=i[a];l&&u&&(i[a]=Za(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 c=this._cache.get(t);if(c!==void 0)return c;n=(0,or.normalizeId)(i||n);let l=or.getSchemaRefs.call(this,t,n);return c=new nr.SchemaEnv({schema:t,schemaId:a,meta:r,baseId:n,localRefs:l}),this._cache.set(c.schema,c),s&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),o&&this.validateSchema(t,!0),c}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):nr.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{nr.compileSchema.call(this,t)}finally{this.opts=r}}};sr.ValidationError=$p.default;sr.MissingRefError=Ya.default;ue.default=sr;function Ja(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 Qa(e){return e=(0,or.normalizeId)(e),this.schemas[e]||this.refs[e]}function Lp(){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 jp(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function Dp(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 qp(){let e={...this.opts};for(let t of Ip)delete e[t];return e}var Up={log(){},warn(){},error(){}};function Bp(e){if(e===!1)return Up;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 Vp=/^[a-z_$][a-z0-9_$:-]*$/i;function zp(e,t){let{RULES:r}=this;if((0,Ko.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!Vp.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 Go(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:c})=>c===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,Zr.getJSONTypes)(t.type),schemaType:(0,Zr.getJSONTypes)(t.schemaType)}};t.before?Fp.call(this,i,a,t.before):i.rules.push(a),s.all[e]=a,(n=t.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function Fp(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 Gp(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=Za(t)),e.validateSchema=this.compile(t,!0))}var Kp={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Za(e){return{anyOf:[e,Kp]}}});var tc=v(Ho=>{"use strict";Object.defineProperty(Ho,"__esModule",{value:!0});var Hp={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Ho.default=Hp});var rn=v(lt=>{"use strict";Object.defineProperty(lt,"__esModule",{value:!0});lt.callRef=lt.getValidate=void 0;var Wp=er(),rc=Re(),Ce=x(),Rt=ke(),nc=tr(),en=D(),Jp={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:o,schemaEnv:s,validateName:i,opts:a,self:c}=n,{root:l}=s;if((r==="#"||r==="#/")&&o===l.baseId)return d();let u=nc.resolveRef.call(c,l,o,r);if(u===void 0)throw new Wp.default(n.opts.uriResolver,o,r);if(u instanceof nc.SchemaEnv)return g(u);return m(u);function d(){if(s===l)return tn(e,i,s,s.$async);let p=t.scopeValue("root",{ref:l});return tn(e,(0,Ce._)`${p}.validate`,l,l.$async)}function g(p){let f=oc(e,p);tn(e,f,p,p.$async)}function m(p){let f=t.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,Ce.stringify)(p)}:{ref:p}),h=t.name("valid"),y=e.subschema({schema:p,dataTypes:[],schemaPath:Ce.nil,topSchemaRef:f,errSchemaPath:r},h);e.mergeEvaluated(y),e.ok(h)}}};function oc(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,Ce._)`${r.scopeValue("wrapper",{ref:t})}.validate`}lt.getValidate=oc;function tn(e,t,r,n){let{gen:o,it:s}=e,{allErrors:i,schemaEnv:a,opts:c}=s,l=c.passContext?Rt.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,rc.callValidateCode)(e,t,l)}`),m(t),i||o.assign(p,!0)},f=>{o.if((0,Ce._)`!(${f} instanceof ${s.ValidationError})`,()=>o.throw(f)),g(f),i||o.assign(p,!1)}),e.ok(p)}function d(){e.result((0,rc.callValidateCode)(e,t,l),()=>m(t),()=>g(t))}function g(p){let f=(0,Ce._)`${p}.errors`;o.assign(Rt.default.vErrors,(0,Ce._)`${Rt.default.vErrors} === null ? ${f} : ${Rt.default.vErrors}.concat(${f})`),o.assign(Rt.default.errors,(0,Ce._)`${Rt.default.vErrors}.length`)}function m(p){var f;if(!s.opts.unevaluated)return;let h=(f=r?.validate)===null||f===void 0?void 0:f.evaluated;if(s.props!==!0)if(h&&!h.dynamicProps)h.props!==void 0&&(s.props=en.mergeEvaluated.props(o,h.props,s.props));else{let y=o.var("props",(0,Ce._)`${p}.evaluated.props`);s.props=en.mergeEvaluated.props(o,y,s.props,Ce.Name)}if(s.items!==!0)if(h&&!h.dynamicItems)h.items!==void 0&&(s.items=en.mergeEvaluated.items(o,h.items,s.items));else{let y=o.var("items",(0,Ce._)`${p}.evaluated.items`);s.items=en.mergeEvaluated.items(o,y,s.items,Ce.Name)}}}lt.callRef=tn;lt.default=Jp});var sc=v(Wo=>{"use strict";Object.defineProperty(Wo,"__esModule",{value:!0});var Qp=tc(),Yp=rn(),Xp=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",Qp.default,Yp.default];Wo.default=Xp});var ic=v(Jo=>{"use strict";Object.defineProperty(Jo,"__esModule",{value:!0});var nn=x(),Qe=nn.operators,on={maximum:{okStr:"<=",ok:Qe.LTE,fail:Qe.GT},minimum:{okStr:">=",ok:Qe.GTE,fail:Qe.LT},exclusiveMaximum:{okStr:"<",ok:Qe.LT,fail:Qe.GTE},exclusiveMinimum:{okStr:">",ok:Qe.GT,fail:Qe.LTE}},Zp={message:({keyword:e,schemaCode:t})=>(0,nn.str)`must be ${on[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,nn._)`{comparison: ${on[e].okStr}, limit: ${t}}`},em={keyword:Object.keys(on),type:"number",schemaType:"number",$data:!0,error:Zp,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0,nn._)`${r} ${on[t].fail} ${n} || isNaN(${r})`)}};Jo.default=em});var ac=v(Qo=>{"use strict";Object.defineProperty(Qo,"__esModule",{value:!0});var ir=x(),tm={message:({schemaCode:e})=>(0,ir.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,ir._)`{multipleOf: ${e}}`},rm={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:tm,code(e){let{gen:t,data:r,schemaCode:n,it:o}=e,s=o.opts.multipleOfPrecision,i=t.let("res"),a=s?(0,ir._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,ir._)`${i} !== parseInt(${i})`;e.fail$data((0,ir._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};Qo.default=rm});var lc=v(Yo=>{"use strict";Object.defineProperty(Yo,"__esModule",{value:!0});function cc(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}Yo.default=cc;cc.code='require("ajv/dist/runtime/ucs2length").default'});var uc=v(Xo=>{"use strict";Object.defineProperty(Xo,"__esModule",{value:!0});var ut=x(),nm=D(),om=lc(),sm={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return(0,ut.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,ut._)`{limit: ${e}}`},im={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:sm,code(e){let{keyword:t,data:r,schemaCode:n,it:o}=e,s=t==="maxLength"?ut.operators.GT:ut.operators.LT,i=o.opts.unicode===!1?(0,ut._)`${r}.length`:(0,ut._)`${(0,nm.useFunc)(e.gen,om.default)}(${r})`;e.fail$data((0,ut._)`${i} ${s} ${n}`)}};Xo.default=im});var dc=v(Zo=>{"use strict";Object.defineProperty(Zo,"__esModule",{value:!0});var am=Re(),cm=D(),$t=x(),lm={message:({schemaCode:e})=>(0,$t.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,$t._)`{pattern: ${e}}`},um={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:lm,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:c}=i.opts.code,l=c.code==="new RegExp"?(0,$t._)`new RegExp`:(0,cm.useFunc)(t,c),u=t.let("valid");t.try(()=>t.assign(u,(0,$t._)`${l}(${s}, ${a}).test(${r})`),()=>t.assign(u,!1)),e.fail$data((0,$t._)`!${u}`)}else{let c=(0,am.usePattern)(e,o);e.fail$data((0,$t._)`!${c}.test(${r})`)}}};Zo.default=um});var fc=v(es=>{"use strict";Object.defineProperty(es,"__esModule",{value:!0});var ar=x(),dm={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,ar.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,ar._)`{limit: ${e}}`},fm={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:dm,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxProperties"?ar.operators.GT:ar.operators.LT;e.fail$data((0,ar._)`Object.keys(${r}).length ${o} ${n}`)}};es.default=fm});var pc=v(ts=>{"use strict";Object.defineProperty(ts,"__esModule",{value:!0});var cr=Re(),lr=x(),pm=D(),mm={message:({params:{missingProperty:e}})=>(0,lr.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,lr._)`{missingProperty: ${e}}`},hm={keyword:"required",type:"object",schemaType:"array",$data:!0,error:mm,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 c=r.length>=a.loopRequired;if(i.allErrors?l():u(),a.strictRequired){let m=e.parentSchema.properties,{definedProperties:p}=e.it;for(let f of r)if(m?.[f]===void 0&&!p.has(f)){let h=i.schemaEnv.baseId+i.errSchemaPath,y=`required property "${f}" is not defined at "${h}" (strictRequired)`;(0,pm.checkStrictMode)(i,y,i.opts.strictRequired)}}function l(){if(c||s)e.block$data(lr.nil,d);else for(let m of r)(0,cr.checkReportMissingProp)(e,m)}function u(){let m=t.let("missing");if(c||s){let p=t.let("valid",!0);e.block$data(p,()=>g(m,p)),e.ok(p)}else t.if((0,cr.checkMissingProp)(e,r,m)),(0,cr.reportMissingProp)(e,m),t.else()}function d(){t.forOf("prop",n,m=>{e.setParams({missingProperty:m}),t.if((0,cr.noPropertyInData)(t,o,m,a.ownProperties),()=>e.error())})}function g(m,p){e.setParams({missingProperty:m}),t.forOf(m,n,()=>{t.assign(p,(0,cr.propertyInData)(t,o,m,a.ownProperties)),t.if((0,lr.not)(p),()=>{e.error(),t.break()})},lr.nil)}}};ts.default=hm});var mc=v(rs=>{"use strict";Object.defineProperty(rs,"__esModule",{value:!0});var ur=x(),gm={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,ur.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,ur._)`{limit: ${e}}`},ym={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:gm,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxItems"?ur.operators.GT:ur.operators.LT;e.fail$data((0,ur._)`${r}.length ${o} ${n}`)}};rs.default=ym});var sn=v(ns=>{"use strict";Object.defineProperty(ns,"__esModule",{value:!0});var hc=Ro();hc.code='require("ajv/dist/runtime/equal").default';ns.default=hc});var gc=v(ss=>{"use strict";Object.defineProperty(ss,"__esModule",{value:!0});var os=Jt(),de=x(),_m=D(),Tm=sn(),vm={message:({params:{i:e,j:t}})=>(0,de.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,de._)`{i: ${e}, j: ${t}}`},Cm={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:vm,code(e){let{gen:t,data:r,$data:n,schema:o,parentSchema:s,schemaCode:i,it:a}=e;if(!n&&!o)return;let c=t.let("valid"),l=s.items?(0,os.getSchemaTypes)(s.items):[];e.block$data(c,u,(0,de._)`${i} === false`),e.ok(c);function u(){let p=t.let("i",(0,de._)`${r}.length`),f=t.let("j");e.setParams({i:p,j:f}),t.assign(c,!0),t.if((0,de._)`${p} > 1`,()=>(d()?g:m)(p,f))}function d(){return l.length>0&&!l.some(p=>p==="object"||p==="array")}function g(p,f){let h=t.name("item"),y=(0,os.checkDataTypes)(l,h,a.opts.strictNumbers,os.DataType.Wrong),E=t.const("indices",(0,de._)`{}`);t.for((0,de._)`;${p}--;`,()=>{t.let(h,(0,de._)`${r}[${p}]`),t.if(y,(0,de._)`continue`),l.length>1&&t.if((0,de._)`typeof ${h} == "string"`,(0,de._)`${h} += "_"`),t.if((0,de._)`typeof ${E}[${h}] == "number"`,()=>{t.assign(f,(0,de._)`${E}[${h}]`),e.error(),t.assign(c,!1).break()}).code((0,de._)`${E}[${h}] = ${p}`)})}function m(p,f){let h=(0,_m.useFunc)(t,Tm.default),y=t.name("outer");t.label(y).for((0,de._)`;${p}--;`,()=>t.for((0,de._)`${f} = ${p}; ${f}--;`,()=>t.if((0,de._)`${h}(${r}[${p}], ${r}[${f}])`,()=>{e.error(),t.assign(c,!1).break(y)})))}}};ss.default=Cm});var yc=v(as=>{"use strict";Object.defineProperty(as,"__esModule",{value:!0});var is=x(),Em=D(),bm=sn(),wm={message:"must be equal to constant",params:({schemaCode:e})=>(0,is._)`{allowedValue: ${e}}`},km={keyword:"const",$data:!0,error:wm,code(e){let{gen:t,data:r,$data:n,schemaCode:o,schema:s}=e;n||s&&typeof s=="object"?e.fail$data((0,is._)`!${(0,Em.useFunc)(t,bm.default)}(${r}, ${o})`):e.fail((0,is._)`${s} !== ${r}`)}};as.default=km});var _c=v(cs=>{"use strict";Object.defineProperty(cs,"__esModule",{value:!0});var dr=x(),Rm=D(),$m=sn(),Sm={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,dr._)`{allowedValues: ${e}}`},Om={keyword:"enum",schemaType:"array",$data:!0,error:Sm,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,c,l=()=>c??(c=(0,Rm.useFunc)(t,$m.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 m=t.const("vSchema",s);u=(0,dr.or)(...o.map((p,f)=>g(m,f)))}e.pass(u);function d(){t.assign(u,!1),t.forOf("v",s,m=>t.if((0,dr._)`${l()}(${r}, ${m})`,()=>t.assign(u,!0).break()))}function g(m,p){let f=o[p];return typeof f=="object"&&f!==null?(0,dr._)`${l()}(${r}, ${m}[${p}])`:(0,dr._)`${r} === ${f}`}}};cs.default=Om});var Tc=v(ls=>{"use strict";Object.defineProperty(ls,"__esModule",{value:!0});var Am=ic(),Im=ac(),Pm=uc(),xm=dc(),Mm=fc(),Nm=pc(),Lm=mc(),jm=gc(),Dm=yc(),qm=_c(),Um=[Am.default,Im.default,Pm.default,xm.default,Mm.default,Nm.default,Lm.default,jm.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},Dm.default,qm.default];ls.default=Um});var ds=v(fr=>{"use strict";Object.defineProperty(fr,"__esModule",{value:!0});fr.validateAdditionalItems=void 0;var dt=x(),us=D(),Bm={message:({params:{len:e}})=>(0,dt.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,dt._)`{limit: ${e}}`},Vm={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:Bm,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0,us.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}vc(e,n)}};function vc(e,t){let{gen:r,schema:n,data:o,keyword:s,it:i}=e;i.items=!0;let a=r.const("len",(0,dt._)`${o}.length`);if(n===!1)e.setParams({len:t.length}),e.pass((0,dt._)`${a} <= ${t.length}`);else if(typeof n=="object"&&!(0,us.alwaysValidSchema)(i,n)){let l=r.var("valid",(0,dt._)`${a} <= ${t.length}`);r.if((0,dt.not)(l),()=>c(l)),e.ok(l)}function c(l){r.forRange("i",t.length,a,u=>{e.subschema({keyword:s,dataProp:u,dataPropType:us.Type.Num},l),i.allErrors||r.if((0,dt.not)(l),()=>r.break())})}}fr.validateAdditionalItems=vc;fr.default=Vm});var fs=v(pr=>{"use strict";Object.defineProperty(pr,"__esModule",{value:!0});pr.validateTuple=void 0;var Cc=x(),an=D(),zm=Re(),Fm={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return Ec(e,"additionalItems",t);r.items=!0,!(0,an.alwaysValidSchema)(r,t)&&e.ok((0,zm.validateArray)(e))}};function Ec(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=an.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),l=n.const("len",(0,Cc._)`${s}.length`);r.forEach((d,g)=>{(0,an.alwaysValidSchema)(a,d)||(n.if((0,Cc._)`${l} > ${g}`,()=>e.subschema({keyword:i,schemaProp:g,dataProp:g},c)),e.ok(c))});function u(d){let{opts:g,errSchemaPath:m}=a,p=r.length,f=p===d.minItems&&(p===d.maxItems||d[t]===!1);if(g.strictTuples&&!f){let h=`"${i}" is ${p}-tuple, but minItems or maxItems/${t} are not specified or different at path "${m}"`;(0,an.checkStrictMode)(a,h,g.strictTuples)}}}pr.validateTuple=Ec;pr.default=Fm});var bc=v(ps=>{"use strict";Object.defineProperty(ps,"__esModule",{value:!0});var Gm=fs(),Km={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,Gm.validateTuple)(e,"items")};ps.default=Km});var kc=v(ms=>{"use strict";Object.defineProperty(ms,"__esModule",{value:!0});var wc=x(),Hm=D(),Wm=Re(),Jm=ds(),Qm={message:({params:{len:e}})=>(0,wc.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,wc._)`{limit: ${e}}`},Ym={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:Qm,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:o}=r;n.items=!0,!(0,Hm.alwaysValidSchema)(n,t)&&(o?(0,Jm.validateAdditionalItems)(e,o):e.ok((0,Wm.validateArray)(e)))}};ms.default=Ym});var Rc=v(hs=>{"use strict";Object.defineProperty(hs,"__esModule",{value:!0});var Se=x(),cn=D(),Xm={message:({params:{min:e,max:t}})=>t===void 0?(0,Se.str)`must contain at least ${e} valid item(s)`:(0,Se.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,Se._)`{minContains: ${e}}`:(0,Se._)`{minContains: ${e}, maxContains: ${t}}`},Zm={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:Xm,code(e){let{gen:t,schema:r,parentSchema:n,data:o,it:s}=e,i,a,{minContains:c,maxContains:l}=n;s.opts.next?(i=c===void 0?1:c,a=l):i=1;let u=t.const("len",(0,Se._)`${o}.length`);if(e.setParams({min:i,max:a}),a===void 0&&i===0){(0,cn.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,cn.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,cn.alwaysValidSchema)(s,r)){let f=(0,Se._)`${u} >= ${i}`;a!==void 0&&(f=(0,Se._)`${f} && ${u} <= ${a}`),e.pass(f);return}s.items=!0;let d=t.name("valid");a===void 0&&i===1?m(d,()=>t.if(d,()=>t.break())):i===0?(t.let(d,!0),a!==void 0&&t.if((0,Se._)`${o}.length > 0`,g)):(t.let(d,!1),g()),e.result(d,()=>e.reset());function g(){let f=t.name("_valid"),h=t.let("count",0);m(f,()=>t.if(f,()=>p(h)))}function m(f,h){t.forRange("i",0,u,y=>{e.subschema({keyword:"contains",dataProp:y,dataPropType:cn.Type.Num,compositeRule:!0},f),h()})}function p(f){t.code((0,Se._)`${f}++`),a===void 0?t.if((0,Se._)`${f} >= ${i}`,()=>t.assign(d,!0).break()):(t.if((0,Se._)`${f} > ${a}`,()=>t.assign(d,!1).break()),i===1?t.assign(d,!0):t.if((0,Se._)`${f} >= ${i}`,()=>t.assign(d,!0)))}}};hs.default=Zm});var ln=v(je=>{"use strict";Object.defineProperty(je,"__esModule",{value:!0});je.validateSchemaDeps=je.validatePropertyDeps=je.error=void 0;var gs=x(),eh=D(),mr=Re();je.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return(0,gs.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0,gs._)`{property: ${e},
|
|
6
6
|
missingProperty: ${n},
|
|
7
7
|
depsCount: ${t},
|
|
8
|
-
deps: ${r}}`};var yh={keyword:"dependencies",type:"object",schemaType:"object",error:De.error,code(e){let[t,r]=_h(e);jc(e,t),qc(e,r)}};function _h({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 jc(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 c=(0,br.propertyInData)(r,n,i,o.opts.ownProperties);e.setParams({property:i,depsCount:a.length,deps:a.join(", ")}),o.allErrors?r.if(c,()=>{for(let l of a)(0,br.checkReportMissingProp)(e,l)}):(r.if((0,Cs._)`${c} && (${(0,br.checkMissingProp)(e,a,s)})`),(0,br.reportMissingProp)(e,s),r.else())}}De.validatePropertyDeps=jc;function qc(e,t=e.schema){let{gen:r,data:n,keyword:o,it:s}=e,i=r.name("valid");for(let a in t)(0,gh.alwaysValidSchema)(s,t[a])||(r.if((0,br.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let c=e.subschema({keyword:o,schemaProp:a},i);e.mergeValidEvaluated(c,i)},()=>r.var(i,!0)),e.ok(i))}De.validateSchemaDeps=qc;De.default=yh});var Uc=C(bs=>{"use strict";Object.defineProperty(bs,"__esModule",{value:!0});var Dc=x(),Th=D(),vh={message:"property name must be valid",params:({params:e})=>(0,Dc._)`{propertyName: ${e.propertyName}}`},Ch={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:vh,code(e){let{gen:t,schema:r,data:n,it:o}=e;if((0,Th.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,Dc.not)(s),()=>{e.error(!0),o.allErrors||t.break()})}),e.ok(s)}};bs.default=Ch});var Es=C(ws=>{"use strict";Object.defineProperty(ws,"__esModule",{value:!0});var yn=ke(),Pe=x(),bh=Ee(),_n=D(),wh={message:"must NOT have additional properties",params:({params:e})=>(0,Pe._)`{additionalProperty: ${e.additionalProperty}}`},Eh={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:wh,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:c}=i;if(i.props=!0,c.removeAdditional!=="all"&&(0,_n.alwaysValidSchema)(i,r))return;let l=(0,yn.allSchemaProperties)(n.properties),u=(0,yn.allSchemaProperties)(n.patternProperties);d(),e.ok((0,Pe._)`${s} === ${bh.default.errors}`);function d(){t.forIn("key",o,g=>{!l.length&&!u.length?f(g):t.if(m(g),()=>f(g))})}function m(g){let v;if(l.length>8){let b=(0,_n.schemaRefOrVal)(i,n.properties,"properties");v=(0,yn.isOwnProperty)(t,b,g)}else l.length?v=(0,Pe.or)(...l.map(b=>(0,Pe._)`${g} === ${b}`)):v=Pe.nil;return u.length&&(v=(0,Pe.or)(v,...u.map(b=>(0,Pe._)`${(0,yn.usePattern)(e,b)}.test(${g})`))),(0,Pe.not)(v)}function h(g){t.code((0,Pe._)`delete ${o}[${g}]`)}function f(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){h(g);return}if(r===!1){e.setParams({additionalProperty:g}),e.error(),a||t.break();return}if(typeof r=="object"&&!(0,_n.alwaysValidSchema)(i,r)){let v=t.name("valid");c.removeAdditional==="failing"?(p(g,v,!1),t.if((0,Pe.not)(v),()=>{e.reset(),h(g)})):(p(g,v),a||t.if((0,Pe.not)(v),()=>t.break()))}}function p(g,v,b){let w={keyword:"additionalProperties",dataProp:g,dataPropType:_n.Type.Str};b===!1&&Object.assign(w,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(w,v)}}};ws.default=Eh});var Vc=C(Rs=>{"use strict";Object.defineProperty(Rs,"__esModule",{value:!0});var kh=ar(),Fc=ke(),ks=D(),Bc=Es(),Rh={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&&Bc.default.code(new kh.KeywordCxt(s,Bc.default,"additionalProperties"));let i=(0,Fc.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=ks.mergeEvaluated.props(t,(0,ks.toHash)(i),s.props));let a=i.filter(d=>!(0,ks.alwaysValidSchema)(s,r[d]));if(a.length===0)return;let c=t.name("valid");for(let d of a)l(d)?u(d):(t.if((0,Fc.propertyInData)(t,o,d,s.opts.ownProperties)),u(d),s.allErrors||t.else().var(c,!0),t.endIf()),e.it.definedProperties.add(d),e.ok(c);function l(d){return s.opts.useDefaults&&!s.compositeRule&&r[d].default!==void 0}function u(d){e.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};Rs.default=Rh});var Hc=C($s=>{"use strict";Object.defineProperty($s,"__esModule",{value:!0});var zc=ke(),Tn=x(),Gc=D(),Kc=D(),$h={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,zc.allSchemaProperties)(r),c=a.filter(p=>(0,Gc.alwaysValidSchema)(s,r[p]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let l=i.strictSchema&&!i.allowMatchingProperties&&o.properties,u=t.name("valid");s.props!==!0&&!(s.props instanceof Tn.Name)&&(s.props=(0,Kc.evaluatedPropsToName)(t,s.props));let{props:d}=s;m();function m(){for(let p of a)l&&h(p),s.allErrors?f(p):(t.var(u,!0),f(p),t.if(u))}function h(p){for(let g in l)new RegExp(p).test(g)&&(0,Gc.checkStrictMode)(s,`property ${g} matches pattern ${p} (use allowMatchingProperties)`)}function f(p){t.forIn("key",n,g=>{t.if((0,Tn._)`${(0,zc.usePattern)(e,p)}.test(${g})`,()=>{let v=c.includes(p);v||e.subschema({keyword:"patternProperties",schemaProp:p,dataProp:g,dataPropType:Kc.Type.Str},u),s.opts.unevaluated&&d!==!0?t.assign((0,Tn._)`${d}[${g}]`,!0):!v&&!s.allErrors&&t.if((0,Tn.not)(u),()=>t.break())})})}}};$s.default=$h});var Wc=C(As=>{"use strict";Object.defineProperty(As,"__esModule",{value:!0});var Ah=D(),Sh={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if((0,Ah.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"}};As.default=Sh});var Jc=C(Ss=>{"use strict";Object.defineProperty(Ss,"__esModule",{value:!0});var Oh=ke(),Ih={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:Oh.validateUnion,error:{message:"must match a schema in anyOf"}};Ss.default=Ih});var Qc=C(Os=>{"use strict";Object.defineProperty(Os,"__esModule",{value:!0});var vn=x(),xh=D(),Ph={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,vn._)`{passingSchemas: ${e.passing}}`},Mh={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:Ph,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),c=t.name("_valid");e.setParams({passing:a}),t.block(l),e.result(i,()=>e.reset(),()=>e.error(!0));function l(){s.forEach((u,d)=>{let m;(0,xh.alwaysValidSchema)(o,u)?t.var(c,!0):m=e.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&t.if((0,vn._)`${c} && ${i}`).assign(i,!1).assign(a,(0,vn._)`[${a}, ${d}]`).else(),t.if(c,()=>{t.assign(i,!0),t.assign(a,d),m&&e.mergeEvaluated(m,vn.Name)})})}}};Os.default=Mh});var Yc=C(Is=>{"use strict";Object.defineProperty(Is,"__esModule",{value:!0});var Nh=D(),Lh={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,Nh.alwaysValidSchema)(n,s))return;let a=e.subschema({keyword:"allOf",schemaProp:i},o);e.ok(o),e.mergeEvaluated(a)})}};Is.default=Lh});var el=C(xs=>{"use strict";Object.defineProperty(xs,"__esModule",{value:!0});var Cn=x(),Zc=D(),jh={message:({params:e})=>(0,Cn.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,Cn._)`{failingKeyword: ${e.ifClause}}`},qh={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:jh,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0,Zc.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=Xc(n,"then"),s=Xc(n,"else");if(!o&&!s)return;let i=t.let("valid",!0),a=t.name("_valid");if(c(),e.reset(),o&&s){let u=t.let("ifClause");e.setParams({ifClause:u}),t.if(a,l("then",u),l("else",u))}else o?t.if(a,l("then")):t.if((0,Cn.not)(a),l("else"));e.pass(i,()=>e.error(!0));function c(){let u=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);e.mergeEvaluated(u)}function l(u,d){return()=>{let m=e.subschema({keyword:u},a);t.assign(i,a),e.mergeValidEvaluated(m,i),d?t.assign(d,(0,Cn._)`${u}`):e.setParams({ifClause:u})}}}};function Xc(e,t){let r=e.schema[t];return r!==void 0&&!(0,Zc.alwaysValidSchema)(e,r)}xs.default=qh});var tl=C(Ps=>{"use strict";Object.defineProperty(Ps,"__esModule",{value:!0});var Dh=D(),Uh={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,Dh.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};Ps.default=Uh});var rl=C(Ms=>{"use strict";Object.defineProperty(Ms,"__esModule",{value:!0});var Fh=gs(),Bh=Pc(),Vh=ys(),zh=Nc(),Gh=Lc(),Kh=gn(),Hh=Uc(),Wh=Es(),Jh=Vc(),Qh=Hc(),Yh=Wc(),Xh=Jc(),Zh=Qc(),eg=Yc(),tg=el(),rg=tl();function ng(e=!1){let t=[Yh.default,Xh.default,Zh.default,eg.default,tg.default,rg.default,Hh.default,Wh.default,Kh.default,Jh.default,Qh.default];return e?t.push(Bh.default,zh.default):t.push(Fh.default,Vh.default),t.push(Gh.default),t}Ms.default=ng});var Ls=C(wr=>{"use strict";Object.defineProperty(wr,"__esModule",{value:!0});wr.dynamicAnchor=void 0;var Ns=x(),og=Ee(),nl=lr(),sg=un(),ig={keyword:"$dynamicAnchor",schemaType:"string",code:e=>ol(e,e.schema)};function ol(e,t){let{gen:r,it:n}=e;n.schemaEnv.root.dynamicAnchors[t]=!0;let o=(0,Ns._)`${og.default.dynamicAnchors}${(0,Ns.getProperty)(t)}`,s=n.errSchemaPath==="#"?n.validateName:ag(e);r.if((0,Ns._)`!${o}`,()=>r.assign(o,s))}wr.dynamicAnchor=ol;function ag(e){let{schemaEnv:t,schema:r,self:n}=e.it,{root:o,baseId:s,localRefs:i,meta:a}=t.root,{schemaId:c}=n.opts,l=new nl.SchemaEnv({schema:r,schemaId:c,root:o,baseId:s,localRefs:i,meta:a});return nl.compileSchema.call(n,l),(0,sg.getValidate)(e,l)}wr.default=ig});var js=C(Er=>{"use strict";Object.defineProperty(Er,"__esModule",{value:!0});Er.dynamicRef=void 0;var sl=x(),cg=Ee(),il=un(),lg={keyword:"$dynamicRef",schemaType:"string",code:e=>al(e,e.schema)};function al(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 c=r.let("valid",!1);i(c),e.ok(c)}function i(c){if(o.schemaEnv.root.dynamicAnchors[s]){let l=r.let("_v",(0,sl._)`${cg.default.dynamicAnchors}${(0,sl.getProperty)(s)}`);r.if(l,a(l,c),a(o.validateName,c))}else a(o.validateName,c)()}function a(c,l){return l?()=>r.block(()=>{(0,il.callRef)(e,c),r.let(l,!0)}):()=>(0,il.callRef)(e,c)}}Er.dynamicRef=al;Er.default=lg});var cl=C(qs=>{"use strict";Object.defineProperty(qs,"__esModule",{value:!0});var ug=Ls(),dg=D(),fg={keyword:"$recursiveAnchor",schemaType:"boolean",code(e){e.schema?(0,ug.dynamicAnchor)(e,""):(0,dg.checkStrictMode)(e.it,"$recursiveAnchor: false is ignored")}};qs.default=fg});var ll=C(Ds=>{"use strict";Object.defineProperty(Ds,"__esModule",{value:!0});var pg=js(),mg={keyword:"$recursiveRef",schemaType:"string",code:e=>(0,pg.dynamicRef)(e,e.schema)};Ds.default=mg});var ul=C(Us=>{"use strict";Object.defineProperty(Us,"__esModule",{value:!0});var hg=Ls(),gg=js(),yg=cl(),_g=ll(),Tg=[hg.default,gg.default,yg.default,_g.default];Us.default=Tg});var fl=C(Fs=>{"use strict";Object.defineProperty(Fs,"__esModule",{value:!0});var dl=gn(),vg={keyword:"dependentRequired",type:"object",schemaType:"object",error:dl.error,code:e=>(0,dl.validatePropertyDeps)(e)};Fs.default=vg});var pl=C(Bs=>{"use strict";Object.defineProperty(Bs,"__esModule",{value:!0});var Cg=gn(),bg={keyword:"dependentSchemas",type:"object",schemaType:"object",code:e=>(0,Cg.validateSchemaDeps)(e)};Bs.default=bg});var ml=C(Vs=>{"use strict";Object.defineProperty(Vs,"__esModule",{value:!0});var wg=D(),Eg={keyword:["maxContains","minContains"],type:"array",schemaType:"number",code({keyword:e,parentSchema:t,it:r}){t.contains===void 0&&(0,wg.checkStrictMode)(r,`"${e}" without "contains" is ignored`)}};Vs.default=Eg});var hl=C(zs=>{"use strict";Object.defineProperty(zs,"__esModule",{value:!0});var kg=fl(),Rg=pl(),$g=ml(),Ag=[kg.default,Rg.default,$g.default];zs.default=Ag});var yl=C(Gs=>{"use strict";Object.defineProperty(Gs,"__esModule",{value:!0});var et=x(),gl=D(),Sg=Ee(),Og={message:"must NOT have unevaluated properties",params:({params:e})=>(0,et._)`{unevaluatedProperty: ${e.unevaluatedProperty}}`},Ig={keyword:"unevaluatedProperties",type:"object",schemaType:["boolean","object"],trackErrors:!0,error:Og,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 et.Name?t.if((0,et._)`${a} !== true`,()=>t.forIn("key",n,d=>t.if(l(a,d),()=>c(d)))):a!==!0&&t.forIn("key",n,d=>a===void 0?c(d):t.if(u(a,d),()=>c(d))),s.props=!0,e.ok((0,et._)`${o} === ${Sg.default.errors}`);function c(d){if(r===!1){e.setParams({unevaluatedProperty:d}),e.error(),i||t.break();return}if(!(0,gl.alwaysValidSchema)(s,r)){let m=t.name("valid");e.subschema({keyword:"unevaluatedProperties",dataProp:d,dataPropType:gl.Type.Str},m),i||t.if((0,et.not)(m),()=>t.break())}}function l(d,m){return(0,et._)`!${d} || !${d}[${m}]`}function u(d,m){let h=[];for(let f in d)d[f]===!0&&h.push((0,et._)`${m} !== ${f}`);return(0,et.and)(...h)}}};Gs.default=Ig});var Tl=C(Ks=>{"use strict";Object.defineProperty(Ks,"__esModule",{value:!0});var ht=x(),_l=D(),xg={message:({params:{len:e}})=>(0,ht.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,ht._)`{limit: ${e}}`},Pg={keyword:"unevaluatedItems",type:"array",schemaType:["boolean","object"],error:xg,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,ht._)`${n}.length`);if(r===!1)e.setParams({len:s}),e.fail((0,ht._)`${i} > ${s}`);else if(typeof r=="object"&&!(0,_l.alwaysValidSchema)(o,r)){let c=t.var("valid",(0,ht._)`${i} <= ${s}`);t.if((0,ht.not)(c),()=>a(c,s)),e.ok(c)}o.items=!0;function a(c,l){t.forRange("i",l,i,u=>{e.subschema({keyword:"unevaluatedItems",dataProp:u,dataPropType:_l.Type.Num},c),o.allErrors||t.if((0,ht.not)(c),()=>t.break())})}}};Ks.default=Pg});var vl=C(Hs=>{"use strict";Object.defineProperty(Hs,"__esModule",{value:!0});var Mg=yl(),Ng=Tl(),Lg=[Mg.default,Ng.default];Hs.default=Lg});var Cl=C(Ws=>{"use strict";Object.defineProperty(Ws,"__esModule",{value:!0});var te=x(),jg={message:({schemaCode:e})=>(0,te.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,te._)`{format: ${e}}`},qg={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:jg,code(e,t){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=e,{opts:c,errSchemaPath:l,schemaEnv:u,self:d}=a;if(!c.validateFormats)return;o?m():h();function m(){let f=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),p=r.const("fDef",(0,te._)`${f}[${i}]`),g=r.let("fType"),v=r.let("format");r.if((0,te._)`typeof ${p} == "object" && !(${p} instanceof RegExp)`,()=>r.assign(g,(0,te._)`${p}.type || "string"`).assign(v,(0,te._)`${p}.validate`),()=>r.assign(g,(0,te._)`"string"`).assign(v,p)),e.fail$data((0,te.or)(b(),w()));function b(){return c.strictSchema===!1?te.nil:(0,te._)`${i} && !${v}`}function w(){let O=u.$async?(0,te._)`(${p}.async ? await ${v}(${n}) : ${v}(${n}))`:(0,te._)`${v}(${n})`,E=(0,te._)`(typeof ${v} == "function" ? ${O} : ${v}.test(${n}))`;return(0,te._)`${v} && ${v} !== true && ${g} === ${t} && !${E}`}}function h(){let f=d.formats[s];if(!f){b();return}if(f===!0)return;let[p,g,v]=w(f);p===t&&e.pass(O());function b(){if(c.strictSchema===!1){d.logger.warn(E());return}throw new Error(E());function E(){return`unknown format "${s}" ignored in schema at path "${l}"`}}function w(E){let Y=E instanceof RegExp?(0,te.regexpCode)(E):c.code.formats?(0,te._)`${c.code.formats}${(0,te.getProperty)(s)}`:void 0,U=r.scopeValue("formats",{key:s,ref:E,code:Y});return typeof E=="object"&&!(E instanceof RegExp)?[E.type||"string",E.validate,(0,te._)`${U}.validate`]:["string",E,U]}function O(){if(typeof f=="object"&&!(f instanceof RegExp)&&f.async){if(!u.$async)throw new Error("async format in sync schema");return(0,te._)`await ${v}(${n})`}return typeof g=="function"?(0,te._)`${v}(${n})`:(0,te._)`${v}.test(${n})`}}}};Ws.default=qg});var bl=C(Js=>{"use strict";Object.defineProperty(Js,"__esModule",{value:!0});var Dg=Cl(),Ug=[Dg.default];Js.default=Ug});var wl=C(Nt=>{"use strict";Object.defineProperty(Nt,"__esModule",{value:!0});Nt.contentVocabulary=Nt.metadataVocabulary=void 0;Nt.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Nt.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var kl=C(Qs=>{"use strict";Object.defineProperty(Qs,"__esModule",{value:!0});var Fg=hc(),Bg=Sc(),Vg=rl(),zg=ul(),Gg=hl(),Kg=vl(),Hg=bl(),El=wl(),Wg=[zg.default,Fg.default,Bg.default,(0,Vg.default)(!0),Hg.default,El.metadataVocabulary,El.contentVocabulary,Gg.default,Kg.default];Qs.default=Wg});var $l=C(bn=>{"use strict";Object.defineProperty(bn,"__esModule",{value:!0});bn.DiscrError=void 0;var Rl;(function(e){e.Tag="tag",e.Mapping="mapping"})(Rl||(bn.DiscrError=Rl={}))});var Sl=C(Xs=>{"use strict";Object.defineProperty(Xs,"__esModule",{value:!0});var Lt=x(),Ys=$l(),Al=lr(),Jg=cr(),Qg=D(),Yg={message:({params:{discrError:e,tagName:t}})=>e===Ys.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,Lt._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},Xg={keyword:"discriminator",type:"object",schemaType:"object",error:Yg,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 c=t.let("valid",!1),l=t.const("tag",(0,Lt._)`${r}${(0,Lt.getProperty)(a)}`);t.if((0,Lt._)`typeof ${l} == "string"`,()=>u(),()=>e.error(!1,{discrError:Ys.DiscrError.Tag,tag:l,tagName:a})),e.ok(c);function u(){let h=m();t.if(!1);for(let f in h)t.elseIf((0,Lt._)`${l} === ${f}`),t.assign(c,d(h[f]));t.else(),e.error(!1,{discrError:Ys.DiscrError.Mapping,tag:l,tagName:a}),t.endIf()}function d(h){let f=t.name("valid"),p=e.subschema({keyword:"oneOf",schemaProp:h},f);return e.mergeEvaluated(p,Lt.Name),f}function m(){var h;let f={},p=v(o),g=!0;for(let O=0;O<i.length;O++){let E=i[O];if(E?.$ref&&!(0,Qg.schemaHasRulesButRef)(E,s.self.RULES)){let U=E.$ref;if(E=Al.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,U),E instanceof Al.SchemaEnv&&(E=E.schema),E===void 0)throw new Jg.default(s.opts.uriResolver,s.baseId,U)}let Y=(h=E?.properties)===null||h===void 0?void 0:h[a];if(typeof Y!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(p||v(E)),b(Y,O)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return f;function v({required:O}){return Array.isArray(O)&&O.includes(a)}function b(O,E){if(O.const)w(O.const,E);else if(O.enum)for(let Y of O.enum)w(Y,E);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function w(O,E){if(typeof O!="string"||O in f)throw new Error(`discriminator: "${a}" values must be unique strings`);f[O]=E}}}};Xs.default=Xg});var Ol=C((mv,Zg)=>{Zg.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 Il=C((hv,ey)=>{ey.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 xl=C((gv,ty)=>{ty.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 Pl=C((yv,ry)=>{ry.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 Ml=C((_v,ny)=>{ny.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 Nl=C((Tv,oy)=>{oy.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 Ll=C((vv,sy)=>{sy.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 jl=C((Cv,iy)=>{iy.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 ql=C(Zs=>{"use strict";Object.defineProperty(Zs,"__esModule",{value:!0});var ay=Ol(),cy=Il(),ly=xl(),uy=Pl(),dy=Ml(),fy=Nl(),py=Ll(),my=jl(),hy=["/properties"];function gy(e){return[ay,cy,ly,uy,dy,t(this,fy),py,t(this,my)].forEach(r=>this.addMetaSchema(r,void 0,!1)),this;function t(r,n){return e?r.$dataMetaSchema(n,hy):n}}Zs.default=gy});var Dl=C((ee,ti)=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.MissingRefError=ee.ValidationError=ee.CodeGen=ee.Name=ee.nil=ee.stringify=ee.str=ee._=ee.KeywordCxt=ee.Ajv2020=void 0;var yy=uc(),_y=kl(),Ty=Sl(),vy=ql(),ei="https://json-schema.org/draft/2020-12/schema",jt=class extends yy.default{constructor(t={}){super({...t,dynamicRef:!0,next:!0,unevaluated:!0})}_addVocabularies(){super._addVocabularies(),_y.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(Ty.default)}_addDefaultMetaSchema(){super._addDefaultMetaSchema();let{$data:t,meta:r}=this.opts;r&&(vy.default.call(this,t),this.refs["http://json-schema.org/schema"]=ei)}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(ei)?ei:void 0)}};ee.Ajv2020=jt;ti.exports=ee=jt;ti.exports.Ajv2020=jt;Object.defineProperty(ee,"__esModule",{value:!0});ee.default=jt;var Cy=ar();Object.defineProperty(ee,"KeywordCxt",{enumerable:!0,get:function(){return Cy.KeywordCxt}});var qt=x();Object.defineProperty(ee,"_",{enumerable:!0,get:function(){return qt._}});Object.defineProperty(ee,"str",{enumerable:!0,get:function(){return qt.str}});Object.defineProperty(ee,"stringify",{enumerable:!0,get:function(){return qt.stringify}});Object.defineProperty(ee,"nil",{enumerable:!0,get:function(){return qt.nil}});Object.defineProperty(ee,"Name",{enumerable:!0,get:function(){return qt.Name}});Object.defineProperty(ee,"CodeGen",{enumerable:!0,get:function(){return qt.CodeGen}});var by=tn();Object.defineProperty(ee,"ValidationError",{enumerable:!0,get:function(){return by.default}});var wy=cr();Object.defineProperty(ee,"MissingRefError",{enumerable:!0,get:function(){return wy.default}})});function qn(e,t,r,n){return{role:"assistant",content:t||null,tool_calls:e,...r&&r.length>0?{thinkingBlocks:r}:{},...n?{reasoning_content:n}:{}}}function Kt(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 Au=new Set(["RETRYABLE_TRANSIENT","RETRYABLE_DEGRADED","TOOL_EXECUTION_FAILED"]);function Ur(e){return Au.has(e)}function Ct(e,t){return e===401||e===403?"NON_RETRYABLE_AUTH":e===402?"NON_RETRYABLE_QUOTA":e===429?"RETRYABLE_DEGRADED":e===408||typeof e=="number"&&e>=500?"RETRYABLE_TRANSIENT":typeof e=="number"&&e>=400?"NON_RETRYABLE_CONTENT":/invalid[_ ]api[_ ]key|unauthorized|forbidden/i.test(t??"")?"NON_RETRYABLE_AUTH":/insufficient[_ ]quota|payment required|insufficient credits/i.test(t??"")?"NON_RETRYABLE_QUOTA":/rate[_ ]limit|too many requests/i.test(t??"")?"RETRYABLE_DEGRADED":/context_length_exceeded|prompt_too_long|invalid request|model[_ ]not[_ ]found/i.test(t??"")?"NON_RETRYABLE_CONTENT":"RETRYABLE_TRANSIENT"}function Dn(e){let t=[...e.tools],r=e.toolChoice;if(!r||r==="auto")return{tools:t,normalizedToolChoice:r,warnings:[]};if(r==="none")return{tools:[],normalizedToolChoice:"none",warnings:[]};if(r==="required"){if(!t.length)throw Error("tool_choice=required but no tools were provided");return{tools:t,normalizedToolChoice:"required",warnings:[]}}if(typeof r=="object"&&!Array.isArray(r)&&r.type==="function"){let n=r.function,o=typeof n?.name=="string"?n.name.trim():"";if(!o)throw Error("tool_choice.function.name is required");let s=t.filter(i=>(i.function?.name??i.name)?.trim()===o);if(!s.length)throw Error("tool_choice requested unknown tool: "+o);return{tools:s,normalizedToolChoice:{type:"function",function:{name:o}},warnings:[]}}return{tools:t,normalizedToolChoice:r,warnings:[]}}var Su=["stop","aborted","timeout","cancelled","interrupted","error"],Ou=["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 Iu(e,t){let r=[...Array.isArray(e.contextAnchors)?e.contextAnchors:[],...Array.isArray(t.contextAnchors)?t.contextAnchors:[]];return{...e,...t,...r.length?{contextAnchors:[...new Map(r.map(n=>[JSON.stringify(n),n])).values()]}:{},content:[...Pi(e.content),...Pi(t.content)]}}function xu(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 Pu(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=xu(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 Mu(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 Nu(e){return new Set((e??Su).map(t=>t.trim().toLowerCase()))}function Lu(e,t){return e?Nu(t).has(e.trim().toLowerCase()):!1}function Un(e){if(!Array.isArray(e)||e.length===0)return[...e];let t=e.map(c=>{if(c.role==="assistant"&&Array.isArray(c.tool_calls)){let l=c.tool_calls.filter(u=>Mu(u));return{...c,...l.length>0?{tool_calls:l}:{tool_calls:void 0}}}return{...c}}),r=new Set;for(let c of t)if(!(c.role!=="assistant"||!Array.isArray(c.tool_calls)))for(let l of c.tool_calls)typeof l.id=="string"&&l.id&&r.add(l.id);let n=t.filter(c=>c.role!=="tool"?!0:!!(c.tool_call_id&&r.has(c.tool_call_id))),o=new Set;for(let c of n)c.role==="tool"&&typeof c.tool_call_id=="string"&&c.tool_call_id&&o.add(c.tool_call_id);let s=[];for(let c of n){if(c.role==="assistant"&&Array.isArray(c.tool_calls)&&c.tool_calls.length>0){let l=c.tool_calls.filter(u=>typeof u.id=="string"&&o.has(u.id));if(l.length===0){let{tool_calls:u,...d}=c;d.content!=null&&d.content!==""&&s.push(d);continue}if(l.length<c.tool_calls.length){s.push({...c,tool_calls:l});continue}}s.push(c)}let i=Pu(s),a=[];for(let c of i){let l=a.length>0?a[a.length-1]:void 0;if(c.role==="user"&&l?.role==="user"&&c.contextProjection!=="facts"&&l.contextProjection!=="facts"){a[a.length-1]=Iu(l,c);continue}a.push(c)}return a}function Fn(e,t){return Lu(t?.stopReason,t?.forcedStopReasons)?e.map(r=>{if(r.role!=="assistant")return{...r};let n={...r};for(let o of Ou)delete n[o];return n}):[...e]}function Bn(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 Vn(e,t){let r=Un(e),n=Fn(r,t);return Bn(n,t)}function ju(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 qu(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 Du(e){return{round:e.round??0,maxRounds:e.maxRounds,pendingToolCallIds:[...e.pendingToolCallIds??[]],completedToolCallIds:[...e.completedToolCallIds??[]],lastStopReason:e.lastStopReason,replayMessages:[...e.replayMessages??[]]}}function zn(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 Fr(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 Br(e){let t=[],r=Un(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=Fn(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=Bn(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:Du({maxRounds:e.maxRounds,round:e.round,lastStopReason:e.lastStopReason,replayMessages:o,pendingToolCallIds:ju(o),completedToolCallIds:qu(o)}),recoveryActions:t}}function Gn(e){return e===429||e===529}function Kn(e,t=500,r=32e3){let n=Math.min(t*Math.pow(2,e-1),r);return n+Math.floor(Math.random()*n*.25)}function Hn(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 Wn(e){return{promptTokens:0,hasAttemptedReactiveCompact:!1,currentMaxOutputTokens:e.maxOutputTokens,aborted:e.abortSignal?.aborted??!1}}function Jn(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 Qn(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 Yn(e,t){return e.aborted?!0:t.abortSignal?.aborted?(e.aborted=!0,!0):!1}function Xn(){return{attemptedThisTurn:!1}}function Ht(e){return!e.attemptedThisTurn}function bt(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 Zn(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 Mi(e){let t=e.indexOf("__");return t<=0||t+2>=e.length?e:e.slice(t+2)}function Ni(e){let t=e.indexOf("__");if(!(t<=0||t+2>=e.length))return e.slice(0,t)}var eo="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 se(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 ji(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 qi(e,t){let r=typeof t.message?.content=="string"?t.message.content:"",n=r?r.slice(0,2e3):void 0,o=t.details;return{type:"tool_result",turnId:e,callId:t.callId,name:t.toolName,ok:t.ok,error:t.error,outputPreview:n,durationMs:t.durationMs,details:o}}var Fl=$u(Dl(),1),Ey=new Fl.Ajv2020({allErrors:!0,allowUnionTypes:!0,strict:!1,validateFormats:!1}),Ul=new WeakMap;function ky(e){let t=Ul.get(e);if(t)return t;let r=Ey.compile(e);return Ul.set(e,r),r}function Ry(e){return e.instancePath?`arguments${e.instancePath}`:e.keyword==="required"&&typeof e.params.missingProperty=="string"?`arguments/${e.params.missingProperty}`:"arguments"}function $y(e){return(e??[]).slice(0,4).map(t=>`${Ry(t)} ${t.message??`violates ${t.keyword}`}`).join("; ")}function Bl(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=ky(t);return o(n)?{ok:!0}:{ok:!1,error:`Tool "${e}" arguments do not match the offered schema: ${$y(o.errors)}.`}}catch(o){return{ok:!1,error:`Tool "${e}" has an invalid offered JSON Schema: ${o instanceof Error?o.message:String(o)}.`}}}function wn(e,t){return typeof e=="number"&&Number.isFinite(e)&&e>=1?Math.round(e):0}function En(e){if(typeof e=="number"&&Number.isFinite(e)&&e>=1)return Math.round(e)}function Vl(e){return e.filter(t=>t.role!=="assistant"?!0:!(typeof t.content=="string"&&t.content.trim()===""))}function zl(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 ri(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 ni(e){return e==="length"||e==="max_tokens"}function oi(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 Gl(e){let t=e.headers;if(!t)return null;let r=t["retry-after"]??t["Retry-After"];if(!r)return null;let n=/^\d+(?:\.\d+)?$/.test(r.trim())?Number(r):NaN;if(Number.isFinite(n))return n*1e3;let o=Date.parse(r);return Number.isFinite(o)?Math.max(0,o-Date.now()):null}function Kl(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*Hl(e){let{messages:t,guardConfig:r,runtimePorts:n,hooks:o,hookCtx:s,currentModel:i,log:a,recovery:c,onAutocompact:l}=e,u;{let d=await n.enforceToolResultBudget(t);u=d.messages,d.newlyReplacedCount>0&&(a.info(`tool-result-budget: truncated ${d.newlyReplacedCount} oversized tool texts`),yield c("tool_result_budget",`${d.newlyReplacedCount} tool texts truncated; product receipts remain the source for complete results`))}if(r.contextWindowTokens>0){let d=r.contextWindowTokens*.75,m=n.compressMessages(u,{budget:d,model:i});m.droppedCount>0&&(u=m.messages,a.info(`autocompact: ${m.strategy}, dropped ${m.droppedCount}`),yield c("autocompact",`${m.strategy}: ${m.droppedCount} dropped`),yield{type:"lifecycle",turnId:s.turnId,kind:"context_compression",status:"completed",detail:`${m.strategy}: ${m.droppedCount} dropped`},l(),se(o,"context.after_compact",{...s,removedCount:m.droppedCount},a))}return u=Vl(u),u}async function*Wl(e,t){let{state:r,guardState:n,turnId:o,log:s,emitRecovery:i}=t,a=e instanceof Error?e.message:String(e),c=typeof e?.status=="number"?e.status:void 0,l=e;if(t.signal?.aborted)return yield{type:"error",turnId:o,error:"Turn aborted",code:"ABORTED",usage:r.totalUsage},{kind:"return"};if(!l||l.retryable!==!0||l.safeToRetry!==!0||l.automaticRetryAuthorized!==!0)return yield{type:"error",turnId:o,error:l?.outcome==="rejected"?"The model service rejected this request.":"The model request outcome must be reconciled before retry.",code:l?.outcome==="rejected"?"MODEL_REQUEST_REJECTED":"MODEL_RECONCILIATION_REQUIRED",usage:r.totalUsage},{kind:"return"};if(!c&&a&&(a.includes("ECONNRESET")||a.includes("EPIPE"))){let d=(r.consecutiveApiRetries??0)+1;return d>2?(s.info(`stale connection retry limit reached (${2}), aborting`),yield{type:"error",turnId:o,error:a,code:"RETRIES_EXHAUSTED",usage:r.totalUsage},{kind:"return"}):(s.info(`stale connection (${a.includes("ECONNRESET")?"ECONNRESET":"EPIPE"}): retrying`),yield i("stale_connection_retry",a.slice(0,80)),{kind:"continue",patch:{consecutiveApiRetries:d,transition:void 0}})}let u=Kl({status:c,message:a});if(u!==null)return u>=n.currentMaxOutputTokens?(yield{type:"error",turnId:o,error:"The rejected output limit cannot be reduced further.",code:"MODEL_REQUEST_REJECTED",usage:r.totalUsage},{kind:"return"}):++r.consecutiveApiRetries>2?(yield{type:"error",turnId:o,error:"Model recovery attempts exhausted.",code:"RETRIES_EXHAUSTED",usage:r.totalUsage},{kind:"return"}):(s.info(`max_tokens overflow: adjusting to ${u}`),n.currentMaxOutputTokens=u,{kind:"continue",patch:{transition:void 0}});if(Gn(c)){if(r.consecutive529Errors++,++r.consecutiveApiRetries>2)return s.info(`transient ${c} \xD7 ${r.consecutive529Errors}: hard limit reached, aborting`),yield{type:"error",turnId:o,error:`API unavailable after ${r.consecutive529Errors} consecutive ${c} errors`,code:"API_ERROR",usage:r.totalUsage},{kind:"return"};let m=Gl({status:c,message:a,headers:l.headers})??Kn(r.consecutive529Errors);return s.info(`transient ${c}: retry in ${m}ms`),yield i("retry",`${c} retry in ${m}ms`),await new Promise(h=>{let f=Date.now()+m,p,g=()=>{clearTimeout(p),t.signal?.removeEventListener("abort",g),h()},v=()=>{let b=f-Date.now();if(b<=0||t.signal?.aborted){g();return}p=setTimeout(v,Math.min(b,2147483647))};t.signal?.addEventListener("abort",g,{once:!0}),v()}),{kind:"continue",patch:{transition:void 0}}}return{kind:"streamError",streamError:{status:c,message:a}}}function Jl(e){return[...new Set(e.map(t=>t.function.name))].sort()}function Py(e){return e?.find(t=>t.source==="llmrouter.settlement")??e?.find(t=>t.source==="provider.reported")}function My(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 Ny(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==="invalid_arguments")return"invalid-arguments";if(r==="blocked_by_guard")return"blocked-by-policy";if(r==="semantic_quality_failed")return"semantic-quality-failed"}function Ql(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:null}function Ly(e,t){if(!e)return null;let r=Ql(e.function.parameters),n=Ql(r?.properties)??{},o=Array.isArray(r?.required)?r.required.filter(a=>typeof a=="string"&&a.trim().length>0):[],s=Uy(t);if(!s)return`Tool "${e.function.name}" arguments must be a JSON object.`;for(let a of o){let c=s[a];if(typeof c=="string"?c.trim().length===0:c==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)),c=Object.keys(s).filter(l=>!a.has(l));if(c.length>0){let l=[...a].map(u=>`\`${u}\``).join(", ")||"none";return`Tool "${e.function.name}" has unexpected field${c.length===1?"":"s"} ${c.map(u=>`\`${u}\``).join(", ")}. Remove ${c.length===1?"it":"them"}; the only allowed fields are ${l}. Use the canonical tool schema exactly and do not retry the rejected arguments unchanged.`}}let i=Bl(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 jy(e,t){let r=e?.meta?.identity;if(r?.schemaVersion===1&&r.wireName===t)return r;let n=e?.meta?.category,o=Mi(t),s=Ni(t),i=n==="mcp"?"mcp":"business",a="product";return{schemaVersion:1,wireName:t,logicalName:o,family:i,owner:a,...s?{serverId:s}:{},capabilityId:`${a}:${s??"business"}:${o}`}}function Yl(e){return{role:"user",content:`Product job result(s) became available while the main task continued.
|
|
8
|
+
deps: ${r}}`};var th={keyword:"dependencies",type:"object",schemaType:"object",error:je.error,code(e){let[t,r]=rh(e);$c(e,t),Sc(e,r)}};function rh({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 $c(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 c=(0,mr.propertyInData)(r,n,i,o.opts.ownProperties);e.setParams({property:i,depsCount:a.length,deps:a.join(", ")}),o.allErrors?r.if(c,()=>{for(let l of a)(0,mr.checkReportMissingProp)(e,l)}):(r.if((0,gs._)`${c} && (${(0,mr.checkMissingProp)(e,a,s)})`),(0,mr.reportMissingProp)(e,s),r.else())}}je.validatePropertyDeps=$c;function Sc(e,t=e.schema){let{gen:r,data:n,keyword:o,it:s}=e,i=r.name("valid");for(let a in t)(0,eh.alwaysValidSchema)(s,t[a])||(r.if((0,mr.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let c=e.subschema({keyword:o,schemaProp:a},i);e.mergeValidEvaluated(c,i)},()=>r.var(i,!0)),e.ok(i))}je.validateSchemaDeps=Sc;je.default=th});var Ac=v(ys=>{"use strict";Object.defineProperty(ys,"__esModule",{value:!0});var Oc=x(),nh=D(),oh={message:"property name must be valid",params:({params:e})=>(0,Oc._)`{propertyName: ${e.propertyName}}`},sh={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:oh,code(e){let{gen:t,schema:r,data:n,it:o}=e;if((0,nh.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,Oc.not)(s),()=>{e.error(!0),o.allErrors||t.break()})}),e.ok(s)}};ys.default=sh});var Ts=v(_s=>{"use strict";Object.defineProperty(_s,"__esModule",{value:!0});var un=Re(),xe=x(),ih=ke(),dn=D(),ah={message:"must NOT have additional properties",params:({params:e})=>(0,xe._)`{additionalProperty: ${e.additionalProperty}}`},ch={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:ah,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:c}=i;if(i.props=!0,c.removeAdditional!=="all"&&(0,dn.alwaysValidSchema)(i,r))return;let l=(0,un.allSchemaProperties)(n.properties),u=(0,un.allSchemaProperties)(n.patternProperties);d(),e.ok((0,xe._)`${s} === ${ih.default.errors}`);function d(){t.forIn("key",o,h=>{!l.length&&!u.length?p(h):t.if(g(h),()=>p(h))})}function g(h){let y;if(l.length>8){let E=(0,dn.schemaRefOrVal)(i,n.properties,"properties");y=(0,un.isOwnProperty)(t,E,h)}else l.length?y=(0,xe.or)(...l.map(E=>(0,xe._)`${h} === ${E}`)):y=xe.nil;return u.length&&(y=(0,xe.or)(y,...u.map(E=>(0,xe._)`${(0,un.usePattern)(e,E)}.test(${h})`))),(0,xe.not)(y)}function m(h){t.code((0,xe._)`delete ${o}[${h}]`)}function p(h){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){m(h);return}if(r===!1){e.setParams({additionalProperty:h}),e.error(),a||t.break();return}if(typeof r=="object"&&!(0,dn.alwaysValidSchema)(i,r)){let y=t.name("valid");c.removeAdditional==="failing"?(f(h,y,!1),t.if((0,xe.not)(y),()=>{e.reset(),m(h)})):(f(h,y),a||t.if((0,xe.not)(y),()=>t.break()))}}function f(h,y,E){let b={keyword:"additionalProperties",dataProp:h,dataPropType:dn.Type.Str};E===!1&&Object.assign(b,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(b,y)}}};_s.default=ch});var xc=v(Cs=>{"use strict";Object.defineProperty(Cs,"__esModule",{value:!0});var lh=Zt(),Ic=Re(),vs=D(),Pc=Ts(),uh={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&&Pc.default.code(new lh.KeywordCxt(s,Pc.default,"additionalProperties"));let i=(0,Ic.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=vs.mergeEvaluated.props(t,(0,vs.toHash)(i),s.props));let a=i.filter(d=>!(0,vs.alwaysValidSchema)(s,r[d]));if(a.length===0)return;let c=t.name("valid");for(let d of a)l(d)?u(d):(t.if((0,Ic.propertyInData)(t,o,d,s.opts.ownProperties)),u(d),s.allErrors||t.else().var(c,!0),t.endIf()),e.it.definedProperties.add(d),e.ok(c);function l(d){return s.opts.useDefaults&&!s.compositeRule&&r[d].default!==void 0}function u(d){e.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};Cs.default=uh});var jc=v(Es=>{"use strict";Object.defineProperty(Es,"__esModule",{value:!0});var Mc=Re(),fn=x(),Nc=D(),Lc=D(),dh={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,Mc.allSchemaProperties)(r),c=a.filter(f=>(0,Nc.alwaysValidSchema)(s,r[f]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let l=i.strictSchema&&!i.allowMatchingProperties&&o.properties,u=t.name("valid");s.props!==!0&&!(s.props instanceof fn.Name)&&(s.props=(0,Lc.evaluatedPropsToName)(t,s.props));let{props:d}=s;g();function g(){for(let f of a)l&&m(f),s.allErrors?p(f):(t.var(u,!0),p(f),t.if(u))}function m(f){for(let h in l)new RegExp(f).test(h)&&(0,Nc.checkStrictMode)(s,`property ${h} matches pattern ${f} (use allowMatchingProperties)`)}function p(f){t.forIn("key",n,h=>{t.if((0,fn._)`${(0,Mc.usePattern)(e,f)}.test(${h})`,()=>{let y=c.includes(f);y||e.subschema({keyword:"patternProperties",schemaProp:f,dataProp:h,dataPropType:Lc.Type.Str},u),s.opts.unevaluated&&d!==!0?t.assign((0,fn._)`${d}[${h}]`,!0):!y&&!s.allErrors&&t.if((0,fn.not)(u),()=>t.break())})})}}};Es.default=dh});var Dc=v(bs=>{"use strict";Object.defineProperty(bs,"__esModule",{value:!0});var fh=D(),ph={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if((0,fh.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=ph});var qc=v(ws=>{"use strict";Object.defineProperty(ws,"__esModule",{value:!0});var mh=Re(),hh={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:mh.validateUnion,error:{message:"must match a schema in anyOf"}};ws.default=hh});var Uc=v(ks=>{"use strict";Object.defineProperty(ks,"__esModule",{value:!0});var pn=x(),gh=D(),yh={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,pn._)`{passingSchemas: ${e.passing}}`},_h={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:yh,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),c=t.name("_valid");e.setParams({passing:a}),t.block(l),e.result(i,()=>e.reset(),()=>e.error(!0));function l(){s.forEach((u,d)=>{let g;(0,gh.alwaysValidSchema)(o,u)?t.var(c,!0):g=e.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&t.if((0,pn._)`${c} && ${i}`).assign(i,!1).assign(a,(0,pn._)`[${a}, ${d}]`).else(),t.if(c,()=>{t.assign(i,!0),t.assign(a,d),g&&e.mergeEvaluated(g,pn.Name)})})}}};ks.default=_h});var Bc=v(Rs=>{"use strict";Object.defineProperty(Rs,"__esModule",{value:!0});var Th=D(),vh={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,Th.alwaysValidSchema)(n,s))return;let a=e.subschema({keyword:"allOf",schemaProp:i},o);e.ok(o),e.mergeEvaluated(a)})}};Rs.default=vh});var Fc=v($s=>{"use strict";Object.defineProperty($s,"__esModule",{value:!0});var mn=x(),zc=D(),Ch={message:({params:e})=>(0,mn.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,mn._)`{failingKeyword: ${e.ifClause}}`},Eh={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:Ch,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0,zc.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=Vc(n,"then"),s=Vc(n,"else");if(!o&&!s)return;let i=t.let("valid",!0),a=t.name("_valid");if(c(),e.reset(),o&&s){let u=t.let("ifClause");e.setParams({ifClause:u}),t.if(a,l("then",u),l("else",u))}else o?t.if(a,l("then")):t.if((0,mn.not)(a),l("else"));e.pass(i,()=>e.error(!0));function c(){let u=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);e.mergeEvaluated(u)}function l(u,d){return()=>{let g=e.subschema({keyword:u},a);t.assign(i,a),e.mergeValidEvaluated(g,i),d?t.assign(d,(0,mn._)`${u}`):e.setParams({ifClause:u})}}}};function Vc(e,t){let r=e.schema[t];return r!==void 0&&!(0,zc.alwaysValidSchema)(e,r)}$s.default=Eh});var Gc=v(Ss=>{"use strict";Object.defineProperty(Ss,"__esModule",{value:!0});var bh=D(),wh={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,bh.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};Ss.default=wh});var Kc=v(Os=>{"use strict";Object.defineProperty(Os,"__esModule",{value:!0});var kh=ds(),Rh=bc(),$h=fs(),Sh=kc(),Oh=Rc(),Ah=ln(),Ih=Ac(),Ph=Ts(),xh=xc(),Mh=jc(),Nh=Dc(),Lh=qc(),jh=Uc(),Dh=Bc(),qh=Fc(),Uh=Gc();function Bh(e=!1){let t=[Nh.default,Lh.default,jh.default,Dh.default,qh.default,Uh.default,Ih.default,Ph.default,Ah.default,xh.default,Mh.default];return e?t.push(Rh.default,Sh.default):t.push(kh.default,$h.default),t.push(Oh.default),t}Os.default=Bh});var Is=v(hr=>{"use strict";Object.defineProperty(hr,"__esModule",{value:!0});hr.dynamicAnchor=void 0;var As=x(),Vh=ke(),Hc=tr(),zh=rn(),Fh={keyword:"$dynamicAnchor",schemaType:"string",code:e=>Wc(e,e.schema)};function Wc(e,t){let{gen:r,it:n}=e;n.schemaEnv.root.dynamicAnchors[t]=!0;let o=(0,As._)`${Vh.default.dynamicAnchors}${(0,As.getProperty)(t)}`,s=n.errSchemaPath==="#"?n.validateName:Gh(e);r.if((0,As._)`!${o}`,()=>r.assign(o,s))}hr.dynamicAnchor=Wc;function Gh(e){let{schemaEnv:t,schema:r,self:n}=e.it,{root:o,baseId:s,localRefs:i,meta:a}=t.root,{schemaId:c}=n.opts,l=new Hc.SchemaEnv({schema:r,schemaId:c,root:o,baseId:s,localRefs:i,meta:a});return Hc.compileSchema.call(n,l),(0,zh.getValidate)(e,l)}hr.default=Fh});var Ps=v(gr=>{"use strict";Object.defineProperty(gr,"__esModule",{value:!0});gr.dynamicRef=void 0;var Jc=x(),Kh=ke(),Qc=rn(),Hh={keyword:"$dynamicRef",schemaType:"string",code:e=>Yc(e,e.schema)};function Yc(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 c=r.let("valid",!1);i(c),e.ok(c)}function i(c){if(o.schemaEnv.root.dynamicAnchors[s]){let l=r.let("_v",(0,Jc._)`${Kh.default.dynamicAnchors}${(0,Jc.getProperty)(s)}`);r.if(l,a(l,c),a(o.validateName,c))}else a(o.validateName,c)()}function a(c,l){return l?()=>r.block(()=>{(0,Qc.callRef)(e,c),r.let(l,!0)}):()=>(0,Qc.callRef)(e,c)}}gr.dynamicRef=Yc;gr.default=Hh});var Xc=v(xs=>{"use strict";Object.defineProperty(xs,"__esModule",{value:!0});var Wh=Is(),Jh=D(),Qh={keyword:"$recursiveAnchor",schemaType:"boolean",code(e){e.schema?(0,Wh.dynamicAnchor)(e,""):(0,Jh.checkStrictMode)(e.it,"$recursiveAnchor: false is ignored")}};xs.default=Qh});var Zc=v(Ms=>{"use strict";Object.defineProperty(Ms,"__esModule",{value:!0});var Yh=Ps(),Xh={keyword:"$recursiveRef",schemaType:"string",code:e=>(0,Yh.dynamicRef)(e,e.schema)};Ms.default=Xh});var el=v(Ns=>{"use strict";Object.defineProperty(Ns,"__esModule",{value:!0});var Zh=Is(),eg=Ps(),tg=Xc(),rg=Zc(),ng=[Zh.default,eg.default,tg.default,rg.default];Ns.default=ng});var rl=v(Ls=>{"use strict";Object.defineProperty(Ls,"__esModule",{value:!0});var tl=ln(),og={keyword:"dependentRequired",type:"object",schemaType:"object",error:tl.error,code:e=>(0,tl.validatePropertyDeps)(e)};Ls.default=og});var nl=v(js=>{"use strict";Object.defineProperty(js,"__esModule",{value:!0});var sg=ln(),ig={keyword:"dependentSchemas",type:"object",schemaType:"object",code:e=>(0,sg.validateSchemaDeps)(e)};js.default=ig});var ol=v(Ds=>{"use strict";Object.defineProperty(Ds,"__esModule",{value:!0});var ag=D(),cg={keyword:["maxContains","minContains"],type:"array",schemaType:"number",code({keyword:e,parentSchema:t,it:r}){t.contains===void 0&&(0,ag.checkStrictMode)(r,`"${e}" without "contains" is ignored`)}};Ds.default=cg});var sl=v(qs=>{"use strict";Object.defineProperty(qs,"__esModule",{value:!0});var lg=rl(),ug=nl(),dg=ol(),fg=[lg.default,ug.default,dg.default];qs.default=fg});var al=v(Us=>{"use strict";Object.defineProperty(Us,"__esModule",{value:!0});var Ye=x(),il=D(),pg=ke(),mg={message:"must NOT have unevaluated properties",params:({params:e})=>(0,Ye._)`{unevaluatedProperty: ${e.unevaluatedProperty}}`},hg={keyword:"unevaluatedProperties",type:"object",schemaType:["boolean","object"],trackErrors:!0,error:mg,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 Ye.Name?t.if((0,Ye._)`${a} !== true`,()=>t.forIn("key",n,d=>t.if(l(a,d),()=>c(d)))):a!==!0&&t.forIn("key",n,d=>a===void 0?c(d):t.if(u(a,d),()=>c(d))),s.props=!0,e.ok((0,Ye._)`${o} === ${pg.default.errors}`);function c(d){if(r===!1){e.setParams({unevaluatedProperty:d}),e.error(),i||t.break();return}if(!(0,il.alwaysValidSchema)(s,r)){let g=t.name("valid");e.subschema({keyword:"unevaluatedProperties",dataProp:d,dataPropType:il.Type.Str},g),i||t.if((0,Ye.not)(g),()=>t.break())}}function l(d,g){return(0,Ye._)`!${d} || !${d}[${g}]`}function u(d,g){let m=[];for(let p in d)d[p]===!0&&m.push((0,Ye._)`${g} !== ${p}`);return(0,Ye.and)(...m)}}};Us.default=hg});var ll=v(Bs=>{"use strict";Object.defineProperty(Bs,"__esModule",{value:!0});var ft=x(),cl=D(),gg={message:({params:{len:e}})=>(0,ft.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,ft._)`{limit: ${e}}`},yg={keyword:"unevaluatedItems",type:"array",schemaType:["boolean","object"],error:gg,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,ft._)`${n}.length`);if(r===!1)e.setParams({len:s}),e.fail((0,ft._)`${i} > ${s}`);else if(typeof r=="object"&&!(0,cl.alwaysValidSchema)(o,r)){let c=t.var("valid",(0,ft._)`${i} <= ${s}`);t.if((0,ft.not)(c),()=>a(c,s)),e.ok(c)}o.items=!0;function a(c,l){t.forRange("i",l,i,u=>{e.subschema({keyword:"unevaluatedItems",dataProp:u,dataPropType:cl.Type.Num},c),o.allErrors||t.if((0,ft.not)(c),()=>t.break())})}}};Bs.default=yg});var ul=v(Vs=>{"use strict";Object.defineProperty(Vs,"__esModule",{value:!0});var _g=al(),Tg=ll(),vg=[_g.default,Tg.default];Vs.default=vg});var dl=v(zs=>{"use strict";Object.defineProperty(zs,"__esModule",{value:!0});var te=x(),Cg={message:({schemaCode:e})=>(0,te.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,te._)`{format: ${e}}`},Eg={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:Cg,code(e,t){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=e,{opts:c,errSchemaPath:l,schemaEnv:u,self:d}=a;if(!c.validateFormats)return;o?g():m();function g(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),f=r.const("fDef",(0,te._)`${p}[${i}]`),h=r.let("fType"),y=r.let("format");r.if((0,te._)`typeof ${f} == "object" && !(${f} instanceof RegExp)`,()=>r.assign(h,(0,te._)`${f}.type || "string"`).assign(y,(0,te._)`${f}.validate`),()=>r.assign(h,(0,te._)`"string"`).assign(y,f)),e.fail$data((0,te.or)(E(),b()));function E(){return c.strictSchema===!1?te.nil:(0,te._)`${i} && !${y}`}function b(){let $=u.$async?(0,te._)`(${f}.async ? await ${y}(${n}) : ${y}(${n}))`:(0,te._)`${y}(${n})`,w=(0,te._)`(typeof ${y} == "function" ? ${$} : ${y}.test(${n}))`;return(0,te._)`${y} && ${y} !== true && ${h} === ${t} && !${w}`}}function m(){let p=d.formats[s];if(!p){E();return}if(p===!0)return;let[f,h,y]=b(p);f===t&&e.pass($());function E(){if(c.strictSchema===!1){d.logger.warn(w());return}throw new Error(w());function w(){return`unknown format "${s}" ignored in schema at path "${l}"`}}function b(w){let F=w instanceof RegExp?(0,te.regexpCode)(w):c.code.formats?(0,te._)`${c.code.formats}${(0,te.getProperty)(s)}`:void 0,q=r.scopeValue("formats",{key:s,ref:w,code:F});return typeof w=="object"&&!(w instanceof RegExp)?[w.type||"string",w.validate,(0,te._)`${q}.validate`]:["string",w,q]}function $(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!u.$async)throw new Error("async format in sync schema");return(0,te._)`await ${y}(${n})`}return typeof h=="function"?(0,te._)`${y}(${n})`:(0,te._)`${y}.test(${n})`}}}};zs.default=Eg});var fl=v(Fs=>{"use strict";Object.defineProperty(Fs,"__esModule",{value:!0});var bg=dl(),wg=[bg.default];Fs.default=wg});var pl=v(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 hl=v(Gs=>{"use strict";Object.defineProperty(Gs,"__esModule",{value:!0});var kg=sc(),Rg=Tc(),$g=Kc(),Sg=el(),Og=sl(),Ag=ul(),Ig=fl(),ml=pl(),Pg=[Sg.default,kg.default,Rg.default,(0,$g.default)(!0),Ig.default,ml.metadataVocabulary,ml.contentVocabulary,Og.default,Ag.default];Gs.default=Pg});var yl=v(hn=>{"use strict";Object.defineProperty(hn,"__esModule",{value:!0});hn.DiscrError=void 0;var gl;(function(e){e.Tag="tag",e.Mapping="mapping"})(gl||(hn.DiscrError=gl={}))});var Tl=v(Hs=>{"use strict";Object.defineProperty(Hs,"__esModule",{value:!0});var Ot=x(),Ks=yl(),_l=tr(),xg=er(),Mg=D(),Ng={message:({params:{discrError:e,tagName:t}})=>e===Ks.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,Ot._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},Lg={keyword:"discriminator",type:"object",schemaType:"object",error:Ng,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 c=t.let("valid",!1),l=t.const("tag",(0,Ot._)`${r}${(0,Ot.getProperty)(a)}`);t.if((0,Ot._)`typeof ${l} == "string"`,()=>u(),()=>e.error(!1,{discrError:Ks.DiscrError.Tag,tag:l,tagName:a})),e.ok(c);function u(){let m=g();t.if(!1);for(let p in m)t.elseIf((0,Ot._)`${l} === ${p}`),t.assign(c,d(m[p]));t.else(),e.error(!1,{discrError:Ks.DiscrError.Mapping,tag:l,tagName:a}),t.endIf()}function d(m){let p=t.name("valid"),f=e.subschema({keyword:"oneOf",schemaProp:m},p);return e.mergeEvaluated(f,Ot.Name),p}function g(){var m;let p={},f=y(o),h=!0;for(let $=0;$<i.length;$++){let w=i[$];if(w?.$ref&&!(0,Mg.schemaHasRulesButRef)(w,s.self.RULES)){let q=w.$ref;if(w=_l.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,q),w instanceof _l.SchemaEnv&&(w=w.schema),w===void 0)throw new xg.default(s.opts.uriResolver,s.baseId,q)}let F=(m=w?.properties)===null||m===void 0?void 0:m[a];if(typeof F!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);h=h&&(f||y(w)),E(F,$)}if(!h)throw new Error(`discriminator: "${a}" must be required`);return p;function y({required:$}){return Array.isArray($)&&$.includes(a)}function E($,w){if($.const)b($.const,w);else if($.enum)for(let F of $.enum)b(F,w);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function b($,w){if(typeof $!="string"||$ in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[$]=w}}}};Hs.default=Lg});var vl=v((BT,jg)=>{jg.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 Cl=v((VT,Dg)=>{Dg.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 El=v((zT,qg)=>{qg.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 bl=v((FT,Ug)=>{Ug.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 wl=v((GT,Bg)=>{Bg.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 kl=v((KT,Vg)=>{Vg.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 Rl=v((HT,zg)=>{zg.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 $l=v((WT,Fg)=>{Fg.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 Sl=v(Ws=>{"use strict";Object.defineProperty(Ws,"__esModule",{value:!0});var Gg=vl(),Kg=Cl(),Hg=El(),Wg=bl(),Jg=wl(),Qg=kl(),Yg=Rl(),Xg=$l(),Zg=["/properties"];function ey(e){return[Gg,Kg,Hg,Wg,Jg,t(this,Qg),Yg,t(this,Xg)].forEach(r=>this.addMetaSchema(r,void 0,!1)),this;function t(r,n){return e?r.$dataMetaSchema(n,Zg):n}}Ws.default=ey});var Ol=v((X,Qs)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0});X.MissingRefError=X.ValidationError=X.CodeGen=X.Name=X.nil=X.stringify=X.str=X._=X.KeywordCxt=X.Ajv2020=void 0;var ty=ec(),ry=hl(),ny=Tl(),oy=Sl(),Js="https://json-schema.org/draft/2020-12/schema",At=class extends ty.default{constructor(t={}){super({...t,dynamicRef:!0,next:!0,unevaluated:!0})}_addVocabularies(){super._addVocabularies(),ry.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(ny.default)}_addDefaultMetaSchema(){super._addDefaultMetaSchema();let{$data:t,meta:r}=this.opts;r&&(oy.default.call(this,t),this.refs["http://json-schema.org/schema"]=Js)}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Js)?Js:void 0)}};X.Ajv2020=At;Qs.exports=X=At;Qs.exports.Ajv2020=At;Object.defineProperty(X,"__esModule",{value:!0});X.default=At;var sy=Zt();Object.defineProperty(X,"KeywordCxt",{enumerable:!0,get:function(){return sy.KeywordCxt}});var It=x();Object.defineProperty(X,"_",{enumerable:!0,get:function(){return It._}});Object.defineProperty(X,"str",{enumerable:!0,get:function(){return It.str}});Object.defineProperty(X,"stringify",{enumerable:!0,get:function(){return It.stringify}});Object.defineProperty(X,"nil",{enumerable:!0,get:function(){return It.nil}});Object.defineProperty(X,"Name",{enumerable:!0,get:function(){return It.Name}});Object.defineProperty(X,"CodeGen",{enumerable:!0,get:function(){return It.CodeGen}});var iy=Wr();Object.defineProperty(X,"ValidationError",{enumerable:!0,get:function(){return iy.default}});var ay=er();Object.defineProperty(X,"MissingRefError",{enumerable:!0,get:function(){return ay.default}})});function xn(e,t,r,n){return{role:"assistant",content:t||null,tool_calls:e,...r&&r.length>0?{thinkingBlocks:r}:{},...n?{reasoning_content:n}:{}}}function jt(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 fu=new Set(["RETRYABLE_TRANSIENT","RETRYABLE_DEGRADED","TOOL_EXECUTION_FAILED"]);function xr(e){return fu.has(e)}function Dt(e,t){return e===401||e===403?"NON_RETRYABLE_AUTH":e===402?"NON_RETRYABLE_QUOTA":e===429?"RETRYABLE_DEGRADED":e===408||typeof e=="number"&&e>=500?"RETRYABLE_TRANSIENT":typeof e=="number"&&e>=400?"NON_RETRYABLE_CONTENT":/invalid[_ ]api[_ ]key|unauthorized|forbidden/i.test(t??"")?"NON_RETRYABLE_AUTH":/insufficient[_ ]quota|payment required|insufficient credits/i.test(t??"")?"NON_RETRYABLE_QUOTA":/rate[_ ]limit|too many requests/i.test(t??"")?"RETRYABLE_DEGRADED":/context_length_exceeded|prompt_too_long|invalid request|model[_ ]not[_ ]found/i.test(t??"")?"NON_RETRYABLE_CONTENT":"RETRYABLE_TRANSIENT"}function Mn(e){let t=[...e.tools],r=e.toolChoice;if(!r||r==="auto")return{tools:t,normalizedToolChoice:r,warnings:[]};if(r==="none")return{tools:[],normalizedToolChoice:"none",warnings:[]};if(r==="required"){if(!t.length)throw Error("tool_choice=required but no tools were provided");return{tools:t,normalizedToolChoice:"required",warnings:[]}}if(typeof r=="object"&&!Array.isArray(r)&&r.type==="function"){let n=r.function,o=typeof n?.name=="string"?n.name.trim():"";if(!o)throw Error("tool_choice.function.name is required");let s=t.filter(i=>(i.function?.name??i.name)?.trim()===o);if(!s.length)throw Error("tool_choice requested unknown tool: "+o);return{tools:s,normalizedToolChoice:{type:"function",function:{name:o}},warnings:[]}}return{tools:t,normalizedToolChoice:r,warnings:[]}}var pu=["stop","aborted","timeout","cancelled","interrupted","error"],mu=["tool_calls","toolCalls","function_call","functionCall","raw_tool_calls","rawToolCalls"];function bi(e){return e==null?[]:typeof e=="string"?e.length>0?[{type:"text",text:e}]:[]:Array.isArray(e)?e:[{type:"text",text:String(e)}]}function hu(e,t){let r=[...Array.isArray(e.contextAnchors)?e.contextAnchors:[],...Array.isArray(t.contextAnchors)?t.contextAnchors:[]];return{...e,...t,...r.length?{contextAnchors:[...new Map(r.map(n=>[JSON.stringify(n),n])).values()]}:{},content:[...bi(e.content),...bi(t.content)]}}function gu(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 yu(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=gu(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 _u(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 Tu(e){return new Set((e??pu).map(t=>t.trim().toLowerCase()))}function vu(e,t){return e?Tu(t).has(e.trim().toLowerCase()):!1}function Nn(e){if(!Array.isArray(e)||e.length===0)return[...e];let t=e.map(c=>{if(c.role==="assistant"&&Array.isArray(c.tool_calls)){let l=c.tool_calls.filter(u=>_u(u));return{...c,...l.length>0?{tool_calls:l}:{tool_calls:void 0}}}return{...c}}),r=new Set;for(let c of t)if(!(c.role!=="assistant"||!Array.isArray(c.tool_calls)))for(let l of c.tool_calls)typeof l.id=="string"&&l.id&&r.add(l.id);let n=t.filter(c=>c.role!=="tool"?!0:!!(c.tool_call_id&&r.has(c.tool_call_id))),o=new Set;for(let c of n)c.role==="tool"&&typeof c.tool_call_id=="string"&&c.tool_call_id&&o.add(c.tool_call_id);let s=[];for(let c of n){if(c.role==="assistant"&&Array.isArray(c.tool_calls)&&c.tool_calls.length>0){let l=c.tool_calls.filter(u=>typeof u.id=="string"&&o.has(u.id));if(l.length===0){let{tool_calls:u,...d}=c;d.content!=null&&d.content!==""&&s.push(d);continue}if(l.length<c.tool_calls.length){s.push({...c,tool_calls:l});continue}}s.push(c)}let i=yu(s),a=[];for(let c of i){let l=a.length>0?a[a.length-1]:void 0;if(c.role==="user"&&l?.role==="user"&&c.contextProjection!=="facts"&&l.contextProjection!=="facts"){a[a.length-1]=hu(l,c);continue}a.push(c)}return a}function Ln(e,t){return vu(t?.stopReason,t?.forcedStopReasons)?e.map(r=>{if(r.role!=="assistant")return{...r};let n={...r};for(let o of mu)delete n[o];return n}):[...e]}function jn(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 Dn(e,t){let r=Nn(e),n=Ln(r,t);return jn(n,t)}function Cu(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 Eu(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 bu(e){return{round:e.round??0,maxRounds:e.maxRounds,pendingToolCallIds:[...e.pendingToolCallIds??[]],completedToolCallIds:[...e.completedToolCallIds??[]],lastStopReason:e.lastStopReason,replayMessages:[...e.replayMessages??[]]}}function qn(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 Mr(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 Nr(e){let t=[],r=Nn(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=Ln(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=jn(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:bu({maxRounds:e.maxRounds,round:e.round,lastStopReason:e.lastStopReason,replayMessages:o,pendingToolCallIds:Cu(o),completedToolCallIds:Eu(o)}),recoveryActions:t}}function Un(e){return e===429||e===529}function Bn(e,t=500,r=32e3){let n=Math.min(t*Math.pow(2,e-1),r);return n+Math.floor(Math.random()*n*.25)}function Vn(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 zn(e){return{promptTokens:0,hasAttemptedReactiveCompact:!1,currentMaxOutputTokens:e.maxOutputTokens,aborted:e.abortSignal?.aborted??!1}}function Fn(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 Gn(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 Kn(e,t){return e.aborted?!0:t.abortSignal?.aborted?(e.aborted=!0,!0):!1}function Hn(){return{attemptedThisTurn:!1}}function qt(e){return!e.attemptedThisTurn}function ht(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 Wn(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 wi(e){let t=e.indexOf("__");return t<=0||t+2>=e.length?e:e.slice(t+2)}function ki(e){let t=e.indexOf("__");if(!(t<=0||t+2>=e.length))return e.slice(0,t)}var Jn="tool_schema_load";function Ri(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 ne(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 $i(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 Si(e,t){let r=typeof t.message?.content=="string"?t.message.content:"",n=r?r.slice(0,2e3):void 0,o=t.details;return{type:"tool_result",turnId:e,callId:t.callId,name:t.toolName,ok:t.ok,error:t.error,outputPreview:n,durationMs:t.durationMs,details:o}}var Il=du(Ol(),1),cy=new Il.Ajv2020({allErrors:!0,allowUnionTypes:!0,strict:!1,validateFormats:!1}),Al=new WeakMap;function ly(e){let t=Al.get(e);if(t)return t;let r=cy.compile(e);return Al.set(e,r),r}function uy(e){return e.instancePath?`arguments${e.instancePath}`:e.keyword==="required"&&typeof e.params.missingProperty=="string"?`arguments/${e.params.missingProperty}`:"arguments"}function dy(e){return(e??[]).slice(0,4).map(t=>`${uy(t)} ${t.message??`violates ${t.keyword}`}`).join("; ")}function Pl(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=ly(t);return o(n)?{ok:!0}:{ok:!1,error:`Tool "${e}" arguments do not match the offered schema: ${dy(o.errors)}.`}}catch(o){return{ok:!1,error:`Tool "${e}" has an invalid offered JSON Schema: ${o instanceof Error?o.message:String(o)}.`}}}function gn(e,t){return typeof e=="number"&&Number.isFinite(e)&&e>=1?Math.round(e):0}function yn(e){if(typeof e=="number"&&Number.isFinite(e)&&e>=0)return Math.round(e)}function xl(e){return e.filter(t=>t.role!=="assistant"?!0:!(typeof t.content=="string"&&t.content.trim()===""))}function Ml(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 Ys(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 Xs(e){return e==="length"||e==="max_tokens"}function Zs(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 Nl(e){let t=e.headers;if(!t)return null;let r=t["retry-after"]??t["Retry-After"];if(!r)return null;let n=/^\d+(?:\.\d+)?$/.test(r.trim())?Number(r):NaN;if(Number.isFinite(n))return n*1e3;let o=Date.parse(r);return Number.isFinite(o)?Math.max(0,o-Date.now()):null}function Ll(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*jl(e){let{messages:t,guardConfig:r,runtimePorts:n,hooks:o,hookCtx:s,currentModel:i,log:a,recovery:c,onAutocompact:l}=e,u;{let d=await n.enforceToolResultBudget(t);u=d.messages,d.newlyReplacedCount>0&&(a.info(`tool-result-budget: truncated ${d.newlyReplacedCount} oversized tool texts`),yield c("tool_result_budget",`${d.newlyReplacedCount} tool texts truncated; product receipts remain the source for complete results`))}{let d=r.contextWindowTokens>0?Math.max(0,r.contextWindowTokens-r.maxOutputTokens):1/0,g=await n.compressMessages(u,{budget:d,model:i,...s,signal:r.abortSignal});r.abortSignal?.throwIfAborted(),u=g.messages,g.droppedCount>0&&(a.info(`autocompact: ${g.strategy}, dropped ${g.droppedCount}`),yield c("autocompact",`${g.strategy}: ${g.droppedCount} dropped`),yield{type:"lifecycle",turnId:s.turnId,kind:"context_compression",status:"completed",detail:`${g.strategy}: ${g.droppedCount} dropped`},l(),ne(o,"context.after_compact",{...s,removedCount:g.droppedCount},a))}return u=xl(u),u}async function*Dl(e,t){let{state:r,guardState:n,turnId:o,log:s,emitRecovery:i}=t,a=e instanceof Error?e.message:String(e),c=typeof e?.status=="number"?e.status:void 0,l=e;if(t.signal?.aborted)return yield{type:"error",turnId:o,error:"Turn aborted",code:"ABORTED",usage:r.totalUsage},{kind:"return"};if(!l||l.retryable!==!0||l.safeToRetry!==!0||l.automaticRetryAuthorized!==!0)return yield{type:"error",turnId:o,error:l?.outcome==="rejected"?"The model service rejected this request.":"The model request outcome must be reconciled before retry.",code:l?.outcome==="rejected"?"MODEL_REQUEST_REJECTED":"MODEL_RECONCILIATION_REQUIRED",usage:r.totalUsage},{kind:"return"};if(!c&&a&&(a.includes("ECONNRESET")||a.includes("EPIPE"))){let d=(r.consecutiveApiRetries??0)+1;return s.info(`stale connection (${a.includes("ECONNRESET")?"ECONNRESET":"EPIPE"}): retrying`),yield i("stale_connection_retry",a.slice(0,80)),{kind:"continue",patch:{consecutiveApiRetries:d,transition:void 0}}}let u=Ll({status:c,message:a});if(u!==null)return u>=n.currentMaxOutputTokens?(yield{type:"error",turnId:o,error:"The rejected output limit cannot be reduced further.",code:"MODEL_REQUEST_REJECTED",usage:r.totalUsage},{kind:"return"}):(r.consecutiveApiRetries++,s.info(`max_tokens overflow: adjusting to ${u}`),n.currentMaxOutputTokens=u,{kind:"continue",patch:{transition:void 0}});if(Un(c)){r.consecutive529Errors++,r.consecutiveApiRetries++;let g=Nl({status:c,message:a,headers:l.headers})??Bn(r.consecutive529Errors);return s.info(`transient ${c}: retry in ${g}ms`),yield i("retry",`${c} retry in ${g}ms`),await new Promise(m=>{let p=Date.now()+g,f,h=()=>{clearTimeout(f),t.signal?.removeEventListener("abort",h),m()},y=()=>{let E=p-Date.now();if(E<=0||t.signal?.aborted){h();return}f=setTimeout(y,Math.min(E,2147483647))};t.signal?.addEventListener("abort",h,{once:!0}),y()}),{kind:"continue",patch:{transition:void 0}}}return{kind:"streamError",streamError:{status:c,message:a}}}function ql(e){return[...new Set(e.map(t=>t.function.name))].sort()}function gy(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 yy(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==="invalid_arguments")return"invalid-arguments";if(r==="blocked_by_guard")return"blocked-by-policy";if(r==="semantic_quality_failed")return"semantic-quality-failed"}function Ul(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:null}function _y(e,t){if(!e)return null;let r=Ul(e.function.parameters),n=Ul(r?.properties)??{},o=Array.isArray(r?.required)?r.required.filter(a=>typeof a=="string"&&a.trim().length>0):[],s=vy(t);if(!s)return`Tool "${e.function.name}" arguments must be a JSON object.`;for(let a of o){let c=s[a];if(typeof c=="string"?c.trim().length===0:c==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)),c=Object.keys(s).filter(l=>!a.has(l));if(c.length>0){let l=[...a].map(u=>`\`${u}\``).join(", ")||"none";return`Tool "${e.function.name}" has unexpected field${c.length===1?"":"s"} ${c.map(u=>`\`${u}\``).join(", ")}. Remove ${c.length===1?"it":"them"}; the only allowed fields are ${l}. Use the canonical tool schema exactly and do not retry the rejected arguments unchanged.`}}let i=Pl(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 Ty(e,t){let r=e?.meta?.identity;if(r?.schemaVersion===1&&r.wireName===t)return r;let n=e?.meta?.category,o=wi(t),s=ki(t),i=n==="mcp"?"mcp":"business",a="product";return{schemaVersion:1,wireName:t,logicalName:o,family:i,owner:a,...s?{serverId:s}:{},capabilityId:`${a}:${s??"business"}:${o}`}}function Bl(e){return{role:"user",content:`Product job result(s) became available while the main task continued.
|
|
9
9
|
`+e.join(`
|
|
10
|
-
`)}}var qy=18e4,kn=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*Dy(e,t){if(!Number.isFinite(t)||t<=0){yield*e;return}let r=e[Symbol.asyncIterator]();try{for(;;){let n,o;try{o=await Promise.race([r.next(),new Promise(s=>{n=setTimeout(()=>s("timeout"),t)})])}finally{n&&clearTimeout(n)}if(o==="timeout")throw new kn(t);if(o.done)return;yield o.value}}finally{r.return?.().catch(()=>{})}}function Uy(e){try{let t=JSON.parse(e);return t&&typeof t=="object"&&!Array.isArray(t)?t:null}catch{return null}}async function*Xl(e,t,r,n){let{turnId:o,sessionId:s,messages:i,availableTools:a,tools:c,model:l,apiKey:u,temperature:d=0,hooks:m,signal:h}=e,f=(k,F)=>{k.push(F)},p={sessionId:s,turnId:o},g=e.maxTurns??0,v=a??c,b=new Set(c.map(k=>k.function.name)),w=v,O=new Map(w.map(k=>[k.function.name,k])),E=v.filter(k=>b.has(k.function.name)),Y=[],U=wn(e.maxRounds,i),y=En(e.maxToolCalls),$={contextWindowTokens:e.contextWindowTokens??128e3,responseBufferTokens:13e3,maxOutputTokens:e.maxOutputTokens??16384,abortSignal:h,reactiveCompactEnabled:!0},j=new Set,V=[],W=new Map,J=0,Ce=new Set,z=0,ie=new Set(e.deferredToolNames??[]),be=new Set;for(let k of e.loadedDeferredToolNames??[])ie.has(k)&&O.has(k)?be.add(k):e.loadedDeferredToolNames?.delete(k);let yt=()=>{let k=new Map(E.map(F=>[F.function.name,F]));for(let F of be){let ne=O.get(F);ne&&k.set(F,ne)}return[...k.values()]},M=(k,F)=>F?k.filter(ne=>F.has(ne.function.name)):[...k],Me=yt(),uu=()=>Jl(Me),fi=(e.continuation?.completedRounds??0)>0,A={messages:[...i],hasAttemptedReactiveCompact:!1,turnCount:(e.continuation?.completedRounds??0)+1,transition:void 0,guardState:Wn($),reactiveCompactState:Xn(),toolLoopState:Br({maxRounds:U,replayMessages:[...i]}).state,finalText:"",totalUsage:structuredClone(e.continuation?.usage??{inputTokens:0,outputTokens:0}),consecutive529Errors:0,consecutiveApiRetries:0,recoveryTrace:new Map},du=4,Sr=async(k,F,ne)=>{e.runtimePorts.saveCheckpoint&&(await e.runtimePorts.saveCheckpoint(structuredClone({turnId:o,sessionId:s,phase:k,messages:F,completedRounds:ne,usage:A.totalUsage})),h?.throwIfAborted())},fu=4,pi=0,Or=!1,mi=new Map,hi,Ke=(k,F)=>{let ne=`${k}:${F??""}`,Ne=(mi.get(ne)??0)+1;if(mi.set(ne,Ne),k==="autocompact"){let ge=A.recoveryTrace.get("autocompact")??0;if(Ne>du||ge>=fu){let Tt=`Repeated context compression made no forward progress: ${F??"autocompact"}`;return hi=Tt,A.recoveryTrace.set("compression_loop_guard",(A.recoveryTrace.get("compression_loop_guard")??0)+1),{type:"recovery",turnId:o,action:"compression_loop_guard",detail:Tt}}}return A.recoveryTrace.set(k,(A.recoveryTrace.get(k)??0)+1),{type:"recovery",turnId:o,action:k,detail:F}},gi=()=>({type:"tool_use_summary",turnId:o,ledgerSchemaVersion:5,toolCalls:V.map(k=>({...k})),availableToolNames:Jl(a??c),enabledToolNames:uu(),toolCallNames:[...j].sort(),blockedToolCalls:My(Y)}),pu=(k,F)=>({type:"end",turnId:o,content:k,turnStatus:F,taskOutcome:"unverified",usage:A.totalUsage,model:l,...A.recoveryTrace.size>0?{recoveryTrace:Object.fromEntries(A.recoveryTrace)}:{}});function*Ut(k,F="completed"){yield gi(),yield pu(k,F)}function*Ae(k,F){yield gi(),yield{type:"error",turnId:o,error:k,code:F,usage:A.totalUsage}}let _t=0,Ft=0;function*mu(k){_t<=Ft||(yield{type:"text_rollback",turnId:o,keepLength:Ft,reason:k},_t=Ft)}for(Me=yt();;){yield*mu("round_restart"),pi++,Or=!1;let{messages:k,turnCount:F,guardState:ne,reactiveCompactState:Ne}=A,{toolLoopState:ge}=A;if(e.refreshTools&&pi>1){let _=e.refreshTools(),T=new Set(_.map(Fe=>Fe.function.name)),I=M(w.filter(Fe=>!ie.has(Fe.function.name)||be.has(Fe.function.name)),T),oe=I;oe!==Me&&(Me=oe,n.debug(`tools refreshed within initial turn snapshot: ${I.length}/${w.length} tools`))}if(e.drainPendingGuidance)for(let _ of e.drainPendingGuidance()){let T=_.trim();T&&(k.push({role:"user",content:T}),n.info(`mid-turn guidance injected (${T.length} chars)`))}if(e.drainPendingTaskNotifications){let _=e.drainPendingTaskNotifications().filter(T=>T.trim());_.length>0&&(k.push(Yl(_)),n.info(`background task result injected (${_.length} item(s))`))}if(Yn(ne,$)){n.info(`turn aborted by guard at turn ${F}`),yield*Ae("Turn aborted","ABORTED");return}let Tt=yield*Hl({messages:k,guardConfig:$,runtimePorts:e.runtimePorts,hooks:m,hookCtx:p,currentModel:l,log:n,recovery:(_,T)=>Ke(_,T),onAutocompact:()=>{A.hasAttemptedReactiveCompact=!1}});if(Tt!==k&&k.splice(0,k.length,...Tt),hi){yield*Ut("","stopped");return}let Sn=Jn(ne,$);Sn.level==="warning"&&n.info(`token budget warning: ${Sn.usagePercent}% used, ${Sn.remainingTokens} remaining`);let yi=e.toolChoice==="required"&&fi?"auto":e.toolChoice??"auto",Ir=Dn({tools:Me,toolChoice:yi}),xr=Br({maxRounds:U,replayMessages:Tt,lastStopReason:ge.lastStopReason,options:{stopReason:ge.lastStopReason}}),On=xr.state.replayMessages;ge=xr.state,xr.recoveryActions.length>0&&n.debug(`tool loop recovery: ${xr.recoveryActions.map(_=>_.detail??_.kind).join("; ")}`),n.debug(`turn ${F}, messages: ${On.length}`),await Sr("model_ready",On,F-1),se(m,"turn.before_inference",{...p,model:l},n);let Bt=!1,_i=[],Ti=yi==="required",In=0,Vt="";function*hu(_){if(_){if(Ti){Vt+=_;return}In+=_.length,_t+=_.length,yield{type:"delta",turnId:o,text:_}}}function*gu(){if(!Vt)return;let _=Vt;Vt="",In+=_.length,_t+=_.length,yield{type:"delta",turnId:o,text:_}}let vi=new Map,xn="stop",le,Pr,H=null,Mr=null,Ci=!1,yu=performance.now(),Pn,bi=0,wi=0,Ei=0,Mn=0,ki,rt,Ri=!1,Nr=!1,$i=!1,vt=[],zt=[];try{let _=t.stream({model:l,messages:On,...Ir.tools.length>0?{tools:Ir.tools,toolChoice:Ir.normalizedToolChoice??"auto"}:{},temperature:d,maxTokens:ne.currentMaxOutputTokens||void 0,streamRequired:e.streamRequired,reasoning:e.reasoning,promptCacheKey:e.promptCacheKey,promptCacheRetention:e.promptCacheRetention,serviceTier:e.serviceTier,...y!==void 0?{maxToolCalls:y}:{},parallelToolCalls:e.parallelToolCalls,textVerbosity:e.textVerbosity},u,h);for await(let T of Dy(_,e.llmStreamIdleTimeoutMs??qy))switch(Pn===void 0&&T.type!=="usage"&&T.type!=="response_id"&&(Pn=Math.max(0,Math.round(performance.now()-yu))),T.type){case"delta":bi+=1,wi+=T.text.length,rt===void 0&&(rt="text"),Mn===0&&(Ri=!0),_i.push(T.text),yield*hu(T.text);break;case"tool_call_delta":Mn+=1,rt===void 0&&(rt="tool_call"),Bt=!0,Zn(vi,T);break;case"reasoning_delta":Ei+=1,rt===void 0&&(rt="reasoning"),vt.push(T.text),yield{type:"reasoning_delta",turnId:o,text:T.text};break;case"reasoning_block_complete":T.signature&&zt.push({thinking:vt.join(""),signature:T.signature}),vt.length=0;break;case"usage":Pr=Hn(T);let I=Py(T.records);le={inputTokens:I?.tokens.inputTokens??T.promptTokens,outputTokens:I?.tokens.outputTokens??T.completionTokens,reasoningTokens:I?.tokens.reasoningTokens??T.reasoningTokens,cacheRead:I?.tokens.cacheReadTokens??T.cacheReadTokens,cacheWrite:I?.tokens.cacheWriteTokens??T.cacheCreationTokens,records:T.records};break;case"response_id":ki=T.id;break;case"annotations":yield{type:"annotations",turnId:o,annotations:T.annotations};break;case"error":Ci=T.outcome==="rejected",Mr=T.message||"LLM provider returned an error chunk";break;case"done":$i=!0,xn=T.finishReason;break}if(Mr){se(m,"stop.failure",{sessionId:s,reason:"PROVIDER_STREAM_ERROR",error:Mr},n),yield*Ae(Mr,Ci?"MODEL_REQUEST_REJECTED":"PROVIDER_STREAM_ERROR");return}Bt||se(m,"turn.after_inference",{...p,model:l},n)}catch(_){if(_ instanceof kn){se(m,"stop.failure",{sessionId:s,reason:_.code,error:_.message},n),yield*Ae(_.message,_.code);return}let T=yield*Wl(_,{state:A,guardState:ne,signal:h,turnId:o,log:n,emitRecovery:Ke});if(T.kind==="return")return;if(T.kind==="continue"){A={...A,...T.patch};continue}H=T.streamError}if(!H&&!$i){let _="LLM stream closed before a terminal event; the response was likely truncated upstream.";se(m,"stop.failure",{sessionId:s,reason:"RETRYABLE_TRANSIENT",error:_},n),yield*Ae(_,"RETRYABLE_TRANSIENT");return}if(H&&se(m,"turn.after_inference",{...p,model:l,response:{error:H.message}},n),H)if(ri(H))Nr=!0,n.info(`withheld prompt_too_long error (status=${H.status})`);else if(oi(H))Nr=!0,n.info(`withheld media_size error (status=${H.status})`);else{let _=Qn({status:H.status??500,message:H.message},ne,$);if(_.action==="reactive_compact"&&Ht(Ne)&&(Ne.attemptedThisTurn=!0,ne.hasAttemptedReactiveCompact=!0,yield Ke("reactive_compact",`API ${H.status??500}: ${H.message}`)),_.action==="retry"){let I=(A.consecutiveApiRetries??0)+1;if(I>2){n.info(`API retry limit reached (${2}), aborting`);let oe=Ct(H.status,H.message);yield*Ae(H.message,oe);return}yield Ke("retry",_.reason),A={...A,consecutiveApiRetries:I,transition:void 0};continue}let T=Ct(H.status,H.message);se(m,"stop.failure",{sessionId:s,reason:T,error:H.message},n),yield*Ae(H.message,T);return}le&&(A.totalUsage.inputTokens+=le.inputTokens,A.totalUsage.outputTokens+=le.outputTokens,le.reasoningTokens&&(A.totalUsage.reasoningTokens=(A.totalUsage.reasoningTokens??0)+le.reasoningTokens),le.cacheRead&&(A.totalUsage.cacheRead=(A.totalUsage.cacheRead??0)+le.cacheRead),le.cacheWrite&&(A.totalUsage.cacheWrite=(A.totalUsage.cacheWrite??0)+le.cacheWrite),le.records?.length&&(A.totalUsage.records=[...A.totalUsage.records??[],...le.records])),n.info(`[provider-context] ${JSON.stringify({event:"context_ledger_round",turnId:o,round:F,ttftMs:Pn,inputTokens:le?.inputTokens??0,outputTokens:le?.outputTokens??0,cacheReadTokens:le?.cacheRead??0,cacheWriteTokens:le?.cacheWrite??0,totalPromptTokens:Pr??0,responseIdReceived:ki!==void 0,toolDefinitionCount:Me.length,providerTextChunkCount:bi,providerTextChars:wi,providerReasoningChunkCount:Ei,providerToolCallDeltaCount:Mn,firstSemanticProviderEvent:rt??"none",textBeforeFirstToolCall:Ri,suppressLiveText:Ti,liveEmittedTextChars:In,bufferedSuppressedTextChars:Vt.length})}`),Pr&&(ne.promptTokens=Pr);let Le=_i.join(""),nt=[...vi.values()].map((_,T)=>({id:_.id||`tc_${o}_${F}_${T}`,type:"function",function:{name:_.name,arguments:_.arguments}}));if(!H&&J===0&&nt.length===0&&!Bt&&Le.trim()===""&&vt.join("").trim()===""&&zt.length===0){let _="LLM returned an empty response before any tool use.";se(m,"stop.failure",{sessionId:s,reason:"EMPTY_MODEL_RESPONSE",error:_},n),yield*Ae(_,"EMPTY_MODEL_RESPONSE");return}if(!H&&J>0&&nt.length===0&&!Bt&&Le.trim()===""&&!ni(xn)){let _="LLM returned no user-visible response after tool use.";se(m,"stop.failure",{sessionId:s,reason:"EMPTY_MODEL_RESPONSE_AFTER_TOOL",error:_},n),yield*Ae(_,"EMPTY_MODEL_RESPONSE_AFTER_TOOL");return}if(nt.length===0&&!Bt){if(e.drainPendingTaskNotifications){let I=e.drainPendingTaskNotifications().filter(oe=>oe.trim());if(I.length>0){A={...A,messages:[...k,...Le?[{role:"assistant",content:Le}]:[],Yl(I)]},n.info(`late background task result consumed at completion (${I.length} item(s)) \u2014 running another round`);continue}}if(e.drainPendingGuidance){let I=e.drainPendingGuidance().map(oe=>oe.trim()).filter(Boolean);if(I.length>0){A={...A,messages:[...k,...Le?[{role:"assistant",content:Le}]:[],...I.map(oe=>({role:"user",content:oe}))]},n.info(`late mid-turn guidance consumed at completion (${I.length} item(s)) \u2014 running another round`);continue}}if(Le&&(A.finalText=Le),Nr&&H&&ri(H)){if(Ht(Ne)){Ne.attemptedThisTurn=!0,ne.hasAttemptedReactiveCompact=!0,n.info("withheld 413: reactive compact attempt"),yield Ke("reactive_compact","withheld prompt_too_long"),A={...A,hasAttemptedReactiveCompact:!0,transition:{reason:"reactive_compact_retry"}};continue}n.info("withheld 413: recovery exhausted, surfacing error"),se(m,"stop.failure",{sessionId:s,reason:"prompt_too_long",error:H.message},n),yield*Ae(H.message,"PROMPT_TOO_LONG");return}if(Nr&&H&&oi(H)){if(Ht(Ne)){Ne.attemptedThisTurn=!0,ne.hasAttemptedReactiveCompact=!0,n.info("withheld media error: reactive compact strip-retry"),yield Ke("reactive_compact","media error strip-retry"),A={...A,hasAttemptedReactiveCompact:!0,transition:{reason:"reactive_compact_retry"}};continue}n.info("withheld media error: recovery exhausted"),se(m,"stop.failure",{sessionId:s,reason:"media_error",error:H.message},n),yield*Ae(H.message,"IMAGE_ERROR");return}if(ni(xn)&&(n.info("provider stopped at its output-token limit; preserving partial content"),Or=!0),!Or&&A.finalText&&e.runtimePorts.reviewCompletion){let I=await e.runtimePorts.reviewCompletion(structuredClone(k),A.finalText);if(I.length){let oe=[...k,{role:"assistant",content:Le},...I];if(await Sr("model_ready",oe,F),U>0&&F>=U){yield*Ut("","stopped");return}A={...A,messages:oe,finalText:"",turnCount:F+1};continue}}ge=Fr(ge,{replayMessages:k,lastStopReason:"completed"});let _=!A.finalText,T=A.finalText;yield*Ut(T,Or||_?"stopped":"completed");return}let _u=zt.length===0&&vt.length>0?vt.join(""):void 0;Ft=_t,f(k,qn(nt,Le||void 0,zt.length>0?zt:void 0,_u)),ge=zn(ge,{replayMessages:k,pendingToolCallIds:nt.map(_=>_.id),completedToolCallIds:ge.completedToolCallIds,lastStopReason:"tool_calls"});let Gt=[],Tu=new Set(Me.map(_=>_.function.name)),Ai=[],Si=[];for(let _ of nt)Tu.has(_.function.name)?Ai.push(_):Si.push(_);for(let _ of Si){let I=ie.has(_.function.name)&&!be.has(_.function.name)?`Tool "${_.function.name}" schema is not loaded. Call "${eo}" with that exact tool name before invoking it.`:`Tool "${_.function.name}" was not offered for this turn and will not be executed. Use only the tools listed in the current request.`;Y.push({name:_.function.name,reason:"not-offered"}),f(k,Kt(_.id,{ok:!1,error:I})),Gt.push(_.id),j.add(_.function.name),n.warn(`unoffered tool call suppressed: ${_.function.name}`)}let Nn=[],Oi=[];for(let _ of Ai){let T=Ir.tools.find(oe=>oe.function.name===_.function.name),I=Ly(T,_.function.arguments);I?Oi.push({call:_,error:I}):Nn.push(_)}for(let _ of Oi){let T=_.call;Y.push({name:T.function.name,reason:"invalid-arguments"}),f(k,Kt(T.id,{ok:!1,error:_.error})),Gt.push(T.id),j.add(T.function.name),n.info(`invalid tool arguments blocked: ${T.function.name}`)}let Lr=Nn.slice(0,y);Lr.length>0&&(yield*gu(),Ft=_t);let Ii=Nn.slice(Lr.length);if(Ii.length>0){let _=`This model round proposed more than ${y} tool calls. Only the first ${y} were executed; re-issue any still-needed calls in the next round.`;for(let T of Ii){Y.push({name:T.function.name,reason:"per-round-tool-call-limit"});let I=Kt(T.id,{ok:!1,error:_});f(k,I),Gt.push(T.id)}}await Sr("tools_pending",k,F-1);for(let _ of Lr){let T=Me.find(oe=>oe.function.name===_.function.name),I={sequence:V.length,callId:_.id,name:_.function.name,identity:jy(T,_.function.name),status:"running",arguments:_.function.arguments};V.push(I),W.set(_.id,I),yield{type:"tool_call",turnId:o,callId:_.id,name:_.function.name,...T?.meta?.displayName?.fallback?.trim()?{displayName:T.meta.displayName.fallback.trim()}:{},arguments:_.function.arguments,inputSummary:zl(_.function.arguments)},Ce.add(_.function.name),z++}try{let _=e.runtimePorts.createStreamingToolExecutor({toolInvoker:r,round:F,hooks:m,sessionId:s,turnId:o,log:n,signal:h,maxConcurrentTools:e?.maxConcurrentTools,maxExecutionMs:24e4,executionTimeoutMsByTool:new Map(Me.flatMap(T=>{let I=T.meta?.executionTimeoutMs;return typeof I=="number"&&Number.isFinite(I)&&I>0?[[T.function.name,I]]:[]}))});for(let T of Lr)_.addTool(T);for await(let T of _.getRemainingResults()){let I=W.get(T.callId);I&&(I.status=T.blocked?"blocked":T.ok?"succeeded":"failed",!T.ok&&typeof T.error=="string"&&T.error.trim()&&(I.error=T.error),T.ok||(I.failureKind=ji(T)));let oe=Ny(T);if(oe&&Y.push({name:T.toolName,reason:oe}),T.blocked&&(yield{type:"tool_blocked",turnId:o,callId:T.callId,name:T.toolName,reason:T.blockReason??"blocked"}),T.ok&&T.toolName===eo){let Fe=Li(T.details),jn=e.refreshTools?new Set(e.refreshTools().map(Se=>Se.function.name)):void 0,jr=[],qr=[],Dr=[];for(let Se of Fe)!O.get(Se)||jn&&!jn.has(Se)?Dr.push(Se):!ie.has(Se)||be.has(Se)?qr.push(Se):(be.add(Se),e.loadedDeferredToolNames?.add(Se),jr.push(Se));Me=M(yt(),jn);let vu=T.message;vu.content=JSON.stringify({loaded:jr,alreadyResident:qr,unavailable:Dr}),T.details={type:"tool_schema_load",requestedToolNames:Fe,loaded:jr,alreadyResident:qr,unavailable:Dr},n.info({turnId:o,loaded:jr,alreadyResident:qr,unavailable:Dr},"tool schemas materialized by Agent selection")}{let Fe=T.message;e.sanitizeToolResultMedia&&await e.sanitizeToolResultMedia(Fe)}f(k,T.message),Gt.push(T.callId),T.blocked||(j.add(T.toolName),J++),yield qi(o,T)}}catch(_){let T=_ instanceof Error?_.message:String(_);yield*Ae(T,"TOOL_EXECUTION_ERROR");return}h?.aborted&&h.throwIfAborted(),await Sr("model_ready",k,F),ge=Fr(ge,{replayMessages:k,completedToolCallIds:[...ge.completedToolCallIds,...Gt],lastStopReason:"tool_calls"}),e.toolChoice==="required"&&nt.length>0&&(fi=!0);let Ln=F+1;if(g>0&&Ln>g){n.info(`max turns reached (${g}), completing`),yield Ke("turn_limit_reached",`${g} tool rounds`),yield*Ut(A.finalText,"stopped");return}if(U>0&&Ln>U){n.info(`tool loop budget exhausted (${U} rounds), returning`),yield Ke("tool_budget_exhausted",`${U} rounds`),yield*Ut(A.finalText,"stopped");return}A={messages:k,hasAttemptedReactiveCompact:!1,turnCount:Ln,transition:{reason:"next_turn"},guardState:ne,reactiveCompactState:Ne,toolLoopState:ge,finalText:A.finalText,totalUsage:A.totalUsage,consecutive529Errors:0,consecutiveApiRetries:0,recoveryTrace:A.recoveryTrace}}}function Zl(e){return[...new Set((e??[]).map(t=>t.function.name))].sort()}var Rn=class{transport;apiKey;toolInvoker;log;hooks;configuredMaxRounds;runtimePorts;constructor(t){this.transport=t.llmTransport,this.apiKey=t.apiKey,this.toolInvoker=t.toolInvoker,this.log=t.log,this.hooks=t.hooks,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:c}=t,l={sessionId:t.sessionId,turnId:n},u=[...o].reverse().find(b=>b.role==="user"&&typeof b.content=="string")?.content,d=!1,m=()=>({type:"tool_use_summary",turnId:n,telemetrySource:"agent",ledgerSchemaVersion:5,toolCalls:[],availableToolNames:Zl(s??i),enabledToolNames:Zl(i),toolCallNames:[],blockedToolCalls:[]}),h=typeof c?.maxRounds=="number"&&Number.isFinite(c.maxRounds)?c.maxRounds:this.configuredMaxRounds,f=h===void 0?void 0:Math.round(h),g=typeof c?.maxToolCalls=="number"&&Number.isFinite(c.maxToolCalls)?c.maxToolCalls:void 0,v=En(g);yield{type:"start",turnId:n,effectiveMaxRounds:wn(f,o),...v!==void 0?{effectiveMaxToolCalls:v}:{}};try{se(this.hooks,"turn.submitted",{...l,prompt:o[o.length-1]?.content??void 0},this.log);let b=Vn(o),w=[];a&&w.push({role:"system",content:a}),w.push(...b);let O=c?.model??"",E=c?.reasoning;c?.reasoning?.effort==="auto"&&(E=void 0);let Y={turnId:n,sessionId:t.sessionId,continuation:t.continuation,messages:w,availableTools:s,tools:i,deferredToolNames:t.deferredToolNames,loadedDeferredToolNames:t.loadedDeferredToolNames,refreshTools:t.refreshTools,drainPendingGuidance:t.drainPendingGuidance,drainPendingTaskNotifications:t.drainPendingTaskNotifications,sanitizeToolResultMedia:t.sanitizeToolResultMedia,model:O,apiKey:c?.apiKey??this.apiKey,temperature:c?.temperature,maxRounds:f,contextWindowTokens:c?.contextWindowTokens,maxOutputTokens:c?.maxOutputTokens,toolChoice:c?.toolChoice,hooks:this.hooks,maxTurns:c?.maxTurns,maxConcurrentTools:c?.maxConcurrentTools,streamRequired:c?.streamRequired,reasoning:E,promptCacheKey:c?.promptCacheKey,promptCacheRetention:c?.promptCacheRetention,serviceTier:c?.serviceTier,maxToolCalls:g,parallelToolCalls:c?.parallelToolCalls??!1,textVerbosity:c?.textVerbosity,runtimePorts:this.runtimePorts.toolLoop,signal:r};for await(let U of Xl(Y,this.transport,this.toolInvoker,this.log))U.type==="tool_use_summary"&&(d=!0),U.type==="end"?se(this.hooks,"turn.completed",{...l,...u?{prompt:u}:{},response:U.content},this.log):U.type==="error"&&se(this.hooks,"turn.failed",{...l,code:U.code,error:U.error},this.log),yield U}catch(b){if(d||(d=!0,yield m()),r?.aborted)se(this.hooks,"turn.failed",{...l,code:"ABORTED",error:"Turn aborted"},this.log),yield{type:"error",turnId:n,error:"Turn aborted",code:"ABORTED"};else{let w=b instanceof Error?b.message:String(b),O=typeof b?.status=="number"?b.status:void 0,E=Ct(O,w);this.log.error(`turn ${n} error [${E}, retryable=${Ur(E)}]: ${w}`),se(this.hooks,"turn.failed",{...l,code:E,error:w},this.log),yield{type:"error",turnId:n,error:w,code:E}}}}};import{randomUUID as Fy}from"node:crypto";function Rr(e){return e.filter(t=>!["text","image","audio","resource","resource_link"].includes(String(t.type))).map($r)}var eu=["response_present_choice","response_present_table","response_present_diagram"],Ue=e=>({type:"string",minLength:1,maxLength:e}),Dt=e=>({type:"string",maxLength:e}),By=[{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:Ue(1e3),selection:{type:"string",enum:["single","multiple"]},options:{type:"array",minItems:2,maxItems:20,items:{type:"object",additionalProperties:!1,required:["id","label"],properties:{id:Ue(80),label:Ue(200),description:Dt(500)}}},required:{type:"boolean"},minSelections:{type:"integer",minimum:0,maximum:20},maxSelections:{type:"integer",minimum:1,maximum:20},submitLabel:Ue(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:Dt(300),caption:Dt(1e3),columns:{type:"array",minItems:1,maxItems:20,items:{type:"object",additionalProperties:!1,required:["key","label"],properties:{key:Ue(80),label:Ue(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:Dt(300),direction:{type:"string",enum:["horizontal","vertical"]},nodes:{type:"array",minItems:1,maxItems:30,items:{type:"object",additionalProperties:!1,required:["id","label"],properties:{id:Ue(80),label:Ue(200),description:Dt(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:Ue(80),to:Ue(80),label:Dt(120)}}}}}}}],L=class extends Error{constructor(t){super(t),this.name="AgentContentBlockValidationError"}},Ge=(e,t)=>{if(!e||typeof e!="object"||Array.isArray(e))throw new L(`${t} must be an object`);return e},re=(e,t,r,n=!1)=>{if(typeof e!="string")throw new L(`${t} must be a string`);let o=e.trim();if(!n&&o.length===0)throw new L(`${t} must not be empty`);if(o.length>r)throw new L(`${t} exceeds ${r} characters`);return o},tt=(e,t,r)=>e===void 0?"":re(e,t,r,!0),si=(e,t,r,n,o)=>{if(e===void 0)return o;if(!Number.isInteger(e)||e<r||e>n)throw new L(`${t} must be an integer from ${r} to ${n}`);return e},ii=(e,t)=>{if(new Set(e).size!==e.length)throw new L(`${t} must contain unique ids`)};function $r(e){let t=Ge(e,"content block"),r=re(t.id,"id",200),n=re(t.type,"type",40);if(n==="choice"){let o=t.selection;if(o!=="single"&&o!=="multiple")throw new L("selection must be single or multiple");if(!Array.isArray(t.options)||t.options.length<2||t.options.length>20)throw new L("options must contain 2 to 20 items");let s=t.options.map((l,u)=>{let d=Ge(l,`options[${u}]`);return{id:re(d.id,`options[${u}].id`,80),label:re(d.label,`options[${u}].label`,200),description:tt(d.description,`options[${u}].description`,500)}});if(ii(s.map(l=>l.id),"options"),t.required!==void 0&&typeof t.required!="boolean")throw new L("required must be a boolean");let i=t.required??!0,a=si(t.maxSelections,"maxSelections",1,20,1),c=si(t.minSelections,"minSelections",0,20,i?1:0);if(o==="single"&&a!==1)throw new L("single choice must allow exactly one selection");if(c>a||a>s.length)throw new L("choice selection bounds are invalid");return{id:r,type:n,prompt:re(t.prompt,"prompt",1e3),selection:o,options:s,required:i,minSelections:c,maxSelections:a,submitLabel:re(t.submitLabel,"submitLabel",80)}}if(n==="table"){if(!Array.isArray(t.columns)||t.columns.length<1||t.columns.length>20)throw new L("columns must contain 1 to 20 items");let o=t.columns.map((i,a)=>{let c=Ge(i,`columns[${a}]`),l=c.align??"start";if(l!=="start"&&l!=="center"&&l!=="end")throw new L(`columns[${a}].align is invalid`);return{key:re(c.key,`columns[${a}].key`,80),label:re(c.label,`columns[${a}].label`,200),align:l}});if(ii(o.map(i=>i.key),"columns"),!Array.isArray(t.rows)||t.rows.length>200)throw new L("rows must contain at most 200 items");let s=t.rows.map((i,a)=>{let c=Ge(i,`rows[${a}]`),l={};for(let[u,d]of Object.entries(c)){if(d!==null&&typeof d!="string"&&typeof d!="number"&&typeof d!="boolean")throw new L(`rows[${a}].${u} is not a table cell`);if(typeof d=="string"&&d.length>2e3)throw new L(`rows[${a}].${u} exceeds 2000 characters`);l[u]=d}return l});return{id:r,type:n,title:tt(t.title,"title",300),caption:tt(t.caption,"caption",1e3),columns:o,rows:s}}if(n==="diagram"){let o=t.direction??"horizontal";if(o!=="horizontal"&&o!=="vertical")throw new L("direction is invalid");if(!Array.isArray(t.nodes)||t.nodes.length<1||t.nodes.length>30)throw new L("nodes must contain 1 to 30 items");let s=new Set(["neutral","info","success","warning","danger"]),i=t.nodes.map((l,u)=>{let d=Ge(l,`nodes[${u}]`),m=d.tone??"neutral";if(typeof m!="string"||!s.has(m))throw new L(`nodes[${u}].tone is invalid`);return{id:re(d.id,`nodes[${u}].id`,80),label:re(d.label,`nodes[${u}].label`,200),description:tt(d.description,`nodes[${u}].description`,500),tone:m}});if(ii(i.map(l=>l.id),"nodes"),!Array.isArray(t.edges)||t.edges.length>60)throw new L("edges must contain at most 60 items");let a=new Set(i.map(l=>l.id)),c=t.edges.map((l,u)=>{let d=Ge(l,`edges[${u}]`),m={from:re(d.from,`edges[${u}].from`,80),to:re(d.to,`edges[${u}].to`,80),label:tt(d.label,`edges[${u}].label`,120)};if(!a.has(m.from)||!a.has(m.to))throw new L(`edges[${u}] references an unknown node`);return m});return{id:r,type:n,title:tt(t.title,"title",300),direction:o,nodes:i,edges:c}}if(n==="attachment"){let o=Ge(t.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 L("attachment.kind is invalid");let i=re(o.downloadUrl,"attachment.downloadUrl",4e3),a=re(o.expiresAt,"attachment.expiresAt",100);try{new URL(i)}catch{throw new L("attachment.downloadUrl must be an absolute URL")}if(!Number.isFinite(Date.parse(a)))throw new L("attachment.expiresAt must be an ISO timestamp");return{id:r,type:n,attachment:{id:re(o.id,"attachment.id",200),kind:o.kind,fileName:re(o.fileName,"attachment.fileName",500),mimeType:re(o.mimeType,"attachment.mimeType",255),byteSize:si(o.byteSize,"attachment.byteSize",0,Number.MAX_SAFE_INTEGER,0),downloadUrl:i,expiresAt:a,note:tt(o.note,"attachment.note",500),engineering:Vy(o.engineering)}}}throw new L(`unsupported content block type: ${n}`)}function Vy(e){if(e==null)return null;let t=Ge(e,"engineering"),r=re(t.format,"engineering.format",20);if(!["dxf","dwg","step","stp","glb","gltf"].includes(r))throw new L("engineering.format is invalid");let n=re(t.previewMode,"engineering.previewMode",50);if(!["direct","browser_conversion","external_conversion_required"].includes(n))throw new L("engineering.previewMode is invalid");let o=re(t.parseStatus,"engineering.parseStatus",50);if(!["parsed","partial","conversion_required"].includes(o))throw new L("engineering.parseStatus is invalid");return{format:r,previewMode:n,parseStatus:o,summary:tt(t.summary,"engineering.summary",2e3)}}function zy(e,t,r=Fy){if(!eu.includes(e))throw new L(`unsupported presentation tool: ${e}`);let n;try{n=JSON.parse(t)}catch{throw new L("presentation tool arguments must be valid JSON")}let o=e==="response_present_choice"?"choice":e==="response_present_table"?"table":"diagram",s=$r({...Ge(n,"arguments"),id:r(),type:o});return{result:JSON.stringify({presented:!0,type:s.type}),contentBlocks:[s]}}var tu=new Set(["dxf","dwg","step","stp","glb","gltf"]),kr=e=>new TextDecoder("utf-8",{fatal:!1}).decode(e),ru=e=>{let t=e.split(/[\\/]/u).at(-1)??e,r=t.lastIndexOf(".");return r<0?"":t.slice(r+1).toLowerCase()};function Gy(e){return tu.has(ru(e))}function Ky(e,t){let r=ru(e);if(!tu.has(r))return null;if(r==="dxf")return Hy(t);if(r==="step"||r==="stp")return Wy(t,r);if(r==="glb"||r==="gltf")return Jy(t,r);let n=kr(t.subarray(0,6));if(!/^AC10\d{2}$/u.test(n))throw new L("invalid DWG signature");let o={signature:n};return{format:r,status:"conversion_required",previewMode:"external_conversion_required",metadata:o,extractedText:JSON.stringify({format:r,...o,conversionRequired:!0})}}function Hy(e){let t=kr(e).split(/\r?\n/u),r=t.map(c=>c.trim().toUpperCase());if(!r.includes("SECTION")||!r.includes("EOF"))throw new L("invalid DXF structure");let n={},o=new Set,s=[],i=[];for(let c=0;c+1<t.length;c+=2){let l=t[c]?.trim(),u=t[c+1]?.trim()??"";if(l==="0"&&/^[A-Z][A-Z0-9_]*$/u.test(u)&&(n[u]=(n[u]??0)+1),l==="8"&&u&&o.add(u),l==="10"||l==="11"){let d=Number(u);Number.isFinite(d)&&s.push(d)}if(l==="20"||l==="21"){let d=Number(u);Number.isFinite(d)&&i.push(d)}}let a={layers:[...o].slice(0,100),entityCounts:n,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 Wy(e,t){let r=kr(e);if(!/^\s*ISO-10303-21;/iu.test(r)||!/END-ISO-10303-21;\s*$/iu.test(r))throw new L("invalid STEP structure");let n=r.match(/FILE_SCHEMA\s*\(\s*\(([^)]+)\)/iu)?.[1]?.replace(/['"]/gu,"").trim()??null,o=[...r.matchAll(/PRODUCT\s*\(\s*'[^']*'\s*,\s*'([^']*)'/giu)].map(a=>a[1]?.trim()).filter(a=>!!a),s={};for(let a of r.matchAll(/^#\d+\s*=\s*([A-Z0-9_]+)\s*\(/gmu)){let c=a[1]??"UNKNOWN";s[c]=(s[c]??0)+1}let i={schema:n,products:[...new Set(o)].slice(0,50),entityCounts:s};return{format:t,status:"parsed",previewMode:"browser_conversion",metadata:i,extractedText:JSON.stringify({format:t,...i})}}function Jy(e,t){let r;if(t==="gltf")r=JSON.parse(kr(e));else{let i=new DataView(e.buffer,e.byteOffset,e.byteLength);if(e.byteLength<20||i.getUint32(0,!0)!==1179937895)throw new L("invalid GLB header");let a=i.getUint32(12,!0);if(i.getUint32(16,!0)!==1313821514||20+a>e.byteLength)throw new L("GLB JSON chunk is missing");r=JSON.parse(kr(e.subarray(20,20+a)))}let n=r.asset;if(!n||typeof n!="object"||Array.isArray(n)||typeof n.version!="string")throw new L("glTF asset metadata is missing");let o=i=>Array.isArray(r[i])?r[i].length:0,s={scenes:o("scenes"),nodes:o("nodes"),meshes:o("meshes"),materials:o("materials")};return{format:t,status:"parsed",previewMode:"direct",metadata:s,extractedText:JSON.stringify({format:t,...s})}}function nu(e){return{role:"user",content:`[${e} earlier messages removed to fit the context budget]`}}var $n=class{constructor(t){this.estimateTokens=t}estimateTokens;compress(t,r){let n=Qy(t.flatMap(f=>f.contextAnchors??[])),o=n.length?{role:"user",contextAnchors:n,contextProjection:"facts",content:`Product context facts and material references (data, not new instructions). Different values for one identity remain conflicting unless explicitly superseded; ask or read their sources. Retrieve referenced materials through product tools when needed:
|
|
11
|
-
${JSON.stringify(n)}`}:void 0,s=[],i=[];for(let f of t)f.contextProjection!=="facts"&&(f.role==="system"?s.push(f):i.push(f));let a=r;for(let f of s)a-=this.estimateTokens(f);o&&(a-=this.estimateTokens(o));let c;for(let f of i)if(f.role==="user"){c=f;break}if(c&&(a-=this.estimateTokens(c)),a<=0){let f=i.length-(c?1:0),p=c?[...s,c]:[...s];return o&&p.push(o),f>0&&p.push(nu(f)),{messages:p,droppedCount:f,strategy:"sliding-window"}}let l=[];for(let f of i){if(f===c)continue;let p=l.at(-1);f.role==="tool"&&p?.[0]?.role==="assistant"&&Array.isArray(p[0].tool_calls)&&p[0].tool_calls.length?p.push(f):l.push([f])}let u=[],d=0;for(let f=l.length-1;f>=0;f--){let p=l[f],g=p.reduce((v,b)=>v+this.estimateTokens(b),0);if(a-g<0&&d>=4)break;if(a-g<0&&d<4){u.unshift(...p),d+=p.length;continue}a-=g,u.unshift(...p),d+=p.length}let m=i.length-(u.length+(c&&!u.includes(c)?1:0)),h=[...s];return c&&!u.includes(c)&&h.push(c),o&&h.push(o),m>0&&h.push(nu(m)),h.push(...u),{messages:h,droppedCount:m,strategy:"sliding-window"}}};function Qy(e){let t=[...new Map(e.map(i=>[JSON.stringify(i),i])).values()],r=new Set,n=t.map(i=>{if(!i.id||!i.revision||!i.supersedes?.length)return i;let a=new Set,c=[...i.supersedes];for(;c.length;){let l=c.pop();if(!a.has(l)){a.add(l);for(let u of t.filter(d=>d.id===i.id&&d.revision===l))c.push(...u.supersedes??[])}}return a.has(i.revision)&&r.add(i.id),{...i,supersedes:[...a]}}),o=n.filter(i=>!i.id||!i.revision||r.has(i.id)||!n.some(a=>a.id===i.id&&a.revision!==i.revision&&a.supersedes?.includes(i.revision))),s=new Map;for(let i of o){let{supersedes:a,references:c,...l}=i,u=JSON.stringify(l),d=s.get(u);s.set(u,{...i,...i.supersedes||d?.supersedes?{supersedes:[...new Set([...d?.supersedes??[],...i.supersedes??[]])]}:{},...i.references||d?.references?{references:[...new Set([...d?.references??[],...i.references??[]])]}:{}})}return[...s.values()]}function Yy(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 Xy(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 Zy(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,Xy(t.signal,Yy(t,n)),{callId:r.id,sessionId:t.sessionId,round:t.round??1}),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:bt(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:bt(r.id,{ok:!1,error:i})}}}var An=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=[],n=0,o=t,s,i=async()=>{try{for(;n<this.calls.length;){if(this.config.signal?.aborted)return;let c=this.calls[n++];if(!c)return;r.push(await Zy(c,this.config)),s?.()}}finally{o--,s?.()}},a=Array.from({length:t},()=>i());try{for(;o>0||r.length>0;){let c=r.shift();c?yield c:await new Promise(l=>{s=l})}}finally{await Promise.all(a)}}};function e_(e){let t=typeof e.content=="string"?e.content:JSON.stringify(e.content??"");return Math.ceil(t.length/4)}function t_(e){let t=new $n(e_);return{saveCheckpoint:e.onCheckpoint,reviewCompletion:e.reviewCompletion,enforceToolResultBudget:async r=>{let n=0,o=[];for(let s of r){if(s.role!=="tool"||!e.projectToolResult){o.push(s);continue}let i=await e.projectToolResult(structuredClone(s));if(i===void 0||i===s.content){o.push(s);continue}n+=1,o.push({...s,content:i})}return{messages:o,newlyReplacedCount:n}},compressMessages:(r,n)=>{let o=t.compress(r,n.budget);return{messages:o.messages,droppedCount:o.droppedCount,strategy:o.strategy}},createStreamingToolExecutor:r=>new An(r)}}function ou(e={}){return{toolLoop:t_(e)}}var r_={info:()=>{},warn:()=>{},error:()=>{},debug:()=>{}};function ai(e){return{async*run(t,r){let n=[],o={async invoke(i,a,c,l,u){let d=await e.toolInvoker.invoke(i,a,c,l,u),m=Rr(d.contentBlocks??[]),h=new Set(n.map(f=>f.id));for(let f of m)h.has(f.id)||n.push(f),h.add(f.id);if(n.length>30)throw Error("a turn cannot return more than 30 content blocks");return d}},s=new Rn({llmTransport:e.llmTransport,toolInvoker:o,apiKey:e.apiKey??"",log:e.logger??r_,maxRounds:e.maxRounds,runtimePorts:ou(e.runtime)});for await(let i of s.run(t,r))i.type==="end"?yield{...i,...n.length?{contentBlocks:n}:{}}:yield i}}}var n_="0.4.1";import{createHash as iu}from"node:crypto";function su(e,t){let r=o=>typeof o=="string"&&!!o.trim();if(!e||![e.module?.id,e.module?.version,e.enterprise?.configurationRevision,e.employee?.permissionRevision,e.knowledge?.revision,e.knowledge?.skill].every(r)||!Array.isArray(e.module.fields)||!e.module.fields.every(o=>o&&typeof o=="object"&&!Array.isArray(o))||!Array.isArray(e.module.operations)||!Array.isArray(e.employee.allowedOperations)||!e.enterprise.configuration||typeof e.enterprise.configuration!="object"||Array.isArray(e.enterprise.configuration)||!Array.isArray(e.enterprise.dataSources)||!Array.isArray(e.knowledge.examples)||!Array.isArray(e.knowledge.exceptions)||e.module.operations.some(o=>!o||!r(o.description)||!Array.isArray(o.prerequisites)||!o.prerequisites.every(r))||e.enterprise.dataSources.some(o=>!o||!r(o.id)||!["ready","missing","unavailable"].includes(o.state)||o.reference!==void 0&&!r(o.reference))||e.knowledge.examples.some(o=>!o||![o.operation,o.input,o.expectedOutcome,o.evidenceReference].every(r))||e.knowledge.exceptions.some(o=>!o||![o.code,o.handling].every(r)))throw Error("CLOUD_ASSISTANT_CONTEXT_INVALID");let n=e.module.operations.map(o=>o.id);if(!n.every(r)||new Set(n).size!==n.length||e.employee.allowedOperations.some(o=>!n.includes(o))||new Set(t.map(o=>o.function.name)).size!==t.length)throw Error("CLOUD_ASSISTANT_CONTEXT_INVALID")}function Ar(e){if(!e||typeof e.id!="string"||!e.id.trim()||typeof e.description!="string"||!e.description.trim()||!Array.isArray(e.criteria)||!e.criteria.length||e.criteria.some(t=>!t||typeof t.id!="string"||!t.id.trim()||typeof t.description!="string"||!t.description.trim())||new Set(e.criteria.map(t=>t.id)).size!==e.criteria.length)throw Error("CLOUD_GOAL_INVALID")}function ci(e,t){Ar(e);let r=e.criteria.map(n=>n.id);if(!t||!Array.isArray(t.criteria)||t.criteria.some(n=>!n)||t.criteria.length!==r.length||new Set(t.criteria.map(n=>n.id)).size!==r.length||t.criteria.some(n=>!r.includes(n.id)||!["satisfied","missing","failed"].includes(n.status)||!Array.isArray(n.references)||n.references.some(o=>typeof o!="string"||!o.trim())||n.status==="satisfied"&&!n.references.length))throw Error("CLOUD_GOAL_EVIDENCE_INVALID");return{status:t.criteria.every(n=>n.status==="satisfied")?"satisfied":"incomplete",criteria:structuredClone(t.criteria)}}function li(e,t){let r=structuredClone(e);if(r.phase!=="tools_pending")throw Error("CLOUD_RECONCILIATION_REQUIRED");let n=r.messages.findLastIndex(i=>!!i.tool_calls?.length),o=r.messages[n]?.tool_calls;if(!o||n<0||r.messages.slice(n+1).some(i=>i.role!=="tool"))throw Error("CLOUD_RECONCILIATION_REQUIRED");let s=new Map(t.map(i=>[i.invocation.callId,i]));if(s.size!==t.length||s.size!==o.length)throw Error("CLOUD_RECONCILIATION_REQUIRED");r.messages=r.messages.slice(0,n+1);for(let i of o){let a=s.get(i.id),c=a?.invocation;if(!a||!c||he(c.context)!==he(r.context)||c.turnId!==r.turnId||c.sessionId!==r.sessionId||c.round!==r.completedRounds+1||c.name!==i.function.name||c.arguments!==i.function.arguments||typeof a.result.result!="string")throw Error("CLOUD_CHECKPOINT_MISMATCH");let l=a.result,u=l.error??(l.mcpIsError?"Tool execution failed":void 0);r.messages.push(bt(i.id,{ok:u===void 0,payload:l.result,error:u,toolReferences:l.toolReferences,imageUrls:l.imageUrls,contentBlocks:l.contentBlocks,structuredContent:l.structuredContent,mcpMeta:l.mcpMeta,mcpIsError:l.mcpIsError}));for(let d of Rr(l.contentBlocks??[]))r.contentBlocks.some(m=>m.id===d.id)||r.contentBlocks.push(d)}if(r.contentBlocks.length>30)throw Error("CLOUD_CHECKPOINT_MISMATCH");return r.completedRounds++,r.phase="model_ready",r}function he(e){return JSON.stringify(e,(t,r)=>r&&typeof r=="object"&&!Array.isArray(r)?Object.fromEntries(Object.keys(r).sort().map(n=>[n,r[n]])):r)}function o_(e){let t=new Set;for(let r of e){for(let n of r.tool_calls??[])t.add(n.id);r.role==="tool"&&r.tool_call_id&&t.delete(r.tool_call_id)}return t.size>0}function ui(e){return{async*run(t,r){let n=structuredClone(t);n.config={...n.config,maxRounds:n.config?.maxRounds??e.maxRounds??12,maxToolCalls:n.config?.maxToolCalls??8,maxConcurrentTools:n.config?.maxConcurrentTools??1};let o=Object.freeze(n.context),s=he({messages:n.messages,tools:n.tools,availableTools:n.availableTools,config:n.config,systemPrompt:n.systemPrompt,maxRounds:e.maxRounds,runtime:e.runtime,assistantContext:n.assistantContext,goal:n.goal,executionBudget:n.executionBudget}),i=y=>({type:"error",turnId:n.turnId,code:y,error:y});try{n.assistantContext&&su(n.assistantContext,n.tools),n.goal&&Ar(n.goal)}catch(y){yield i(y instanceof Error?y.message:"CLOUD_REQUEST_INVALID");return}let a=n.executionBudget;if(a&&a.monetary!==void 0&&(!a.monetary||typeof a.monetary!="object"||typeof a.monetary.id!="string"||typeof a.monetary.maxAmount!="string"||!/^[A-Za-z0-9._:-]{1,200}$/.test(a.monetary.id)||a.monetary.currency!=="CNY"||!/^(?:0|[1-9][0-9]{0,9})(?:\.[0-9]{1,4})?$/.test(a.monetary.maxAmount)||!/[1-9]/.test(a.monetary.maxAmount))){yield{type:"error",turnId:n.turnId,error:"CLOUD_MONETARY_BUDGET_INVALID",code:"CLOUD_MONETARY_BUDGET_INVALID"};return}if(a?.monetary&&e.llmTransport.supportsTaskMonetaryBudget!==!0){yield{type:"error",turnId:n.turnId,error:"CLOUD_MONETARY_BUDGET_UNSUPPORTED",code:"CLOUD_MONETARY_BUDGET_UNSUPPORTED"};return}if(a&&(a.maxModelRequests!==void 0&&(!Number.isSafeInteger(a.maxModelRequests)||a.maxModelRequests<1)||a.deadlineAtMs!==void 0&&(!Number.isSafeInteger(a.deadlineAtMs)||a.deadlineAtMs<1))){yield i("CLOUD_BUDGET_INVALID");return}if(a?.deadlineAtMs!==void 0&&a.deadlineAtMs<=Date.now()){yield i("CLOUD_DEADLINE_EXCEEDED");return}if(!o||Object.values(o).some(y=>typeof y!="string"||!y.trim())||![o.applicationId,o.tenantId,o.actorId,o.scopeId,o.definitionVersion,n.turnId,n.sessionId].every(y=>typeof y=="string"&&y.trim())){yield i("CLOUD_CONTEXT_INVALID");return}if([n.config.maxRounds,n.config.maxConcurrentTools].some(y=>!Number.isSafeInteger(y)||y<1)||!Number.isSafeInteger(n.config.maxToolCalls)||n.config.maxToolCalls<0){yield i("CLOUD_BUDGET_INVALID");return}let c=n.resume;if(c&&(c.schemaVersion!==1||he(c.context)!==he(o)||c.turnId!==n.turnId||c.sessionId!==n.sessionId||c.binding!==s||!Number.isSafeInteger(c.completedRounds)||c.completedRounds<0||!Array.isArray(c.messages)||!Array.isArray(c.contentBlocks))){yield i("CLOUD_CHECKPOINT_MISMATCH");return}if(c&&(c.phase!=="model_ready"||o_(c.messages))){yield i("CLOUD_RECONCILIATION_REQUIRED");return}let l=n.config?.maxRounds??e.maxRounds;if(c&&(l&&l>0&&c.completedRounds>=l||n.config?.maxTurns&&n.config.maxTurns>0&&c.completedRounds>=n.config.maxTurns)){yield i("CLOUD_BUDGET_EXHAUSTED");return}let u=new AbortController,d=r?AbortSignal.any([r,u.signal]):u.signal,m,h,f=y=>{throw m=y,u.abort(),Error(y)},p,g=()=>{if(a?.deadlineAtMs===void 0)return;let y=a.deadlineAtMs-Date.now();if(y<=0){m="CLOUD_DEADLINE_EXCEEDED",u.abort();return}p=setTimeout(g,Math.min(y,2147483647))},v=async y=>{d.throwIfAborted();try{await e.authorize(o,y)}catch{f("CLOUD_AUTHORIZATION_FAILED")}d.throwIfAborted()},b=new Map,w=structuredClone(c?.modelOperations??[]),O=c?structuredClone(c):void 0,E=(c?.completedRounds??0)+1,Y=async y=>{let $=structuredClone(w),j=$.findIndex(V=>V.requestId===y.requestId);j<0?$.push(structuredClone(y)):$[j]=structuredClone(y);try{if(e.onModelOperation)await e.onModelOperation(structuredClone(y));else if(O&&e.checkpoints){let V=structuredClone({...O,modelOperations:$});await e.checkpoints.save(V),O=V}}catch{return f("CLOUD_MODEL_RECEIPT_FAILED")}w.splice(0,w.length,...$)};try{for(let y of c?.contentBlocks??[])b.set(y.id,$r(y));if(b.size>30)throw Error("invalid block count")}catch{yield i("CLOUD_CHECKPOINT_MISMATCH");return}let U=ai({...e,llmTransport:{async*stream(y,$,j){await v({type:"model"});let V=iu("sha256").update(he(a?.monetary?{...y,taskBudget:a.monetary}:y)).digest("hex"),W=w.findLast(M=>M.round===E&&M.requestDigest===V&&M.status==="completed"&&M.response?.length);if(W?.response){for(let M of structuredClone(W.response))yield M;return}if(w.some(M=>["prepared","responding","unknown"].includes(M.status)))return f("MODEL_RECONCILIATION_REQUIRED");if(a?.maxModelRequests!==void 0&&w.length>=a.maxModelRequests)return f("CLOUD_BUDGET_EXHAUSTED");let J=Math.max(0,...w.filter(M=>M.round===E).map(M=>M.attempt))+1,Ce=iu("sha256").update(he([o,n.turnId,E,J,V])).digest("hex"),z={requestId:Ce,requestDigest:V,round:E,attempt:J,model:y.model,status:"prepared",startedAtMs:Date.now()};if(e.llmTransport.bindModelRequest){let M=await e.llmTransport.bindModelRequest(y,$);if(typeof M!="string"||!M.trim())return f("CLOUD_MODEL_ORIGIN_INVALID");z.originReference=M}if(await Y(z),e.reserveModelBudget){try{let M=await e.reserveModelBudget(o,structuredClone(z),structuredClone(y),j);if(typeof M?.reference!="string"||!M.reference.trim())throw Error("invalid budget reservation");z={...z,budgetReference:M.reference}}catch{return await Y({...z,status:"rejected",finishedAtMs:Date.now()}),f("CLOUD_MODEL_BUDGET_REJECTED")}await Y(z)}j?.throwIfAborted();let ie=!1,be=!1,yt=[];try{for await(let M of e.llmTransport.stream({...y,execution:{requestId:Ce,requestDigest:V,round:E,attempt:J,...z.originReference?{originReference:z.originReference}:{},...a?.monetary?{taskBudget:structuredClone(a.monetary)}:{}}},$,j))yt.push(structuredClone(M)),M.type==="response_id"&&(z={...z,responseId:M.id,status:"responding"},await Y(z)),M.type==="usage"&&(z={...z,usage:{inputTokens:M.promptTokens,outputTokens:M.completionTokens,records:M.records}}),M.type==="done"&&!be&&(ie=!0,z={...z,status:"completed",finishReason:M.finishReason}),M.type==="error"&&(be=!0,ie=!1,z={...z,status:M.outcome==="rejected"?"rejected":"unknown"}),yield M}catch(M){throw z={...z,status:M?.outcome==="rejected"?"rejected":"unknown"},M}finally{!ie&&z.status!=="rejected"&&(z={...z,status:"unknown"}),z.status==="completed"&&(z={...z,response:yt}),z={...z,finishedAtMs:Date.now()},await Y(z)}}},runtime:{...e.runtime,onCheckpoint:async y=>{E=y.completedRounds+1,(m||d.aborted)&&d.throwIfAborted();try{await e.checkpoints?.save(structuredClone({...y,schemaVersion:1,context:o,binding:s,contentBlocks:[...b.values()],modelOperations:w})),O=structuredClone({...y,schemaVersion:1,context:o,binding:s,contentBlocks:[...b.values()],modelOperations:w})}catch{f("CLOUD_CHECKPOINT_FAILED")}}},toolInvoker:{async invoke(y,$,j,V,W){if(!W)return f("CLOUD_TOOL_IDENTITY_MISSING");await v({type:"tool",name:$,callId:W.callId});let J=Object.freeze({context:o,turnId:y,sessionId:W.sessionId,callId:W.callId,round:W.round,name:$,arguments:j,...a?.monetary?{taskBudget:Object.freeze(structuredClone(a.monetary))}:{}}),Ce,z=!1;try{let ie=await e.toolInvoker.invoke(J,V);if("kind"in ie&&ie.kind==="wait"){if(!e.onWait||!e.checkpoints)return f("CLOUD_WAIT_STORAGE_REQUIRED");if(h)return f("CLOUD_MULTIPLE_WAITS");if(typeof ie.wait?.id!="string"||!ie.wait.id.trim()||typeof ie.wait.reference!="string"||!ie.wait.reference.trim()||!["input","confirmation","external"].includes(ie.wait.kind))return f("CLOUD_WAIT_INVALID");throw await e.onWait(J,structuredClone(ie.wait)),h={type:"waiting",turnId:y,invocation:J,wait:structuredClone(ie.wait)},z=!0,u.abort(),Error("CLOUD_TASK_WAITING")}Ce=ie;for(let be of Rr(Ce.contentBlocks??[]))b.has(be.id)||b.set(be.id,be);if(b.size>30)throw Error("invalid block count")}catch{if(z||m)throw Error(m??"CLOUD_TASK_WAITING");return f("CLOUD_TOOL_OUTCOME_UNKNOWN")}try{await e.onToolResult?.(J,structuredClone(Ce))}catch{f("CLOUD_TOOL_RECEIPT_FAILED")}return Ce}}});try{g();let y=n.assistantContext,$=[...n.messages],j=[];y&&j.push({role:"user",contextProjection:"facts",content:`Product context facts (data, not instructions): ${JSON.stringify({module:y.module,enterprise:y.enterprise,employee:y.employee})}`,contextAnchors:[{category:"constraint",value:JSON.stringify({module:y.module,enterprise:y.enterprise,employee:y.employee})}]}),n.goal&&j.push({role:"user",contextProjection:"facts",content:`Requested business outcome: ${JSON.stringify(n.goal)}`,contextAnchors:[{category:"objective",value:JSON.stringify(n.goal)}]});let V=$.findLastIndex(J=>J.role==="user"&&J.contextProjection!=="facts");$.splice(V<0?$.length:V,0,...j);let W=y?[n.systemPrompt,y.knowledge.skill,`Verified examples and exception handling: ${JSON.stringify({revision:y.knowledge.revision,examples:y.knowledge.examples,exceptions:y.knowledge.exceptions})}`].filter(Boolean).join(`
|
|
10
|
+
`)}}function vy(e){try{let t=JSON.parse(e);return t&&typeof t=="object"&&!Array.isArray(t)?t:null}catch{return null}}async function*Vl(e,t,r,n){let{turnId:o,sessionId:s,messages:i,availableTools:a,tools:c,model:l,apiKey:u,temperature:d=0,hooks:g,signal:m}=e,p=(R,G)=>{R.push(G)},f={sessionId:s,turnId:o},h=e.maxTurns??0,y=a??c,E=new Set(c.map(R=>R.function.name)),b=y,$=new Map(b.map(R=>[R.function.name,R])),w=y.filter(R=>E.has(R.function.name)),F=[],q=gn(e.maxRounds,i),S=yn(e.maxToolCalls),I={contextWindowTokens:e.contextWindowTokens??128e3,responseBufferTokens:13e3,maxOutputTokens:e.maxOutputTokens??16384,abortSignal:m,reactiveCompactEnabled:!0},W=new Set,C=[],M=new Map,Z=0,re=new Set,Ee=0,ee=new Set(e.deferredToolNames??[]),ae=new Set;for(let R of e.loadedDeferredToolNames??[])ee.has(R)&&$.has(R)?ae.add(R):e.loadedDeferredToolNames?.delete(R);let U=()=>{let R=new Map(w.map(G=>[G.function.name,G]));for(let G of ae){let se=$.get(G);se&&R.set(G,se)}return[...R.values()]},ce=(R,G)=>G?R.filter(se=>G.has(se.function.name)):[...R],le=U(),vr=()=>ql(le),P=(e.continuation?.completedRounds??0)>0,O={messages:[...i],hasAttemptedReactiveCompact:!1,turnCount:(e.continuation?.completedRounds??0)+1,transition:void 0,guardState:zn(I),reactiveCompactState:Hn(),toolLoopState:Nr({maxRounds:q,replayMessages:[...i]}).state,finalText:"",totalUsage:structuredClone(e.continuation?.usage??{inputTokens:0,outputTokens:0}),consecutive529Errors:0,consecutiveApiRetries:0,recoveryTrace:new Map},Cr=async(R,G,se)=>{e.runtimePorts.saveCheckpoint&&(await e.runtimePorts.saveCheckpoint(structuredClone({turnId:o,sessionId:s,phase:R,messages:G,completedRounds:se,usage:O.totalUsage})),m?.throwIfAborted())},si=0,Er=!1,ze=(R,G)=>(O.recoveryTrace.set(R,(O.recoveryTrace.get(R)??0)+1),{type:"recovery",turnId:o,action:R,detail:G}),ii=()=>({type:"tool_use_summary",turnId:o,ledgerSchemaVersion:5,toolCalls:C.map(R=>({...R})),availableToolNames:ql(a??c),enabledToolNames:vr(),toolCallNames:[...W].sort(),blockedToolCalls:gy(F)}),Yl=(R,G)=>({type:"end",turnId:o,content:R,turnStatus:G,taskOutcome:"unverified",usage:O.totalUsage,model:l,...O.recoveryTrace.size>0?{recoveryTrace:Object.fromEntries(O.recoveryTrace)}:{}});function*br(R,G="completed"){yield ii(),yield Yl(R,G)}function*De(R,G){yield ii(),yield{type:"error",turnId:o,error:R,code:G,usage:O.totalUsage}}let pt=0,Pt=0;function*Xl(R){pt<=Pt||(yield{type:"text_rollback",turnId:o,keepLength:Pt,reason:R},pt=Pt)}for(le=U();;){yield*Xl("round_restart"),si++,Er=!1;let{messages:R,turnCount:G,guardState:se,reactiveCompactState:Xe}=O,{toolLoopState:be}=O;if(e.refreshTools&&si>1){let T=e.refreshTools(),_=new Set(T.map(qe=>qe.function.name)),B=ce(b.filter(qe=>!ee.has(qe.function.name)||ae.has(qe.function.name)),_),ie=B;ie!==le&&(le=ie,n.debug(`tools refreshed within initial turn snapshot: ${B.length}/${b.length} tools`))}if(e.drainPendingGuidance)for(let T of e.drainPendingGuidance()){let _=T.trim();_&&(R.push({role:"user",content:_}),n.info(`mid-turn guidance injected (${_.length} chars)`))}if(e.drainPendingTaskNotifications){let T=e.drainPendingTaskNotifications().filter(_=>_.trim());T.length>0&&(R.push(Bl(T)),n.info(`background task result injected (${T.length} item(s))`))}if(Kn(se,I)){n.info(`turn aborted by guard at turn ${G}`),yield*De("Turn aborted","ABORTED");return}let bn=yield*jl({messages:R,guardConfig:{...I,maxOutputTokens:se.currentMaxOutputTokens},runtimePorts:e.runtimePorts,hooks:g,hookCtx:f,currentModel:l,log:n,recovery:(T,_)=>ze(T,_),onAutocompact:()=>{O.hasAttemptedReactiveCompact=!1}});bn!==R&&R.splice(0,R.length,...bn);let wn=Fn(se,I);wn.level==="warning"&&n.info(`token budget warning: ${wn.usagePercent}% used, ${wn.remainingTokens} remaining`);let ai=e.toolChoice==="required"&&P?"auto":e.toolChoice??"auto",wr=Mn({tools:le,toolChoice:ai}),kr=Nr({maxRounds:q,replayMessages:bn,lastStopReason:be.lastStopReason,options:{stopReason:be.lastStopReason}}),kn=kr.state.replayMessages;be=kr.state,kr.recoveryActions.length>0&&n.debug(`tool loop recovery: ${kr.recoveryActions.map(T=>T.detail??T.kind).join("; ")}`),n.debug(`turn ${G}, messages: ${kn.length}`),await Cr("model_ready",kn,G-1),ne(g,"turn.before_inference",{...f,model:l},n);let xt=!1,ci=[],li=ai==="required",Rn=0,Mt="";function*Zl(T){if(T){if(li){Mt+=T;return}Rn+=T.length,pt+=T.length,yield{type:"delta",turnId:o,text:T}}}function*eu(){if(!Mt)return;let T=Mt;Mt="",Rn+=T.length,pt+=T.length,yield{type:"delta",turnId:o,text:T}}let ui=new Map,$n="stop",fe,Rr,J=null,$r=null,di=!1,tu=performance.now(),Sn,fi=0,pi=0,mi=0,On=0,hi,Ze,gi=!1,Sr=!1,yi=!1,mt=[],Nt=[];try{let T=t.stream({model:l,messages:kn,...wr.tools.length>0?{tools:wr.tools,toolChoice:wr.normalizedToolChoice??"auto"}:{},temperature:d,maxTokens:se.currentMaxOutputTokens||void 0,streamRequired:e.streamRequired,reasoning:e.reasoning,promptCacheKey:e.promptCacheKey,promptCacheRetention:e.promptCacheRetention,serviceTier:e.serviceTier,...S!==void 0?{maxToolCalls:S}:{},parallelToolCalls:e.parallelToolCalls,textVerbosity:e.textVerbosity},u,m);for await(let _ of T)switch(Sn===void 0&&_.type!=="usage"&&_.type!=="response_id"&&(Sn=Math.max(0,Math.round(performance.now()-tu))),_.type){case"delta":fi+=1,pi+=_.text.length,Ze===void 0&&(Ze="text"),On===0&&(gi=!0),ci.push(_.text),yield*Zl(_.text);break;case"tool_call_delta":On+=1,Ze===void 0&&(Ze="tool_call"),xt=!0,Wn(ui,_);break;case"reasoning_delta":mi+=1,Ze===void 0&&(Ze="reasoning"),mt.push(_.text),yield{type:"reasoning_delta",turnId:o,text:_.text};break;case"reasoning_block_complete":_.signature&&Nt.push({thinking:mt.join(""),signature:_.signature}),mt.length=0;break;case"usage":Rr=Vn(_),fe={inputTokens:_.promptTokens,outputTokens:_.completionTokens,reasoningTokens:_.reasoningTokens,cacheRead:_.cacheReadTokens,cacheWrite:_.cacheCreationTokens,records:_.records};break;case"response_id":hi=_.id;break;case"annotations":yield{type:"annotations",turnId:o,annotations:_.annotations};break;case"error":di=_.outcome==="rejected",$r=_.message||"LLM provider returned an error chunk";break;case"done":yi=!0,$n=_.finishReason;break}if($r){ne(g,"stop.failure",{sessionId:s,reason:"PROVIDER_STREAM_ERROR",error:$r},n),yield*De($r,di?"MODEL_REQUEST_REJECTED":"PROVIDER_STREAM_ERROR");return}xt||ne(g,"turn.after_inference",{...f,model:l},n)}catch(T){let _=yield*Dl(T,{state:O,guardState:se,signal:m,turnId:o,log:n,emitRecovery:ze});if(_.kind==="return")return;if(_.kind==="continue"){O={...O,..._.patch};continue}J=_.streamError}if(!J&&!yi){let T="LLM stream closed before a terminal event; the response was likely truncated upstream.";ne(g,"stop.failure",{sessionId:s,reason:"RETRYABLE_TRANSIENT",error:T},n),yield*De(T,"RETRYABLE_TRANSIENT");return}if(J&&ne(g,"turn.after_inference",{...f,model:l,response:{error:J.message}},n),J)if(Ys(J))Sr=!0,n.info(`withheld prompt_too_long error (status=${J.status})`);else if(Zs(J))Sr=!0,n.info(`withheld media_size error (status=${J.status})`);else{let T=Gn({status:J.status??500,message:J.message},se,I);if(T.action==="reactive_compact"&&qt(Xe)&&(Xe.attemptedThisTurn=!0,se.hasAttemptedReactiveCompact=!0,yield ze("reactive_compact",`API ${J.status??500}: ${J.message}`)),T.action==="retry"){let B=(O.consecutiveApiRetries??0)+1;yield ze("retry",T.reason),O={...O,consecutiveApiRetries:B,transition:void 0};continue}let _=Dt(J.status,J.message);ne(g,"stop.failure",{sessionId:s,reason:_,error:J.message},n),yield*De(J.message,_);return}fe&&(O.totalUsage.inputTokens+=fe.inputTokens,O.totalUsage.outputTokens+=fe.outputTokens,fe.reasoningTokens&&(O.totalUsage.reasoningTokens=(O.totalUsage.reasoningTokens??0)+fe.reasoningTokens),fe.cacheRead&&(O.totalUsage.cacheRead=(O.totalUsage.cacheRead??0)+fe.cacheRead),fe.cacheWrite&&(O.totalUsage.cacheWrite=(O.totalUsage.cacheWrite??0)+fe.cacheWrite),fe.records?.length&&(O.totalUsage.records=[...O.totalUsage.records??[],...fe.records])),n.info(`[provider-context] ${JSON.stringify({event:"context_ledger_round",turnId:o,round:G,ttftMs:Sn,inputTokens:fe?.inputTokens??0,outputTokens:fe?.outputTokens??0,cacheReadTokens:fe?.cacheRead??0,cacheWriteTokens:fe?.cacheWrite??0,totalPromptTokens:Rr??0,responseIdReceived:hi!==void 0,toolDefinitionCount:le.length,providerTextChunkCount:fi,providerTextChars:pi,providerReasoningChunkCount:mi,providerToolCallDeltaCount:On,firstSemanticProviderEvent:Ze??"none",textBeforeFirstToolCall:gi,suppressLiveText:li,liveEmittedTextChars:Rn,bufferedSuppressedTextChars:Mt.length})}`),Rr&&(se.promptTokens=Rr);let Me=ci.join(""),et=[...ui.values()].map((T,_)=>({id:T.id||`tc_${o}_${G}_${_}`,type:"function",function:{name:T.name,arguments:T.arguments}}));if(!J&&Z===0&&et.length===0&&!xt&&Me.trim()===""&&mt.join("").trim()===""&&Nt.length===0){let T="LLM returned an empty response before any tool use.";ne(g,"stop.failure",{sessionId:s,reason:"EMPTY_MODEL_RESPONSE",error:T},n),yield*De(T,"EMPTY_MODEL_RESPONSE");return}if(!J&&Z>0&&et.length===0&&!xt&&Me.trim()===""&&!Xs($n)){let T="LLM returned no user-visible response after tool use.";ne(g,"stop.failure",{sessionId:s,reason:"EMPTY_MODEL_RESPONSE_AFTER_TOOL",error:T},n),yield*De(T,"EMPTY_MODEL_RESPONSE_AFTER_TOOL");return}if(et.length===0&&!xt){if(e.drainPendingTaskNotifications){let B=e.drainPendingTaskNotifications().filter(ie=>ie.trim());if(B.length>0){O={...O,messages:[...R,...Me?[{role:"assistant",content:Me}]:[],Bl(B)]},n.info(`late background task result consumed at completion (${B.length} item(s)) \u2014 running another round`);continue}}if(e.drainPendingGuidance){let B=e.drainPendingGuidance().map(ie=>ie.trim()).filter(Boolean);if(B.length>0){O={...O,messages:[...R,...Me?[{role:"assistant",content:Me}]:[],...B.map(ie=>({role:"user",content:ie}))]},n.info(`late mid-turn guidance consumed at completion (${B.length} item(s)) \u2014 running another round`);continue}}if(Me&&(O.finalText=Me),Sr&&J&&Ys(J)){if(qt(Xe)){Xe.attemptedThisTurn=!0,se.hasAttemptedReactiveCompact=!0,n.info("withheld 413: reactive compact attempt"),yield ze("reactive_compact","withheld prompt_too_long"),O={...O,hasAttemptedReactiveCompact:!0,transition:{reason:"reactive_compact_retry"}};continue}n.info("withheld 413: recovery exhausted, surfacing error"),ne(g,"stop.failure",{sessionId:s,reason:"prompt_too_long",error:J.message},n),yield*De(J.message,"PROMPT_TOO_LONG");return}if(Sr&&J&&Zs(J)){if(qt(Xe)){Xe.attemptedThisTurn=!0,se.hasAttemptedReactiveCompact=!0,n.info("withheld media error: reactive compact strip-retry"),yield ze("reactive_compact","media error strip-retry"),O={...O,hasAttemptedReactiveCompact:!0,transition:{reason:"reactive_compact_retry"}};continue}n.info("withheld media error: recovery exhausted"),ne(g,"stop.failure",{sessionId:s,reason:"media_error",error:J.message},n),yield*De(J.message,"IMAGE_ERROR");return}if(Xs($n)&&(n.info("provider stopped at its output-token limit; preserving partial content"),Er=!0),!Er&&O.finalText&&e.runtimePorts.reviewCompletion){let B=await e.runtimePorts.reviewCompletion(structuredClone(R),O.finalText);if(B.length){let ie=[...R,{role:"assistant",content:Me},...B];if(await Cr("model_ready",ie,G),q>0&&G>=q){yield*br("","stopped");return}O={...O,messages:ie,finalText:"",turnCount:G+1};continue}}be=Mr(be,{replayMessages:R,lastStopReason:"completed"});let T=!O.finalText,_=O.finalText;yield*br(_,Er||T?"stopped":"completed");return}let ru=Nt.length===0&&mt.length>0?mt.join(""):void 0;Pt=pt,p(R,xn(et,Me||void 0,Nt.length>0?Nt:void 0,ru)),be=qn(be,{replayMessages:R,pendingToolCallIds:et.map(T=>T.id),completedToolCallIds:be.completedToolCallIds,lastStopReason:"tool_calls"});let Lt=[],nu=new Set(le.map(T=>T.function.name)),_i=[],Ti=[];for(let T of et)nu.has(T.function.name)?_i.push(T):Ti.push(T);for(let T of Ti){let B=ee.has(T.function.name)&&!ae.has(T.function.name)?`Tool "${T.function.name}" schema is not loaded. Call "${Jn}" with that exact tool name before invoking it.`:`Tool "${T.function.name}" was not offered for this turn and will not be executed. Use only the tools listed in the current request.`;F.push({name:T.function.name,reason:"not-offered"}),p(R,jt(T.id,{ok:!1,error:B})),Lt.push(T.id),W.add(T.function.name),n.warn(`unoffered tool call suppressed: ${T.function.name}`)}let An=[],vi=[];for(let T of _i){let _=wr.tools.find(ie=>ie.function.name===T.function.name),B=_y(_,T.function.arguments);B?vi.push({call:T,error:B}):An.push(T)}for(let T of vi){let _=T.call;F.push({name:_.function.name,reason:"invalid-arguments"}),p(R,jt(_.id,{ok:!1,error:T.error})),Lt.push(_.id),W.add(_.function.name),n.info(`invalid tool arguments blocked: ${_.function.name}`)}let Or=An.slice(0,S);Or.length>0&&(yield*eu(),Pt=pt);let Ci=An.slice(Or.length);if(Ci.length>0){let T=`This model round proposed more than ${S} tool calls. Only the first ${S} were executed; re-issue any still-needed calls in the next round.`;for(let _ of Ci){F.push({name:_.function.name,reason:"per-round-tool-call-limit"});let B=jt(_.id,{ok:!1,error:T});p(R,B),Lt.push(_.id)}}await Cr("tools_pending",R,G-1);for(let T of Or){let _=le.find(ie=>ie.function.name===T.function.name),B={sequence:C.length,callId:T.id,name:T.function.name,identity:Ty(_,T.function.name),status:"running",arguments:T.function.arguments};C.push(B),M.set(T.id,B),yield{type:"tool_call",turnId:o,callId:T.id,name:T.function.name,..._?.meta?.displayName?.fallback?.trim()?{displayName:_.meta.displayName.fallback.trim()}:{},arguments:T.function.arguments,inputSummary:Ml(T.function.arguments)},re.add(T.function.name),Ee++}try{let T=e.runtimePorts.createStreamingToolExecutor({toolInvoker:r,round:G,hooks:g,sessionId:s,turnId:o,log:n,signal:m,maxConcurrentTools:e?.maxConcurrentTools,executionTimeoutMsByTool:new Map(le.flatMap(_=>{let B=_.meta?.executionTimeoutMs;return typeof B=="number"&&Number.isFinite(B)&&B>0?[[_.function.name,B]]:[]}))});for(let _ of Or)T.addTool(_);for await(let _ of T.getRemainingResults()){let B=M.get(_.callId);B&&(B.status=_.blocked?"blocked":_.ok?"succeeded":"failed",!_.ok&&typeof _.error=="string"&&_.error.trim()&&(B.error=_.error),_.ok||(B.failureKind=$i(_)));let ie=yy(_);if(ie&&F.push({name:_.toolName,reason:ie}),_.blocked&&(yield{type:"tool_blocked",turnId:o,callId:_.callId,name:_.toolName,reason:_.blockReason??"blocked"}),_.ok&&_.toolName===Jn){let qe=Ri(_.details),Pn=e.refreshTools?new Set(e.refreshTools().map(Oe=>Oe.function.name)):void 0,Ar=[],Ir=[],Pr=[];for(let Oe of qe)!$.get(Oe)||Pn&&!Pn.has(Oe)?Pr.push(Oe):!ee.has(Oe)||ae.has(Oe)?Ir.push(Oe):(ae.add(Oe),e.loadedDeferredToolNames?.add(Oe),Ar.push(Oe));le=ce(U(),Pn);let ou=_.message;ou.content=JSON.stringify({loaded:Ar,alreadyResident:Ir,unavailable:Pr}),_.details={type:"tool_schema_load",requestedToolNames:qe,loaded:Ar,alreadyResident:Ir,unavailable:Pr},n.info({turnId:o,loaded:Ar,alreadyResident:Ir,unavailable:Pr},"tool schemas materialized by Agent selection")}{let qe=_.message;e.sanitizeToolResultMedia&&await e.sanitizeToolResultMedia(qe)}p(R,_.message),Lt.push(_.callId),_.blocked||(W.add(_.toolName),Z++),yield Si(o,_)}}catch(T){let _=T instanceof Error?T.message:String(T);yield*De(_,"TOOL_EXECUTION_ERROR");return}m?.aborted&&m.throwIfAborted(),await Cr("model_ready",R,G),be=Mr(be,{replayMessages:R,completedToolCallIds:[...be.completedToolCallIds,...Lt],lastStopReason:"tool_calls"}),e.toolChoice==="required"&&et.length>0&&(P=!0);let In=G+1;if(h>0&&In>h){n.info(`max turns reached (${h}), completing`),yield ze("turn_limit_reached",`${h} tool rounds`),yield*br(O.finalText,"stopped");return}if(q>0&&In>q){n.info(`tool loop budget exhausted (${q} rounds), returning`),yield ze("tool_budget_exhausted",`${q} rounds`),yield*br(O.finalText,"stopped");return}O={messages:R,hasAttemptedReactiveCompact:!1,turnCount:In,transition:{reason:"next_turn"},guardState:se,reactiveCompactState:Xe,toolLoopState:be,finalText:O.finalText,totalUsage:O.totalUsage,consecutive529Errors:0,consecutiveApiRetries:0,recoveryTrace:O.recoveryTrace}}}function zl(e){return[...new Set((e??[]).map(t=>t.function.name))].sort()}var _n=class{transport;apiKey;toolInvoker;log;hooks;configuredMaxRounds;runtimePorts;constructor(t){this.transport=t.llmTransport,this.apiKey=t.apiKey,this.toolInvoker=t.toolInvoker,this.log=t.log,this.hooks=t.hooks,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:c}=t,l={sessionId:t.sessionId,turnId:n},u=[...o].reverse().find(E=>E.role==="user"&&typeof E.content=="string")?.content,d=!1,g=()=>({type:"tool_use_summary",turnId:n,telemetrySource:"agent",ledgerSchemaVersion:5,toolCalls:[],availableToolNames:zl(s??i),enabledToolNames:zl(i),toolCallNames:[],blockedToolCalls:[]}),m=typeof c?.maxRounds=="number"&&Number.isFinite(c.maxRounds)?c.maxRounds:this.configuredMaxRounds,p=m===void 0?void 0:Math.round(m),h=typeof c?.maxToolCalls=="number"&&Number.isFinite(c.maxToolCalls)?c.maxToolCalls:void 0,y=yn(h);yield{type:"start",turnId:n,effectiveMaxRounds:gn(p,o),...y!==void 0?{effectiveMaxToolCalls:y}:{}};try{ne(this.hooks,"turn.submitted",{...l,prompt:o[o.length-1]?.content??void 0},this.log);let E=Dn(o),b=[];a&&b.push({role:"system",content:a}),b.push(...E);let $=c?.model??"",w=c?.reasoning;c?.reasoning?.effort==="auto"&&(w=void 0);let F={turnId:n,sessionId:t.sessionId,continuation:t.continuation,messages:b,availableTools:s,tools:i,deferredToolNames:t.deferredToolNames,loadedDeferredToolNames:t.loadedDeferredToolNames,refreshTools:t.refreshTools,drainPendingGuidance:t.drainPendingGuidance,drainPendingTaskNotifications:t.drainPendingTaskNotifications,sanitizeToolResultMedia:t.sanitizeToolResultMedia,model:$,apiKey:c?.apiKey??this.apiKey,temperature:c?.temperature,maxRounds:p,contextWindowTokens:c?.contextWindowTokens,maxOutputTokens:c?.maxOutputTokens,toolChoice:c?.toolChoice,hooks:this.hooks,maxTurns:c?.maxTurns,maxConcurrentTools:c?.maxConcurrentTools,streamRequired:c?.streamRequired,reasoning:w,promptCacheKey:c?.promptCacheKey,promptCacheRetention:c?.promptCacheRetention,serviceTier:c?.serviceTier,maxToolCalls:h,parallelToolCalls:c?.parallelToolCalls??!1,textVerbosity:c?.textVerbosity,runtimePorts:this.runtimePorts.toolLoop,signal:r};for await(let q of Vl(F,this.transport,this.toolInvoker,this.log))q.type==="tool_use_summary"&&(d=!0),q.type==="end"?ne(this.hooks,"turn.completed",{...l,...u?{prompt:u}:{},response:q.content},this.log):q.type==="error"&&ne(this.hooks,"turn.failed",{...l,code:q.code,error:q.error},this.log),yield q}catch(E){if(d||(d=!0,yield g()),r?.aborted)ne(this.hooks,"turn.failed",{...l,code:"ABORTED",error:"Turn aborted"},this.log),yield{type:"error",turnId:n,error:"Turn aborted",code:"ABORTED"};else{let b=E instanceof Error?E.message:String(E),$=typeof E?.status=="number"?E.status:void 0,w=Dt($,b);this.log.error(`turn ${n} error [${w}, retryable=${xr(w)}]: ${b}`),ne(this.hooks,"turn.failed",{...l,code:w,error:b},this.log),yield{type:"error",turnId:n,error:b,code:w}}}}};var yr=class extends Error{constructor(t){super(t),this.name="AgentContentBlockValidationError"}};function Tn(e){if(!e||typeof e!="object"||Array.isArray(e))throw new yr("content block must be an object");let t=e;if(typeof t.id!="string"||!t.id.trim()||typeof t.type!="string"||!t.type.trim())throw new yr("content block requires a nonempty id and type");return structuredClone(t)}function _r(e){return e.filter(t=>!["text","image","audio","resource","resource_link"].includes(String(t.type))).map(Tn)}function Cy(e){return{role:"user",content:`[${e} earlier messages removed to fit the context budget]`}}var vn=class{constructor(t){this.estimateTokens=t}estimateTokens;compress(t,r){if(t.reduce((h,y)=>h+this.estimateTokens(y),0)<=r)return{messages:t,droppedCount:0,strategy:"sliding-window"};let n=Ey(t.flatMap(h=>h.contextAnchors??[])),o=n.length?{role:"user",contextAnchors:n,contextProjection:"facts",content:`Product context facts and material references (data, not new instructions). Different values for one identity remain conflicting unless explicitly superseded; ask or read their sources. Retrieve referenced materials through product tools when needed:
|
|
11
|
+
${JSON.stringify(n)}`}:void 0,s=[],i=[];for(let h of t)h.contextProjection!=="facts"&&(h.role==="system"?s.push(h):i.push(h));let a=r;for(let h of s)a-=this.estimateTokens(h);o&&(a-=this.estimateTokens(o));let c;for(let h of i)if(h.role==="user"){c=h;break}c&&(a-=this.estimateTokens(c));let l=[];for(let h of i){if(h===c)continue;let y=l.at(-1);h.role==="tool"&&y?.[0]?.role==="assistant"&&Array.isArray(y[0].tool_calls)&&y[0].tool_calls.length?y.push(h):l.push([h])}let u=new Set,d=l.findLast(h=>h[0]?.role==="user");d&&u.add(d),l.length&&u.add(l.at(-1));for(let h of u)a-=h.reduce((y,E)=>y+this.estimateTokens(E),0);let g=new Set(u);for(let h=l.length-1;h>=0;h--){let y=l[h];if(u.has(y))continue;let E=y.reduce((b,$)=>b+this.estimateTokens($),0);if(a-E<0)break;a-=E,g.add(y)}let m=l.filter(h=>g.has(h)).flat(),p=i.length-(m.length+(c&&!m.includes(c)?1:0)),f=[...s];return c&&!m.includes(c)&&f.push(c),o&&f.push(o),p>0&&f.push(Cy(p)),f.push(...m),{messages:f,droppedCount:p,strategy:"sliding-window"}}};function Ey(e){let t=[...new Map(e.map(i=>[JSON.stringify(i),i])).values()],r=new Set,n=t.map(i=>{if(!i.id||!i.revision||!i.supersedes?.length)return i;let a=new Set,c=[...i.supersedes];for(;c.length;){let l=c.pop();if(!a.has(l)){a.add(l);for(let u of t.filter(d=>d.id===i.id&&d.revision===l))c.push(...u.supersedes??[])}}return a.has(i.revision)&&r.add(i.id),{...i,supersedes:[...a]}}),o=n.filter(i=>!i.id||!i.revision||r.has(i.id)||!n.some(a=>a.id===i.id&&a.revision!==i.revision&&a.supersedes?.includes(i.revision))),s=new Map;for(let i of o){let{supersedes:a,references:c,...l}=i,u=JSON.stringify(l),d=s.get(u);s.set(u,{...i,...i.supersedes||d?.supersedes?{supersedes:[...new Set([...d?.supersedes??[],...i.supersedes??[]])]}:{},...i.references||d?.references?{references:[...new Set([...d?.references??[],...i.references??[]])]}:{}})}return[...s.values()]}function by(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 wy(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 ky(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,wy(t.signal,by(t,n)),{callId:r.id,sessionId:t.sessionId,round:t.round??1}),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:ht(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:ht(r.id,{ok:!1,error:i})}}}var Cn=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=[],n=0,o=t,s,i=async()=>{try{for(;n<this.calls.length;){if(this.config.signal?.aborted)return;let c=this.calls[n++];if(!c)return;r.push(await ky(c,this.config)),s?.()}}finally{o--,s?.()}},a=Array.from({length:t},()=>i());try{for(;o>0||r.length>0;){let c=r.shift();c?yield c:await new Promise(l=>{s=l})}}finally{await Promise.all(a)}}};function Ry(e){return Math.ceil(JSON.stringify(e).length/4)}function En(e,t,r){t.signal?.throwIfAborted();let o=new vn(s=>r?r(s,t.model):Ry(s)).compress(structuredClone(e),t.inputBudgetTokens);return{...o,messages:o.messages}}function $y(e){return{saveCheckpoint:e.onCheckpoint,reviewCompletion:e.reviewCompletion,enforceToolResultBudget:async t=>{let r=0,n=[];for(let o of t){if(o.role!=="tool"||!e.projectToolResult){n.push(o);continue}let s=await e.projectToolResult(structuredClone(o));if(s===void 0||s===o.content){n.push(o);continue}r+=1,n.push({...o,content:s})}return{messages:n,newlyReplacedCount:r}},compressMessages:(t,r)=>{if(e.prepareContext)return e.prepareContext(structuredClone(t),{model:r.model,inputBudgetTokens:r.budget,sessionId:r.sessionId,turnId:r.turnId,signal:r.signal});let n=En(t,{model:r.model,inputBudgetTokens:r.budget,sessionId:r.sessionId,turnId:r.turnId,signal:r.signal},e.countMessageTokens);return{messages:n.messages,droppedCount:n.droppedCount,strategy:n.strategy}},createStreamingToolExecutor:t=>new Cn(t)}}function Fl(e={}){return{toolLoop:$y(e)}}var Sy={info:()=>{},warn:()=>{},error:()=>{},debug:()=>{}};function ei(e){return{async*run(t,r){let n=[],o={async invoke(i,a,c,l,u){let d=await e.toolInvoker.invoke(i,a,c,l,u),g=_r(d.contentBlocks??[]),m=new Set(n.map(p=>p.id));for(let p of g)m.has(p.id)||n.push(p),m.add(p.id);return d}},s=new _n({llmTransport:e.llmTransport,toolInvoker:o,apiKey:e.apiKey??"",log:e.logger??Sy,maxRounds:e.maxRounds,runtimePorts:Fl(e.runtime)});for await(let i of s.run(t,r))i.type==="end"?yield{...i,...n.length?{contentBlocks:n}:{}}:yield i}}}var Oy="0.5.0";function Ay(e){let t=async(r,n,o)=>{o?.throwIfAborted();let s=structuredClone(n),i=await r(structuredClone(s),o);if(!i||!["result","pending","unknown"].includes(i.kind))throw Error("CLOUD_BUSINESS_TOOL_OBSERVATION_INVALID");if(i.kind==="result"){if(!i.result||typeof i.result.result!="string")throw Error("CLOUD_BUSINESS_TOOL_OBSERVATION_INVALID")}else if(typeof i.reference!="string"||!i.reference.trim())throw Error("CLOUD_BUSINESS_TOOL_OBSERVATION_INVALID");return await e.observe?.(s,structuredClone(i)),i.kind==="result"?i.result:{kind:"wait",wait:{id:n.callId,kind:"external",reference:i.reference}}};return{invoke:(r,n)=>t(e.port.submit.bind(e.port),r,n),resolve:(r,n)=>t(e.port.query.bind(e.port),r,n),cancel:(r,n)=>{if(!e.port.cancel)throw Error("CLOUD_BUSINESS_TOOL_CANCEL_UNSUPPORTED");return t(e.port.cancel.bind(e.port),r,n)}}}import{createHash as Kl}from"node:crypto";function Gl(e,t){if(!e||typeof e!="object"||Array.isArray(e)||e.instructions!==void 0&&typeof e.instructions!="string"||new Set(t.map(r=>r.function.name)).size!==t.length)throw Error("CLOUD_ASSISTANT_CONTEXT_INVALID")}function Tr(e){if(!e||typeof e.id!="string"||!e.id.trim()||typeof e.description!="string"||!e.description.trim()||!Array.isArray(e.criteria)||!e.criteria.length||e.criteria.some(t=>!t||typeof t.id!="string"||!t.id.trim()||typeof t.description!="string"||!t.description.trim())||new Set(e.criteria.map(t=>t.id)).size!==e.criteria.length)throw Error("CLOUD_GOAL_INVALID")}function ti(e,t){Tr(e);let r=e.criteria.map(n=>n.id);if(!t||!Array.isArray(t.criteria)||t.criteria.some(n=>!n)||t.criteria.length!==r.length||new Set(t.criteria.map(n=>n.id)).size!==r.length||t.criteria.some(n=>!r.includes(n.id)||!["satisfied","missing","failed"].includes(n.status)||!Array.isArray(n.references)||n.references.some(o=>typeof o!="string"||!o.trim())||n.status==="satisfied"&&!n.references.length))throw Error("CLOUD_GOAL_EVIDENCE_INVALID");return{status:t.criteria.every(n=>n.status==="satisfied")?"satisfied":"incomplete",criteria:structuredClone(t.criteria)}}function ri(e,t){let r=structuredClone(e);if(r.phase!=="tools_pending")throw Error("CLOUD_RECONCILIATION_REQUIRED");let n=r.messages.findLastIndex(i=>!!i.tool_calls?.length),o=r.messages[n]?.tool_calls;if(!o||n<0||r.messages.slice(n+1).some(i=>i.role!=="tool"))throw Error("CLOUD_RECONCILIATION_REQUIRED");let s=new Map(t.map(i=>[i.invocation.callId,i]));if(s.size!==t.length||s.size!==o.length)throw Error("CLOUD_RECONCILIATION_REQUIRED");r.messages=r.messages.slice(0,n+1);for(let i of o){let a=s.get(i.id),c=a?.invocation;if(!a||!c||oe(c.context)!==oe(r.context)||c.turnId!==r.turnId||c.sessionId!==r.sessionId||c.round!==r.completedRounds+1||c.name!==i.function.name||c.arguments!==i.function.arguments||typeof a.result.result!="string")throw Error("CLOUD_CHECKPOINT_MISMATCH");let l=a.result,u=l.error??(l.mcpIsError?"Tool execution failed":void 0);r.messages.push(ht(i.id,{ok:u===void 0,payload:l.result,error:u,toolReferences:l.toolReferences,imageUrls:l.imageUrls,contentBlocks:l.contentBlocks,structuredContent:l.structuredContent,mcpMeta:l.mcpMeta,mcpIsError:l.mcpIsError}));for(let d of _r(l.contentBlocks??[]))r.contentBlocks.some(g=>g.id===d.id)||r.contentBlocks.push(d)}return r.completedRounds++,r.phase="model_ready",r}function oe(e){return JSON.stringify(e,(t,r)=>r&&typeof r=="object"&&!Array.isArray(r)?Object.fromEntries(Object.keys(r).sort().map(n=>[n,r[n]])):r)}function Iy(e){let t=new Set;for(let r of e){for(let n of r.tool_calls??[])t.add(n.id);r.role==="tool"&&r.tool_call_id&&t.delete(r.tool_call_id)}return t.size>0}function ni(e){return{async*run(t,r){let n=structuredClone(t);n.config={...n.config,maxRounds:n.config?.maxRounds??e.maxRounds,maxConcurrentTools:n.config?.maxConcurrentTools??1};let o=Object.freeze(n.context),s=oe({messages:n.messages,tools:n.tools,availableTools:n.availableTools,config:n.config,systemPrompt:n.systemPrompt,maxRounds:e.maxRounds,runtime:e.runtime,assistantContext:n.assistantContext,assistantContextProjection:n.assistantContext!==void 0?"opaque-v1":void 0,goal:n.goal,executionBudget:n.executionBudget}),i=C=>({type:"error",turnId:n.turnId,code:C,error:C});try{n.assistantContext!==void 0&&Gl(n.assistantContext,n.tools),n.goal&&Tr(n.goal)}catch(C){yield i(C instanceof Error?C.message:"CLOUD_REQUEST_INVALID");return}let a=n.executionBudget,c=n.resume?.phase==="model_ready"&&n.resume.modelOperations?.some(C=>C.round===n.resume.completedRounds+1&&C.status==="completed"&&C.response?.some(M=>M.type==="done")&&!C.response.some(M=>M.type==="tool_call_delta"));if(a&&a.monetary!==void 0&&(!a.monetary||typeof a.monetary!="object"||typeof a.monetary.id!="string"||!a.monetary.id.trim()||typeof a.monetary.currency!="string"||!a.monetary.currency.trim()||typeof a.monetary.maxAmount!="string"||!/^(?:0|[1-9][0-9]*)(?:\.[0-9]+)?$/.test(a.monetary.maxAmount)||!/[1-9]/.test(a.monetary.maxAmount))){yield{type:"error",turnId:n.turnId,error:"CLOUD_MONETARY_BUDGET_INVALID",code:"CLOUD_MONETARY_BUDGET_INVALID"};return}if(a?.monetary&&e.llmTransport.supportsTaskMonetaryBudget!==!0){yield{type:"error",turnId:n.turnId,error:"CLOUD_MONETARY_BUDGET_UNSUPPORTED",code:"CLOUD_MONETARY_BUDGET_UNSUPPORTED"};return}if(a&&(a.maxModelRequests!==void 0&&(!Number.isSafeInteger(a.maxModelRequests)||a.maxModelRequests<1)||a.deadlineAtMs!==void 0&&(!Number.isSafeInteger(a.deadlineAtMs)||a.deadlineAtMs<1))){yield i("CLOUD_BUDGET_INVALID");return}if(a?.deadlineAtMs!==void 0&&a.deadlineAtMs<=Date.now()&&!c){yield i("CLOUD_DEADLINE_EXCEEDED");return}if(!o||Object.values(o).some(C=>typeof C!="string"||!C.trim())||![o.applicationId,o.tenantId,o.actorId,o.scopeId,o.definitionVersion,n.turnId,n.sessionId].every(C=>typeof C=="string"&&C.trim())){yield i("CLOUD_CONTEXT_INVALID");return}if(n.config.maxRounds!==void 0&&(!Number.isSafeInteger(n.config.maxRounds)||n.config.maxRounds<0)||!Number.isSafeInteger(n.config.maxConcurrentTools)||n.config.maxConcurrentTools<1||n.config.maxToolCalls!==void 0&&(!Number.isSafeInteger(n.config.maxToolCalls)||n.config.maxToolCalls<0)){yield i("CLOUD_BUDGET_INVALID");return}let l=n.resume;if(l&&(l.schemaVersion!==1||oe(l.context)!==oe(o)||l.turnId!==n.turnId||l.sessionId!==n.sessionId||l.binding!==s||!Number.isSafeInteger(l.completedRounds)||l.completedRounds<0||!Array.isArray(l.messages)||!Array.isArray(l.contentBlocks))){yield i("CLOUD_CHECKPOINT_MISMATCH");return}if(l&&(l.phase!=="model_ready"||Iy(l.messages))){yield i("CLOUD_RECONCILIATION_REQUIRED");return}let u=n.config?.maxRounds??e.maxRounds;if(l&&(u&&u>0&&l.completedRounds>=u||n.config?.maxTurns&&n.config.maxTurns>0&&l.completedRounds>=n.config.maxTurns)){yield i("CLOUD_BUDGET_EXHAUSTED");return}let d=new AbortController,g=r?AbortSignal.any([r,d.signal]):d.signal,m,p,f=C=>{throw m=C,d.abort(),Error(C)},h,y=()=>{if(a?.deadlineAtMs===void 0)return;let C=a.deadlineAtMs-Date.now();if(C<=0){m="CLOUD_DEADLINE_EXCEEDED",d.abort();return}h=setTimeout(y,Math.min(C,2147483647))},E=async C=>{g.throwIfAborted(),C.type==="tool"&&a?.deadlineAtMs!==void 0&&a.deadlineAtMs<=Date.now()&&f("CLOUD_DEADLINE_EXCEEDED");try{await e.authorize(o,C)}catch{f("CLOUD_AUTHORIZATION_FAILED")}g.throwIfAborted()},b=new Map,$=structuredClone(l?.modelOperations??[]),w=l?structuredClone(l):void 0,F=(l?.completedRounds??0)+1,q=!1,S=l&&$.some(C=>C.round===F&&C.status==="completed"&&C.response?.length)?F:void 0,I=async C=>{let M=structuredClone($),Z=M.findIndex(re=>re.requestId===C.requestId);Z<0?M.push(structuredClone(C)):M[Z]=structuredClone(C);try{if(e.onModelOperation)await e.onModelOperation(structuredClone(C));else if(w&&e.checkpoints){let re=structuredClone({...w,modelOperations:M});await e.checkpoints.save(re),w=re}}catch{return f("CLOUD_MODEL_RECEIPT_FAILED")}$.splice(0,$.length,...M)};try{for(let C of l?.contentBlocks??[])b.set(C.id,Tn(C))}catch{yield i("CLOUD_CHECKPOINT_MISMATCH");return}let W=ei({...e,llmTransport:{async*stream(C,M,Z){await E({type:"model"});let re=Kl("sha256").update(oe(a?.monetary?{...C,taskBudget:a.monetary}:C)).digest("hex"),Ee=$.findLast(P=>P.round===F&&P.requestDigest===re&&P.status==="completed"&&P.response?.length);if(Ee?.response){for(let P of structuredClone(Ee.response))yield P;return}if($.some(P=>P.round===F&&P.status==="completed"))return f("CLOUD_MODEL_REPLAY_MISMATCH");if(a?.deadlineAtMs!==void 0&&a.deadlineAtMs<=Date.now())return f("CLOUD_DEADLINE_EXCEEDED");if(c&&h===void 0&&y(),$.some(P=>["prepared","responding","unknown"].includes(P.status)))return f("MODEL_RECONCILIATION_REQUIRED");if(a?.maxModelRequests!==void 0&&$.length>=a.maxModelRequests)return f("CLOUD_BUDGET_EXHAUSTED");let ee=Math.max(0,...$.filter(P=>P.round===F).map(P=>P.attempt))+1,ae=Kl("sha256").update(oe([o,n.turnId,F,ee,re])).digest("hex"),U={requestId:ae,requestDigest:re,round:F,attempt:ee,model:C.model,status:"prepared",startedAtMs:Date.now()};if(e.llmTransport.bindModelRequest){let P=await e.llmTransport.bindModelRequest(C,M);if(typeof P!="string"||!P.trim())return f("CLOUD_MODEL_ORIGIN_INVALID");U.originReference=P}if(await I(U),e.reserveModelBudget){try{let P=await e.reserveModelBudget(o,structuredClone(U),structuredClone(C),Z);if(typeof P?.reference!="string"||!P.reference.trim())throw Error("invalid budget reservation");U={...U,budgetReference:P.reference}}catch{return await I({...U,status:"rejected",finishedAtMs:Date.now()}),f("CLOUD_MODEL_BUDGET_REJECTED")}await I(U)}Z?.throwIfAborted();let ce=!1,le=!1,vr=[];try{for await(let P of e.llmTransport.stream({...C,execution:{requestId:ae,requestDigest:re,round:F,attempt:ee,...U.originReference?{originReference:U.originReference}:{},...a?.monetary?{taskBudget:structuredClone(a.monetary)}:{}}},M,Z))vr.push(structuredClone(P)),P.type==="response_id"&&(U={...U,responseId:P.id,status:"responding"},await I(U)),P.type==="usage"&&(U={...U,usage:{inputTokens:P.promptTokens,outputTokens:P.completionTokens,records:P.records}}),P.type==="done"&&!le&&(ce=!0,U={...U,status:"completed",finishReason:P.finishReason}),P.type==="error"&&(le=!0,ce=!1,U={...U,status:P.outcome==="rejected"?"rejected":"unknown"}),yield P}catch(P){throw U={...U,status:P?.outcome==="rejected"?"rejected":"unknown"},P}finally{!ce&&U.status!=="rejected"&&(U={...U,status:"unknown"}),U.status==="completed"&&(U={...U,response:vr}),U={...U,finishedAtMs:Date.now()},await I(U)}}},runtime:{...e.runtime,projectToolResult:async C=>F===S?void 0:e.runtime?.projectToolResult?.(C),prepareContext:async(C,M)=>F===S&&l?{messages:structuredClone(l.messages),droppedCount:0,strategy:"original-request-replay"}:e.runtime?.prepareContext?e.runtime.prepareContext(C,M):En(C,M,e.runtime?.countMessageTokens),onCheckpoint:async C=>{F=C.completedRounds+1,(m||g.aborted)&&g.throwIfAborted();try{await e.checkpoints?.save(structuredClone({...C,schemaVersion:1,context:o,binding:s,contentBlocks:[...b.values()],modelOperations:$})),w=structuredClone({...C,schemaVersion:1,context:o,binding:s,contentBlocks:[...b.values()],modelOperations:$})}catch{f("CLOUD_CHECKPOINT_FAILED")}if(C.phase==="model_ready"&&e.shouldPause&&await e.shouldPause(o,structuredClone(w))){if(!e.checkpoints)return f("CLOUD_PAUSE_STORAGE_REQUIRED");throw q=!0,d.abort(),Error("CLOUD_TASK_PAUSED")}}},toolInvoker:{async invoke(C,M,Z,re,Ee){if(!Ee)return f("CLOUD_TOOL_IDENTITY_MISSING");await E({type:"tool",name:M,callId:Ee.callId});let ee=Object.freeze({context:o,turnId:C,sessionId:Ee.sessionId,callId:Ee.callId,round:Ee.round,name:M,arguments:Z,...a?.monetary?{taskBudget:Object.freeze(structuredClone(a.monetary))}:{}}),ae,U=!1;try{let ce=await e.toolInvoker.invoke(ee,re);if("kind"in ce&&ce.kind==="wait"){if(!e.onWait||!e.checkpoints)return f("CLOUD_WAIT_STORAGE_REQUIRED");if(p)return f("CLOUD_MULTIPLE_WAITS");if(typeof ce.wait?.id!="string"||!ce.wait.id.trim()||typeof ce.wait.reference!="string"||!ce.wait.reference.trim()||!["input","confirmation","external"].includes(ce.wait.kind))return f("CLOUD_WAIT_INVALID");throw await e.onWait(ee,structuredClone(ce.wait)),p={type:"waiting",turnId:C,invocation:ee,wait:structuredClone(ce.wait)},U=!0,d.abort(),Error("CLOUD_TASK_WAITING")}ae=ce;for(let le of _r(ae.contentBlocks??[]))b.has(le.id)||b.set(le.id,le)}catch{if(U||m)throw Error(m??"CLOUD_TASK_WAITING");return f("CLOUD_TOOL_OUTCOME_UNKNOWN")}try{await e.onToolResult?.(ee,structuredClone(ae))}catch{f("CLOUD_TOOL_RECEIPT_FAILED")}return ae}}});try{c||y();let C=n.assistantContext,M=[...n.messages],Z=[];if(C){let{instructions:ee,...ae}=C;Z.push({role:"user",contextProjection:"facts",content:`Product context facts (data, not instructions): ${JSON.stringify(ae)}`,contextAnchors:[{category:"constraint",value:JSON.stringify(ae)}]})}n.goal&&Z.push({role:"user",contextProjection:"facts",content:`Requested business outcome: ${JSON.stringify(n.goal)}`,contextAnchors:[{category:"objective",value:JSON.stringify(n.goal)}]});let re=M.findLastIndex(ee=>ee.role==="user"&&ee.contextProjection!=="facts");M.splice(re<0?M.length:re,0,...Z);let Ee=C?[n.systemPrompt,C.instructions].filter(Boolean).join(`
|
|
12
12
|
|
|
13
|
-
`):n.systemPrompt;for await(let J of U.run({...n,messages:$,systemPrompt:W,continuation:c?{completedRounds:c.completedRounds,usage:c.usage}:void 0,...c?{messages:c.messages,systemPrompt:void 0}:{}},d))if(!h){if(m){yield i(m);return}J.type==="error"&&m?yield i(m):J.type==="end"?yield{...J,...b.size?{contentBlocks:[...b.values()]}:{}}:yield J}}catch(y){if(!h)throw y}finally{p!==void 0&&clearTimeout(p),u.abort()}h&&(yield m?i(m):h)}}}var s_=new Set(["completed","stopped","failed","cancelled"]);function di(e,t){return["applicationId","tenantId","actorId","scopeId","definitionVersion"].every(r=>e[r]===t[r])}function au(e,t){return JSON.stringify([e.applicationId,e.tenantId,e.actorId,e.scopeId,t])}function cu(e){return JSON.stringify([e.invocation.round,e.invocation.callId])}function lu(e,t){if(!e.checkpoint)throw Error("CLOUD_RECONCILIATION_REQUIRED");if(e.checkpoint.phase==="model_ready")return e.checkpoint;let r=e.checkpoint.completedRounds+1;return li(e.checkpoint,t.filter(n=>n.invocation.round===r))}function i_(e){let t=e.heartbeatMs??5e3;if(!Number.isSafeInteger(t)||t<10)throw Error("CLOUD_HEARTBEAT_INVALID");let r=e.deltaBatch;if(r&&(!Number.isSafeInteger(r.maxCharacters)||r.maxCharacters<1||!Number.isSafeInteger(r.maxDelayMs)||r.maxDelayMs<1))throw Error("CLOUD_EVENT_BATCH_INVALID");let n=new Map,o=async(s,i)=>{let a=await e.store.load(s,i);if(a.id!==i||!di(s,a.request.context))throw Error("CLOUD_TASK_NOT_FOUND");return structuredClone(a)};return{async create(s,i){let a=structuredClone(i);if(await e.authorize(a.context,"create"),!s.trim()||a.resume)throw Error("CLOUD_TASK_REQUEST_INVALID");if(a.goal&&(Ar(a.goal),!e.verifyGoal))throw Error("CLOUD_GOAL_VERIFIER_REQUIRED");let c=await e.store.create({id:s,request:a,status:"queued",revision:0,cursor:0,receipts:[]});if(c.id!==s||!di(c.request.context,a.context)||he(c.request)!==he(a))throw Error("CLOUD_TASK_REQUEST_CONFLICT");return c},async get(s,i){return await e.authorize(s,"read"),o(s,i)},async events(s,i,a=0,c=100){if(await e.authorize(s,"read"),!Number.isSafeInteger(a)||a<0||!Number.isSafeInteger(c)||c<1||c>1e3)throw Error("CLOUD_EVENT_CURSOR_INVALID");let l=await o(s,i);if(a>l.cursor)throw Error("CLOUD_EVENT_CURSOR_INVALID");return e.store.events(s,i,a,c)},async cancel(s,i){await e.authorize(s,"cancel"),await o(s,i);let a=await e.store.cancel(s,i);return n.get(au(s,i))?.abort(),a},async appendInput(s,i,a){await e.authorize(s,"append_input");let c=structuredClone(a),l=await o(s,i);if(!c.id?.trim()||!Array.isArray(c.messages)||!c.messages.length||c.messages.some(d=>d.role!=="user"||typeof d.content!="string"||!d.content.trim()||d.tool_calls||d.tool_call_id))throw Error("CLOUD_TASK_INPUT_INVALID");let u=l.inputs?.find(d=>d.id===c.id);if(u){if(he(u)!==he(c))throw Error("CLOUD_TASK_INPUT_CONFLICT");return l}if(!["completed","stopped"].includes(l.status)||l.cancellationRequested||!l.checkpoint||l.checkpoint.phase!=="model_ready"||(l.modelOperations??[]).some(d=>["prepared","responding","unknown"].includes(d.status)))throw Error("CLOUD_TASK_NOT_CONTINUABLE");return e.store.update(s,i,l.revision,{...l,status:"queued",errorCode:void 0,outcome:void 0,inputs:[...l.inputs??[],c],checkpoint:{...l.checkpoint,messages:[...l.checkpoint.messages,...c.messages]}},{type:"task_status",status:"queued"})},async completeWait(s,i,a,c){await e.authorize(s,"complete_wait");let l=await o(s,i);if(!l.status.startsWith("waiting_")||!l.wait||l.wait.descriptor.id!==a)throw Error("CLOUD_TASK_NOT_WAITING");await e.authorizeCompletion(structuredClone(l),a,structuredClone(c));let u=[...l.receipts,{invocation:l.wait.invocation,result:structuredClone(c)}],d=lu(l,u);return e.store.update(s,i,l.revision,{...l,status:"queued",checkpoint:d,receipts:u,wait:void 0},{type:"task_status",status:"queued"})},async recover(s,i,a=[]){await e.authorize(s,"recover"),await o(s,i);let c=await e.store.interrupt(s,i);if(c.status!=="reconciliation_required"||!e.authorizeRecovery)throw Error("CLOUD_RECONCILIATION_REQUIRED");let l=await e.authorizeRecovery(structuredClone(c),structuredClone(a)),u=structuredClone(c.modelOperations??[]);for(let f of u){if(!["prepared","responding","unknown"].includes(f.status))continue;let p=l?.find(g=>g.requestId===f.requestId);if(!p||p.requestDigest!==f.requestDigest||typeof p.evidenceReference!="string"||!p.evidenceReference.trim())throw Error("CLOUD_MODEL_RECONCILIATION_REQUIRED");if(p.outcome==="rejected"&&p.safeToRetry===!0)f.status="rejected";else if(p.outcome==="completed"&&typeof p.responseId=="string"&&p.responseId.trim()&&Array.isArray(p.response)&&p.response.length&&p.response.some(g=>g?.type==="done"&&typeof g.finishReason=="string"&&g.finishReason)&&!p.response.some(g=>!g||g.type==="error"))f.status="completed",f.responseId=p.responseId,f.response=structuredClone(p.response),f.usage=structuredClone(p.usage),f.finishReason=p.response.findLast(g=>g.type==="done")?.finishReason;else throw Error("CLOUD_MODEL_RECONCILIATION_REQUIRED");f.reconciliationReference=p.evidenceReference}let d=[...c.receipts];for(let f of a){let p=d.find(g=>cu(g)===cu(f));if(p&&he(p)!==he(f))throw Error("CLOUD_RECEIPT_CONFLICT");p||d.push(structuredClone(f))}let m=lu(c,d),h=c.cancellationRequested?"cancelled":"queued";return e.store.update(s,i,c.revision,{...c,checkpoint:m,receipts:d,modelOperations:u,status:h,errorCode:void 0},{type:"task_status",status:h})},async execute(s,i,a){await e.authorize(s,"execute"),await o(s,i);let c=await e.store.claim(s,i);if(!c)return;let l=structuredClone(c.task),u=new AbortController,d=a?AbortSignal.any([u.signal,a]):u.signal,m=au(s,i);n.set(m,u);let h=!1,f=Promise.resolve(),p=(U,y)=>{let $=f.then(async()=>{if(h)throw Error("CLOUD_TASK_LEASE_LOST");l=await e.store.update(s,i,l.revision,U(l),y,c.leaseId)});return f=$,$},g,v,b,w=async()=>{b!==void 0&&(clearTimeout(b),b=void 0);let U=v;v=void 0,U&&await p(y=>y,U)},O=()=>g??(g=(async()=>{try{!h&&!await e.store.renew(s,i,c.leaseId)&&(h=!0,u.abort())}catch{h=!0,u.abort()}})().finally(()=>{g=void 0})),E=setInterval(()=>{O()},t),Y=!1;try{if(!["queued"].includes(l.status)||!di(s,l.request.context))throw Error("CLOUD_TASK_CLAIM_INVALID");await p(y=>({...y,status:"running"}),{type:"task_status",status:"running"});let U=ui({...e.agent,runtime:{...e.agent.runtime,reviewCompletion:async(y,$)=>{let j=e.resolveGoal?await e.resolveGoal(structuredClone(l)):l.request.goal;if(j&&e.goalFeedback){if(await e.authorize(s,"execute"),!e.verifyGoal)throw Error("CLOUD_GOAL_VERIFIER_REQUIRED");let V;try{V=ci(j,await e.verifyGoal(structuredClone(l)))}catch{throw Y=!0,Error("CLOUD_GOAL_VERIFICATION_FAILED")}if(await p(W=>({...W,outcome:V}),{type:"goal_verification",outcome:V}),V.status==="incomplete")return e.goalFeedback(structuredClone(l),V)}return e.agent.runtime?.reviewCompletion?.(y,$)??[]}},onModelOperation:y=>{let{response:$,...j}=y;return w().then(()=>p(V=>{let W=[...V.modelOperations??[]],J=W.findIndex(Ce=>Ce.requestId===y.requestId);return J<0?W.push(y):W[J]=y,{...V,modelOperations:W}},{type:"model_operation",operation:j}))},authorize:async(y,$)=>{if(await O(),h)throw Error("CLOUD_TASK_LEASE_LOST");await e.authorize(s,"execute"),await e.agent.authorize(y,$)},checkpoints:{save:y=>p($=>({...$,checkpoint:y}),{type:"checkpoint",phase:y.phase})},onToolResult:(y,$)=>p(j=>({...j,receipts:[...j.receipts,{invocation:y,result:$}]}),{type:"receipt",callId:y.callId,round:y.round,name:y.name}),onWait:(y,$)=>p(j=>({...j,wait:{invocation:y,descriptor:$}}),{type:"receipt",callId:y.callId,round:y.round,name:y.name})});for await(let y of U.run({...l.request,resume:l.checkpoint?{...l.checkpoint,modelOperations:l.modelOperations}:void 0},d)){if(h||d.aborted)break;if(r&&y.type==="delta"){v=v?{...v,text:v.text+y.text}:y,v.text.length>=r.maxCharacters?await w():b===void 0&&(b=setTimeout(()=>{w().catch(()=>u.abort())},Math.min(r.maxDelayMs,2147483647)));continue}await w();let $=y.type==="error"&&Y?{...y,error:"CLOUD_GOAL_VERIFICATION_FAILED",code:"CLOUD_GOAL_VERIFICATION_FAILED"}:y.type==="error"?{...y,error:y.code??"CLOUD_AGENT_FAILED"}:y,j,V=$.type==="end"?e.resolveGoal?await e.resolveGoal(structuredClone(l)):l.request.goal:void 0;if($.type==="end"&&$.turnStatus!=="stopped"&&V)try{if(!e.verifyGoal)throw Error("CLOUD_GOAL_VERIFIER_REQUIRED");await e.authorize(s,"execute"),j=ci(V,await e.verifyGoal(structuredClone(l)))}catch{$={type:"error",turnId:l.request.turnId,error:"CLOUD_GOAL_VERIFICATION_FAILED",code:"CLOUD_GOAL_VERIFICATION_FAILED"}}let W=j?.status==="incomplete"?"stopped":$.type==="waiting"?`waiting_${$.wait.kind}`:$.type==="end"?$.turnStatus==="stopped"?"stopped":"completed":$.type==="error"?["CLOUD_TOOL_OUTCOME_UNKNOWN","CLOUD_MODEL_RECEIPT_FAILED","CLOUD_GOAL_VERIFICATION_FAILED","CLOUD_DEADLINE_EXCEEDED","MODEL_RECONCILIATION_REQUIRED","PROVIDER_STREAM_ERROR","RETRYABLE_TRANSIENT","LLM_STREAM_TIMEOUT","CLOUD_TOOL_RECEIPT_FAILED","CLOUD_CHECKPOINT_FAILED","CLOUD_RECONCILIATION_REQUIRED","CLOUD_MULTIPLE_WAITS","CLOUD_WAIT_INVALID"].includes($.code??"")?"reconciliation_required":"failed":l.status;if(await p(J=>({...J,status:W,...j?{outcome:j}:{},...$.type==="error"?{errorCode:$.code??"CLOUD_AGENT_FAILED"}:{}}),$),s_.has(W)||W==="reconciliation_required"||W.startsWith("waiting_"))break}await w(),await f,!h&&l.status==="running"&&await p(y=>({...y,status:"reconciliation_required",errorCode:"CLOUD_WORKER_INTERRUPTED"}),{type:"task_status",status:"reconciliation_required"})}catch{if(u.abort(),await O(),!h)throw Error("CLOUD_TASK_PERSISTENCE_FAILED")}finally{b!==void 0&&clearTimeout(b),clearInterval(E),u.abort(),n.get(m)===u&&n.delete(m),await e.store.release(s,i,c.leaseId)}}}}export{L as AgentContentBlockValidationError,Ky as analyzeEngineeringFile,he as canonicalCloudValue,li as completeCloudToolCheckpoint,n_ as corePackageVersion,ui as createCloudAgent,i_ as createCloudTaskRuntime,ai as createEmbeddedAgent,zy as createStandardPresentationToolResult,Gy as isEngineeringFile,$r as parseAgentContentBlock,By as standardPresentationToolDefinitions,eu as standardPresentationToolNames};
|
|
13
|
+
`):n.systemPrompt;for await(let ee of W.run({...n,messages:M,systemPrompt:Ee,continuation:l?{completedRounds:l.completedRounds,usage:l.usage}:void 0,...l?{messages:l.messages,systemPrompt:void 0}:{}},g))if(!p){if(q){yield{type:"end",turnId:n.turnId,content:"",turnStatus:"stopped",stopReason:"paused",taskOutcome:"unverified"};return}if(m){yield i(m);return}ee.type==="error"&&m?yield i(m):ee.type==="end"?yield{...ee,...b.size?{contentBlocks:[...b.values()]}:{}}:yield ee}}catch(C){if(q)yield{type:"end",turnId:n.turnId,content:"",turnStatus:"stopped",stopReason:"paused",taskOutcome:"unverified"};else if(!p)throw C}finally{h!==void 0&&clearTimeout(h),d.abort()}p&&(yield m?i(m):p)}}}var Py=new Set(["completed","stopped","failed","cancelled"]);function oi(e,t){return["applicationId","tenantId","actorId","scopeId","definitionVersion"].every(r=>e[r]===t[r])}function Hl(e,t){return JSON.stringify([e.applicationId,e.tenantId,e.actorId,e.scopeId,t])}function Wl(e){return JSON.stringify([e.invocation.round,e.invocation.callId])}function Jl(e,t,r){let n=e.receipts.find(o=>o.wait?.id===t);if(!n)return!1;if(oe(n.result)!==oe(r))throw Error("CLOUD_WAIT_RESULT_CONFLICT");if(e.wait?.descriptor.id===t&&oe(e.wait.invocation)!==oe(n.invocation))throw Error("CLOUD_WAIT_ID_CONFLICT");return!0}function Ql(e,t){if(!e.checkpoint)throw Error("CLOUD_RECONCILIATION_REQUIRED");if(e.checkpoint.phase==="model_ready")return e.checkpoint;let r=e.checkpoint.completedRounds+1;return ri(e.checkpoint,t.filter(n=>n.invocation.round===r))}function xy(e){let t=e.heartbeatMs??5e3;if(!Number.isSafeInteger(t)||t<10)throw Error("CLOUD_HEARTBEAT_INVALID");let r=e.deltaBatch;if(r&&(!Number.isSafeInteger(r.maxCharacters)||r.maxCharacters<1||!Number.isSafeInteger(r.maxDelayMs)||r.maxDelayMs<1))throw Error("CLOUD_EVENT_BATCH_INVALID");let n=new Map,o=async(s,i)=>{let a=await e.store.load(s,i);if(a.id!==i||!oi(s,a.request.context))throw Error("CLOUD_TASK_NOT_FOUND");return structuredClone(a)};return{async create(s,i){let a=structuredClone(i);if(await e.authorize(a.context,"create"),!s.trim()||a.resume)throw Error("CLOUD_TASK_REQUEST_INVALID");if(a.goal&&(Tr(a.goal),!e.verifyGoal))throw Error("CLOUD_GOAL_VERIFIER_REQUIRED");let c=await e.store.create({id:s,request:a,status:"queued",revision:0,cursor:0,receipts:[]});if(c.id!==s||!oi(c.request.context,a.context)||oe(c.request)!==oe(a))throw Error("CLOUD_TASK_REQUEST_CONFLICT");return c},async get(s,i){return await e.authorize(s,"read"),o(s,i)},async events(s,i,a=0,c=100){if(await e.authorize(s,"read"),!Number.isSafeInteger(a)||a<0||!Number.isSafeInteger(c)||c<1||c>1e3)throw Error("CLOUD_EVENT_CURSOR_INVALID");let l=await o(s,i);if(a>l.cursor)throw Error("CLOUD_EVENT_CURSOR_INVALID");return e.store.events(s,i,a,c)},async cancel(s,i){await e.authorize(s,"cancel"),await o(s,i);let a=await e.store.cancel(s,i);return n.get(Hl(s,i))?.abort(),a},async appendInput(s,i,a){await e.authorize(s,"append_input");let c=structuredClone(a),l=await o(s,i);if(!c.id?.trim()||!Array.isArray(c.messages)||!c.messages.length||c.messages.some(m=>m.role!=="user"||typeof m.content!="string"||!m.content.trim()||m.tool_calls||m.tool_call_id))throw Error("CLOUD_TASK_INPUT_INVALID");let u=l.inputs?.find(m=>m.id===c.id);if(u){if(oe(u)!==oe(c))throw Error("CLOUD_TASK_INPUT_CONFLICT");return l}if(!["completed","stopped"].includes(l.status)||l.cancellationRequested||!l.checkpoint||l.checkpoint.phase!=="model_ready"||(l.modelOperations??[]).some(m=>["prepared","responding","unknown"].includes(m.status)))throw Error("CLOUD_TASK_NOT_CONTINUABLE");let d=structuredClone(l.checkpoint),g=(l.modelOperations??[]).findLast(m=>m.status==="completed"&&m.round>d.completedRounds);if(g){let m=g.response;if(!m?.some(y=>y.type==="done")||m.some(y=>y.type==="tool_call_delta"))throw Error("CLOUD_TASK_NOT_CONTINUABLE");let p=m.flatMap(y=>y.type==="delta"?[y.text]:[]).join(""),f=m.flatMap(y=>y.type==="reasoning_delta"?[y.text]:[]).join(""),h=m.flatMap(y=>y.type==="reasoning_block_complete"?[{thinking:y.thinking,signature:y.signature}]:[]);d.messages.push({role:"assistant",content:p,...f?{reasoning_content:f}:{},...h.length?{thinkingBlocks:h}:{}}),d.completedRounds=g.round}return e.store.update(s,i,l.revision,{...l,status:"queued",errorCode:void 0,outcome:void 0,inputs:[...l.inputs??[],c],checkpoint:{...d,messages:[...d.messages,...c.messages]}},{type:"task_status",status:"queued"})},async resume(s,i){await e.authorize(s,"resume");let a=await o(s,i);if(a.status==="queued")return a;if(a.status!=="stopped"||a.errorCode!=="CLOUD_TASK_PAUSED"||a.cancellationRequested||!a.checkpoint||a.checkpoint.phase!=="model_ready"||(a.modelOperations??[]).some(c=>["prepared","responding","unknown"].includes(c.status)))throw Error("CLOUD_TASK_NOT_PAUSED");return e.store.update(s,i,a.revision,{...a,status:"queued",errorCode:void 0},{type:"task_status",status:"queued"})},async completeWait(s,i,a,c){await e.authorize(s,"complete_wait");let l=structuredClone(c),u=await o(s,i);if(Jl(u,a,l))return u;if(!u.status.startsWith("waiting_")||!u.wait||u.wait.descriptor.id!==a)throw Error("CLOUD_TASK_NOT_WAITING");await e.authorizeCompletion(structuredClone(u),a,structuredClone(l));let d=[...u.receipts,{invocation:u.wait.invocation,result:l,wait:structuredClone(u.wait.descriptor)}],g=Ql(u,d);try{return await e.store.update(s,i,u.revision,{...u,status:"queued",checkpoint:g,receipts:d,wait:void 0},{type:"task_status",status:"queued"})}catch(m){let p=await o(s,i);if(Jl(p,a,l))return p;throw m}},async recover(s,i,a=[]){await e.authorize(s,"recover"),await o(s,i);let c=await e.store.interrupt(s,i);if(c.status!=="reconciliation_required"||!e.authorizeRecovery)throw Error("CLOUD_RECONCILIATION_REQUIRED");let l=await e.authorizeRecovery(structuredClone(c),structuredClone(a)),u=structuredClone(c.modelOperations??[]);for(let p of u){if(!["prepared","responding","unknown"].includes(p.status))continue;let f=l?.find(h=>h.requestId===p.requestId);if(!f||f.requestDigest!==p.requestDigest||typeof f.evidenceReference!="string"||!f.evidenceReference.trim())throw Error("CLOUD_MODEL_RECONCILIATION_REQUIRED");if(f.outcome==="rejected"&&f.safeToRetry===!0)p.status="rejected";else if(f.outcome==="completed"&&typeof f.responseId=="string"&&f.responseId.trim()&&Array.isArray(f.response)&&f.response.length&&f.response.some(h=>h?.type==="done"&&typeof h.finishReason=="string"&&h.finishReason)&&!f.response.some(h=>!h||h.type==="error"))p.status="completed",p.responseId=f.responseId,p.response=structuredClone(f.response),p.usage=structuredClone(f.usage),p.finishReason=f.response.findLast(h=>h.type==="done")?.finishReason;else throw Error("CLOUD_MODEL_RECONCILIATION_REQUIRED");p.reconciliationReference=f.evidenceReference}let d=[...c.receipts];for(let p of a){let f=d.find(h=>Wl(h)===Wl(p));if(f&&oe(f)!==oe(p))throw Error("CLOUD_RECEIPT_CONFLICT");f||d.push(structuredClone(p))}let g=Ql(c,d),m=c.cancellationRequested?"cancelled":"queued";return e.store.update(s,i,c.revision,{...c,checkpoint:g,receipts:d,modelOperations:u,status:m,errorCode:void 0},{type:"task_status",status:m})},async execute(s,i,a){await e.authorize(s,"execute"),await o(s,i);let c=await e.store.claim(s,i);if(!c)return;let l=structuredClone(c.task),u=new AbortController,d=a?AbortSignal.any([u.signal,a]):u.signal,g=Hl(s,i);n.set(g,u);let m=!1,p=Promise.resolve(),f=(q,S)=>{let I=p.then(async()=>{if(m)throw Error("CLOUD_TASK_LEASE_LOST");l=await e.store.update(s,i,l.revision,q(l),S,c.leaseId)});return p=I,I},h,y,E,b=async()=>{E!==void 0&&(clearTimeout(E),E=void 0);let q=y;y=void 0,q&&await f(S=>S,q)},$=()=>h??(h=(async()=>{try{!m&&!await e.store.renew(s,i,c.leaseId)&&(m=!0,u.abort())}catch{m=!0,u.abort()}})().finally(()=>{h=void 0})),w=setInterval(()=>{$()},t),F=!1;try{if(!["queued"].includes(l.status)||!oi(s,l.request.context))throw Error("CLOUD_TASK_CLAIM_INVALID");await f(S=>({...S,status:"running"}),{type:"task_status",status:"running"});let q=ni({...e.agent,runtime:{...e.agent.runtime,reviewCompletion:async(S,I)=>{let W=e.resolveGoal?await e.resolveGoal(structuredClone(l)):l.request.goal;if(W&&e.goalFeedback){if(await e.authorize(s,"execute"),!e.verifyGoal)throw Error("CLOUD_GOAL_VERIFIER_REQUIRED");let C;try{C=ti(W,await e.verifyGoal(structuredClone(l)))}catch{throw F=!0,Error("CLOUD_GOAL_VERIFICATION_FAILED")}if(await f(M=>({...M,outcome:C}),{type:"goal_verification",outcome:C}),C.status==="incomplete")return e.goalFeedback(structuredClone(l),C)}return e.agent.runtime?.reviewCompletion?.(S,I)??[]}},onModelOperation:S=>{let{response:I,...W}=S;return b().then(()=>f(C=>{let M=[...C.modelOperations??[]],Z=M.findIndex(re=>re.requestId===S.requestId);return Z<0?M.push(S):M[Z]=S,{...C,modelOperations:M}},{type:"model_operation",operation:W}))},authorize:async(S,I)=>{if(await $(),m)throw Error("CLOUD_TASK_LEASE_LOST");await e.authorize(s,"execute"),await e.agent.authorize(S,I)},checkpoints:{save:S=>f(I=>({...I,checkpoint:S}),{type:"checkpoint",phase:S.phase})},onToolResult:(S,I)=>f(W=>({...W,receipts:[...W.receipts,{invocation:S,result:I}]}),{type:"receipt",callId:S.callId,round:S.round,name:S.name}),onWait:(S,I)=>f(W=>({...W,wait:{invocation:S,descriptor:I}}),{type:"receipt",callId:S.callId,round:S.round,name:S.name})});for await(let S of q.run({...l.request,resume:l.checkpoint?{...l.checkpoint,modelOperations:l.modelOperations}:void 0},d)){if(m||d.aborted)break;if(r&&S.type==="delta"){y=y?{...y,text:y.text+S.text}:S,y.text.length>=r.maxCharacters?await b():E===void 0&&(E=setTimeout(()=>{b().catch(()=>u.abort())},Math.min(r.maxDelayMs,2147483647)));continue}await b();let I=S.type==="error"&&F?{...S,error:"CLOUD_GOAL_VERIFICATION_FAILED",code:"CLOUD_GOAL_VERIFICATION_FAILED"}:S.type==="error"?{...S,error:S.code??"CLOUD_AGENT_FAILED"}:S,W,C=I.type==="end"?e.resolveGoal?await e.resolveGoal(structuredClone(l)):l.request.goal:void 0;if(I.type==="end"&&I.turnStatus!=="stopped"&&C)try{if(!e.verifyGoal)throw Error("CLOUD_GOAL_VERIFIER_REQUIRED");await e.authorize(s,"execute"),W=ti(C,await e.verifyGoal(structuredClone(l)))}catch{I={type:"error",turnId:l.request.turnId,error:"CLOUD_GOAL_VERIFICATION_FAILED",code:"CLOUD_GOAL_VERIFICATION_FAILED"}}let M=W?.status==="incomplete"?"stopped":I.type==="waiting"?`waiting_${I.wait.kind}`:I.type==="end"?I.turnStatus==="stopped"?"stopped":"completed":I.type==="error"?["CLOUD_TOOL_OUTCOME_UNKNOWN","CLOUD_MODEL_RECEIPT_FAILED","CLOUD_GOAL_VERIFICATION_FAILED","CLOUD_DEADLINE_EXCEEDED","MODEL_RECONCILIATION_REQUIRED","CLOUD_MODEL_REPLAY_MISMATCH","PROVIDER_STREAM_ERROR","RETRYABLE_TRANSIENT","LLM_STREAM_TIMEOUT","CLOUD_TOOL_RECEIPT_FAILED","CLOUD_CHECKPOINT_FAILED","CLOUD_RECONCILIATION_REQUIRED","CLOUD_MULTIPLE_WAITS","CLOUD_WAIT_INVALID"].includes(I.code??"")?"reconciliation_required":"failed":l.status;if(await f(Z=>({...Z,status:M,...W?{outcome:W}:{},...I.type==="error"?{errorCode:I.code??"CLOUD_AGENT_FAILED"}:{},...I.type==="end"&&I.stopReason==="paused"?{errorCode:"CLOUD_TASK_PAUSED"}:{}}),I),Py.has(M)||M==="reconciliation_required"||M.startsWith("waiting_"))break}await b(),await p,!m&&l.status==="running"&&await f(S=>({...S,status:"reconciliation_required",errorCode:"CLOUD_WORKER_INTERRUPTED"}),{type:"task_status",status:"reconciliation_required"})}catch{if(u.abort(),await $(),!m)throw Error("CLOUD_TASK_PERSISTENCE_FAILED")}finally{E!==void 0&&clearTimeout(E),clearInterval(w),u.abort(),n.get(g)===u&&n.delete(g),await e.store.release(s,i,c.leaseId)}}}}export{yr as AgentContentBlockValidationError,oe as canonicalCloudValue,ri as completeCloudToolCheckpoint,Oy as corePackageVersion,Ay as createBusinessToolAdapter,ni as createCloudAgent,xy as createCloudTaskRuntime,ei as createEmbeddedAgent,Tn as parseAgentContentBlock,En as prepareSlidingWindowContext};
|