yaml-flow 8.2.4 → 8.3.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/browser/asset-integrity.json +3 -3
- package/browser/board-livecards-client.js +1 -1
- package/browser/board-livecards-localstorage.js +4 -4
- package/browser/live-cards.js +19 -19
- package/cli/{board-live-cards-lib-Iq_XAC09.d.ts → board-live-cards-lib-tjYsPt5U.d.ts} +1 -1
- package/cli/browser-api/board-live-cards-browser-adapter.d.ts +3 -3
- package/cli/browser-api/card-store-browser-api.d.ts +1 -1
- package/cli/browser-api/card-store-browser-api.js +1 -1
- package/cli/{execution-interface-ftO1W7Po.d.ts → execution-interface-CrG5gzAx.d.ts} +116 -2
- package/cli/node/batch-runner-cli.d.ts +3 -0
- package/cli/node/batch-runner-cli.js +2 -1
- package/cli/node/board-live-cards-cli.js +7 -7
- package/cli/node/card-store-cli.js +5 -5
- package/cli/node/chat-store-cli.d.ts +23 -0
- package/cli/node/chat-store-cli.js +8 -0
- package/cli/node/execution-adapter.d.ts +4 -2
- package/cli/node/execution-adapter.js +2 -2
- package/cli/node/fs-board-adapter.d.ts +7 -6
- package/cli/node/fs-board-adapter.js +8 -8
- package/cli/node/source-cli-task-executor.js +4 -4
- package/cli/node/step-machine-cli.js +3 -3
- package/cli/{types--rXGWbSR.d.ts → types-PUfPBxc_.d.ts} +4 -109
- package/examples/board/demo-shell-with-server.html +3 -3
- package/examples/board/doc.html +465 -0
- package/examples/board/server/board-server.js +20 -81
- package/examples/board/server/board-worker/source_def_flows.json +2 -2
- package/examples/board/server/chat-flow/copilot-chat/assistant.js +44 -185
- package/examples/board/server/chat-flow/copilot-chat/copilot_wrapper.bat +157 -0
- package/examples/board/server/chat-flow/copilot-chat/copilot_wrapper_helper.ps1 +190 -0
- package/examples/board/server/chat-flow/flow-steps.json +122 -56
- package/examples/board/test/server-http-test.js +252 -220
- package/examples/board-local/demo-shell-localstorage.html +3 -3
- package/lib/{artifacts-store-lib-public-C5UL5tyG.d.cts → artifacts-store-lib-public-Cz8-kdXG.d.cts} +1 -1
- package/lib/{artifacts-store-lib-public-GD4H-fFp.d.ts → artifacts-store-lib-public-ksGIExhc.d.ts} +1 -1
- package/lib/artifacts-store-public.d.cts +2 -2
- package/lib/artifacts-store-public.d.ts +2 -2
- package/lib/board-live-cards-node.cjs +8 -8
- package/lib/board-live-cards-node.d.cts +26 -6
- package/lib/board-live-cards-node.d.ts +26 -6
- package/lib/board-live-cards-node.js +8 -8
- package/lib/{board-live-cards-public-BLXbcBNk.d.cts → board-live-cards-public-BwZYGAsF.d.cts} +1 -1
- package/lib/{board-live-cards-public-BZaNb2mi.d.ts → board-live-cards-public-DWpZVDXN.d.ts} +1 -1
- package/lib/board-live-cards-public.cjs +2 -2
- package/lib/board-live-cards-public.d.cts +1 -1
- package/lib/board-live-cards-public.d.ts +1 -1
- package/lib/board-live-cards-public.js +2 -2
- package/lib/board-live-cards-server-runtime.cjs +3 -3
- package/lib/board-live-cards-server-runtime.d.cts +3 -2
- package/lib/board-live-cards-server-runtime.d.ts +3 -2
- package/lib/board-live-cards-server-runtime.js +3 -3
- package/lib/board-worker-adapter.cjs +2 -2
- package/lib/board-worker-adapter.js +2 -2
- package/lib/card-store-public.d.cts +1 -1
- package/lib/card-store-public.d.ts +1 -1
- package/lib/chat-storage-lib-BK5Njslc.d.ts +53 -0
- package/lib/chat-storage-lib-C5bQ7bGe.d.cts +53 -0
- package/lib/chat-store-public.cjs +2 -0
- package/lib/chat-store-public.d.cts +128 -0
- package/lib/chat-store-public.d.ts +128 -0
- package/lib/chat-store-public.js +2 -0
- package/lib/execution-refs.d.cts +10 -1
- package/lib/execution-refs.d.ts +10 -1
- package/lib/server-runtime/index.cjs +3 -3
- package/lib/server-runtime/index.d.cts +4 -3
- package/lib/server-runtime/index.d.ts +4 -3
- package/lib/server-runtime/index.js +3 -3
- package/lib/{types-Bztd1KoK.d.cts → types-D9B0Vrwg.d.cts} +4 -53
- package/lib/{types-D-xVWPdY.d.ts → types-DNYhCFNJ.d.ts} +4 -53
- package/package.json +8 -2
- package/examples/board/.board-ws/cards/store/_index.json +0 -17
- package/examples/board/.board-ws/cards/store/card-market-prices.json +0 -80
- package/examples/board/.board-ws/cards/store/card-portfolio-value.json +0 -90
- package/examples/board/.board-ws/cards/store/card-portfolio.json +0 -78
- package/examples/board/server/chat-flow/chat-clear-processing.js +0 -41
- package/examples/board/server/chat-flow/chat-open-turn.js +0 -144
- package/examples/board/server/chat-flow/chat-write-assistant.js +0 -44
- package/examples/board/server/chat-flow/echo-probe/assistant.js +0 -28
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import {spawn,execFile,execFileSync}from'child_process';import*as I from'fs';import {existsSync}from'fs';import*as qn from'os';import*as ue from'path';import {dirname,resolve}from'path';import*as Wo from'net';import {fileURLToPath}from'url';import {createHash,randomUUID}from'crypto';import {createRequire}from'module';import {lockSync}from'proper-lockfile';import Og from'ajv-formats';var Tc=Object.create;var Uo=Object.defineProperty;var Ac=Object.getOwnPropertyDescriptor;var Ic=Object.getOwnPropertyNames;var Pc=Object.getPrototypeOf,Oc=Object.prototype.hasOwnProperty;var x=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var jc=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of Ic(e))!Oc.call(t,s)&&s!==r&&Uo(t,s,{get:()=>e[s],enumerable:!(n=Ac(e,s))||n.enumerable});return t};var Nc=(t,e,r)=>(r=t!=null?Tc(Pc(t)):{},jc(Uo(r,"default",{value:t,enumerable:true}),t));var sr=x(W=>{Object.defineProperty(W,"__esModule",{value:true});W.regexpCode=W.getEsmExportName=W.getProperty=W.safeStringify=W.stringify=W.strConcat=W.addCodeArg=W.str=W._=W.nil=W._Code=W.Name=W.IDENTIFIER=W._CodeOrName=void 0;var rr=class{};W._CodeOrName=rr;W.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var yt=class extends rr{constructor(e){if(super(),!W.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e;}toString(){return this.str}emptyStr(){return false}get names(){return {[this.str]:1}}};W.Name=yt;var Te=class extends rr{constructor(e){super(),this._items=typeof e=="string"?[e]:e;}toString(){return this.str}emptyStr(){if(this._items.length>1)return false;let e=this._items[0];return e===""||e==='""'}get str(){var e;return (e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return (e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof yt&&(r[n.str]=(r[n.str]||0)+1),r),{})}};W._Code=Te;W.nil=new Te("");function pa(t,...e){let r=[t[0]],n=0;for(;n<e.length;)zn(r,e[n]),r.push(t[++n]);return new Te(r)}W._=pa;var Jn=new Te("+");function ma(t,...e){let r=[nr(t[0])],n=0;for(;n<e.length;)r.push(Jn),zn(r,e[n]),r.push(Jn,nr(t[++n]));return ad(r),new Te(r)}W.str=ma;function zn(t,e){e instanceof Te?t.push(...e._items):e instanceof yt?t.push(e):t.push(cd(e));}W.addCodeArg=zn;function ad(t){let e=1;for(;e<t.length-1;){if(t[e]===Jn){let r=id(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+";}e++;}}function id(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof yt||t[t.length-1]!=='"'?void 0:typeof e!="string"?`${t.slice(0,-1)}${e}"`:e[0]==='"'?t.slice(0,-1)+e.slice(1):void 0;if(typeof e=="string"&&e[0]==='"'&&!(t instanceof yt))return `"${t}${e.slice(1)}`}function ud(t,e){return e.emptyStr()?t:t.emptyStr()?e:ma`${t}${e}`}W.strConcat=ud;function cd(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:nr(Array.isArray(t)?t.join(","):t)}function dd(t){return new Te(nr(t))}W.stringify=dd;function nr(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}W.safeStringify=nr;function ld(t){return typeof t=="string"&&W.IDENTIFIER.test(t)?new Te(`.${t}`):pa`[${t}]`}W.getProperty=ld;function fd(t){if(typeof t=="string"&&W.IDENTIFIER.test(t))return new Te(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}W.getEsmExportName=fd;function pd(t){return new Te(t.toString())}W.regexpCode=pd;});var Yn=x(we=>{Object.defineProperty(we,"__esModule",{value:true});we.ValueScope=we.ValueScopeName=we.Scope=we.varKinds=we.UsedValueState=void 0;var ke=sr(),Hn=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value;}},Kr;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed";})(Kr||(we.UsedValueState=Kr={}));we.varKinds={const:new ke.Name("const"),let:new ke.Name("let"),var:new ke.Name("var")};var Ur=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r;}toName(e){return e instanceof ke.Name?e:this.name(e)}name(e){return new ke.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return `${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};we.Scope=Ur;var Jr=class extends ke.Name{constructor(e,r){super(r),this.prefix=e;}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0, ke._)`.${new ke.Name(r)}[${n}]`;}};we.ValueScopeName=Jr;var md=(0, ke._)`\n`,Wn=class extends Ur{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?md:ke.nil};}get(){return this._scope}name(e){return new Jr(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(e),{prefix:o}=s,a=(n=r.key)!==null&&n!==void 0?n:r.ref,i=this._values[o];if(i){let d=i.get(a);if(d)return d}else i=this._values[o]=new Map;i.set(a,s);let u=this._scope[o]||(this._scope[o]=[]),c=u.length;return u[c]=r.ref,s.setValue(r,{property:o,itemIndex:c}),s}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return (0, ke._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(e,r,n={},s){let o=ke.nil;for(let a in e){let i=e[a];if(!i)continue;let u=n[a]=n[a]||new Map;i.forEach(c=>{if(u.has(c))return;u.set(c,Kr.Started);let d=r(c);if(d){let l=this.opts.es5?we.varKinds.var:we.varKinds.const;o=(0, ke._)`${o}${l} ${c} = ${d};${this.opts._n}`;}else if(d=s?.(c))o=(0, ke._)`${o}${d}${this.opts._n}`;else throw new Hn(c);u.set(c,Kr.Completed);});}return o}};we.ValueScope=Wn;});var B=x(V=>{Object.defineProperty(V,"__esModule",{value:true});V.or=V.and=V.not=V.CodeGen=V.operators=V.varKinds=V.ValueScopeName=V.ValueScope=V.Scope=V.Name=V.regexpCode=V.stringify=V.getProperty=V.nil=V.strConcat=V.str=V._=void 0;var J=sr(),Oe=Yn(),tt=sr();Object.defineProperty(V,"_",{enumerable:true,get:function(){return tt._}});Object.defineProperty(V,"str",{enumerable:true,get:function(){return tt.str}});Object.defineProperty(V,"strConcat",{enumerable:true,get:function(){return tt.strConcat}});Object.defineProperty(V,"nil",{enumerable:true,get:function(){return tt.nil}});Object.defineProperty(V,"getProperty",{enumerable:true,get:function(){return tt.getProperty}});Object.defineProperty(V,"stringify",{enumerable:true,get:function(){return tt.stringify}});Object.defineProperty(V,"regexpCode",{enumerable:true,get:function(){return tt.regexpCode}});Object.defineProperty(V,"Name",{enumerable:true,get:function(){return tt.Name}});var Yr=Yn();Object.defineProperty(V,"Scope",{enumerable:true,get:function(){return Yr.Scope}});Object.defineProperty(V,"ValueScope",{enumerable:true,get:function(){return Yr.ValueScope}});Object.defineProperty(V,"ValueScopeName",{enumerable:true,get:function(){return Yr.ValueScopeName}});Object.defineProperty(V,"varKinds",{enumerable:true,get:function(){return Yr.varKinds}});V.operators={GT:new J._Code(">"),GTE:new J._Code(">="),LT:new J._Code("<"),LTE:new J._Code("<="),EQ:new J._Code("==="),NEQ:new J._Code("!=="),NOT:new J._Code("!"),OR:new J._Code("||"),AND:new J._Code("&&"),ADD:new J._Code("+")};var Ke=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},Xn=class extends Ke{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n;}render({es5:e,_n:r}){let n=e?Oe.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return `${n} ${this.name}${s};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=qt(this.rhs,e,r)),this}get names(){return this.rhs instanceof J._CodeOrName?this.rhs.names:{}}},zr=class extends Ke{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n;}render({_n:e}){return `${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof J.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=qt(this.rhs,e,r),this}get names(){let e=this.lhs instanceof J.Name?{}:{...this.lhs.names};return Wr(e,this.rhs)}},Qn=class extends zr{constructor(e,r,n,s){super(e,n,s),this.op=r;}render({_n:e}){return `${this.lhs} ${this.op}= ${this.rhs};`+e}},Zn=class extends Ke{constructor(e){super(),this.label=e,this.names={};}render({_n:e}){return `${this.label}:`+e}},es=class extends Ke{constructor(e){super(),this.label=e,this.names={};}render({_n:e}){return `break${this.label?` ${this.label}`:""};`+e}},ts=class extends Ke{constructor(e){super(),this.error=e;}render({_n:e}){return `throw ${this.error};`+e}get names(){return this.error.names}},rs=class extends Ke{constructor(e){super(),this.code=e;}render({_n:e}){return `${this.code};`+e}optimizeNodes(){return `${this.code}`?this:void 0}optimizeNames(e,r){return this.code=qt(this.code,e,r),this}get names(){return this.code instanceof J._CodeOrName?this.code.names:{}}},or=class extends Ke{constructor(e=[]){super(),this.nodes=e;}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1);}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,s=n.length;for(;s--;){let o=n[s];o.optimizeNames(e,r)||(gd(e,o.names),n.splice(s,1));}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>kt(e,r.names),{})}},Ue=class extends or{render(e){return "{"+e._n+super.render(e)+"}"+e._n}},ns=class extends or{},Nt=class extends Ue{};Nt.kind="else";var vt=class t extends Ue{constructor(e,r){super(r),this.condition=e;}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===true)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new Nt(n):n;}if(r)return e===false?r instanceof t?r:r.nodes:this.nodes.length?this:new t(ga(e),r instanceof t?[r]:r.nodes);if(!(e===false||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=qt(this.condition,e,r),this}get names(){let e=super.names;return Wr(e,this.condition),this.else&&kt(e,this.else.names),e}};vt.kind="if";var bt=class extends Ue{};bt.kind="for";var ss=class extends bt{constructor(e){super(),this.iteration=e;}render(e){return `for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=qt(this.iteration,e,r),this}get names(){return kt(super.names,this.iteration.names)}},os=class extends bt{constructor(e,r,n,s){super(),this.varKind=e,this.name=r,this.from=n,this.to=s;}render(e){let r=e.es5?Oe.varKinds.var:this.varKind,{name:n,from:s,to:o}=this;return `for(${r} ${n}=${s}; ${n}<${o}; ${n}++)`+super.render(e)}get names(){let e=Wr(super.names,this.from);return Wr(e,this.to)}},Hr=class extends bt{constructor(e,r,n,s){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=s;}render(e){return `for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=qt(this.iterable,e,r),this}get names(){return kt(super.names,this.iterable.names)}},ar=class extends Ue{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n;}render(e){return `${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};ar.kind="func";var ir=class extends or{render(e){return "return "+super.render(e)}};ir.kind="return";var as=class extends Ue{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,s;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(s=this.finally)===null||s===void 0||s.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&kt(e,this.catch.names),this.finally&&kt(e,this.finally.names),e}},ur=class extends Ue{constructor(e){super(),this.error=e;}render(e){return `catch(${this.error})`+super.render(e)}};ur.kind="catch";var cr=class extends Ue{render(e){return "finally"+super.render(e)}};cr.kind="finally";var is=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
3
|
-
`:""},this._extScope=e,this._scope=new Oe.Scope({parent:e}),this._nodes=[new ns];}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return (this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,s){let o=this._scope.toName(r);return n!==void 0&&s&&(this._constants[o.str]=n),this._leafNode(new Xn(e,o,n)),o}const(e,r,n){return this._def(Oe.varKinds.const,e,r,n)}let(e,r,n){return this._def(Oe.varKinds.let,e,r,n)}var(e,r,n){return this._def(Oe.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new zr(e,r,n))}add(e,r){return this._leafNode(new Qn(e,V.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==J.nil&&this._leafNode(new rs(e)),this}object(...e){let r=["{"];for(let[n,s]of e)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0, J.addCodeArg)(r,s));return r.push("}"),new J._Code(r)}if(e,r,n){if(this._blockNode(new vt(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new vt(e))}else(){return this._elseNode(new Nt)}endIf(){return this._endBlockNode(vt,Nt)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new ss(e),r)}forRange(e,r,n,s,o=this.opts.es5?Oe.varKinds.var:Oe.varKinds.let){let a=this._scope.toName(e);return this._for(new os(o,a,r,n),()=>s(a))}forOf(e,r,n,s=Oe.varKinds.const){let o=this._scope.toName(e);if(this.opts.es5){let a=r instanceof J.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0, J._)`${a}.length`,i=>{this.var(o,(0, J._)`${a}[${i}]`),n(o);})}return this._for(new Hr("of",s,o,r),()=>n(o))}forIn(e,r,n,s=this.opts.es5?Oe.varKinds.var:Oe.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0, J._)`Object.keys(${r})`,n);let o=this._scope.toName(e);return this._for(new Hr("in",s,o,r),()=>n(o))}endFor(){return this._endBlockNode(bt)}label(e){return this._leafNode(new Zn(e))}break(e){return this._leafNode(new es(e))}return(e){let r=new ir;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(ir)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new as;if(this._blockNode(s),this.code(e),r){let o=this.name("e");this._currNode=s.catch=new ur(o),r(o);}return n&&(this._currNode=s.finally=new cr,this.code(n)),this._endBlockNode(ur,cr)}throw(e){return this._leafNode(new ts(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=J.nil,n,s){return this._blockNode(new ar(e,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(ar)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants);}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e);}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof vt))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e;}};V.CodeGen=is;function kt(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Wr(t,e){return e instanceof J._CodeOrName?kt(t,e.names):t}function qt(t,e,r){if(t instanceof J.Name)return n(t);if(!s(t))return t;return new J._Code(t._items.reduce((o,a)=>(a instanceof J.Name&&(a=n(a)),a instanceof J._Code?o.push(...a._items):o.push(a),o),[]));function n(o){let a=r[o.str];return a===void 0||e[o.str]!==1?o:(delete e[o.str],a)}function s(o){return o instanceof J._Code&&o._items.some(a=>a instanceof J.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function gd(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0);}function ga(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0, J._)`!${us(t)}`}V.not=ga;var hd=ha(V.operators.AND);function yd(...t){return t.reduce(hd)}V.and=yd;var vd=ha(V.operators.OR);function bd(...t){return t.reduce(vd)}V.or=bd;function ha(t){return (e,r)=>e===J.nil?r:r===J.nil?e:(0, J._)`${us(e)} ${t} ${us(r)}`}function us(t){return t instanceof J.Name?t:(0, J._)`(${t})`}});var z=x(G=>{Object.defineProperty(G,"__esModule",{value:true});G.checkStrictMode=G.getErrorPath=G.Type=G.useFunc=G.setEvaluated=G.evaluatedPropsToName=G.mergeEvaluated=G.eachItem=G.unescapeJsonPointer=G.escapeJsonPointer=G.escapeFragment=G.unescapeFragment=G.schemaRefOrVal=G.schemaHasRulesButRef=G.schemaHasRules=G.checkUnknownRules=G.alwaysValidSchema=G.toHash=void 0;var Q=B(),kd=sr();function wd(t){let e={};for(let r of t)e[r]=true;return e}G.toHash=wd;function Sd(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?true:(ba(t,e),!ka(e,t.self.RULES.all))}G.alwaysValidSchema=Sd;function ba(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let s=n.RULES.keywords;for(let o in e)s[o]||_a(t,`unknown keyword: "${o}"`);}G.checkUnknownRules=ba;function ka(t,e){if(typeof t=="boolean")return !t;for(let r in t)if(e[r])return true;return false}G.schemaHasRules=ka;function _d(t,e){if(typeof t=="boolean")return !t;for(let r in t)if(r!=="$ref"&&e.all[r])return true;return false}G.schemaHasRulesButRef=_d;function Rd({topSchemaRef:t,schemaPath:e},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return (0, Q._)`${r}`}return (0, Q._)`${t}${e}${(0, Q.getProperty)(n)}`}G.schemaRefOrVal=Rd;function Cd(t){return wa(decodeURIComponent(t))}G.unescapeFragment=Cd;function $d(t){return encodeURIComponent(ds(t))}G.escapeFragment=$d;function ds(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}G.escapeJsonPointer=ds;function wa(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}G.unescapeJsonPointer=wa;function Ed(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t);}G.eachItem=Ed;function ya({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return (s,o,a,i)=>{let u=a===void 0?o:a instanceof Q.Name?(o instanceof Q.Name?t(s,o,a):e(s,o,a),a):o instanceof Q.Name?(e(s,a,o),o):r(o,a);return i===Q.Name&&!(u instanceof Q.Name)?n(s,u):u}}G.mergeEvaluated={props:ya({mergeNames:(t,e,r)=>t.if((0, Q._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0, Q._)`${e} === true`,()=>t.assign(r,true),()=>t.assign(r,(0, Q._)`${r} || {}`).code((0, Q._)`Object.assign(${r}, ${e})`));}),mergeToName:(t,e,r)=>t.if((0, Q._)`${r} !== true`,()=>{e===true?t.assign(r,true):(t.assign(r,(0, Q._)`${r} || {}`),ls(t,r,e));}),mergeValues:(t,e)=>t===true?true:{...t,...e},resultToName:Sa}),items:ya({mergeNames:(t,e,r)=>t.if((0, Q._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0, Q._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0, Q._)`${r} !== true`,()=>t.assign(r,e===true?true:(0, Q._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===true?true:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function Sa(t,e){if(e===true)return t.var("props",true);let r=t.var("props",(0, Q._)`{}`);return e!==void 0&&ls(t,r,e),r}G.evaluatedPropsToName=Sa;function ls(t,e,r){Object.keys(r).forEach(n=>t.assign((0, Q._)`${e}${(0, Q.getProperty)(n)}`,true));}G.setEvaluated=ls;var va={};function xd(t,e){return t.scopeValue("func",{ref:e,code:va[e.code]||(va[e.code]=new kd._Code(e.code))})}G.useFunc=xd;var cs;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str";})(cs||(G.Type=cs={}));function Td(t,e,r){if(t instanceof Q.Name){let n=e===cs.Num;return r?n?(0, Q._)`"[" + ${t} + "]"`:(0, Q._)`"['" + ${t} + "']"`:n?(0, Q._)`"/" + ${t}`:(0, Q._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0, Q.getProperty)(t).toString():"/"+ds(t)}G.getErrorPath=Td;function _a(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===true)throw new Error(e);t.self.logger.warn(e);}}G.checkStrictMode=_a;});var Je=x(fs=>{Object.defineProperty(fs,"__esModule",{value:true});var fe=B(),Ad={data:new fe.Name("data"),valCxt:new fe.Name("valCxt"),instancePath:new fe.Name("instancePath"),parentData:new fe.Name("parentData"),parentDataProperty:new fe.Name("parentDataProperty"),rootData:new fe.Name("rootData"),dynamicAnchors:new fe.Name("dynamicAnchors"),vErrors:new fe.Name("vErrors"),errors:new fe.Name("errors"),this:new fe.Name("this"),self:new fe.Name("self"),scope:new fe.Name("scope"),json:new fe.Name("json"),jsonPos:new fe.Name("jsonPos"),jsonLen:new fe.Name("jsonLen"),jsonPart:new fe.Name("jsonPart")};fs.default=Ad;});var dr=x(pe=>{Object.defineProperty(pe,"__esModule",{value:true});pe.extendErrors=pe.resetErrorsCount=pe.reportExtraError=pe.reportError=pe.keyword$DataError=pe.keywordError=void 0;var H=B(),Xr=z(),ye=Je();pe.keywordError={message:({keyword:t})=>(0, H.str)`must pass "${t}" keyword validation`};pe.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0, H.str)`"${t}" keyword must be ${e} ($data)`:(0, H.str)`"${t}" keyword is invalid ($data)`};function Id(t,e=pe.keywordError,r,n){let{it:s}=t,{gen:o,compositeRule:a,allErrors:i}=s,u=$a(t,e,r);n??(a||i)?Ra(o,u):Ca(s,(0, H._)`[${u}]`);}pe.reportError=Id;function Pd(t,e=pe.keywordError,r){let{it:n}=t,{gen:s,compositeRule:o,allErrors:a}=n,i=$a(t,e,r);Ra(s,i),o||a||Ca(n,ye.default.vErrors);}pe.reportExtraError=Pd;function Od(t,e){t.assign(ye.default.errors,e),t.if((0, H._)`${ye.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0, H._)`${ye.default.vErrors}.length`,e),()=>t.assign(ye.default.vErrors,null)));}pe.resetErrorsCount=Od;function jd({gen:t,keyword:e,schemaValue:r,data:n,errsCount:s,it:o}){if(s===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",s,ye.default.errors,i=>{t.const(a,(0, H._)`${ye.default.vErrors}[${i}]`),t.if((0, H._)`${a}.instancePath === undefined`,()=>t.assign((0, H._)`${a}.instancePath`,(0, H.strConcat)(ye.default.instancePath,o.errorPath))),t.assign((0, H._)`${a}.schemaPath`,(0, H.str)`${o.errSchemaPath}/${e}`),o.opts.verbose&&(t.assign((0, H._)`${a}.schema`,r),t.assign((0, H._)`${a}.data`,n));});}pe.extendErrors=jd;function Ra(t,e){let r=t.const("err",e);t.if((0, H._)`${ye.default.vErrors} === null`,()=>t.assign(ye.default.vErrors,(0, H._)`[${r}]`),(0, H._)`${ye.default.vErrors}.push(${r})`),t.code((0, H._)`${ye.default.errors}++`);}function Ca(t,e){let{gen:r,validateName:n,schemaEnv:s}=t;s.$async?r.throw((0, H._)`new ${t.ValidationError}(${e})`):(r.assign((0, H._)`${n}.errors`,e),r.return(false));}var wt={keyword:new H.Name("keyword"),schemaPath:new H.Name("schemaPath"),params:new H.Name("params"),propertyName:new H.Name("propertyName"),message:new H.Name("message"),schema:new H.Name("schema"),parentSchema:new H.Name("parentSchema")};function $a(t,e,r){let{createErrors:n}=t.it;return n===false?(0, H._)`{}`:Nd(t,e,r)}function Nd(t,e,r={}){let{gen:n,it:s}=t,o=[qd(s,r),Dd(t,r)];return Fd(t,e,o),n.object(...o)}function qd({errorPath:t},{instancePath:e}){let r=e?(0, H.str)`${t}${(0, Xr.getErrorPath)(e,Xr.Type.Str)}`:t;return [ye.default.instancePath,(0, H.strConcat)(ye.default.instancePath,r)]}function Dd({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let s=n?e:(0, H.str)`${e}/${t}`;return r&&(s=(0, H.str)`${s}${(0, Xr.getErrorPath)(r,Xr.Type.Str)}`),[wt.schemaPath,s]}function Fd(t,{params:e,message:r},n){let{keyword:s,data:o,schemaValue:a,it:i}=t,{opts:u,propertyName:c,topSchemaRef:d,schemaPath:l}=i;n.push([wt.keyword,s],[wt.params,typeof e=="function"?e(t):e||(0, H._)`{}`]),u.messages&&n.push([wt.message,typeof r=="function"?r(t):r]),u.verbose&&n.push([wt.schema,a],[wt.parentSchema,(0, H._)`${d}${l}`],[ye.default.data,o]),c&&n.push([wt.propertyName,c]);}});var xa=x(Dt=>{Object.defineProperty(Dt,"__esModule",{value:true});Dt.boolOrEmptySchema=Dt.topBoolOrEmptySchema=void 0;var Md=dr(),Ld=B(),Vd=Je(),Bd={message:"boolean schema is false"};function Gd(t){let{gen:e,schema:r,validateName:n}=t;r===false?Ea(t,false):typeof r=="object"&&r.$async===true?e.return(Vd.default.data):(e.assign((0, Ld._)`${n}.errors`,null),e.return(true));}Dt.topBoolOrEmptySchema=Gd;function Kd(t,e){let{gen:r,schema:n}=t;n===false?(r.var(e,false),Ea(t)):r.var(e,true);}Dt.boolOrEmptySchema=Kd;function Ea(t,e){let{gen:r,data:n}=t,s={gen:r,keyword:"false schema",data:n,schema:false,schemaCode:false,schemaValue:false,params:{},it:t};(0, Md.reportError)(s,Bd,void 0,e);}});var ps=x(Ft=>{Object.defineProperty(Ft,"__esModule",{value:true});Ft.getRules=Ft.isJSONType=void 0;var Ud=["string","number","integer","boolean","null","object","array"],Jd=new Set(Ud);function zd(t){return typeof t=="string"&&Jd.has(t)}Ft.isJSONType=zd;function Hd(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return {types:{...t,integer:true,boolean:true,null:true},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}Ft.getRules=Hd;});var ms=x(rt=>{Object.defineProperty(rt,"__esModule",{value:true});rt.shouldUseRule=rt.shouldUseGroup=rt.schemaHasRulesForType=void 0;function Wd({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==true&&Ta(t,n)}rt.schemaHasRulesForType=Wd;function Ta(t,e){return e.rules.some(r=>Aa(t,r))}rt.shouldUseGroup=Ta;function Aa(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}rt.shouldUseRule=Aa;});var lr=x(me=>{Object.defineProperty(me,"__esModule",{value:true});me.reportTypeError=me.checkDataTypes=me.checkDataType=me.coerceAndCheckDataType=me.getJSONTypes=me.getSchemaTypes=me.DataType=void 0;var Yd=ps(),Xd=ms(),Qd=dr(),L=B(),Ia=z(),Mt;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong";})(Mt||(me.DataType=Mt={}));function Zd(t){let e=Pa(t.type);if(e.includes("null")){if(t.nullable===false)throw new Error("type: null contradicts nullable: false")}else {if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===true&&e.push("null");}return e}me.getSchemaTypes=Zd;function Pa(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(Yd.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}me.getJSONTypes=Pa;function el(t,e){let{gen:r,data:n,opts:s}=t,o=tl(e,s.coerceTypes),a=e.length>0&&!(o.length===0&&e.length===1&&(0, Xd.schemaHasRulesForType)(t,e[0]));if(a){let i=hs(e,n,s.strictNumbers,Mt.Wrong);r.if(i,()=>{o.length?rl(t,e,o):ys(t);});}return a}me.coerceAndCheckDataType=el;var Oa=new Set(["string","number","integer","boolean","null"]);function tl(t,e){return e?t.filter(r=>Oa.has(r)||e==="array"&&r==="array"):[]}function rl(t,e,r){let{gen:n,data:s,opts:o}=t,a=n.let("dataType",(0, L._)`typeof ${s}`),i=n.let("coerced",(0, L._)`undefined`);o.coerceTypes==="array"&&n.if((0, L._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0, L._)`${s}[0]`).assign(a,(0, L._)`typeof ${s}`).if(hs(e,s,o.strictNumbers),()=>n.assign(i,s))),n.if((0, L._)`${i} !== undefined`);for(let c of r)(Oa.has(c)||c==="array"&&o.coerceTypes==="array")&&u(c);n.else(),ys(t),n.endIf(),n.if((0, L._)`${i} !== undefined`,()=>{n.assign(s,i),nl(t,i);});function u(c){switch(c){case "string":n.elseIf((0, L._)`${a} == "number" || ${a} == "boolean"`).assign(i,(0, L._)`"" + ${s}`).elseIf((0, L._)`${s} === null`).assign(i,(0, L._)`""`);return;case "number":n.elseIf((0, L._)`${a} == "boolean" || ${s} === null
|
|
2
|
+
import {spawn,execFile,execFileSync}from'child_process';import*as I from'fs';import {existsSync}from'fs';import*as Fn from'os';import*as ue from'path';import {dirname,resolve}from'path';import*as Xo from'net';import {fileURLToPath}from'url';import {createHash,randomUUID}from'crypto';import {createRequire}from'module';import {lockSync}from'proper-lockfile';import Lg from'ajv-formats';var Pc=Object.create;var zo=Object.defineProperty;var Oc=Object.getOwnPropertyDescriptor;var jc=Object.getOwnPropertyNames;var Nc=Object.getPrototypeOf,qc=Object.prototype.hasOwnProperty;var x=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var Dc=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of jc(e))!qc.call(t,s)&&s!==r&&zo(t,s,{get:()=>e[s],enumerable:!(n=Oc(e,s))||n.enumerable});return t};var Fc=(t,e,r)=>(r=t!=null?Pc(Nc(t)):{},Dc(zo(r,"default",{value:t,enumerable:true}),t));var or=x(W=>{Object.defineProperty(W,"__esModule",{value:true});W.regexpCode=W.getEsmExportName=W.getProperty=W.safeStringify=W.stringify=W.strConcat=W.addCodeArg=W.str=W._=W.nil=W._Code=W.Name=W.IDENTIFIER=W._CodeOrName=void 0;var nr=class{};W._CodeOrName=nr;W.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var kt=class extends nr{constructor(e){if(super(),!W.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e;}toString(){return this.str}emptyStr(){return false}get names(){return {[this.str]:1}}};W.Name=kt;var Ae=class extends nr{constructor(e){super(),this._items=typeof e=="string"?[e]:e;}toString(){return this.str}emptyStr(){if(this._items.length>1)return false;let e=this._items[0];return e===""||e==='""'}get str(){var e;return (e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return (e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof kt&&(r[n.str]=(r[n.str]||0)+1),r),{})}};W._Code=Ae;W.nil=new Ae("");function ga(t,...e){let r=[t[0]],n=0;for(;n<e.length;)Wn(r,e[n]),r.push(t[++n]);return new Ae(r)}W._=ga;var Hn=new Ae("+");function ha(t,...e){let r=[sr(t[0])],n=0;for(;n<e.length;)r.push(Hn),Wn(r,e[n]),r.push(Hn,sr(t[++n]));return pd(r),new Ae(r)}W.str=ha;function Wn(t,e){e instanceof Ae?t.push(...e._items):e instanceof kt?t.push(e):t.push(hd(e));}W.addCodeArg=Wn;function pd(t){let e=1;for(;e<t.length-1;){if(t[e]===Hn){let r=md(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+";}e++;}}function md(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof kt||t[t.length-1]!=='"'?void 0:typeof e!="string"?`${t.slice(0,-1)}${e}"`:e[0]==='"'?t.slice(0,-1)+e.slice(1):void 0;if(typeof e=="string"&&e[0]==='"'&&!(t instanceof kt))return `"${t}${e.slice(1)}`}function gd(t,e){return e.emptyStr()?t:t.emptyStr()?e:ha`${t}${e}`}W.strConcat=gd;function hd(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:sr(Array.isArray(t)?t.join(","):t)}function yd(t){return new Ae(sr(t))}W.stringify=yd;function sr(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}W.safeStringify=sr;function vd(t){return typeof t=="string"&&W.IDENTIFIER.test(t)?new Ae(`.${t}`):ga`[${t}]`}W.getProperty=vd;function kd(t){if(typeof t=="string"&&W.IDENTIFIER.test(t))return new Ae(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}W.getEsmExportName=kd;function bd(t){return new Ae(t.toString())}W.regexpCode=bd;});var Qn=x(be=>{Object.defineProperty(be,"__esModule",{value:true});be.ValueScope=be.ValueScopeName=be.Scope=be.varKinds=be.UsedValueState=void 0;var ke=or(),Yn=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value;}},Jr;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed";})(Jr||(be.UsedValueState=Jr={}));be.varKinds={const:new ke.Name("const"),let:new ke.Name("let"),var:new ke.Name("var")};var zr=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r;}toName(e){return e instanceof ke.Name?e:this.name(e)}name(e){return new ke.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return `${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};be.Scope=zr;var Hr=class extends ke.Name{constructor(e,r){super(r),this.prefix=e;}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0, ke._)`.${new ke.Name(r)}[${n}]`;}};be.ValueScopeName=Hr;var wd=(0, ke._)`\n`,Xn=class extends zr{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?wd:ke.nil};}get(){return this._scope}name(e){return new Hr(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(e),{prefix:o}=s,a=(n=r.key)!==null&&n!==void 0?n:r.ref,i=this._values[o];if(i){let d=i.get(a);if(d)return d}else i=this._values[o]=new Map;i.set(a,s);let u=this._scope[o]||(this._scope[o]=[]),c=u.length;return u[c]=r.ref,s.setValue(r,{property:o,itemIndex:c}),s}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return (0, ke._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(e,r,n={},s){let o=ke.nil;for(let a in e){let i=e[a];if(!i)continue;let u=n[a]=n[a]||new Map;i.forEach(c=>{if(u.has(c))return;u.set(c,Jr.Started);let d=r(c);if(d){let l=this.opts.es5?be.varKinds.var:be.varKinds.const;o=(0, ke._)`${o}${l} ${c} = ${d};${this.opts._n}`;}else if(d=s?.(c))o=(0, ke._)`${o}${d}${this.opts._n}`;else throw new Yn(c);u.set(c,Jr.Completed);});}return o}};be.ValueScope=Xn;});var B=x(V=>{Object.defineProperty(V,"__esModule",{value:true});V.or=V.and=V.not=V.CodeGen=V.operators=V.varKinds=V.ValueScopeName=V.ValueScope=V.Scope=V.Name=V.regexpCode=V.stringify=V.getProperty=V.nil=V.strConcat=V.str=V._=void 0;var J=or(),Ne=Qn(),rt=or();Object.defineProperty(V,"_",{enumerable:true,get:function(){return rt._}});Object.defineProperty(V,"str",{enumerable:true,get:function(){return rt.str}});Object.defineProperty(V,"strConcat",{enumerable:true,get:function(){return rt.strConcat}});Object.defineProperty(V,"nil",{enumerable:true,get:function(){return rt.nil}});Object.defineProperty(V,"getProperty",{enumerable:true,get:function(){return rt.getProperty}});Object.defineProperty(V,"stringify",{enumerable:true,get:function(){return rt.stringify}});Object.defineProperty(V,"regexpCode",{enumerable:true,get:function(){return rt.regexpCode}});Object.defineProperty(V,"Name",{enumerable:true,get:function(){return rt.Name}});var Qr=Qn();Object.defineProperty(V,"Scope",{enumerable:true,get:function(){return Qr.Scope}});Object.defineProperty(V,"ValueScope",{enumerable:true,get:function(){return Qr.ValueScope}});Object.defineProperty(V,"ValueScopeName",{enumerable:true,get:function(){return Qr.ValueScopeName}});Object.defineProperty(V,"varKinds",{enumerable:true,get:function(){return Qr.varKinds}});V.operators={GT:new J._Code(">"),GTE:new J._Code(">="),LT:new J._Code("<"),LTE:new J._Code("<="),EQ:new J._Code("==="),NEQ:new J._Code("!=="),NOT:new J._Code("!"),OR:new J._Code("||"),AND:new J._Code("&&"),ADD:new J._Code("+")};var Ke=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},Zn=class extends Ke{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n;}render({es5:e,_n:r}){let n=e?Ne.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return `${n} ${this.name}${s};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=Mt(this.rhs,e,r)),this}get names(){return this.rhs instanceof J._CodeOrName?this.rhs.names:{}}},Wr=class extends Ke{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n;}render({_n:e}){return `${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof J.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=Mt(this.rhs,e,r),this}get names(){let e=this.lhs instanceof J.Name?{}:{...this.lhs.names};return Xr(e,this.rhs)}},es=class extends Wr{constructor(e,r,n,s){super(e,n,s),this.op=r;}render({_n:e}){return `${this.lhs} ${this.op}= ${this.rhs};`+e}},ts=class extends Ke{constructor(e){super(),this.label=e,this.names={};}render({_n:e}){return `${this.label}:`+e}},rs=class extends Ke{constructor(e){super(),this.label=e,this.names={};}render({_n:e}){return `break${this.label?` ${this.label}`:""};`+e}},ns=class extends Ke{constructor(e){super(),this.error=e;}render({_n:e}){return `throw ${this.error};`+e}get names(){return this.error.names}},ss=class extends Ke{constructor(e){super(),this.code=e;}render({_n:e}){return `${this.code};`+e}optimizeNodes(){return `${this.code}`?this:void 0}optimizeNames(e,r){return this.code=Mt(this.code,e,r),this}get names(){return this.code instanceof J._CodeOrName?this.code.names:{}}},ar=class extends Ke{constructor(e=[]){super(),this.nodes=e;}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1);}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,s=n.length;for(;s--;){let o=n[s];o.optimizeNames(e,r)||(Sd(e,o.names),n.splice(s,1));}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>St(e,r.names),{})}},Ue=class extends ar{render(e){return "{"+e._n+super.render(e)+"}"+e._n}},os=class extends ar{},Ft=class extends Ue{};Ft.kind="else";var bt=class t extends Ue{constructor(e,r){super(r),this.condition=e;}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===true)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new Ft(n):n;}if(r)return e===false?r instanceof t?r:r.nodes:this.nodes.length?this:new t(ya(e),r instanceof t?[r]:r.nodes);if(!(e===false||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=Mt(this.condition,e,r),this}get names(){let e=super.names;return Xr(e,this.condition),this.else&&St(e,this.else.names),e}};bt.kind="if";var wt=class extends Ue{};wt.kind="for";var as=class extends wt{constructor(e){super(),this.iteration=e;}render(e){return `for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=Mt(this.iteration,e,r),this}get names(){return St(super.names,this.iteration.names)}},is=class extends wt{constructor(e,r,n,s){super(),this.varKind=e,this.name=r,this.from=n,this.to=s;}render(e){let r=e.es5?Ne.varKinds.var:this.varKind,{name:n,from:s,to:o}=this;return `for(${r} ${n}=${s}; ${n}<${o}; ${n}++)`+super.render(e)}get names(){let e=Xr(super.names,this.from);return Xr(e,this.to)}},Yr=class extends wt{constructor(e,r,n,s){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=s;}render(e){return `for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=Mt(this.iterable,e,r),this}get names(){return St(super.names,this.iterable.names)}},ir=class extends Ue{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n;}render(e){return `${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};ir.kind="func";var ur=class extends ar{render(e){return "return "+super.render(e)}};ur.kind="return";var us=class extends Ue{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,s;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(s=this.finally)===null||s===void 0||s.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&St(e,this.catch.names),this.finally&&St(e,this.finally.names),e}},cr=class extends Ue{constructor(e){super(),this.error=e;}render(e){return `catch(${this.error})`+super.render(e)}};cr.kind="catch";var dr=class extends Ue{render(e){return "finally"+super.render(e)}};dr.kind="finally";var cs=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
3
|
+
`:""},this._extScope=e,this._scope=new Ne.Scope({parent:e}),this._nodes=[new os];}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return (this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,s){let o=this._scope.toName(r);return n!==void 0&&s&&(this._constants[o.str]=n),this._leafNode(new Zn(e,o,n)),o}const(e,r,n){return this._def(Ne.varKinds.const,e,r,n)}let(e,r,n){return this._def(Ne.varKinds.let,e,r,n)}var(e,r,n){return this._def(Ne.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new Wr(e,r,n))}add(e,r){return this._leafNode(new es(e,V.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==J.nil&&this._leafNode(new ss(e)),this}object(...e){let r=["{"];for(let[n,s]of e)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0, J.addCodeArg)(r,s));return r.push("}"),new J._Code(r)}if(e,r,n){if(this._blockNode(new bt(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new bt(e))}else(){return this._elseNode(new Ft)}endIf(){return this._endBlockNode(bt,Ft)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new as(e),r)}forRange(e,r,n,s,o=this.opts.es5?Ne.varKinds.var:Ne.varKinds.let){let a=this._scope.toName(e);return this._for(new is(o,a,r,n),()=>s(a))}forOf(e,r,n,s=Ne.varKinds.const){let o=this._scope.toName(e);if(this.opts.es5){let a=r instanceof J.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0, J._)`${a}.length`,i=>{this.var(o,(0, J._)`${a}[${i}]`),n(o);})}return this._for(new Yr("of",s,o,r),()=>n(o))}forIn(e,r,n,s=this.opts.es5?Ne.varKinds.var:Ne.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0, J._)`Object.keys(${r})`,n);let o=this._scope.toName(e);return this._for(new Yr("in",s,o,r),()=>n(o))}endFor(){return this._endBlockNode(wt)}label(e){return this._leafNode(new ts(e))}break(e){return this._leafNode(new rs(e))}return(e){let r=new ur;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(ur)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new us;if(this._blockNode(s),this.code(e),r){let o=this.name("e");this._currNode=s.catch=new cr(o),r(o);}return n&&(this._currNode=s.finally=new dr,this.code(n)),this._endBlockNode(cr,dr)}throw(e){return this._leafNode(new ns(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=J.nil,n,s){return this._blockNode(new ir(e,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(ir)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants);}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e);}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof bt))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e;}};V.CodeGen=cs;function St(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Xr(t,e){return e instanceof J._CodeOrName?St(t,e.names):t}function Mt(t,e,r){if(t instanceof J.Name)return n(t);if(!s(t))return t;return new J._Code(t._items.reduce((o,a)=>(a instanceof J.Name&&(a=n(a)),a instanceof J._Code?o.push(...a._items):o.push(a),o),[]));function n(o){let a=r[o.str];return a===void 0||e[o.str]!==1?o:(delete e[o.str],a)}function s(o){return o instanceof J._Code&&o._items.some(a=>a instanceof J.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function Sd(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0);}function ya(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0, J._)`!${ds(t)}`}V.not=ya;var _d=va(V.operators.AND);function Rd(...t){return t.reduce(_d)}V.and=Rd;var Cd=va(V.operators.OR);function $d(...t){return t.reduce(Cd)}V.or=$d;function va(t){return (e,r)=>e===J.nil?r:r===J.nil?e:(0, J._)`${ds(e)} ${t} ${ds(r)}`}function ds(t){return t instanceof J.Name?t:(0, J._)`(${t})`}});var z=x(G=>{Object.defineProperty(G,"__esModule",{value:true});G.checkStrictMode=G.getErrorPath=G.Type=G.useFunc=G.setEvaluated=G.evaluatedPropsToName=G.mergeEvaluated=G.eachItem=G.unescapeJsonPointer=G.escapeJsonPointer=G.escapeFragment=G.unescapeFragment=G.schemaRefOrVal=G.schemaHasRulesButRef=G.schemaHasRules=G.checkUnknownRules=G.alwaysValidSchema=G.toHash=void 0;var Q=B(),Ed=or();function xd(t){let e={};for(let r of t)e[r]=true;return e}G.toHash=xd;function Td(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?true:(wa(t,e),!Sa(e,t.self.RULES.all))}G.alwaysValidSchema=Td;function wa(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let s=n.RULES.keywords;for(let o in e)s[o]||Ca(t,`unknown keyword: "${o}"`);}G.checkUnknownRules=wa;function Sa(t,e){if(typeof t=="boolean")return !t;for(let r in t)if(e[r])return true;return false}G.schemaHasRules=Sa;function Ad(t,e){if(typeof t=="boolean")return !t;for(let r in t)if(r!=="$ref"&&e.all[r])return true;return false}G.schemaHasRulesButRef=Ad;function Id({topSchemaRef:t,schemaPath:e},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return (0, Q._)`${r}`}return (0, Q._)`${t}${e}${(0, Q.getProperty)(n)}`}G.schemaRefOrVal=Id;function Pd(t){return _a(decodeURIComponent(t))}G.unescapeFragment=Pd;function Od(t){return encodeURIComponent(fs(t))}G.escapeFragment=Od;function fs(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}G.escapeJsonPointer=fs;function _a(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}G.unescapeJsonPointer=_a;function jd(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t);}G.eachItem=jd;function ka({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return (s,o,a,i)=>{let u=a===void 0?o:a instanceof Q.Name?(o instanceof Q.Name?t(s,o,a):e(s,o,a),a):o instanceof Q.Name?(e(s,a,o),o):r(o,a);return i===Q.Name&&!(u instanceof Q.Name)?n(s,u):u}}G.mergeEvaluated={props:ka({mergeNames:(t,e,r)=>t.if((0, Q._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0, Q._)`${e} === true`,()=>t.assign(r,true),()=>t.assign(r,(0, Q._)`${r} || {}`).code((0, Q._)`Object.assign(${r}, ${e})`));}),mergeToName:(t,e,r)=>t.if((0, Q._)`${r} !== true`,()=>{e===true?t.assign(r,true):(t.assign(r,(0, Q._)`${r} || {}`),ps(t,r,e));}),mergeValues:(t,e)=>t===true?true:{...t,...e},resultToName:Ra}),items:ka({mergeNames:(t,e,r)=>t.if((0, Q._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0, Q._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0, Q._)`${r} !== true`,()=>t.assign(r,e===true?true:(0, Q._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===true?true:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function Ra(t,e){if(e===true)return t.var("props",true);let r=t.var("props",(0, Q._)`{}`);return e!==void 0&&ps(t,r,e),r}G.evaluatedPropsToName=Ra;function ps(t,e,r){Object.keys(r).forEach(n=>t.assign((0, Q._)`${e}${(0, Q.getProperty)(n)}`,true));}G.setEvaluated=ps;var ba={};function Nd(t,e){return t.scopeValue("func",{ref:e,code:ba[e.code]||(ba[e.code]=new Ed._Code(e.code))})}G.useFunc=Nd;var ls;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str";})(ls||(G.Type=ls={}));function qd(t,e,r){if(t instanceof Q.Name){let n=e===ls.Num;return r?n?(0, Q._)`"[" + ${t} + "]"`:(0, Q._)`"['" + ${t} + "']"`:n?(0, Q._)`"/" + ${t}`:(0, Q._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0, Q.getProperty)(t).toString():"/"+fs(t)}G.getErrorPath=qd;function Ca(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===true)throw new Error(e);t.self.logger.warn(e);}}G.checkStrictMode=Ca;});var Je=x(ms=>{Object.defineProperty(ms,"__esModule",{value:true});var fe=B(),Dd={data:new fe.Name("data"),valCxt:new fe.Name("valCxt"),instancePath:new fe.Name("instancePath"),parentData:new fe.Name("parentData"),parentDataProperty:new fe.Name("parentDataProperty"),rootData:new fe.Name("rootData"),dynamicAnchors:new fe.Name("dynamicAnchors"),vErrors:new fe.Name("vErrors"),errors:new fe.Name("errors"),this:new fe.Name("this"),self:new fe.Name("self"),scope:new fe.Name("scope"),json:new fe.Name("json"),jsonPos:new fe.Name("jsonPos"),jsonLen:new fe.Name("jsonLen"),jsonPart:new fe.Name("jsonPart")};ms.default=Dd;});var lr=x(pe=>{Object.defineProperty(pe,"__esModule",{value:true});pe.extendErrors=pe.resetErrorsCount=pe.reportExtraError=pe.reportError=pe.keyword$DataError=pe.keywordError=void 0;var H=B(),Zr=z(),ye=Je();pe.keywordError={message:({keyword:t})=>(0, H.str)`must pass "${t}" keyword validation`};pe.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0, H.str)`"${t}" keyword must be ${e} ($data)`:(0, H.str)`"${t}" keyword is invalid ($data)`};function Fd(t,e=pe.keywordError,r,n){let{it:s}=t,{gen:o,compositeRule:a,allErrors:i}=s,u=xa(t,e,r);n??(a||i)?$a(o,u):Ea(s,(0, H._)`[${u}]`);}pe.reportError=Fd;function Md(t,e=pe.keywordError,r){let{it:n}=t,{gen:s,compositeRule:o,allErrors:a}=n,i=xa(t,e,r);$a(s,i),o||a||Ea(n,ye.default.vErrors);}pe.reportExtraError=Md;function Ld(t,e){t.assign(ye.default.errors,e),t.if((0, H._)`${ye.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0, H._)`${ye.default.vErrors}.length`,e),()=>t.assign(ye.default.vErrors,null)));}pe.resetErrorsCount=Ld;function Vd({gen:t,keyword:e,schemaValue:r,data:n,errsCount:s,it:o}){if(s===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",s,ye.default.errors,i=>{t.const(a,(0, H._)`${ye.default.vErrors}[${i}]`),t.if((0, H._)`${a}.instancePath === undefined`,()=>t.assign((0, H._)`${a}.instancePath`,(0, H.strConcat)(ye.default.instancePath,o.errorPath))),t.assign((0, H._)`${a}.schemaPath`,(0, H.str)`${o.errSchemaPath}/${e}`),o.opts.verbose&&(t.assign((0, H._)`${a}.schema`,r),t.assign((0, H._)`${a}.data`,n));});}pe.extendErrors=Vd;function $a(t,e){let r=t.const("err",e);t.if((0, H._)`${ye.default.vErrors} === null`,()=>t.assign(ye.default.vErrors,(0, H._)`[${r}]`),(0, H._)`${ye.default.vErrors}.push(${r})`),t.code((0, H._)`${ye.default.errors}++`);}function Ea(t,e){let{gen:r,validateName:n,schemaEnv:s}=t;s.$async?r.throw((0, H._)`new ${t.ValidationError}(${e})`):(r.assign((0, H._)`${n}.errors`,e),r.return(false));}var _t={keyword:new H.Name("keyword"),schemaPath:new H.Name("schemaPath"),params:new H.Name("params"),propertyName:new H.Name("propertyName"),message:new H.Name("message"),schema:new H.Name("schema"),parentSchema:new H.Name("parentSchema")};function xa(t,e,r){let{createErrors:n}=t.it;return n===false?(0, H._)`{}`:Bd(t,e,r)}function Bd(t,e,r={}){let{gen:n,it:s}=t,o=[Gd(s,r),Kd(t,r)];return Ud(t,e,o),n.object(...o)}function Gd({errorPath:t},{instancePath:e}){let r=e?(0, H.str)`${t}${(0, Zr.getErrorPath)(e,Zr.Type.Str)}`:t;return [ye.default.instancePath,(0, H.strConcat)(ye.default.instancePath,r)]}function Kd({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let s=n?e:(0, H.str)`${e}/${t}`;return r&&(s=(0, H.str)`${s}${(0, Zr.getErrorPath)(r,Zr.Type.Str)}`),[_t.schemaPath,s]}function Ud(t,{params:e,message:r},n){let{keyword:s,data:o,schemaValue:a,it:i}=t,{opts:u,propertyName:c,topSchemaRef:d,schemaPath:l}=i;n.push([_t.keyword,s],[_t.params,typeof e=="function"?e(t):e||(0, H._)`{}`]),u.messages&&n.push([_t.message,typeof r=="function"?r(t):r]),u.verbose&&n.push([_t.schema,a],[_t.parentSchema,(0, H._)`${d}${l}`],[ye.default.data,o]),c&&n.push([_t.propertyName,c]);}});var Aa=x(Lt=>{Object.defineProperty(Lt,"__esModule",{value:true});Lt.boolOrEmptySchema=Lt.topBoolOrEmptySchema=void 0;var Jd=lr(),zd=B(),Hd=Je(),Wd={message:"boolean schema is false"};function Yd(t){let{gen:e,schema:r,validateName:n}=t;r===false?Ta(t,false):typeof r=="object"&&r.$async===true?e.return(Hd.default.data):(e.assign((0, zd._)`${n}.errors`,null),e.return(true));}Lt.topBoolOrEmptySchema=Yd;function Xd(t,e){let{gen:r,schema:n}=t;n===false?(r.var(e,false),Ta(t)):r.var(e,true);}Lt.boolOrEmptySchema=Xd;function Ta(t,e){let{gen:r,data:n}=t,s={gen:r,keyword:"false schema",data:n,schema:false,schemaCode:false,schemaValue:false,params:{},it:t};(0, Jd.reportError)(s,Wd,void 0,e);}});var gs=x(Vt=>{Object.defineProperty(Vt,"__esModule",{value:true});Vt.getRules=Vt.isJSONType=void 0;var Qd=["string","number","integer","boolean","null","object","array"],Zd=new Set(Qd);function el(t){return typeof t=="string"&&Zd.has(t)}Vt.isJSONType=el;function tl(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return {types:{...t,integer:true,boolean:true,null:true},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}Vt.getRules=tl;});var hs=x(nt=>{Object.defineProperty(nt,"__esModule",{value:true});nt.shouldUseRule=nt.shouldUseGroup=nt.schemaHasRulesForType=void 0;function rl({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==true&&Ia(t,n)}nt.schemaHasRulesForType=rl;function Ia(t,e){return e.rules.some(r=>Pa(t,r))}nt.shouldUseGroup=Ia;function Pa(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}nt.shouldUseRule=Pa;});var fr=x(me=>{Object.defineProperty(me,"__esModule",{value:true});me.reportTypeError=me.checkDataTypes=me.checkDataType=me.coerceAndCheckDataType=me.getJSONTypes=me.getSchemaTypes=me.DataType=void 0;var nl=gs(),sl=hs(),ol=lr(),L=B(),Oa=z(),Bt;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong";})(Bt||(me.DataType=Bt={}));function al(t){let e=ja(t.type);if(e.includes("null")){if(t.nullable===false)throw new Error("type: null contradicts nullable: false")}else {if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===true&&e.push("null");}return e}me.getSchemaTypes=al;function ja(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(nl.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}me.getJSONTypes=ja;function il(t,e){let{gen:r,data:n,opts:s}=t,o=ul(e,s.coerceTypes),a=e.length>0&&!(o.length===0&&e.length===1&&(0, sl.schemaHasRulesForType)(t,e[0]));if(a){let i=vs(e,n,s.strictNumbers,Bt.Wrong);r.if(i,()=>{o.length?cl(t,e,o):ks(t);});}return a}me.coerceAndCheckDataType=il;var Na=new Set(["string","number","integer","boolean","null"]);function ul(t,e){return e?t.filter(r=>Na.has(r)||e==="array"&&r==="array"):[]}function cl(t,e,r){let{gen:n,data:s,opts:o}=t,a=n.let("dataType",(0, L._)`typeof ${s}`),i=n.let("coerced",(0, L._)`undefined`);o.coerceTypes==="array"&&n.if((0, L._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0, L._)`${s}[0]`).assign(a,(0, L._)`typeof ${s}`).if(vs(e,s,o.strictNumbers),()=>n.assign(i,s))),n.if((0, L._)`${i} !== undefined`);for(let c of r)(Na.has(c)||c==="array"&&o.coerceTypes==="array")&&u(c);n.else(),ks(t),n.endIf(),n.if((0, L._)`${i} !== undefined`,()=>{n.assign(s,i),dl(t,i);});function u(c){switch(c){case "string":n.elseIf((0, L._)`${a} == "number" || ${a} == "boolean"`).assign(i,(0, L._)`"" + ${s}`).elseIf((0, L._)`${s} === null`).assign(i,(0, L._)`""`);return;case "number":n.elseIf((0, L._)`${a} == "boolean" || ${s} === null
|
|
4
4
|
|| (${a} == "string" && ${s} && ${s} == +${s})`).assign(i,(0, L._)`+${s}`);return;case "integer":n.elseIf((0, L._)`${a} === "boolean" || ${s} === null
|
|
5
5
|
|| (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(i,(0, L._)`+${s}`);return;case "boolean":n.elseIf((0, L._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(i,false).elseIf((0, L._)`${s} === "true" || ${s} === 1`).assign(i,true);return;case "null":n.elseIf((0, L._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(i,null);return;case "array":n.elseIf((0, L._)`${a} === "string" || ${a} === "number"
|
|
6
|
-
|| ${a} === "boolean" || ${s} === null`).assign(i,(0, L._)`[${s}]`);}}}function nl({gen:t,parentData:e,parentDataProperty:r},n){t.if((0, L._)`${e} !== undefined`,()=>t.assign((0, L._)`${e}[${r}]`,n));}function gs(t,e,r,n=Mt.Correct){let s=n===Mt.Correct?L.operators.EQ:L.operators.NEQ,o;switch(t){case "null":return (0, L._)`${e} ${s} null`;case "array":o=(0, L._)`Array.isArray(${e})`;break;case "object":o=(0, L._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case "integer":o=a((0, L._)`!(${e} % 1) && !isNaN(${e})`);break;case "number":o=a();break;default:return (0, L._)`typeof ${e} ${s} ${t}`}return n===Mt.Correct?o:(0, L.not)(o);function a(i=L.nil){return (0, L.and)((0, L._)`typeof ${e} == "number"`,i,r?(0, L._)`isFinite(${e})`:L.nil)}}me.checkDataType=gs;function hs(t,e,r,n){if(t.length===1)return gs(t[0],e,r,n);let s,o=(0, Ia.toHash)(t);if(o.array&&o.object){let a=(0, L._)`typeof ${e} != "object"`;s=o.null?a:(0, L._)`!${e} || ${a}`,delete o.null,delete o.array,delete o.object;}else s=L.nil;o.number&&delete o.integer;for(let a in o)s=(0, L.and)(s,gs(a,e,r,n));return s}me.checkDataTypes=hs;var sl={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0, L._)`{type: ${t}}`:(0, L._)`{type: ${e}}`};function ys(t){let e=ol(t);(0, Qd.reportError)(e,sl);}me.reportTypeError=ys;function ol(t){let{gen:e,data:r,schema:n}=t,s=(0, Ia.schemaRefOrVal)(t,n,"type");return {gen:e,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:t}}});var Na=x(Qr=>{Object.defineProperty(Qr,"__esModule",{value:true});Qr.assignDefaults=void 0;var Lt=B(),al=z();function il(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let s in r)ja(t,s,r[s].default);else e==="array"&&Array.isArray(n)&&n.forEach((s,o)=>ja(t,o,s.default));}Qr.assignDefaults=il;function ja(t,e,r){let{gen:n,compositeRule:s,data:o,opts:a}=t;if(r===void 0)return;let i=(0, Lt._)`${o}${(0, Lt.getProperty)(e)}`;if(s){(0, al.checkStrictMode)(t,`default is ignored for: ${i}`);return}let u=(0, Lt._)`${i} === undefined`;a.useDefaults==="empty"&&(u=(0, Lt._)`${u} || ${i} === null || ${i} === ""`),n.if(u,(0, Lt._)`${i} = ${(0, Lt.stringify)(r)}`);}});var Ae=x(Y=>{Object.defineProperty(Y,"__esModule",{value:true});Y.validateUnion=Y.validateArray=Y.usePattern=Y.callValidateCode=Y.schemaProperties=Y.allSchemaProperties=Y.noPropertyInData=Y.propertyInData=Y.isOwnProperty=Y.hasPropFunc=Y.reportMissingProp=Y.checkMissingProp=Y.checkReportMissingProp=void 0;var re=B(),vs=z(),nt=Je(),ul=z();function cl(t,e){let{gen:r,data:n,it:s}=t;r.if(ks(r,n,e,s.opts.ownProperties),()=>{t.setParams({missingProperty:(0, re._)`${e}`},true),t.error();});}Y.checkReportMissingProp=cl;function dl({gen:t,data:e,it:{opts:r}},n,s){return (0, re.or)(...n.map(o=>(0, re.and)(ks(t,e,o,r.ownProperties),(0, re._)`${s} = ${o}`)))}Y.checkMissingProp=dl;function ll(t,e){t.setParams({missingProperty:e},true),t.error();}Y.reportMissingProp=ll;function qa(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0, re._)`Object.prototype.hasOwnProperty`})}Y.hasPropFunc=qa;function bs(t,e,r){return (0, re._)`${qa(t)}.call(${e}, ${r})`}Y.isOwnProperty=bs;function fl(t,e,r,n){let s=(0, re._)`${e}${(0, re.getProperty)(r)} !== undefined`;return n?(0, re._)`${s} && ${bs(t,e,r)}`:s}Y.propertyInData=fl;function ks(t,e,r,n){let s=(0, re._)`${e}${(0, re.getProperty)(r)} === undefined`;return n?(0, re.or)(s,(0, re.not)(bs(t,e,r))):s}Y.noPropertyInData=ks;function Da(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}Y.allSchemaProperties=Da;function pl(t,e){return Da(e).filter(r=>!(0, vs.alwaysValidSchema)(t,e[r]))}Y.schemaProperties=pl;function ml({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:o},it:a},i,u,c){let d=c?(0, re._)`${t}, ${e}, ${n}${s}`:e,l=[[nt.default.instancePath,(0, re.strConcat)(nt.default.instancePath,o)],[nt.default.parentData,a.parentData],[nt.default.parentDataProperty,a.parentDataProperty],[nt.default.rootData,nt.default.rootData]];a.opts.dynamicRef&&l.push([nt.default.dynamicAnchors,nt.default.dynamicAnchors]);let b=(0, re._)`${d}, ${r.object(...l)}`;return u!==re.nil?(0, re._)`${i}.call(${u}, ${b})`:(0, re._)`${i}(${b})`}Y.callValidateCode=ml;var gl=(0, re._)`new RegExp`;function hl({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:s}=e.code,o=s(r,n);return t.scopeValue("pattern",{key:o.toString(),ref:o,code:(0, re._)`${s.code==="new RegExp"?gl:(0, ul.useFunc)(t,s)}(${r}, ${n})`})}Y.usePattern=hl;function yl(t){let{gen:e,data:r,keyword:n,it:s}=t,o=e.name("valid");if(s.allErrors){let i=e.let("valid",true);return a(()=>e.assign(i,false)),i}return e.var(o,true),a(()=>e.break()),o;function a(i){let u=e.const("len",(0, re._)`${r}.length`);e.forRange("i",0,u,c=>{t.subschema({keyword:n,dataProp:c,dataPropType:vs.Type.Num},o),e.if((0, re.not)(o),i);});}}Y.validateArray=yl;function vl(t){let{gen:e,schema:r,keyword:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(u=>(0, vs.alwaysValidSchema)(s,u))&&!s.opts.unevaluated)return;let a=e.let("valid",false),i=e.name("_valid");e.block(()=>r.forEach((u,c)=>{let d=t.subschema({keyword:n,schemaProp:c,compositeRule:true},i);e.assign(a,(0, re._)`${a} || ${i}`),t.mergeValidEvaluated(d,i)||e.if((0, re.not)(a));})),t.result(a,()=>t.reset(),()=>t.error(true));}Y.validateUnion=vl;});var La=x(Me=>{Object.defineProperty(Me,"__esModule",{value:true});Me.validateKeywordUsage=Me.validSchemaType=Me.funcKeywordCode=Me.macroKeywordCode=void 0;var ve=B(),St=Je(),bl=Ae(),kl=dr();function wl(t,e){let{gen:r,keyword:n,schema:s,parentSchema:o,it:a}=t,i=e.macro.call(a.self,s,o,a),u=Ma(r,n,i);a.opts.validateSchema!==false&&a.self.validateSchema(i,true);let c=r.name("valid");t.subschema({schema:i,schemaPath:ve.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:u,compositeRule:true},c),t.pass(c,()=>t.error(true));}Me.macroKeywordCode=wl;function Sl(t,e){var r;let{gen:n,keyword:s,schema:o,parentSchema:a,$data:i,it:u}=t;Rl(u,e);let c=!i&&e.compile?e.compile.call(u.self,o,a,u):e.validate,d=Ma(n,s,c),l=n.let("valid");t.block$data(l,b),t.ok((r=e.valid)!==null&&r!==void 0?r:l);function b(){if(e.errors===false)p(),e.modifying&&Fa(t),k(()=>t.error());else {let g=e.async?v():m();e.modifying&&Fa(t),k(()=>_l(t,g));}}function v(){let g=n.let("ruleErrs",null);return n.try(()=>p((0, ve._)`await `),f=>n.assign(l,false).if((0, ve._)`${f} instanceof ${u.ValidationError}`,()=>n.assign(g,(0, ve._)`${f}.errors`),()=>n.throw(f))),g}function m(){let g=(0, ve._)`${d}.errors`;return n.assign(g,null),p(ve.nil),g}function p(g=e.async?(0, ve._)`await `:ve.nil){let f=u.opts.passContext?St.default.this:St.default.self,y=!("compile"in e&&!i||e.schema===false);n.assign(l,(0, ve._)`${g}${(0, bl.callValidateCode)(t,d,f,y)}`,e.modifying);}function k(g){var f;n.if((0, ve.not)((f=e.valid)!==null&&f!==void 0?f:l),g);}}Me.funcKeywordCode=Sl;function Fa(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0, ve._)`${n.parentData}[${n.parentDataProperty}]`));}function _l(t,e){let{gen:r}=t;r.if((0, ve._)`Array.isArray(${e})`,()=>{r.assign(St.default.vErrors,(0, ve._)`${St.default.vErrors} === null ? ${e} : ${St.default.vErrors}.concat(${e})`).assign(St.default.errors,(0, ve._)`${St.default.vErrors}.length`),(0, kl.extendErrors)(t);},()=>t.error());}function Rl({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Ma(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0, ve.stringify)(r)})}function Cl(t,e,r=false){return !e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}Me.validSchemaType=Cl;function $l({schema:t,opts:e,self:r,errSchemaPath:n},s,o){if(Array.isArray(s.keyword)?!s.keyword.includes(o):s.keyword!==o)throw new Error("ajv implementation error");let a=s.dependencies;if(a?.some(i=>!Object.prototype.hasOwnProperty.call(t,i)))throw new Error(`parent schema must have dependencies of ${o}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(t[o])){let u=`keyword "${o}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(u);else throw new Error(u)}}Me.validateKeywordUsage=$l;});var Ba=x(st=>{Object.defineProperty(st,"__esModule",{value:true});st.extendSubschemaMode=st.extendSubschemaData=st.getSubschema=void 0;var Le=B(),Va=z();function El(t,{keyword:e,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:o,topSchemaRef:a}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let i=t.schema[e];return r===void 0?{schema:i,schemaPath:(0, Le._)`${t.schemaPath}${(0, Le.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:i[r],schemaPath:(0, Le._)`${t.schemaPath}${(0, Le.getProperty)(e)}${(0, Le.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0, Va.escapeFragment)(r)}`}}if(n!==void 0){if(s===void 0||o===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return {schema:n,schemaPath:s,topSchemaRef:a,errSchemaPath:o}}throw new Error('either "keyword" or "schema" must be passed')}st.getSubschema=El;function xl(t,e,{dataProp:r,dataPropType:n,data:s,dataTypes:o,propertyName:a}){if(s!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:i}=e;if(r!==void 0){let{errorPath:c,dataPathArr:d,opts:l}=e,b=i.let("data",(0, Le._)`${e.data}${(0, Le.getProperty)(r)}`,true);u(b),t.errorPath=(0, Le.str)`${c}${(0, Va.getErrorPath)(r,n,l.jsPropertySyntax)}`,t.parentDataProperty=(0, Le._)`${r}`,t.dataPathArr=[...d,t.parentDataProperty];}if(s!==void 0){let c=s instanceof Le.Name?s:i.let("data",s,true);u(c),a!==void 0&&(t.propertyName=a);}o&&(t.dataTypes=o);function u(c){t.data=c,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,c];}}st.extendSubschemaData=xl;function Tl(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:o}){n!==void 0&&(t.compositeRule=n),s!==void 0&&(t.createErrors=s),o!==void 0&&(t.allErrors=o),t.jtdDiscriminator=e,t.jtdMetadata=r;}st.extendSubschemaMode=Tl;});var ws=x((py,Ga)=>{Ga.exports=function t(e,r){if(e===r)return true;if(e&&r&&typeof e=="object"&&typeof r=="object"){if(e.constructor!==r.constructor)return false;var n,s,o;if(Array.isArray(e)){if(n=e.length,n!=r.length)return false;for(s=n;s--!==0;)if(!t(e[s],r[s]))return false;return true}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(o=Object.keys(e),n=o.length,n!==Object.keys(r).length)return false;for(s=n;s--!==0;)if(!Object.prototype.hasOwnProperty.call(r,o[s]))return false;for(s=n;s--!==0;){var a=o[s];if(!t(e[a],r[a]))return false}return true}return e!==e&&r!==r};});var Ua=x((my,Ka)=>{var ot=Ka.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};Zr(e,n,s,t,"",t);};ot.keywords={additionalItems:true,items:true,contains:true,additionalProperties:true,propertyNames:true,not:true,if:true,then:true,else:true};ot.arrayKeywords={items:true,allOf:true,anyOf:true,oneOf:true};ot.propsKeywords={$defs:true,definitions:true,properties:true,patternProperties:true,dependencies:true};ot.skipKeywords={default:true,enum:true,const:true,required:true,maximum:true,minimum:true,exclusiveMaximum:true,exclusiveMinimum:true,multipleOf:true,maxLength:true,minLength:true,pattern:true,format:true,maxItems:true,minItems:true,uniqueItems:true,maxProperties:true,minProperties:true};function Zr(t,e,r,n,s,o,a,i,u,c){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,s,o,a,i,u,c);for(var d in n){var l=n[d];if(Array.isArray(l)){if(d in ot.arrayKeywords)for(var b=0;b<l.length;b++)Zr(t,e,r,l[b],s+"/"+d+"/"+b,o,s,d,n,b);}else if(d in ot.propsKeywords){if(l&&typeof l=="object")for(var v in l)Zr(t,e,r,l[v],s+"/"+d+"/"+Al(v),o,s,d,n,v);}else (d in ot.keywords||t.allKeys&&!(d in ot.skipKeywords))&&Zr(t,e,r,l,s+"/"+d,o,s,d,n);}r(n,s,o,a,i,u,c);}}function Al(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var fr=x(Se=>{Object.defineProperty(Se,"__esModule",{value:true});Se.getSchemaRefs=Se.resolveUrl=Se.normalizeId=Se._getFullPath=Se.getFullPath=Se.inlineRef=void 0;var Il=z(),Pl=ws(),Ol=Ua(),jl=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function Nl(t,e=true){return typeof t=="boolean"?true:e===true?!Ss(t):e?Ja(t)<=e:false}Se.inlineRef=Nl;var ql=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Ss(t){for(let e in t){if(ql.has(e))return true;let r=t[e];if(Array.isArray(r)&&r.some(Ss)||typeof r=="object"&&Ss(r))return true}return false}function Ja(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!jl.has(r)&&(typeof t[r]=="object"&&(0, Il.eachItem)(t[r],n=>e+=Ja(n)),e===1/0))return 1/0}return e}function za(t,e="",r){r!==false&&(e=Vt(e));let n=t.parse(e);return Ha(t,n)}Se.getFullPath=za;function Ha(t,e){return t.serialize(e).split("#")[0]+"#"}Se._getFullPath=Ha;var Dl=/#\/?$/;function Vt(t){return t?t.replace(Dl,""):""}Se.normalizeId=Vt;function Fl(t,e,r){return r=Vt(r),t.resolve(e,r)}Se.resolveUrl=Fl;var Ml=/^[a-z_][-a-z0-9._]*$/i;function Ll(t,e){if(typeof t=="boolean")return {};let{schemaId:r,uriResolver:n}=this.opts,s=Vt(t[r]||e),o={"":s},a=za(n,s,false),i={},u=new Set;return Ol(t,{allKeys:true},(l,b,v,m)=>{if(m===void 0)return;let p=a+b,k=o[m];typeof l[r]=="string"&&(k=g.call(this,l[r])),f.call(this,l.$anchor),f.call(this,l.$dynamicAnchor),o[b]=k;function g(y){let _=this.opts.uriResolver.resolve;if(y=Vt(k?_(k,y):y),u.has(y))throw d(y);u.add(y);let w=this.refs[y];return typeof w=="string"&&(w=this.refs[w]),typeof w=="object"?c(l,w.schema,y):y!==Vt(p)&&(y[0]==="#"?(c(l,i[y],y),i[y]=l):this.refs[y]=p),y}function f(y){if(typeof y=="string"){if(!Ml.test(y))throw new Error(`invalid anchor "${y}"`);g.call(this,`#${y}`);}}}),i;function c(l,b,v){if(b!==void 0&&!Pl(l,b))throw d(v)}function d(l){return new Error(`reference "${l}" resolves to more than one schema`)}}Se.getSchemaRefs=Ll;});var gr=x(at=>{Object.defineProperty(at,"__esModule",{value:true});at.getData=at.KeywordCxt=at.validateFunctionCode=void 0;var Za=xa(),Wa=lr(),Rs=ms(),en=lr(),Vl=Na(),mr=La(),_s=Ba(),A=B(),O=Je(),Bl=fr(),ze=z(),pr=dr();function Gl(t){if(ri(t)&&(ni(t),ti(t))){Jl(t);return}ei(t,()=>(0, Za.topBoolOrEmptySchema)(t));}at.validateFunctionCode=Gl;function ei({gen:t,validateName:e,schema:r,schemaEnv:n,opts:s},o){s.code.es5?t.func(e,(0, A._)`${O.default.data}, ${O.default.valCxt}`,n.$async,()=>{t.code((0, A._)`"use strict"; ${Ya(r,s)}`),Ul(t,s),t.code(o);}):t.func(e,(0, A._)`${O.default.data}, ${Kl(s)}`,n.$async,()=>t.code(Ya(r,s)).code(o));}function Kl(t){return (0, A._)`{${O.default.instancePath}="", ${O.default.parentData}, ${O.default.parentDataProperty}, ${O.default.rootData}=${O.default.data}${t.dynamicRef?(0, A._)`, ${O.default.dynamicAnchors}={}`:A.nil}}={}`}function Ul(t,e){t.if(O.default.valCxt,()=>{t.var(O.default.instancePath,(0, A._)`${O.default.valCxt}.${O.default.instancePath}`),t.var(O.default.parentData,(0, A._)`${O.default.valCxt}.${O.default.parentData}`),t.var(O.default.parentDataProperty,(0, A._)`${O.default.valCxt}.${O.default.parentDataProperty}`),t.var(O.default.rootData,(0, A._)`${O.default.valCxt}.${O.default.rootData}`),e.dynamicRef&&t.var(O.default.dynamicAnchors,(0, A._)`${O.default.valCxt}.${O.default.dynamicAnchors}`);},()=>{t.var(O.default.instancePath,(0, A._)`""`),t.var(O.default.parentData,(0, A._)`undefined`),t.var(O.default.parentDataProperty,(0, A._)`undefined`),t.var(O.default.rootData,O.default.data),e.dynamicRef&&t.var(O.default.dynamicAnchors,(0, A._)`{}`);});}function Jl(t){let{schema:e,opts:r,gen:n}=t;ei(t,()=>{r.$comment&&e.$comment&&oi(t),Xl(t),n.let(O.default.vErrors,null),n.let(O.default.errors,0),r.unevaluated&&zl(t),si(t),ef(t);});}function zl(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0, A._)`${r}.evaluated`),e.if((0, A._)`${t.evaluated}.dynamicProps`,()=>e.assign((0, A._)`${t.evaluated}.props`,(0, A._)`undefined`)),e.if((0, A._)`${t.evaluated}.dynamicItems`,()=>e.assign((0, A._)`${t.evaluated}.items`,(0, A._)`undefined`));}function Ya(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0, A._)`/*# sourceURL=${r} */`:A.nil}function Hl(t,e){if(ri(t)&&(ni(t),ti(t))){Wl(t,e);return}(0, Za.boolOrEmptySchema)(t,e);}function ti({schema:t,self:e}){if(typeof t=="boolean")return !t;for(let r in t)if(e.RULES.all[r])return true;return false}function ri(t){return typeof t.schema!="boolean"}function Wl(t,e){let{schema:r,gen:n,opts:s}=t;s.$comment&&r.$comment&&oi(t),Ql(t),Zl(t);let o=n.const("_errs",O.default.errors);si(t,o),n.var(e,(0, A._)`${o} === ${O.default.errors}`);}function ni(t){(0, ze.checkUnknownRules)(t),Yl(t);}function si(t,e){if(t.opts.jtd)return Xa(t,[],false,e);let r=(0, Wa.getSchemaTypes)(t.schema),n=(0, Wa.coerceAndCheckDataType)(t,r);Xa(t,r,!n,e);}function Yl(t){let{schema:e,errSchemaPath:r,opts:n,self:s}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0, ze.schemaHasRulesButRef)(e,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`);}function Xl(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0, ze.checkStrictMode)(t,"default is ignored in the schema root");}function Ql(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0, Bl.resolveUrl)(t.opts.uriResolver,t.baseId,e));}function Zl(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function oi({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:s}){let o=r.$comment;if(s.$comment===true)t.code((0, A._)`${O.default.self}.logger.log(${o})`);else if(typeof s.$comment=="function"){let a=(0, A.str)`${n}/$comment`,i=t.scopeValue("root",{ref:e.root});t.code((0, A._)`${O.default.self}.opts.$comment(${o}, ${a}, ${i}.schema)`);}}function ef(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:s,opts:o}=t;r.$async?e.if((0, A._)`${O.default.errors} === 0`,()=>e.return(O.default.data),()=>e.throw((0, A._)`new ${s}(${O.default.vErrors})`)):(e.assign((0, A._)`${n}.errors`,O.default.vErrors),o.unevaluated&&tf(t),e.return((0, A._)`${O.default.errors} === 0`));}function tf({gen:t,evaluated:e,props:r,items:n}){r instanceof A.Name&&t.assign((0, A._)`${e}.props`,r),n instanceof A.Name&&t.assign((0, A._)`${e}.items`,n);}function Xa(t,e,r,n){let{gen:s,schema:o,data:a,allErrors:i,opts:u,self:c}=t,{RULES:d}=c;if(o.$ref&&(u.ignoreKeywordsWithRef||!(0, ze.schemaHasRulesButRef)(o,d))){s.block(()=>ii(t,"$ref",d.all.$ref.definition));return}u.jtd||rf(t,e),s.block(()=>{for(let b of d.rules)l(b);l(d.post);});function l(b){(0, Rs.shouldUseGroup)(o,b)&&(b.type?(s.if((0, en.checkDataType)(b.type,a,u.strictNumbers)),Qa(t,b),e.length===1&&e[0]===b.type&&r&&(s.else(),(0, en.reportTypeError)(t)),s.endIf()):Qa(t,b),i||s.if((0, A._)`${O.default.errors} === ${n||0}`));}}function Qa(t,e){let{gen:r,schema:n,opts:{useDefaults:s}}=t;s&&(0, Vl.assignDefaults)(t,e.type),r.block(()=>{for(let o of e.rules)(0, Rs.shouldUseRule)(n,o)&&ii(t,o.keyword,o.definition,e.type);});}function rf(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(nf(t,e),t.opts.allowUnionTypes||sf(t,e),of(t,t.dataTypes));}function nf(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{ai(t.dataTypes,r)||Cs(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`);}),uf(t,e);}}function sf(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Cs(t,"use allowUnionTypes to allow union type keyword");}function of(t,e){let r=t.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0, Rs.shouldUseRule)(t.schema,s)){let{type:o}=s.definition;o.length&&!o.some(a=>af(e,a))&&Cs(t,`missing type "${o.join(",")}" for keyword "${n}"`);}}}function af(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function ai(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function uf(t,e){let r=[];for(let n of t.dataTypes)ai(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r;}function Cs(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0, ze.checkStrictMode)(t,e,t.opts.strictTypes);}var tn=class{constructor(e,r,n){if((0, mr.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0, ze.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",ui(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0, mr.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!==false)&&(this.errsCount=e.gen.const("_errs",O.default.errors));}result(e,r,n){this.failResult((0, A.not)(e),r,n);}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else();}pass(e,r){this.failResult((0, A.not)(e),void 0,r);}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(false);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else();}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0, A._)`${r} !== undefined && (${(0, A.or)(this.invalid$data(),e)})`);}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n);}_error(e,r){(e?pr.reportExtraError:pr.reportError)(this,this.def.error,r);}$dataError(){(0, pr.reportError)(this,this.def.$dataError||pr.keyword$DataError);}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0, pr.resetErrorsCount)(this.gen,this.errsCount);}ok(e){this.allErrors||this.gen.if(e);}setParams(e,r){r?Object.assign(this.params,e):this.params=e;}block$data(e,r,n=A.nil){this.gen.block(()=>{this.check$data(e,n),r();});}check$data(e=A.nil,r=A.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:o,def:a}=this;n.if((0, A.or)((0, A._)`${s} === undefined`,r)),e!==A.nil&&n.assign(e,true),(o.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==A.nil&&n.assign(e,false)),n.else();}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:s,it:o}=this;return (0, A.or)(a(),i());function a(){if(n.length){if(!(r instanceof A.Name))throw new Error("ajv implementation error");let u=Array.isArray(n)?n:[n];return (0, A._)`${(0, en.checkDataTypes)(u,r,o.opts.strictNumbers,en.DataType.Wrong)}`}return A.nil}function i(){if(s.validateSchema){let u=e.scopeValue("validate$data",{ref:s.validateSchema});return (0, A._)`!${u}(${r})`}return A.nil}}subschema(e,r){let n=(0, _s.getSubschema)(this.it,e);(0, _s.extendSubschemaData)(n,this.it,e),(0, _s.extendSubschemaMode)(n,e);let s={...this.it,...n,items:void 0,props:void 0};return Hl(s,r),s}mergeEvaluated(e,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==true&&e.props!==void 0&&(n.props=ze.mergeEvaluated.props(s,e.props,n.props,r)),n.items!==true&&e.items!==void 0&&(n.items=ze.mergeEvaluated.items(s,e.items,n.items,r)));}mergeValidEvaluated(e,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==true||n.items!==true))return s.if(r,()=>this.mergeEvaluated(e,A.Name)),true}};at.KeywordCxt=tn;function ii(t,e,r,n){let s=new tn(t,r,e);"code"in r?r.code(s,n):s.$data&&r.validate?(0, mr.funcKeywordCode)(s,r):"macro"in r?(0, mr.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0, mr.funcKeywordCode)(s,r);}var cf=/^\/(?:[^~]|~0|~1)*$/,df=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function ui(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let s,o;if(t==="")return O.default.rootData;if(t[0]==="/"){if(!cf.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);s=t,o=O.default.rootData;}else {let c=df.exec(t);if(!c)throw new Error(`Invalid JSON-pointer: ${t}`);let d=+c[1];if(s=c[2],s==="#"){if(d>=e)throw new Error(u("property/index",d));return n[e-d]}if(d>e)throw new Error(u("data",d));if(o=r[e-d],!s)return o}let a=o,i=s.split("/");for(let c of i)c&&(o=(0, A._)`${o}${(0, A.getProperty)((0, ze.unescapeJsonPointer)(c))}`,a=(0, A._)`${a} && ${o}`);return a;function u(c,d){return `Cannot access ${c} ${d} levels up, current level is ${e}`}}at.getData=ui;});var rn=x(Es=>{Object.defineProperty(Es,"__esModule",{value:true});var $s=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=true;}};Es.default=$s;});var hr=x(As=>{Object.defineProperty(As,"__esModule",{value:true});var xs=fr(),Ts=class extends Error{constructor(e,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0, xs.resolveUrl)(e,r,n),this.missingSchema=(0, xs.normalizeId)((0, xs.getFullPath)(e,this.missingRef));}};As.default=Ts;});var sn=x(Ie=>{Object.defineProperty(Ie,"__esModule",{value:true});Ie.resolveSchema=Ie.getCompilingSchema=Ie.resolveRef=Ie.compileSchema=Ie.SchemaEnv=void 0;var je=B(),lf=rn(),_t=Je(),Ne=fr(),ci=z(),ff=gr(),Bt=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0, Ne.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={};}};Ie.SchemaEnv=Bt;function Ps(t){let e=di.call(this,t);if(e)return e;let r=(0, Ne.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:o}=this.opts,a=new je.CodeGen(this.scope,{es5:n,lines:s,ownProperties:o}),i;t.$async&&(i=a.scopeValue("Error",{ref:lf.default,code:(0, je._)`require("ajv/dist/runtime/validation_error").default`}));let u=a.scopeName("validate");t.validateName=u;let c={gen:a,allErrors:this.opts.allErrors,data:_t.default.data,parentData:_t.default.parentData,parentDataProperty:_t.default.parentDataProperty,dataNames:[_t.default.data],dataPathArr:[je.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===true?{ref:t.schema,code:(0, je.stringify)(t.schema)}:{ref:t.schema}),validateName:u,ValidationError:i,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:je.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0, je._)`""`,opts:this.opts,self:this},d;try{this._compilations.add(t),(0,ff.validateFunctionCode)(c),a.optimize(this.opts.code.optimize);let l=a.toString();d=`${a.scopeRefs(_t.default.scope)}return ${l}`,this.opts.code.process&&(d=this.opts.code.process(d,t));let v=new Function(`${_t.default.self}`,`${_t.default.scope}`,d)(this,this.scope.get());if(this.scope.value(u,{ref:v}),v.errors=null,v.schema=t.schema,v.schemaEnv=t,t.$async&&(v.$async=!0),this.opts.code.source===!0&&(v.source={validateName:u,validateCode:l,scopeValues:a._values}),this.opts.unevaluated){let{props:m,items:p}=c;v.evaluated={props:m instanceof je.Name?void 0:m,items:p instanceof je.Name?void 0:p,dynamicProps:m instanceof je.Name,dynamicItems:p instanceof je.Name},v.source&&(v.source.evaluated=(0,je.stringify)(v.evaluated));}return t.validate=v,t}catch(l){throw delete t.validate,delete t.validateName,d&&this.logger.error("Error compiling schema, function code:",d),l}finally{this._compilations.delete(t);}}Ie.compileSchema=Ps;function pf(t,e,r){var n;r=(0, Ne.resolveUrl)(this.opts.uriResolver,e,r);let s=t.refs[r];if(s)return s;let o=hf.call(this,t,r);if(o===void 0){let a=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:i}=this.opts;a&&(o=new Bt({schema:a,schemaId:i,root:t,baseId:e}));}if(o!==void 0)return t.refs[r]=mf.call(this,o)}Ie.resolveRef=pf;function mf(t){return (0, Ne.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:Ps.call(this,t)}function di(t){for(let e of this._compilations)if(gf(e,t))return e}Ie.getCompilingSchema=di;function gf(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function hf(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||nn.call(this,t,e)}function nn(t,e){let r=this.opts.uriResolver.parse(e),n=(0, Ne._getFullPath)(this.opts.uriResolver,r),s=(0, Ne.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===s)return Is.call(this,r,t);let o=(0, Ne.normalizeId)(n),a=this.refs[o]||this.schemas[o];if(typeof a=="string"){let i=nn.call(this,t,a);return typeof i?.schema!="object"?void 0:Is.call(this,r,i)}if(typeof a?.schema=="object"){if(a.validate||Ps.call(this,a),o===(0, Ne.normalizeId)(e)){let{schema:i}=a,{schemaId:u}=this.opts,c=i[u];return c&&(s=(0, Ne.resolveUrl)(this.opts.uriResolver,s,c)),new Bt({schema:i,schemaId:u,root:t,baseId:s})}return Is.call(this,r,a)}}Ie.resolveSchema=nn;var yf=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Is(t,{baseId:e,schema:r,root:n}){var s;if(((s=t.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let i of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let u=r[(0, ci.unescapeFragment)(i)];if(u===void 0)return;r=u;let c=typeof r=="object"&&r[this.opts.schemaId];!yf.has(i)&&c&&(e=(0, Ne.resolveUrl)(this.opts.uriResolver,e,c));}let o;if(typeof r!="boolean"&&r.$ref&&!(0, ci.schemaHasRulesButRef)(r,this.RULES)){let i=(0, Ne.resolveUrl)(this.opts.uriResolver,e,r.$ref);o=nn.call(this,n,i);}let{schemaId:a}=this.opts;if(o=o||new Bt({schema:r,schemaId:a,root:n,baseId:e}),o.schema!==o.root.schema)return o}});var li=x((ky,vf)=>{vf.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:false};});var js=x((wy,gi)=>{var bf=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),pi=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function Os(t){let e="",r=0,n=0;for(n=0;n<t.length;n++)if(r=t[n].charCodeAt(0),r!==48){if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return "";e+=t[n];break}for(n+=1;n<t.length;n++){if(r=t[n].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return "";e+=t[n];}return e}var kf=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function fi(t){return t.length=0,true}function wf(t,e,r){if(t.length){let n=Os(t);if(n!=="")e.push(n);else return r.error=true,false;t.length=0;}return true}function Sf(t){let e=0,r={error:false,address:"",zone:""},n=[],s=[],o=false,a=false,i=wf;for(let u=0;u<t.length;u++){let c=t[u];if(!(c==="["||c==="]"))if(c===":"){if(o===true&&(a=true),!i(s,n,r))break;if(++e>7){r.error=true;break}u>0&&t[u-1]===":"&&(o=true),n.push(":");continue}else if(c==="%"){if(!i(s,n,r))break;i=fi;}else {s.push(c);continue}}return s.length&&(i===fi?r.zone=s.join(""):a?n.push(s.join("")):n.push(Os(s))),r.address=n.join(""),r}function mi(t){if(_f(t,":")<2)return {host:t,isIPV6:false};let e=Sf(t);if(e.error)return {host:t,isIPV6:false};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:true,escapedHost:n}}}function _f(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function Rf(t){let e=t,r=[],n=-1,s=0;for(;s=e.length;){if(s===1){if(e===".")break;if(e==="/"){r.push("/");break}else {r.push(e);break}}else if(s===2){if(e[0]==="."){if(e[1]===".")break;if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&(e[1]==="."||e[1]==="/")){r.push("/");break}}else if(s===3&&e==="/.."){r.length!==0&&r.pop(),r.push("/");break}if(e[0]==="."){if(e[1]==="."){if(e[2]==="/"){e=e.slice(3);continue}}else if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&e[1]==="."){if(e[2]==="/"){e=e.slice(2);continue}else if(e[2]==="."&&e[3]==="/"){e=e.slice(3),r.length!==0&&r.pop();continue}}if((n=e.indexOf("/",1))===-1){r.push(e);break}else r.push(e.slice(0,n)),e=e.slice(n);}return r.join("")}function Cf(t,e){let r=e!==true?escape:unescape;return t.scheme!==void 0&&(t.scheme=r(t.scheme)),t.userinfo!==void 0&&(t.userinfo=r(t.userinfo)),t.host!==void 0&&(t.host=r(t.host)),t.path!==void 0&&(t.path=r(t.path)),t.query!==void 0&&(t.query=r(t.query)),t.fragment!==void 0&&(t.fragment=r(t.fragment)),t}function $f(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!pi(r)){let n=mi(r);n.isIPV6===true?r=`[${n.escapedHost}]`:r=t.host;}e.push(r);}return (typeof t.port=="number"||typeof t.port=="string")&&(e.push(":"),e.push(String(t.port))),e.length?e.join(""):void 0}gi.exports={nonSimpleDomain:kf,recomposeAuthority:$f,normalizeComponentEncoding:Cf,removeDotSegments:Rf,isIPv4:pi,isUUID:bf,normalizeIPv6:mi,stringArrayToHexStripped:Os};});var ki=x((Sy,bi)=>{var{isUUID:Ef}=js(),xf=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,Tf=["http","https","ws","wss","urn","urn:uuid"];function Af(t){return Tf.indexOf(t)!==-1}function Ns(t){return t.secure===true?true:t.secure===false?false:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):false}function hi(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function yi(t){let e=String(t.scheme).toLowerCase()==="https";return (t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function If(t){return t.secure=Ns(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function Pf(t){if((t.port===(Ns(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0;}return t.fragment=void 0,t}function Of(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(xf);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,o=qs(s);t.path=void 0,o&&(t=o.parse(t,e));}else t.error=t.error||"URN can not be parsed.";return t}function jf(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,o=qs(s);o&&(t=o.serialize(t,e));let a=t,i=t.nss;return a.path=`${n||e.nid}:${i}`,e.skipEscape=true,a}function Nf(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!Ef(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function qf(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var vi={scheme:"http",domainHost:true,parse:hi,serialize:yi},Df={scheme:"https",domainHost:vi.domainHost,parse:hi,serialize:yi},on={scheme:"ws",domainHost:true,parse:If,serialize:Pf},Ff={scheme:"wss",domainHost:on.domainHost,parse:on.parse,serialize:on.serialize},Mf={scheme:"urn",parse:Of,serialize:jf,skipNormalize:true},Lf={scheme:"urn:uuid",parse:Nf,serialize:qf,skipNormalize:true},an={http:vi,https:Df,ws:on,wss:Ff,urn:Mf,"urn:uuid":Lf};Object.setPrototypeOf(an,null);function qs(t){return t&&(an[t]||an[t.toLowerCase()])||void 0}bi.exports={wsIsSecure:Ns,SCHEMES:an,isValidSchemeName:Af,getSchemeHandler:qs};});var _i=x((_y,cn)=>{var{normalizeIPv6:Vf,removeDotSegments:yr,recomposeAuthority:Bf,normalizeComponentEncoding:un,isIPv4:Gf,nonSimpleDomain:Kf}=js(),{SCHEMES:Uf,getSchemeHandler:wi}=ki();function Jf(t,e){return typeof t=="string"?t=Ve(He(t,e),e):typeof t=="object"&&(t=He(Ve(t,e),e)),t}function zf(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=Si(He(t,n),He(e,n),n,true);return n.skipEscape=true,Ve(s,n)}function Si(t,e,r,n){let s={};return n||(t=He(Ve(t,r),r),e=He(Ve(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=yr(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=yr(e.path||""),s.query=e.query):(e.path?(e.path[0]==="/"?s.path=yr(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=yr(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function Hf(t,e,r){return typeof t=="string"?(t=unescape(t),t=Ve(un(He(t,r),true),{...r,skipEscape:true})):typeof t=="object"&&(t=Ve(un(t,true),{...r,skipEscape:true})),typeof e=="string"?(e=unescape(e),e=Ve(un(He(e,r),true),{...r,skipEscape:true})):typeof e=="object"&&(e=Ve(un(e,true),{...r,skipEscape:true})),t.toLowerCase()===e.toLowerCase()}function Ve(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],o=wi(n.scheme||r.scheme);o&&o.serialize&&o.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&s.push(r.scheme,":");let a=Bf(r);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path[0]!=="/"&&s.push("/")),r.path!==void 0){let i=r.path;!n.absolutePath&&(!o||!o.absolutePath)&&(i=yr(i)),a===void 0&&i[0]==="/"&&i[1]==="/"&&(i="/%2F"+i.slice(2)),s.push(i);}return r.query!==void 0&&s.push("?",r.query),r.fragment!==void 0&&s.push("#",r.fragment),s.join("")}var Wf=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function He(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=false;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let o=t.match(Wf);if(o){if(n.scheme=o[1],n.userinfo=o[3],n.host=o[4],n.port=parseInt(o[5],10),n.path=o[6]||"",n.query=o[7],n.fragment=o[8],isNaN(n.port)&&(n.port=o[5]),n.host)if(Gf(n.host)===false){let u=Vf(n.host);n.host=u.host.toLowerCase(),s=u.isIPV6;}else s=true;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 a=wi(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===false&&Kf(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase());}catch(i){n.error=n.error||"Host's domain name can not be converted to ASCII: "+i;}(!a||a&&!a.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r);}else n.error=n.error||"URI can not be parsed.";return n}var Ds={SCHEMES:Uf,normalize:Jf,resolve:zf,resolveComponent:Si,equal:Hf,serialize:Ve,parse:He};cn.exports=Ds;cn.exports.default=Ds;cn.exports.fastUri=Ds;});var Ci=x(Fs=>{Object.defineProperty(Fs,"__esModule",{value:true});var Ri=_i();Ri.code='require("ajv/dist/runtime/uri").default';Fs.default=Ri;});var Oi=x(ce=>{Object.defineProperty(ce,"__esModule",{value:true});ce.CodeGen=ce.Name=ce.nil=ce.stringify=ce.str=ce._=ce.KeywordCxt=void 0;var Yf=gr();Object.defineProperty(ce,"KeywordCxt",{enumerable:true,get:function(){return Yf.KeywordCxt}});var Gt=B();Object.defineProperty(ce,"_",{enumerable:true,get:function(){return Gt._}});Object.defineProperty(ce,"str",{enumerable:true,get:function(){return Gt.str}});Object.defineProperty(ce,"stringify",{enumerable:true,get:function(){return Gt.stringify}});Object.defineProperty(ce,"nil",{enumerable:true,get:function(){return Gt.nil}});Object.defineProperty(ce,"Name",{enumerable:true,get:function(){return Gt.Name}});Object.defineProperty(ce,"CodeGen",{enumerable:true,get:function(){return Gt.CodeGen}});var Xf=rn(),Ai=hr(),Qf=ps(),vr=sn(),Zf=B(),br=fr(),dn=lr(),Ls=z(),$i=li(),ep=Ci(),Ii=(t,e)=>new RegExp(t,e);Ii.code="new RegExp";var tp=["removeAdditional","useDefaults","coerceTypes"],rp=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),np={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."},sp={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Ei=200;function op(t){var e,r,n,s,o,a,i,u,c,d,l,b,v,m,p,k,g,f,y,_,w,C,R,E,N;let D=t.strict,M=(e=t.code)===null||e===void 0?void 0:e.optimize,te=M===true||M===void 0?1:M||0,U=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Ii,le=(s=t.uriResolver)!==null&&s!==void 0?s:ep.default;return {strictSchema:(a=(o=t.strictSchema)!==null&&o!==void 0?o:D)!==null&&a!==void 0?a:true,strictNumbers:(u=(i=t.strictNumbers)!==null&&i!==void 0?i:D)!==null&&u!==void 0?u:true,strictTypes:(d=(c=t.strictTypes)!==null&&c!==void 0?c:D)!==null&&d!==void 0?d:"log",strictTuples:(b=(l=t.strictTuples)!==null&&l!==void 0?l:D)!==null&&b!==void 0?b:"log",strictRequired:(m=(v=t.strictRequired)!==null&&v!==void 0?v:D)!==null&&m!==void 0?m:false,code:t.code?{...t.code,optimize:te,regExp:U}:{optimize:te,regExp:U},loopRequired:(p=t.loopRequired)!==null&&p!==void 0?p:Ei,loopEnum:(k=t.loopEnum)!==null&&k!==void 0?k:Ei,meta:(g=t.meta)!==null&&g!==void 0?g:true,messages:(f=t.messages)!==null&&f!==void 0?f:true,inlineRefs:(y=t.inlineRefs)!==null&&y!==void 0?y:true,schemaId:(_=t.schemaId)!==null&&_!==void 0?_:"$id",addUsedSchema:(w=t.addUsedSchema)!==null&&w!==void 0?w:true,validateSchema:(C=t.validateSchema)!==null&&C!==void 0?C:true,validateFormats:(R=t.validateFormats)!==null&&R!==void 0?R:true,unicodeRegExp:(E=t.unicodeRegExp)!==null&&E!==void 0?E:true,int32range:(N=t.int32range)!==null&&N!==void 0?N:true,uriResolver:le}}var kr=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...op(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new Zf.ValueScope({scope:{},prefixes:rp,es5:r,lines:n}),this.logger=lp(e.logger);let s=e.validateFormats;e.validateFormats=false,this.RULES=(0, Qf.getRules)(),xi.call(this,np,e,"NOT SUPPORTED"),xi.call(this,sp,e,"DEPRECATED","warn"),this._metaOpts=cp.call(this),e.formats&&ip.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&up.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),ap.call(this),e.validateFormats=s;}_addVocabularies(){this.addKeyword("$async");}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,s=$i;n==="id"&&(s={...$i},s.id=s.$id,delete s.$id),r&&e&&this.addMetaSchema(s,s[n],false);}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let s=n(r);return "$async"in n||(this.errors=n.errors),s}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return s.call(this,e,r);async function s(d,l){await o.call(this,d.$schema);let b=this._addSchema(d,l);return b.validate||a.call(this,b)}async function o(d){d&&!this.getSchema(d)&&await s.call(this,{$ref:d},true);}async function a(d){try{return this._compileSchemaEnv(d)}catch(l){if(!(l instanceof Ai.default))throw l;return i.call(this,l),await u.call(this,l.missingSchema),a.call(this,d)}}function i({missingSchema:d,missingRef:l}){if(this.refs[d])throw new Error(`AnySchema ${d} is loaded but ${l} cannot be resolved`)}async function u(d){let l=await c.call(this,d);this.refs[d]||await o.call(this,l.$schema),this.refs[d]||this.addSchema(l,d,r);}async function c(d){let l=this._loading[d];if(l)return l;try{return await(this._loading[d]=n(d))}finally{delete this._loading[d];}}}addSchema(e,r,n,s=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,n,s);return this}let o;if(typeof e=="object"){let{schemaId:a}=this.opts;if(o=e[a],o!==void 0&&typeof o!="string")throw new Error(`schema ${a} must be string`)}return r=(0, br.normalizeId)(r||o),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,s,true),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,true,n),this}validateSchema(e,r){if(typeof e=="boolean")return true;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,true;let s=this.validate(n,e);if(!s&&r){let o="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(o);else throw new Error(o)}return s}getSchema(e){let r;for(;typeof(r=Ti.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,s=new vr.SchemaEnv({schema:{},schemaId:n});if(r=vr.resolveSchema.call(this,s,e),!r)return;this.refs[e]=r;}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case "undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case "string":{let r=Ti.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case "object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0, br.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(pp.call(this,n,r),!r)return (0, Ls.eachItem)(n,o=>Ms.call(this,o)),this;gp.call(this,r);let s={...r,type:(0, dn.getJSONTypes)(r.type),schemaType:(0, dn.getJSONTypes)(r.schemaType)};return (0, Ls.eachItem)(n,s.type.length===0?o=>Ms.call(this,o,s):o=>s.type.forEach(a=>Ms.call(this,o,s,a))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let s=n.rules.findIndex(o=>o.keyword===e);s>=0&&n.rules.splice(s,1);}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return !e||e.length===0?"No errors":e.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,o)=>s+r+o)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let s of r){let o=s.split("/").slice(1),a=e;for(let i of o)a=a[i];for(let i in n){let u=n[i];if(typeof u!="object")continue;let{$data:c}=u.definition,d=a[i];c&&d&&(a[i]=Pi(d));}}return e}_removeAllSchemas(e,r){for(let n in e){let s=e[n];(!r||r.test(n))&&(typeof s=="string"?delete e[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete e[n]));}}_addSchema(e,r,n,s=this.opts.validateSchema,o=this.opts.addUsedSchema){let a,{schemaId:i}=this.opts;if(typeof e=="object")a=e[i];else {if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let u=this._cache.get(e);if(u!==void 0)return u;n=(0, br.normalizeId)(a||n);let c=br.getSchemaRefs.call(this,e,n);return u=new vr.SchemaEnv({schema:e,schemaId:i,meta:r,baseId:n,localRefs:c}),this._cache.set(u.schema,u),o&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=u),s&&this.validateSchema(e,true),u}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):vr.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{vr.compileSchema.call(this,e);}finally{this.opts=r;}}};kr.ValidationError=Xf.default;kr.MissingRefError=Ai.default;ce.default=kr;function xi(t,e,r,n="error"){for(let s in t){let o=s;o in e&&this.logger[n](`${r}: option ${s}. ${t[o]}`);}}function Ti(t){return t=(0, br.normalizeId)(t),this.schemas[t]||this.refs[t]}function ap(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e);}function ip(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e);}}function up(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r);}}function cp(){let t={...this.opts};for(let e of tp)delete t[e];return t}var dp={log(){},warn(){},error(){}};function lp(t){if(t===false)return dp;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var fp=/^[a-z_$][a-z0-9_$:-]*$/i;function pp(t,e){let{RULES:r}=this;if((0, Ls.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!fp.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function Ms(t,e,r){var n;let s=e?.post;if(r&&s)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:o}=this,a=s?o.post:o.rules.find(({type:u})=>u===r);if(a||(a={type:r,rules:[]},o.rules.push(a)),o.keywords[t]=true,!e)return;let i={keyword:t,definition:{...e,type:(0, dn.getJSONTypes)(e.type),schemaType:(0, dn.getJSONTypes)(e.schemaType)}};e.before?mp.call(this,a,i,e.before):a.rules.push(i),o.all[t]=i,(n=e.implements)===null||n===void 0||n.forEach(u=>this.addKeyword(u));}function mp(t,e,r){let n=t.rules.findIndex(s=>s.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`));}function gp(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=Pi(e)),t.validateSchema=this.compile(e,true));}var hp={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Pi(t){return {anyOf:[t,hp]}}});var ji=x(Vs=>{Object.defineProperty(Vs,"__esModule",{value:true});var yp={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Vs.default=yp;});var Fi=x(Rt=>{Object.defineProperty(Rt,"__esModule",{value:true});Rt.callRef=Rt.getValidate=void 0;var vp=hr(),Ni=Ae(),_e=B(),Kt=Je(),qi=sn(),ln=z(),bp={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:s,schemaEnv:o,validateName:a,opts:i,self:u}=n,{root:c}=o;if((r==="#"||r==="#/")&&s===c.baseId)return l();let d=qi.resolveRef.call(u,c,s,r);if(d===void 0)throw new vp.default(n.opts.uriResolver,s,r);if(d instanceof qi.SchemaEnv)return b(d);return v(d);function l(){if(o===c)return fn(t,a,o,o.$async);let m=e.scopeValue("root",{ref:c});return fn(t,(0, _e._)`${m}.validate`,c,c.$async)}function b(m){let p=Di(t,m);fn(t,p,m,m.$async);}function v(m){let p=e.scopeValue("schema",i.code.source===true?{ref:m,code:(0, _e.stringify)(m)}:{ref:m}),k=e.name("valid"),g=t.subschema({schema:m,dataTypes:[],schemaPath:_e.nil,topSchemaRef:p,errSchemaPath:r},k);t.mergeEvaluated(g),t.ok(k);}}};function Di(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0, _e._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Rt.getValidate=Di;function fn(t,e,r,n){let{gen:s,it:o}=t,{allErrors:a,schemaEnv:i,opts:u}=o,c=u.passContext?Kt.default.this:_e.nil;n?d():l();function d(){if(!i.$async)throw new Error("async schema referenced by sync schema");let m=s.let("valid");s.try(()=>{s.code((0, _e._)`await ${(0, Ni.callValidateCode)(t,e,c)}`),v(e),a||s.assign(m,true);},p=>{s.if((0, _e._)`!(${p} instanceof ${o.ValidationError})`,()=>s.throw(p)),b(p),a||s.assign(m,false);}),t.ok(m);}function l(){t.result((0, Ni.callValidateCode)(t,e,c),()=>v(e),()=>b(e));}function b(m){let p=(0, _e._)`${m}.errors`;s.assign(Kt.default.vErrors,(0, _e._)`${Kt.default.vErrors} === null ? ${p} : ${Kt.default.vErrors}.concat(${p})`),s.assign(Kt.default.errors,(0, _e._)`${Kt.default.vErrors}.length`);}function v(m){var p;if(!o.opts.unevaluated)return;let k=(p=r?.validate)===null||p===void 0?void 0:p.evaluated;if(o.props!==true)if(k&&!k.dynamicProps)k.props!==void 0&&(o.props=ln.mergeEvaluated.props(s,k.props,o.props));else {let g=s.var("props",(0, _e._)`${m}.evaluated.props`);o.props=ln.mergeEvaluated.props(s,g,o.props,_e.Name);}if(o.items!==true)if(k&&!k.dynamicItems)k.items!==void 0&&(o.items=ln.mergeEvaluated.items(s,k.items,o.items));else {let g=s.var("items",(0, _e._)`${m}.evaluated.items`);o.items=ln.mergeEvaluated.items(s,g,o.items,_e.Name);}}}Rt.callRef=fn;Rt.default=bp;});var Mi=x(Bs=>{Object.defineProperty(Bs,"__esModule",{value:true});var kp=ji(),wp=Fi(),Sp=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",kp.default,wp.default];Bs.default=Sp;});var Li=x(Gs=>{Object.defineProperty(Gs,"__esModule",{value:true});var pn=B(),it=pn.operators,mn={maximum:{okStr:"<=",ok:it.LTE,fail:it.GT},minimum:{okStr:">=",ok:it.GTE,fail:it.LT},exclusiveMaximum:{okStr:"<",ok:it.LT,fail:it.GTE},exclusiveMinimum:{okStr:">",ok:it.GT,fail:it.LTE}},_p={message:({keyword:t,schemaCode:e})=>(0, pn.str)`must be ${mn[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0, pn._)`{comparison: ${mn[t].okStr}, limit: ${e}}`},Rp={keyword:Object.keys(mn),type:"number",schemaType:"number",$data:true,error:_p,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0, pn._)`${r} ${mn[e].fail} ${n} || isNaN(${r})`);}};Gs.default=Rp;});var Vi=x(Ks=>{Object.defineProperty(Ks,"__esModule",{value:true});var wr=B(),Cp={message:({schemaCode:t})=>(0, wr.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0, wr._)`{multipleOf: ${t}}`},$p={keyword:"multipleOf",type:"number",schemaType:"number",$data:true,error:Cp,code(t){let{gen:e,data:r,schemaCode:n,it:s}=t,o=s.opts.multipleOfPrecision,a=e.let("res"),i=o?(0, wr._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${o}`:(0, wr._)`${a} !== parseInt(${a})`;t.fail$data((0, wr._)`(${n} === 0 || (${a} = ${r}/${n}, ${i}))`);}};Ks.default=$p;});var Gi=x(Us=>{Object.defineProperty(Us,"__esModule",{value:true});function Bi(t){let e=t.length,r=0,n=0,s;for(;n<e;)r++,s=t.charCodeAt(n++),s>=55296&&s<=56319&&n<e&&(s=t.charCodeAt(n),(s&64512)===56320&&n++);return r}Us.default=Bi;Bi.code='require("ajv/dist/runtime/ucs2length").default';});var Ki=x(Js=>{Object.defineProperty(Js,"__esModule",{value:true});var Ct=B(),Ep=z(),xp=Gi(),Tp={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return (0, Ct.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0, Ct._)`{limit: ${t}}`},Ap={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:true,error:Tp,code(t){let{keyword:e,data:r,schemaCode:n,it:s}=t,o=e==="maxLength"?Ct.operators.GT:Ct.operators.LT,a=s.opts.unicode===false?(0, Ct._)`${r}.length`:(0, Ct._)`${(0, Ep.useFunc)(t.gen,xp.default)}(${r})`;t.fail$data((0, Ct._)`${a} ${o} ${n}`);}};Js.default=Ap;});var Ui=x(zs=>{Object.defineProperty(zs,"__esModule",{value:true});var Ip=Ae(),Pp=z(),Ut=B(),Op={message:({schemaCode:t})=>(0, Ut.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0, Ut._)`{pattern: ${t}}`},jp={keyword:"pattern",type:"string",schemaType:"string",$data:true,error:Op,code(t){let{gen:e,data:r,$data:n,schema:s,schemaCode:o,it:a}=t,i=a.opts.unicodeRegExp?"u":"";if(n){let{regExp:u}=a.opts.code,c=u.code==="new RegExp"?(0, Ut._)`new RegExp`:(0, Pp.useFunc)(e,u),d=e.let("valid");e.try(()=>e.assign(d,(0, Ut._)`${c}(${o}, ${i}).test(${r})`),()=>e.assign(d,false)),t.fail$data((0, Ut._)`!${d}`);}else {let u=(0, Ip.usePattern)(t,s);t.fail$data((0, Ut._)`!${u}.test(${r})`);}}};zs.default=jp;});var Ji=x(Hs=>{Object.defineProperty(Hs,"__esModule",{value:true});var Sr=B(),Np={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return (0, Sr.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0, Sr._)`{limit: ${t}}`},qp={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:true,error:Np,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxProperties"?Sr.operators.GT:Sr.operators.LT;t.fail$data((0, Sr._)`Object.keys(${r}).length ${s} ${n}`);}};Hs.default=qp;});var zi=x(Ws=>{Object.defineProperty(Ws,"__esModule",{value:true});var _r=Ae(),Rr=B(),Dp=z(),Fp={message:({params:{missingProperty:t}})=>(0, Rr.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0, Rr._)`{missingProperty: ${t}}`},Mp={keyword:"required",type:"object",schemaType:"array",$data:true,error:Fp,code(t){let{gen:e,schema:r,schemaCode:n,data:s,$data:o,it:a}=t,{opts:i}=a;if(!o&&r.length===0)return;let u=r.length>=i.loopRequired;if(a.allErrors?c():d(),i.strictRequired){let v=t.parentSchema.properties,{definedProperties:m}=t.it;for(let p of r)if(v?.[p]===void 0&&!m.has(p)){let k=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${p}" is not defined at "${k}" (strictRequired)`;(0, Dp.checkStrictMode)(a,g,a.opts.strictRequired);}}function c(){if(u||o)t.block$data(Rr.nil,l);else for(let v of r)(0, _r.checkReportMissingProp)(t,v);}function d(){let v=e.let("missing");if(u||o){let m=e.let("valid",true);t.block$data(m,()=>b(v,m)),t.ok(m);}else e.if((0, _r.checkMissingProp)(t,r,v)),(0, _r.reportMissingProp)(t,v),e.else();}function l(){e.forOf("prop",n,v=>{t.setParams({missingProperty:v}),e.if((0, _r.noPropertyInData)(e,s,v,i.ownProperties),()=>t.error());});}function b(v,m){t.setParams({missingProperty:v}),e.forOf(v,n,()=>{e.assign(m,(0, _r.propertyInData)(e,s,v,i.ownProperties)),e.if((0, Rr.not)(m),()=>{t.error(),e.break();});},Rr.nil);}}};Ws.default=Mp;});var Hi=x(Ys=>{Object.defineProperty(Ys,"__esModule",{value:true});var Cr=B(),Lp={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return (0, Cr.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0, Cr._)`{limit: ${t}}`},Vp={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:true,error:Lp,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxItems"?Cr.operators.GT:Cr.operators.LT;t.fail$data((0, Cr._)`${r}.length ${s} ${n}`);}};Ys.default=Vp;});var gn=x(Xs=>{Object.defineProperty(Xs,"__esModule",{value:true});var Wi=ws();Wi.code='require("ajv/dist/runtime/equal").default';Xs.default=Wi;});var Yi=x(Zs=>{Object.defineProperty(Zs,"__esModule",{value:true});var Qs=lr(),de=B(),Bp=z(),Gp=gn(),Kp={message:({params:{i:t,j:e}})=>(0, de.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0, de._)`{i: ${t}, j: ${e}}`},Up={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:true,error:Kp,code(t){let{gen:e,data:r,$data:n,schema:s,parentSchema:o,schemaCode:a,it:i}=t;if(!n&&!s)return;let u=e.let("valid"),c=o.items?(0, Qs.getSchemaTypes)(o.items):[];t.block$data(u,d,(0, de._)`${a} === false`),t.ok(u);function d(){let m=e.let("i",(0, de._)`${r}.length`),p=e.let("j");t.setParams({i:m,j:p}),e.assign(u,true),e.if((0, de._)`${m} > 1`,()=>(l()?b:v)(m,p));}function l(){return c.length>0&&!c.some(m=>m==="object"||m==="array")}function b(m,p){let k=e.name("item"),g=(0, Qs.checkDataTypes)(c,k,i.opts.strictNumbers,Qs.DataType.Wrong),f=e.const("indices",(0, de._)`{}`);e.for((0, de._)`;${m}--;`,()=>{e.let(k,(0, de._)`${r}[${m}]`),e.if(g,(0, de._)`continue`),c.length>1&&e.if((0, de._)`typeof ${k} == "string"`,(0, de._)`${k} += "_"`),e.if((0, de._)`typeof ${f}[${k}] == "number"`,()=>{e.assign(p,(0, de._)`${f}[${k}]`),t.error(),e.assign(u,false).break();}).code((0, de._)`${f}[${k}] = ${m}`);});}function v(m,p){let k=(0, Bp.useFunc)(e,Gp.default),g=e.name("outer");e.label(g).for((0, de._)`;${m}--;`,()=>e.for((0, de._)`${p} = ${m}; ${p}--;`,()=>e.if((0, de._)`${k}(${r}[${m}], ${r}[${p}])`,()=>{t.error(),e.assign(u,false).break(g);})));}}};Zs.default=Up;});var Xi=x(to=>{Object.defineProperty(to,"__esModule",{value:true});var eo=B(),Jp=z(),zp=gn(),Hp={message:"must be equal to constant",params:({schemaCode:t})=>(0, eo._)`{allowedValue: ${t}}`},Wp={keyword:"const",$data:true,error:Hp,code(t){let{gen:e,data:r,$data:n,schemaCode:s,schema:o}=t;n||o&&typeof o=="object"?t.fail$data((0, eo._)`!${(0, Jp.useFunc)(e,zp.default)}(${r}, ${s})`):t.fail((0, eo._)`${o} !== ${r}`);}};to.default=Wp;});var Qi=x(ro=>{Object.defineProperty(ro,"__esModule",{value:true});var $r=B(),Yp=z(),Xp=gn(),Qp={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0, $r._)`{allowedValues: ${t}}`},Zp={keyword:"enum",schemaType:"array",$data:true,error:Qp,code(t){let{gen:e,data:r,$data:n,schema:s,schemaCode:o,it:a}=t;if(!n&&s.length===0)throw new Error("enum must have non-empty array");let i=s.length>=a.opts.loopEnum,u,c=()=>u??(u=(0, Yp.useFunc)(e,Xp.default)),d;if(i||n)d=e.let("valid"),t.block$data(d,l);else {if(!Array.isArray(s))throw new Error("ajv implementation error");let v=e.const("vSchema",o);d=(0, $r.or)(...s.map((m,p)=>b(v,p)));}t.pass(d);function l(){e.assign(d,false),e.forOf("v",o,v=>e.if((0, $r._)`${c()}(${r}, ${v})`,()=>e.assign(d,true).break()));}function b(v,m){let p=s[m];return typeof p=="object"&&p!==null?(0, $r._)`${c()}(${r}, ${v}[${m}])`:(0, $r._)`${r} === ${p}`}}};ro.default=Zp;});var Zi=x(no=>{Object.defineProperty(no,"__esModule",{value:true});var em=Li(),tm=Vi(),rm=Ki(),nm=Ui(),sm=Ji(),om=zi(),am=Hi(),im=Yi(),um=Xi(),cm=Qi(),dm=[em.default,tm.default,rm.default,nm.default,sm.default,om.default,am.default,im.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},um.default,cm.default];no.default=dm;});var oo=x(Er=>{Object.defineProperty(Er,"__esModule",{value:true});Er.validateAdditionalItems=void 0;var $t=B(),so=z(),lm={message:({params:{len:t}})=>(0, $t.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0, $t._)`{limit: ${t}}`},fm={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:lm,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0, so.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}eu(t,n);}};function eu(t,e){let{gen:r,schema:n,data:s,keyword:o,it:a}=t;a.items=true;let i=r.const("len",(0, $t._)`${s}.length`);if(n===false)t.setParams({len:e.length}),t.pass((0, $t._)`${i} <= ${e.length}`);else if(typeof n=="object"&&!(0, so.alwaysValidSchema)(a,n)){let c=r.var("valid",(0, $t._)`${i} <= ${e.length}`);r.if((0, $t.not)(c),()=>u(c)),t.ok(c);}function u(c){r.forRange("i",e.length,i,d=>{t.subschema({keyword:o,dataProp:d,dataPropType:so.Type.Num},c),a.allErrors||r.if((0, $t.not)(c),()=>r.break());});}}Er.validateAdditionalItems=eu;Er.default=fm;});var ao=x(xr=>{Object.defineProperty(xr,"__esModule",{value:true});xr.validateTuple=void 0;var tu=B(),hn=z(),pm=Ae(),mm={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return ru(t,"additionalItems",e);r.items=true,!(0, hn.alwaysValidSchema)(r,e)&&t.ok((0, pm.validateArray)(t));}};function ru(t,e,r=t.schema){let{gen:n,parentSchema:s,data:o,keyword:a,it:i}=t;d(s),i.opts.unevaluated&&r.length&&i.items!==true&&(i.items=hn.mergeEvaluated.items(n,r.length,i.items));let u=n.name("valid"),c=n.const("len",(0, tu._)`${o}.length`);r.forEach((l,b)=>{(0, hn.alwaysValidSchema)(i,l)||(n.if((0, tu._)`${c} > ${b}`,()=>t.subschema({keyword:a,schemaProp:b,dataProp:b},u)),t.ok(u));});function d(l){let{opts:b,errSchemaPath:v}=i,m=r.length,p=m===l.minItems&&(m===l.maxItems||l[e]===false);if(b.strictTuples&&!p){let k=`"${a}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${v}"`;(0, hn.checkStrictMode)(i,k,b.strictTuples);}}}xr.validateTuple=ru;xr.default=mm;});var nu=x(io=>{Object.defineProperty(io,"__esModule",{value:true});var gm=ao(),hm={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0, gm.validateTuple)(t,"items")};io.default=hm;});var ou=x(uo=>{Object.defineProperty(uo,"__esModule",{value:true});var su=B(),ym=z(),vm=Ae(),bm=oo(),km={message:({params:{len:t}})=>(0, su.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0, su._)`{limit: ${t}}`},wm={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:km,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:s}=r;n.items=true,!(0, ym.alwaysValidSchema)(n,e)&&(s?(0, bm.validateAdditionalItems)(t,s):t.ok((0, vm.validateArray)(t)));}};uo.default=wm;});var au=x(co=>{Object.defineProperty(co,"__esModule",{value:true});var Pe=B(),yn=z(),Sm={message:({params:{min:t,max:e}})=>e===void 0?(0, Pe.str)`must contain at least ${t} valid item(s)`:(0, Pe.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0, Pe._)`{minContains: ${t}}`:(0, Pe._)`{minContains: ${t}, maxContains: ${e}}`},_m={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:true,error:Sm,code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:o}=t,a,i,{minContains:u,maxContains:c}=n;o.opts.next?(a=u===void 0?1:u,i=c):a=1;let d=e.const("len",(0, Pe._)`${s}.length`);if(t.setParams({min:a,max:i}),i===void 0&&a===0){(0, yn.checkStrictMode)(o,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(i!==void 0&&a>i){(0, yn.checkStrictMode)(o,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0, yn.alwaysValidSchema)(o,r)){let p=(0, Pe._)`${d} >= ${a}`;i!==void 0&&(p=(0, Pe._)`${p} && ${d} <= ${i}`),t.pass(p);return}o.items=true;let l=e.name("valid");i===void 0&&a===1?v(l,()=>e.if(l,()=>e.break())):a===0?(e.let(l,true),i!==void 0&&e.if((0, Pe._)`${s}.length > 0`,b)):(e.let(l,false),b()),t.result(l,()=>t.reset());function b(){let p=e.name("_valid"),k=e.let("count",0);v(p,()=>e.if(p,()=>m(k)));}function v(p,k){e.forRange("i",0,d,g=>{t.subschema({keyword:"contains",dataProp:g,dataPropType:yn.Type.Num,compositeRule:true},p),k();});}function m(p){e.code((0, Pe._)`${p}++`),i===void 0?e.if((0, Pe._)`${p} >= ${a}`,()=>e.assign(l,true).break()):(e.if((0, Pe._)`${p} > ${i}`,()=>e.assign(l,false).break()),a===1?e.assign(l,true):e.if((0, Pe._)`${p} >= ${a}`,()=>e.assign(l,true)));}}};co.default=_m;});var cu=x(Be=>{Object.defineProperty(Be,"__esModule",{value:true});Be.validateSchemaDeps=Be.validatePropertyDeps=Be.error=void 0;var lo=B(),Rm=z(),Tr=Ae();Be.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return (0, lo.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0, lo._)`{property: ${t},
|
|
6
|
+
|| ${a} === "boolean" || ${s} === null`).assign(i,(0, L._)`[${s}]`);}}}function dl({gen:t,parentData:e,parentDataProperty:r},n){t.if((0, L._)`${e} !== undefined`,()=>t.assign((0, L._)`${e}[${r}]`,n));}function ys(t,e,r,n=Bt.Correct){let s=n===Bt.Correct?L.operators.EQ:L.operators.NEQ,o;switch(t){case "null":return (0, L._)`${e} ${s} null`;case "array":o=(0, L._)`Array.isArray(${e})`;break;case "object":o=(0, L._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case "integer":o=a((0, L._)`!(${e} % 1) && !isNaN(${e})`);break;case "number":o=a();break;default:return (0, L._)`typeof ${e} ${s} ${t}`}return n===Bt.Correct?o:(0, L.not)(o);function a(i=L.nil){return (0, L.and)((0, L._)`typeof ${e} == "number"`,i,r?(0, L._)`isFinite(${e})`:L.nil)}}me.checkDataType=ys;function vs(t,e,r,n){if(t.length===1)return ys(t[0],e,r,n);let s,o=(0, Oa.toHash)(t);if(o.array&&o.object){let a=(0, L._)`typeof ${e} != "object"`;s=o.null?a:(0, L._)`!${e} || ${a}`,delete o.null,delete o.array,delete o.object;}else s=L.nil;o.number&&delete o.integer;for(let a in o)s=(0, L.and)(s,ys(a,e,r,n));return s}me.checkDataTypes=vs;var ll={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0, L._)`{type: ${t}}`:(0, L._)`{type: ${e}}`};function ks(t){let e=fl(t);(0, ol.reportError)(e,ll);}me.reportTypeError=ks;function fl(t){let{gen:e,data:r,schema:n}=t,s=(0, Oa.schemaRefOrVal)(t,n,"type");return {gen:e,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:t}}});var Da=x(en=>{Object.defineProperty(en,"__esModule",{value:true});en.assignDefaults=void 0;var Gt=B(),pl=z();function ml(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let s in r)qa(t,s,r[s].default);else e==="array"&&Array.isArray(n)&&n.forEach((s,o)=>qa(t,o,s.default));}en.assignDefaults=ml;function qa(t,e,r){let{gen:n,compositeRule:s,data:o,opts:a}=t;if(r===void 0)return;let i=(0, Gt._)`${o}${(0, Gt.getProperty)(e)}`;if(s){(0, pl.checkStrictMode)(t,`default is ignored for: ${i}`);return}let u=(0, Gt._)`${i} === undefined`;a.useDefaults==="empty"&&(u=(0, Gt._)`${u} || ${i} === null || ${i} === ""`),n.if(u,(0, Gt._)`${i} = ${(0, Gt.stringify)(r)}`);}});var Ie=x(Y=>{Object.defineProperty(Y,"__esModule",{value:true});Y.validateUnion=Y.validateArray=Y.usePattern=Y.callValidateCode=Y.schemaProperties=Y.allSchemaProperties=Y.noPropertyInData=Y.propertyInData=Y.isOwnProperty=Y.hasPropFunc=Y.reportMissingProp=Y.checkMissingProp=Y.checkReportMissingProp=void 0;var re=B(),bs=z(),st=Je(),gl=z();function hl(t,e){let{gen:r,data:n,it:s}=t;r.if(Ss(r,n,e,s.opts.ownProperties),()=>{t.setParams({missingProperty:(0, re._)`${e}`},true),t.error();});}Y.checkReportMissingProp=hl;function yl({gen:t,data:e,it:{opts:r}},n,s){return (0, re.or)(...n.map(o=>(0, re.and)(Ss(t,e,o,r.ownProperties),(0, re._)`${s} = ${o}`)))}Y.checkMissingProp=yl;function vl(t,e){t.setParams({missingProperty:e},true),t.error();}Y.reportMissingProp=vl;function Fa(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0, re._)`Object.prototype.hasOwnProperty`})}Y.hasPropFunc=Fa;function ws(t,e,r){return (0, re._)`${Fa(t)}.call(${e}, ${r})`}Y.isOwnProperty=ws;function kl(t,e,r,n){let s=(0, re._)`${e}${(0, re.getProperty)(r)} !== undefined`;return n?(0, re._)`${s} && ${ws(t,e,r)}`:s}Y.propertyInData=kl;function Ss(t,e,r,n){let s=(0, re._)`${e}${(0, re.getProperty)(r)} === undefined`;return n?(0, re.or)(s,(0, re.not)(ws(t,e,r))):s}Y.noPropertyInData=Ss;function Ma(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}Y.allSchemaProperties=Ma;function bl(t,e){return Ma(e).filter(r=>!(0, bs.alwaysValidSchema)(t,e[r]))}Y.schemaProperties=bl;function wl({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:o},it:a},i,u,c){let d=c?(0, re._)`${t}, ${e}, ${n}${s}`:e,l=[[st.default.instancePath,(0, re.strConcat)(st.default.instancePath,o)],[st.default.parentData,a.parentData],[st.default.parentDataProperty,a.parentDataProperty],[st.default.rootData,st.default.rootData]];a.opts.dynamicRef&&l.push([st.default.dynamicAnchors,st.default.dynamicAnchors]);let k=(0, re._)`${d}, ${r.object(...l)}`;return u!==re.nil?(0, re._)`${i}.call(${u}, ${k})`:(0, re._)`${i}(${k})`}Y.callValidateCode=wl;var Sl=(0, re._)`new RegExp`;function _l({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:s}=e.code,o=s(r,n);return t.scopeValue("pattern",{key:o.toString(),ref:o,code:(0, re._)`${s.code==="new RegExp"?Sl:(0, gl.useFunc)(t,s)}(${r}, ${n})`})}Y.usePattern=_l;function Rl(t){let{gen:e,data:r,keyword:n,it:s}=t,o=e.name("valid");if(s.allErrors){let i=e.let("valid",true);return a(()=>e.assign(i,false)),i}return e.var(o,true),a(()=>e.break()),o;function a(i){let u=e.const("len",(0, re._)`${r}.length`);e.forRange("i",0,u,c=>{t.subschema({keyword:n,dataProp:c,dataPropType:bs.Type.Num},o),e.if((0, re.not)(o),i);});}}Y.validateArray=Rl;function Cl(t){let{gen:e,schema:r,keyword:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(u=>(0, bs.alwaysValidSchema)(s,u))&&!s.opts.unevaluated)return;let a=e.let("valid",false),i=e.name("_valid");e.block(()=>r.forEach((u,c)=>{let d=t.subschema({keyword:n,schemaProp:c,compositeRule:true},i);e.assign(a,(0, re._)`${a} || ${i}`),t.mergeValidEvaluated(d,i)||e.if((0, re.not)(a));})),t.result(a,()=>t.reset(),()=>t.error(true));}Y.validateUnion=Cl;});var Ba=x(Le=>{Object.defineProperty(Le,"__esModule",{value:true});Le.validateKeywordUsage=Le.validSchemaType=Le.funcKeywordCode=Le.macroKeywordCode=void 0;var ve=B(),Rt=Je(),$l=Ie(),El=lr();function xl(t,e){let{gen:r,keyword:n,schema:s,parentSchema:o,it:a}=t,i=e.macro.call(a.self,s,o,a),u=Va(r,n,i);a.opts.validateSchema!==false&&a.self.validateSchema(i,true);let c=r.name("valid");t.subschema({schema:i,schemaPath:ve.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:u,compositeRule:true},c),t.pass(c,()=>t.error(true));}Le.macroKeywordCode=xl;function Tl(t,e){var r;let{gen:n,keyword:s,schema:o,parentSchema:a,$data:i,it:u}=t;Il(u,e);let c=!i&&e.compile?e.compile.call(u.self,o,a,u):e.validate,d=Va(n,s,c),l=n.let("valid");t.block$data(l,k),t.ok((r=e.valid)!==null&&r!==void 0?r:l);function k(){if(e.errors===false)p(),e.modifying&&La(t),b(()=>t.error());else {let g=e.async?v():m();e.modifying&&La(t),b(()=>Al(t,g));}}function v(){let g=n.let("ruleErrs",null);return n.try(()=>p((0, ve._)`await `),f=>n.assign(l,false).if((0, ve._)`${f} instanceof ${u.ValidationError}`,()=>n.assign(g,(0, ve._)`${f}.errors`),()=>n.throw(f))),g}function m(){let g=(0, ve._)`${d}.errors`;return n.assign(g,null),p(ve.nil),g}function p(g=e.async?(0, ve._)`await `:ve.nil){let f=u.opts.passContext?Rt.default.this:Rt.default.self,y=!("compile"in e&&!i||e.schema===false);n.assign(l,(0, ve._)`${g}${(0, $l.callValidateCode)(t,d,f,y)}`,e.modifying);}function b(g){var f;n.if((0, ve.not)((f=e.valid)!==null&&f!==void 0?f:l),g);}}Le.funcKeywordCode=Tl;function La(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0, ve._)`${n.parentData}[${n.parentDataProperty}]`));}function Al(t,e){let{gen:r}=t;r.if((0, ve._)`Array.isArray(${e})`,()=>{r.assign(Rt.default.vErrors,(0, ve._)`${Rt.default.vErrors} === null ? ${e} : ${Rt.default.vErrors}.concat(${e})`).assign(Rt.default.errors,(0, ve._)`${Rt.default.vErrors}.length`),(0, El.extendErrors)(t);},()=>t.error());}function Il({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Va(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0, ve.stringify)(r)})}function Pl(t,e,r=false){return !e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}Le.validSchemaType=Pl;function Ol({schema:t,opts:e,self:r,errSchemaPath:n},s,o){if(Array.isArray(s.keyword)?!s.keyword.includes(o):s.keyword!==o)throw new Error("ajv implementation error");let a=s.dependencies;if(a?.some(i=>!Object.prototype.hasOwnProperty.call(t,i)))throw new Error(`parent schema must have dependencies of ${o}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(t[o])){let u=`keyword "${o}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(u);else throw new Error(u)}}Le.validateKeywordUsage=Ol;});var Ka=x(ot=>{Object.defineProperty(ot,"__esModule",{value:true});ot.extendSubschemaMode=ot.extendSubschemaData=ot.getSubschema=void 0;var Ve=B(),Ga=z();function jl(t,{keyword:e,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:o,topSchemaRef:a}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let i=t.schema[e];return r===void 0?{schema:i,schemaPath:(0, Ve._)`${t.schemaPath}${(0, Ve.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:i[r],schemaPath:(0, Ve._)`${t.schemaPath}${(0, Ve.getProperty)(e)}${(0, Ve.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0, Ga.escapeFragment)(r)}`}}if(n!==void 0){if(s===void 0||o===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return {schema:n,schemaPath:s,topSchemaRef:a,errSchemaPath:o}}throw new Error('either "keyword" or "schema" must be passed')}ot.getSubschema=jl;function Nl(t,e,{dataProp:r,dataPropType:n,data:s,dataTypes:o,propertyName:a}){if(s!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:i}=e;if(r!==void 0){let{errorPath:c,dataPathArr:d,opts:l}=e,k=i.let("data",(0, Ve._)`${e.data}${(0, Ve.getProperty)(r)}`,true);u(k),t.errorPath=(0, Ve.str)`${c}${(0, Ga.getErrorPath)(r,n,l.jsPropertySyntax)}`,t.parentDataProperty=(0, Ve._)`${r}`,t.dataPathArr=[...d,t.parentDataProperty];}if(s!==void 0){let c=s instanceof Ve.Name?s:i.let("data",s,true);u(c),a!==void 0&&(t.propertyName=a);}o&&(t.dataTypes=o);function u(c){t.data=c,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,c];}}ot.extendSubschemaData=Nl;function ql(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:o}){n!==void 0&&(t.compositeRule=n),s!==void 0&&(t.createErrors=s),o!==void 0&&(t.allErrors=o),t.jtdDiscriminator=e,t.jtdMetadata=r;}ot.extendSubschemaMode=ql;});var _s=x((_y,Ua)=>{Ua.exports=function t(e,r){if(e===r)return true;if(e&&r&&typeof e=="object"&&typeof r=="object"){if(e.constructor!==r.constructor)return false;var n,s,o;if(Array.isArray(e)){if(n=e.length,n!=r.length)return false;for(s=n;s--!==0;)if(!t(e[s],r[s]))return false;return true}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(o=Object.keys(e),n=o.length,n!==Object.keys(r).length)return false;for(s=n;s--!==0;)if(!Object.prototype.hasOwnProperty.call(r,o[s]))return false;for(s=n;s--!==0;){var a=o[s];if(!t(e[a],r[a]))return false}return true}return e!==e&&r!==r};});var za=x((Ry,Ja)=>{var at=Ja.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};tn(e,n,s,t,"",t);};at.keywords={additionalItems:true,items:true,contains:true,additionalProperties:true,propertyNames:true,not:true,if:true,then:true,else:true};at.arrayKeywords={items:true,allOf:true,anyOf:true,oneOf:true};at.propsKeywords={$defs:true,definitions:true,properties:true,patternProperties:true,dependencies:true};at.skipKeywords={default:true,enum:true,const:true,required:true,maximum:true,minimum:true,exclusiveMaximum:true,exclusiveMinimum:true,multipleOf:true,maxLength:true,minLength:true,pattern:true,format:true,maxItems:true,minItems:true,uniqueItems:true,maxProperties:true,minProperties:true};function tn(t,e,r,n,s,o,a,i,u,c){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,s,o,a,i,u,c);for(var d in n){var l=n[d];if(Array.isArray(l)){if(d in at.arrayKeywords)for(var k=0;k<l.length;k++)tn(t,e,r,l[k],s+"/"+d+"/"+k,o,s,d,n,k);}else if(d in at.propsKeywords){if(l&&typeof l=="object")for(var v in l)tn(t,e,r,l[v],s+"/"+d+"/"+Dl(v),o,s,d,n,v);}else (d in at.keywords||t.allKeys&&!(d in at.skipKeywords))&&tn(t,e,r,l,s+"/"+d,o,s,d,n);}r(n,s,o,a,i,u,c);}}function Dl(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var pr=x(we=>{Object.defineProperty(we,"__esModule",{value:true});we.getSchemaRefs=we.resolveUrl=we.normalizeId=we._getFullPath=we.getFullPath=we.inlineRef=void 0;var Fl=z(),Ml=_s(),Ll=za(),Vl=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function Bl(t,e=true){return typeof t=="boolean"?true:e===true?!Rs(t):e?Ha(t)<=e:false}we.inlineRef=Bl;var Gl=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Rs(t){for(let e in t){if(Gl.has(e))return true;let r=t[e];if(Array.isArray(r)&&r.some(Rs)||typeof r=="object"&&Rs(r))return true}return false}function Ha(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!Vl.has(r)&&(typeof t[r]=="object"&&(0, Fl.eachItem)(t[r],n=>e+=Ha(n)),e===1/0))return 1/0}return e}function Wa(t,e="",r){r!==false&&(e=Kt(e));let n=t.parse(e);return Ya(t,n)}we.getFullPath=Wa;function Ya(t,e){return t.serialize(e).split("#")[0]+"#"}we._getFullPath=Ya;var Kl=/#\/?$/;function Kt(t){return t?t.replace(Kl,""):""}we.normalizeId=Kt;function Ul(t,e,r){return r=Kt(r),t.resolve(e,r)}we.resolveUrl=Ul;var Jl=/^[a-z_][-a-z0-9._]*$/i;function zl(t,e){if(typeof t=="boolean")return {};let{schemaId:r,uriResolver:n}=this.opts,s=Kt(t[r]||e),o={"":s},a=Wa(n,s,false),i={},u=new Set;return Ll(t,{allKeys:true},(l,k,v,m)=>{if(m===void 0)return;let p=a+k,b=o[m];typeof l[r]=="string"&&(b=g.call(this,l[r])),f.call(this,l.$anchor),f.call(this,l.$dynamicAnchor),o[k]=b;function g(y){let _=this.opts.uriResolver.resolve;if(y=Kt(b?_(b,y):y),u.has(y))throw d(y);u.add(y);let w=this.refs[y];return typeof w=="string"&&(w=this.refs[w]),typeof w=="object"?c(l,w.schema,y):y!==Kt(p)&&(y[0]==="#"?(c(l,i[y],y),i[y]=l):this.refs[y]=p),y}function f(y){if(typeof y=="string"){if(!Jl.test(y))throw new Error(`invalid anchor "${y}"`);g.call(this,`#${y}`);}}}),i;function c(l,k,v){if(k!==void 0&&!Ml(l,k))throw d(v)}function d(l){return new Error(`reference "${l}" resolves to more than one schema`)}}we.getSchemaRefs=zl;});var hr=x(it=>{Object.defineProperty(it,"__esModule",{value:true});it.getData=it.KeywordCxt=it.validateFunctionCode=void 0;var ti=Aa(),Xa=fr(),$s=hs(),rn=fr(),Hl=Da(),gr=Ba(),Cs=Ka(),T=B(),O=Je(),Wl=pr(),ze=z(),mr=lr();function Yl(t){if(si(t)&&(oi(t),ni(t))){Zl(t);return}ri(t,()=>(0, ti.topBoolOrEmptySchema)(t));}it.validateFunctionCode=Yl;function ri({gen:t,validateName:e,schema:r,schemaEnv:n,opts:s},o){s.code.es5?t.func(e,(0, T._)`${O.default.data}, ${O.default.valCxt}`,n.$async,()=>{t.code((0, T._)`"use strict"; ${Qa(r,s)}`),Ql(t,s),t.code(o);}):t.func(e,(0, T._)`${O.default.data}, ${Xl(s)}`,n.$async,()=>t.code(Qa(r,s)).code(o));}function Xl(t){return (0, T._)`{${O.default.instancePath}="", ${O.default.parentData}, ${O.default.parentDataProperty}, ${O.default.rootData}=${O.default.data}${t.dynamicRef?(0, T._)`, ${O.default.dynamicAnchors}={}`:T.nil}}={}`}function Ql(t,e){t.if(O.default.valCxt,()=>{t.var(O.default.instancePath,(0, T._)`${O.default.valCxt}.${O.default.instancePath}`),t.var(O.default.parentData,(0, T._)`${O.default.valCxt}.${O.default.parentData}`),t.var(O.default.parentDataProperty,(0, T._)`${O.default.valCxt}.${O.default.parentDataProperty}`),t.var(O.default.rootData,(0, T._)`${O.default.valCxt}.${O.default.rootData}`),e.dynamicRef&&t.var(O.default.dynamicAnchors,(0, T._)`${O.default.valCxt}.${O.default.dynamicAnchors}`);},()=>{t.var(O.default.instancePath,(0, T._)`""`),t.var(O.default.parentData,(0, T._)`undefined`),t.var(O.default.parentDataProperty,(0, T._)`undefined`),t.var(O.default.rootData,O.default.data),e.dynamicRef&&t.var(O.default.dynamicAnchors,(0, T._)`{}`);});}function Zl(t){let{schema:e,opts:r,gen:n}=t;ri(t,()=>{r.$comment&&e.$comment&&ii(t),sf(t),n.let(O.default.vErrors,null),n.let(O.default.errors,0),r.unevaluated&&ef(t),ai(t),uf(t);});}function ef(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0, T._)`${r}.evaluated`),e.if((0, T._)`${t.evaluated}.dynamicProps`,()=>e.assign((0, T._)`${t.evaluated}.props`,(0, T._)`undefined`)),e.if((0, T._)`${t.evaluated}.dynamicItems`,()=>e.assign((0, T._)`${t.evaluated}.items`,(0, T._)`undefined`));}function Qa(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0, T._)`/*# sourceURL=${r} */`:T.nil}function tf(t,e){if(si(t)&&(oi(t),ni(t))){rf(t,e);return}(0, ti.boolOrEmptySchema)(t,e);}function ni({schema:t,self:e}){if(typeof t=="boolean")return !t;for(let r in t)if(e.RULES.all[r])return true;return false}function si(t){return typeof t.schema!="boolean"}function rf(t,e){let{schema:r,gen:n,opts:s}=t;s.$comment&&r.$comment&&ii(t),of(t),af(t);let o=n.const("_errs",O.default.errors);ai(t,o),n.var(e,(0, T._)`${o} === ${O.default.errors}`);}function oi(t){(0, ze.checkUnknownRules)(t),nf(t);}function ai(t,e){if(t.opts.jtd)return Za(t,[],false,e);let r=(0, Xa.getSchemaTypes)(t.schema),n=(0, Xa.coerceAndCheckDataType)(t,r);Za(t,r,!n,e);}function nf(t){let{schema:e,errSchemaPath:r,opts:n,self:s}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0, ze.schemaHasRulesButRef)(e,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`);}function sf(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0, ze.checkStrictMode)(t,"default is ignored in the schema root");}function of(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0, Wl.resolveUrl)(t.opts.uriResolver,t.baseId,e));}function af(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function ii({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:s}){let o=r.$comment;if(s.$comment===true)t.code((0, T._)`${O.default.self}.logger.log(${o})`);else if(typeof s.$comment=="function"){let a=(0, T.str)`${n}/$comment`,i=t.scopeValue("root",{ref:e.root});t.code((0, T._)`${O.default.self}.opts.$comment(${o}, ${a}, ${i}.schema)`);}}function uf(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:s,opts:o}=t;r.$async?e.if((0, T._)`${O.default.errors} === 0`,()=>e.return(O.default.data),()=>e.throw((0, T._)`new ${s}(${O.default.vErrors})`)):(e.assign((0, T._)`${n}.errors`,O.default.vErrors),o.unevaluated&&cf(t),e.return((0, T._)`${O.default.errors} === 0`));}function cf({gen:t,evaluated:e,props:r,items:n}){r instanceof T.Name&&t.assign((0, T._)`${e}.props`,r),n instanceof T.Name&&t.assign((0, T._)`${e}.items`,n);}function Za(t,e,r,n){let{gen:s,schema:o,data:a,allErrors:i,opts:u,self:c}=t,{RULES:d}=c;if(o.$ref&&(u.ignoreKeywordsWithRef||!(0, ze.schemaHasRulesButRef)(o,d))){s.block(()=>ci(t,"$ref",d.all.$ref.definition));return}u.jtd||df(t,e),s.block(()=>{for(let k of d.rules)l(k);l(d.post);});function l(k){(0, $s.shouldUseGroup)(o,k)&&(k.type?(s.if((0, rn.checkDataType)(k.type,a,u.strictNumbers)),ei(t,k),e.length===1&&e[0]===k.type&&r&&(s.else(),(0, rn.reportTypeError)(t)),s.endIf()):ei(t,k),i||s.if((0, T._)`${O.default.errors} === ${n||0}`));}}function ei(t,e){let{gen:r,schema:n,opts:{useDefaults:s}}=t;s&&(0, Hl.assignDefaults)(t,e.type),r.block(()=>{for(let o of e.rules)(0, $s.shouldUseRule)(n,o)&&ci(t,o.keyword,o.definition,e.type);});}function df(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(lf(t,e),t.opts.allowUnionTypes||ff(t,e),pf(t,t.dataTypes));}function lf(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{ui(t.dataTypes,r)||Es(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`);}),gf(t,e);}}function ff(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Es(t,"use allowUnionTypes to allow union type keyword");}function pf(t,e){let r=t.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0, $s.shouldUseRule)(t.schema,s)){let{type:o}=s.definition;o.length&&!o.some(a=>mf(e,a))&&Es(t,`missing type "${o.join(",")}" for keyword "${n}"`);}}}function mf(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function ui(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function gf(t,e){let r=[];for(let n of t.dataTypes)ui(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r;}function Es(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0, ze.checkStrictMode)(t,e,t.opts.strictTypes);}var nn=class{constructor(e,r,n){if((0, gr.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0, ze.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",di(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0, gr.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!==false)&&(this.errsCount=e.gen.const("_errs",O.default.errors));}result(e,r,n){this.failResult((0, T.not)(e),r,n);}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else();}pass(e,r){this.failResult((0, T.not)(e),void 0,r);}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(false);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else();}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0, T._)`${r} !== undefined && (${(0, T.or)(this.invalid$data(),e)})`);}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n);}_error(e,r){(e?mr.reportExtraError:mr.reportError)(this,this.def.error,r);}$dataError(){(0, mr.reportError)(this,this.def.$dataError||mr.keyword$DataError);}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0, mr.resetErrorsCount)(this.gen,this.errsCount);}ok(e){this.allErrors||this.gen.if(e);}setParams(e,r){r?Object.assign(this.params,e):this.params=e;}block$data(e,r,n=T.nil){this.gen.block(()=>{this.check$data(e,n),r();});}check$data(e=T.nil,r=T.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:o,def:a}=this;n.if((0, T.or)((0, T._)`${s} === undefined`,r)),e!==T.nil&&n.assign(e,true),(o.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==T.nil&&n.assign(e,false)),n.else();}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:s,it:o}=this;return (0, T.or)(a(),i());function a(){if(n.length){if(!(r instanceof T.Name))throw new Error("ajv implementation error");let u=Array.isArray(n)?n:[n];return (0, T._)`${(0, rn.checkDataTypes)(u,r,o.opts.strictNumbers,rn.DataType.Wrong)}`}return T.nil}function i(){if(s.validateSchema){let u=e.scopeValue("validate$data",{ref:s.validateSchema});return (0, T._)`!${u}(${r})`}return T.nil}}subschema(e,r){let n=(0, Cs.getSubschema)(this.it,e);(0, Cs.extendSubschemaData)(n,this.it,e),(0, Cs.extendSubschemaMode)(n,e);let s={...this.it,...n,items:void 0,props:void 0};return tf(s,r),s}mergeEvaluated(e,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==true&&e.props!==void 0&&(n.props=ze.mergeEvaluated.props(s,e.props,n.props,r)),n.items!==true&&e.items!==void 0&&(n.items=ze.mergeEvaluated.items(s,e.items,n.items,r)));}mergeValidEvaluated(e,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==true||n.items!==true))return s.if(r,()=>this.mergeEvaluated(e,T.Name)),true}};it.KeywordCxt=nn;function ci(t,e,r,n){let s=new nn(t,r,e);"code"in r?r.code(s,n):s.$data&&r.validate?(0, gr.funcKeywordCode)(s,r):"macro"in r?(0, gr.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0, gr.funcKeywordCode)(s,r);}var hf=/^\/(?:[^~]|~0|~1)*$/,yf=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function di(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let s,o;if(t==="")return O.default.rootData;if(t[0]==="/"){if(!hf.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);s=t,o=O.default.rootData;}else {let c=yf.exec(t);if(!c)throw new Error(`Invalid JSON-pointer: ${t}`);let d=+c[1];if(s=c[2],s==="#"){if(d>=e)throw new Error(u("property/index",d));return n[e-d]}if(d>e)throw new Error(u("data",d));if(o=r[e-d],!s)return o}let a=o,i=s.split("/");for(let c of i)c&&(o=(0, T._)`${o}${(0, T.getProperty)((0, ze.unescapeJsonPointer)(c))}`,a=(0, T._)`${a} && ${o}`);return a;function u(c,d){return `Cannot access ${c} ${d} levels up, current level is ${e}`}}it.getData=di;});var sn=x(Ts=>{Object.defineProperty(Ts,"__esModule",{value:true});var xs=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=true;}};Ts.default=xs;});var yr=x(Ps=>{Object.defineProperty(Ps,"__esModule",{value:true});var As=pr(),Is=class extends Error{constructor(e,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0, As.resolveUrl)(e,r,n),this.missingSchema=(0, As.normalizeId)((0, As.getFullPath)(e,this.missingRef));}};Ps.default=Is;});var an=x(Pe=>{Object.defineProperty(Pe,"__esModule",{value:true});Pe.resolveSchema=Pe.getCompilingSchema=Pe.resolveRef=Pe.compileSchema=Pe.SchemaEnv=void 0;var qe=B(),vf=sn(),Ct=Je(),De=pr(),li=z(),kf=hr(),Ut=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0, De.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={};}};Pe.SchemaEnv=Ut;function js(t){let e=fi.call(this,t);if(e)return e;let r=(0, De.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:o}=this.opts,a=new qe.CodeGen(this.scope,{es5:n,lines:s,ownProperties:o}),i;t.$async&&(i=a.scopeValue("Error",{ref:vf.default,code:(0, qe._)`require("ajv/dist/runtime/validation_error").default`}));let u=a.scopeName("validate");t.validateName=u;let c={gen:a,allErrors:this.opts.allErrors,data:Ct.default.data,parentData:Ct.default.parentData,parentDataProperty:Ct.default.parentDataProperty,dataNames:[Ct.default.data],dataPathArr:[qe.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===true?{ref:t.schema,code:(0, qe.stringify)(t.schema)}:{ref:t.schema}),validateName:u,ValidationError:i,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:qe.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0, qe._)`""`,opts:this.opts,self:this},d;try{this._compilations.add(t),(0,kf.validateFunctionCode)(c),a.optimize(this.opts.code.optimize);let l=a.toString();d=`${a.scopeRefs(Ct.default.scope)}return ${l}`,this.opts.code.process&&(d=this.opts.code.process(d,t));let v=new Function(`${Ct.default.self}`,`${Ct.default.scope}`,d)(this,this.scope.get());if(this.scope.value(u,{ref:v}),v.errors=null,v.schema=t.schema,v.schemaEnv=t,t.$async&&(v.$async=!0),this.opts.code.source===!0&&(v.source={validateName:u,validateCode:l,scopeValues:a._values}),this.opts.unevaluated){let{props:m,items:p}=c;v.evaluated={props:m instanceof qe.Name?void 0:m,items:p instanceof qe.Name?void 0:p,dynamicProps:m instanceof qe.Name,dynamicItems:p instanceof qe.Name},v.source&&(v.source.evaluated=(0,qe.stringify)(v.evaluated));}return t.validate=v,t}catch(l){throw delete t.validate,delete t.validateName,d&&this.logger.error("Error compiling schema, function code:",d),l}finally{this._compilations.delete(t);}}Pe.compileSchema=js;function bf(t,e,r){var n;r=(0, De.resolveUrl)(this.opts.uriResolver,e,r);let s=t.refs[r];if(s)return s;let o=_f.call(this,t,r);if(o===void 0){let a=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:i}=this.opts;a&&(o=new Ut({schema:a,schemaId:i,root:t,baseId:e}));}if(o!==void 0)return t.refs[r]=wf.call(this,o)}Pe.resolveRef=bf;function wf(t){return (0, De.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:js.call(this,t)}function fi(t){for(let e of this._compilations)if(Sf(e,t))return e}Pe.getCompilingSchema=fi;function Sf(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function _f(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||on.call(this,t,e)}function on(t,e){let r=this.opts.uriResolver.parse(e),n=(0, De._getFullPath)(this.opts.uriResolver,r),s=(0, De.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===s)return Os.call(this,r,t);let o=(0, De.normalizeId)(n),a=this.refs[o]||this.schemas[o];if(typeof a=="string"){let i=on.call(this,t,a);return typeof i?.schema!="object"?void 0:Os.call(this,r,i)}if(typeof a?.schema=="object"){if(a.validate||js.call(this,a),o===(0, De.normalizeId)(e)){let{schema:i}=a,{schemaId:u}=this.opts,c=i[u];return c&&(s=(0, De.resolveUrl)(this.opts.uriResolver,s,c)),new Ut({schema:i,schemaId:u,root:t,baseId:s})}return Os.call(this,r,a)}}Pe.resolveSchema=on;var Rf=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Os(t,{baseId:e,schema:r,root:n}){var s;if(((s=t.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let i of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let u=r[(0, li.unescapeFragment)(i)];if(u===void 0)return;r=u;let c=typeof r=="object"&&r[this.opts.schemaId];!Rf.has(i)&&c&&(e=(0, De.resolveUrl)(this.opts.uriResolver,e,c));}let o;if(typeof r!="boolean"&&r.$ref&&!(0, li.schemaHasRulesButRef)(r,this.RULES)){let i=(0, De.resolveUrl)(this.opts.uriResolver,e,r.$ref);o=on.call(this,n,i);}let{schemaId:a}=this.opts;if(o=o||new Ut({schema:r,schemaId:a,root:n,baseId:e}),o.schema!==o.root.schema)return o}});var pi=x((Ay,Cf)=>{Cf.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:false};});var qs=x((Iy,yi)=>{var $f=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),gi=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function Ns(t){let e="",r=0,n=0;for(n=0;n<t.length;n++)if(r=t[n].charCodeAt(0),r!==48){if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return "";e+=t[n];break}for(n+=1;n<t.length;n++){if(r=t[n].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return "";e+=t[n];}return e}var Ef=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function mi(t){return t.length=0,true}function xf(t,e,r){if(t.length){let n=Ns(t);if(n!=="")e.push(n);else return r.error=true,false;t.length=0;}return true}function Tf(t){let e=0,r={error:false,address:"",zone:""},n=[],s=[],o=false,a=false,i=xf;for(let u=0;u<t.length;u++){let c=t[u];if(!(c==="["||c==="]"))if(c===":"){if(o===true&&(a=true),!i(s,n,r))break;if(++e>7){r.error=true;break}u>0&&t[u-1]===":"&&(o=true),n.push(":");continue}else if(c==="%"){if(!i(s,n,r))break;i=mi;}else {s.push(c);continue}}return s.length&&(i===mi?r.zone=s.join(""):a?n.push(s.join("")):n.push(Ns(s))),r.address=n.join(""),r}function hi(t){if(Af(t,":")<2)return {host:t,isIPV6:false};let e=Tf(t);if(e.error)return {host:t,isIPV6:false};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:true,escapedHost:n}}}function Af(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function If(t){let e=t,r=[],n=-1,s=0;for(;s=e.length;){if(s===1){if(e===".")break;if(e==="/"){r.push("/");break}else {r.push(e);break}}else if(s===2){if(e[0]==="."){if(e[1]===".")break;if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&(e[1]==="."||e[1]==="/")){r.push("/");break}}else if(s===3&&e==="/.."){r.length!==0&&r.pop(),r.push("/");break}if(e[0]==="."){if(e[1]==="."){if(e[2]==="/"){e=e.slice(3);continue}}else if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&e[1]==="."){if(e[2]==="/"){e=e.slice(2);continue}else if(e[2]==="."&&e[3]==="/"){e=e.slice(3),r.length!==0&&r.pop();continue}}if((n=e.indexOf("/",1))===-1){r.push(e);break}else r.push(e.slice(0,n)),e=e.slice(n);}return r.join("")}function Pf(t,e){let r=e!==true?escape:unescape;return t.scheme!==void 0&&(t.scheme=r(t.scheme)),t.userinfo!==void 0&&(t.userinfo=r(t.userinfo)),t.host!==void 0&&(t.host=r(t.host)),t.path!==void 0&&(t.path=r(t.path)),t.query!==void 0&&(t.query=r(t.query)),t.fragment!==void 0&&(t.fragment=r(t.fragment)),t}function Of(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!gi(r)){let n=hi(r);n.isIPV6===true?r=`[${n.escapedHost}]`:r=t.host;}e.push(r);}return (typeof t.port=="number"||typeof t.port=="string")&&(e.push(":"),e.push(String(t.port))),e.length?e.join(""):void 0}yi.exports={nonSimpleDomain:Ef,recomposeAuthority:Of,normalizeComponentEncoding:Pf,removeDotSegments:If,isIPv4:gi,isUUID:$f,normalizeIPv6:hi,stringArrayToHexStripped:Ns};});var Si=x((Py,wi)=>{var{isUUID:jf}=qs(),Nf=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,qf=["http","https","ws","wss","urn","urn:uuid"];function Df(t){return qf.indexOf(t)!==-1}function Ds(t){return t.secure===true?true:t.secure===false?false:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):false}function vi(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function ki(t){let e=String(t.scheme).toLowerCase()==="https";return (t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function Ff(t){return t.secure=Ds(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function Mf(t){if((t.port===(Ds(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0;}return t.fragment=void 0,t}function Lf(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(Nf);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,o=Fs(s);t.path=void 0,o&&(t=o.parse(t,e));}else t.error=t.error||"URN can not be parsed.";return t}function Vf(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,o=Fs(s);o&&(t=o.serialize(t,e));let a=t,i=t.nss;return a.path=`${n||e.nid}:${i}`,e.skipEscape=true,a}function Bf(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!jf(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function Gf(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var bi={scheme:"http",domainHost:true,parse:vi,serialize:ki},Kf={scheme:"https",domainHost:bi.domainHost,parse:vi,serialize:ki},un={scheme:"ws",domainHost:true,parse:Ff,serialize:Mf},Uf={scheme:"wss",domainHost:un.domainHost,parse:un.parse,serialize:un.serialize},Jf={scheme:"urn",parse:Lf,serialize:Vf,skipNormalize:true},zf={scheme:"urn:uuid",parse:Bf,serialize:Gf,skipNormalize:true},cn={http:bi,https:Kf,ws:un,wss:Uf,urn:Jf,"urn:uuid":zf};Object.setPrototypeOf(cn,null);function Fs(t){return t&&(cn[t]||cn[t.toLowerCase()])||void 0}wi.exports={wsIsSecure:Ds,SCHEMES:cn,isValidSchemeName:Df,getSchemeHandler:Fs};});var Ci=x((Oy,ln)=>{var{normalizeIPv6:Hf,removeDotSegments:vr,recomposeAuthority:Wf,normalizeComponentEncoding:dn,isIPv4:Yf,nonSimpleDomain:Xf}=qs(),{SCHEMES:Qf,getSchemeHandler:_i}=Si();function Zf(t,e){return typeof t=="string"?t=Be(He(t,e),e):typeof t=="object"&&(t=He(Be(t,e),e)),t}function ep(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=Ri(He(t,n),He(e,n),n,true);return n.skipEscape=true,Be(s,n)}function Ri(t,e,r,n){let s={};return n||(t=He(Be(t,r),r),e=He(Be(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=vr(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=vr(e.path||""),s.query=e.query):(e.path?(e.path[0]==="/"?s.path=vr(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=vr(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function tp(t,e,r){return typeof t=="string"?(t=unescape(t),t=Be(dn(He(t,r),true),{...r,skipEscape:true})):typeof t=="object"&&(t=Be(dn(t,true),{...r,skipEscape:true})),typeof e=="string"?(e=unescape(e),e=Be(dn(He(e,r),true),{...r,skipEscape:true})):typeof e=="object"&&(e=Be(dn(e,true),{...r,skipEscape:true})),t.toLowerCase()===e.toLowerCase()}function Be(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],o=_i(n.scheme||r.scheme);o&&o.serialize&&o.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&s.push(r.scheme,":");let a=Wf(r);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path[0]!=="/"&&s.push("/")),r.path!==void 0){let i=r.path;!n.absolutePath&&(!o||!o.absolutePath)&&(i=vr(i)),a===void 0&&i[0]==="/"&&i[1]==="/"&&(i="/%2F"+i.slice(2)),s.push(i);}return r.query!==void 0&&s.push("?",r.query),r.fragment!==void 0&&s.push("#",r.fragment),s.join("")}var rp=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function He(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=false;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let o=t.match(rp);if(o){if(n.scheme=o[1],n.userinfo=o[3],n.host=o[4],n.port=parseInt(o[5],10),n.path=o[6]||"",n.query=o[7],n.fragment=o[8],isNaN(n.port)&&(n.port=o[5]),n.host)if(Yf(n.host)===false){let u=Hf(n.host);n.host=u.host.toLowerCase(),s=u.isIPV6;}else s=true;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 a=_i(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===false&&Xf(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase());}catch(i){n.error=n.error||"Host's domain name can not be converted to ASCII: "+i;}(!a||a&&!a.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r);}else n.error=n.error||"URI can not be parsed.";return n}var Ms={SCHEMES:Qf,normalize:Zf,resolve:ep,resolveComponent:Ri,equal:tp,serialize:Be,parse:He};ln.exports=Ms;ln.exports.default=Ms;ln.exports.fastUri=Ms;});var Ei=x(Ls=>{Object.defineProperty(Ls,"__esModule",{value:true});var $i=Ci();$i.code='require("ajv/dist/runtime/uri").default';Ls.default=$i;});var Ni=x(ce=>{Object.defineProperty(ce,"__esModule",{value:true});ce.CodeGen=ce.Name=ce.nil=ce.stringify=ce.str=ce._=ce.KeywordCxt=void 0;var np=hr();Object.defineProperty(ce,"KeywordCxt",{enumerable:true,get:function(){return np.KeywordCxt}});var Jt=B();Object.defineProperty(ce,"_",{enumerable:true,get:function(){return Jt._}});Object.defineProperty(ce,"str",{enumerable:true,get:function(){return Jt.str}});Object.defineProperty(ce,"stringify",{enumerable:true,get:function(){return Jt.stringify}});Object.defineProperty(ce,"nil",{enumerable:true,get:function(){return Jt.nil}});Object.defineProperty(ce,"Name",{enumerable:true,get:function(){return Jt.Name}});Object.defineProperty(ce,"CodeGen",{enumerable:true,get:function(){return Jt.CodeGen}});var sp=sn(),Pi=yr(),op=gs(),kr=an(),ap=B(),br=pr(),fn=fr(),Bs=z(),xi=pi(),ip=Ei(),Oi=(t,e)=>new RegExp(t,e);Oi.code="new RegExp";var up=["removeAdditional","useDefaults","coerceTypes"],cp=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),dp={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."},lp={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Ti=200;function fp(t){var e,r,n,s,o,a,i,u,c,d,l,k,v,m,p,b,g,f,y,_,w,$,R,E,N;let D=t.strict,M=(e=t.code)===null||e===void 0?void 0:e.optimize,te=M===true||M===void 0?1:M||0,U=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Oi,le=(s=t.uriResolver)!==null&&s!==void 0?s:ip.default;return {strictSchema:(a=(o=t.strictSchema)!==null&&o!==void 0?o:D)!==null&&a!==void 0?a:true,strictNumbers:(u=(i=t.strictNumbers)!==null&&i!==void 0?i:D)!==null&&u!==void 0?u:true,strictTypes:(d=(c=t.strictTypes)!==null&&c!==void 0?c:D)!==null&&d!==void 0?d:"log",strictTuples:(k=(l=t.strictTuples)!==null&&l!==void 0?l:D)!==null&&k!==void 0?k:"log",strictRequired:(m=(v=t.strictRequired)!==null&&v!==void 0?v:D)!==null&&m!==void 0?m:false,code:t.code?{...t.code,optimize:te,regExp:U}:{optimize:te,regExp:U},loopRequired:(p=t.loopRequired)!==null&&p!==void 0?p:Ti,loopEnum:(b=t.loopEnum)!==null&&b!==void 0?b:Ti,meta:(g=t.meta)!==null&&g!==void 0?g:true,messages:(f=t.messages)!==null&&f!==void 0?f:true,inlineRefs:(y=t.inlineRefs)!==null&&y!==void 0?y:true,schemaId:(_=t.schemaId)!==null&&_!==void 0?_:"$id",addUsedSchema:(w=t.addUsedSchema)!==null&&w!==void 0?w:true,validateSchema:($=t.validateSchema)!==null&&$!==void 0?$:true,validateFormats:(R=t.validateFormats)!==null&&R!==void 0?R:true,unicodeRegExp:(E=t.unicodeRegExp)!==null&&E!==void 0?E:true,int32range:(N=t.int32range)!==null&&N!==void 0?N:true,uriResolver:le}}var wr=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...fp(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new ap.ValueScope({scope:{},prefixes:cp,es5:r,lines:n}),this.logger=vp(e.logger);let s=e.validateFormats;e.validateFormats=false,this.RULES=(0, op.getRules)(),Ai.call(this,dp,e,"NOT SUPPORTED"),Ai.call(this,lp,e,"DEPRECATED","warn"),this._metaOpts=hp.call(this),e.formats&&mp.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&gp.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),pp.call(this),e.validateFormats=s;}_addVocabularies(){this.addKeyword("$async");}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,s=xi;n==="id"&&(s={...xi},s.id=s.$id,delete s.$id),r&&e&&this.addMetaSchema(s,s[n],false);}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let s=n(r);return "$async"in n||(this.errors=n.errors),s}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return s.call(this,e,r);async function s(d,l){await o.call(this,d.$schema);let k=this._addSchema(d,l);return k.validate||a.call(this,k)}async function o(d){d&&!this.getSchema(d)&&await s.call(this,{$ref:d},true);}async function a(d){try{return this._compileSchemaEnv(d)}catch(l){if(!(l instanceof Pi.default))throw l;return i.call(this,l),await u.call(this,l.missingSchema),a.call(this,d)}}function i({missingSchema:d,missingRef:l}){if(this.refs[d])throw new Error(`AnySchema ${d} is loaded but ${l} cannot be resolved`)}async function u(d){let l=await c.call(this,d);this.refs[d]||await o.call(this,l.$schema),this.refs[d]||this.addSchema(l,d,r);}async function c(d){let l=this._loading[d];if(l)return l;try{return await(this._loading[d]=n(d))}finally{delete this._loading[d];}}}addSchema(e,r,n,s=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,n,s);return this}let o;if(typeof e=="object"){let{schemaId:a}=this.opts;if(o=e[a],o!==void 0&&typeof o!="string")throw new Error(`schema ${a} must be string`)}return r=(0, br.normalizeId)(r||o),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,s,true),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,true,n),this}validateSchema(e,r){if(typeof e=="boolean")return true;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,true;let s=this.validate(n,e);if(!s&&r){let o="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(o);else throw new Error(o)}return s}getSchema(e){let r;for(;typeof(r=Ii.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,s=new kr.SchemaEnv({schema:{},schemaId:n});if(r=kr.resolveSchema.call(this,s,e),!r)return;this.refs[e]=r;}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case "undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case "string":{let r=Ii.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case "object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0, br.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(bp.call(this,n,r),!r)return (0, Bs.eachItem)(n,o=>Vs.call(this,o)),this;Sp.call(this,r);let s={...r,type:(0, fn.getJSONTypes)(r.type),schemaType:(0, fn.getJSONTypes)(r.schemaType)};return (0, Bs.eachItem)(n,s.type.length===0?o=>Vs.call(this,o,s):o=>s.type.forEach(a=>Vs.call(this,o,s,a))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let s=n.rules.findIndex(o=>o.keyword===e);s>=0&&n.rules.splice(s,1);}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return !e||e.length===0?"No errors":e.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,o)=>s+r+o)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let s of r){let o=s.split("/").slice(1),a=e;for(let i of o)a=a[i];for(let i in n){let u=n[i];if(typeof u!="object")continue;let{$data:c}=u.definition,d=a[i];c&&d&&(a[i]=ji(d));}}return e}_removeAllSchemas(e,r){for(let n in e){let s=e[n];(!r||r.test(n))&&(typeof s=="string"?delete e[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete e[n]));}}_addSchema(e,r,n,s=this.opts.validateSchema,o=this.opts.addUsedSchema){let a,{schemaId:i}=this.opts;if(typeof e=="object")a=e[i];else {if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let u=this._cache.get(e);if(u!==void 0)return u;n=(0, br.normalizeId)(a||n);let c=br.getSchemaRefs.call(this,e,n);return u=new kr.SchemaEnv({schema:e,schemaId:i,meta:r,baseId:n,localRefs:c}),this._cache.set(u.schema,u),o&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=u),s&&this.validateSchema(e,true),u}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):kr.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{kr.compileSchema.call(this,e);}finally{this.opts=r;}}};wr.ValidationError=sp.default;wr.MissingRefError=Pi.default;ce.default=wr;function Ai(t,e,r,n="error"){for(let s in t){let o=s;o in e&&this.logger[n](`${r}: option ${s}. ${t[o]}`);}}function Ii(t){return t=(0, br.normalizeId)(t),this.schemas[t]||this.refs[t]}function pp(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e);}function mp(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e);}}function gp(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r);}}function hp(){let t={...this.opts};for(let e of up)delete t[e];return t}var yp={log(){},warn(){},error(){}};function vp(t){if(t===false)return yp;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var kp=/^[a-z_$][a-z0-9_$:-]*$/i;function bp(t,e){let{RULES:r}=this;if((0, Bs.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!kp.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function Vs(t,e,r){var n;let s=e?.post;if(r&&s)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:o}=this,a=s?o.post:o.rules.find(({type:u})=>u===r);if(a||(a={type:r,rules:[]},o.rules.push(a)),o.keywords[t]=true,!e)return;let i={keyword:t,definition:{...e,type:(0, fn.getJSONTypes)(e.type),schemaType:(0, fn.getJSONTypes)(e.schemaType)}};e.before?wp.call(this,a,i,e.before):a.rules.push(i),o.all[t]=i,(n=e.implements)===null||n===void 0||n.forEach(u=>this.addKeyword(u));}function wp(t,e,r){let n=t.rules.findIndex(s=>s.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`));}function Sp(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=ji(e)),t.validateSchema=this.compile(e,true));}var _p={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function ji(t){return {anyOf:[t,_p]}}});var qi=x(Gs=>{Object.defineProperty(Gs,"__esModule",{value:true});var Rp={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Gs.default=Rp;});var Li=x($t=>{Object.defineProperty($t,"__esModule",{value:true});$t.callRef=$t.getValidate=void 0;var Cp=yr(),Di=Ie(),Se=B(),zt=Je(),Fi=an(),pn=z(),$p={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:s,schemaEnv:o,validateName:a,opts:i,self:u}=n,{root:c}=o;if((r==="#"||r==="#/")&&s===c.baseId)return l();let d=Fi.resolveRef.call(u,c,s,r);if(d===void 0)throw new Cp.default(n.opts.uriResolver,s,r);if(d instanceof Fi.SchemaEnv)return k(d);return v(d);function l(){if(o===c)return mn(t,a,o,o.$async);let m=e.scopeValue("root",{ref:c});return mn(t,(0, Se._)`${m}.validate`,c,c.$async)}function k(m){let p=Mi(t,m);mn(t,p,m,m.$async);}function v(m){let p=e.scopeValue("schema",i.code.source===true?{ref:m,code:(0, Se.stringify)(m)}:{ref:m}),b=e.name("valid"),g=t.subschema({schema:m,dataTypes:[],schemaPath:Se.nil,topSchemaRef:p,errSchemaPath:r},b);t.mergeEvaluated(g),t.ok(b);}}};function Mi(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0, Se._)`${r.scopeValue("wrapper",{ref:e})}.validate`}$t.getValidate=Mi;function mn(t,e,r,n){let{gen:s,it:o}=t,{allErrors:a,schemaEnv:i,opts:u}=o,c=u.passContext?zt.default.this:Se.nil;n?d():l();function d(){if(!i.$async)throw new Error("async schema referenced by sync schema");let m=s.let("valid");s.try(()=>{s.code((0, Se._)`await ${(0, Di.callValidateCode)(t,e,c)}`),v(e),a||s.assign(m,true);},p=>{s.if((0, Se._)`!(${p} instanceof ${o.ValidationError})`,()=>s.throw(p)),k(p),a||s.assign(m,false);}),t.ok(m);}function l(){t.result((0, Di.callValidateCode)(t,e,c),()=>v(e),()=>k(e));}function k(m){let p=(0, Se._)`${m}.errors`;s.assign(zt.default.vErrors,(0, Se._)`${zt.default.vErrors} === null ? ${p} : ${zt.default.vErrors}.concat(${p})`),s.assign(zt.default.errors,(0, Se._)`${zt.default.vErrors}.length`);}function v(m){var p;if(!o.opts.unevaluated)return;let b=(p=r?.validate)===null||p===void 0?void 0:p.evaluated;if(o.props!==true)if(b&&!b.dynamicProps)b.props!==void 0&&(o.props=pn.mergeEvaluated.props(s,b.props,o.props));else {let g=s.var("props",(0, Se._)`${m}.evaluated.props`);o.props=pn.mergeEvaluated.props(s,g,o.props,Se.Name);}if(o.items!==true)if(b&&!b.dynamicItems)b.items!==void 0&&(o.items=pn.mergeEvaluated.items(s,b.items,o.items));else {let g=s.var("items",(0, Se._)`${m}.evaluated.items`);o.items=pn.mergeEvaluated.items(s,g,o.items,Se.Name);}}}$t.callRef=mn;$t.default=$p;});var Vi=x(Ks=>{Object.defineProperty(Ks,"__esModule",{value:true});var Ep=qi(),xp=Li(),Tp=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",Ep.default,xp.default];Ks.default=Tp;});var Bi=x(Us=>{Object.defineProperty(Us,"__esModule",{value:true});var gn=B(),ut=gn.operators,hn={maximum:{okStr:"<=",ok:ut.LTE,fail:ut.GT},minimum:{okStr:">=",ok:ut.GTE,fail:ut.LT},exclusiveMaximum:{okStr:"<",ok:ut.LT,fail:ut.GTE},exclusiveMinimum:{okStr:">",ok:ut.GT,fail:ut.LTE}},Ap={message:({keyword:t,schemaCode:e})=>(0, gn.str)`must be ${hn[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0, gn._)`{comparison: ${hn[t].okStr}, limit: ${e}}`},Ip={keyword:Object.keys(hn),type:"number",schemaType:"number",$data:true,error:Ap,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0, gn._)`${r} ${hn[e].fail} ${n} || isNaN(${r})`);}};Us.default=Ip;});var Gi=x(Js=>{Object.defineProperty(Js,"__esModule",{value:true});var Sr=B(),Pp={message:({schemaCode:t})=>(0, Sr.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0, Sr._)`{multipleOf: ${t}}`},Op={keyword:"multipleOf",type:"number",schemaType:"number",$data:true,error:Pp,code(t){let{gen:e,data:r,schemaCode:n,it:s}=t,o=s.opts.multipleOfPrecision,a=e.let("res"),i=o?(0, Sr._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${o}`:(0, Sr._)`${a} !== parseInt(${a})`;t.fail$data((0, Sr._)`(${n} === 0 || (${a} = ${r}/${n}, ${i}))`);}};Js.default=Op;});var Ui=x(zs=>{Object.defineProperty(zs,"__esModule",{value:true});function Ki(t){let e=t.length,r=0,n=0,s;for(;n<e;)r++,s=t.charCodeAt(n++),s>=55296&&s<=56319&&n<e&&(s=t.charCodeAt(n),(s&64512)===56320&&n++);return r}zs.default=Ki;Ki.code='require("ajv/dist/runtime/ucs2length").default';});var Ji=x(Hs=>{Object.defineProperty(Hs,"__esModule",{value:true});var Et=B(),jp=z(),Np=Ui(),qp={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return (0, Et.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0, Et._)`{limit: ${t}}`},Dp={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:true,error:qp,code(t){let{keyword:e,data:r,schemaCode:n,it:s}=t,o=e==="maxLength"?Et.operators.GT:Et.operators.LT,a=s.opts.unicode===false?(0, Et._)`${r}.length`:(0, Et._)`${(0, jp.useFunc)(t.gen,Np.default)}(${r})`;t.fail$data((0, Et._)`${a} ${o} ${n}`);}};Hs.default=Dp;});var zi=x(Ws=>{Object.defineProperty(Ws,"__esModule",{value:true});var Fp=Ie(),Mp=z(),Ht=B(),Lp={message:({schemaCode:t})=>(0, Ht.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0, Ht._)`{pattern: ${t}}`},Vp={keyword:"pattern",type:"string",schemaType:"string",$data:true,error:Lp,code(t){let{gen:e,data:r,$data:n,schema:s,schemaCode:o,it:a}=t,i=a.opts.unicodeRegExp?"u":"";if(n){let{regExp:u}=a.opts.code,c=u.code==="new RegExp"?(0, Ht._)`new RegExp`:(0, Mp.useFunc)(e,u),d=e.let("valid");e.try(()=>e.assign(d,(0, Ht._)`${c}(${o}, ${i}).test(${r})`),()=>e.assign(d,false)),t.fail$data((0, Ht._)`!${d}`);}else {let u=(0, Fp.usePattern)(t,s);t.fail$data((0, Ht._)`!${u}.test(${r})`);}}};Ws.default=Vp;});var Hi=x(Ys=>{Object.defineProperty(Ys,"__esModule",{value:true});var _r=B(),Bp={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return (0, _r.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0, _r._)`{limit: ${t}}`},Gp={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:true,error:Bp,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxProperties"?_r.operators.GT:_r.operators.LT;t.fail$data((0, _r._)`Object.keys(${r}).length ${s} ${n}`);}};Ys.default=Gp;});var Wi=x(Xs=>{Object.defineProperty(Xs,"__esModule",{value:true});var Rr=Ie(),Cr=B(),Kp=z(),Up={message:({params:{missingProperty:t}})=>(0, Cr.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0, Cr._)`{missingProperty: ${t}}`},Jp={keyword:"required",type:"object",schemaType:"array",$data:true,error:Up,code(t){let{gen:e,schema:r,schemaCode:n,data:s,$data:o,it:a}=t,{opts:i}=a;if(!o&&r.length===0)return;let u=r.length>=i.loopRequired;if(a.allErrors?c():d(),i.strictRequired){let v=t.parentSchema.properties,{definedProperties:m}=t.it;for(let p of r)if(v?.[p]===void 0&&!m.has(p)){let b=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${p}" is not defined at "${b}" (strictRequired)`;(0, Kp.checkStrictMode)(a,g,a.opts.strictRequired);}}function c(){if(u||o)t.block$data(Cr.nil,l);else for(let v of r)(0, Rr.checkReportMissingProp)(t,v);}function d(){let v=e.let("missing");if(u||o){let m=e.let("valid",true);t.block$data(m,()=>k(v,m)),t.ok(m);}else e.if((0, Rr.checkMissingProp)(t,r,v)),(0, Rr.reportMissingProp)(t,v),e.else();}function l(){e.forOf("prop",n,v=>{t.setParams({missingProperty:v}),e.if((0, Rr.noPropertyInData)(e,s,v,i.ownProperties),()=>t.error());});}function k(v,m){t.setParams({missingProperty:v}),e.forOf(v,n,()=>{e.assign(m,(0, Rr.propertyInData)(e,s,v,i.ownProperties)),e.if((0, Cr.not)(m),()=>{t.error(),e.break();});},Cr.nil);}}};Xs.default=Jp;});var Yi=x(Qs=>{Object.defineProperty(Qs,"__esModule",{value:true});var $r=B(),zp={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return (0, $r.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0, $r._)`{limit: ${t}}`},Hp={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:true,error:zp,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxItems"?$r.operators.GT:$r.operators.LT;t.fail$data((0, $r._)`${r}.length ${s} ${n}`);}};Qs.default=Hp;});var yn=x(Zs=>{Object.defineProperty(Zs,"__esModule",{value:true});var Xi=_s();Xi.code='require("ajv/dist/runtime/equal").default';Zs.default=Xi;});var Qi=x(to=>{Object.defineProperty(to,"__esModule",{value:true});var eo=fr(),de=B(),Wp=z(),Yp=yn(),Xp={message:({params:{i:t,j:e}})=>(0, de.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0, de._)`{i: ${t}, j: ${e}}`},Qp={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:true,error:Xp,code(t){let{gen:e,data:r,$data:n,schema:s,parentSchema:o,schemaCode:a,it:i}=t;if(!n&&!s)return;let u=e.let("valid"),c=o.items?(0, eo.getSchemaTypes)(o.items):[];t.block$data(u,d,(0, de._)`${a} === false`),t.ok(u);function d(){let m=e.let("i",(0, de._)`${r}.length`),p=e.let("j");t.setParams({i:m,j:p}),e.assign(u,true),e.if((0, de._)`${m} > 1`,()=>(l()?k:v)(m,p));}function l(){return c.length>0&&!c.some(m=>m==="object"||m==="array")}function k(m,p){let b=e.name("item"),g=(0, eo.checkDataTypes)(c,b,i.opts.strictNumbers,eo.DataType.Wrong),f=e.const("indices",(0, de._)`{}`);e.for((0, de._)`;${m}--;`,()=>{e.let(b,(0, de._)`${r}[${m}]`),e.if(g,(0, de._)`continue`),c.length>1&&e.if((0, de._)`typeof ${b} == "string"`,(0, de._)`${b} += "_"`),e.if((0, de._)`typeof ${f}[${b}] == "number"`,()=>{e.assign(p,(0, de._)`${f}[${b}]`),t.error(),e.assign(u,false).break();}).code((0, de._)`${f}[${b}] = ${m}`);});}function v(m,p){let b=(0, Wp.useFunc)(e,Yp.default),g=e.name("outer");e.label(g).for((0, de._)`;${m}--;`,()=>e.for((0, de._)`${p} = ${m}; ${p}--;`,()=>e.if((0, de._)`${b}(${r}[${m}], ${r}[${p}])`,()=>{t.error(),e.assign(u,false).break(g);})));}}};to.default=Qp;});var Zi=x(no=>{Object.defineProperty(no,"__esModule",{value:true});var ro=B(),Zp=z(),em=yn(),tm={message:"must be equal to constant",params:({schemaCode:t})=>(0, ro._)`{allowedValue: ${t}}`},rm={keyword:"const",$data:true,error:tm,code(t){let{gen:e,data:r,$data:n,schemaCode:s,schema:o}=t;n||o&&typeof o=="object"?t.fail$data((0, ro._)`!${(0, Zp.useFunc)(e,em.default)}(${r}, ${s})`):t.fail((0, ro._)`${o} !== ${r}`);}};no.default=rm;});var eu=x(so=>{Object.defineProperty(so,"__esModule",{value:true});var Er=B(),nm=z(),sm=yn(),om={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0, Er._)`{allowedValues: ${t}}`},am={keyword:"enum",schemaType:"array",$data:true,error:om,code(t){let{gen:e,data:r,$data:n,schema:s,schemaCode:o,it:a}=t;if(!n&&s.length===0)throw new Error("enum must have non-empty array");let i=s.length>=a.opts.loopEnum,u,c=()=>u??(u=(0, nm.useFunc)(e,sm.default)),d;if(i||n)d=e.let("valid"),t.block$data(d,l);else {if(!Array.isArray(s))throw new Error("ajv implementation error");let v=e.const("vSchema",o);d=(0, Er.or)(...s.map((m,p)=>k(v,p)));}t.pass(d);function l(){e.assign(d,false),e.forOf("v",o,v=>e.if((0, Er._)`${c()}(${r}, ${v})`,()=>e.assign(d,true).break()));}function k(v,m){let p=s[m];return typeof p=="object"&&p!==null?(0, Er._)`${c()}(${r}, ${v}[${m}])`:(0, Er._)`${r} === ${p}`}}};so.default=am;});var tu=x(oo=>{Object.defineProperty(oo,"__esModule",{value:true});var im=Bi(),um=Gi(),cm=Ji(),dm=zi(),lm=Hi(),fm=Wi(),pm=Yi(),mm=Qi(),gm=Zi(),hm=eu(),ym=[im.default,um.default,cm.default,dm.default,lm.default,fm.default,pm.default,mm.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},gm.default,hm.default];oo.default=ym;});var io=x(xr=>{Object.defineProperty(xr,"__esModule",{value:true});xr.validateAdditionalItems=void 0;var xt=B(),ao=z(),vm={message:({params:{len:t}})=>(0, xt.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0, xt._)`{limit: ${t}}`},km={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:vm,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0, ao.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}ru(t,n);}};function ru(t,e){let{gen:r,schema:n,data:s,keyword:o,it:a}=t;a.items=true;let i=r.const("len",(0, xt._)`${s}.length`);if(n===false)t.setParams({len:e.length}),t.pass((0, xt._)`${i} <= ${e.length}`);else if(typeof n=="object"&&!(0, ao.alwaysValidSchema)(a,n)){let c=r.var("valid",(0, xt._)`${i} <= ${e.length}`);r.if((0, xt.not)(c),()=>u(c)),t.ok(c);}function u(c){r.forRange("i",e.length,i,d=>{t.subschema({keyword:o,dataProp:d,dataPropType:ao.Type.Num},c),a.allErrors||r.if((0, xt.not)(c),()=>r.break());});}}xr.validateAdditionalItems=ru;xr.default=km;});var uo=x(Tr=>{Object.defineProperty(Tr,"__esModule",{value:true});Tr.validateTuple=void 0;var nu=B(),vn=z(),bm=Ie(),wm={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return su(t,"additionalItems",e);r.items=true,!(0, vn.alwaysValidSchema)(r,e)&&t.ok((0, bm.validateArray)(t));}};function su(t,e,r=t.schema){let{gen:n,parentSchema:s,data:o,keyword:a,it:i}=t;d(s),i.opts.unevaluated&&r.length&&i.items!==true&&(i.items=vn.mergeEvaluated.items(n,r.length,i.items));let u=n.name("valid"),c=n.const("len",(0, nu._)`${o}.length`);r.forEach((l,k)=>{(0, vn.alwaysValidSchema)(i,l)||(n.if((0, nu._)`${c} > ${k}`,()=>t.subschema({keyword:a,schemaProp:k,dataProp:k},u)),t.ok(u));});function d(l){let{opts:k,errSchemaPath:v}=i,m=r.length,p=m===l.minItems&&(m===l.maxItems||l[e]===false);if(k.strictTuples&&!p){let b=`"${a}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${v}"`;(0, vn.checkStrictMode)(i,b,k.strictTuples);}}}Tr.validateTuple=su;Tr.default=wm;});var ou=x(co=>{Object.defineProperty(co,"__esModule",{value:true});var Sm=uo(),_m={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0, Sm.validateTuple)(t,"items")};co.default=_m;});var iu=x(lo=>{Object.defineProperty(lo,"__esModule",{value:true});var au=B(),Rm=z(),Cm=Ie(),$m=io(),Em={message:({params:{len:t}})=>(0, au.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0, au._)`{limit: ${t}}`},xm={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:Em,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:s}=r;n.items=true,!(0, Rm.alwaysValidSchema)(n,e)&&(s?(0, $m.validateAdditionalItems)(t,s):t.ok((0, Cm.validateArray)(t)));}};lo.default=xm;});var uu=x(fo=>{Object.defineProperty(fo,"__esModule",{value:true});var Oe=B(),kn=z(),Tm={message:({params:{min:t,max:e}})=>e===void 0?(0, Oe.str)`must contain at least ${t} valid item(s)`:(0, Oe.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0, Oe._)`{minContains: ${t}}`:(0, Oe._)`{minContains: ${t}, maxContains: ${e}}`},Am={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:true,error:Tm,code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:o}=t,a,i,{minContains:u,maxContains:c}=n;o.opts.next?(a=u===void 0?1:u,i=c):a=1;let d=e.const("len",(0, Oe._)`${s}.length`);if(t.setParams({min:a,max:i}),i===void 0&&a===0){(0, kn.checkStrictMode)(o,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(i!==void 0&&a>i){(0, kn.checkStrictMode)(o,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0, kn.alwaysValidSchema)(o,r)){let p=(0, Oe._)`${d} >= ${a}`;i!==void 0&&(p=(0, Oe._)`${p} && ${d} <= ${i}`),t.pass(p);return}o.items=true;let l=e.name("valid");i===void 0&&a===1?v(l,()=>e.if(l,()=>e.break())):a===0?(e.let(l,true),i!==void 0&&e.if((0, Oe._)`${s}.length > 0`,k)):(e.let(l,false),k()),t.result(l,()=>t.reset());function k(){let p=e.name("_valid"),b=e.let("count",0);v(p,()=>e.if(p,()=>m(b)));}function v(p,b){e.forRange("i",0,d,g=>{t.subschema({keyword:"contains",dataProp:g,dataPropType:kn.Type.Num,compositeRule:true},p),b();});}function m(p){e.code((0, Oe._)`${p}++`),i===void 0?e.if((0, Oe._)`${p} >= ${a}`,()=>e.assign(l,true).break()):(e.if((0, Oe._)`${p} > ${i}`,()=>e.assign(l,false).break()),a===1?e.assign(l,true):e.if((0, Oe._)`${p} >= ${a}`,()=>e.assign(l,true)));}}};fo.default=Am;});var lu=x(Ge=>{Object.defineProperty(Ge,"__esModule",{value:true});Ge.validateSchemaDeps=Ge.validatePropertyDeps=Ge.error=void 0;var po=B(),Im=z(),Ar=Ie();Ge.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return (0, po.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0, po._)`{property: ${t},
|
|
7
7
|
missingProperty: ${n},
|
|
8
8
|
depsCount: ${e},
|
|
9
|
-
deps: ${r}}`};var Cm={keyword:"dependencies",type:"object",schemaType:"object",error:Be.error,code(t){let[e,r]=$m(t);iu(t,e),uu(t,r);}};function $m({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let s=Array.isArray(t[n])?e:r;s[n]=t[n];}return [e,r]}function iu(t,e=t.schema){let{gen:r,data:n,it:s}=t;if(Object.keys(e).length===0)return;let o=r.let("missing");for(let a in e){let i=e[a];if(i.length===0)continue;let u=(0, Tr.propertyInData)(r,n,a,s.opts.ownProperties);t.setParams({property:a,depsCount:i.length,deps:i.join(", ")}),s.allErrors?r.if(u,()=>{for(let c of i)(0, Tr.checkReportMissingProp)(t,c);}):(r.if((0, lo._)`${u} && (${(0, Tr.checkMissingProp)(t,i,o)})`),(0, Tr.reportMissingProp)(t,o),r.else());}}Be.validatePropertyDeps=iu;function uu(t,e=t.schema){let{gen:r,data:n,keyword:s,it:o}=t,a=r.name("valid");for(let i in e)(0, Rm.alwaysValidSchema)(o,e[i])||(r.if((0, Tr.propertyInData)(r,n,i,o.opts.ownProperties),()=>{let u=t.subschema({keyword:s,schemaProp:i},a);t.mergeValidEvaluated(u,a);},()=>r.var(a,true)),t.ok(a));}Be.validateSchemaDeps=uu;Be.default=Cm;});var lu=x(fo=>{Object.defineProperty(fo,"__esModule",{value:true});var du=B(),Em=z(),xm={message:"property name must be valid",params:({params:t})=>(0, du._)`{propertyName: ${t.propertyName}}`},Tm={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:xm,code(t){let{gen:e,schema:r,data:n,it:s}=t;if((0, Em.alwaysValidSchema)(s,r))return;let o=e.name("valid");e.forIn("key",n,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:true},o),e.if((0, du.not)(o),()=>{t.error(true),s.allErrors||e.break();});}),t.ok(o);}};fo.default=Tm;});var mo=x(po=>{Object.defineProperty(po,"__esModule",{value:true});var vn=Ae(),qe=B(),Am=Je(),bn=z(),Im={message:"must NOT have additional properties",params:({params:t})=>(0, qe._)`{additionalProperty: ${t.additionalProperty}}`},Pm={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:true,trackErrors:true,error:Im,code(t){let{gen:e,schema:r,parentSchema:n,data:s,errsCount:o,it:a}=t;if(!o)throw new Error("ajv implementation error");let{allErrors:i,opts:u}=a;if(a.props=true,u.removeAdditional!=="all"&&(0, bn.alwaysValidSchema)(a,r))return;let c=(0, vn.allSchemaProperties)(n.properties),d=(0, vn.allSchemaProperties)(n.patternProperties);l(),t.ok((0, qe._)`${o} === ${Am.default.errors}`);function l(){e.forIn("key",s,k=>{!c.length&&!d.length?m(k):e.if(b(k),()=>m(k));});}function b(k){let g;if(c.length>8){let f=(0, bn.schemaRefOrVal)(a,n.properties,"properties");g=(0, vn.isOwnProperty)(e,f,k);}else c.length?g=(0, qe.or)(...c.map(f=>(0, qe._)`${k} === ${f}`)):g=qe.nil;return d.length&&(g=(0, qe.or)(g,...d.map(f=>(0, qe._)`${(0, vn.usePattern)(t,f)}.test(${k})`))),(0, qe.not)(g)}function v(k){e.code((0, qe._)`delete ${s}[${k}]`);}function m(k){if(u.removeAdditional==="all"||u.removeAdditional&&r===false){v(k);return}if(r===false){t.setParams({additionalProperty:k}),t.error(),i||e.break();return}if(typeof r=="object"&&!(0, bn.alwaysValidSchema)(a,r)){let g=e.name("valid");u.removeAdditional==="failing"?(p(k,g,false),e.if((0, qe.not)(g),()=>{t.reset(),v(k);})):(p(k,g),i||e.if((0, qe.not)(g),()=>e.break()));}}function p(k,g,f){let y={keyword:"additionalProperties",dataProp:k,dataPropType:bn.Type.Str};f===false&&Object.assign(y,{compositeRule:true,createErrors:false,allErrors:false}),t.subschema(y,g);}}};po.default=Pm;});var mu=x(ho=>{Object.defineProperty(ho,"__esModule",{value:true});var Om=gr(),fu=Ae(),go=z(),pu=mo(),jm={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:o}=t;o.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&pu.default.code(new Om.KeywordCxt(o,pu.default,"additionalProperties"));let a=(0, fu.allSchemaProperties)(r);for(let l of a)o.definedProperties.add(l);o.opts.unevaluated&&a.length&&o.props!==true&&(o.props=go.mergeEvaluated.props(e,(0, go.toHash)(a),o.props));let i=a.filter(l=>!(0, go.alwaysValidSchema)(o,r[l]));if(i.length===0)return;let u=e.name("valid");for(let l of i)c(l)?d(l):(e.if((0, fu.propertyInData)(e,s,l,o.opts.ownProperties)),d(l),o.allErrors||e.else().var(u,true),e.endIf()),t.it.definedProperties.add(l),t.ok(u);function c(l){return o.opts.useDefaults&&!o.compositeRule&&r[l].default!==void 0}function d(l){t.subschema({keyword:"properties",schemaProp:l,dataProp:l},u);}}};ho.default=jm;});var vu=x(yo=>{Object.defineProperty(yo,"__esModule",{value:true});var gu=Ae(),kn=B(),hu=z(),yu=z(),Nm={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:s,it:o}=t,{opts:a}=o,i=(0, gu.allSchemaProperties)(r),u=i.filter(p=>(0, hu.alwaysValidSchema)(o,r[p]));if(i.length===0||u.length===i.length&&(!o.opts.unevaluated||o.props===true))return;let c=a.strictSchema&&!a.allowMatchingProperties&&s.properties,d=e.name("valid");o.props!==true&&!(o.props instanceof kn.Name)&&(o.props=(0, yu.evaluatedPropsToName)(e,o.props));let{props:l}=o;b();function b(){for(let p of i)c&&v(p),o.allErrors?m(p):(e.var(d,true),m(p),e.if(d));}function v(p){for(let k in c)new RegExp(p).test(k)&&(0, hu.checkStrictMode)(o,`property ${k} matches pattern ${p} (use allowMatchingProperties)`);}function m(p){e.forIn("key",n,k=>{e.if((0, kn._)`${(0, gu.usePattern)(t,p)}.test(${k})`,()=>{let g=u.includes(p);g||t.subschema({keyword:"patternProperties",schemaProp:p,dataProp:k,dataPropType:yu.Type.Str},d),o.opts.unevaluated&&l!==true?e.assign((0, kn._)`${l}[${k}]`,true):!g&&!o.allErrors&&e.if((0, kn.not)(d),()=>e.break());});});}}};yo.default=Nm;});var bu=x(vo=>{Object.defineProperty(vo,"__esModule",{value:true});var qm=z(),Dm={keyword:"not",schemaType:["object","boolean"],trackErrors:true,code(t){let{gen:e,schema:r,it:n}=t;if((0, qm.alwaysValidSchema)(n,r)){t.fail();return}let s=e.name("valid");t.subschema({keyword:"not",compositeRule:true,createErrors:false,allErrors:false},s),t.failResult(s,()=>t.reset(),()=>t.error());},error:{message:"must NOT be valid"}};vo.default=Dm;});var ku=x(bo=>{Object.defineProperty(bo,"__esModule",{value:true});var Fm=Ae(),Mm={keyword:"anyOf",schemaType:"array",trackErrors:true,code:Fm.validateUnion,error:{message:"must match a schema in anyOf"}};bo.default=Mm;});var wu=x(ko=>{Object.defineProperty(ko,"__esModule",{value:true});var wn=B(),Lm=z(),Vm={message:"must match exactly one schema in oneOf",params:({params:t})=>(0, wn._)`{passingSchemas: ${t.passing}}`},Bm={keyword:"oneOf",schemaType:"array",trackErrors:true,error:Vm,code(t){let{gen:e,schema:r,parentSchema:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let o=r,a=e.let("valid",false),i=e.let("passing",null),u=e.name("_valid");t.setParams({passing:i}),e.block(c),t.result(a,()=>t.reset(),()=>t.error(true));function c(){o.forEach((d,l)=>{let b;(0, Lm.alwaysValidSchema)(s,d)?e.var(u,true):b=t.subschema({keyword:"oneOf",schemaProp:l,compositeRule:true},u),l>0&&e.if((0, wn._)`${u} && ${a}`).assign(a,false).assign(i,(0, wn._)`[${i}, ${l}]`).else(),e.if(u,()=>{e.assign(a,true),e.assign(i,l),b&&t.mergeEvaluated(b,wn.Name);});});}}};ko.default=Bm;});var Su=x(wo=>{Object.defineProperty(wo,"__esModule",{value:true});var Gm=z(),Km={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=e.name("valid");r.forEach((o,a)=>{if((0, Gm.alwaysValidSchema)(n,o))return;let i=t.subschema({keyword:"allOf",schemaProp:a},s);t.ok(s),t.mergeEvaluated(i);});}};wo.default=Km;});var Cu=x(So=>{Object.defineProperty(So,"__esModule",{value:true});var Sn=B(),Ru=z(),Um={message:({params:t})=>(0, Sn.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0, Sn._)`{failingKeyword: ${t.ifClause}}`},Jm={keyword:"if",schemaType:["object","boolean"],trackErrors:true,error:Um,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0, Ru.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=_u(n,"then"),o=_u(n,"else");if(!s&&!o)return;let a=e.let("valid",true),i=e.name("_valid");if(u(),t.reset(),s&&o){let d=e.let("ifClause");t.setParams({ifClause:d}),e.if(i,c("then",d),c("else",d));}else s?e.if(i,c("then")):e.if((0, Sn.not)(i),c("else"));t.pass(a,()=>t.error(true));function u(){let d=t.subschema({keyword:"if",compositeRule:true,createErrors:false,allErrors:false},i);t.mergeEvaluated(d);}function c(d,l){return ()=>{let b=t.subschema({keyword:d},i);e.assign(a,i),t.mergeValidEvaluated(b,a),l?e.assign(l,(0, Sn._)`${d}`):t.setParams({ifClause:d});}}}};function _u(t,e){let r=t.schema[e];return r!==void 0&&!(0, Ru.alwaysValidSchema)(t,r)}So.default=Jm;});var $u=x(_o=>{Object.defineProperty(_o,"__esModule",{value:true});var zm=z(),Hm={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0, zm.checkStrictMode)(r,`"${t}" without "if" is ignored`);}};_o.default=Hm;});var Eu=x(Ro=>{Object.defineProperty(Ro,"__esModule",{value:true});var Wm=oo(),Ym=nu(),Xm=ao(),Qm=ou(),Zm=au(),eg=cu(),tg=lu(),rg=mo(),ng=mu(),sg=vu(),og=bu(),ag=ku(),ig=wu(),ug=Su(),cg=Cu(),dg=$u();function lg(t=false){let e=[og.default,ag.default,ig.default,ug.default,cg.default,dg.default,tg.default,rg.default,eg.default,ng.default,sg.default];return t?e.push(Ym.default,Qm.default):e.push(Wm.default,Xm.default),e.push(Zm.default),e}Ro.default=lg;});var xu=x(Co=>{Object.defineProperty(Co,"__esModule",{value:true});var ie=B(),fg={message:({schemaCode:t})=>(0, ie.str)`must match format "${t}"`,params:({schemaCode:t})=>(0, ie._)`{format: ${t}}`},pg={keyword:"format",type:["number","string"],schemaType:"string",$data:true,error:fg,code(t,e){let{gen:r,data:n,$data:s,schema:o,schemaCode:a,it:i}=t,{opts:u,errSchemaPath:c,schemaEnv:d,self:l}=i;if(!u.validateFormats)return;s?b():v();function b(){let m=r.scopeValue("formats",{ref:l.formats,code:u.code.formats}),p=r.const("fDef",(0, ie._)`${m}[${a}]`),k=r.let("fType"),g=r.let("format");r.if((0, ie._)`typeof ${p} == "object" && !(${p} instanceof RegExp)`,()=>r.assign(k,(0, ie._)`${p}.type || "string"`).assign(g,(0, ie._)`${p}.validate`),()=>r.assign(k,(0, ie._)`"string"`).assign(g,p)),t.fail$data((0, ie.or)(f(),y()));function f(){return u.strictSchema===false?ie.nil:(0, ie._)`${a} && !${g}`}function y(){let _=d.$async?(0, ie._)`(${p}.async ? await ${g}(${n}) : ${g}(${n}))`:(0, ie._)`${g}(${n})`,w=(0, ie._)`(typeof ${g} == "function" ? ${_} : ${g}.test(${n}))`;return (0, ie._)`${g} && ${g} !== true && ${k} === ${e} && !${w}`}}function v(){let m=l.formats[o];if(!m){f();return}if(m===true)return;let[p,k,g]=y(m);p===e&&t.pass(_());function f(){if(u.strictSchema===false){l.logger.warn(w());return}throw new Error(w());function w(){return `unknown format "${o}" ignored in schema at path "${c}"`}}function y(w){let C=w instanceof RegExp?(0, ie.regexpCode)(w):u.code.formats?(0, ie._)`${u.code.formats}${(0, ie.getProperty)(o)}`:void 0,R=r.scopeValue("formats",{key:o,ref:w,code:C});return typeof w=="object"&&!(w instanceof RegExp)?[w.type||"string",w.validate,(0, ie._)`${R}.validate`]:["string",w,R]}function _(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!d.$async)throw new Error("async format in sync schema");return (0, ie._)`await ${g}(${n})`}return typeof k=="function"?(0, ie._)`${g}(${n})`:(0, ie._)`${g}.test(${n})`}}}};Co.default=pg;});var Tu=x($o=>{Object.defineProperty($o,"__esModule",{value:true});var mg=xu(),gg=[mg.default];$o.default=gg;});var Au=x(Jt=>{Object.defineProperty(Jt,"__esModule",{value:true});Jt.contentVocabulary=Jt.metadataVocabulary=void 0;Jt.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Jt.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"];});var Pu=x(Eo=>{Object.defineProperty(Eo,"__esModule",{value:true});var hg=Mi(),yg=Zi(),vg=Eu(),bg=Tu(),Iu=Au(),kg=[hg.default,yg.default,(0, vg.default)(),bg.default,Iu.metadataVocabulary,Iu.contentVocabulary];Eo.default=kg;});var ju=x(_n=>{Object.defineProperty(_n,"__esModule",{value:true});_n.DiscrError=void 0;var Ou;(function(t){t.Tag="tag",t.Mapping="mapping";})(Ou||(_n.DiscrError=Ou={}));});var qu=x(To=>{Object.defineProperty(To,"__esModule",{value:true});var zt=B(),xo=ju(),Nu=sn(),wg=hr(),Sg=z(),_g={message:({params:{discrError:t,tagName:e}})=>t===xo.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0, zt._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},Rg={keyword:"discriminator",type:"object",schemaType:"object",error:_g,code(t){let{gen:e,data:r,schema:n,parentSchema:s,it:o}=t,{oneOf:a}=s;if(!o.opts.discriminator)throw new Error("discriminator: requires discriminator option");let i=n.propertyName;if(typeof i!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let u=e.let("valid",false),c=e.const("tag",(0, zt._)`${r}${(0, zt.getProperty)(i)}`);e.if((0, zt._)`typeof ${c} == "string"`,()=>d(),()=>t.error(false,{discrError:xo.DiscrError.Tag,tag:c,tagName:i})),t.ok(u);function d(){let v=b();e.if(false);for(let m in v)e.elseIf((0, zt._)`${c} === ${m}`),e.assign(u,l(v[m]));e.else(),t.error(false,{discrError:xo.DiscrError.Mapping,tag:c,tagName:i}),e.endIf();}function l(v){let m=e.name("valid"),p=t.subschema({keyword:"oneOf",schemaProp:v},m);return t.mergeEvaluated(p,zt.Name),m}function b(){var v;let m={},p=g(s),k=true;for(let _=0;_<a.length;_++){let w=a[_];if(w?.$ref&&!(0, Sg.schemaHasRulesButRef)(w,o.self.RULES)){let R=w.$ref;if(w=Nu.resolveRef.call(o.self,o.schemaEnv.root,o.baseId,R),w instanceof Nu.SchemaEnv&&(w=w.schema),w===void 0)throw new wg.default(o.opts.uriResolver,o.baseId,R)}let C=(v=w?.properties)===null||v===void 0?void 0:v[i];if(typeof C!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${i}"`);k=k&&(p||g(w)),f(C,_);}if(!k)throw new Error(`discriminator: "${i}" must be required`);return m;function g({required:_}){return Array.isArray(_)&&_.includes(i)}function f(_,w){if(_.const)y(_.const,w);else if(_.enum)for(let C of _.enum)y(C,w);else throw new Error(`discriminator: "properties/${i}" must have "const" or "enum"`)}function y(_,w){if(typeof _!="string"||_ in m)throw new Error(`discriminator: "${i}" values must be unique strings`);m[_]=w;}}}};To.default=Rg;});var Du=x((lv,Cg)=>{Cg.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:true,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:true,readOnly:{type:"boolean",default:false},examples:{type:"array",items:true},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:true},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:false},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:true,enum:{type:"array",items:true,minItems:1,uniqueItems:true},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:true}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:true};});var Mu=x((ne,Ao)=>{Object.defineProperty(ne,"__esModule",{value:true});ne.MissingRefError=ne.ValidationError=ne.CodeGen=ne.Name=ne.nil=ne.stringify=ne.str=ne._=ne.KeywordCxt=ne.Ajv=void 0;var $g=Oi(),Eg=Pu(),xg=qu(),Fu=Du(),Tg=["/properties"],Rn="http://json-schema.org/draft-07/schema",Ht=class extends $g.default{_addVocabularies(){super._addVocabularies(),Eg.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(xg.default);}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Fu,Tg):Fu;this.addMetaSchema(e,Rn,false),this.refs["http://json-schema.org/schema"]=Rn;}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Rn)?Rn:void 0)}};ne.Ajv=Ht;Ao.exports=ne=Ht;Ao.exports.Ajv=Ht;Object.defineProperty(ne,"__esModule",{value:true});ne.default=Ht;var Ag=gr();Object.defineProperty(ne,"KeywordCxt",{enumerable:true,get:function(){return Ag.KeywordCxt}});var Wt=B();Object.defineProperty(ne,"_",{enumerable:true,get:function(){return Wt._}});Object.defineProperty(ne,"str",{enumerable:true,get:function(){return Wt.str}});Object.defineProperty(ne,"stringify",{enumerable:true,get:function(){return Wt.stringify}});Object.defineProperty(ne,"nil",{enumerable:true,get:function(){return Wt.nil}});Object.defineProperty(ne,"Name",{enumerable:true,get:function(){return Wt.Name}});Object.defineProperty(ne,"CodeGen",{enumerable:true,get:function(){return Wt.CodeGen}});var Ig=rn();Object.defineProperty(ne,"ValidationError",{enumerable:true,get:function(){return Ig.default}});var Pg=hr();Object.defineProperty(ne,"MissingRefError",{enumerable:true,get:function(){return Pg.default}});});var Mr="b64:";function qc(t){let e=new TextEncoder().encode(t),r=globalThis.Buffer,n;if(r)n=r.from(e).toString("base64");else if(typeof btoa=="function"){let s="";for(let o of e)s+=String.fromCharCode(o);n=btoa(s);}else throw new Error("No base64 encoder available in this runtime");return n.replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}function Dc(t){let e=t.replace(/-/g,"+").replace(/_/g,"/")+"=".repeat((4-t.length%4)%4),r=globalThis.Buffer;if(r)return r.from(e,"base64").toString("utf8");if(typeof atob=="function"){let n=atob(e),s=new Uint8Array(n.length);for(let o=0;o<n.length;o+=1)s[o]=n.charCodeAt(o);return new TextDecoder().decode(s)}throw new Error("No base64 decoder available in this runtime")}function ae(t){return `${Mr}${qc(JSON.stringify(t))}`}function be(t){if(!t.startsWith(Mr))throw new Error(`Invalid ref format (expected ${Mr}<base64url(json)>): ${t}`);let e;try{e=JSON.parse(Dc(t.slice(Mr.length)));}catch{throw new Error(`Invalid ref format (malformed base64url/json): ${t}`)}if(!e||typeof e!="object")throw new Error(`Invalid ref format (expected object payload): ${t}`);let r=e;if(typeof r.kind!="string"||typeof r.value!="string")throw new Error(`Invalid ref format (payload must contain string kind/value): ${t}`);return {kind:r.kind,value:r.value}}async function Jo(t,e,r){let n=t.tryAcquire();if(!n)return false;try{await e();}finally{n();}return r?.(),true}function Qt(t,e,r=".json"){let n=ue.join(t,".tmp");return I.mkdirSync(n,{recursive:true}),ue.join(n,`${e}-${Date.now()}-${Math.random().toString(36).slice(2,8)}${r}`)}function Ot(...t){return ue.join(...t)}function Ze(...t){return ue.resolve(...t)}function Yo(t){return ue.isAbsolute(t)}function Dn(){return randomUUID()}function Xo(t){return createHash("sha256").update(t).digest("hex")}function Vr(t){return ue.dirname(fileURLToPath(t))}function Gc(t){if(typeof t=="object"&&t!==null){let{command:r,args:n=[],...s}=t,o=Ho(r,n);return {...s,command:o.command,args:o.args}}let e=Qo(t);if(e.length===0)throw new Error(`Empty command spec: ${JSON.stringify(t)}`);return Ho(e[0],e.slice(1))}function Ho(t,e){return /^(node|node\.exe)$/i.test(t)?{command:process.execPath,args:e}:/\.m?js$/i.test(t)?{command:process.execPath,args:[t,...e]}:{command:t,args:e}}function Qo(t){let e=[],r="",n=null;for(let s of t.trim()){if(n){s===n?n=null:r+=s;continue}if(s==='"'||s==="'"){n=s;continue}if(/\s/.test(s)){r&&(e.push(r),r="");continue}r+=s;}if(n)throw new Error(`Unterminated quote in command: ${t}`);return r&&e.push(r),e}function Fn(t){return process.platform==="win32"&&/\.(cmd|bat)$/i.test(t)}function Zo(t,e){let{command:r,args:n=[],cwd:s,env:o,timeoutMs:a}=t;return execFileSync(r,n,{shell:Fn(r),timeout:a,encoding:e?.encoding??"utf-8",cwd:s,windowsHide:true,env:o?{...process.env,...o}:void 0,input:e?.input})}function Kc(t,e){let{command:r,args:n=[],cwd:s,env:o,timeoutMs:a=3e4}=t;execFile(r,n,{shell:Fn(r),encoding:"utf8",windowsHide:true,timeout:a,maxBuffer:10*1024*1024,cwd:s,env:o?{...process.env,...o}:void 0},(i,u,c)=>e(i??null,u,c));}ue.join(qn.tmpdir(),".board-live-cards-git-bash-cache.json");function Br(t){let{command:e,args:r=[]}=t;if(process.platform==="win32"){spawn(e,r,{detached:true,stdio:"ignore",windowsHide:true,shell:Fn(e)}).unref();return}spawn(e,r,{detached:true,stdio:"ignore"}).unref();}function Mn(t,e,r){let n=ue.join(t,"board-live-cards-cli.js");if(I.existsSync(n))return {cmd:process.execPath,args:[n,e,...r]};let s=ue.join(t,"board-live-cards-cli.ts"),o=ue.join(t,"..","..","node_modules","tsx","dist","cli.mjs"),a=ue.join(t,"..","..","node_modules",".bin","tsx"),i=I.existsSync(o)?o:a;return I.existsSync(s)&&I.existsSync(i)?{cmd:process.execPath,args:[i,s,e,...r]}:{cmd:process.platform==="win32"?"npx.cmd":"npx",args:["tsx",s,e,...r]}}function Ln(t){let e=ue.join(t,"..","..","..","dev","board-live-cards-cli.js");if(I.existsSync(e))return e;let r=ue.join(t,"..","..","dev","board-live-cards-cli.js");if(I.existsSync(r))return r;let n=ue.join(t,"board-live-cards-cli.js");if(I.existsSync(n))return n;throw new Error(`resolveBoardCliCallbackTarget: cannot find callback target in ${t} (expected dev/board-live-cards-cli.js wrapper or ${n})`)}function ea(t,e,r){let n=["--base-ref",ae(e)];r&&n.push("--notify-channel",r);let{cmd:s,args:o}=Mn(t,"process-accumulated-events",n);Br({command:s,args:o});}function Uc(t){return process.platform==="win32"?`\\\\.\\pipe\\${t}`:ue.join(qn.tmpdir(),`${t}.sock`)}var Lr=new Map;function ta(t,e,r){if(e.length===0)return;let n=e.map(i=>JSON.stringify(i)).join(`
|
|
9
|
+
deps: ${r}}`};var Pm={keyword:"dependencies",type:"object",schemaType:"object",error:Ge.error,code(t){let[e,r]=Om(t);cu(t,e),du(t,r);}};function Om({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let s=Array.isArray(t[n])?e:r;s[n]=t[n];}return [e,r]}function cu(t,e=t.schema){let{gen:r,data:n,it:s}=t;if(Object.keys(e).length===0)return;let o=r.let("missing");for(let a in e){let i=e[a];if(i.length===0)continue;let u=(0, Ar.propertyInData)(r,n,a,s.opts.ownProperties);t.setParams({property:a,depsCount:i.length,deps:i.join(", ")}),s.allErrors?r.if(u,()=>{for(let c of i)(0, Ar.checkReportMissingProp)(t,c);}):(r.if((0, po._)`${u} && (${(0, Ar.checkMissingProp)(t,i,o)})`),(0, Ar.reportMissingProp)(t,o),r.else());}}Ge.validatePropertyDeps=cu;function du(t,e=t.schema){let{gen:r,data:n,keyword:s,it:o}=t,a=r.name("valid");for(let i in e)(0, Im.alwaysValidSchema)(o,e[i])||(r.if((0, Ar.propertyInData)(r,n,i,o.opts.ownProperties),()=>{let u=t.subschema({keyword:s,schemaProp:i},a);t.mergeValidEvaluated(u,a);},()=>r.var(a,true)),t.ok(a));}Ge.validateSchemaDeps=du;Ge.default=Pm;});var pu=x(mo=>{Object.defineProperty(mo,"__esModule",{value:true});var fu=B(),jm=z(),Nm={message:"property name must be valid",params:({params:t})=>(0, fu._)`{propertyName: ${t.propertyName}}`},qm={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:Nm,code(t){let{gen:e,schema:r,data:n,it:s}=t;if((0, jm.alwaysValidSchema)(s,r))return;let o=e.name("valid");e.forIn("key",n,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:true},o),e.if((0, fu.not)(o),()=>{t.error(true),s.allErrors||e.break();});}),t.ok(o);}};mo.default=qm;});var ho=x(go=>{Object.defineProperty(go,"__esModule",{value:true});var bn=Ie(),Fe=B(),Dm=Je(),wn=z(),Fm={message:"must NOT have additional properties",params:({params:t})=>(0, Fe._)`{additionalProperty: ${t.additionalProperty}}`},Mm={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:true,trackErrors:true,error:Fm,code(t){let{gen:e,schema:r,parentSchema:n,data:s,errsCount:o,it:a}=t;if(!o)throw new Error("ajv implementation error");let{allErrors:i,opts:u}=a;if(a.props=true,u.removeAdditional!=="all"&&(0, wn.alwaysValidSchema)(a,r))return;let c=(0, bn.allSchemaProperties)(n.properties),d=(0, bn.allSchemaProperties)(n.patternProperties);l(),t.ok((0, Fe._)`${o} === ${Dm.default.errors}`);function l(){e.forIn("key",s,b=>{!c.length&&!d.length?m(b):e.if(k(b),()=>m(b));});}function k(b){let g;if(c.length>8){let f=(0, wn.schemaRefOrVal)(a,n.properties,"properties");g=(0, bn.isOwnProperty)(e,f,b);}else c.length?g=(0, Fe.or)(...c.map(f=>(0, Fe._)`${b} === ${f}`)):g=Fe.nil;return d.length&&(g=(0, Fe.or)(g,...d.map(f=>(0, Fe._)`${(0, bn.usePattern)(t,f)}.test(${b})`))),(0, Fe.not)(g)}function v(b){e.code((0, Fe._)`delete ${s}[${b}]`);}function m(b){if(u.removeAdditional==="all"||u.removeAdditional&&r===false){v(b);return}if(r===false){t.setParams({additionalProperty:b}),t.error(),i||e.break();return}if(typeof r=="object"&&!(0, wn.alwaysValidSchema)(a,r)){let g=e.name("valid");u.removeAdditional==="failing"?(p(b,g,false),e.if((0, Fe.not)(g),()=>{t.reset(),v(b);})):(p(b,g),i||e.if((0, Fe.not)(g),()=>e.break()));}}function p(b,g,f){let y={keyword:"additionalProperties",dataProp:b,dataPropType:wn.Type.Str};f===false&&Object.assign(y,{compositeRule:true,createErrors:false,allErrors:false}),t.subschema(y,g);}}};go.default=Mm;});var hu=x(vo=>{Object.defineProperty(vo,"__esModule",{value:true});var Lm=hr(),mu=Ie(),yo=z(),gu=ho(),Vm={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:o}=t;o.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&gu.default.code(new Lm.KeywordCxt(o,gu.default,"additionalProperties"));let a=(0, mu.allSchemaProperties)(r);for(let l of a)o.definedProperties.add(l);o.opts.unevaluated&&a.length&&o.props!==true&&(o.props=yo.mergeEvaluated.props(e,(0, yo.toHash)(a),o.props));let i=a.filter(l=>!(0, yo.alwaysValidSchema)(o,r[l]));if(i.length===0)return;let u=e.name("valid");for(let l of i)c(l)?d(l):(e.if((0, mu.propertyInData)(e,s,l,o.opts.ownProperties)),d(l),o.allErrors||e.else().var(u,true),e.endIf()),t.it.definedProperties.add(l),t.ok(u);function c(l){return o.opts.useDefaults&&!o.compositeRule&&r[l].default!==void 0}function d(l){t.subschema({keyword:"properties",schemaProp:l,dataProp:l},u);}}};vo.default=Vm;});var bu=x(ko=>{Object.defineProperty(ko,"__esModule",{value:true});var yu=Ie(),Sn=B(),vu=z(),ku=z(),Bm={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:s,it:o}=t,{opts:a}=o,i=(0, yu.allSchemaProperties)(r),u=i.filter(p=>(0, vu.alwaysValidSchema)(o,r[p]));if(i.length===0||u.length===i.length&&(!o.opts.unevaluated||o.props===true))return;let c=a.strictSchema&&!a.allowMatchingProperties&&s.properties,d=e.name("valid");o.props!==true&&!(o.props instanceof Sn.Name)&&(o.props=(0, ku.evaluatedPropsToName)(e,o.props));let{props:l}=o;k();function k(){for(let p of i)c&&v(p),o.allErrors?m(p):(e.var(d,true),m(p),e.if(d));}function v(p){for(let b in c)new RegExp(p).test(b)&&(0, vu.checkStrictMode)(o,`property ${b} matches pattern ${p} (use allowMatchingProperties)`);}function m(p){e.forIn("key",n,b=>{e.if((0, Sn._)`${(0, yu.usePattern)(t,p)}.test(${b})`,()=>{let g=u.includes(p);g||t.subschema({keyword:"patternProperties",schemaProp:p,dataProp:b,dataPropType:ku.Type.Str},d),o.opts.unevaluated&&l!==true?e.assign((0, Sn._)`${l}[${b}]`,true):!g&&!o.allErrors&&e.if((0, Sn.not)(d),()=>e.break());});});}}};ko.default=Bm;});var wu=x(bo=>{Object.defineProperty(bo,"__esModule",{value:true});var Gm=z(),Km={keyword:"not",schemaType:["object","boolean"],trackErrors:true,code(t){let{gen:e,schema:r,it:n}=t;if((0, Gm.alwaysValidSchema)(n,r)){t.fail();return}let s=e.name("valid");t.subschema({keyword:"not",compositeRule:true,createErrors:false,allErrors:false},s),t.failResult(s,()=>t.reset(),()=>t.error());},error:{message:"must NOT be valid"}};bo.default=Km;});var Su=x(wo=>{Object.defineProperty(wo,"__esModule",{value:true});var Um=Ie(),Jm={keyword:"anyOf",schemaType:"array",trackErrors:true,code:Um.validateUnion,error:{message:"must match a schema in anyOf"}};wo.default=Jm;});var _u=x(So=>{Object.defineProperty(So,"__esModule",{value:true});var _n=B(),zm=z(),Hm={message:"must match exactly one schema in oneOf",params:({params:t})=>(0, _n._)`{passingSchemas: ${t.passing}}`},Wm={keyword:"oneOf",schemaType:"array",trackErrors:true,error:Hm,code(t){let{gen:e,schema:r,parentSchema:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let o=r,a=e.let("valid",false),i=e.let("passing",null),u=e.name("_valid");t.setParams({passing:i}),e.block(c),t.result(a,()=>t.reset(),()=>t.error(true));function c(){o.forEach((d,l)=>{let k;(0, zm.alwaysValidSchema)(s,d)?e.var(u,true):k=t.subschema({keyword:"oneOf",schemaProp:l,compositeRule:true},u),l>0&&e.if((0, _n._)`${u} && ${a}`).assign(a,false).assign(i,(0, _n._)`[${i}, ${l}]`).else(),e.if(u,()=>{e.assign(a,true),e.assign(i,l),k&&t.mergeEvaluated(k,_n.Name);});});}}};So.default=Wm;});var Ru=x(_o=>{Object.defineProperty(_o,"__esModule",{value:true});var Ym=z(),Xm={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=e.name("valid");r.forEach((o,a)=>{if((0, Ym.alwaysValidSchema)(n,o))return;let i=t.subschema({keyword:"allOf",schemaProp:a},s);t.ok(s),t.mergeEvaluated(i);});}};_o.default=Xm;});var Eu=x(Ro=>{Object.defineProperty(Ro,"__esModule",{value:true});var Rn=B(),$u=z(),Qm={message:({params:t})=>(0, Rn.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0, Rn._)`{failingKeyword: ${t.ifClause}}`},Zm={keyword:"if",schemaType:["object","boolean"],trackErrors:true,error:Qm,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0, $u.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=Cu(n,"then"),o=Cu(n,"else");if(!s&&!o)return;let a=e.let("valid",true),i=e.name("_valid");if(u(),t.reset(),s&&o){let d=e.let("ifClause");t.setParams({ifClause:d}),e.if(i,c("then",d),c("else",d));}else s?e.if(i,c("then")):e.if((0, Rn.not)(i),c("else"));t.pass(a,()=>t.error(true));function u(){let d=t.subschema({keyword:"if",compositeRule:true,createErrors:false,allErrors:false},i);t.mergeEvaluated(d);}function c(d,l){return ()=>{let k=t.subschema({keyword:d},i);e.assign(a,i),t.mergeValidEvaluated(k,a),l?e.assign(l,(0, Rn._)`${d}`):t.setParams({ifClause:d});}}}};function Cu(t,e){let r=t.schema[e];return r!==void 0&&!(0, $u.alwaysValidSchema)(t,r)}Ro.default=Zm;});var xu=x(Co=>{Object.defineProperty(Co,"__esModule",{value:true});var eg=z(),tg={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0, eg.checkStrictMode)(r,`"${t}" without "if" is ignored`);}};Co.default=tg;});var Tu=x($o=>{Object.defineProperty($o,"__esModule",{value:true});var rg=io(),ng=ou(),sg=uo(),og=iu(),ag=uu(),ig=lu(),ug=pu(),cg=ho(),dg=hu(),lg=bu(),fg=wu(),pg=Su(),mg=_u(),gg=Ru(),hg=Eu(),yg=xu();function vg(t=false){let e=[fg.default,pg.default,mg.default,gg.default,hg.default,yg.default,ug.default,cg.default,ig.default,dg.default,lg.default];return t?e.push(ng.default,og.default):e.push(rg.default,sg.default),e.push(ag.default),e}$o.default=vg;});var Au=x(Eo=>{Object.defineProperty(Eo,"__esModule",{value:true});var ie=B(),kg={message:({schemaCode:t})=>(0, ie.str)`must match format "${t}"`,params:({schemaCode:t})=>(0, ie._)`{format: ${t}}`},bg={keyword:"format",type:["number","string"],schemaType:"string",$data:true,error:kg,code(t,e){let{gen:r,data:n,$data:s,schema:o,schemaCode:a,it:i}=t,{opts:u,errSchemaPath:c,schemaEnv:d,self:l}=i;if(!u.validateFormats)return;s?k():v();function k(){let m=r.scopeValue("formats",{ref:l.formats,code:u.code.formats}),p=r.const("fDef",(0, ie._)`${m}[${a}]`),b=r.let("fType"),g=r.let("format");r.if((0, ie._)`typeof ${p} == "object" && !(${p} instanceof RegExp)`,()=>r.assign(b,(0, ie._)`${p}.type || "string"`).assign(g,(0, ie._)`${p}.validate`),()=>r.assign(b,(0, ie._)`"string"`).assign(g,p)),t.fail$data((0, ie.or)(f(),y()));function f(){return u.strictSchema===false?ie.nil:(0, ie._)`${a} && !${g}`}function y(){let _=d.$async?(0, ie._)`(${p}.async ? await ${g}(${n}) : ${g}(${n}))`:(0, ie._)`${g}(${n})`,w=(0, ie._)`(typeof ${g} == "function" ? ${_} : ${g}.test(${n}))`;return (0, ie._)`${g} && ${g} !== true && ${b} === ${e} && !${w}`}}function v(){let m=l.formats[o];if(!m){f();return}if(m===true)return;let[p,b,g]=y(m);p===e&&t.pass(_());function f(){if(u.strictSchema===false){l.logger.warn(w());return}throw new Error(w());function w(){return `unknown format "${o}" ignored in schema at path "${c}"`}}function y(w){let $=w instanceof RegExp?(0, ie.regexpCode)(w):u.code.formats?(0, ie._)`${u.code.formats}${(0, ie.getProperty)(o)}`:void 0,R=r.scopeValue("formats",{key:o,ref:w,code:$});return typeof w=="object"&&!(w instanceof RegExp)?[w.type||"string",w.validate,(0, ie._)`${R}.validate`]:["string",w,R]}function _(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!d.$async)throw new Error("async format in sync schema");return (0, ie._)`await ${g}(${n})`}return typeof b=="function"?(0, ie._)`${g}(${n})`:(0, ie._)`${g}.test(${n})`}}}};Eo.default=bg;});var Iu=x(xo=>{Object.defineProperty(xo,"__esModule",{value:true});var wg=Au(),Sg=[wg.default];xo.default=Sg;});var Pu=x(Wt=>{Object.defineProperty(Wt,"__esModule",{value:true});Wt.contentVocabulary=Wt.metadataVocabulary=void 0;Wt.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Wt.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"];});var ju=x(To=>{Object.defineProperty(To,"__esModule",{value:true});var _g=Vi(),Rg=tu(),Cg=Tu(),$g=Iu(),Ou=Pu(),Eg=[_g.default,Rg.default,(0, Cg.default)(),$g.default,Ou.metadataVocabulary,Ou.contentVocabulary];To.default=Eg;});var qu=x(Cn=>{Object.defineProperty(Cn,"__esModule",{value:true});Cn.DiscrError=void 0;var Nu;(function(t){t.Tag="tag",t.Mapping="mapping";})(Nu||(Cn.DiscrError=Nu={}));});var Fu=x(Io=>{Object.defineProperty(Io,"__esModule",{value:true});var Yt=B(),Ao=qu(),Du=an(),xg=yr(),Tg=z(),Ag={message:({params:{discrError:t,tagName:e}})=>t===Ao.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0, Yt._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},Ig={keyword:"discriminator",type:"object",schemaType:"object",error:Ag,code(t){let{gen:e,data:r,schema:n,parentSchema:s,it:o}=t,{oneOf:a}=s;if(!o.opts.discriminator)throw new Error("discriminator: requires discriminator option");let i=n.propertyName;if(typeof i!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let u=e.let("valid",false),c=e.const("tag",(0, Yt._)`${r}${(0, Yt.getProperty)(i)}`);e.if((0, Yt._)`typeof ${c} == "string"`,()=>d(),()=>t.error(false,{discrError:Ao.DiscrError.Tag,tag:c,tagName:i})),t.ok(u);function d(){let v=k();e.if(false);for(let m in v)e.elseIf((0, Yt._)`${c} === ${m}`),e.assign(u,l(v[m]));e.else(),t.error(false,{discrError:Ao.DiscrError.Mapping,tag:c,tagName:i}),e.endIf();}function l(v){let m=e.name("valid"),p=t.subschema({keyword:"oneOf",schemaProp:v},m);return t.mergeEvaluated(p,Yt.Name),m}function k(){var v;let m={},p=g(s),b=true;for(let _=0;_<a.length;_++){let w=a[_];if(w?.$ref&&!(0, Tg.schemaHasRulesButRef)(w,o.self.RULES)){let R=w.$ref;if(w=Du.resolveRef.call(o.self,o.schemaEnv.root,o.baseId,R),w instanceof Du.SchemaEnv&&(w=w.schema),w===void 0)throw new xg.default(o.opts.uriResolver,o.baseId,R)}let $=(v=w?.properties)===null||v===void 0?void 0:v[i];if(typeof $!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${i}"`);b=b&&(p||g(w)),f($,_);}if(!b)throw new Error(`discriminator: "${i}" must be required`);return m;function g({required:_}){return Array.isArray(_)&&_.includes(i)}function f(_,w){if(_.const)y(_.const,w);else if(_.enum)for(let $ of _.enum)y($,w);else throw new Error(`discriminator: "properties/${i}" must have "const" or "enum"`)}function y(_,w){if(typeof _!="string"||_ in m)throw new Error(`discriminator: "${i}" values must be unique strings`);m[_]=w;}}}};Io.default=Ig;});var Mu=x((wv,Pg)=>{Pg.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:true,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:true,readOnly:{type:"boolean",default:false},examples:{type:"array",items:true},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:true},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:false},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:true,enum:{type:"array",items:true,minItems:1,uniqueItems:true},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:true}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:true};});var Vu=x((ne,Po)=>{Object.defineProperty(ne,"__esModule",{value:true});ne.MissingRefError=ne.ValidationError=ne.CodeGen=ne.Name=ne.nil=ne.stringify=ne.str=ne._=ne.KeywordCxt=ne.Ajv=void 0;var Og=Ni(),jg=ju(),Ng=Fu(),Lu=Mu(),qg=["/properties"],$n="http://json-schema.org/draft-07/schema",Xt=class extends Og.default{_addVocabularies(){super._addVocabularies(),jg.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(Ng.default);}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Lu,qg):Lu;this.addMetaSchema(e,$n,false),this.refs["http://json-schema.org/schema"]=$n;}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema($n)?$n:void 0)}};ne.Ajv=Xt;Po.exports=ne=Xt;Po.exports.Ajv=Xt;Object.defineProperty(ne,"__esModule",{value:true});ne.default=Xt;var Dg=hr();Object.defineProperty(ne,"KeywordCxt",{enumerable:true,get:function(){return Dg.KeywordCxt}});var Qt=B();Object.defineProperty(ne,"_",{enumerable:true,get:function(){return Qt._}});Object.defineProperty(ne,"str",{enumerable:true,get:function(){return Qt.str}});Object.defineProperty(ne,"stringify",{enumerable:true,get:function(){return Qt.stringify}});Object.defineProperty(ne,"nil",{enumerable:true,get:function(){return Qt.nil}});Object.defineProperty(ne,"Name",{enumerable:true,get:function(){return Qt.Name}});Object.defineProperty(ne,"CodeGen",{enumerable:true,get:function(){return Qt.CodeGen}});var Fg=sn();Object.defineProperty(ne,"ValidationError",{enumerable:true,get:function(){return Fg.default}});var Mg=yr();Object.defineProperty(ne,"MissingRefError",{enumerable:true,get:function(){return Mg.default}});});var Lr="b64:";function Mc(t){let e=new TextEncoder().encode(t),r=globalThis.Buffer,n;if(r)n=r.from(e).toString("base64");else if(typeof btoa=="function"){let s="";for(let o of e)s+=String.fromCharCode(o);n=btoa(s);}else throw new Error("No base64 encoder available in this runtime");return n.replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}function Lc(t){let e=t.replace(/-/g,"+").replace(/_/g,"/")+"=".repeat((4-t.length%4)%4),r=globalThis.Buffer;if(r)return r.from(e,"base64").toString("utf8");if(typeof atob=="function"){let n=atob(e),s=new Uint8Array(n.length);for(let o=0;o<n.length;o+=1)s[o]=n.charCodeAt(o);return new TextDecoder().decode(s)}throw new Error("No base64 decoder available in this runtime")}function ae(t){return `${Lr}${Mc(JSON.stringify(t))}`}function xe(t){if(!t.startsWith(Lr))throw new Error(`Invalid ref format (expected ${Lr}<base64url(json)>): ${t}`);let e;try{e=JSON.parse(Lc(t.slice(Lr.length)));}catch{throw new Error(`Invalid ref format (malformed base64url/json): ${t}`)}if(!e||typeof e!="object")throw new Error(`Invalid ref format (expected object payload): ${t}`);let r=e;if(typeof r.kind!="string"||typeof r.value!="string")throw new Error(`Invalid ref format (payload must contain string kind/value): ${t}`);return {kind:r.kind,value:r.value}}async function Ho(t,e,r){let n=t.tryAcquire();if(!n)return false;try{await e();}finally{n();}return r?.(),true}function tr(t,e,r=".json"){let n=ue.join(t,".tmp");return I.mkdirSync(n,{recursive:true}),ue.join(n,`${e}-${Date.now()}-${Math.random().toString(36).slice(2,8)}${r}`)}function Nt(...t){return ue.join(...t)}function et(...t){return ue.resolve(...t)}function Qo(t){return ue.isAbsolute(t)}function Mn(){return randomUUID()}function Zo(t){return createHash("sha256").update(t).digest("hex")}function Br(t){return ue.dirname(fileURLToPath(t))}function Jc(t){if(typeof t=="object"&&t!==null){let{command:r,args:n=[],...s}=t,o=Yo(r,n);return {...s,command:o.command,args:o.args}}let e=ea(t);if(e.length===0)throw new Error(`Empty command spec: ${JSON.stringify(t)}`);return Yo(e[0],e.slice(1))}function Yo(t,e){return /^(node|node\.exe)$/i.test(t)?{command:process.execPath,args:e}:/\.m?js$/i.test(t)?{command:process.execPath,args:[t,...e]}:{command:t,args:e}}function ea(t){let e=[],r="",n=null;for(let s of t.trim()){if(n){s===n?n=null:r+=s;continue}if(s==='"'||s==="'"){n=s;continue}if(/\s/.test(s)){r&&(e.push(r),r="");continue}r+=s;}if(n)throw new Error(`Unterminated quote in command: ${t}`);return r&&e.push(r),e}function Ln(t){return process.platform==="win32"&&/\.(cmd|bat)$/i.test(t)}function ta(t,e){let{command:r,args:n=[],cwd:s,env:o,timeoutMs:a}=t;return execFileSync(r,n,{shell:Ln(r),timeout:a,encoding:e?.encoding??"utf-8",cwd:s,windowsHide:true,env:o?{...process.env,...o}:void 0,input:e?.input})}function zc(t,e){let{command:r,args:n=[],cwd:s,env:o,timeoutMs:a=3e4}=t;execFile(r,n,{shell:Ln(r),encoding:"utf8",windowsHide:true,timeout:a,maxBuffer:10*1024*1024,cwd:s,env:o?{...process.env,...o}:void 0},(i,u,c)=>e(i??null,u,c));}ue.join(Fn.tmpdir(),".board-live-cards-git-bash-cache.json");function Gr(t){let{command:e,args:r=[]}=t;if(process.platform==="win32"){spawn(e,r,{detached:true,stdio:"ignore",windowsHide:true,shell:Ln(e)}).unref();return}spawn(e,r,{detached:true,stdio:"ignore"}).unref();}function Vn(t,e,r){let n=ue.join(t,"board-live-cards-cli.js");if(I.existsSync(n))return {cmd:process.execPath,args:[n,e,...r]};let s=ue.join(t,"board-live-cards-cli.ts"),o=ue.join(t,"..","..","node_modules","tsx","dist","cli.mjs"),a=ue.join(t,"..","..","node_modules",".bin","tsx"),i=I.existsSync(o)?o:a;return I.existsSync(s)&&I.existsSync(i)?{cmd:process.execPath,args:[i,s,e,...r]}:{cmd:process.platform==="win32"?"npx.cmd":"npx",args:["tsx",s,e,...r]}}function Bn(t){let e=ue.join(t,"..","..","..","dev","board-live-cards-cli.js");if(I.existsSync(e))return e;let r=ue.join(t,"..","..","dev","board-live-cards-cli.js");if(I.existsSync(r))return r;let n=ue.join(t,"board-live-cards-cli.js");if(I.existsSync(n))return n;throw new Error(`resolveBoardCliCallbackTarget: cannot find callback target in ${t} (expected dev/board-live-cards-cli.js wrapper or ${n})`)}function ra(t,e,r){let n=["--base-ref",ae(e)];r&&n.push("--notify-channel",r);let{cmd:s,args:o}=Vn(t,"process-accumulated-events",n);Gr({command:s,args:o});}function Hc(t){return process.platform==="win32"?`\\\\.\\pipe\\${t}`:ue.join(Fn.tmpdir(),`${t}.sock`)}var Vr=new Map;function na(t,e,r){if(e.length===0)return;let n=e.map(i=>JSON.stringify(i)).join(`
|
|
10
10
|
`)+`
|
|
11
|
-
`,s=
|
|
11
|
+
`,s=Vr.get(t);if(s&&!s.socket.destroyed){s.ready?s.socket.write(n):s.queue.push(n);return}let o=Hc(t),a=Xo.createConnection(o);s={socket:a,ready:false,queue:[n]},Vr.set(t,s),a.on("connect",()=>{s.ready=true;for(let i of s.queue)a.write(i);s.queue.length=0;}),a.on("error",i=>{r?.(`[named-pipe publish] ${o}: ${i instanceof Error?i.message:String(i)}`),Vr.delete(t);}),a.on("close",()=>{Vr.delete(t);});}function Gn(){return {executeSync(t,e,r){return ta({command:t,args:e,cwd:r?.cwd,timeoutMs:r?.timeout,env:r?.env},{encoding:r?.encoding,input:r?.input})},executeAsync(t,e,r){zc({command:t,args:e},r);},resolveInvocation(t,e){let r=Jc({command:t,args:e});return {cmd:r.command,args:r.args??[]}},splitCommand:ea,spawnDetached(t,e){Gr({command:t,args:e});}}}var oa=dirname(fileURLToPath(import.meta.url)),Zc=createRequire(import.meta.url);function ed(){let t=resolve(oa,"./jsonata-sync.cjs");return existsSync(t)?t:resolve(oa,"../../card-compute/jsonata-sync.cjs")}var yt=Zc(ed());function aa(t,e,r){if(!t||typeof t!="object")return {};let n={};if(Array.isArray(t.cmdTemplate)){let s=[];for(let o of t.cmdTemplate)try{s.push(String(yt(o).evaluate(e)));}catch(a){let i=a instanceof Error?a.message:String(a);throw new Error(`[${r}] argsMassaging.cmdTemplate failed on "${o}": ${i}`)}n.cmdArgs=s;}if(typeof t.stdinTemplate=="string")try{n.stdin=yt(t.stdinTemplate).evaluate(e);}catch(s){let o=s instanceof Error?s.message:String(s);throw new Error(`[${r}] argsMassaging.stdinTemplate failed: ${o}`)}if(typeof t.urlTemplate=="string")try{n.url=String(yt(t.urlTemplate).evaluate(e));}catch(s){let o=s instanceof Error?s.message:String(s);throw new Error(`[${r}] argsMassaging.urlTemplate failed: ${o}`)}if(typeof t.headerTemplate=="string")try{let s=yt(t.headerTemplate).evaluate(e);if(typeof s!="object"||s===null)throw new Error(`headerTemplate must produce an object, got: ${JSON.stringify(s)}`);n.headers=s;}catch(s){let o=s instanceof Error?s.message:String(s);throw new Error(`[${r}] argsMassaging.headerTemplate failed: ${o}`)}if(typeof t.bodyTemplate=="string")try{n.body=yt(t.bodyTemplate).evaluate(e);}catch(s){let o=s instanceof Error?s.message:String(s);throw new Error(`[${r}] argsMassaging.bodyTemplate failed: ${o}`)}return n}var rd=createRequire(import.meta.url);function nd(t){return typeof t=="object"?t:xe(t)}function ia(t){let e=ue.basename(String(t||"").trim());if(!e)throw new Error(`resolveYamlFlowCliPath: expected non-empty cli file name, got ${JSON.stringify(t)}`);let r=ue.dirname(rd.resolve("yaml-flow/package.json")),n=ue.join(r,"cli","node",e);if(!I.existsSync(n))throw new Error(`resolveYamlFlowCliPath: could not find ${e} under ${ue.join(r,"cli","node")}`);return n}function vt(t){let e=nd(t);return e.kind==="yaml-flow-cli"?ia(e.value):e.value}function sd(t,e){let r=vt(t);switch(r){case "source-cli-task-executor":{let n=ue.join(e,"source-cli-task-executor.js");if(I.existsSync(n))return {command:process.execPath,args:[n]};let s=ue.join(e,"source-cli-task-executor.ts"),o=ue.join(e,"..","..","node_modules","tsx","dist","cli.mjs"),a=ue.join(e,"..","..","node_modules",".bin","tsx"),i=I.existsSync(o)?o:a;return I.existsSync(s)&&I.existsSync(i)?{command:process.execPath,args:[i,s]}:{command:process.execPath,args:[n]}}case "board-live-cards":{let{cmd:n,args:s}=Vn(e,"_",[]);return {command:n,args:s}}default:throw new Error(`resolveBuiltIn: unknown built-in name "${r}". Supported: source-cli-task-executor, board-live-cards`)}}function ua(t,e){if(t.howToRun==="built-in"){let{command:n,args:s}=sd(t.whatToRun,e);return {command:n,baseArgs:s}}let r=(typeof t.whatToRun=="object",vt(t.whatToRun));switch(t.howToRun){case "local-node":return {command:process.execPath,baseArgs:[r]};case "local-python":return {command:process.platform==="win32"?"python":"python3",baseArgs:[r]};case "local-process":return {command:r,baseArgs:[]};default:throw new Error(`resolveBaseInvocation: howToRun "${t.howToRun}" is not a local transport`)}}function od(t,e){let r=[t.subcommand];return t.inRef&&r.push("--in-ref",t.inRef),t.outRef&&r.push("--out-ref",t.outRef),t.errRef&&r.push("--err-ref",t.errRef),e&&r.push("--extra",Buffer.from(JSON.stringify(e)).toString("base64")),r}function ad(t,e){return {subcommand:t.subcommand,...t.inRef?{inRef:t.inRef}:{},...t.outRef?{outRef:t.outRef}:{},...t.errRef?{errRef:t.errRef}:{},...e?{extra:e}:{}}}function Kn(t,e){return ua(t,e)}async function id(t,e){let r={...e,whatToRun:vt(t.whatToRun)},n=aa(t.argsMassaging,r,"_invokeTaskExecutorHttp"),s=n.url??vt(t.whatToRun),o=n.body?n.body:ad(e,t.extra),a={"Content-Type":"application/json"},i=n.headers?{...a,...n.headers}:a,u=await fetch(s,{method:t.howToRun==="http:get"?"GET":"POST",headers:i,body:JSON.stringify(o)});if(!u.ok){let d=await u.text().catch(()=>"");return {status:"error",error:`HTTP ${u.status}: ${d}`}}let c=await u.json().catch(()=>null);return c&&typeof c.status=="string"?c:{status:"success"}}function ca(t,e,r){if(t.howToRun==="http:post"||t.howToRun==="http:get"){id(t,e).catch(i=>{console.error(`[dispatchTaskExecutorDetached] HTTP dispatch failed: ${i.message}`);});return}let{command:s,baseArgs:o}=ua(t,r),a=od(e,t.extra);Gr({command:s,args:[...o,...a]});}createRequire(import.meta.url);function cd(){return {read(t){if(!I.existsSync(t))return null;try{return I.readFileSync(t,"utf-8")}catch{return null}},write(t,e){I.mkdirSync(ue.dirname(t),{recursive:true}),I.writeFileSync(t,e,"utf-8");}}}function da(t){return cd();}function rr(t,e){if(process.platform!=="win32"){I.renameSync(t,e);return}let r=[10,20,40,80,160];for(let n=0;n<=r.length;n++)try{I.renameSync(t,e);return}catch(s){let o=s.code;if((o==="EPERM"||o==="EBUSY")&&n<r.length){Atomics.wait(new Int32Array(new SharedArrayBuffer(4)),0,0,r[n]);continue}throw s}}function Ur(t){function e(s){return ue.join(t,...s.split("/"))}function r(s){return ue.relative(t,s).replace(/\\/g,"/")}function n(s,o){if(I.existsSync(s))for(let a of I.readdirSync(s,{withFileTypes:true})){let i=ue.join(s,a.name);if(a.isDirectory()){n(i,o);continue}a.isFile()&&o.push(r(i));}}return {read(s){let o=e(s);if(!I.existsSync(o))return null;try{return I.readFileSync(o,"utf-8")}catch{return null}},write(s,o){let a=e(s),i=`${a}.${process.pid}.${randomUUID()}.tmp`;I.mkdirSync(ue.dirname(a),{recursive:true}),I.writeFileSync(i,o,"utf-8"),rr(i,a);},exists(s){return I.existsSync(e(s))},remove(s){let o=e(s);try{I.existsSync(o)&&I.unlinkSync(o);}catch{}},readBytes(s){let o=e(s);if(!I.existsSync(o))return null;try{return new Uint8Array(I.readFileSync(o))}catch{return null}},writeBytes(s,o){let a=e(s),i=`${a}.${process.pid}.${randomUUID()}.tmp`;I.mkdirSync(ue.dirname(a),{recursive:true}),I.writeFileSync(i,Buffer.from(o)),rr(i,a);},listKeys(s){let o=[];n(t,o);let a=o.sort();return s?a.filter(i=>i.startsWith(s)):a},stat(s){let o=e(s);if(!I.existsSync(o))return null;try{let a=I.statSync(o);return {key:s,size:Number(a.size||0),updatedAt:new Date(a.mtimeMs).toISOString()}}catch{return null}}}}function Jn(){return {read(t){if(!I.existsSync(t))return null;try{return I.readFileSync(t,"utf-8")}catch{return null}},write(t,e){let r=`${t}.${process.pid}.${randomUUID()}.tmp`;I.mkdirSync(ue.dirname(t),{recursive:true}),I.writeFileSync(r,e,"utf-8"),rr(r,t);},exists(t){return I.existsSync(t)},remove(t){try{I.existsSync(t)&&I.unlinkSync(t);}catch{}},readBytes(t){if(!I.existsSync(t))return null;try{return new Uint8Array(I.readFileSync(t))}catch{return null}},writeBytes(t,e){let r=`${t}.${process.pid}.${randomUUID()}.tmp`;I.mkdirSync(ue.dirname(t),{recursive:true}),I.writeFileSync(r,Buffer.from(e)),rr(r,t);},stat(t){if(!I.existsSync(t))return null;try{let e=I.statSync(t);return {key:t,size:Number(e.size||0),updatedAt:new Date(e.mtimeMs).toISOString()}}catch{return null}},listKeys(t){return []}}}function zn(t){function e(n){return ue.join(t,...n.split("/"))+".json"}function r(n,s,o,a){if(I.existsSync(n))for(let i of I.readdirSync(n,{withFileTypes:true})){let u=s?`${s}/${i.name}`:i.name;if(i.isDirectory()){r(ue.join(n,i.name),u,o,a);continue}if(!i.isFile()||!i.name.endsWith(".json"))continue;let c=u.replace(/\.json$/,"");(!o||c.startsWith(o))&&a.push(c);}}return {read(n){let s=e(n);if(!I.existsSync(s))return null;try{return JSON.parse(I.readFileSync(s,"utf-8"))}catch{return null}},write(n,s){let o=e(n),a=`${o}.${process.pid}.${randomUUID()}.tmp`;I.mkdirSync(ue.dirname(o),{recursive:true}),I.writeFileSync(a,JSON.stringify(s,null,2),"utf-8"),rr(a,o);},delete(n){let s=e(n);try{I.existsSync(s)&&I.unlinkSync(s);}catch{}},listKeys(n){let s=[];return r(t,"",n,s),s.sort()}}}function Un(t){if(t==null||typeof t!="object")return JSON.stringify(t);if(Array.isArray(t))return `[${t.map(Un).join(",")}]`;let e=t;return `{${Object.keys(e).sort().map(n=>`${JSON.stringify(n)}:${Un(e[n])}`).join(",")}}`}function la(t){return createHash("sha256").update(Un(t)).digest("hex")}function fa(t){let e=ue.join(t,"board-journal.jsonl");return {readAllEntries(){if(!I.existsSync(e))return [];let r=I.readFileSync(e,"utf-8").trim();return r?r.split(`
|
|
12
12
|
`).filter(Boolean).map(n=>JSON.parse(n)):[]},appendEntry(r){I.appendFileSync(e,JSON.stringify(r)+`
|
|
13
|
-
`,"utf-8");},generateId(){return randomUUID()}}}function la(t){return {tryAcquire(){try{if(!I.existsSync(t)){I.mkdirSync(ue.dirname(t),{recursive:!0});try{I.writeFileSync(t,"{}",{flag:"wx"});}catch{}}return lockSync(t,{retries:0})}catch{return null}}}}var fa={$schema:"http://json-schema.org/draft-07/schema#",$id:"https://nsreehari.github.io/boards/live-cards.schema.json",definitions:{bind_ref:{description:"A card data path reference, e.g. 'card_data.raw_quotes' or 'requires.upstream'",type:"string",pattern:"^(card_data|requires|fetched_sources|computed_values)(\\.|$)"},bind_or_literal:{description:"A literal value or a bind reference object",oneOf:[{type:"string"},{type:"number"},{type:"boolean"},{type:"array"},{type:"object",properties:{bind:{$ref:"#/definitions/bind_ref"}},required:["bind"]}]},compute_expr:{description:"A declarative JSON compute expression",type:"object",required:["fn"],properties:{fn:{type:"string",description:"Function name from the built-in vocabulary",enum:["sum","avg","min","max","count","first","last","add","sub","mul","div","round","abs","mod","gt","gte","lt","lte","eq","neq","if","and","or","not","concat","upper","lower","template","filter","pluck","map","sort","slice","flat","unique","group","get","default","now","diff_days","format_date"]},input:{description:"card_data.path, literal, array of inputs, or nested compute_expr",oneOf:[{type:"string"},{type:"number"},{type:"boolean"},{type:"array"},{$ref:"#/definitions/compute_expr"}]},field:{type:"string",description:"For pluck/sum/group \u2014 the object key to extract"},where:{$ref:"#/definitions/compute_expr",description:"For filter \u2014 predicate expression ($ = current item)"},cond:{$ref:"#/definitions/compute_expr",description:"For if \u2014 condition expression"},then:{description:"For if \u2014 value when cond is truthy"},else:{description:"For if \u2014 value when cond is falsy"},format:{type:"string",description:"For format_date \u2014 date format string"}}},meta:{type:"object",properties:{title:{type:"string"},tags:{type:"array",items:{type:"string"}}}},requires:{type:"array",items:{type:"string"},description:"IDs of upstream nodes this node depends on"},provides:{type:"array",items:{type:"object",required:["bindTo","ref"],properties:{bindTo:{type:"string",description:"Token name published downstream"},ref:{type:"string",description:"Path to read value from (card_data.*, requires.*, fetched_sources.*, computed_values.*)"}}},description:"Explicit bindings exposing computed or card_data values downstream as named tokens"},compute_step:{description:"A single ordered compute step: reads card_data.*/requires.*/computed_values.*, writes to computed_values[bindTo]",type:"object",required:["bindTo","expr"],properties:{bindTo:{type:"string",description:"Key in computed_values to write result"},expr:{type:"string",description:"JSONata expression evaluated against { card_data, requires, fetched_sources, computed_values }"}}},source_def:{description:"One source entry. The engine requires 'bindTo' (compute namespace key) and 'outputFile' (delivery signal path). bindTo and outputFile must be unique across all source_defs in a card. Every other property is yours \u2014 add whatever your task-executor needs: kind, url, headers, mailbox, channel, model, query, etc. The full object is passed verbatim as the --in JSON to the executor.",type:"object",required:["bindTo","outputFile"],additionalProperties:true,properties:{bindTo:{type:"string",description:"Key under fetched_sources.* available in compute expressions"},outputFile:{type:"string",description:"Board-relative path the executor writes its JSON result to. Presence of this file signals delivery."},projections:{type:"object",description:"Named data projections from card_data or requires, evaluated before the executor is called. Each key is a ref name; each value is a JSONata expression rooted at card_data or requires. The resolved values are passed to the executor as _projections. fetched_sources, computed_values, and source_defs are not accessible here \u2014 sources run before those exist.",additionalProperties:{type:"string"}},optionalForCompletionGating:{type:"boolean",default:false,description:"When true this source does not gate card completion. Default false when absent, so source_defs are completion-gating by default."},timeout:{type:"integer",minimum:0,default:12e4,description:"Executor/script timeout in ms. Default: 120 000 (2 min)."},script:{type:"string",description:"Legacy direct-run: shell command executed when no .task-executor is registered. stdout is captured as the result."}}},render_element:{type:"object",required:["kind"],properties:{id:{type:"string",description:"Optional element ID for targeted updates"},kind:{enum:["metric","table","editable-table","chart","form","filter","list","notes","todo","alert","narrative","badge","text","markdown","ref","custom","actions"]},label:{type:"string",description:"Heading above this element"},className:{type:"string",description:"Bootstrap grid class, e.g. 'col-12 col-md-6'"},visible:{type:"string",description:"card_data/requires/fetched_sources/computed_values path \u2014 element shown only if truthy"},data:{type:"object",properties:{bind:{$ref:"#/definitions/bind_ref",description:"card_data/requires/fetched_sources/computed_values path to read data from"},writeTo:{$ref:"#/definitions/bind_ref",description:"card_data path for user input (form, filter, todo, notes)"},columns:{type:"array",items:{type:"string"},description:"table: visible columns"},maxRows:{type:"integer",description:"table/list: max rows to display"},sortable:{type:"boolean",default:true,description:"table: enable click-to-sort"},placeholder:{type:"string",description:"Empty-state message"},chartType:{enum:["bar","line","pie","doughnut"]},chartOptions:{type:"object",description:"Chart.js options passthrough"},fields:{type:"object",description:"JSON Schema for form/filter fields"},thresholds:{type:"object",properties:{green:{type:"string"},amber:{type:"string"}}},colorMap:{type:"object",description:"badge: value \u2192 Bootstrap color"},style:{enum:["heading","muted","default"],description:"text: display style"},upload:{type:"boolean",default:true,description:"file-upload: show drop zone (false = read-only file list)"},accept:{type:"array",items:{type:"string"},description:"file-upload: allowed extensions"},multiple:{type:"boolean",default:true,description:"file-upload: allow multiple files"},fileAttach:{type:"boolean",default:false,description:"chat: enable inline file attachments"},fileAccept:{type:"array",items:{type:"string"},description:"chat: allowed attachment extensions"},buttons:{type:"array",description:"actions: button definitions",items:{type:"object",required:["id","label"],properties:{id:{type:"string"},label:{type:"string"},style:{type:"string",description:"Bootstrap button variant, e.g. 'success', 'outline-danger'"},size:{type:"string",default:"sm"},disabled:{oneOf:[{type:"boolean"},{type:"string",description:"card_data/requires/fetched_sources/computed_values path \u2014 truthy = disabled"}]}}}}}}}},view:{type:"object",required:["elements"],properties:{elements:{type:"array",minItems:1,items:{$ref:"#/definitions/render_element"}},layout:{type:"object",properties:{board:{type:"object",properties:{col:{type:"integer",minimum:1,maximum:12},order:{type:"integer"}}},canvas:{type:"object",properties:{x:{type:"number"},y:{type:"number"},w:{type:"number"},h:{type:"number"}}}}},features:{type:"object",properties:{chat:{type:"boolean",default:false},notes:{type:"boolean",default:false},refresh:{type:"boolean",default:true}}}}}},title:"LiveCard",description:"A unified card node. Behavior depends on which sections are present (source_defs, compute, view, etc.)",type:"object",required:["id"],additionalProperties:false,properties:{id:{type:"string"},requires:{$ref:"#/definitions/requires"},provides:{$ref:"#/definitions/provides"},meta:{$ref:"#/definitions/meta"},view:{$ref:"#/definitions/view"},card_data:{type:"object",description:"Authored card data and runtime metadata. Includes uploaded-file metadata maintained by host handlers and inference evaluation results.",properties:{files:{type:"array",description:"Optional uploaded-file metadata maintained by host handlers. Stored name is normalized and serial-prefixed (for example 001-my_file.pdf).",items:{type:"object",required:["name","stored_name"],properties:{name:{type:"string",minLength:1},stored_name:{type:"string",minLength:5,maxLength:32,pattern:"^[0-9]{3,}-[a-z0-9._-]+$"},size:{oneOf:[{type:"integer",minimum:0},{type:"null"}]},mime_type:{type:"string"},path:{type:"string",pattern:"^[^\\s]+/files/[0-9]{3,}-[a-z0-9._-]+$"},uploaded_at:{type:"string",format:"date-time"}},additionalProperties:false}}},additionalProperties:true},source_defs:{type:"array",description:"Source entries. Each entry is passed verbatim to the board's .task-executor (registered via init --task-executor) as the --in JSON file. The executor fetches/generates the data and writes JSON to --out. If no executor is registered, the built-in executor runs the entry's 'cli' command directly. Sources gate completion by default. Set optionalForCompletionGating: true for enrichment-only source_defs that should not block task-completed.",items:{$ref:"#/definitions/source_def"}},compute:{type:"array",description:"Ordered array of compute steps. Each reads card_data.*/requires.*/fetched_sources.*/computed_values.* and writes to ephemeral computed_values[bindTo].",items:{$ref:"#/definitions/compute_step"}}}};var Bu=Nc(Mu());var Ng=createRequire(import.meta.url),qg=Ng("./jsonata-sync.cjs"),Cn=null;var Lu=/\b(card_data|requires|fetched_sources|computed_values|source_defs)\b/g,Dg=/^\s*(card_data|requires|fetched_sources|computed_values|source_defs)(\.|$)/;function Fg(t){let e=new Set,r;for(Lu.lastIndex=0;(r=Lu.exec(t))!==null;)e.add(r[1]);return e}function Gu(t){let e=Dg.exec(t);return e?e[1]:null}function Vu(t,e,r,n){try{qg(t);}catch(o){let a=o instanceof Error?o.message:String(o);n.push(`${e}: invalid JSONata expression (${a})`);return}let s=Fg(t);for(let o of s)r.has(o)||n.push(`${e}: disallowed namespace "${o}" in expression`);}function Io(t,e,r){if(Array.isArray(t)){t.forEach((s,o)=>{Io(s,`${e}/${o}`,r);});return}if(typeof t=="string"){let s=Gu(t);if(!s)return;new Set(["card_data","requires","computed_values"]).has(s)||r.push(`${e}: disallowed namespace "${s}" in view reference`);return}if(!t||typeof t!="object")return;let n=t;for(let[s,o]of Object.entries(n))Io(o,`${e}/${s}`,r);}function Mg(){if(Cn)return Cn;let t=new Bu.default({allErrors:true});return Og(t),Cn=t.compile(fa),Cn}function Ku(t){let e=Mg(),r=e(t),n=(e.errors??[]).map(s=>`${s.instancePath||"/"}: ${s.message??"unknown error"}`);if(t&&typeof t=="object"&&!Array.isArray(t)){let s=t.source_defs;if(Array.isArray(s)){let o=new Set,a=new Set;s.forEach((i,u)=>{if(!i||typeof i!="object"||Array.isArray(i))return;let c=i;typeof c.bindTo=="string"&&c.bindTo&&(o.has(c.bindTo)&&n.push(`/source_defs/${u}/bindTo: bindTo "${c.bindTo}" must be unique across all source_defs`),o.add(c.bindTo)),typeof c.outputFile=="string"&&c.outputFile&&(a.has(c.outputFile)&&n.push(`/source_defs/${u}/outputFile: outputFile "${c.outputFile}" must be unique across all source_defs`),a.add(c.outputFile));});}}return !r||n.length>0?{ok:false,errors:n}:{ok:true,errors:[]}}function Uu(t){let e=[];if(!t||typeof t!="object"||Array.isArray(t))return {ok:true,errors:[]};let r=t,n=r.compute;Array.isArray(n)&&n.forEach((c,d)=>{if(!c||typeof c!="object"||Array.isArray(c))return;let l=c.expr;typeof l!="string"||l.trim().length===0||Vu(l,`/compute/${d}/expr`,new Set(["card_data","requires","fetched_sources","computed_values"]),e);});let s=new Set(["card_data","requires","fetched_sources","computed_values"]),o=r.provides;Array.isArray(o)&&o.forEach((c,d)=>{if(!c||typeof c!="object"||Array.isArray(c))return;let l=c.ref;if(typeof l!="string"||l.trim().length===0)return;let b=Gu(l);b===null?e.push(`/provides/${d}/ref: path "${l}" must start with a valid namespace (${[...s].join(", ")})`):s.has(b)||e.push(`/provides/${d}/ref: disallowed namespace "${b}" in path "${l}" (valid: ${[...s].join(", ")})`);});let a=r.view;a&&typeof a=="object"&&!Array.isArray(a)&&Io(a,"/view",e);let i=new Set(["card_data","requires"]),u=r.source_defs;return Array.isArray(u)&&u.forEach((c,d)=>{if(!c||typeof c!="object"||Array.isArray(c))return;let l=c.projections;if(!(!l||typeof l!="object"||Array.isArray(l)))for(let[b,v]of Object.entries(l))typeof v!="string"||v.trim().length===0||Vu(v,`/source_defs/${d}/projections/${b}`,i,e);}),{ok:e.length===0,errors:e}}function Po(t){let e=Ku(t);if(!e.ok)return e;let r=Uu(t);return r.ok?{ok:true,errors:[]}:{ok:false,errors:r.errors}}var ut={RUNNING:"running",COMPLETED:"completed",FAILED:"failed",INACTIVATED:"inactivated"};function $e(t){return t?Array.isArray(t.provides)?t.provides:[]:[]}function ct(t){return t?Array.isArray(t.requires)?t.requires:[]:[]}function Ju(t){return t.tasks??{}}function Oo(t){return t?t.status===ut.FAILED||t.status===ut.INACTIVATED:false}function zu(t,e){return t.refreshStrategy??e?.refreshStrategy??"data-changed"}function Hu(t){return t.maxExecutions}function Wu(t,e){let r=new Set;for(let[n,s]of Object.entries(e))if(s.status===ut.COMPLETED){let o=t.tasks[n];o&&$e(o).forEach(i=>r.add(i));}return Array.from(r)}function Yu(t,e){let r={};return t.forEach(n=>{let s=e[n];if(!s)return;$e(s).forEach(a=>{r[a]||(r[a]=[]),r[a].push(n);});}),r}function Xu(t,e,r){let n=t.tasks[e]??$n(),s={};if(r){let a=r.tasks[e],i=ct(a);for(let u of i)for(let[c,d]of Object.entries(r.tasks))if($e(d).includes(u)){let l=t.tasks[c];l?.lastDataHash&&(s[u]=l.lastDataHash);break}}let o={...n,status:"running",startedAt:new Date().toISOString(),lastUpdated:new Date().toISOString(),progress:0,error:void 0,startConsumedHashes:s};return {...t,tasks:{...t.tasks,[e]:o},lastUpdated:new Date().toISOString()}}function Qu(t,e,r,n,s,o){let a=t.tasks[r]??$n(),i=e.tasks[r];if(!i)throw new Error(`Task "${r}" not found in graph`);let u;n&&i.on&&i.on[n]?u=i.on[n]:u=$e(i);let c=a.startConsumedHashes?{...a.startConsumedHashes}:{...a.lastConsumedHashes};if(!a.startConsumedHashes){let b=i.requires??[];for(let v of b)for(let[m,p]of Object.entries(e.tasks))if($e(p).includes(v)){let k=t.tasks[m];k?.lastDataHash&&(c[v]=k.lastDataHash);break}}let d={...a,status:"completed",completedAt:new Date().toISOString(),lastUpdated:new Date().toISOString(),executionCount:a.executionCount+1,lastEpoch:a.executionCount+1,lastDataHash:s,data:o,lastConsumedHashes:c,error:void 0},l=[...new Set([...t.availableOutputs,...u])];return {...t,tasks:{...t.tasks,[r]:d},availableOutputs:l,lastUpdated:new Date().toISOString()}}function Zu(t,e,r,n){let s=t.tasks[r]??$n(),o=e.tasks[r];if(o?.retry){let u=s.retryCount+1;if(u<=o.retry.max_attempts){let c={...s,status:"not-started",retryCount:u,lastUpdated:new Date().toISOString(),error:n};return {...t,tasks:{...t.tasks,[r]:c},lastUpdated:new Date().toISOString()}}}let a={...s,status:"failed",failedAt:new Date().toISOString(),lastUpdated:new Date().toISOString(),error:n,executionCount:s.executionCount+1},i=t.availableOutputs;if(o?.on_failure&&o.on_failure.length>0&&(i=[...new Set([...t.availableOutputs,...o.on_failure])]),o?.circuit_breaker&&a.executionCount>=o.circuit_breaker.max_executions){let u=o.circuit_breaker.on_break;i=[...new Set([...i,...u])];}return {...t,tasks:{...t.tasks,[r]:a},availableOutputs:i,lastUpdated:new Date().toISOString()}}function ec(t,e,r,n){let s=t.tasks[e]??$n(),o={...s,progress:typeof n=="number"?n:s.progress,messages:[...s.messages??[],...r?[{message:r,timestamp:new Date().toISOString(),status:s.status}]:[]],lastUpdated:new Date().toISOString()};return {...t,tasks:{...t.tasks,[e]:o},lastUpdated:new Date().toISOString()}}function tc(t,e){let r=t.tasks[e];if(!r)return t;let n={...r,status:"not-started",startedAt:void 0,completedAt:void 0,failedAt:void 0,error:void 0,data:void 0,progress:null,lastUpdated:new Date().toISOString()};return {...t,tasks:{...t.tasks,[e]:n},lastUpdated:new Date().toISOString()}}function $n(){return {status:"not-started",executionCount:0,retryCount:0,lastEpoch:0,messages:[],progress:null}}function En(t,e){let r=`live-${Date.now()}`,n={};for(let o of Object.keys(t.tasks))n[o]=nc();let s={status:"running",tasks:n,availableOutputs:[],stuckDetection:{is_stuck:false,stuck_description:null,outputs_unresolvable:[],tasks_blocked:[]},lastUpdated:new Date().toISOString(),executionId:r,executionConfig:{executionMode:t.settings.execution_mode??"eligibility-mode",conflictStrategy:t.settings.conflict_strategy??"alphabetical",completionStrategy:t.settings.completion}};return {config:t,state:s}}function Lg(t,e){let{config:r,state:n}=t;if("executionId"in e&&e.executionId&&e.executionId!==n.executionId)return t;switch(e.type){case "task-started":return {config:r,state:Xu(n,e.taskName,r)};case "task-completed":return {config:r,state:Qu(n,r,e.taskName,e.result,e.dataHash,e.data)};case "task-failed":return {config:r,state:Zu(n,r,e.taskName,e.error)};case "task-progress":return {config:r,state:ec(n,e.taskName,e.message,e.progress)};case "task-restart":return {config:r,state:tc(n,e.taskName)};case "inject-tokens":return {config:r,state:{...n,availableOutputs:[...new Set([...n.availableOutputs,...e.tokens])],lastUpdated:new Date().toISOString()}};case "agent-action":return {config:r,state:zg(n,e.action)};case "task-upsert":return Vg(t,e.taskName,e.taskConfig);case "task-removal":return Bg(t,e.taskName);case "node-requires-add":return Gg(t,e.nodeName,e.tokens);case "node-requires-remove":return Kg(t,e.nodeName,e.tokens);case "node-provides-add":return Ug(t,e.nodeName,e.tokens);case "node-provides-remove":return Jg(t,e.nodeName,e.tokens);default:return t}}function rc(t,e){return e.reduce((r,n)=>Lg(r,n),t)}function Vg(t,e,r){let n=!!t.config.tasks[e];return {config:{...t.config,tasks:{...t.config.tasks,[e]:r}},state:{...t.state,tasks:{...t.state.tasks,[e]:n?t.state.tasks[e]:nc()},lastUpdated:new Date().toISOString()}}}function Bg(t,e){if(!t.config.tasks[e])return t;let{[e]:r,...n}=t.config.tasks,{[e]:s,...o}=t.state.tasks;return {config:{...t.config,tasks:n},state:{...t.state,tasks:o,lastUpdated:new Date().toISOString()}}}function Gg(t,e,r){let n=t.config.tasks[e];if(!n)return t;let s=ct(n),o=r.filter(a=>!s.includes(a));return o.length===0?t:{config:{...t.config,tasks:{...t.config.tasks,[e]:{...n,requires:[...s,...o]}}},state:t.state}}function Kg(t,e,r){let n=t.config.tasks[e];if(!n)return t;let s=ct(n),o=s.filter(a=>!r.includes(a));return o.length===s.length?t:{config:{...t.config,tasks:{...t.config.tasks,[e]:{...n,requires:o}}},state:t.state}}function Ug(t,e,r){let n=t.config.tasks[e];if(!n)return t;let s=$e(n),o=r.filter(a=>!s.includes(a));return o.length===0?t:{config:{...t.config,tasks:{...t.config.tasks,[e]:{...n,provides:[...s,...o]}}},state:t.state}}function Jg(t,e,r){let n=t.config.tasks[e];if(!n)return t;let s=$e(n),o=s.filter(a=>!r.includes(a));return o.length===s.length?t:{config:{...t.config,tasks:{...t.config.tasks,[e]:{...n,provides:o}}},state:t.state}}function Ar(t){return {version:1,config:t.config,state:t.state,snapshotAt:new Date().toISOString()}}function xn(t){if(!t||typeof t!="object")throw new Error("Invalid snapshot: expected an object");let e=t;if(!e.config||typeof e.config!="object")throw new Error('Invalid snapshot: missing or invalid "config"');if(!e.state||typeof e.state!="object")throw new Error('Invalid snapshot: missing or invalid "state"');let r=e.config,n=e.state;if(!r.settings||typeof r.settings!="object")throw new Error("Invalid snapshot: config.settings missing");if(!r.tasks||typeof r.tasks!="object")throw new Error("Invalid snapshot: config.tasks missing");if(!n.tasks||typeof n.tasks!="object")throw new Error("Invalid snapshot: state.tasks missing");if(!Array.isArray(n.availableOutputs))throw new Error("Invalid snapshot: state.availableOutputs must be an array");return {config:r,state:n}}function nc(){return {status:"not-started",executionCount:0,retryCount:0,lastEpoch:0,messages:[],progress:null}}function zg(t,e){let r=new Date().toISOString();switch(e){case "stop":return {...t,status:"stopped",lastUpdated:r};case "pause":return {...t,status:"paused",lastUpdated:r};case "resume":return {...t,status:"running",lastUpdated:r};default:return t}}function Ir(t){let{config:e,state:r}=t,n=Ju(e);if(Object.keys(n).length===0)return {eligible:[],pending:[],unresolved:[],blocked:[],conflicts:{}};let o=Hg(n),a=Wu(e,r.tasks),i=new Set([...a,...r.availableOutputs]),u=[],c=[],d=[],l=[];for(let[v,m]of Object.entries(n)){let p=r.tasks[v],k=zu(m,e.settings),g=k!=="once";if(p?.status===ut.RUNNING||Oo(p))continue;let f=Hu(m);if(f!==void 0&&p&&p.executionCount>=f||m.circuit_breaker&&p&&p.executionCount>=m.circuit_breaker.max_executions||!g&&p?.status===ut.COMPLETED)continue;if(g&&p?.status===ut.COMPLETED){let R=ct(m),E=false;switch(k){case "data-changed":{R.length>0&&R.some(D=>{for(let[M,te]of Object.entries(n))if($e(te).includes(D)){let U=r.tasks[M];if(!U)continue;let le=p.lastConsumedHashes?.[D];return U.lastDataHash==null?U.executionCount>p.lastEpoch:U.lastDataHash!==le}return false})||(E=true);break}case "epoch-changed":{R.length>0&&R.some(D=>{for(let[M,te]of Object.entries(n))if($e(te).includes(D)){let U=r.tasks[M];if(U&&U.executionCount>p.lastEpoch)return true}return false})||(E=true);break}case "time-based":{let N=m.refreshInterval??0;if(N<=0){E=true;break}let D=p.completedAt;if(!D){E=true;break}(Date.now()-Date.parse(D))/1e3<N&&(E=true);break}case "manual":E=true;break}if(E)continue}let y=ct(m);if(y.length===0){u.push(v);continue}let _=[],w=[],C=[];for(let R of y){if(i.has(R))continue;let E=o[R]||[];E.length===0?_.push(R):E.every(D=>Oo(r.tasks[D]))?C.push({token:R,failedProducer:E[0]}):w.push(R);}_.length>0?d.push({taskName:v,missingTokens:_}):C.length>0?l.push({taskName:v,failedTokens:C.map(R=>R.token),failedProducers:[...new Set(C.map(R=>R.failedProducer))]}):w.length>0?c.push({taskName:v,waitingOn:w}):u.push(v);}let b={};if(u.length>1){let v=Yu(u,n);for(let[m,p]of Object.entries(v))p.length>1&&(b[m]=p);}return {eligible:u,pending:c,unresolved:d,blocked:l,conflicts:b}}function Hg(t){let e={};for(let[r,n]of Object.entries(t)){for(let s of $e(n))e[s]||(e[s]=[]),e[s].push(r);if(n.on)for(let s of Object.values(n.on))for(let o of s)e[o]||(e[o]=[]),e[o].includes(r)||e[o].push(r);if(n.on_failure)for(let s of n.on_failure)e[s]||(e[s]=[]),e[s].includes(r)||e[s].push(r);}return e}var Pr=class{buffer=[];append(e){this.buffer.push(e);}drain(){let e=this.buffer;return this.buffer=[],e}get size(){return this.buffer.length}};function jo(t){let e=No(t);return Wg(e)}function No(t){if(t==null||typeof t!="object")return JSON.stringify(t);if(Array.isArray(t))return "["+t.map(No).join(",")+"]";let e=t;return "{"+Object.keys(e).sort().map(n=>JSON.stringify(n)+":"+No(e[n])).join(",")+"}"}function Wg(t){let e=0xcbf29ce484222325n,r=0x100000001b3n,n=0xffffffffffffffffn;for(let s=0;s<t.length;s++)e^=BigInt(t.charCodeAt(s)),e=e*r&n;return e.toString(16).padStart(16,"0")}function Yg(t){if(typeof Buffer<"u")return Buffer.from(t,"utf8").toString("base64url");if(typeof btoa=="function"){let e=new TextEncoder().encode(t),r="";for(let n of e)r+=String.fromCharCode(n);return btoa(r).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}throw new Error("No base64 encoder available in this runtime")}function Xg(t){if(typeof Buffer<"u")return Buffer.from(t,"base64url").toString("utf8");if(typeof atob=="function"){let e=t.replace(/-/g,"+").replace(/_/g,"/"),r=e+"=".repeat((4-e.length%4)%4),n=atob(r),s=new Uint8Array(n.length);for(let o=0;o<n.length;o++)s[o]=n.charCodeAt(o);return new TextDecoder().decode(s)}throw new Error("No base64 decoder available in this runtime")}function sc(t){let e=JSON.stringify({t,n:Date.now().toString(36)+Math.random().toString(36).slice(2,6)});return Yg(e)}function Qg(t){try{let e=JSON.parse(Xg(t));return typeof e?.t=="string"?{taskName:e.t}:null}catch{return null}}function oc(t,e,r){let{handlers:n,onDrain:s}=e,o=new Pr,a="state"in t&&"config"in t?t:En(t),i=false,u=new Set,c=new Map(Object.entries(n)),d=new Pr,l=false,b=false;function v(){if(!i){if(l){b=true;return}l=true;try{do b=!1,m();while(b)}finally{l=false;}}}function m(){let f=d.drain(),y=o.drain(),_=[...f,...y];_.length>0&&(a=rc(a,_));let w=Ir(a);_.length>0&&s?.(_,a,w);for(let C of w.eligible)g(C);for(let C of _)if(C.type==="task-progress"){let{taskName:R,update:E}=C;if(!a.config.tasks[R])continue;let D=a.state.tasks[R];if(!D||D.status!=="running")continue;let M=sc(R),te=k(R,M,E).catch(U=>{i||(d.append({type:"task-failed",taskName:R,error:U.message??String(U),timestamp:new Date().toISOString()}),v());}).finally(()=>{u.delete(te);});u.add(te);}}function p(f){let _=a.config.tasks[f].requires??[],w=new Map;for(let[R,E]of Object.entries(a.config.tasks))for(let N of E.provides??[])w.set(N,R);let C={};for(let R of _){let E=w.get(R);E?C[R]=a.state.tasks[E]?.data:C[R]=void 0;}return C}async function k(f,y,_){let w=a.config.tasks[f],C=w.taskHandlers??[],R=p(f);for(let E of C){let N=c.get(E);if(!N)throw new Error(`Handler '${E}' not found in registry (task '${f}')`);let D={nodeId:f,state:R,taskState:a.state.tasks[f],config:w,callbackToken:y,update:_};if(await N(D)==="task-initiate-failure")throw new Error(`Handler '${E}' returned task-initiate-failure (task '${f}')`)}}function g(f){let _=a.config.tasks[f]?.taskHandlers;if(!_||_.length===0)return;d.append({type:"task-started",taskName:f,timestamp:new Date().toISOString()}),v();let w=sc(f),C=k(f,w).catch(R=>{i||(d.append({type:"task-failed",taskName:f,error:R.message??String(R),timestamp:new Date().toISOString()}),v());}).finally(()=>{u.delete(C);});u.add(C);}return {push(f){i||(f.type==="task-completed"&&f.data&&!f.dataHash&&(f={...f,dataHash:jo(f.data)}),o.append(f),v());},pushAll(f){if(!i){for(let y of f)y.type==="task-completed"&&y.data&&!y.dataHash?o.append({...y,dataHash:jo(y.data)}):o.append(y);v();}},resolveCallback(f,y,_){if(i)return;let w=Qg(f);if(!w)return;let{taskName:C}=w;if(a.config.tasks[C]){if(_&&_.length>0)o.append({type:"task-failed",taskName:C,error:_.join("; "),timestamp:new Date().toISOString()});else {let R=y&&Object.keys(y).length>0?jo(y):void 0;o.append({type:"task-completed",taskName:C,data:y,dataHash:R,timestamp:new Date().toISOString()});}v();}},addNode(f,y){i||(o.append({type:"task-upsert",taskName:f,taskConfig:y,timestamp:new Date().toISOString()}),v());},removeNode(f){i||(o.append({type:"task-removal",taskName:f,timestamp:new Date().toISOString()}),v());},addRequires(f,y){i||(o.append({type:"node-requires-add",nodeName:f,tokens:y,timestamp:new Date().toISOString()}),v());},removeRequires(f,y){i||(o.append({type:"node-requires-remove",nodeName:f,tokens:y,timestamp:new Date().toISOString()}),v());},addProvides(f,y){i||(o.append({type:"node-provides-add",nodeName:f,tokens:y,timestamp:new Date().toISOString()}),v());},removeProvides(f,y){i||(o.append({type:"node-provides-remove",nodeName:f,tokens:y,timestamp:new Date().toISOString()}),v());},registerHandler(f,y){c.set(f,y);},unregisterHandler(f){c.delete(f);},retrigger(f){i||a.config.tasks[f]&&(o.append({type:"task-restart",taskName:f,timestamp:new Date().toISOString()}),v());},retriggerAll(f){if(!i){for(let y of f)a.config.tasks[y]&&o.append({type:"task-restart",taskName:y,timestamp:new Date().toISOString()});v();}},snapshot(){return Ar(a)},getState(){return a},getSchedule(){return Ir(a)},async waitForHandlers(){u.size>0&&await Promise.allSettled([...u]);},async dispose(f){f?.wait&&u.size>0&&await Promise.allSettled([...u]),i=true;}}}var eh=createRequire(import.meta.url),Tn=eh("./jsonata-sync.cjs"),uc=Tn;function ac(t,e){if(!e||!t)return;let r=e.split("."),n=t;for(let s=0;s<r.length;s++){if(n==null)return;n=n[r[s]];}return n}function cc(t,e,r){let n=e.split("."),s=t;for(let o=0;o<n.length-1;o++)(s[n[o]]==null||typeof s[n[o]]!="object")&&(s[n[o]]={}),s=s[n[o]];s[n[n.length-1]]=r;}async function th(t,e){if(!t?.compute?.length)return t;t.card_data||(t.card_data={}),t.computed_values={},t._sourcesData=e?.sourcesData??{};let r=t.requires??{},n={card_data:t.card_data,requires:r,expects_data:r,fetched_sources:t._sourcesData,data:t.computed_values,computed_values:t.computed_values};for(let s of t.compute)try{let o=await Tn(s.expr).evaluate(n);cc(t.computed_values,s.bindTo,o),n.computed_values=t.computed_values;}catch{}return t}function rh(t,e){if(!t?.compute?.length)return {ok:true,node:t};t.card_data||(t.card_data={}),t.computed_values={},t._sourcesData=e?.sourcesData??{};let r=t.requires??{},n={card_data:t.card_data,requires:r,expects_data:r,fetched_sources:t._sourcesData,data:t.computed_values,computed_values:t.computed_values},s=[];for(let o of t.compute)try{let a=uc(o.expr).evaluate(n);cc(t.computed_values,o.bindTo,a),n.computed_values=t.computed_values;}catch(a){let i=a instanceof Error?a.message:String(a);s.push({bindTo:o.bindTo,error:i});}return s.length>0?{ok:true,node:t,errors:s}:{ok:true,node:t}}async function nh(t,e,r){let n={...r??{},card_data:e.card_data??{},requires:e.requires??{},fetched_sources:e._sourcesData??{},computed_values:e.computed_values??{}};return Tn(t).evaluate(n)}function sh(t,e){return e.startsWith("fetched_sources.")?ac(t._sourcesData??{},e.slice(16)):ac(t,e)}var ic=new Set(["metric","table","editable-table","chart","form","filter","list","notes","todo","alert","narrative","badge","text","markdown","ref","custom","actions"]),oh=new Set(["id","meta","requires","provides","view","card_data","compute","source_defs"]);function ah(t){let e=[];if(!t||typeof t!="object"||Array.isArray(t))return {ok:false,errors:["Node must be a non-null object"]};let r=t;(typeof r.id!="string"||!r.id)&&e.push("id: required, must be a non-empty string");for(let n of Object.keys(r))oh.has(n)||e.push(`Unknown top-level key: "${n}"`);if((r.card_data==null||typeof r.card_data!="object"||Array.isArray(r.card_data))&&e.push("card_data: required, must be an object"),r.meta!=null)if(typeof r.meta!="object"||Array.isArray(r.meta))e.push("meta: must be an object");else {let n=r.meta;n.title!=null&&typeof n.title!="string"&&e.push("meta.title: must be a string"),n.tags!=null&&!Array.isArray(n.tags)&&e.push("meta.tags: must be an array");}if(r.requires!=null&&!Array.isArray(r.requires)&&e.push("requires: must be an array of strings"),r.provides!=null&&(Array.isArray(r.provides)?r.provides.forEach((n,s)=>{if(!n||typeof n!="object"||Array.isArray(n))e.push(`provides[${s}]: must be an object with bindTo and ref`);else {let o=n;(typeof o.bindTo!="string"||!o.bindTo)&&e.push(`provides[${s}]: missing required "bindTo" string`),(typeof o.ref!="string"||!o.ref)&&e.push(`provides[${s}]: missing required "ref" string`);}}):e.push("provides: must be an array of { bindTo, ref } bindings")),r.compute!=null&&(Array.isArray(r.compute)?r.compute.forEach((n,s)=>{if(!n||typeof n!="object"||Array.isArray(n))e.push(`compute[${s}]: must be a compute step object`);else {let o=n;(typeof o.bindTo!="string"||!o.bindTo)&&e.push(`compute[${s}]: missing required "bindTo" property`),(typeof o.expr!="string"||!o.expr)&&e.push(`compute[${s}]: missing required "expr" string (JSONata expression)`);}}):e.push("compute: must be an array of compute steps")),r.source_defs!=null)if(!Array.isArray(r.source_defs))e.push("source_defs: must be an array");else {let n=new Set,s=new Set;r.source_defs.forEach((o,a)=>{if(!o||typeof o!="object"||Array.isArray(o))e.push(`source_defs[${a}]: must be an object`);else {let i=o;typeof i.bindTo!="string"||!i.bindTo?e.push(`source_defs[${a}]: missing required "bindTo" property`):(n.has(i.bindTo)&&e.push(`source_defs[${a}]: bindTo "${i.bindTo}" is not unique across source_defs`),n.add(i.bindTo)),typeof i.outputFile!="string"||!i.outputFile?e.push(`source_defs[${a}]: missing required "outputFile" property`):(s.has(i.outputFile)&&e.push(`source_defs[${a}]: outputFile "${i.outputFile}" is not unique across source_defs`),s.add(i.outputFile)),i.optionalForCompletionGating!=null&&typeof i.optionalForCompletionGating!="boolean"&&e.push(`source_defs[${a}]: optionalForCompletionGating must be a boolean`);}});}if(r.view!=null)if(typeof r.view!="object"||Array.isArray(r.view))e.push("view: must be an object");else {let n=r.view;!Array.isArray(n.elements)||n.elements.length===0?e.push("view.elements: required, must be a non-empty array"):n.elements.forEach((s,o)=>{if(!s||typeof s!="object"){e.push(`view.elements[${o}]: must be an object`);return}!s.kind||typeof s.kind!="string"?e.push(`view.elements[${o}].kind: required, must be a string`):ic.has(s.kind)||e.push(`view.elements[${o}].kind: unknown kind "${s.kind}". Valid: ${[...ic].join(", ")}`),s.data!=null&&(typeof s.data!="object"||Array.isArray(s.data))&&e.push(`view.elements[${o}].data: must be an object`);}),n.layout!=null&&(typeof n.layout!="object"||Array.isArray(n.layout))&&e.push("view.layout: must be an object"),n.features!=null&&(typeof n.features!="object"||Array.isArray(n.features))&&e.push("view.features: must be an object");}return {ok:e.length===0,errors:e}}async function ih(t,e){if(!t||t.length===0)return [];let r={card_data:e.card_data??{},requires:e.requires??{}};return Promise.all(t.map(async n=>{let s={};if(n.projections&&typeof n.projections=="object"&&!Array.isArray(n.projections)){for(let[o,a]of Object.entries(n.projections))if(typeof a=="string"&&a.trim().length>0)try{s[o]=await Tn(a).evaluate(r);}catch{s[o]=void 0;}}return {...n,_projections:s}}))}function uh(t,e){if(!t||t.length===0)return [];let r={card_data:e.card_data??{},requires:e.requires??{}};return t.map(n=>{let s={};if(n.projections&&typeof n.projections=="object"&&!Array.isArray(n.projections)){for(let[o,a]of Object.entries(n.projections))if(typeof a=="string"&&a.trim().length>0)try{s[o]=uc(a).evaluate(r);}catch{s[o]=void 0;}}return {...n,_projections:s}})}var dt={run:th,runSync:rh,eval:nh,resolve:sh,validate:ah,enrichSources:ih,enrichSourcesSync:uh};function qo(t){return JSON.stringify(t)}function Do(t){let e;try{e=JSON.parse(t);}catch{throw new Error(`parseExecutionRef: invalid JSON \u2014 ${t}`)}if(typeof e!="object"||e===null||typeof e.howToRun!="string"||typeof e.whatToRun!="string")throw new Error(`parseExecutionRef: missing required fields howToRun/whatToRun \u2014 ${t}`);return e}function An(t,e){function r(){return t.readIndex()??{}}function n(s,o,a){let i=String(o||"").split(".").filter(Boolean);if(i.length===0)return a&&typeof a=="object"&&!Array.isArray(a)?a:{value:a};let u={...s},c=u;for(let d=0;d<i.length-1;d++){let l=i[d],b=c[l],v=b&&typeof b=="object"&&!Array.isArray(b)?{...b}:{};c[l]=v,c=v;}return c[i[i.length-1]]=a,u}return {readCard(s){let o=r()[s];return !o||!t.cardExists(o.key)?null:t.readCard(o.key)},readCardKey(s){return r()[s]?.key??null},readAllCards(){let s=[];for(let[o,a]of Object.entries(r())){if(!t.cardExists(a.key))continue;let i=t.readCard(a.key);i?s.push(i):e?.(`[card-store] could not read card "${o}" at key "${a.key}"`);}return s},readChecksumIndex(){let s={};for(let[o,a]of Object.entries(r()))s[o]=a.checksum;return s},changedSince(s){let o=r(),a=[];for(let[i,u]of Object.entries(o))s[i]!==u.checksum&&a.push(i);for(let i of Object.keys(s))o[i]||a.push(i);return a},validateUpsert(s,o){let a=r(),i=a[s],u=Object.entries(a).find(([,c])=>c.key===o);return i&&i.key!==o?{ok:false,error:`Card id "${s}" is already mapped to key "${i.key}", cannot remap to "${o}"`}:u&&u[0]!==s?{ok:false,error:`Key "${o}" is already mapped to card id "${u[0]}", cannot remap to "${s}"`}:{ok:true}},writeCard(s,o,a){let i=r(),u=a??i[s]?.key??t.defaultCardKey(s),c=t.writeCard(u,o);i[s]={key:u,checksum:c,updatedAt:new Date().toISOString()},t.writeIndex(i);},patchCard(s,o,a){let i=r(),u=i[s];if(!u||!t.cardExists(u.key))throw new Error(`card "${s}" not found`);let c=t.readCard(u.key);if(!c||typeof c!="object"||Array.isArray(c))throw new Error(`card "${s}" is not patchable`);let d=n(c,o,a),l=t.writeCard(u.key,d);i[s]={key:u.key,checksum:l,updatedAt:new Date().toISOString()},t.writeIndex(i);},removeCard(s){let o=r();o[s]&&(delete o[s],t.writeIndex(o));},readIndex(){return r()}}}function Fo(t,e){return {readSourceData(r,n){let s=t.read(`${r}/${n}`);if(s==null)return null;let o=s.trim();if(!o)return null;try{return JSON.parse(o)}catch{return o}},ingestSourceDataStaged(r,n,s,o){let a=e(s);t.write(`${r}/.staged/${o}/${n}`,a);},commitSourceData(r,n,s){let o=`${r}/.staged/${s}/${n}`,a=t.read(o);return a==null?false:(t.write(`${r}/${n}`,a),t.remove(o),true)},hasSource(r,n){return t.exists(`${r}/${n}`)}}}function pc(t){function e(r){let n=t.readAllEntries();if(!r)return n;let s=n.findIndex(o=>o.id===r);return s===-1?n:n.slice(s+1)}return {readEntriesAfterCursor(r){let n=e(r);return n.length===0?{events:[],newCursor:r}:{events:n.map(s=>s.event),newCursor:n[n.length-1].id}},pendingCount(r){return e(r).length},appendEvent(r){t.appendEntry({id:t.generateId(),event:r});}}}function mc(t,e){return {appendEntries(r,n){if(!r||n.length===0)return;let s=t.read(r)??[];t.write(r,[...s,...n]);},dispatchEntriesForJournalId(r,n){if(!r)return;let s=t.read(r);if(!(!s||s.length===0)){for(let o of s)try{n(o);}catch(a){let i=a instanceof Error?a.message:String(a);try{e(o,i);}catch{}}t.delete(r);}}}}var Or="v1",lt="board/graph",gc="board/lastJournalProcessedId";function dc(t){return `cards/${t}/runtime`}function hc(t){return {readRuntime(e){return t.read(dc(e))??{_sources:{}}},writeRuntime(e,r){t.write(dc(e),r);}}}function ch(t,e){let r={...t};for(let n of e.deleteKeys)delete r[n];return {...r,...e.shallowMerge}}function yc(t){return {readSnapshot(e){return t.readValues(e)},commitSnapshot(e,r){if(r.schemaVersion!==Or)throw new Error(`Unsupported snapshot schema version: ${r.schemaVersion}`);let n=t.readValues(e);if(n.version!==r.expectedVersion)return {ok:false,reason:"version-mismatch",currentVersion:n.version};let s=ch(n.values,r);return {ok:true,newVersion:t.writeValues(e,s,r.deleteKeys)}}}}function Mo(t){function e(r){let n=t.read(r);return n==null?null:typeof n=="string"?n:JSON.stringify(n)}return {readTaskExecutorRef(){let r=e("task-executor");if(r?.trim())return Do(r.trim())},writeTaskExecutorRef(r){t.write("task-executor",qo(r));},readChatHandlerFlow(){return t.read("chat-handler-flow")},writeChatHandlerFlow(r){t.write("chat-handler-flow",r);},readCardStoreRef(){return e("card-store-ref")},writeCardStoreRef(r){t.write("card-store-ref",r);},readOutputsStoreRef(){return e("outputs-store-ref")},writeOutputsStoreRef(r){t.write("outputs-store-ref",r);}}}function vc(t){return {writeComputedValues(e,r){t.write(`cards/${e}/computed_values`,r);},readComputedValues(e){return t.read(`cards/${e}/computed_values`)},readAllComputedValues(){let e={};for(let r of t.listKeys("cards/")){let n=r.match(/^cards\/([^/]+)\/computed_values$/);n&&(e[n[1]]=t.read(r));}return e},writeDataObjects(e){for(let[r,n]of Object.entries(e))r&&t.write(`data-objects/${r}`,n);},readDataObject(e){return t.read(`data-objects/${e}`)},readAllDataObjects(){let e={};for(let r of t.listKeys("data-objects/"))e[r.slice(13)]=t.read(r);return e},writeStatusSnapshot(e){t.write("status",e);},readStatusSnapshot(){return t.read("status")}}}function dh(t){return t?.lastRequestedAt?!t.lastFetchedAt||t.lastFetchedAt<t.lastRequestedAt:false}function lc(t,e){return t?.lastRequestedAt?dh(t)?"in-flight":!t.lastFetchedAt||t.lastFetchedAt<e?"dispatch":"idle":"dispatch"}function lh(t,e){let r={...t,lastFetchedAt:e};return delete r.lastError,r}function fc(t,e){let r={...t,lastError:e};return delete r.lastFetchedAt,r}function In(t,e){let r=e.state.tasks,n=e.config.tasks,s=Object.keys(r),o=Ir(e),a={completed:0,failed:0,in_progress:0,pending:0,blocked:0,unresolved:0},i=new Map;for(let m of o.pending)i.set(m.taskName,m.waitingOn);for(let m of o.unresolved)i.set(m.taskName,m.missingTokens);for(let m of o.blocked)i.set(m.taskName,m.failedTokens);let u=new Map;for(let[m,p]of Object.entries(n))for(let k of p.requires??[]){let g=u.get(k)??[];g.push(m),u.set(k,g);}let c=s.sort().map(m=>{let p=r[m],k=n[m]??{requires:[],provides:[]};p.status==="completed"?a.completed+=1:p.status==="failed"?a.failed+=1:p.status==="in-progress"&&(a.in_progress+=1);let g=k.requires??[],f=k.provides??[],y=Object.keys(p.data??{}).sort(),_=g.filter(D=>e.state.availableOutputs.includes(D)),w=g.filter(D=>!e.state.availableOutputs.includes(D)),C=i.get(m)??w,R=new Set;for(let D of f)for(let M of u.get(D)??[])M!==m&&R.add(M);let E=p.failedAt,N=p.error?{message:p.error,code:"TASK_FAILED",at:E,source:"task-runtime"}:void 0;return {name:m,status:p.status,error:N,requires:g,requires_satisfied:_,requires_missing:w,provides_declared:f,provides_runtime:y,blocked_by:C,unblocks:Array.from(R).sort(),runtime:{attempt_count:p.executionCount??0,restart_count:p.retryCount??0,in_progress_since:p.status==="in-progress"?p.startedAt??null:null,last_transition_at:p.lastUpdated??null,last_completed_at:p.completedAt??null,last_restarted_at:p.startedAt??null,status_age_ms:p.lastUpdated?0:null}}});a.pending=o.pending.length,a.blocked=o.blocked.length,a.unresolved=o.unresolved.length;let d=c.map(m=>({name:m.name,fanOut:m.unblocks.length})).sort((m,p)=>p.fanOut-m.fanOut||m.name.localeCompare(p.name)),l=d.length>0?d[0]:{name:null,fanOut:0},b=new Set;for(let m of Object.values(n))for(let p of m.requires??[])b.add(p);let v=0;for(let[m,p]of Object.entries(n)){let k=(p.requires??[]).length===0,f=(p.provides??[]).some(y=>(u.get(y)??[]).some(_=>_!==m));k&&!f&&(v+=1);}return {schema_version:"v1",meta:{board:{path:t}},summary:{card_count:s.length,completed:a.completed,eligible:o.eligible.length,pending:a.pending,blocked:a.blocked,unresolved:a.unresolved,failed:a.failed,in_progress:a.in_progress,orphan_cards:v,topology:{edge_count:Array.from(b).length,max_fan_out_card:l.name,max_fan_out:l.fanOut}},cards:c}}function fh(){return new Date().toISOString()}function bc(t,e,r,n,s,o,a){return async i=>{let u=[],c=r.cardStore.readCard(i.nodeId);if(!c)return "task-initiate-failure";let d=c.id,l=c.card_data??{},b=c.source_defs??[],v=b.filter(q=>q.optionalForCompletionGating!==true),m=r.cardRuntimeStore.readRuntime(d),p=false,k=()=>{p&&(r.cardRuntimeStore.writeRuntime(d,m),p=false);},g=q=>({...m._sources[q]??{}}),f=(q,S)=>{m._sources[q]=S,p=true;},y=i.taskState?.executionCount??0;if(m._lastExecutionCount!==y&&(m._sources={},m._lastExecutionCount=y,p=true),i.update){let q=i.update,S=q.outputFile;if(S){let h=g(S);if(q.failure)f(S,fc(h,q.reason??"unknown"));else {let $=q.rqt;if(!h.lastFetchedAt||$>h.lastFetchedAt){let T=typeof q.deliveryToken=="string"?q.deliveryToken:void 0,K=false;T&&(K=r.fetchedSourcesStore.commitSourceData(d,S,T)),K?f(S,lh(h,$)):f(S,fc(h,`source delivery commit failed for ${S} token=${String(T)}`));}}k();}}let w={};for(let q of b)if(q.outputFile){let S=r.fetchedSourcesStore.readSourceData(d,q.outputFile);S!==null&&(w[q.bindTo]=S);}let C={};for(let[q,S]of Object.entries(i.state??{}))if(S!==null&&typeof S=="object"&&!Array.isArray(S)){let h=S[q];C[q]=h!==void 0?h:S;}else C[q]=S;let R={id:d,card_data:{...l},requires:C,source_defs:b,compute:c.compute};R._sourcesData=w,c.compute&&dt.runSync(R,{sourcesData:w}),(o??r.outputStore.writeComputedValues.bind(r.outputStore))(d,R.computed_values??{});let E={...c},N=dt.enrichSourcesSync(Array.isArray(c.source_defs)?c.source_defs:void 0,{card_data:c.card_data,requires:C}),D=t.value;E.source_defs=Array.isArray(N)?N.map(q=>({...q,boardDir:typeof q.boardDir=="string"&&q.boardDir?q.boardDir:D})):N;let M=fh(),te=i.update?void 0:M,U=v.filter(q=>{let S=q.outputFile;if(typeof S!="string"||!S)return true;let h=g(S);te&&(h={...h,queueRequestedAt:te},f(S,h));let $=h.queueRequestedAt??h.lastRequestedAt??M,T=lc(h,$);return T==="in-flight"?false:T==="dispatch"});if(k(),U.length>0){let q=false,S=M;for(let h of U){let $=h.outputFile;if(typeof $!="string"||!$)continue;let T=g($),K=T.queueRequestedAt??M;f($,{...T,lastRequestedAt:K}),S=K,q=true;}return q&&k(),q&&(u.push({taskKind:"source-fetch",payload:{boardRef:ae(t),enrichedCard:E,callbackToken:i.callbackToken,rqt:S}}),r.executionRequestStore.appendEntries(e,u)),"task-initiated"}if(v.some(q=>{let S=q.outputFile;if(typeof S!="string"||!S)return false;let h=g(S);if(h.lastError)return false;let $=h.queueRequestedAt??h.lastRequestedAt??M;return lc(h,$)==="in-flight"}))return "task-initiated";let Xe=c.provides??[],De={};for(let{bindTo:q,ref:S}of Xe)De[q]=dt.resolve(R,S);return (a??r.outputStore.writeDataObjects.bind(r.outputStore))(De),b.filter(q=>{if(q.optionalForCompletionGating!==true)return false;let S=g(q.outputFile);return !S.lastRequestedAt||!S.lastFetchedAt?true:S.lastFetchedAt<=S.lastRequestedAt}).length>0&&u.push({taskKind:"source-fetch",payload:{boardRef:ae(t),enrichedCard:E,callbackToken:i.callbackToken,rqt:M}}),n(i.nodeId,De),u.length>0&&r.executionRequestStore.appendEntries(e,u),"task-initiated"}}var Pn={settings:{completion:"manual",refreshStrategy:"data-changed"},tasks:{}};function kc(t){return {[lt]:t.graph,[gc]:t.lastDrainedJournalId}}function wc(t){let e=t[lt],r=t[gc];if(!e||typeof e!="object")throw new Error(`State snapshot is missing required key: ${lt}`);return {graph:e,lastDrainedJournalId:typeof r=="string"?r:""}}function Sc(t){let e=t.requires,r=t.provides?.map(n=>n.bindTo)??[];return {requires:e&&e.length>0?e:void 0,provides:r,taskHandlers:["card-handler"],description:t.meta?.title??t.id}}function X(t){return t!==void 0?{status:"success",data:t}:{status:"success"}}function j(t){return {status:"fail",error:t}}function Z(t){return {status:"error",error:t instanceof Error?t.message:String(t)}}function ph(t){let e=new TextEncoder().encode(t),r=Array.from(e,n=>String.fromCharCode(n)).join("");return btoa(r).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function Rc(t){let e=t.replace(/-/g,"+").replace(/_/g,"/"),r=e+"=".repeat((4-e.length%4)%4),n=atob(r),s=Uint8Array.from(n,o=>o.charCodeAt(0));return new TextDecoder().decode(s)}function On(t){try{let e=JSON.parse(Rc(t));return typeof e?.t=="string"?{taskName:e.t}:null}catch{return null}}function mh(t){return ph(JSON.stringify(t))}function _c(t){try{let e=JSON.parse(Rc(t));return typeof e?.cbk=="string"&&typeof e?.cid=="string"&&typeof e?.b=="string"&&typeof e?.d=="string"?e:null}catch{return null}}function Ee(){return new Date().toISOString()}function jr(t,e){let r=e.onWarn??(()=>{}),n=ae(t);function s(S){if(S.length!==0)try{let h=e.publishBoardChangeNotifications?.(S);h&&typeof h.catch=="function"&&h.catch($=>r(`[board-live-cards-public] publishBoardChangeNotifications failed: ${$ instanceof Error?$.message:String($)}`));}catch(h){r(`[board-live-cards-public] publishBoardChangeNotifications failed: ${h instanceof Error?h.message:String(h)}`);}}function o(){let S=i().readCardStoreRef();if(!S)throw new Error(`Board at ${t.value} has no card store configured. Run: init --base-ref <ref> --store-ref <b64-ref>`);let h=e.kvStorageForRef(S);return {readIndex(){return h.read("_index")},writeIndex($){h.write("_index",$);},readCard($){return h.read($)},writeCard($,T){return h.write($,T),e.hashFn(T)},cardExists($){return h.read($)!==null},defaultCardKey($){return $}}}let a={readValues(S){let h=e.kvStorage("state-snapshot"),$=h.listKeys().sort();if($.length===0)return {version:null,values:{}};let T={};for(let K of $)T[K]=h.read(K);return {version:e.hashFn(T),values:T}},writeValues(S,h,$){let T=e.kvStorage("state-snapshot");for(let K of $)T.delete(K);for(let[K,ee]of Object.entries(h))T.write(K,ee);return e.hashFn(h)}},i=()=>Mo(e.kvStorage("config")),u=()=>yc(a),c=()=>pc(e.journalAdapter()),d=()=>An(o(),r),l=()=>{let S=i().readOutputsStoreRef();if(!S)throw new Error(`Board at ${t.value} has no outputs store configured. Run: init --outputs-store-ref <b64-ref>`);return vc(e.kvStorageForRef(S))};function b(){return !!u().readSnapshot(t.value).values[lt]}function v(){let S=u().readSnapshot(t.value);if(!S.values[lt])throw new Error(`Board not initialized at ${t.value}`);return wc(S.values)}function m(S,h){let $=u().commitSnapshot(t.value,{schemaVersion:Or,expectedVersion:h,commitId:e.genId(),committedAt:Ee(),deleteKeys:[],shallowMerge:kc(S)});if(!$.ok)throw new Error(`Snapshot commit failed (version mismatch): expected=${h??"null"} current=${$.currentVersion??"null"}`)}function p(S){c().appendEvent(S);}async function k(){let S=(P,F)=>{let oe=P.payload,Qe=(oe?.enrichedCard??{}).id??oe?.cardId??"unknown";p({type:"task-failed",taskName:Qe,error:F,timestamp:Ee()});},h=mc(e.kvStorage("execution-requests"),S),$=hc(e.kvStorage("card-runtime")),T=Fo(e.blobStorage("sources"),P=>e.resolveBlob(P)),K=new Map,ee={readRuntime(P){return K.get(P)??$.readRuntime(P)},writeRuntime(P,F){K.set(P,F);}},Re=[],Ce=new Map,Ge={readSourceData(P,F){let oe=`${P}/${F}`;return Ce.has(oe)?Ce.get(oe):T.readSourceData(P,F)},ingestSourceDataStaged(P,F,oe,It){T.ingestSourceDataStaged(P,F,oe,It);},commitSourceData(P,F,oe){let It=`${P}/.staged/${oe}/${F}`,Fr=e.blobStorage("sources").read(It);if(Fr==null)return false;let Pt=`${P}/${F}`,Ko=Fr.trim();try{Ce.set(Pt,JSON.parse(Ko));}catch{Ce.set(Pt,Ko);}return Re.push({cardId:P,outputFile:F,deliveryToken:oe}),true},hasSource(P,F){let oe=`${P}/${F}`;return Ce.has(oe)?true:T.hasSource(P,F)}},Fe={cardStore:d(),cardRuntimeStore:ee,fetchedSourcesStore:Ge,outputStore:l(),executionRequestStore:h},pt=v(),mt=xn(pt.graph),{events:Tt,newCursor:At}=c().readEntriesAfterCursor(pt.lastDrainedJournalId),gt=[],jn=[],Nn=[],Vo=new Map,$c=(P,F)=>{gt.push({type:"task-completed",taskName:P,data:F,timestamp:Ee()});},Bo=(P,F)=>p({type:"task-failed",taskName:P,error:F,timestamp:Ee()}),qr=oc(mt,{handlers:{"card-handler":bc(t,At,Fe,$c,Bo,(P,F)=>{jn.push({cardId:P,values:F});},P=>{Nn.push(P);})}});for(gt=Tt;gt.length>0;){let P=gt;gt=[];for(let F of P)if(F.type==="task-restart"){let oe=Fe.cardStore.readCard(F.taskName);oe&&Vo.set(F.taskName,oe);}qr.pushAll(P),await qr.waitForHandlers();}let Go=qr.getState();await qr.dispose({wait:true});let Ec=u().readSnapshot(t.value).version;m({lastDrainedJournalId:At,graph:Ar(Go)},Ec);for(let{cardId:P,values:F}of jn)Fe.outputStore.writeComputedValues(P,F);for(let P of Nn)Fe.outputStore.writeDataObjects(P);for(let[P,F]of K)$.writeRuntime(P,F);for(let{cardId:P,outputFile:F,deliveryToken:oe}of Re)T.commitSourceData(P,F,oe);let Dr;try{Dr=In(n,Go),Fe.outputStore.writeStatusSnapshot(Dr);}catch(P){r(`[board-live-cards-public] status publish failed: ${P instanceof Error?P.message:String(P)}`);}let Xt=[];for(let{cardId:P,values:F}of jn)Xt.push({kind:"computed_values",cardId:P,values:F});for(let P of Nn)for(let[F,oe]of Object.entries(P))F&&Xt.push({kind:"data_object",key:F,payload:oe});for(let[P,F]of Vo)Xt.push({kind:"card_refreshed",cardId:P,card:F});Dr!==void 0&&Xt.push({kind:"status",status:Dr}),s(Xt);let xc=i().readTaskExecutorRef()??{howToRun:"built-in",whatToRun:ae({kind:"built-in",value:"source-cli-task-executor"})};h.dispatchEntriesForJournalId(At,P=>{if(P.taskKind!=="source-fetch"){r(`[process-accumulated-events] unknown taskKind "${P.taskKind}" \u2014 skipping`);return}let F=P.payload,oe=F.enrichedCard?.id??"unknown",It=F.enrichedCard?.source_defs??[];for(let Qe of It){if(!Qe.outputFile){r(`[dispatch] source "${Qe.bindTo}" has no outputFile \u2014 skipping`);continue}let Fr=mh({cbk:F.callbackToken,rg:t.value,br:ae(t),cid:oe,b:Qe.bindTo,d:Qe.outputFile,cs:void 0,rqt:F.rqt});e.dispatchExecution(xc,{source_def:Qe,base_ref:ae(t),callback:{token:Fr,via:e.selfRef}}).catch(Pt=>Bo(oe,Pt instanceof Error?Pt.message:String(Pt)));}});}async function g(){try{let S=()=>{let $=v(),{events:T}=c().readEntriesAfterCursor($.lastDrainedJournalId);T.length<=0||(g(),e.requestProcessAccumulated?.());},h=await Jo(e.lock,k,S);return X({ran:h!==!1})}catch(S){return Z(S)}}function f(S){try{let h=S.params?.cardStoreRef;if(!h)return j("init requires params.cardStoreRef \u2014 create a card store with card-store-cli and pass its ref here");if(!b()){let ee=En(Pn);m({lastDrainedJournalId:"",graph:Ar(ee)},null);}let $=S.params?.outputsStoreRef;if(!$)return j("init requires params.outputsStoreRef \u2014 pass the outputs store ref here");let T=i();T.writeCardStoreRef(h),T.writeOutputsStoreRef($);let K=S.body??{};K["task-executor-ref"]&&T.writeTaskExecutorRef(K["task-executor-ref"]),Object.prototype.hasOwnProperty.call(K,"chat-handler-flow")&&T.writeChatHandlerFlow(K["chat-handler-flow"]);try{l().writeStatusSnapshot(In(n,xn(v().graph)));}catch{}return X()}catch(h){return Z(h)}}function y(S){try{let h=l().readStatusSnapshot();if(!h){h=In(n,xn(v().graph));try{l().writeStatusSnapshot(h);}catch{}}return X(h)}catch(h){return Z(h)}}function _(S){try{let h=S.params?.id;return h?(p({type:"task-removal",taskName:h,timestamp:Ee()}),g(),X()):j("removeCard requires params.id")}catch(h){return Z(h)}}function w(S){try{let h=S.params?.id;return h?(p({type:"task-restart",taskName:h,timestamp:Ee()}),g(),X()):j("retrigger requires params.id")}catch(h){return Z(h)}}async function C(S){return g()}function R(S){try{let h=S.params?.cardId,$=S.params?.all,T=!!S.params?.restart;if(!h&&!$)return j("upsertCard requires --card-id <id> or --all");let K=$?d().readAllCards().map(ee=>ee.id):[h];for(let ee of K)if(!d().readCard(ee))return j(`Card "${ee}" not found in board at ${t.value}`);for(let ee of K){let Re=d().readCard(ee),Ce=Sc(Re),Ge=e.hashFn(Ce),Fe=e.kvStorage("card-upsert"),pt=Fe.read(ee),mt=pt?.taskConfigHash!==Ge;if(!(!mt&&!T)){if(mt){let Tt=pt?.blobRef??d().readCardKey(ee)??ee;p({type:"task-upsert",taskName:ee,taskConfig:Ce,timestamp:Ee()}),Fe.write(ee,{blobRef:Tt,taskConfigHash:Ge,updatedAt:Ee()});}T&&p({type:"task-restart",taskName:ee,timestamp:Ee()});}}return g(),X()}catch(h){return Z(h)}}function E(S){try{let h=S.params?.token;if(!h)return j("taskFailed requires params.token");let $=S.params?.error??"unknown error",T=On(h);return T?(p({type:"task-failed",taskName:T.taskName,error:$,timestamp:Ee()}),g(),X()):j("Invalid callback token")}catch(h){return Z(h)}}function N(S){try{let h=S.params?.token;if(!h)return j("taskProgress requires params.token");let T=(S.body??{}).update??{},K=On(h);return K?(p({type:"task-progress",taskName:K.taskName,update:T,timestamp:Ee()}),g(),X()):j("Invalid callback token")}catch(h){return Z(h)}}function D(S){try{let h=S.params?.token,$=S.params?.ref;if(!h)return j("sourceDataFetched requires params.token");if(!$)return j("sourceDataFetched requires params.ref");let T=_c(h);if(!T)return j("Invalid source token");let{cbk:K,cid:ee,b:Re,d:Ce,cs:Ge,rqt:Fe}=T,pt=Fo(e.blobStorage("sources"),gt=>e.resolveBlob(gt)),mt=e.genId();pt.ingestSourceDataStaged(ee,Ce,be($),mt);let Tt=On(K);if(!Tt)return j("Invalid callback token embedded in source token");let At=Ee();return p({type:"task-progress",taskName:Tt.taskName,update:{bindTo:Re,outputFile:Ce,fetchedAt:At,deliveryToken:mt,sourceChecksum:Ge,rqt:Fe},timestamp:At}),g(),X()}catch(h){return Z(h)}}function M(S){try{let h=S.params?.token,$=S.params?.reason??"unknown";if(!h)return j("sourceDataFetchFailure requires params.token");let T=_c(h);if(!T)return j("Invalid source token");let{cbk:K,b:ee,d:Re,cs:Ce}=T,Ge=On(K);return Ge?(p({type:"task-progress",taskName:Ge.taskName,update:{bindTo:ee,outputFile:Re,failure:!0,reason:$,sourceChecksum:Ce},timestamp:Ee()}),g(),X()):j("Invalid callback token embedded in source token")}catch(h){return Z(h)}}function te(S){try{let h=i().readCardStoreRef();return h?X({storeRef:h}):j(`Board at ${t.value} has no card store configured`)}catch(h){return Z(h)}}function U(S){try{let h=i().readOutputsStoreRef();return h?X({storeRef:h}):j(`Board at ${t.value} has no outputs store configured`)}catch(h){return Z(h)}}function le(S){try{let h=S.params?.key;if(!h)return j("getConfig requires params.key");let $=i(),T;switch(h){case "task-executor":T=$.readTaskExecutorRef()??null;break;case "chat-handler-flow":T=$.readChatHandlerFlow()??null;break;case "card-store-ref":T=$.readCardStoreRef();break;case "outputs-store-ref":T=$.readOutputsStoreRef();break;default:return j(`getConfig: unknown key "${h}"`)}return X({value:T})}catch(h){return Z(h)}}function Xe(S){try{let h=S.params?.key;if(!h)return j("getOutputsDataObject requires params.key");let $=l().readDataObject(h);return X($)}catch(h){return Z(h)}}function De(S){try{return X(l().readAllDataObjects())}catch(h){return Z(h)}}function Yt(S){try{let h=S.params?.key;if(!h)return j("getOutputsComputedValues requires params.key");let $=l().readComputedValues(h);return X($)}catch(h){return Z(h)}}function q(S){try{return X(l().readAllComputedValues())}catch(h){return Z(h)}}return {init:f,status:y,getCardStoreRef:te,getOutputsStoreRef:U,getConfig:le,getOutputsDataObject:Xe,getAllOutputsDataObjects:De,getOutputsComputedValues:Yt,getAllOutputsComputedValues:q,removeCard:_,retrigger:w,processAccumulatedEvents:C,upsertCard:R,taskFailed:E,taskProgress:N,sourceDataFetched:D,sourceDataFetchFailure:M}}function ft(t,e){let r=()=>Mo(e.kvStorage("config"));function n(){let g=r().readCardStoreRef();if(!g)throw new Error(`Board at ${t.value} has no card store configured. Run: init --base-ref <ref> --store-ref <b64-ref>`);let f=e.kvStorageForRef(g);return {readIndex(){return f.read("_index")},writeIndex(y){f.write("_index",y);},readCard(y){return f.read(y)},writeCard(y,_){return f.write(y,_),e.hashFn(_)},cardExists(y){return f.read(y)!==null},defaultCardKey(y){return y}}}let s=()=>An(n(),e.onWarn??(()=>{}));function o(g,f){let y=e.validateSchema(f),_=[],w=r().readTaskExecutorRef();if(w&&Array.isArray(f.source_defs))for(let R of f.source_defs){let E=typeof R.bindTo=="string"?R.bindTo:"(unknown)";try{let N;try{N=e.invokeExecutorSync(w,"validate-source-def",[],{timeout:e.executorTimeouts?.validationMs??1e4,input:JSON.stringify(R)});}catch(M){let te=M;if(N=typeof te?.stdout=="string"?te.stdout:"",!N.trim()){_.push(`source "${E}": executor validate-source-def failed \u2014 ${M instanceof Error?M.message:String(M)}`);continue}}let D=JSON.parse(N.trim());if(!D.ok&&Array.isArray(D.errors))for(let M of D.errors)_.push(`source "${E}": ${M}`);}catch(N){_.push(`source "${E}": executor validate-source-def failed \u2014 ${N instanceof Error?N.message:String(N)}`);}}let C=[...y.errors,..._];return X({cardId:g,isValid:C.length===0,issues:C})}function a(g,f,y){let _=r().readTaskExecutorRef();if(!_)return j("No task-executor registered for this board");let w=typeof g.bindTo=="string"?g.bindTo:"source",C=e.makeTempFilePath(`probe-in-${w}`),R=e.makeTempFilePath(`probe-out-${w}`),E=e.makeTempFilePath(`probe-err-${w}`,".txt"),N={...g,boardDir:t.value,_projections:f},D=ae({kind:"fs-path",value:C}),M=ae({kind:"fs-path",value:R}),te=ae({kind:"fs-path",value:E});e.absoluteBlob.write(C,JSON.stringify(N,null,2));let U=null;try{if(e.invokeExecutorSync(_,"run-source-fetch",["--in-ref",D,"--out-ref",M,"--err-ref",te],{timeout:g.timeout??e.executorTimeouts?.probeMs??6e4}),U=e.absoluteBlob.read(R),U===null)return j("Executor produced no output file")}catch(le){let Xe=e.absoluteBlob.read(E)?.trim()??(le instanceof Error?le.message:String(le));return j(`Probe failed: ${Xe}`)}finally{try{e.absoluteBlob.remove(C);}catch{}try{e.absoluteBlob.remove(E);}catch{}}if(y){let le=be(y);e.absoluteBlob.write(le.value,U);}else try{e.absoluteBlob.remove(R);}catch{}return X({bindTo:w,resultSizeBytes:U.length})}function i(g){try{let f=g.params?.cardId,y=g.params?.all;if(!f&&!y)return j("validateCard requires --card-id <id> or --all");let _=y?s().readAllCards().map(C=>C.id):[f],w=[];for(let C of _){let R=s().readCard(C);if(!R){w.push({cardId:C,isValid:!1,issues:[`Card "${C}" not found`]});continue}let E=o(C,R);if(E.status!=="success")return E;w.push(E.data);}return X(w)}catch(f){return Z(f)}}function u(g){try{if(!g.body||typeof g.body!="object"||Array.isArray(g.body))return j("validateCardPreflight requires card JSON object in body");let f=g.body,y=f["card-content"]??f,_=typeof y.id=="string"?y.id:"(unknown)",w=o(_,y),C=r().readTaskExecutorRef();if(C)try{let R=e.invokeExecutorSync(C,"validate-card-preflight",[],{timeout:e.executorTimeouts?.validationMs??1e4,input:JSON.stringify(y)}),E=JSON.parse(R.trim());if(!E.ok&&Array.isArray(E.errors)&&E.errors.length>0){let N=[...w.status==="success"?w.data.issues:[],...E.errors];return X({cardId:_,isValid:!1,issues:N})}}catch{}return w}catch(f){return Z(f)}}function c(g){try{let f=g.params?.cardId,y=g.params?.sourceIdx,_=g.params?.outRef;if(!f)return j("probeSource requires params.cardId");if(y===void 0)return j("probeSource requires params.sourceIdx");let C=(g.body??{})["mock-projections"]??{},R=s().readCard(f);if(!R)return j(`Card "${f}" not found`);let E=R.source_defs??[];return y<0||y>=E.length?j(`sourceIdx ${y} out of range (card has ${E.length} source(s))`):a(E[y],C,_)}catch(f){return Z(f)}}function d(g){try{let f=g.params?.outRef,y=g.body;if(!y)return j('probeTmpSource requires body with "source-def" and "mock-projections"');let _=y["source-def"],w=y["mock-projections"]??{};return _?a(_,w,f):j('probeTmpSource body requires "source-def"')}catch(f){return Z(f)}}function l(g){try{let f=g.params?.sourceIdx,y=g.params?.outRef;if(f===void 0)return j("probeSourcePreflight requires params.sourceIdx");if(!g.body||typeof g.body!="object"||Array.isArray(g.body))return j("probeSourcePreflight requires card JSON object in body");let _=g.body,w=_["card-content"]??_,C=_["mock-projections"]??{},R=w.source_defs??[];if(f<0||f>=R.length)return j(`sourceIdx ${f} out of range (card has ${R.length} source(s))`);let E=R[f],N=r().readTaskExecutorRef();if(N){let D=typeof E.bindTo=="string"?E.bindTo:"source";try{let M={...E,_projections:C},te=e.invokeExecutorSync(N,"probe-source-preflight",[],{timeout:E.timeout??e.executorTimeouts?.preflightMs??6e4,input:JSON.stringify(M)}),U=JSON.parse(te.trim());return U.ok?X({bindTo:D,reachable:U.reachable,latencyMs:U.latencyMs,note:U.note}):j(U.error??"Preflight probe failed")}catch{}}return a(E,C,y)}catch(f){return Z(f)}}function b(g){try{let f=r().readTaskExecutorRef();if(!f)return j("No task-executor registered for this board");let y=e.invokeExecutorSync(f,"describe-capabilities",[],{timeout:e.executorTimeouts?.describeMs??1e4});return X(JSON.parse(y.trim()))}catch(f){return Z(f)}}function v(g){try{let f=g.body;if(!f||!Array.isArray(f.ops))return j("updatesInCardStore requires body.ops array");let y=f.ops,_=s();for(let w of y){let C=w.op,R=w.id;if(!R)return j('op is missing "id"');if(C==="update"){let E=w["card-content"];if(!E)return j(`update op for "${R}" is missing "card-content"`);_.writeCard(R,E);}else return j(`Unknown op type: "${C??"(none)"}"`)}return X()}catch(f){return Z(f)}}function m(g){try{let f=g.body;if(!f||!Array.isArray(f.ids))return j("readFromCardStore requires body.ids array");let y=f.ids,_=s(),w=y.map(C=>({id:C,"card-content":_.readCard(C)}));return X({cards:w})}catch(f){return Z(f)}}function p(g){try{if(!g.body||typeof g.body!="object"||Array.isArray(g.body))return j("evalCardCompute requires a JSON object in body");let f=g.body,y=f["card-content"]??f,_=typeof y.id=="string"?y.id:"(unknown)",w=f["mock-fetched-sources"]??{},C=f["mock-requires"]??{},R=y.compute;if(!R||!Array.isArray(R)||R.length===0)return X({cardId:_,ok:!0,computed_values:{},errors:[]});let E={id:_,card_data:y.card_data??{},requires:C,source_defs:y.source_defs,compute:R},N=dt.runSync(E,{sourcesData:w}),D=N.node.computed_values??{},M=N.errors??[];return X({cardId:_,ok:M.length===0,computed_values:D,errors:M})}catch(f){return Z(f)}}function k(g){try{if(!g.body||typeof g.body!="object"||Array.isArray(g.body))return j("simulateCardCycle requires a JSON object in body");let f=g.body,y=f["card-content"]??f,_=typeof y.id=="string"?y.id:"(unknown)",w=f["mock-fetched-sources"]??{},C=f["mock-requires"]??{},R=o(_,y),E=R.status==="success"?{isValid:R.data.isValid,issues:R.data.issues}:{isValid:!1,issues:[R.status==="fail"?R.error:"internal error"]},N=y.source_defs??[],D=y.card_data??{},M=[],te=[];if(N.length>0){M=dt.enrichSourcesSync(N,{card_data:D,requires:C});for(let h of M){let $=h.projections,T=h._projections;if($&&T){for(let K of Object.keys($))if(T[K]===void 0){let ee=typeof h.bindTo=="string"?h.bindTo:"(unknown)";te.push({bindTo:ee,key:K,error:`Projection "${K}" resolved to undefined`});}}}}let U=[],le=f["task-executor-ref"],Xe=(le?.howToRun&&le?.whatToRun?le:void 0)??r().readTaskExecutorRef();for(let h=0;h<M.length;h++){let $=M[h],T=typeof $.bindTo=="string"?$.bindTo:`source_${h}`;if(!Xe){U.push({bindTo:T,skipped:!0,error:"No task executor configured"});continue}try{let K={...$},ee=e.invokeExecutorSync(Xe,"probe-source-preflight",[],{timeout:$.timeout??e.executorTimeouts?.preflightMs??6e4,input:JSON.stringify(K)}),Re=JSON.parse(ee.trim());U.push({bindTo:T,reachable:Re.reachable,latencyMs:Re.latencyMs,error:Re.ok?void 0:Re.error});}catch{U.push({bindTo:T,skipped:!0,error:"Executor does not support probe-source-preflight"});}}let De=y.compute,Yt={},q=[];if(De&&Array.isArray(De)&&De.length>0){let h={id:_,card_data:D,requires:C,source_defs:y.source_defs,compute:De},$=dt.runSync(h,{sourcesData:w});Yt=$.node.computed_values??{},q=$.errors??[];}let S=E.isValid&&te.length===0&&q.length===0&&U.every(h=>h.reachable!==!1);return X({cardId:_,ok:S,validation:E,source_probes:U,projection_errors:te,computed_values:Yt,compute_errors:q})}catch(f){return Z(f)}}return {validateCard:i,validateCardPreflight:u,probeSource:c,probeTmpSource:d,probeSourcePreflight:l,evalCardCompute:p,simulateCardCycle:k,describeTaskExecutorCapabilities:b,updatesInCardStore:v,readFromCardStore:m}}var hh=".board.lock";function yh(t,e){return typeof t=="string"?{cliDir:t,opts:e}:{cliDir:void 0,opts:t}}function vh(t,e){return typeof t=="string"?{cliDir:t,opts:e}:{cliDir:void 0,opts:t}}function Cc(t){if(t)return t;let e=Vr(import.meta.url),r=[e,Ot(e,"..","cli","node"),Ot(e,"..","..","cli","node")];for(let n of r)try{return Ln(n),n}catch{}throw new Error(`createFsBoardPlatformAdapter: could not resolve a public CLI directory from module dir ${e}`)}function Nr(t,e,r){let{cliDir:n,opts:s}=yh(e,r),o=Cc(n),a=t.value,i=s?.suppressSpawn?"":Ln(o),u={meta:"board-live-cards",howToRun:"local-node",whatToRun:i?ae({kind:"fs-path",value:i}):"",...s?.notifyChannel?{extra:{notifyChannel:s.notifyChannel}}:{}};return {kvStorage:c=>Un(Ot(a,`.${c}`)),blobStorage:c=>c?Gr(Ot(a,c)):Gr(a),journalAdapter:()=>da(a),lock:la(Ot(a,hh)),selfRef:u,async dispatchExecution(c,d){if(s?.suppressSpawn)return {dispatched:false};try{let l=d.source_def?.bindTo??Dn().slice(0,8),b=Qt(a,`exec-in-${l}`),v=Qt(a,`exec-out-${l}`),m=Qt(a,`exec-err-${l}`,".txt"),p=ae({kind:"fs-path",value:b}),k=ae({kind:"fs-path",value:v}),g=ae({kind:"fs-path",value:m});return ua({kind:"fs-path",value:b}).write(b,JSON.stringify(d,null,2)),ia(c,{subcommand:"run-source-fetch",inRef:p,outRef:k,errRef:g},o),{dispatched:!0}}catch(l){return {dispatched:false,error:l instanceof Error?l.message:String(l)}}},resolveBlob(c){let d=Yo(c.value)?Kn().read(c.value):Gr(a).read(c.value);if(d===null)throw new Error(`resolveBlob: blob not found: ::${c.kind}::${c.value}`);return d},hashFn:ca,genId:()=>Xo(`${Date.now()}-${Math.random()}`).slice(0,32),kvStorageForRef:c=>Un(be(c).value),requestProcessAccumulated(){s?.suppressSpawn||ea(o,t,s?.notifyChannel);},publishBoardChangeNotifications(c){if(!s?.notifyChannel||c.length===0)return;let d=c.map(l=>({id:Dn(),ts:new Date().toISOString(),boardRef:ae(t),notification:l}));ta(s.notifyChannel,d,s.onWarn);},onWarn:s?.onWarn}}function Et(t,e,r){let{cliDir:n,opts:s}=vh(e,r),o=Cc(n),a=Nr(t,o,s),i=Vn();return {...a,invokeExecutorSync(u,c,d,l){let{command:b,baseArgs:v}=aa(u,o),m=u.extra?["--extra",Buffer.from(JSON.stringify(u.extra)).toString("base64")]:[];return i.executeSync(b,[...v,c,...d,...m],{timeout:l?.timeout??3e4,encoding:"utf-8",input:l?.input})},validateSchema(u){let c=Po(u);return {ok:c.errors.length===0,errors:c.errors}},makeTempFilePath(u,c){return Qt(t.value,u,c)},absoluteBlob:Kn()}}function Lo(t){try{let e=JSON.parse(Buffer.from(t,"base64url").toString());return typeof e.br=="string"?e.br:null}catch{return null}}var We=Vr(import.meta.url);function ge(t,e,r){let n=t.indexOf(e),s=n!==-1?t[n+1]:void 0;if(!s)throw new Error(`Missing ${e}
|
|
14
|
-
Usage: ${r}`);return s}function Ye(t,e){let r=t.indexOf(e);return r!==-1?t[r+1]:void 0}function se(t){console.log(JSON.stringify(t,null,2));}async function
|
|
13
|
+
`,"utf-8");},generateId(){return randomUUID()}}}function pa(t){return {tryAcquire(){try{if(!I.existsSync(t)){I.mkdirSync(ue.dirname(t),{recursive:!0});try{I.writeFileSync(t,"{}",{flag:"wx"});}catch{}}return lockSync(t,{retries:0})}catch{return null}}}}var ma={$schema:"http://json-schema.org/draft-07/schema#",$id:"https://nsreehari.github.io/boards/live-cards.schema.json",definitions:{bind_ref:{description:"A card data path reference, e.g. 'card_data.raw_quotes' or 'requires.upstream'",type:"string",pattern:"^(card_data|requires|fetched_sources|computed_values)(\\.|$)"},bind_or_literal:{description:"A literal value or a bind reference object",oneOf:[{type:"string"},{type:"number"},{type:"boolean"},{type:"array"},{type:"object",properties:{bind:{$ref:"#/definitions/bind_ref"}},required:["bind"]}]},compute_expr:{description:"A declarative JSON compute expression",type:"object",required:["fn"],properties:{fn:{type:"string",description:"Function name from the built-in vocabulary",enum:["sum","avg","min","max","count","first","last","add","sub","mul","div","round","abs","mod","gt","gte","lt","lte","eq","neq","if","and","or","not","concat","upper","lower","template","filter","pluck","map","sort","slice","flat","unique","group","get","default","now","diff_days","format_date"]},input:{description:"card_data.path, literal, array of inputs, or nested compute_expr",oneOf:[{type:"string"},{type:"number"},{type:"boolean"},{type:"array"},{$ref:"#/definitions/compute_expr"}]},field:{type:"string",description:"For pluck/sum/group \u2014 the object key to extract"},where:{$ref:"#/definitions/compute_expr",description:"For filter \u2014 predicate expression ($ = current item)"},cond:{$ref:"#/definitions/compute_expr",description:"For if \u2014 condition expression"},then:{description:"For if \u2014 value when cond is truthy"},else:{description:"For if \u2014 value when cond is falsy"},format:{type:"string",description:"For format_date \u2014 date format string"}}},meta:{type:"object",properties:{title:{type:"string"},tags:{type:"array",items:{type:"string"}}}},requires:{type:"array",items:{type:"string"},description:"IDs of upstream nodes this node depends on"},provides:{type:"array",items:{type:"object",required:["bindTo","ref"],properties:{bindTo:{type:"string",description:"Token name published downstream"},ref:{type:"string",description:"Path to read value from (card_data.*, requires.*, fetched_sources.*, computed_values.*)"}}},description:"Explicit bindings exposing computed or card_data values downstream as named tokens"},compute_step:{description:"A single ordered compute step: reads card_data.*/requires.*/computed_values.*, writes to computed_values[bindTo]",type:"object",required:["bindTo","expr"],properties:{bindTo:{type:"string",description:"Key in computed_values to write result"},expr:{type:"string",description:"JSONata expression evaluated against { card_data, requires, fetched_sources, computed_values }"}}},source_def:{description:"One source entry. The engine requires 'bindTo' (compute namespace key) and 'outputFile' (delivery signal path). bindTo and outputFile must be unique across all source_defs in a card. Every other property is yours \u2014 add whatever your task-executor needs: kind, url, headers, mailbox, channel, model, query, etc. The full object is passed verbatim as the --in JSON to the executor.",type:"object",required:["bindTo","outputFile"],additionalProperties:true,properties:{bindTo:{type:"string",description:"Key under fetched_sources.* available in compute expressions"},outputFile:{type:"string",description:"Board-relative path the executor writes its JSON result to. Presence of this file signals delivery."},projections:{type:"object",description:"Named data projections from card_data or requires, evaluated before the executor is called. Each key is a ref name; each value is a JSONata expression rooted at card_data or requires. The resolved values are passed to the executor as _projections. fetched_sources, computed_values, and source_defs are not accessible here \u2014 sources run before those exist.",additionalProperties:{type:"string"}},optionalForCompletionGating:{type:"boolean",default:false,description:"When true this source does not gate card completion. Default false when absent, so source_defs are completion-gating by default."},timeout:{type:"integer",minimum:0,default:12e4,description:"Executor/script timeout in ms. Default: 120 000 (2 min)."},script:{type:"string",description:"Legacy direct-run: shell command executed when no .task-executor is registered. stdout is captured as the result."}}},render_element:{type:"object",required:["kind"],properties:{id:{type:"string",description:"Optional element ID for targeted updates"},kind:{enum:["metric","table","editable-table","chart","form","filter","list","notes","todo","alert","narrative","badge","text","markdown","ref","custom","actions"]},label:{type:"string",description:"Heading above this element"},className:{type:"string",description:"Bootstrap grid class, e.g. 'col-12 col-md-6'"},visible:{type:"string",description:"card_data/requires/fetched_sources/computed_values path \u2014 element shown only if truthy"},data:{type:"object",properties:{bind:{$ref:"#/definitions/bind_ref",description:"card_data/requires/fetched_sources/computed_values path to read data from"},writeTo:{$ref:"#/definitions/bind_ref",description:"card_data path for user input (form, filter, todo, notes)"},columns:{type:"array",items:{type:"string"},description:"table: visible columns"},maxRows:{type:"integer",description:"table/list: max rows to display"},sortable:{type:"boolean",default:true,description:"table: enable click-to-sort"},placeholder:{type:"string",description:"Empty-state message"},chartType:{enum:["bar","line","pie","doughnut"]},chartOptions:{type:"object",description:"Chart.js options passthrough"},fields:{type:"object",description:"JSON Schema for form/filter fields"},thresholds:{type:"object",properties:{green:{type:"string"},amber:{type:"string"}}},colorMap:{type:"object",description:"badge: value \u2192 Bootstrap color"},style:{enum:["heading","muted","default"],description:"text: display style"},upload:{type:"boolean",default:true,description:"file-upload: show drop zone (false = read-only file list)"},accept:{type:"array",items:{type:"string"},description:"file-upload: allowed extensions"},multiple:{type:"boolean",default:true,description:"file-upload: allow multiple files"},fileAttach:{type:"boolean",default:false,description:"chat: enable inline file attachments"},fileAccept:{type:"array",items:{type:"string"},description:"chat: allowed attachment extensions"},buttons:{type:"array",description:"actions: button definitions",items:{type:"object",required:["id","label"],properties:{id:{type:"string"},label:{type:"string"},style:{type:"string",description:"Bootstrap button variant, e.g. 'success', 'outline-danger'"},size:{type:"string",default:"sm"},disabled:{oneOf:[{type:"boolean"},{type:"string",description:"card_data/requires/fetched_sources/computed_values path \u2014 truthy = disabled"}]}}}}}}}},view:{type:"object",required:["elements"],properties:{elements:{type:"array",minItems:1,items:{$ref:"#/definitions/render_element"}},layout:{type:"object",properties:{board:{type:"object",properties:{col:{type:"integer",minimum:1,maximum:12},order:{type:"integer"}}},canvas:{type:"object",properties:{x:{type:"number"},y:{type:"number"},w:{type:"number"},h:{type:"number"}}}}},features:{type:"object",properties:{chat:{type:"boolean",default:false},notes:{type:"boolean",default:false},refresh:{type:"boolean",default:true}}}}}},title:"LiveCard",description:"A unified card node. Behavior depends on which sections are present (source_defs, compute, view, etc.)",type:"object",required:["id"],additionalProperties:false,properties:{id:{type:"string"},requires:{$ref:"#/definitions/requires"},provides:{$ref:"#/definitions/provides"},meta:{$ref:"#/definitions/meta"},view:{$ref:"#/definitions/view"},card_data:{type:"object",description:"Authored card data and runtime metadata. Includes uploaded-file metadata maintained by host handlers and inference evaluation results.",properties:{files:{type:"array",description:"Optional uploaded-file metadata maintained by host handlers. Stored name is normalized and serial-prefixed (for example 001-my_file.pdf).",items:{type:"object",required:["name","stored_name"],properties:{name:{type:"string",minLength:1},stored_name:{type:"string",minLength:5,maxLength:32,pattern:"^[0-9]{3,}-[a-z0-9._-]+$"},size:{oneOf:[{type:"integer",minimum:0},{type:"null"}]},mime_type:{type:"string"},path:{type:"string",pattern:"^[^\\s]+/files/[0-9]{3,}-[a-z0-9._-]+$"},uploaded_at:{type:"string",format:"date-time"}},additionalProperties:false}}},additionalProperties:true},source_defs:{type:"array",description:"Source entries. Each entry is passed verbatim to the board's .task-executor (registered via init --task-executor) as the --in JSON file. The executor fetches/generates the data and writes JSON to --out. If no executor is registered, the built-in executor runs the entry's 'cli' command directly. Sources gate completion by default. Set optionalForCompletionGating: true for enrichment-only source_defs that should not block task-completed.",items:{$ref:"#/definitions/source_def"}},compute:{type:"array",description:"Ordered array of compute steps. Each reads card_data.*/requires.*/fetched_sources.*/computed_values.* and writes to ephemeral computed_values[bindTo].",items:{$ref:"#/definitions/compute_step"}}}};var Ku=Fc(Vu());var Bg=createRequire(import.meta.url),Gg=Bg("./jsonata-sync.cjs"),En=null;var Bu=/\b(card_data|requires|fetched_sources|computed_values|source_defs)\b/g,Kg=/^\s*(card_data|requires|fetched_sources|computed_values|source_defs)(\.|$)/;function Ug(t){let e=new Set,r;for(Bu.lastIndex=0;(r=Bu.exec(t))!==null;)e.add(r[1]);return e}function Uu(t){let e=Kg.exec(t);return e?e[1]:null}function Gu(t,e,r,n){try{Gg(t);}catch(o){let a=o instanceof Error?o.message:String(o);n.push(`${e}: invalid JSONata expression (${a})`);return}let s=Ug(t);for(let o of s)r.has(o)||n.push(`${e}: disallowed namespace "${o}" in expression`);}function Oo(t,e,r){if(Array.isArray(t)){t.forEach((s,o)=>{Oo(s,`${e}/${o}`,r);});return}if(typeof t=="string"){let s=Uu(t);if(!s)return;new Set(["card_data","requires","computed_values"]).has(s)||r.push(`${e}: disallowed namespace "${s}" in view reference`);return}if(!t||typeof t!="object")return;let n=t;for(let[s,o]of Object.entries(n))Oo(o,`${e}/${s}`,r);}function Jg(){if(En)return En;let t=new Ku.default({allErrors:true});return Lg(t),En=t.compile(ma),En}function Ju(t){let e=Jg(),r=e(t),n=(e.errors??[]).map(s=>`${s.instancePath||"/"}: ${s.message??"unknown error"}`);if(t&&typeof t=="object"&&!Array.isArray(t)){let s=t.source_defs;if(Array.isArray(s)){let o=new Set,a=new Set;s.forEach((i,u)=>{if(!i||typeof i!="object"||Array.isArray(i))return;let c=i;typeof c.bindTo=="string"&&c.bindTo&&(o.has(c.bindTo)&&n.push(`/source_defs/${u}/bindTo: bindTo "${c.bindTo}" must be unique across all source_defs`),o.add(c.bindTo)),typeof c.outputFile=="string"&&c.outputFile&&(a.has(c.outputFile)&&n.push(`/source_defs/${u}/outputFile: outputFile "${c.outputFile}" must be unique across all source_defs`),a.add(c.outputFile));});}}return !r||n.length>0?{ok:false,errors:n}:{ok:true,errors:[]}}function zu(t){let e=[];if(!t||typeof t!="object"||Array.isArray(t))return {ok:true,errors:[]};let r=t,n=r.compute;Array.isArray(n)&&n.forEach((c,d)=>{if(!c||typeof c!="object"||Array.isArray(c))return;let l=c.expr;typeof l!="string"||l.trim().length===0||Gu(l,`/compute/${d}/expr`,new Set(["card_data","requires","fetched_sources","computed_values"]),e);});let s=new Set(["card_data","requires","fetched_sources","computed_values"]),o=r.provides;Array.isArray(o)&&o.forEach((c,d)=>{if(!c||typeof c!="object"||Array.isArray(c))return;let l=c.ref;if(typeof l!="string"||l.trim().length===0)return;let k=Uu(l);k===null?e.push(`/provides/${d}/ref: path "${l}" must start with a valid namespace (${[...s].join(", ")})`):s.has(k)||e.push(`/provides/${d}/ref: disallowed namespace "${k}" in path "${l}" (valid: ${[...s].join(", ")})`);});let a=r.view;a&&typeof a=="object"&&!Array.isArray(a)&&Oo(a,"/view",e);let i=new Set(["card_data","requires"]),u=r.source_defs;return Array.isArray(u)&&u.forEach((c,d)=>{if(!c||typeof c!="object"||Array.isArray(c))return;let l=c.projections;if(!(!l||typeof l!="object"||Array.isArray(l)))for(let[k,v]of Object.entries(l))typeof v!="string"||v.trim().length===0||Gu(v,`/source_defs/${d}/projections/${k}`,i,e);}),{ok:e.length===0,errors:e}}function jo(t){let e=Ju(t);if(!e.ok)return e;let r=zu(t);return r.ok?{ok:true,errors:[]}:{ok:false,errors:r.errors}}var ct={RUNNING:"running",COMPLETED:"completed",FAILED:"failed",INACTIVATED:"inactivated"};function $e(t){return t?Array.isArray(t.provides)?t.provides:[]:[]}function dt(t){return t?Array.isArray(t.requires)?t.requires:[]:[]}function Hu(t){return t.tasks??{}}function No(t){return t?t.status===ct.FAILED||t.status===ct.INACTIVATED:false}function Wu(t,e){return t.refreshStrategy??e?.refreshStrategy??"data-changed"}function Yu(t){return t.maxExecutions}function Xu(t,e){let r=new Set;for(let[n,s]of Object.entries(e))if(s.status===ct.COMPLETED){let o=t.tasks[n];o&&$e(o).forEach(i=>r.add(i));}return Array.from(r)}function Qu(t,e){let r={};return t.forEach(n=>{let s=e[n];if(!s)return;$e(s).forEach(a=>{r[a]||(r[a]=[]),r[a].push(n);});}),r}function Zu(t,e,r){let n=t.tasks[e]??xn(),s={};if(r){let a=r.tasks[e],i=dt(a);for(let u of i)for(let[c,d]of Object.entries(r.tasks))if($e(d).includes(u)){let l=t.tasks[c];l?.lastDataHash&&(s[u]=l.lastDataHash);break}}let o={...n,status:"running",startedAt:new Date().toISOString(),lastUpdated:new Date().toISOString(),progress:0,error:void 0,startConsumedHashes:s};return {...t,tasks:{...t.tasks,[e]:o},lastUpdated:new Date().toISOString()}}function ec(t,e,r,n,s,o){let a=t.tasks[r]??xn(),i=e.tasks[r];if(!i)throw new Error(`Task "${r}" not found in graph`);let u;n&&i.on&&i.on[n]?u=i.on[n]:u=$e(i);let c=a.startConsumedHashes?{...a.startConsumedHashes}:{...a.lastConsumedHashes};if(!a.startConsumedHashes){let k=i.requires??[];for(let v of k)for(let[m,p]of Object.entries(e.tasks))if($e(p).includes(v)){let b=t.tasks[m];b?.lastDataHash&&(c[v]=b.lastDataHash);break}}let d={...a,status:"completed",completedAt:new Date().toISOString(),lastUpdated:new Date().toISOString(),executionCount:a.executionCount+1,lastEpoch:a.executionCount+1,lastDataHash:s,data:o,lastConsumedHashes:c,error:void 0},l=[...new Set([...t.availableOutputs,...u])];return {...t,tasks:{...t.tasks,[r]:d},availableOutputs:l,lastUpdated:new Date().toISOString()}}function tc(t,e,r,n){let s=t.tasks[r]??xn(),o=e.tasks[r];if(o?.retry){let u=s.retryCount+1;if(u<=o.retry.max_attempts){let c={...s,status:"not-started",retryCount:u,lastUpdated:new Date().toISOString(),error:n};return {...t,tasks:{...t.tasks,[r]:c},lastUpdated:new Date().toISOString()}}}let a={...s,status:"failed",failedAt:new Date().toISOString(),lastUpdated:new Date().toISOString(),error:n,executionCount:s.executionCount+1},i=t.availableOutputs;if(o?.on_failure&&o.on_failure.length>0&&(i=[...new Set([...t.availableOutputs,...o.on_failure])]),o?.circuit_breaker&&a.executionCount>=o.circuit_breaker.max_executions){let u=o.circuit_breaker.on_break;i=[...new Set([...i,...u])];}return {...t,tasks:{...t.tasks,[r]:a},availableOutputs:i,lastUpdated:new Date().toISOString()}}function rc(t,e,r,n){let s=t.tasks[e]??xn(),o={...s,progress:typeof n=="number"?n:s.progress,messages:[...s.messages??[],...r?[{message:r,timestamp:new Date().toISOString(),status:s.status}]:[]],lastUpdated:new Date().toISOString()};return {...t,tasks:{...t.tasks,[e]:o},lastUpdated:new Date().toISOString()}}function nc(t,e){let r=t.tasks[e];if(!r)return t;let n={...r,status:"not-started",startedAt:void 0,completedAt:void 0,failedAt:void 0,error:void 0,data:void 0,progress:null,lastUpdated:new Date().toISOString()};return {...t,tasks:{...t.tasks,[e]:n},lastUpdated:new Date().toISOString()}}function xn(){return {status:"not-started",executionCount:0,retryCount:0,lastEpoch:0,messages:[],progress:null}}function Tn(t,e){let r=`live-${Date.now()}`,n={};for(let o of Object.keys(t.tasks))n[o]=oc();let s={status:"running",tasks:n,availableOutputs:[],stuckDetection:{is_stuck:false,stuck_description:null,outputs_unresolvable:[],tasks_blocked:[]},lastUpdated:new Date().toISOString(),executionId:r,executionConfig:{executionMode:t.settings.execution_mode??"eligibility-mode",conflictStrategy:t.settings.conflict_strategy??"alphabetical",completionStrategy:t.settings.completion}};return {config:t,state:s}}function zg(t,e){let{config:r,state:n}=t;if("executionId"in e&&e.executionId&&e.executionId!==n.executionId)return t;switch(e.type){case "task-started":return {config:r,state:Zu(n,e.taskName,r)};case "task-completed":return {config:r,state:ec(n,r,e.taskName,e.result,e.dataHash,e.data)};case "task-failed":return {config:r,state:tc(n,r,e.taskName,e.error)};case "task-progress":return {config:r,state:rc(n,e.taskName,e.message,e.progress)};case "task-restart":return {config:r,state:nc(n,e.taskName)};case "inject-tokens":return {config:r,state:{...n,availableOutputs:[...new Set([...n.availableOutputs,...e.tokens])],lastUpdated:new Date().toISOString()}};case "agent-action":return {config:r,state:eh(n,e.action)};case "task-upsert":return Hg(t,e.taskName,e.taskConfig);case "task-removal":return Wg(t,e.taskName);case "node-requires-add":return Yg(t,e.nodeName,e.tokens);case "node-requires-remove":return Xg(t,e.nodeName,e.tokens);case "node-provides-add":return Qg(t,e.nodeName,e.tokens);case "node-provides-remove":return Zg(t,e.nodeName,e.tokens);default:return t}}function sc(t,e){return e.reduce((r,n)=>zg(r,n),t)}function Hg(t,e,r){let n=!!t.config.tasks[e];return {config:{...t.config,tasks:{...t.config.tasks,[e]:r}},state:{...t.state,tasks:{...t.state.tasks,[e]:n?t.state.tasks[e]:oc()},lastUpdated:new Date().toISOString()}}}function Wg(t,e){if(!t.config.tasks[e])return t;let{[e]:r,...n}=t.config.tasks,{[e]:s,...o}=t.state.tasks;return {config:{...t.config,tasks:n},state:{...t.state,tasks:o,lastUpdated:new Date().toISOString()}}}function Yg(t,e,r){let n=t.config.tasks[e];if(!n)return t;let s=dt(n),o=r.filter(a=>!s.includes(a));return o.length===0?t:{config:{...t.config,tasks:{...t.config.tasks,[e]:{...n,requires:[...s,...o]}}},state:t.state}}function Xg(t,e,r){let n=t.config.tasks[e];if(!n)return t;let s=dt(n),o=s.filter(a=>!r.includes(a));return o.length===s.length?t:{config:{...t.config,tasks:{...t.config.tasks,[e]:{...n,requires:o}}},state:t.state}}function Qg(t,e,r){let n=t.config.tasks[e];if(!n)return t;let s=$e(n),o=r.filter(a=>!s.includes(a));return o.length===0?t:{config:{...t.config,tasks:{...t.config.tasks,[e]:{...n,provides:[...s,...o]}}},state:t.state}}function Zg(t,e,r){let n=t.config.tasks[e];if(!n)return t;let s=$e(n),o=s.filter(a=>!r.includes(a));return o.length===s.length?t:{config:{...t.config,tasks:{...t.config.tasks,[e]:{...n,provides:o}}},state:t.state}}function Ir(t){return {version:1,config:t.config,state:t.state,snapshotAt:new Date().toISOString()}}function An(t){if(!t||typeof t!="object")throw new Error("Invalid snapshot: expected an object");let e=t;if(!e.config||typeof e.config!="object")throw new Error('Invalid snapshot: missing or invalid "config"');if(!e.state||typeof e.state!="object")throw new Error('Invalid snapshot: missing or invalid "state"');let r=e.config,n=e.state;if(!r.settings||typeof r.settings!="object")throw new Error("Invalid snapshot: config.settings missing");if(!r.tasks||typeof r.tasks!="object")throw new Error("Invalid snapshot: config.tasks missing");if(!n.tasks||typeof n.tasks!="object")throw new Error("Invalid snapshot: state.tasks missing");if(!Array.isArray(n.availableOutputs))throw new Error("Invalid snapshot: state.availableOutputs must be an array");return {config:r,state:n}}function oc(){return {status:"not-started",executionCount:0,retryCount:0,lastEpoch:0,messages:[],progress:null}}function eh(t,e){let r=new Date().toISOString();switch(e){case "stop":return {...t,status:"stopped",lastUpdated:r};case "pause":return {...t,status:"paused",lastUpdated:r};case "resume":return {...t,status:"running",lastUpdated:r};default:return t}}function Pr(t){let{config:e,state:r}=t,n=Hu(e);if(Object.keys(n).length===0)return {eligible:[],pending:[],unresolved:[],blocked:[],conflicts:{}};let o=th(n),a=Xu(e,r.tasks),i=new Set([...a,...r.availableOutputs]),u=[],c=[],d=[],l=[];for(let[v,m]of Object.entries(n)){let p=r.tasks[v],b=Wu(m,e.settings),g=b!=="once";if(p?.status===ct.RUNNING||No(p))continue;let f=Yu(m);if(f!==void 0&&p&&p.executionCount>=f||m.circuit_breaker&&p&&p.executionCount>=m.circuit_breaker.max_executions||!g&&p?.status===ct.COMPLETED)continue;if(g&&p?.status===ct.COMPLETED){let R=dt(m),E=false;switch(b){case "data-changed":{R.length>0&&R.some(D=>{for(let[M,te]of Object.entries(n))if($e(te).includes(D)){let U=r.tasks[M];if(!U)continue;let le=p.lastConsumedHashes?.[D];return U.lastDataHash==null?U.executionCount>p.lastEpoch:U.lastDataHash!==le}return false})||(E=true);break}case "epoch-changed":{R.length>0&&R.some(D=>{for(let[M,te]of Object.entries(n))if($e(te).includes(D)){let U=r.tasks[M];if(U&&U.executionCount>p.lastEpoch)return true}return false})||(E=true);break}case "time-based":{let N=m.refreshInterval??0;if(N<=0){E=true;break}let D=p.completedAt;if(!D){E=true;break}(Date.now()-Date.parse(D))/1e3<N&&(E=true);break}case "manual":E=true;break}if(E)continue}let y=dt(m);if(y.length===0){u.push(v);continue}let _=[],w=[],$=[];for(let R of y){if(i.has(R))continue;let E=o[R]||[];E.length===0?_.push(R):E.every(D=>No(r.tasks[D]))?$.push({token:R,failedProducer:E[0]}):w.push(R);}_.length>0?d.push({taskName:v,missingTokens:_}):$.length>0?l.push({taskName:v,failedTokens:$.map(R=>R.token),failedProducers:[...new Set($.map(R=>R.failedProducer))]}):w.length>0?c.push({taskName:v,waitingOn:w}):u.push(v);}let k={};if(u.length>1){let v=Qu(u,n);for(let[m,p]of Object.entries(v))p.length>1&&(k[m]=p);}return {eligible:u,pending:c,unresolved:d,blocked:l,conflicts:k}}function th(t){let e={};for(let[r,n]of Object.entries(t)){for(let s of $e(n))e[s]||(e[s]=[]),e[s].push(r);if(n.on)for(let s of Object.values(n.on))for(let o of s)e[o]||(e[o]=[]),e[o].includes(r)||e[o].push(r);if(n.on_failure)for(let s of n.on_failure)e[s]||(e[s]=[]),e[s].includes(r)||e[s].push(r);}return e}var Or=class{buffer=[];append(e){this.buffer.push(e);}drain(){let e=this.buffer;return this.buffer=[],e}get size(){return this.buffer.length}};function qo(t){let e=Do(t);return rh(e)}function Do(t){if(t==null||typeof t!="object")return JSON.stringify(t);if(Array.isArray(t))return "["+t.map(Do).join(",")+"]";let e=t;return "{"+Object.keys(e).sort().map(n=>JSON.stringify(n)+":"+Do(e[n])).join(",")+"}"}function rh(t){let e=0xcbf29ce484222325n,r=0x100000001b3n,n=0xffffffffffffffffn;for(let s=0;s<t.length;s++)e^=BigInt(t.charCodeAt(s)),e=e*r&n;return e.toString(16).padStart(16,"0")}function nh(t){if(typeof Buffer<"u")return Buffer.from(t,"utf8").toString("base64url");if(typeof btoa=="function"){let e=new TextEncoder().encode(t),r="";for(let n of e)r+=String.fromCharCode(n);return btoa(r).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}throw new Error("No base64 encoder available in this runtime")}function sh(t){if(typeof Buffer<"u")return Buffer.from(t,"base64url").toString("utf8");if(typeof atob=="function"){let e=t.replace(/-/g,"+").replace(/_/g,"/"),r=e+"=".repeat((4-e.length%4)%4),n=atob(r),s=new Uint8Array(n.length);for(let o=0;o<n.length;o++)s[o]=n.charCodeAt(o);return new TextDecoder().decode(s)}throw new Error("No base64 decoder available in this runtime")}function ac(t){let e=JSON.stringify({t,n:Date.now().toString(36)+Math.random().toString(36).slice(2,6)});return nh(e)}function oh(t){try{let e=JSON.parse(sh(t));return typeof e?.t=="string"?{taskName:e.t}:null}catch{return null}}function ic(t,e,r){let{handlers:n,onDrain:s}=e,o=new Or,a="state"in t&&"config"in t?t:Tn(t),i=false,u=new Set,c=new Map(Object.entries(n)),d=new Or,l=false,k=false;function v(){if(!i){if(l){k=true;return}l=true;try{do k=!1,m();while(k)}finally{l=false;}}}function m(){let f=d.drain(),y=o.drain(),_=[...f,...y];_.length>0&&(a=sc(a,_));let w=Pr(a);_.length>0&&s?.(_,a,w);for(let $ of w.eligible)g($);for(let $ of _)if($.type==="task-progress"){let{taskName:R,update:E}=$;if(!a.config.tasks[R])continue;let D=a.state.tasks[R];if(!D||D.status!=="running")continue;let M=ac(R),te=b(R,M,E).catch(U=>{i||(d.append({type:"task-failed",taskName:R,error:U.message??String(U),timestamp:new Date().toISOString()}),v());}).finally(()=>{u.delete(te);});u.add(te);}}function p(f){let _=a.config.tasks[f].requires??[],w=new Map;for(let[R,E]of Object.entries(a.config.tasks))for(let N of E.provides??[])w.set(N,R);let $={};for(let R of _){let E=w.get(R);E?$[R]=a.state.tasks[E]?.data:$[R]=void 0;}return $}async function b(f,y,_){let w=a.config.tasks[f],$=w.taskHandlers??[],R=p(f);for(let E of $){let N=c.get(E);if(!N)throw new Error(`Handler '${E}' not found in registry (task '${f}')`);let D={nodeId:f,state:R,taskState:a.state.tasks[f],config:w,callbackToken:y,update:_};if(await N(D)==="task-initiate-failure")throw new Error(`Handler '${E}' returned task-initiate-failure (task '${f}')`)}}function g(f){let _=a.config.tasks[f]?.taskHandlers;if(!_||_.length===0)return;d.append({type:"task-started",taskName:f,timestamp:new Date().toISOString()}),v();let w=ac(f),$=b(f,w).catch(R=>{i||(d.append({type:"task-failed",taskName:f,error:R.message??String(R),timestamp:new Date().toISOString()}),v());}).finally(()=>{u.delete($);});u.add($);}return {push(f){i||(f.type==="task-completed"&&f.data&&!f.dataHash&&(f={...f,dataHash:qo(f.data)}),o.append(f),v());},pushAll(f){if(!i){for(let y of f)y.type==="task-completed"&&y.data&&!y.dataHash?o.append({...y,dataHash:qo(y.data)}):o.append(y);v();}},resolveCallback(f,y,_){if(i)return;let w=oh(f);if(!w)return;let{taskName:$}=w;if(a.config.tasks[$]){if(_&&_.length>0)o.append({type:"task-failed",taskName:$,error:_.join("; "),timestamp:new Date().toISOString()});else {let R=y&&Object.keys(y).length>0?qo(y):void 0;o.append({type:"task-completed",taskName:$,data:y,dataHash:R,timestamp:new Date().toISOString()});}v();}},addNode(f,y){i||(o.append({type:"task-upsert",taskName:f,taskConfig:y,timestamp:new Date().toISOString()}),v());},removeNode(f){i||(o.append({type:"task-removal",taskName:f,timestamp:new Date().toISOString()}),v());},addRequires(f,y){i||(o.append({type:"node-requires-add",nodeName:f,tokens:y,timestamp:new Date().toISOString()}),v());},removeRequires(f,y){i||(o.append({type:"node-requires-remove",nodeName:f,tokens:y,timestamp:new Date().toISOString()}),v());},addProvides(f,y){i||(o.append({type:"node-provides-add",nodeName:f,tokens:y,timestamp:new Date().toISOString()}),v());},removeProvides(f,y){i||(o.append({type:"node-provides-remove",nodeName:f,tokens:y,timestamp:new Date().toISOString()}),v());},registerHandler(f,y){c.set(f,y);},unregisterHandler(f){c.delete(f);},retrigger(f){i||a.config.tasks[f]&&(o.append({type:"task-restart",taskName:f,timestamp:new Date().toISOString()}),v());},retriggerAll(f){if(!i){for(let y of f)a.config.tasks[y]&&o.append({type:"task-restart",taskName:y,timestamp:new Date().toISOString()});v();}},snapshot(){return Ir(a)},getState(){return a},getSchedule(){return Pr(a)},async waitForHandlers(){u.size>0&&await Promise.allSettled([...u]);},async dispose(f){f?.wait&&u.size>0&&await Promise.allSettled([...u]),i=true;}}}var ih=createRequire(import.meta.url),In=ih("./jsonata-sync.cjs"),dc=In;function uc(t,e){if(!e||!t)return;let r=e.split("."),n=t;for(let s=0;s<r.length;s++){if(n==null)return;n=n[r[s]];}return n}function lc(t,e,r){let n=e.split("."),s=t;for(let o=0;o<n.length-1;o++)(s[n[o]]==null||typeof s[n[o]]!="object")&&(s[n[o]]={}),s=s[n[o]];s[n[n.length-1]]=r;}async function uh(t,e){if(!t?.compute?.length)return t;t.card_data||(t.card_data={}),t.computed_values={},t._sourcesData=e?.sourcesData??{};let r=t.requires??{},n={card_data:t.card_data,requires:r,expects_data:r,fetched_sources:t._sourcesData,data:t.computed_values,computed_values:t.computed_values};for(let s of t.compute)try{let o=await In(s.expr).evaluate(n);lc(t.computed_values,s.bindTo,o),n.computed_values=t.computed_values;}catch{}return t}function ch(t,e){if(!t?.compute?.length)return {ok:true,node:t};t.card_data||(t.card_data={}),t.computed_values={},t._sourcesData=e?.sourcesData??{};let r=t.requires??{},n={card_data:t.card_data,requires:r,expects_data:r,fetched_sources:t._sourcesData,data:t.computed_values,computed_values:t.computed_values},s=[];for(let o of t.compute)try{let a=dc(o.expr).evaluate(n);lc(t.computed_values,o.bindTo,a),n.computed_values=t.computed_values;}catch(a){let i=a instanceof Error?a.message:String(a);s.push({bindTo:o.bindTo,error:i});}return s.length>0?{ok:true,node:t,errors:s}:{ok:true,node:t}}async function dh(t,e,r){let n={...r??{},card_data:e.card_data??{},requires:e.requires??{},fetched_sources:e._sourcesData??{},computed_values:e.computed_values??{}};return In(t).evaluate(n)}function lh(t,e){return e.startsWith("fetched_sources.")?uc(t._sourcesData??{},e.slice(16)):uc(t,e)}var cc=new Set(["metric","table","editable-table","chart","form","filter","list","notes","todo","alert","narrative","badge","text","markdown","ref","custom","actions"]),fh=new Set(["id","meta","requires","provides","view","card_data","compute","source_defs"]);function ph(t){let e=[];if(!t||typeof t!="object"||Array.isArray(t))return {ok:false,errors:["Node must be a non-null object"]};let r=t;(typeof r.id!="string"||!r.id)&&e.push("id: required, must be a non-empty string");for(let n of Object.keys(r))fh.has(n)||e.push(`Unknown top-level key: "${n}"`);if((r.card_data==null||typeof r.card_data!="object"||Array.isArray(r.card_data))&&e.push("card_data: required, must be an object"),r.meta!=null)if(typeof r.meta!="object"||Array.isArray(r.meta))e.push("meta: must be an object");else {let n=r.meta;n.title!=null&&typeof n.title!="string"&&e.push("meta.title: must be a string"),n.tags!=null&&!Array.isArray(n.tags)&&e.push("meta.tags: must be an array");}if(r.requires!=null&&!Array.isArray(r.requires)&&e.push("requires: must be an array of strings"),r.provides!=null&&(Array.isArray(r.provides)?r.provides.forEach((n,s)=>{if(!n||typeof n!="object"||Array.isArray(n))e.push(`provides[${s}]: must be an object with bindTo and ref`);else {let o=n;(typeof o.bindTo!="string"||!o.bindTo)&&e.push(`provides[${s}]: missing required "bindTo" string`),(typeof o.ref!="string"||!o.ref)&&e.push(`provides[${s}]: missing required "ref" string`);}}):e.push("provides: must be an array of { bindTo, ref } bindings")),r.compute!=null&&(Array.isArray(r.compute)?r.compute.forEach((n,s)=>{if(!n||typeof n!="object"||Array.isArray(n))e.push(`compute[${s}]: must be a compute step object`);else {let o=n;(typeof o.bindTo!="string"||!o.bindTo)&&e.push(`compute[${s}]: missing required "bindTo" property`),(typeof o.expr!="string"||!o.expr)&&e.push(`compute[${s}]: missing required "expr" string (JSONata expression)`);}}):e.push("compute: must be an array of compute steps")),r.source_defs!=null)if(!Array.isArray(r.source_defs))e.push("source_defs: must be an array");else {let n=new Set,s=new Set;r.source_defs.forEach((o,a)=>{if(!o||typeof o!="object"||Array.isArray(o))e.push(`source_defs[${a}]: must be an object`);else {let i=o;typeof i.bindTo!="string"||!i.bindTo?e.push(`source_defs[${a}]: missing required "bindTo" property`):(n.has(i.bindTo)&&e.push(`source_defs[${a}]: bindTo "${i.bindTo}" is not unique across source_defs`),n.add(i.bindTo)),typeof i.outputFile!="string"||!i.outputFile?e.push(`source_defs[${a}]: missing required "outputFile" property`):(s.has(i.outputFile)&&e.push(`source_defs[${a}]: outputFile "${i.outputFile}" is not unique across source_defs`),s.add(i.outputFile)),i.optionalForCompletionGating!=null&&typeof i.optionalForCompletionGating!="boolean"&&e.push(`source_defs[${a}]: optionalForCompletionGating must be a boolean`);}});}if(r.view!=null)if(typeof r.view!="object"||Array.isArray(r.view))e.push("view: must be an object");else {let n=r.view;!Array.isArray(n.elements)||n.elements.length===0?e.push("view.elements: required, must be a non-empty array"):n.elements.forEach((s,o)=>{if(!s||typeof s!="object"){e.push(`view.elements[${o}]: must be an object`);return}!s.kind||typeof s.kind!="string"?e.push(`view.elements[${o}].kind: required, must be a string`):cc.has(s.kind)||e.push(`view.elements[${o}].kind: unknown kind "${s.kind}". Valid: ${[...cc].join(", ")}`),s.data!=null&&(typeof s.data!="object"||Array.isArray(s.data))&&e.push(`view.elements[${o}].data: must be an object`);}),n.layout!=null&&(typeof n.layout!="object"||Array.isArray(n.layout))&&e.push("view.layout: must be an object"),n.features!=null&&(typeof n.features!="object"||Array.isArray(n.features))&&e.push("view.features: must be an object");}return {ok:e.length===0,errors:e}}async function mh(t,e){if(!t||t.length===0)return [];let r={card_data:e.card_data??{},requires:e.requires??{}};return Promise.all(t.map(async n=>{let s={};if(n.projections&&typeof n.projections=="object"&&!Array.isArray(n.projections)){for(let[o,a]of Object.entries(n.projections))if(typeof a=="string"&&a.trim().length>0)try{s[o]=await In(a).evaluate(r);}catch{s[o]=void 0;}}return {...n,_projections:s}}))}function gh(t,e){if(!t||t.length===0)return [];let r={card_data:e.card_data??{},requires:e.requires??{}};return t.map(n=>{let s={};if(n.projections&&typeof n.projections=="object"&&!Array.isArray(n.projections)){for(let[o,a]of Object.entries(n.projections))if(typeof a=="string"&&a.trim().length>0)try{s[o]=dc(a).evaluate(r);}catch{s[o]=void 0;}}return {...n,_projections:s}})}var lt={run:uh,runSync:ch,eval:dh,resolve:lh,validate:ph,enrichSources:mh,enrichSourcesSync:gh};function Fo(t){return JSON.stringify(t)}function Mo(t){let e;try{e=JSON.parse(t);}catch{throw new Error(`parseExecutionRef: invalid JSON \u2014 ${t}`)}if(typeof e!="object"||e===null||typeof e.howToRun!="string"||typeof e.whatToRun!="string")throw new Error(`parseExecutionRef: missing required fields howToRun/whatToRun \u2014 ${t}`);return e}function Pn(t,e){function r(){return t.readIndex()??{}}function n(s,o,a){let i=String(o||"").split(".").filter(Boolean);if(i.length===0)return a&&typeof a=="object"&&!Array.isArray(a)?a:{value:a};let u={...s},c=u;for(let d=0;d<i.length-1;d++){let l=i[d],k=c[l],v=k&&typeof k=="object"&&!Array.isArray(k)?{...k}:{};c[l]=v,c=v;}return c[i[i.length-1]]=a,u}return {readCard(s){let o=r()[s];return !o||!t.cardExists(o.key)?null:t.readCard(o.key)},readCardKey(s){return r()[s]?.key??null},readAllCards(){let s=[];for(let[o,a]of Object.entries(r())){if(!t.cardExists(a.key))continue;let i=t.readCard(a.key);i?s.push(i):e?.(`[card-store] could not read card "${o}" at key "${a.key}"`);}return s},readChecksumIndex(){let s={};for(let[o,a]of Object.entries(r()))s[o]=a.checksum;return s},changedSince(s){let o=r(),a=[];for(let[i,u]of Object.entries(o))s[i]!==u.checksum&&a.push(i);for(let i of Object.keys(s))o[i]||a.push(i);return a},validateUpsert(s,o){let a=r(),i=a[s],u=Object.entries(a).find(([,c])=>c.key===o);return i&&i.key!==o?{ok:false,error:`Card id "${s}" is already mapped to key "${i.key}", cannot remap to "${o}"`}:u&&u[0]!==s?{ok:false,error:`Key "${o}" is already mapped to card id "${u[0]}", cannot remap to "${s}"`}:{ok:true}},writeCard(s,o,a){let i=r(),u=a??i[s]?.key??t.defaultCardKey(s),c=t.writeCard(u,o);i[s]={key:u,checksum:c,updatedAt:new Date().toISOString()},t.writeIndex(i);},patchCard(s,o,a){let i=r(),u=i[s];if(!u||!t.cardExists(u.key))throw new Error(`card "${s}" not found`);let c=t.readCard(u.key);if(!c||typeof c!="object"||Array.isArray(c))throw new Error(`card "${s}" is not patchable`);let d=n(c,o,a),l=t.writeCard(u.key,d);i[s]={key:u.key,checksum:l,updatedAt:new Date().toISOString()},t.writeIndex(i);},removeCard(s){let o=r();o[s]&&(delete o[s],t.writeIndex(o));},readIndex(){return r()}}}function Lo(t,e){return {readSourceData(r,n){let s=t.read(`${r}/${n}`);if(s==null)return null;let o=s.trim();if(!o)return null;try{return JSON.parse(o)}catch{return o}},ingestSourceDataStaged(r,n,s,o){let a=e(s);t.write(`${r}/.staged/${o}/${n}`,a);},commitSourceData(r,n,s){let o=`${r}/.staged/${s}/${n}`,a=t.read(o);return a==null?false:(t.write(`${r}/${n}`,a),t.remove(o),true)},hasSource(r,n){return t.exists(`${r}/${n}`)}}}function hc(t){function e(r){let n=t.readAllEntries();if(!r)return n;let s=n.findIndex(o=>o.id===r);return s===-1?n:n.slice(s+1)}return {readEntriesAfterCursor(r){let n=e(r);return n.length===0?{events:[],newCursor:r}:{events:n.map(s=>s.event),newCursor:n[n.length-1].id}},pendingCount(r){return e(r).length},appendEvent(r){t.appendEntry({id:t.generateId(),event:r});}}}function yc(t,e){return {appendEntries(r,n){if(!r||n.length===0)return;let s=t.read(r)??[];t.write(r,[...s,...n]);},dispatchEntriesForJournalId(r,n){if(!r)return;let s=t.read(r);if(!(!s||s.length===0)){for(let o of s)try{n(o);}catch(a){let i=a instanceof Error?a.message:String(a);try{e(o,i);}catch{}}t.delete(r);}}}}var jr="v1",ft="board/graph",vc="board/lastJournalProcessedId";function fc(t){return `cards/${t}/runtime`}function kc(t){return {readRuntime(e){return t.read(fc(e))??{_sources:{}}},writeRuntime(e,r){t.write(fc(e),r);}}}function hh(t,e){let r={...t};for(let n of e.deleteKeys)delete r[n];return {...r,...e.shallowMerge}}function bc(t){return {readSnapshot(e){return t.readValues(e)},commitSnapshot(e,r){if(r.schemaVersion!==jr)throw new Error(`Unsupported snapshot schema version: ${r.schemaVersion}`);let n=t.readValues(e);if(n.version!==r.expectedVersion)return {ok:false,reason:"version-mismatch",currentVersion:n.version};let s=hh(n.values,r);return {ok:true,newVersion:t.writeValues(e,s,r.deleteKeys)}}}}function Vo(t){function e(r){let n=t.read(r);return n==null?null:typeof n=="string"?n:JSON.stringify(n)}return {readTaskExecutorRef(){let r=e("task-executor");if(r?.trim())return Mo(r.trim())},writeTaskExecutorRef(r){t.write("task-executor",Fo(r));},readChatHandlerFlow(){return t.read("chat-handler-flow")},writeChatHandlerFlow(r){t.write("chat-handler-flow",r);},readCardStoreRef(){return e("card-store-ref")},writeCardStoreRef(r){t.write("card-store-ref",r);},readOutputsStoreRef(){return e("outputs-store-ref")},writeOutputsStoreRef(r){t.write("outputs-store-ref",r);}}}function wc(t){return {writeComputedValues(e,r){t.write(`cards/${e}/computed_values`,r);},readComputedValues(e){return t.read(`cards/${e}/computed_values`)},readAllComputedValues(){let e={};for(let r of t.listKeys("cards/")){let n=r.match(/^cards\/([^/]+)\/computed_values$/);n&&(e[n[1]]=t.read(r));}return e},writeDataObjects(e){for(let[r,n]of Object.entries(e))r&&t.write(`data-objects/${r}`,n);},readDataObject(e){return t.read(`data-objects/${e}`)},readAllDataObjects(){let e={};for(let r of t.listKeys("data-objects/"))e[r.slice(13)]=t.read(r);return e},writeStatusSnapshot(e){t.write("status",e);},readStatusSnapshot(){return t.read("status")}}}function pc(t){return t?{lastRequestedToken:t.lastRequestedToken,lastCompletedToken:t.lastCompletedToken,lastCompletionStatus:t.lastCompletionStatus??(t.lastCompletedToken?"success":"not-started"),queueRequestedToken:t.queueRequestedToken}:{lastCompletionStatus:"not-started"}}function yh(t){return t?.lastRequestedToken?t.lastCompletedToken!==t.lastRequestedToken:false}function mc(t,e){return t?.lastRequestedToken?yh(t)?"in-flight":!t.lastCompletedToken||t.lastCompletedToken<e?"dispatch":"idle":"dispatch"}function vh(t,e){return {...t,lastCompletedToken:e,lastCompletionStatus:"success"}}function gc(t,e){return {...t,lastCompletedToken:e,lastCompletionStatus:"failure"}}function On(t,e){let r=e.state.tasks,n=e.config.tasks,s=Object.keys(r),o=Pr(e),a={completed:0,failed:0,in_progress:0,pending:0,blocked:0,unresolved:0},i=new Map;for(let m of o.pending)i.set(m.taskName,m.waitingOn);for(let m of o.unresolved)i.set(m.taskName,m.missingTokens);for(let m of o.blocked)i.set(m.taskName,m.failedTokens);let u=new Map;for(let[m,p]of Object.entries(n))for(let b of p.requires??[]){let g=u.get(b)??[];g.push(m),u.set(b,g);}let c=s.sort().map(m=>{let p=r[m],b=n[m]??{requires:[],provides:[]};p.status==="completed"?a.completed+=1:p.status==="failed"?a.failed+=1:p.status==="in-progress"&&(a.in_progress+=1);let g=b.requires??[],f=b.provides??[],y=Object.keys(p.data??{}).sort(),_=g.filter(D=>e.state.availableOutputs.includes(D)),w=g.filter(D=>!e.state.availableOutputs.includes(D)),$=i.get(m)??w,R=new Set;for(let D of f)for(let M of u.get(D)??[])M!==m&&R.add(M);let E=p.failedAt,N=p.error?{message:p.error,code:"TASK_FAILED",at:E,source:"task-runtime"}:void 0;return {name:m,status:p.status,error:N,requires:g,requires_satisfied:_,requires_missing:w,provides_declared:f,provides_runtime:y,blocked_by:$,unblocks:Array.from(R).sort(),runtime:{attempt_count:p.executionCount??0,restart_count:p.retryCount??0,in_progress_since:p.status==="in-progress"?p.startedAt??null:null,last_transition_at:p.lastUpdated??null,last_completed_at:p.completedAt??null,last_restarted_at:p.startedAt??null,status_age_ms:p.lastUpdated?0:null}}});a.pending=o.pending.length,a.blocked=o.blocked.length,a.unresolved=o.unresolved.length;let d=c.map(m=>({name:m.name,fanOut:m.unblocks.length})).sort((m,p)=>p.fanOut-m.fanOut||m.name.localeCompare(p.name)),l=d.length>0?d[0]:{name:null,fanOut:0},k=new Set;for(let m of Object.values(n))for(let p of m.requires??[])k.add(p);let v=0;for(let[m,p]of Object.entries(n)){let b=(p.requires??[]).length===0,f=(p.provides??[]).some(y=>(u.get(y)??[]).some(_=>_!==m));b&&!f&&(v+=1);}return {schema_version:"v1",meta:{board:{path:t}},summary:{card_count:s.length,completed:a.completed,eligible:o.eligible.length,pending:a.pending,blocked:a.blocked,unresolved:a.unresolved,failed:a.failed,in_progress:a.in_progress,orphan_cards:v,topology:{edge_count:Array.from(k).length,max_fan_out_card:l.name,max_fan_out:l.fanOut}},cards:c}}function kh(){return new Date().toISOString()}function Sc(t,e,r,n,s,o,a){return async i=>{let u=[],c=r.cardStore.readCard(i.nodeId);if(!c)return "task-initiate-failure";let d=c.id,l=c.card_data??{},k=c.source_defs??[],v=k.filter(q=>q.optionalForCompletionGating!==true),m=r.cardRuntimeStore.readRuntime(d),p=false,b=()=>{p&&(r.cardRuntimeStore.writeRuntime(d,m),p=false);},g=q=>pc(m._sources[q]),f=(q,S)=>{m._sources[q]=pc(S),p=true;},y=i.taskState?.executionCount??0;if(m._lastExecutionCount!==y&&(m._sources={},m._lastExecutionCount=y,p=true),i.update){let q=i.update,S=q.outputFile;if(S){let h=g(S);if(q.failure){let C=q.rqt??h.lastRequestedToken??h.queueRequestedToken;C&&f(S,gc(h,C));}else {let C=q.rqt;if(!h.lastCompletedToken||C>h.lastCompletedToken){let A=typeof q.deliveryToken=="string"?q.deliveryToken:void 0,K=false;A&&(K=r.fetchedSourcesStore.commitSourceData(d,S,A)),K?f(S,vh(h,C)):f(S,gc(h,C));}}b();}}let w={};for(let q of k)if(q.outputFile){let S=r.fetchedSourcesStore.readSourceData(d,q.outputFile);S!==null&&(w[q.bindTo]=S);}let $={};for(let[q,S]of Object.entries(i.state??{}))if(S!==null&&typeof S=="object"&&!Array.isArray(S)){let h=S[q];$[q]=h!==void 0?h:S;}else $[q]=S;let R={id:d,card_data:{...l},requires:$,source_defs:k,compute:c.compute};R._sourcesData=w,c.compute&<.runSync(R,{sourcesData:w}),(o??r.outputStore.writeComputedValues.bind(r.outputStore))(d,R.computed_values??{});let E={...c},N=lt.enrichSourcesSync(Array.isArray(c.source_defs)?c.source_defs:void 0,{card_data:c.card_data,requires:$}),D=t.value;E.source_defs=Array.isArray(N)?N.map(q=>({...q,boardDir:typeof q.boardDir=="string"&&q.boardDir?q.boardDir:D})):N;let M=kh(),te=i.update?void 0:M,U=v.filter(q=>{let S=q.outputFile;if(typeof S!="string"||!S)return true;let h=g(S);te&&(h={...h,queueRequestedToken:te},f(S,h));let C=h.queueRequestedToken??h.lastRequestedToken??M,A=mc(h,C);return A==="in-flight"?false:A==="dispatch"});if(b(),U.length>0){let q=false,S=M;for(let h of U){let C=h.outputFile;if(typeof C!="string"||!C)continue;let A=g(C),K=A.queueRequestedToken??M;f(C,{...A,lastRequestedToken:K}),S=K,q=true;}return q&&b(),q&&(u.push({taskKind:"source-fetch",payload:{boardRef:ae(t),enrichedCard:E,callbackToken:i.callbackToken,rqt:S}}),r.executionRequestStore.appendEntries(e,u)),"task-initiated"}if(v.some(q=>{let S=q.outputFile;if(typeof S!="string"||!S)return false;let h=g(S),C=h.queueRequestedToken??h.lastRequestedToken??M;return mc(h,C)==="in-flight"}))return "task-initiated";let Xe=c.provides??[],Me={};for(let{bindTo:q,ref:S}of Xe)Me[q]=lt.resolve(R,S);return (a??r.outputStore.writeDataObjects.bind(r.outputStore))(Me),k.filter(q=>{if(q.optionalForCompletionGating!==true)return false;let S=g(q.outputFile);return !S.lastRequestedToken||!S.lastCompletedToken?true:S.lastCompletedToken<=S.lastRequestedToken}).length>0&&u.push({taskKind:"source-fetch",payload:{boardRef:ae(t),enrichedCard:E,callbackToken:i.callbackToken,rqt:M}}),n(i.nodeId,Me),u.length>0&&r.executionRequestStore.appendEntries(e,u),"task-initiated"}}var jn={settings:{completion:"manual",refreshStrategy:"data-changed"},tasks:{}};function _c(t){return {[ft]:t.graph,[vc]:t.lastDrainedJournalId}}function Rc(t){let e=t[ft],r=t[vc];if(!e||typeof e!="object")throw new Error(`State snapshot is missing required key: ${ft}`);return {graph:e,lastDrainedJournalId:typeof r=="string"?r:""}}function Cc(t){let e=t.requires,r=t.provides?.map(n=>n.bindTo)??[];return {requires:e&&e.length>0?e:void 0,provides:r,taskHandlers:["card-handler"],description:t.meta?.title??t.id}}function X(t){return t!==void 0?{status:"success",data:t}:{status:"success"}}function j(t){return {status:"fail",error:t}}function Z(t){return {status:"error",error:t instanceof Error?t.message:String(t)}}function bh(t){let e=new TextEncoder().encode(t),r=Array.from(e,n=>String.fromCharCode(n)).join("");return btoa(r).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function Ec(t){let e=t.replace(/-/g,"+").replace(/_/g,"/"),r=e+"=".repeat((4-e.length%4)%4),n=atob(r),s=Uint8Array.from(n,o=>o.charCodeAt(0));return new TextDecoder().decode(s)}function Nn(t){try{let e=JSON.parse(Ec(t));return typeof e?.t=="string"?{taskName:e.t}:null}catch{return null}}function wh(t){return bh(JSON.stringify(t))}function $c(t){try{let e=JSON.parse(Ec(t));return typeof e?.cbk=="string"&&typeof e?.cid=="string"&&typeof e?.b=="string"&&typeof e?.d=="string"?e:null}catch{return null}}function Ee(){return new Date().toISOString()}function Nr(t,e){let r=e.onWarn??(()=>{}),n=ae(t);function s(S){if(S.length!==0)try{let h=e.publishBoardChangeNotifications?.(S);h&&typeof h.catch=="function"&&h.catch(C=>r(`[board-live-cards-public] publishBoardChangeNotifications failed: ${C instanceof Error?C.message:String(C)}`));}catch(h){r(`[board-live-cards-public] publishBoardChangeNotifications failed: ${h instanceof Error?h.message:String(h)}`);}}function o(){let S=i().readCardStoreRef();if(!S)throw new Error(`Board at ${t.value} has no card store configured. Run: init --base-ref <ref> --store-ref <b64-ref>`);let h=e.kvStorageForRef(S);return {readIndex(){return h.read("_index")},writeIndex(C){h.write("_index",C);},readCard(C){return h.read(C)},writeCard(C,A){return h.write(C,A),e.hashFn(A)},cardExists(C){return h.read(C)!==null},defaultCardKey(C){return C}}}let a={readValues(S){let h=e.kvStorage("state-snapshot"),C=h.listKeys().sort();if(C.length===0)return {version:null,values:{}};let A={};for(let K of C)A[K]=h.read(K);return {version:e.hashFn(A),values:A}},writeValues(S,h,C){let A=e.kvStorage("state-snapshot");for(let K of C)A.delete(K);for(let[K,ee]of Object.entries(h))A.write(K,ee);return e.hashFn(h)}},i=()=>Vo(e.kvStorage("config")),u=()=>bc(a),c=()=>hc(e.journalAdapter()),d=()=>Pn(o(),r),l=()=>{let S=i().readOutputsStoreRef();if(!S)throw new Error(`Board at ${t.value} has no outputs store configured. Run: init --outputs-store-ref <b64-ref>`);return wc(e.kvStorageForRef(S))};function k(){return !!u().readSnapshot(t.value).values[ft]}function v(){let S=u().readSnapshot(t.value);if(!S.values[ft])throw new Error(`Board not initialized at ${t.value}`);return Rc(S.values)}function m(S,h){let C=u().commitSnapshot(t.value,{schemaVersion:jr,expectedVersion:h,commitId:e.genId(),committedAt:Ee(),deleteKeys:[],shallowMerge:_c(S)});if(!C.ok)throw new Error(`Snapshot commit failed (version mismatch): expected=${h??"null"} current=${C.currentVersion??"null"}`)}function p(S){c().appendEvent(S);}async function b(){let S=(P,F)=>{let oe=P.payload,Ze=(oe?.enrichedCard??{}).id??oe?.cardId??"unknown";p({type:"task-failed",taskName:Ze,error:F,timestamp:Ee()});},h=yc(e.kvStorage("execution-requests"),S),C=kc(e.kvStorage("card-runtime")),A=Lo(e.blobStorage("sources"),P=>e.resolveBlob(P)),K=new Map,ee={readRuntime(P){return K.get(P)??C.readRuntime(P)},writeRuntime(P,F){K.set(P,F);}},_e=[],Re=new Map,Qe={readSourceData(P,F){let oe=`${P}/${F}`;return Re.has(oe)?Re.get(oe):A.readSourceData(P,F)},ingestSourceDataStaged(P,F,oe,Ot){A.ingestSourceDataStaged(P,F,oe,Ot);},commitSourceData(P,F,oe){let Ot=`${P}/.staged/${oe}/${F}`,Mr=e.blobStorage("sources").read(Ot);if(Mr==null)return false;let jt=`${P}/${F}`,Jo=Mr.trim();try{Re.set(jt,JSON.parse(Jo));}catch{Re.set(jt,Jo);}return _e.push({cardId:P,outputFile:F,deliveryToken:oe}),true},hasSource(P,F){let oe=`${P}/${F}`;return Re.has(oe)?true:A.hasSource(P,F)}},Ce={cardStore:d(),cardRuntimeStore:ee,fetchedSourcesStore:Qe,outputStore:l(),executionRequestStore:h},mt=v(),gt=An(mt.graph),{events:It,newCursor:Pt}=c().readEntriesAfterCursor(mt.lastDrainedJournalId),ht=[],qn=[],Dn=[],Go=new Map,Tc=(P,F)=>{ht.push({type:"task-completed",taskName:P,data:F,timestamp:Ee()});},Ko=(P,F)=>p({type:"task-failed",taskName:P,error:F,timestamp:Ee()}),Dr=ic(gt,{handlers:{"card-handler":Sc(t,Pt,Ce,Tc,Ko,(P,F)=>{qn.push({cardId:P,values:F});},P=>{Dn.push(P);})}});for(ht=It;ht.length>0;){let P=ht;ht=[];for(let F of P)if(F.type==="task-restart"){let oe=Ce.cardStore.readCard(F.taskName);oe&&Go.set(F.taskName,oe);}Dr.pushAll(P),await Dr.waitForHandlers();}let Uo=Dr.getState();await Dr.dispose({wait:true});let Ac=u().readSnapshot(t.value).version;m({lastDrainedJournalId:Pt,graph:Ir(Uo)},Ac);for(let{cardId:P,values:F}of qn)Ce.outputStore.writeComputedValues(P,F);for(let P of Dn)Ce.outputStore.writeDataObjects(P);for(let[P,F]of K)C.writeRuntime(P,F);for(let{cardId:P,outputFile:F,deliveryToken:oe}of _e)A.commitSourceData(P,F,oe);let Fr;try{Fr=On(n,Uo),Ce.outputStore.writeStatusSnapshot(Fr);}catch(P){r(`[board-live-cards-public] status publish failed: ${P instanceof Error?P.message:String(P)}`);}let er=[];for(let{cardId:P,values:F}of qn)er.push({kind:"computed_values",cardId:P,values:F});for(let P of Dn)for(let[F,oe]of Object.entries(P))F&&er.push({kind:"data_object",key:F,payload:oe});for(let[P,F]of Go)er.push({kind:"card_refreshed",cardId:P,card:F});Fr!==void 0&&er.push({kind:"status",status:Fr}),s(er);let Ic=i().readTaskExecutorRef()??{howToRun:"built-in",whatToRun:ae({kind:"built-in",value:"source-cli-task-executor"})};h.dispatchEntriesForJournalId(Pt,P=>{if(P.taskKind!=="source-fetch"){r(`[process-accumulated-events] unknown taskKind "${P.taskKind}" \u2014 skipping`);return}let F=P.payload,oe=F.enrichedCard?.id??"unknown",Ot=F.enrichedCard?.source_defs??[];for(let Ze of Ot){if(!Ze.outputFile){r(`[dispatch] source "${Ze.bindTo}" has no outputFile \u2014 skipping`);continue}let Mr=wh({cbk:F.callbackToken,rg:t.value,br:ae(t),cid:oe,b:Ze.bindTo,d:Ze.outputFile,cs:void 0,rqt:F.rqt});e.dispatchExecution(Ic,{source_def:Ze,base_ref:ae(t),callback:{token:Mr,via:e.selfRef}}).catch(jt=>Ko(oe,jt instanceof Error?jt.message:String(jt)));}});}async function g(){try{let S=()=>{let C=v(),{events:A}=c().readEntriesAfterCursor(C.lastDrainedJournalId);A.length<=0||(g(),e.requestProcessAccumulated?.());},h=await Ho(e.lock,b,S);return X({ran:h!==!1})}catch(S){return Z(S)}}function f(S){try{let h=S.params?.cardStoreRef;if(!h)return j("init requires params.cardStoreRef \u2014 create a card store with card-store-cli and pass its ref here");if(!k()){let ee=Tn(jn);m({lastDrainedJournalId:"",graph:Ir(ee)},null);}let C=S.params?.outputsStoreRef;if(!C)return j("init requires params.outputsStoreRef \u2014 pass the outputs store ref here");let A=i();A.writeCardStoreRef(h),A.writeOutputsStoreRef(C);let K=S.body??{};K["task-executor-ref"]&&A.writeTaskExecutorRef(K["task-executor-ref"]),Object.prototype.hasOwnProperty.call(K,"chat-handler-flow")&&A.writeChatHandlerFlow(K["chat-handler-flow"]);try{l().writeStatusSnapshot(On(n,An(v().graph)));}catch{}return X()}catch(h){return Z(h)}}function y(S){try{let h=l().readStatusSnapshot();if(!h){h=On(n,An(v().graph));try{l().writeStatusSnapshot(h);}catch{}}return X(h)}catch(h){return Z(h)}}function _(S){try{let h=S.params?.id;return h?(p({type:"task-removal",taskName:h,timestamp:Ee()}),g(),X()):j("removeCard requires params.id")}catch(h){return Z(h)}}function w(S){try{let h=S.params?.id;return h?(p({type:"task-restart",taskName:h,timestamp:Ee()}),g(),X()):j("retrigger requires params.id")}catch(h){return Z(h)}}async function $(S){return g()}function R(S){try{let h=S.params?.cardId,C=S.params?.all,A=!!S.params?.restart;if(!h&&!C)return j("upsertCard requires --card-id <id> or --all");let K=C?d().readAllCards().map(ee=>ee.id):[h];for(let ee of K)if(!d().readCard(ee))return j(`Card "${ee}" not found in board at ${t.value}`);for(let ee of K){let _e=d().readCard(ee),Re=Cc(_e),Qe=e.hashFn(Re),Ce=e.kvStorage("card-upsert"),mt=Ce.read(ee),gt=mt?.taskConfigHash!==Qe;if(!(!gt&&!A)){if(gt){let It=mt?.blobRef??d().readCardKey(ee)??ee;p({type:"task-upsert",taskName:ee,taskConfig:Re,timestamp:Ee()}),Ce.write(ee,{blobRef:It,taskConfigHash:Qe,updatedAt:Ee()});}A&&p({type:"task-restart",taskName:ee,timestamp:Ee()});}}return g(),X()}catch(h){return Z(h)}}function E(S){try{let h=S.params?.token;if(!h)return j("taskFailed requires params.token");let C=S.params?.error??"unknown error",A=Nn(h);return A?(p({type:"task-failed",taskName:A.taskName,error:C,timestamp:Ee()}),g(),X()):j("Invalid callback token")}catch(h){return Z(h)}}function N(S){try{let h=S.params?.token;if(!h)return j("taskProgress requires params.token");let A=(S.body??{}).update??{},K=Nn(h);return K?(p({type:"task-progress",taskName:K.taskName,update:A,timestamp:Ee()}),g(),X()):j("Invalid callback token")}catch(h){return Z(h)}}function D(S){try{let h=S.params?.token,C=S.params?.ref;if(!h)return j("sourceDataFetched requires params.token");if(!C)return j("sourceDataFetched requires params.ref");let A=$c(h);if(!A)return j("Invalid source token");let{cbk:K,cid:ee,b:_e,d:Re,cs:Qe,rqt:Ce}=A,mt=Lo(e.blobStorage("sources"),ht=>e.resolveBlob(ht)),gt=e.genId();mt.ingestSourceDataStaged(ee,Re,xe(C),gt);let It=Nn(K);if(!It)return j("Invalid callback token embedded in source token");let Pt=Ee();return p({type:"task-progress",taskName:It.taskName,update:{bindTo:_e,outputFile:Re,fetchedAt:Pt,deliveryToken:gt,sourceChecksum:Qe,rqt:Ce},timestamp:Pt}),g(),X()}catch(h){return Z(h)}}function M(S){try{let h=S.params?.token,C=S.params?.reason??"unknown";if(!h)return j("sourceDataFetchFailure requires params.token");let A=$c(h);if(!A)return j("Invalid source token");let{cbk:K,b:ee,d:_e,cs:Re,rqt:Qe}=A,Ce=Nn(K);return Ce?(p({type:"task-progress",taskName:Ce.taskName,update:{bindTo:ee,outputFile:_e,failure:!0,reason:C,sourceChecksum:Re,rqt:Qe},timestamp:Ee()}),g(),X()):j("Invalid callback token embedded in source token")}catch(h){return Z(h)}}function te(S){try{let h=i().readCardStoreRef();return h?X({storeRef:h}):j(`Board at ${t.value} has no card store configured`)}catch(h){return Z(h)}}function U(S){try{let h=i().readOutputsStoreRef();return h?X({storeRef:h}):j(`Board at ${t.value} has no outputs store configured`)}catch(h){return Z(h)}}function le(S){try{let h=S.params?.key;if(!h)return j("getConfig requires params.key");let C=i(),A;switch(h){case "task-executor":A=C.readTaskExecutorRef()??null;break;case "chat-handler-flow":A=C.readChatHandlerFlow()??null;break;case "card-store-ref":A=C.readCardStoreRef();break;case "outputs-store-ref":A=C.readOutputsStoreRef();break;default:return j(`getConfig: unknown key "${h}"`)}return X({value:A})}catch(h){return Z(h)}}function Xe(S){try{let h=S.params?.key;if(!h)return j("getOutputsDataObject requires params.key");let C=l().readDataObject(h);return X(C)}catch(h){return Z(h)}}function Me(S){try{return X(l().readAllDataObjects())}catch(h){return Z(h)}}function Zt(S){try{let h=S.params?.key;if(!h)return j("getOutputsComputedValues requires params.key");let C=l().readComputedValues(h);return X(C)}catch(h){return Z(h)}}function q(S){try{return X(l().readAllComputedValues())}catch(h){return Z(h)}}return {init:f,status:y,getCardStoreRef:te,getOutputsStoreRef:U,getConfig:le,getOutputsDataObject:Xe,getAllOutputsDataObjects:Me,getOutputsComputedValues:Zt,getAllOutputsComputedValues:q,removeCard:_,retrigger:w,processAccumulatedEvents:$,upsertCard:R,taskFailed:E,taskProgress:N,sourceDataFetched:D,sourceDataFetchFailure:M}}function pt(t,e){let r=()=>Vo(e.kvStorage("config"));function n(){let g=r().readCardStoreRef();if(!g)throw new Error(`Board at ${t.value} has no card store configured. Run: init --base-ref <ref> --store-ref <b64-ref>`);let f=e.kvStorageForRef(g);return {readIndex(){return f.read("_index")},writeIndex(y){f.write("_index",y);},readCard(y){return f.read(y)},writeCard(y,_){return f.write(y,_),e.hashFn(_)},cardExists(y){return f.read(y)!==null},defaultCardKey(y){return y}}}let s=()=>Pn(n(),e.onWarn??(()=>{}));function o(g,f){let y=e.validateSchema(f),_=[],w=r().readTaskExecutorRef();if(w&&Array.isArray(f.source_defs))for(let R of f.source_defs){let E=typeof R.bindTo=="string"?R.bindTo:"(unknown)";try{let N;try{N=e.invokeExecutorSync(w,"validate-source-def",[],{timeout:e.executorTimeouts?.validationMs??1e4,input:JSON.stringify(R)});}catch(M){let te=M;if(N=typeof te?.stdout=="string"?te.stdout:"",!N.trim()){_.push(`source "${E}": executor validate-source-def failed \u2014 ${M instanceof Error?M.message:String(M)}`);continue}}let D=JSON.parse(N.trim());if(!D.ok&&Array.isArray(D.errors))for(let M of D.errors)_.push(`source "${E}": ${M}`);}catch(N){_.push(`source "${E}": executor validate-source-def failed \u2014 ${N instanceof Error?N.message:String(N)}`);}}let $=[...y.errors,..._];return X({cardId:g,isValid:$.length===0,issues:$})}function a(g,f,y){let _=r().readTaskExecutorRef();if(!_)return j("No task-executor registered for this board");let w=typeof g.bindTo=="string"?g.bindTo:"source",$=e.makeTempFilePath(`probe-in-${w}`),R=e.makeTempFilePath(`probe-out-${w}`),E=e.makeTempFilePath(`probe-err-${w}`,".txt"),N={...g,boardDir:t.value,_projections:f},D=ae({kind:"fs-path",value:$}),M=ae({kind:"fs-path",value:R}),te=ae({kind:"fs-path",value:E});e.absoluteBlob.write($,JSON.stringify(N,null,2));let U=null;try{if(e.invokeExecutorSync(_,"run-source-fetch",["--in-ref",D,"--out-ref",M,"--err-ref",te],{timeout:g.timeout??e.executorTimeouts?.probeMs??6e4}),U=e.absoluteBlob.read(R),U===null)return j("Executor produced no output file")}catch(le){let Xe=e.absoluteBlob.read(E)?.trim()??(le instanceof Error?le.message:String(le));return j(`Probe failed: ${Xe}`)}finally{try{e.absoluteBlob.remove($);}catch{}try{e.absoluteBlob.remove(E);}catch{}}if(y){let le=xe(y);e.absoluteBlob.write(le.value,U);}else try{e.absoluteBlob.remove(R);}catch{}return X({bindTo:w,resultSizeBytes:U.length})}function i(g){try{let f=g.params?.cardId,y=g.params?.all;if(!f&&!y)return j("validateCard requires --card-id <id> or --all");let _=y?s().readAllCards().map($=>$.id):[f],w=[];for(let $ of _){let R=s().readCard($);if(!R){w.push({cardId:$,isValid:!1,issues:[`Card "${$}" not found`]});continue}let E=o($,R);if(E.status!=="success")return E;w.push(E.data);}return X(w)}catch(f){return Z(f)}}function u(g){try{if(!g.body||typeof g.body!="object"||Array.isArray(g.body))return j("validateCardPreflight requires card JSON object in body");let f=g.body,y=f["card-content"]??f,_=typeof y.id=="string"?y.id:"(unknown)",w=o(_,y),$=r().readTaskExecutorRef();if($)try{let R=e.invokeExecutorSync($,"validate-card-preflight",[],{timeout:e.executorTimeouts?.validationMs??1e4,input:JSON.stringify(y)}),E=JSON.parse(R.trim());if(!E.ok&&Array.isArray(E.errors)&&E.errors.length>0){let N=[...w.status==="success"?w.data.issues:[],...E.errors];return X({cardId:_,isValid:!1,issues:N})}}catch{}return w}catch(f){return Z(f)}}function c(g){try{let f=g.params?.cardId,y=g.params?.sourceIdx,_=g.params?.outRef;if(!f)return j("probeSource requires params.cardId");if(y===void 0)return j("probeSource requires params.sourceIdx");let $=(g.body??{})["mock-projections"]??{},R=s().readCard(f);if(!R)return j(`Card "${f}" not found`);let E=R.source_defs??[];return y<0||y>=E.length?j(`sourceIdx ${y} out of range (card has ${E.length} source(s))`):a(E[y],$,_)}catch(f){return Z(f)}}function d(g){try{let f=g.params?.outRef,y=g.body;if(!y)return j('probeTmpSource requires body with "source-def" and "mock-projections"');let _=y["source-def"],w=y["mock-projections"]??{};return _?a(_,w,f):j('probeTmpSource body requires "source-def"')}catch(f){return Z(f)}}function l(g){try{let f=g.params?.sourceIdx,y=g.params?.outRef;if(f===void 0)return j("probeSourcePreflight requires params.sourceIdx");if(!g.body||typeof g.body!="object"||Array.isArray(g.body))return j("probeSourcePreflight requires card JSON object in body");let _=g.body,w=_["card-content"]??_,$=_["mock-projections"]??{},R=w.source_defs??[];if(f<0||f>=R.length)return j(`sourceIdx ${f} out of range (card has ${R.length} source(s))`);let E=R[f],N=r().readTaskExecutorRef();if(N){let D=typeof E.bindTo=="string"?E.bindTo:"source";try{let M={...E,_projections:$},te=e.invokeExecutorSync(N,"probe-source-preflight",[],{timeout:E.timeout??e.executorTimeouts?.preflightMs??6e4,input:JSON.stringify(M)}),U=JSON.parse(te.trim());return U.ok?X({bindTo:D,reachable:U.reachable,latencyMs:U.latencyMs,note:U.note}):j(U.error??"Preflight probe failed")}catch{}}return a(E,$,y)}catch(f){return Z(f)}}function k(g){try{let f=r().readTaskExecutorRef();if(!f)return j("No task-executor registered for this board");let y=e.invokeExecutorSync(f,"describe-capabilities",[],{timeout:e.executorTimeouts?.describeMs??1e4});return X(JSON.parse(y.trim()))}catch(f){return Z(f)}}function v(g){try{let f=g.body;if(!f||!Array.isArray(f.ops))return j("updatesInCardStore requires body.ops array");let y=f.ops,_=s();for(let w of y){let $=w.op,R=w.id;if(!R)return j('op is missing "id"');if($==="update"){let E=w["card-content"];if(!E)return j(`update op for "${R}" is missing "card-content"`);_.writeCard(R,E);}else return j(`Unknown op type: "${$??"(none)"}"`)}return X()}catch(f){return Z(f)}}function m(g){try{let f=g.body;if(!f||!Array.isArray(f.ids))return j("readFromCardStore requires body.ids array");let y=f.ids,_=s(),w=y.map($=>({id:$,"card-content":_.readCard($)}));return X({cards:w})}catch(f){return Z(f)}}function p(g){try{if(!g.body||typeof g.body!="object"||Array.isArray(g.body))return j("evalCardCompute requires a JSON object in body");let f=g.body,y=f["card-content"]??f,_=typeof y.id=="string"?y.id:"(unknown)",w=f["mock-fetched-sources"]??{},$=f["mock-requires"]??{},R=y.compute;if(!R||!Array.isArray(R)||R.length===0)return X({cardId:_,ok:!0,computed_values:{},errors:[]});let E={id:_,card_data:y.card_data??{},requires:$,source_defs:y.source_defs,compute:R},N=lt.runSync(E,{sourcesData:w}),D=N.node.computed_values??{},M=N.errors??[];return X({cardId:_,ok:M.length===0,computed_values:D,errors:M})}catch(f){return Z(f)}}function b(g){try{if(!g.body||typeof g.body!="object"||Array.isArray(g.body))return j("simulateCardCycle requires a JSON object in body");let f=g.body,y=f["card-content"]??f,_=typeof y.id=="string"?y.id:"(unknown)",w=f["mock-fetched-sources"]??{},$=f["mock-requires"]??{},R=o(_,y),E=R.status==="success"?{isValid:R.data.isValid,issues:R.data.issues}:{isValid:!1,issues:[R.status==="fail"?R.error:"internal error"]},N=y.source_defs??[],D=y.card_data??{},M=[],te=[];if(N.length>0){M=lt.enrichSourcesSync(N,{card_data:D,requires:$});for(let h of M){let C=h.projections,A=h._projections;if(C&&A){for(let K of Object.keys(C))if(A[K]===void 0){let ee=typeof h.bindTo=="string"?h.bindTo:"(unknown)";te.push({bindTo:ee,key:K,error:`Projection "${K}" resolved to undefined`});}}}}let U=[],le=f["task-executor-ref"],Xe=(le?.howToRun&&le?.whatToRun?le:void 0)??r().readTaskExecutorRef();for(let h=0;h<M.length;h++){let C=M[h],A=typeof C.bindTo=="string"?C.bindTo:`source_${h}`;if(!Xe){U.push({bindTo:A,skipped:!0,error:"No task executor configured"});continue}try{let K={...C},ee=e.invokeExecutorSync(Xe,"probe-source-preflight",[],{timeout:C.timeout??e.executorTimeouts?.preflightMs??6e4,input:JSON.stringify(K)}),_e=JSON.parse(ee.trim());U.push({bindTo:A,reachable:_e.reachable,latencyMs:_e.latencyMs,error:_e.ok?void 0:_e.error});}catch{U.push({bindTo:A,skipped:!0,error:"Executor does not support probe-source-preflight"});}}let Me=y.compute,Zt={},q=[];if(Me&&Array.isArray(Me)&&Me.length>0){let h={id:_,card_data:D,requires:$,source_defs:y.source_defs,compute:Me},C=lt.runSync(h,{sourcesData:w});Zt=C.node.computed_values??{},q=C.errors??[];}let S=E.isValid&&te.length===0&&q.length===0&&U.every(h=>h.reachable!==!1);return X({cardId:_,ok:S,validation:E,source_probes:U,projection_errors:te,computed_values:Zt,compute_errors:q})}catch(f){return Z(f)}}return {validateCard:i,validateCardPreflight:u,probeSource:c,probeTmpSource:d,probeSourcePreflight:l,evalCardCompute:p,simulateCardCycle:b,describeTaskExecutorCapabilities:k,updatesInCardStore:v,readFromCardStore:m}}var _h=".board.lock";function Rh(t,e){return typeof t=="string"?{cliDir:t,opts:e}:{cliDir:void 0,opts:t}}function Ch(t,e){return typeof t=="string"?{cliDir:t,opts:e}:{cliDir:void 0,opts:t}}function xc(t){if(t)return t;let e=Br(import.meta.url),r=[e,Nt(e,"..","cli","node"),Nt(e,"..","..","cli","node")];for(let n of r)try{return Bn(n),n}catch{}throw new Error(`createFsBoardPlatformAdapter: could not resolve a public CLI directory from module dir ${e}`)}function qr(t,e,r){let{cliDir:n,opts:s}=Rh(e,r),o=xc(n),a=t.value,u={meta:"board-live-cards",howToRun:"local-node",whatToRun:(s?.suppressSpawn?"":Bn(o))?ae({kind:"yaml-flow-cli",value:"board-live-cards-cli.js"}):"",...s?.notifyChannel?{extra:{notifyChannel:s.notifyChannel}}:{}};return {kvStorage:c=>zn(Nt(a,`.${c}`)),blobStorage:c=>c?Ur(Nt(a,c)):Ur(a),journalAdapter:()=>fa(a),lock:pa(Nt(a,_h)),selfRef:u,async dispatchExecution(c,d){if(s?.suppressSpawn)return {dispatched:false};try{let l=d.source_def?.bindTo??Mn().slice(0,8),k=tr(a,`exec-in-${l}`),v=tr(a,`exec-out-${l}`),m=tr(a,`exec-err-${l}`,".txt"),p=ae({kind:"fs-path",value:k}),b=ae({kind:"fs-path",value:v}),g=ae({kind:"fs-path",value:m});return da({kind:"fs-path",value:k}).write(k,JSON.stringify(d,null,2)),ca(c,{subcommand:"run-source-fetch",inRef:p,outRef:b,errRef:g},o),{dispatched:!0}}catch(l){return {dispatched:false,error:l instanceof Error?l.message:String(l)}}},resolveBlob(c){let d=Qo(c.value)?Jn().read(c.value):Ur(a).read(c.value);if(d===null)throw new Error(`resolveBlob: blob not found: ::${c.kind}::${c.value}`);return d},hashFn:la,genId:()=>Zo(`${Date.now()}-${Math.random()}`).slice(0,32),kvStorageForRef:c=>zn(xe(c).value),requestProcessAccumulated(){s?.suppressSpawn||ra(o,t,s?.notifyChannel);},publishBoardChangeNotifications(c){if(!s?.notifyChannel||c.length===0)return;let d=c.map(l=>({id:Mn(),ts:new Date().toISOString(),boardRef:ae(t),notification:l}));na(s.notifyChannel,d,s.onWarn);},onWarn:s?.onWarn}}function Tt(t,e,r){let{cliDir:n,opts:s}=Ch(e,r),o=xc(n),a=qr(t,o,s),i=Gn();return {...a,invokeExecutorSync(u,c,d,l){let{command:k,baseArgs:v}=Kn(u,o),m=u.extra?["--extra",Buffer.from(JSON.stringify(u.extra)).toString("base64")]:[];return i.executeSync(k,[...v,c,...d,...m],{timeout:l?.timeout??3e4,encoding:"utf-8",input:l?.input})},validateSchema(u){let c=jo(u);return {ok:c.errors.length===0,errors:c.errors}},makeTempFilePath(u,c){return tr(t.value,u,c)},absoluteBlob:Jn()}}function Bo(t){try{let e=JSON.parse(Buffer.from(t,"base64url").toString());return typeof e.br=="string"?e.br:null}catch{return null}}var We=Br(import.meta.url);function ge(t,e,r){let n=t.indexOf(e),s=n!==-1?t[n+1]:void 0;if(!s)throw new Error(`Missing ${e}
|
|
14
|
+
Usage: ${r}`);return s}function Ye(t,e){let r=t.indexOf(e);return r!==-1?t[r+1]:void 0}function se(t){console.log(JSON.stringify(t,null,2));}async function At(){if(process.stdin.isTTY)return;let t=[];for await(let r of process.stdin)t.push(Buffer.isBuffer(r)?r:Buffer.from(r));let e=Buffer.concat(t).toString("utf-8").trim();if(e)return JSON.parse(e)}async function $h(t){let e=t[0],r=t.slice(1);if(e==="help"||e==="--help"||e==="-h"){console.log("board-live-cards \u2014 see board-live-cards-cli-PARAMS.md for command reference");return}let n=Ye(r,"--base-ref"),s=Ye(r,"--notify-channel"),o=n?xe(n):void 0;if(e==="source-data-fetched"){let u=ge(r,"--token","source-data-fetched --token <token> --ref <sourcefile>"),c=ge(r,"--ref","source-data-fetched --token <token> --ref <sourcefile>"),d=Bo(u);if(!d)throw new Error("source-data-fetched: could not decode board ref from token \u2014 is this a valid source token?");let l=xe(d),k=Nr(l,qr(l,We,{onWarn:console.warn,notifyChannel:s}));se(k.sourceDataFetched({params:{token:u,ref:c}}));return}if(e==="source-data-fetch-failure"){let u=ge(r,"--token","source-data-fetch-failure --token <token> [--reason <message>]"),c=Bo(u);if(!c)throw new Error("source-data-fetch-failure: could not decode board ref from token \u2014 is this a valid source token?");let d=xe(c),l=Nr(d,qr(d,We,{onWarn:console.warn,notifyChannel:s})),k={token:u},v=Ye(r,"--reason");v&&(k.reason=v),se(l.sourceDataFetchFailure({params:k}));return}if(e==="validate-card-preflight"){let u=o??{kind:"fs-path",value:et(".")},c=pt(u,Tt(u,We,{onWarn:console.warn})),d=await At();se(c.validateCardPreflight({body:d}));return}if(e==="probe-source-preflight"){let u=ge(r,"--source-idx","probe-source-preflight --source-idx <n>"),c=Ye(r,"--out-ref"),d=o??{kind:"fs-path",value:et(".")},l=pt(d,Tt(d,We,{onWarn:console.warn})),k=await At(),v={sourceIdx:parseInt(u,10)};c&&(v.outRef=c),se(l.probeSourcePreflight({params:v,body:k}));return}if(e==="eval-card-compute"){let u=o??{kind:"fs-path",value:et(".")},c=pt(u,Tt(u,We,{onWarn:console.warn})),d=await At();se(c.evalCardCompute({body:d}));return}if(e==="simulate-card-cycle"){let u=o??{kind:"fs-path",value:et(".")},c=pt(u,Tt(u,We,{onWarn:console.warn})),d=await At();se(c.simulateCardCycle({body:d}));return}if(e==="probe-tmp-source"){let u=ge(r,"--out-ref","probe-tmp-source --out-ref <ref>"),c=o??{kind:"fs-path",value:et(".")},d=pt(c,Tt(c,We,{onWarn:console.warn})),l=await At();se(d.probeTmpSource({params:{outRef:u},body:l}));return}if(!o)throw new Error(`--base-ref is required for command "${e??"(none)"}"`);let a=()=>Nr(o,qr(o,We,{onWarn:console.warn,notifyChannel:s})),i=()=>pt(o,Tt(o,We,{onWarn:console.warn}));switch(e){case "init":{let u=ge(r,"--card-store-ref","init --base-ref <ref> --card-store-ref <b64-ref> --outputs-store-ref <b64-ref>"),c=ge(r,"--outputs-store-ref","init --base-ref <ref> --card-store-ref <b64-ref> --outputs-store-ref <b64-ref>"),d=await At();se(a().init({params:{cardStoreRef:u,outputsStoreRef:c},body:d}));return}case "status":{se(a().status({}));return}case "get-card-store-ref":{se(a().getCardStoreRef({}));return}case "get-outputs-store-ref":{se(a().getOutputsStoreRef({}));return}case "get-outputs":{let u=ge(r,"--type","get-outputs --base-ref <ref> --type <data-object|computed-values> [--key <key>] [--all]"),c=r.includes("--all");if(u==="data-object")if(c)se(a().getAllOutputsDataObjects({}));else {let d=ge(r,"--key","get-outputs --type data-object --base-ref <ref> --key <datakey>");se(a().getOutputsDataObject({params:{key:d}}));}else if(u==="computed-values")if(c)se(a().getAllOutputsComputedValues({}));else {let d=ge(r,"--key","get-outputs --type computed-values --base-ref <ref> --key <card-id>");se(a().getOutputsComputedValues({params:{key:d}}));}else throw new Error(`get-outputs: unknown --type "${u}", expected data-object | computed-values`);return}case "remove-card":{let u=ge(r,"--id","remove-card --base-ref <ref> --id <card-id>");se(a().removeCard({params:{id:u}}));return}case "retrigger":{let u=ge(r,"--id","retrigger --base-ref <ref> --id <card-id>");se(a().retrigger({params:{id:u}}));return}case "process-accumulated-events":{se(await a().processAccumulatedEvents({}));return}case "upsert-card":{let u=Ye(r,"--card-id"),c=r.includes("--all"),d=r.includes("--restart");if(!u&&!c)throw new Error("upsert-card requires --card-id <id> or --all");let l={};u&&(l.cardId=u),c&&(l.all=true),d&&(l.restart=true),se(a().upsertCard({params:l}));return}case "task-failed":{let c={token:ge(r,"--token","task-failed --base-ref <ref> --token <token> [--error <message>]")},d=Ye(r,"--error");d&&(c.error=d),se(a().taskFailed({params:c}));return}case "task-progress":{let u=ge(r,"--token","task-progress --base-ref <ref> --token <token> [--update <json>]"),c=Ye(r,"--update"),d=c?JSON.parse(c):{};se(a().taskProgress({params:{token:u},body:{update:d}}));return}case "validate-card":{let u=Ye(r,"--card-id"),c=r.includes("--all");if(!u&&!c)throw new Error("validate-card requires --card-id <id> or --all");let d={};u&&(d.cardId=u),c&&(d.all=true),se(i().validateCard({params:d}));return}case "probe-source":{let u=ge(r,"--card-id","probe-source --base-ref <ref> --card-id <id> --source-idx <n> --out-ref <ref>"),c=ge(r,"--source-idx","probe-source --base-ref <ref> --card-id <id> --source-idx <n> --out-ref <ref>"),d=Ye(r,"--out-ref"),l=await At(),k={cardId:u,sourceIdx:parseInt(c,10)};d&&(k.outRef=d),se(i().probeSource({params:k,body:l}));return}case "describe-task-executor-capabilities":{se(i().describeTaskExecutorCapabilities({}));return}default:throw new Error(`Unknown command: ${e??"(none)"}`)}}var Eh=process.argv[1]&&et(process.argv[1])===et(new URL(import.meta.url).pathname.replace(/^\/([A-Z]:)/,"$1"));Eh&&$h(process.argv.slice(2)).catch(t=>{let e=t instanceof Error?t.message:String(t);console.error(e),process.exit(1);});export{$h as cli};//# sourceMappingURL=board-live-cards-cli.js.map
|
|
15
15
|
//# sourceMappingURL=board-live-cards-cli.js.map
|