yaml-flow 8.3.0 → 8.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/browser/asset-integrity.json +3 -3
- package/browser/board-livecards-localstorage.js +6 -4
- package/browser/live-cards.js +19 -25
- package/cli/browser-api/board-live-cards-browser-adapter.d.ts +2 -2
- package/cli/browser-api/board-live-cards-browser-adapter.js +3 -2
- package/cli/browser-api/card-store-browser-api.js +1 -1
- package/cli/{execution-interface-CrG5gzAx.d.ts → execution-interface-DCFBy4L8.d.ts} +36 -1
- package/cli/node/artifacts-store-cli.js +5 -5
- package/cli/node/batch-runner-cli.js +2 -2
- package/cli/node/board-live-cards-cli.js +15 -9
- package/cli/node/card-store-cli.js +6 -6
- package/cli/node/chat-store-cli.js +7 -7
- package/cli/node/execution-adapter.d.ts +1 -1
- package/cli/node/execution-adapter.js +2 -2
- package/cli/node/fs-board-adapter.d.ts +72 -73
- package/cli/node/fs-board-adapter.js +14 -10
- package/cli/node/step-machine-cli.js +3 -3
- package/cli/{types-PUfPBxc_.d.ts → types-Dc2VRMUw.d.ts} +24 -16
- package/examples/board/demo-shell-with-server.html +2 -2
- package/examples/board/doc.html +2 -2
- package/examples/board/server/board-server.js +10 -1
- package/examples/board-local/demo-shell-localstorage.html +3 -3
- package/lib/{artifacts-store-lib-public-ksGIExhc.d.ts → artifacts-store-lib-454TAuov.d.ts} +2 -32
- package/lib/{artifacts-store-lib-public-Cz8-kdXG.d.cts → artifacts-store-lib-zsGFbBV8.d.cts} +2 -32
- package/lib/artifacts-store-public.d.cts +34 -3
- package/lib/artifacts-store-public.d.ts +34 -3
- package/lib/board-live-cards-node.cjs +14 -10
- package/lib/board-live-cards-node.d.cts +24 -23
- package/lib/board-live-cards-node.d.ts +24 -23
- package/lib/board-live-cards-node.js +14 -10
- package/lib/{board-live-cards-public-BwZYGAsF.d.cts → board-live-cards-public-BM6jCEIa.d.cts} +24 -4
- package/lib/{board-live-cards-public-DWpZVDXN.d.ts → board-live-cards-public-Bz07XKRK.d.ts} +24 -4
- package/lib/board-live-cards-public.cjs +2 -2
- package/lib/board-live-cards-public.d.cts +2 -2
- package/lib/board-live-cards-public.d.ts +2 -2
- package/lib/board-live-cards-public.js +2 -2
- package/lib/board-live-cards-server-runtime.cjs +4 -4
- package/lib/board-live-cards-server-runtime.d.cts +5 -4
- package/lib/board-live-cards-server-runtime.d.ts +5 -4
- package/lib/board-live-cards-server-runtime.js +4 -4
- package/lib/card-store-public.d.cts +2 -2
- package/lib/card-store-public.d.ts +2 -2
- package/lib/{chat-storage-lib-BK5Njslc.d.ts → chat-storage-lib-DGaKrjVe.d.ts} +1 -1
- package/lib/{chat-storage-lib-C5bQ7bGe.d.cts → chat-storage-lib-OX0Q_Ttf.d.cts} +1 -1
- package/lib/chat-store-public.d.cts +3 -3
- package/lib/chat-store-public.d.ts +3 -3
- package/lib/execution-refs.cjs +1 -1
- package/lib/execution-refs.js +1 -1
- package/lib/index.d.cts +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/server-runtime/index.cjs +4 -4
- package/lib/server-runtime/index.d.cts +6 -5
- package/lib/server-runtime/index.d.ts +6 -5
- package/lib/server-runtime/index.js +4 -4
- package/lib/step-machine-public/index.cjs +3 -3
- package/lib/step-machine-public/index.d.cts +1 -1
- package/lib/step-machine-public/index.d.ts +1 -1
- package/lib/step-machine-public/index.js +3 -3
- package/lib/{storage-interface-B6ecOulj.d.cts → storage-interface-B-7pDHwD.d.cts} +36 -1
- package/lib/{storage-interface-B6ecOulj.d.ts → storage-interface-B-7pDHwD.d.ts} +36 -1
- package/lib/stores/index.d.cts +1 -1
- package/lib/stores/index.d.ts +1 -1
- package/lib/stores/kv.d.cts +1 -1
- package/lib/stores/kv.d.ts +1 -1
- package/lib/{types-DNYhCFNJ.d.ts → types-Cn0b8G-i.d.ts} +15 -15
- package/lib/{types-D9B0Vrwg.d.cts → types-Dszjwfud.d.cts} +15 -15
- package/package.json +1 -1
|
@@ -1,16 +1,20 @@
|
|
|
1
|
-
import {spawnSync,spawn,execFile,execFileSync}from'child_process';import*as T from'fs';import {existsSync}from'fs';import*as Pn from'os';import*as ie from'path';import {dirname,resolve}from'path';import*as Uo from'net';import {fileURLToPath}from'url';import {createHash,randomUUID}from'crypto';import {createRequire}from'module';import {lockSync}from'proper-lockfile';import Hg from'ajv-formats';var qc=Object.create;var Vo=Object.defineProperty;var Dc=Object.getOwnPropertyDescriptor;var Fc=Object.getOwnPropertyNames;var Mc=Object.getPrototypeOf,Lc=Object.prototype.hasOwnProperty;var x=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Vc=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of Fc(t))!Lc.call(e,s)&&s!==r&&Vo(e,s,{get:()=>t[s],enumerable:!(n=Dc(t,s))||n.enumerable});return e};var Bc=(e,t,r)=>(r=e!=null?qc(Mc(e)):{},Vc(Vo(r,"default",{value:e,enumerable:true}),e));var Zt=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 Xt=class{};W._CodeOrName=Xt;W.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var yt=class extends Xt{constructor(t){if(super(),!W.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t;}toString(){return this.str}emptyStr(){return false}get names(){return {[this.str]:1}}};W.Name=yt;var Ee=class extends Xt{constructor(t){super(),this._items=typeof t=="string"?[t]:t;}toString(){return this.str}emptyStr(){if(this._items.length>1)return false;let t=this._items[0];return t===""||t==='""'}get str(){var t;return (t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var t;return (t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,n)=>(n instanceof yt&&(r[n.str]=(r[n.str]||0)+1),r),{})}};W._Code=Ee;W.nil=new Ee("");function ga(e,...t){let r=[e[0]],n=0;for(;n<t.length;)Gn(r,t[n]),r.push(e[++n]);return new Ee(r)}W._=ga;var Bn=new Ee("+");function ha(e,...t){let r=[Qt(e[0])],n=0;for(;n<t.length;)r.push(Bn),Gn(r,t[n]),r.push(Bn,Qt(e[++n]));return bd(r),new Ee(r)}W.str=ha;function Gn(e,t){t instanceof Ee?e.push(...t._items):t instanceof yt?e.push(t):e.push(Rd(t));}W.addCodeArg=Gn;function bd(e){let t=1;for(;t<e.length-1;){if(e[t]===Bn){let r=Sd(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+";}t++;}}function Sd(e,t){if(t==='""')return e;if(e==='""')return t;if(typeof e=="string")return t instanceof yt||e[e.length-1]!=='"'?void 0:typeof t!="string"?`${e.slice(0,-1)}${t}"`:t[0]==='"'?e.slice(0,-1)+t.slice(1):void 0;if(typeof t=="string"&&t[0]==='"'&&!(e instanceof yt))return `"${e}${t.slice(1)}`}function _d(e,t){return t.emptyStr()?e:e.emptyStr()?t:ha`${e}${t}`}W.strConcat=_d;function Rd(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:Qt(Array.isArray(e)?e.join(","):e)}function Cd(e){return new Ee(Qt(e))}W.stringify=Cd;function Qt(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}W.safeStringify=Qt;function $d(e){return typeof e=="string"&&W.IDENTIFIER.test(e)?new Ee(`.${e}`):ga`[${e}]`}W.getProperty=$d;function Ed(e){if(typeof e=="string"&&W.IDENTIFIER.test(e))return new Ee(`${e}`);throw new Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}W.getEsmExportName=Ed;function xd(e){return new Ee(e.toString())}W.regexpCode=xd;});var Jn=x(ve=>{Object.defineProperty(ve,"__esModule",{value:true});ve.ValueScope=ve.ValueScopeName=ve.Scope=ve.varKinds=ve.UsedValueState=void 0;var ye=Zt(),Kn=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value;}},Lr;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed";})(Lr||(ve.UsedValueState=Lr={}));ve.varKinds={const:new ye.Name("const"),let:new ye.Name("let"),var:new ye.Name("var")};var Vr=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r;}toName(t){return t instanceof ye.Name?t:this.name(t)}name(t){return new ye.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return `${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};ve.Scope=Vr;var Br=class extends ye.Name{constructor(t,r){super(r),this.prefix=t;}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0, ye._)`.${new ye.Name(r)}[${n}]`;}};ve.ValueScopeName=Br;var Td=(0, ye._)`\n`,Un=class extends Vr{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?Td:ye.nil};}get(){return this._scope}name(t){return new Br(t,this._newName(t))}value(t,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(t),{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(t,r){let n=this._values[t];if(n)return n.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return (0, ye._)`${t}${n.scopePath}`})}scopeCode(t=this._values,r,n){return this._reduceValues(t,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(t,r,n={},s){let o=ye.nil;for(let a in t){let i=t[a];if(!i)continue;let u=n[a]=n[a]||new Map;i.forEach(c=>{if(u.has(c))return;u.set(c,Lr.Started);let d=r(c);if(d){let l=this.opts.es5?ve.varKinds.var:ve.varKinds.const;o=(0, ye._)`${o}${l} ${c} = ${d};${this.opts._n}`;}else if(d=s?.(c))o=(0, ye._)`${o}${d}${this.opts._n}`;else throw new Kn(c);u.set(c,Lr.Completed);});}return o}};ve.ValueScope=Un;});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=Zt(),Oe=Jn(),tt=Zt();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 Jr=Jn();Object.defineProperty(V,"Scope",{enumerable:true,get:function(){return Jr.Scope}});Object.defineProperty(V,"ValueScope",{enumerable:true,get:function(){return Jr.ValueScope}});Object.defineProperty(V,"ValueScopeName",{enumerable:true,get:function(){return Jr.ValueScopeName}});Object.defineProperty(V,"varKinds",{enumerable:true,get:function(){return Jr.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 Be=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},zn=class extends Be{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n;}render({es5:t,_n:r}){let n=t?Oe.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return `${n} ${this.name}${s};`+r}optimizeNames(t,r){if(t[this.name.str])return this.rhs&&(this.rhs=Ot(this.rhs,t,r)),this}get names(){return this.rhs instanceof J._CodeOrName?this.rhs.names:{}}},Gr=class extends Be{constructor(t,r,n){super(),this.lhs=t,this.rhs=r,this.sideEffects=n;}render({_n:t}){return `${this.lhs} = ${this.rhs};`+t}optimizeNames(t,r){if(!(this.lhs instanceof J.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=Ot(this.rhs,t,r),this}get names(){let t=this.lhs instanceof J.Name?{}:{...this.lhs.names};return Ur(t,this.rhs)}},Hn=class extends Gr{constructor(t,r,n,s){super(t,n,s),this.op=r;}render({_n:t}){return `${this.lhs} ${this.op}= ${this.rhs};`+t}},Wn=class extends Be{constructor(t){super(),this.label=t,this.names={};}render({_n:t}){return `${this.label}:`+t}},Yn=class extends Be{constructor(t){super(),this.label=t,this.names={};}render({_n:t}){return `break${this.label?` ${this.label}`:""};`+t}},Xn=class extends Be{constructor(t){super(),this.error=t;}render({_n:t}){return `throw ${this.error};`+t}get names(){return this.error.names}},Qn=class extends Be{constructor(t){super(),this.code=t;}render({_n:t}){return `${this.code};`+t}optimizeNodes(){return `${this.code}`?this:void 0}optimizeNames(t,r){return this.code=Ot(this.code,t,r),this}get names(){return this.code instanceof J._CodeOrName?this.code.names:{}}},er=class extends Be{constructor(t=[]){super(),this.nodes=t;}render(t){return this.nodes.reduce((r,n)=>r+n.render(t),"")}optimizeNodes(){let{nodes:t}=this,r=t.length;for(;r--;){let n=t[r].optimizeNodes();Array.isArray(n)?t.splice(r,1,...n):n?t[r]=n:t.splice(r,1);}return t.length>0?this:void 0}optimizeNames(t,r){let{nodes:n}=this,s=n.length;for(;s--;){let o=n[s];o.optimizeNames(t,r)||(Ad(t,o.names),n.splice(s,1));}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>wt(t,r.names),{})}},Ge=class extends er{render(t){return "{"+t._n+super.render(t)+"}"+t._n}},Zn=class extends er{},Pt=class extends Ge{};Pt.kind="else";var vt=class e extends Ge{constructor(t,r){super(r),this.condition=t;}render(t){let r=`if(${this.condition})`+super.render(t);return this.else&&(r+="else "+this.else.render(t)),r}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===true)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new Pt(n):n;}if(r)return t===false?r instanceof e?r:r.nodes:this.nodes.length?this:new e(ya(t),r instanceof e?[r]:r.nodes);if(!(t===false||!this.nodes.length))return this}optimizeNames(t,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(t,r),!!(super.optimizeNames(t,r)||this.else))return this.condition=Ot(this.condition,t,r),this}get names(){let t=super.names;return Ur(t,this.condition),this.else&&wt(t,this.else.names),t}};vt.kind="if";var kt=class extends Ge{};kt.kind="for";var es=class extends kt{constructor(t){super(),this.iteration=t;}render(t){return `for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=Ot(this.iteration,t,r),this}get names(){return wt(super.names,this.iteration.names)}},ts=class extends kt{constructor(t,r,n,s){super(),this.varKind=t,this.name=r,this.from=n,this.to=s;}render(t){let r=t.es5?Oe.varKinds.var:this.varKind,{name:n,from:s,to:o}=this;return `for(${r} ${n}=${s}; ${n}<${o}; ${n}++)`+super.render(t)}get names(){let t=Ur(super.names,this.from);return Ur(t,this.to)}},Kr=class extends kt{constructor(t,r,n,s){super(),this.loop=t,this.varKind=r,this.name=n,this.iterable=s;}render(t){return `for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iterable=Ot(this.iterable,t,r),this}get names(){return wt(super.names,this.iterable.names)}},tr=class extends Ge{constructor(t,r,n){super(),this.name=t,this.args=r,this.async=n;}render(t){return `${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}};tr.kind="func";var rr=class extends er{render(t){return "return "+super.render(t)}};rr.kind="return";var rs=class extends Ge{render(t){let r="try"+super.render(t);return this.catch&&(r+=this.catch.render(t)),this.finally&&(r+=this.finally.render(t)),r}optimizeNodes(){var t,r;return super.optimizeNodes(),(t=this.catch)===null||t===void 0||t.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(t,r){var n,s;return super.optimizeNames(t,r),(n=this.catch)===null||n===void 0||n.optimizeNames(t,r),(s=this.finally)===null||s===void 0||s.optimizeNames(t,r),this}get names(){let t=super.names;return this.catch&&wt(t,this.catch.names),this.finally&&wt(t,this.finally.names),t}},nr=class extends Ge{constructor(t){super(),this.error=t;}render(t){return `catch(${this.error})`+super.render(t)}};nr.kind="catch";var sr=class extends Ge{render(t){return "finally"+super.render(t)}};sr.kind="finally";var ns=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
2
|
-
`:""},this._extScope=t,this._scope=new Oe.Scope({parent:t}),this._nodes=[new Zn];}toString(){return this._root.render(this.opts)}name(t){return this._scope.name(t)}scopeName(t){return this._extScope.name(t)}scopeValue(t,r){let n=this._extScope.value(t,r);return (this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(t,r){return this._extScope.getValue(t,r)}scopeRefs(t){return this._extScope.scopeRefs(t,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(t,r,n,s){let o=this._scope.toName(r);return n!==void 0&&s&&(this._constants[o.str]=n),this._leafNode(new zn(t,o,n)),o}const(t,r,n){return this._def(Oe.varKinds.const,t,r,n)}let(t,r,n){return this._def(Oe.varKinds.let,t,r,n)}var(t,r,n){return this._def(Oe.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new Gr(t,r,n))}add(t,r){return this._leafNode(new Hn(t,V.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==J.nil&&this._leafNode(new Qn(t)),this}object(...t){let r=["{"];for(let[n,s]of t)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(t,r,n){if(this._blockNode(new vt(t)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(t){return this._elseNode(new vt(t))}else(){return this._elseNode(new Pt)}endIf(){return this._endBlockNode(vt,Pt)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new es(t),r)}forRange(t,r,n,s,o=this.opts.es5?Oe.varKinds.var:Oe.varKinds.let){let a=this._scope.toName(t);return this._for(new ts(o,a,r,n),()=>s(a))}forOf(t,r,n,s=Oe.varKinds.const){let o=this._scope.toName(t);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 Kr("of",s,o,r),()=>n(o))}forIn(t,r,n,s=this.opts.es5?Oe.varKinds.var:Oe.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0, J._)`Object.keys(${r})`,n);let o=this._scope.toName(t);return this._for(new Kr("in",s,o,r),()=>n(o))}endFor(){return this._endBlockNode(kt)}label(t){return this._leafNode(new Wn(t))}break(t){return this._leafNode(new Yn(t))}return(t){let r=new rr;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(rr)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new rs;if(this._blockNode(s),this.code(t),r){let o=this.name("e");this._currNode=s.catch=new nr(o),r(o);}return n&&(this._currNode=s.finally=new sr,this.code(n)),this._endBlockNode(nr,sr)}throw(t){return this._leafNode(new Xn(t))}block(t,r){return this._blockStarts.push(this._nodes.length),t&&this.code(t).endBlock(r),this}endBlock(t){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||t!==void 0&&n!==t)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${t} expected`);return this._nodes.length=r,this}func(t,r=J.nil,n,s){return this._blockNode(new tr(t,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(tr)}optimize(t=1){for(;t-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants);}_leafNode(t){return this._currNode.nodes.push(t),this}_blockNode(t){this._currNode.nodes.push(t),this._nodes.push(t);}_endBlockNode(t,r){let n=this._currNode;if(n instanceof t||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${t.kind}/${r.kind}`:t.kind}"`)}_elseNode(t){let r=this._currNode;if(!(r instanceof vt))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=t,this}get _root(){return this._nodes[0]}get _currNode(){let t=this._nodes;return t[t.length-1]}set _currNode(t){let r=this._nodes;r[r.length-1]=t;}};V.CodeGen=ns;function wt(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function Ur(e,t){return t instanceof J._CodeOrName?wt(e,t.names):e}function Ot(e,t,r){if(e instanceof J.Name)return n(e);if(!s(e))return e;return new J._Code(e._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||t[o.str]!==1?o:(delete t[o.str],a)}function s(o){return o instanceof J._Code&&o._items.some(a=>a instanceof J.Name&&t[a.str]===1&&r[a.str]!==void 0)}}function Ad(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0);}function ya(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0, J._)`!${ss(e)}`}V.not=ya;var Id=va(V.operators.AND);function Pd(...e){return e.reduce(Id)}V.and=Pd;var Od=va(V.operators.OR);function jd(...e){return e.reduce(Od)}V.or=jd;function va(e){return (t,r)=>t===J.nil?r:r===J.nil?t:(0, J._)`${ss(t)} ${e} ${ss(r)}`}function ss(e){return e instanceof J.Name?e:(0, J._)`(${e})`}});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(),Nd=Zt();function qd(e){let t={};for(let r of e)t[r]=true;return t}G.toHash=qd;function Dd(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?true:(ba(e,t),!Sa(t,e.self.RULES.all))}G.alwaysValidSchema=Dd;function ba(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema||typeof t=="boolean")return;let s=n.RULES.keywords;for(let o in t)s[o]||Ca(e,`unknown keyword: "${o}"`);}G.checkUnknownRules=ba;function Sa(e,t){if(typeof e=="boolean")return !e;for(let r in e)if(t[r])return true;return false}G.schemaHasRules=Sa;function Fd(e,t){if(typeof e=="boolean")return !e;for(let r in e)if(r!=="$ref"&&t.all[r])return true;return false}G.schemaHasRulesButRef=Fd;function Md({topSchemaRef:e,schemaPath:t},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._)`${e}${t}${(0, Q.getProperty)(n)}`}G.schemaRefOrVal=Md;function Ld(e){return _a(decodeURIComponent(e))}G.unescapeFragment=Ld;function Vd(e){return encodeURIComponent(as(e))}G.escapeFragment=Vd;function as(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}G.escapeJsonPointer=as;function _a(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}G.unescapeJsonPointer=_a;function Bd(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e);}G.eachItem=Bd;function ka({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return (s,o,a,i)=>{let u=a===void 0?o:a instanceof Q.Name?(o instanceof Q.Name?e(s,o,a):t(s,o,a),a):o instanceof Q.Name?(t(s,a,o),o):r(o,a);return i===Q.Name&&!(u instanceof Q.Name)?n(s,u):u}}G.mergeEvaluated={props:ka({mergeNames:(e,t,r)=>e.if((0, Q._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0, Q._)`${t} === true`,()=>e.assign(r,true),()=>e.assign(r,(0, Q._)`${r} || {}`).code((0, Q._)`Object.assign(${r}, ${t})`));}),mergeToName:(e,t,r)=>e.if((0, Q._)`${r} !== true`,()=>{t===true?e.assign(r,true):(e.assign(r,(0, Q._)`${r} || {}`),is(e,r,t));}),mergeValues:(e,t)=>e===true?true:{...e,...t},resultToName:Ra}),items:ka({mergeNames:(e,t,r)=>e.if((0, Q._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0, Q._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0, Q._)`${r} !== true`,()=>e.assign(r,t===true?true:(0, Q._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===true?true:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function Ra(e,t){if(t===true)return e.var("props",true);let r=e.var("props",(0, Q._)`{}`);return t!==void 0&&is(e,r,t),r}G.evaluatedPropsToName=Ra;function is(e,t,r){Object.keys(r).forEach(n=>e.assign((0, Q._)`${t}${(0, Q.getProperty)(n)}`,true));}G.setEvaluated=is;var wa={};function Gd(e,t){return e.scopeValue("func",{ref:t,code:wa[t.code]||(wa[t.code]=new Nd._Code(t.code))})}G.useFunc=Gd;var os;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str";})(os||(G.Type=os={}));function Kd(e,t,r){if(e instanceof Q.Name){let n=t===os.Num;return r?n?(0, Q._)`"[" + ${e} + "]"`:(0, Q._)`"['" + ${e} + "']"`:n?(0, Q._)`"/" + ${e}`:(0, Q._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0, Q.getProperty)(e).toString():"/"+as(e)}G.getErrorPath=Kd;function Ca(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===true)throw new Error(t);e.self.logger.warn(t);}}G.checkStrictMode=Ca;});var Ke=x(us=>{Object.defineProperty(us,"__esModule",{value:true});var fe=B(),Ud={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")};us.default=Ud;});var or=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(),ge=Ke();pe.keywordError={message:({keyword:e})=>(0, H.str)`must pass "${e}" keyword validation`};pe.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0, H.str)`"${e}" keyword must be ${t} ($data)`:(0, H.str)`"${e}" keyword is invalid ($data)`};function Jd(e,t=pe.keywordError,r,n){let{it:s}=e,{gen:o,compositeRule:a,allErrors:i}=s,u=xa(e,t,r);n??(a||i)?$a(o,u):Ea(s,(0, H._)`[${u}]`);}pe.reportError=Jd;function zd(e,t=pe.keywordError,r){let{it:n}=e,{gen:s,compositeRule:o,allErrors:a}=n,i=xa(e,t,r);$a(s,i),o||a||Ea(n,ge.default.vErrors);}pe.reportExtraError=zd;function Hd(e,t){e.assign(ge.default.errors,t),e.if((0, H._)`${ge.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0, H._)`${ge.default.vErrors}.length`,t),()=>e.assign(ge.default.vErrors,null)));}pe.resetErrorsCount=Hd;function Wd({gen:e,keyword:t,schemaValue:r,data:n,errsCount:s,it:o}){if(s===void 0)throw new Error("ajv implementation error");let a=e.name("err");e.forRange("i",s,ge.default.errors,i=>{e.const(a,(0, H._)`${ge.default.vErrors}[${i}]`),e.if((0, H._)`${a}.instancePath === undefined`,()=>e.assign((0, H._)`${a}.instancePath`,(0, H.strConcat)(ge.default.instancePath,o.errorPath))),e.assign((0, H._)`${a}.schemaPath`,(0, H.str)`${o.errSchemaPath}/${t}`),o.opts.verbose&&(e.assign((0, H._)`${a}.schema`,r),e.assign((0, H._)`${a}.data`,n));});}pe.extendErrors=Wd;function $a(e,t){let r=e.const("err",t);e.if((0, H._)`${ge.default.vErrors} === null`,()=>e.assign(ge.default.vErrors,(0, H._)`[${r}]`),(0, H._)`${ge.default.vErrors}.push(${r})`),e.code((0, H._)`${ge.default.errors}++`);}function Ea(e,t){let{gen:r,validateName:n,schemaEnv:s}=e;s.$async?r.throw((0, H._)`new ${e.ValidationError}(${t})`):(r.assign((0, H._)`${n}.errors`,t),r.return(false));}var bt={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(e,t,r){let{createErrors:n}=e.it;return n===false?(0, H._)`{}`:Yd(e,t,r)}function Yd(e,t,r={}){let{gen:n,it:s}=e,o=[Xd(s,r),Qd(e,r)];return Zd(e,t,o),n.object(...o)}function Xd({errorPath:e},{instancePath:t}){let r=t?(0, H.str)`${e}${(0, zr.getErrorPath)(t,zr.Type.Str)}`:e;return [ge.default.instancePath,(0, H.strConcat)(ge.default.instancePath,r)]}function Qd({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let s=n?t:(0, H.str)`${t}/${e}`;return r&&(s=(0, H.str)`${s}${(0, zr.getErrorPath)(r,zr.Type.Str)}`),[bt.schemaPath,s]}function Zd(e,{params:t,message:r},n){let{keyword:s,data:o,schemaValue:a,it:i}=e,{opts:u,propertyName:c,topSchemaRef:d,schemaPath:l}=i;n.push([bt.keyword,s],[bt.params,typeof t=="function"?t(e):t||(0, H._)`{}`]),u.messages&&n.push([bt.message,typeof r=="function"?r(e):r]),u.verbose&&n.push([bt.schema,a],[bt.parentSchema,(0, H._)`${d}${l}`],[ge.default.data,o]),c&&n.push([bt.propertyName,c]);}});var Aa=x(jt=>{Object.defineProperty(jt,"__esModule",{value:true});jt.boolOrEmptySchema=jt.topBoolOrEmptySchema=void 0;var el=or(),tl=B(),rl=Ke(),nl={message:"boolean schema is false"};function sl(e){let{gen:t,schema:r,validateName:n}=e;r===false?Ta(e,false):typeof r=="object"&&r.$async===true?t.return(rl.default.data):(t.assign((0, tl._)`${n}.errors`,null),t.return(true));}jt.topBoolOrEmptySchema=sl;function ol(e,t){let{gen:r,schema:n}=e;n===false?(r.var(t,false),Ta(e)):r.var(t,true);}jt.boolOrEmptySchema=ol;function Ta(e,t){let{gen:r,data:n}=e,s={gen:r,keyword:"false schema",data:n,schema:false,schemaCode:false,schemaValue:false,params:{},it:e};(0, el.reportError)(s,nl,void 0,t);}});var cs=x(Nt=>{Object.defineProperty(Nt,"__esModule",{value:true});Nt.getRules=Nt.isJSONType=void 0;var al=["string","number","integer","boolean","null","object","array"],il=new Set(al);function ul(e){return typeof e=="string"&&il.has(e)}Nt.isJSONType=ul;function cl(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return {types:{...e,integer:true,boolean:true,null:true},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}Nt.getRules=cl;});var ds=x(rt=>{Object.defineProperty(rt,"__esModule",{value:true});rt.shouldUseRule=rt.shouldUseGroup=rt.schemaHasRulesForType=void 0;function dl({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==true&&Ia(e,n)}rt.schemaHasRulesForType=dl;function Ia(e,t){return t.rules.some(r=>Pa(e,r))}rt.shouldUseGroup=Ia;function Pa(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(n=>e[n]!==void 0))}rt.shouldUseRule=Pa;});var ar=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 ll=cs(),fl=ds(),pl=or(),L=B(),Oa=z(),qt;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong";})(qt||(me.DataType=qt={}));function ml(e){let t=ja(e.type);if(t.includes("null")){if(e.nullable===false)throw new Error("type: null contradicts nullable: false")}else {if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===true&&t.push("null");}return t}me.getSchemaTypes=ml;function ja(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(ll.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}me.getJSONTypes=ja;function gl(e,t){let{gen:r,data:n,opts:s}=e,o=hl(t,s.coerceTypes),a=t.length>0&&!(o.length===0&&t.length===1&&(0, fl.schemaHasRulesForType)(e,t[0]));if(a){let i=fs(t,n,s.strictNumbers,qt.Wrong);r.if(i,()=>{o.length?yl(e,t,o):ps(e);});}return a}me.coerceAndCheckDataType=gl;var Na=new Set(["string","number","integer","boolean","null"]);function hl(e,t){return t?e.filter(r=>Na.has(r)||t==="array"&&r==="array"):[]}function yl(e,t,r){let{gen:n,data:s,opts:o}=e,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(fs(t,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(),ps(e),n.endIf(),n.if((0, L._)`${i} !== undefined`,()=>{n.assign(s,i),vl(e,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
|
|
1
|
+
import {spawnSync,spawn,execFile,execFileSync}from'child_process';import*as b from'fs';import {existsSync}from'fs';import*as qn from'os';import*as J from'path';import {dirname,resolve}from'path';import*as Zo from'net';import {fileURLToPath}from'url';import {createHash,randomUUID}from'crypto';import {createRequire}from'module';import {lockSync}from'proper-lockfile';import ih from'ajv-formats';var Uc=Object.create;var Wo=Object.defineProperty;var Jc=Object.getOwnPropertyDescriptor;var zc=Object.getOwnPropertyNames;var Hc=Object.getPrototypeOf,Wc=Object.prototype.hasOwnProperty;var x=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Yc=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of zc(t))!Wc.call(e,s)&&s!==r&&Wo(e,s,{get:()=>t[s],enumerable:!(n=Jc(t,s))||n.enumerable});return e};var Xc=(e,t,r)=>(r=e!=null?Uc(Hc(e)):{},Yc(Wo(r,"default",{value:e,enumerable:true}),e));var tr=x(Y=>{Object.defineProperty(Y,"__esModule",{value:true});Y.regexpCode=Y.getEsmExportName=Y.getProperty=Y.safeStringify=Y.stringify=Y.strConcat=Y.addCodeArg=Y.str=Y._=Y.nil=Y._Code=Y.Name=Y.IDENTIFIER=Y._CodeOrName=void 0;var Zt=class{};Y._CodeOrName=Zt;Y.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var kt=class extends Zt{constructor(t){if(super(),!Y.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t;}toString(){return this.str}emptyStr(){return false}get names(){return {[this.str]:1}}};Y.Name=kt;var Pe=class extends Zt{constructor(t){super(),this._items=typeof t=="string"?[t]:t;}toString(){return this.str}emptyStr(){if(this._items.length>1)return false;let t=this._items[0];return t===""||t==='""'}get str(){var t;return (t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var t;return (t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,n)=>(n instanceof kt&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Y._Code=Pe;Y.nil=new Pe("");function _a(e,...t){let r=[e[0]],n=0;for(;n<t.length;)Yn(r,t[n]),r.push(e[++n]);return new Pe(r)}Y._=_a;var Wn=new Pe("+");function Ra(e,...t){let r=[er(e[0])],n=0;for(;n<t.length;)r.push(Wn),Yn(r,t[n]),r.push(Wn,er(e[++n]));return jd(r),new Pe(r)}Y.str=Ra;function Yn(e,t){t instanceof Pe?e.push(...t._items):t instanceof kt?e.push(t):e.push(Fd(t));}Y.addCodeArg=Yn;function jd(e){let t=1;for(;t<e.length-1;){if(e[t]===Wn){let r=Nd(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+";}t++;}}function Nd(e,t){if(t==='""')return e;if(e==='""')return t;if(typeof e=="string")return t instanceof kt||e[e.length-1]!=='"'?void 0:typeof t!="string"?`${e.slice(0,-1)}${t}"`:t[0]==='"'?e.slice(0,-1)+t.slice(1):void 0;if(typeof t=="string"&&t[0]==='"'&&!(e instanceof kt))return `"${e}${t.slice(1)}`}function qd(e,t){return t.emptyStr()?e:e.emptyStr()?t:Ra`${e}${t}`}Y.strConcat=qd;function Fd(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:er(Array.isArray(e)?e.join(","):e)}function Dd(e){return new Pe(er(e))}Y.stringify=Dd;function er(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}Y.safeStringify=er;function Md(e){return typeof e=="string"&&Y.IDENTIFIER.test(e)?new Pe(`.${e}`):_a`[${e}]`}Y.getProperty=Md;function Ld(e){if(typeof e=="string"&&Y.IDENTIFIER.test(e))return new Pe(`${e}`);throw new Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}Y.getEsmExportName=Ld;function Vd(e){return new Pe(e.toString())}Y.regexpCode=Vd;});var Zn=x(Ce=>{Object.defineProperty(Ce,"__esModule",{value:true});Ce.ValueScope=Ce.ValueScopeName=Ce.Scope=Ce.varKinds=Ce.UsedValueState=void 0;var Re=tr(),Xn=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value;}},Kr;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed";})(Kr||(Ce.UsedValueState=Kr={}));Ce.varKinds={const:new Re.Name("const"),let:new Re.Name("let"),var:new Re.Name("var")};var Ur=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r;}toName(t){return t instanceof Re.Name?t:this.name(t)}name(t){return new Re.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return `${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};Ce.Scope=Ur;var Jr=class extends Re.Name{constructor(t,r){super(r),this.prefix=t;}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0, Re._)`.${new Re.Name(r)}[${n}]`;}};Ce.ValueScopeName=Jr;var Bd=(0, Re._)`\n`,Qn=class extends Ur{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?Bd:Re.nil};}get(){return this._scope}name(t){return new Jr(t,this._newName(t))}value(t,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(t),{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 c=this._scope[o]||(this._scope[o]=[]),u=c.length;return c[u]=r.ref,s.setValue(r,{property:o,itemIndex:u}),s}getValue(t,r){let n=this._values[t];if(n)return n.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return (0, Re._)`${t}${n.scopePath}`})}scopeCode(t=this._values,r,n){return this._reduceValues(t,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(t,r,n={},s){let o=Re.nil;for(let a in t){let i=t[a];if(!i)continue;let c=n[a]=n[a]||new Map;i.forEach(u=>{if(c.has(u))return;c.set(u,Kr.Started);let d=r(u);if(d){let l=this.opts.es5?Ce.varKinds.var:Ce.varKinds.const;o=(0, Re._)`${o}${l} ${u} = ${d};${this.opts._n}`;}else if(d=s?.(u))o=(0, Re._)`${o}${d}${this.opts._n}`;else throw new Xn(u);c.set(u,Kr.Completed);});}return o}};Ce.ValueScope=Qn;});var G=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 U=tr(),Le=Zn(),at=tr();Object.defineProperty(V,"_",{enumerable:true,get:function(){return at._}});Object.defineProperty(V,"str",{enumerable:true,get:function(){return at.str}});Object.defineProperty(V,"strConcat",{enumerable:true,get:function(){return at.strConcat}});Object.defineProperty(V,"nil",{enumerable:true,get:function(){return at.nil}});Object.defineProperty(V,"getProperty",{enumerable:true,get:function(){return at.getProperty}});Object.defineProperty(V,"stringify",{enumerable:true,get:function(){return at.stringify}});Object.defineProperty(V,"regexpCode",{enumerable:true,get:function(){return at.regexpCode}});Object.defineProperty(V,"Name",{enumerable:true,get:function(){return at.Name}});var Yr=Zn();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 U._Code(">"),GTE:new U._Code(">="),LT:new U._Code("<"),LTE:new U._Code("<="),EQ:new U._Code("==="),NEQ:new U._Code("!=="),NOT:new U._Code("!"),OR:new U._Code("||"),AND:new U._Code("&&"),ADD:new U._Code("+")};var Xe=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},es=class extends Xe{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n;}render({es5:t,_n:r}){let n=t?Le.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return `${n} ${this.name}${s};`+r}optimizeNames(t,r){if(t[this.name.str])return this.rhs&&(this.rhs=Dt(this.rhs,t,r)),this}get names(){return this.rhs instanceof U._CodeOrName?this.rhs.names:{}}},zr=class extends Xe{constructor(t,r,n){super(),this.lhs=t,this.rhs=r,this.sideEffects=n;}render({_n:t}){return `${this.lhs} = ${this.rhs};`+t}optimizeNames(t,r){if(!(this.lhs instanceof U.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=Dt(this.rhs,t,r),this}get names(){let t=this.lhs instanceof U.Name?{}:{...this.lhs.names};return Wr(t,this.rhs)}},ts=class extends zr{constructor(t,r,n,s){super(t,n,s),this.op=r;}render({_n:t}){return `${this.lhs} ${this.op}= ${this.rhs};`+t}},rs=class extends Xe{constructor(t){super(),this.label=t,this.names={};}render({_n:t}){return `${this.label}:`+t}},ns=class extends Xe{constructor(t){super(),this.label=t,this.names={};}render({_n:t}){return `break${this.label?` ${this.label}`:""};`+t}},ss=class extends Xe{constructor(t){super(),this.error=t;}render({_n:t}){return `throw ${this.error};`+t}get names(){return this.error.names}},os=class extends Xe{constructor(t){super(),this.code=t;}render({_n:t}){return `${this.code};`+t}optimizeNodes(){return `${this.code}`?this:void 0}optimizeNames(t,r){return this.code=Dt(this.code,t,r),this}get names(){return this.code instanceof U._CodeOrName?this.code.names:{}}},rr=class extends Xe{constructor(t=[]){super(),this.nodes=t;}render(t){return this.nodes.reduce((r,n)=>r+n.render(t),"")}optimizeNodes(){let{nodes:t}=this,r=t.length;for(;r--;){let n=t[r].optimizeNodes();Array.isArray(n)?t.splice(r,1,...n):n?t[r]=n:t.splice(r,1);}return t.length>0?this:void 0}optimizeNames(t,r){let{nodes:n}=this,s=n.length;for(;s--;){let o=n[s];o.optimizeNames(t,r)||(Gd(t,o.names),n.splice(s,1));}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>Rt(t,r.names),{})}},Qe=class extends rr{render(t){return "{"+t._n+super.render(t)+"}"+t._n}},as=class extends rr{},Ft=class extends Qe{};Ft.kind="else";var bt=class e extends Qe{constructor(t,r){super(r),this.condition=t;}render(t){let r=`if(${this.condition})`+super.render(t);return this.else&&(r+="else "+this.else.render(t)),r}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===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 t===false?r instanceof e?r:r.nodes:this.nodes.length?this:new e(Ca(t),r instanceof e?[r]:r.nodes);if(!(t===false||!this.nodes.length))return this}optimizeNames(t,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(t,r),!!(super.optimizeNames(t,r)||this.else))return this.condition=Dt(this.condition,t,r),this}get names(){let t=super.names;return Wr(t,this.condition),this.else&&Rt(t,this.else.names),t}};bt.kind="if";var _t=class extends Qe{};_t.kind="for";var is=class extends _t{constructor(t){super(),this.iteration=t;}render(t){return `for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=Dt(this.iteration,t,r),this}get names(){return Rt(super.names,this.iteration.names)}},us=class extends _t{constructor(t,r,n,s){super(),this.varKind=t,this.name=r,this.from=n,this.to=s;}render(t){let r=t.es5?Le.varKinds.var:this.varKind,{name:n,from:s,to:o}=this;return `for(${r} ${n}=${s}; ${n}<${o}; ${n}++)`+super.render(t)}get names(){let t=Wr(super.names,this.from);return Wr(t,this.to)}},Hr=class extends _t{constructor(t,r,n,s){super(),this.loop=t,this.varKind=r,this.name=n,this.iterable=s;}render(t){return `for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iterable=Dt(this.iterable,t,r),this}get names(){return Rt(super.names,this.iterable.names)}},nr=class extends Qe{constructor(t,r,n){super(),this.name=t,this.args=r,this.async=n;}render(t){return `${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}};nr.kind="func";var sr=class extends rr{render(t){return "return "+super.render(t)}};sr.kind="return";var cs=class extends Qe{render(t){let r="try"+super.render(t);return this.catch&&(r+=this.catch.render(t)),this.finally&&(r+=this.finally.render(t)),r}optimizeNodes(){var t,r;return super.optimizeNodes(),(t=this.catch)===null||t===void 0||t.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(t,r){var n,s;return super.optimizeNames(t,r),(n=this.catch)===null||n===void 0||n.optimizeNames(t,r),(s=this.finally)===null||s===void 0||s.optimizeNames(t,r),this}get names(){let t=super.names;return this.catch&&Rt(t,this.catch.names),this.finally&&Rt(t,this.finally.names),t}},or=class extends Qe{constructor(t){super(),this.error=t;}render(t){return `catch(${this.error})`+super.render(t)}};or.kind="catch";var ar=class extends Qe{render(t){return "finally"+super.render(t)}};ar.kind="finally";var ds=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
2
|
+
`:""},this._extScope=t,this._scope=new Le.Scope({parent:t}),this._nodes=[new as];}toString(){return this._root.render(this.opts)}name(t){return this._scope.name(t)}scopeName(t){return this._extScope.name(t)}scopeValue(t,r){let n=this._extScope.value(t,r);return (this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(t,r){return this._extScope.getValue(t,r)}scopeRefs(t){return this._extScope.scopeRefs(t,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(t,r,n,s){let o=this._scope.toName(r);return n!==void 0&&s&&(this._constants[o.str]=n),this._leafNode(new es(t,o,n)),o}const(t,r,n){return this._def(Le.varKinds.const,t,r,n)}let(t,r,n){return this._def(Le.varKinds.let,t,r,n)}var(t,r,n){return this._def(Le.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new zr(t,r,n))}add(t,r){return this._leafNode(new ts(t,V.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==U.nil&&this._leafNode(new os(t)),this}object(...t){let r=["{"];for(let[n,s]of t)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0, U.addCodeArg)(r,s));return r.push("}"),new U._Code(r)}if(t,r,n){if(this._blockNode(new bt(t)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(t){return this._elseNode(new bt(t))}else(){return this._elseNode(new Ft)}endIf(){return this._endBlockNode(bt,Ft)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new is(t),r)}forRange(t,r,n,s,o=this.opts.es5?Le.varKinds.var:Le.varKinds.let){let a=this._scope.toName(t);return this._for(new us(o,a,r,n),()=>s(a))}forOf(t,r,n,s=Le.varKinds.const){let o=this._scope.toName(t);if(this.opts.es5){let a=r instanceof U.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0, U._)`${a}.length`,i=>{this.var(o,(0, U._)`${a}[${i}]`),n(o);})}return this._for(new Hr("of",s,o,r),()=>n(o))}forIn(t,r,n,s=this.opts.es5?Le.varKinds.var:Le.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0, U._)`Object.keys(${r})`,n);let o=this._scope.toName(t);return this._for(new Hr("in",s,o,r),()=>n(o))}endFor(){return this._endBlockNode(_t)}label(t){return this._leafNode(new rs(t))}break(t){return this._leafNode(new ns(t))}return(t){let r=new sr;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(sr)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new cs;if(this._blockNode(s),this.code(t),r){let o=this.name("e");this._currNode=s.catch=new or(o),r(o);}return n&&(this._currNode=s.finally=new ar,this.code(n)),this._endBlockNode(or,ar)}throw(t){return this._leafNode(new ss(t))}block(t,r){return this._blockStarts.push(this._nodes.length),t&&this.code(t).endBlock(r),this}endBlock(t){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||t!==void 0&&n!==t)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${t} expected`);return this._nodes.length=r,this}func(t,r=U.nil,n,s){return this._blockNode(new nr(t,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(nr)}optimize(t=1){for(;t-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants);}_leafNode(t){return this._currNode.nodes.push(t),this}_blockNode(t){this._currNode.nodes.push(t),this._nodes.push(t);}_endBlockNode(t,r){let n=this._currNode;if(n instanceof t||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${t.kind}/${r.kind}`:t.kind}"`)}_elseNode(t){let r=this._currNode;if(!(r instanceof bt))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=t,this}get _root(){return this._nodes[0]}get _currNode(){let t=this._nodes;return t[t.length-1]}set _currNode(t){let r=this._nodes;r[r.length-1]=t;}};V.CodeGen=ds;function Rt(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function Wr(e,t){return t instanceof U._CodeOrName?Rt(e,t.names):e}function Dt(e,t,r){if(e instanceof U.Name)return n(e);if(!s(e))return e;return new U._Code(e._items.reduce((o,a)=>(a instanceof U.Name&&(a=n(a)),a instanceof U._Code?o.push(...a._items):o.push(a),o),[]));function n(o){let a=r[o.str];return a===void 0||t[o.str]!==1?o:(delete t[o.str],a)}function s(o){return o instanceof U._Code&&o._items.some(a=>a instanceof U.Name&&t[a.str]===1&&r[a.str]!==void 0)}}function Gd(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0);}function Ca(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0, U._)`!${ls(e)}`}V.not=Ca;var Kd=$a(V.operators.AND);function Ud(...e){return e.reduce(Kd)}V.and=Ud;var Jd=$a(V.operators.OR);function zd(...e){return e.reduce(Jd)}V.or=zd;function $a(e){return (t,r)=>t===U.nil?r:r===U.nil?t:(0, U._)`${ls(t)} ${e} ${ls(r)}`}function ls(e){return e instanceof U.Name?e:(0, U._)`(${e})`}});var z=x(K=>{Object.defineProperty(K,"__esModule",{value:true});K.checkStrictMode=K.getErrorPath=K.Type=K.useFunc=K.setEvaluated=K.evaluatedPropsToName=K.mergeEvaluated=K.eachItem=K.unescapeJsonPointer=K.escapeJsonPointer=K.escapeFragment=K.unescapeFragment=K.schemaRefOrVal=K.schemaHasRulesButRef=K.schemaHasRules=K.checkUnknownRules=K.alwaysValidSchema=K.toHash=void 0;var oe=G(),Hd=tr();function Wd(e){let t={};for(let r of e)t[r]=true;return t}K.toHash=Wd;function Yd(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?true:(Ta(e,t),!Aa(t,e.self.RULES.all))}K.alwaysValidSchema=Yd;function Ta(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema||typeof t=="boolean")return;let s=n.RULES.keywords;for(let o in t)s[o]||Pa(e,`unknown keyword: "${o}"`);}K.checkUnknownRules=Ta;function Aa(e,t){if(typeof e=="boolean")return !e;for(let r in e)if(t[r])return true;return false}K.schemaHasRules=Aa;function Xd(e,t){if(typeof e=="boolean")return !e;for(let r in e)if(r!=="$ref"&&t.all[r])return true;return false}K.schemaHasRulesButRef=Xd;function Qd({topSchemaRef:e,schemaPath:t},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return (0, oe._)`${r}`}return (0, oe._)`${e}${t}${(0, oe.getProperty)(n)}`}K.schemaRefOrVal=Qd;function Zd(e){return Ia(decodeURIComponent(e))}K.unescapeFragment=Zd;function el(e){return encodeURIComponent(ps(e))}K.escapeFragment=el;function ps(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}K.escapeJsonPointer=ps;function Ia(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}K.unescapeJsonPointer=Ia;function tl(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e);}K.eachItem=tl;function Ea({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return (s,o,a,i)=>{let c=a===void 0?o:a instanceof oe.Name?(o instanceof oe.Name?e(s,o,a):t(s,o,a),a):o instanceof oe.Name?(t(s,a,o),o):r(o,a);return i===oe.Name&&!(c instanceof oe.Name)?n(s,c):c}}K.mergeEvaluated={props:Ea({mergeNames:(e,t,r)=>e.if((0, oe._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0, oe._)`${t} === true`,()=>e.assign(r,true),()=>e.assign(r,(0, oe._)`${r} || {}`).code((0, oe._)`Object.assign(${r}, ${t})`));}),mergeToName:(e,t,r)=>e.if((0, oe._)`${r} !== true`,()=>{t===true?e.assign(r,true):(e.assign(r,(0, oe._)`${r} || {}`),ms(e,r,t));}),mergeValues:(e,t)=>e===true?true:{...e,...t},resultToName:Oa}),items:Ea({mergeNames:(e,t,r)=>e.if((0, oe._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0, oe._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0, oe._)`${r} !== true`,()=>e.assign(r,t===true?true:(0, oe._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===true?true:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function Oa(e,t){if(t===true)return e.var("props",true);let r=e.var("props",(0, oe._)`{}`);return t!==void 0&&ms(e,r,t),r}K.evaluatedPropsToName=Oa;function ms(e,t,r){Object.keys(r).forEach(n=>e.assign((0, oe._)`${t}${(0, oe.getProperty)(n)}`,true));}K.setEvaluated=ms;var xa={};function rl(e,t){return e.scopeValue("func",{ref:t,code:xa[t.code]||(xa[t.code]=new Hd._Code(t.code))})}K.useFunc=rl;var fs;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str";})(fs||(K.Type=fs={}));function nl(e,t,r){if(e instanceof oe.Name){let n=t===fs.Num;return r?n?(0, oe._)`"[" + ${e} + "]"`:(0, oe._)`"['" + ${e} + "']"`:n?(0, oe._)`"/" + ${e}`:(0, oe._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0, oe.getProperty)(e).toString():"/"+ps(e)}K.getErrorPath=nl;function Pa(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===true)throw new Error(t);e.self.logger.warn(t);}}K.checkStrictMode=Pa;});var Ze=x(gs=>{Object.defineProperty(gs,"__esModule",{value:true});var ge=G(),sl={data:new ge.Name("data"),valCxt:new ge.Name("valCxt"),instancePath:new ge.Name("instancePath"),parentData:new ge.Name("parentData"),parentDataProperty:new ge.Name("parentDataProperty"),rootData:new ge.Name("rootData"),dynamicAnchors:new ge.Name("dynamicAnchors"),vErrors:new ge.Name("vErrors"),errors:new ge.Name("errors"),this:new ge.Name("this"),self:new ge.Name("self"),scope:new ge.Name("scope"),json:new ge.Name("json"),jsonPos:new ge.Name("jsonPos"),jsonLen:new ge.Name("jsonLen"),jsonPart:new ge.Name("jsonPart")};gs.default=sl;});var ir=x(he=>{Object.defineProperty(he,"__esModule",{value:true});he.extendErrors=he.resetErrorsCount=he.reportExtraError=he.reportError=he.keyword$DataError=he.keywordError=void 0;var H=G(),Xr=z(),we=Ze();he.keywordError={message:({keyword:e})=>(0, H.str)`must pass "${e}" keyword validation`};he.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0, H.str)`"${e}" keyword must be ${t} ($data)`:(0, H.str)`"${e}" keyword is invalid ($data)`};function ol(e,t=he.keywordError,r,n){let{it:s}=e,{gen:o,compositeRule:a,allErrors:i}=s,c=qa(e,t,r);n??(a||i)?ja(o,c):Na(s,(0, H._)`[${c}]`);}he.reportError=ol;function al(e,t=he.keywordError,r){let{it:n}=e,{gen:s,compositeRule:o,allErrors:a}=n,i=qa(e,t,r);ja(s,i),o||a||Na(n,we.default.vErrors);}he.reportExtraError=al;function il(e,t){e.assign(we.default.errors,t),e.if((0, H._)`${we.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0, H._)`${we.default.vErrors}.length`,t),()=>e.assign(we.default.vErrors,null)));}he.resetErrorsCount=il;function ul({gen:e,keyword:t,schemaValue:r,data:n,errsCount:s,it:o}){if(s===void 0)throw new Error("ajv implementation error");let a=e.name("err");e.forRange("i",s,we.default.errors,i=>{e.const(a,(0, H._)`${we.default.vErrors}[${i}]`),e.if((0, H._)`${a}.instancePath === undefined`,()=>e.assign((0, H._)`${a}.instancePath`,(0, H.strConcat)(we.default.instancePath,o.errorPath))),e.assign((0, H._)`${a}.schemaPath`,(0, H.str)`${o.errSchemaPath}/${t}`),o.opts.verbose&&(e.assign((0, H._)`${a}.schema`,r),e.assign((0, H._)`${a}.data`,n));});}he.extendErrors=ul;function ja(e,t){let r=e.const("err",t);e.if((0, H._)`${we.default.vErrors} === null`,()=>e.assign(we.default.vErrors,(0, H._)`[${r}]`),(0, H._)`${we.default.vErrors}.push(${r})`),e.code((0, H._)`${we.default.errors}++`);}function Na(e,t){let{gen:r,validateName:n,schemaEnv:s}=e;s.$async?r.throw((0, H._)`new ${e.ValidationError}(${t})`):(r.assign((0, H._)`${n}.errors`,t),r.return(false));}var Ct={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 qa(e,t,r){let{createErrors:n}=e.it;return n===false?(0, H._)`{}`:cl(e,t,r)}function cl(e,t,r={}){let{gen:n,it:s}=e,o=[dl(s,r),ll(e,r)];return fl(e,t,o),n.object(...o)}function dl({errorPath:e},{instancePath:t}){let r=t?(0, H.str)`${e}${(0, Xr.getErrorPath)(t,Xr.Type.Str)}`:e;return [we.default.instancePath,(0, H.strConcat)(we.default.instancePath,r)]}function ll({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let s=n?t:(0, H.str)`${t}/${e}`;return r&&(s=(0, H.str)`${s}${(0, Xr.getErrorPath)(r,Xr.Type.Str)}`),[Ct.schemaPath,s]}function fl(e,{params:t,message:r},n){let{keyword:s,data:o,schemaValue:a,it:i}=e,{opts:c,propertyName:u,topSchemaRef:d,schemaPath:l}=i;n.push([Ct.keyword,s],[Ct.params,typeof t=="function"?t(e):t||(0, H._)`{}`]),c.messages&&n.push([Ct.message,typeof r=="function"?r(e):r]),c.verbose&&n.push([Ct.schema,a],[Ct.parentSchema,(0, H._)`${d}${l}`],[we.default.data,o]),u&&n.push([Ct.propertyName,u]);}});var Da=x(Mt=>{Object.defineProperty(Mt,"__esModule",{value:true});Mt.boolOrEmptySchema=Mt.topBoolOrEmptySchema=void 0;var pl=ir(),ml=G(),gl=Ze(),hl={message:"boolean schema is false"};function yl(e){let{gen:t,schema:r,validateName:n}=e;r===false?Fa(e,false):typeof r=="object"&&r.$async===true?t.return(gl.default.data):(t.assign((0, ml._)`${n}.errors`,null),t.return(true));}Mt.topBoolOrEmptySchema=yl;function vl(e,t){let{gen:r,schema:n}=e;n===false?(r.var(t,false),Fa(e)):r.var(t,true);}Mt.boolOrEmptySchema=vl;function Fa(e,t){let{gen:r,data:n}=e,s={gen:r,keyword:"false schema",data:n,schema:false,schemaCode:false,schemaValue:false,params:{},it:e};(0, pl.reportError)(s,hl,void 0,t);}});var hs=x(Lt=>{Object.defineProperty(Lt,"__esModule",{value:true});Lt.getRules=Lt.isJSONType=void 0;var Sl=["string","number","integer","boolean","null","object","array"],wl=new Set(Sl);function kl(e){return typeof e=="string"&&wl.has(e)}Lt.isJSONType=kl;function bl(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return {types:{...e,integer:true,boolean:true,null:true},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}Lt.getRules=bl;});var ys=x(it=>{Object.defineProperty(it,"__esModule",{value:true});it.shouldUseRule=it.shouldUseGroup=it.schemaHasRulesForType=void 0;function _l({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==true&&Ma(e,n)}it.schemaHasRulesForType=_l;function Ma(e,t){return t.rules.some(r=>La(e,r))}it.shouldUseGroup=Ma;function La(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(n=>e[n]!==void 0))}it.shouldUseRule=La;});var ur=x(ye=>{Object.defineProperty(ye,"__esModule",{value:true});ye.reportTypeError=ye.checkDataTypes=ye.checkDataType=ye.coerceAndCheckDataType=ye.getJSONTypes=ye.getSchemaTypes=ye.DataType=void 0;var Rl=hs(),Cl=ys(),$l=ir(),L=G(),Va=z(),Vt;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong";})(Vt||(ye.DataType=Vt={}));function El(e){let t=Ba(e.type);if(t.includes("null")){if(e.nullable===false)throw new Error("type: null contradicts nullable: false")}else {if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===true&&t.push("null");}return t}ye.getSchemaTypes=El;function Ba(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(Rl.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}ye.getJSONTypes=Ba;function xl(e,t){let{gen:r,data:n,opts:s}=e,o=Tl(t,s.coerceTypes),a=t.length>0&&!(o.length===0&&t.length===1&&(0, Cl.schemaHasRulesForType)(e,t[0]));if(a){let i=Ss(t,n,s.strictNumbers,Vt.Wrong);r.if(i,()=>{o.length?Al(e,t,o):ws(e);});}return a}ye.coerceAndCheckDataType=xl;var Ga=new Set(["string","number","integer","boolean","null"]);function Tl(e,t){return t?e.filter(r=>Ga.has(r)||t==="array"&&r==="array"):[]}function Al(e,t,r){let{gen:n,data:s,opts:o}=e,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(Ss(t,s,o.strictNumbers),()=>n.assign(i,s))),n.if((0, L._)`${i} !== undefined`);for(let u of r)(Ga.has(u)||u==="array"&&o.coerceTypes==="array")&&c(u);n.else(),ws(e),n.endIf(),n.if((0, L._)`${i} !== undefined`,()=>{n.assign(s,i),Il(e,i);});function c(u){switch(u){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
|
|
3
3
|
|| (${a} == "string" && ${s} && ${s} == +${s})`).assign(i,(0, L._)`+${s}`);return;case "integer":n.elseIf((0, L._)`${a} === "boolean" || ${s} === null
|
|
4
4
|
|| (${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"
|
|
5
|
-
|| ${a} === "boolean" || ${s} === null`).assign(i,(0, L._)`[${s}]`);}}}function vl({gen:e,parentData:t,parentDataProperty:r},n){e.if((0, L._)`${t} !== undefined`,()=>e.assign((0, L._)`${t}[${r}]`,n));}function ls(e,t,r,n=qt.Correct){let s=n===qt.Correct?L.operators.EQ:L.operators.NEQ,o;switch(e){case "null":return (0, L._)`${t} ${s} null`;case "array":o=(0, L._)`Array.isArray(${t})`;break;case "object":o=(0, L._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case "integer":o=a((0, L._)`!(${t} % 1) && !isNaN(${t})`);break;case "number":o=a();break;default:return (0, L._)`typeof ${t} ${s} ${e}`}return n===qt.Correct?o:(0, L.not)(o);function a(i=L.nil){return (0, L.and)((0, L._)`typeof ${t} == "number"`,i,r?(0, L._)`isFinite(${t})`:L.nil)}}me.checkDataType=ls;function fs(e,t,r,n){if(e.length===1)return ls(e[0],t,r,n);let s,o=(0, Oa.toHash)(e);if(o.array&&o.object){let a=(0, L._)`typeof ${t} != "object"`;s=o.null?a:(0, L._)`!${t} || ${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,ls(a,t,r,n));return s}me.checkDataTypes=fs;var kl={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0, L._)`{type: ${e}}`:(0, L._)`{type: ${t}}`};function ps(e){let t=wl(e);(0, pl.reportError)(t,kl);}me.reportTypeError=ps;function wl(e){let{gen:t,data:r,schema:n}=e,s=(0, Oa.schemaRefOrVal)(e,n,"type");return {gen:t,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:e}}});var Da=x(Hr=>{Object.defineProperty(Hr,"__esModule",{value:true});Hr.assignDefaults=void 0;var Dt=B(),bl=z();function Sl(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let s in r)qa(e,s,r[s].default);else t==="array"&&Array.isArray(n)&&n.forEach((s,o)=>qa(e,o,s.default));}Hr.assignDefaults=Sl;function qa(e,t,r){let{gen:n,compositeRule:s,data:o,opts:a}=e;if(r===void 0)return;let i=(0, Dt._)`${o}${(0, Dt.getProperty)(t)}`;if(s){(0, bl.checkStrictMode)(e,`default is ignored for: ${i}`);return}let u=(0, Dt._)`${i} === undefined`;a.useDefaults==="empty"&&(u=(0, Dt._)`${u} || ${i} === null || ${i} === ""`),n.if(u,(0, Dt._)`${i} = ${(0, Dt.stringify)(r)}`);}});var xe=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(),ms=z(),nt=Ke(),_l=z();function Rl(e,t){let{gen:r,data:n,it:s}=e;r.if(hs(r,n,t,s.opts.ownProperties),()=>{e.setParams({missingProperty:(0, re._)`${t}`},true),e.error();});}Y.checkReportMissingProp=Rl;function Cl({gen:e,data:t,it:{opts:r}},n,s){return (0, re.or)(...n.map(o=>(0, re.and)(hs(e,t,o,r.ownProperties),(0, re._)`${s} = ${o}`)))}Y.checkMissingProp=Cl;function $l(e,t){e.setParams({missingProperty:t},true),e.error();}Y.reportMissingProp=$l;function Fa(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0, re._)`Object.prototype.hasOwnProperty`})}Y.hasPropFunc=Fa;function gs(e,t,r){return (0, re._)`${Fa(e)}.call(${t}, ${r})`}Y.isOwnProperty=gs;function El(e,t,r,n){let s=(0, re._)`${t}${(0, re.getProperty)(r)} !== undefined`;return n?(0, re._)`${s} && ${gs(e,t,r)}`:s}Y.propertyInData=El;function hs(e,t,r,n){let s=(0, re._)`${t}${(0, re.getProperty)(r)} === undefined`;return n?(0, re.or)(s,(0, re.not)(gs(e,t,r))):s}Y.noPropertyInData=hs;function Ma(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}Y.allSchemaProperties=Ma;function xl(e,t){return Ma(t).filter(r=>!(0, ms.alwaysValidSchema)(e,t[r]))}Y.schemaProperties=xl;function Tl({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:o},it:a},i,u,c){let d=c?(0, re._)`${e}, ${t}, ${n}${s}`:t,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 k=(0, re._)`${d}, ${r.object(...l)}`;return u!==re.nil?(0, re._)`${i}.call(${u}, ${k})`:(0, re._)`${i}(${k})`}Y.callValidateCode=Tl;var Al=(0, re._)`new RegExp`;function Il({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:s}=t.code,o=s(r,n);return e.scopeValue("pattern",{key:o.toString(),ref:o,code:(0, re._)`${s.code==="new RegExp"?Al:(0, _l.useFunc)(e,s)}(${r}, ${n})`})}Y.usePattern=Il;function Pl(e){let{gen:t,data:r,keyword:n,it:s}=e,o=t.name("valid");if(s.allErrors){let i=t.let("valid",true);return a(()=>t.assign(i,false)),i}return t.var(o,true),a(()=>t.break()),o;function a(i){let u=t.const("len",(0, re._)`${r}.length`);t.forRange("i",0,u,c=>{e.subschema({keyword:n,dataProp:c,dataPropType:ms.Type.Num},o),t.if((0, re.not)(o),i);});}}Y.validateArray=Pl;function Ol(e){let{gen:t,schema:r,keyword:n,it:s}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(u=>(0, ms.alwaysValidSchema)(s,u))&&!s.opts.unevaluated)return;let a=t.let("valid",false),i=t.name("_valid");t.block(()=>r.forEach((u,c)=>{let d=e.subschema({keyword:n,schemaProp:c,compositeRule:true},i);t.assign(a,(0, re._)`${a} || ${i}`),e.mergeValidEvaluated(d,i)||t.if((0, re.not)(a));})),e.result(a,()=>e.reset(),()=>e.error(true));}Y.validateUnion=Ol;});var Ba=x(Fe=>{Object.defineProperty(Fe,"__esModule",{value:true});Fe.validateKeywordUsage=Fe.validSchemaType=Fe.funcKeywordCode=Fe.macroKeywordCode=void 0;var he=B(),St=Ke(),jl=xe(),Nl=or();function ql(e,t){let{gen:r,keyword:n,schema:s,parentSchema:o,it:a}=e,i=t.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");e.subschema({schema:i,schemaPath:he.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:u,compositeRule:true},c),e.pass(c,()=>e.error(true));}Fe.macroKeywordCode=ql;function Dl(e,t){var r;let{gen:n,keyword:s,schema:o,parentSchema:a,$data:i,it:u}=e;Ml(u,t);let c=!i&&t.compile?t.compile.call(u.self,o,a,u):t.validate,d=Va(n,s,c),l=n.let("valid");e.block$data(l,k),e.ok((r=t.valid)!==null&&r!==void 0?r:l);function k(){if(t.errors===false)p(),t.modifying&&La(e),w(()=>e.error());else {let g=t.async?v():m();t.modifying&&La(e),w(()=>Fl(e,g));}}function v(){let g=n.let("ruleErrs",null);return n.try(()=>p((0, he._)`await `),f=>n.assign(l,false).if((0, he._)`${f} instanceof ${u.ValidationError}`,()=>n.assign(g,(0, he._)`${f}.errors`),()=>n.throw(f))),g}function m(){let g=(0, he._)`${d}.errors`;return n.assign(g,null),p(he.nil),g}function p(g=t.async?(0, he._)`await `:he.nil){let f=u.opts.passContext?St.default.this:St.default.self,y=!("compile"in t&&!i||t.schema===false);n.assign(l,(0, he._)`${g}${(0, jl.callValidateCode)(e,d,f,y)}`,t.modifying);}function w(g){var f;n.if((0, he.not)((f=t.valid)!==null&&f!==void 0?f:l),g);}}Fe.funcKeywordCode=Dl;function La(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0, he._)`${n.parentData}[${n.parentDataProperty}]`));}function Fl(e,t){let{gen:r}=e;r.if((0, he._)`Array.isArray(${t})`,()=>{r.assign(St.default.vErrors,(0, he._)`${St.default.vErrors} === null ? ${t} : ${St.default.vErrors}.concat(${t})`).assign(St.default.errors,(0, he._)`${St.default.vErrors}.length`),(0, Nl.extendErrors)(e);},()=>e.error());}function Ml({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function Va(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0, he.stringify)(r)})}function Ll(e,t,r=false){return !t.length||t.some(n=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}Fe.validSchemaType=Ll;function Vl({schema:e,opts:t,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(e,i)))throw new Error(`parent schema must have dependencies of ${o}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(e[o])){let u=`keyword "${o}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(u);else throw new Error(u)}}Fe.validateKeywordUsage=Vl;});var Ka=x(st=>{Object.defineProperty(st,"__esModule",{value:true});st.extendSubschemaMode=st.extendSubschemaData=st.getSubschema=void 0;var Me=B(),Ga=z();function Bl(e,{keyword:t,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:o,topSchemaRef:a}){if(t!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let i=e.schema[t];return r===void 0?{schema:i,schemaPath:(0, Me._)`${e.schemaPath}${(0, Me.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:i[r],schemaPath:(0, Me._)`${e.schemaPath}${(0, Me.getProperty)(t)}${(0, Me.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(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')}st.getSubschema=Bl;function Gl(e,t,{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}=t;if(r!==void 0){let{errorPath:c,dataPathArr:d,opts:l}=t,k=i.let("data",(0, Me._)`${t.data}${(0, Me.getProperty)(r)}`,true);u(k),e.errorPath=(0, Me.str)`${c}${(0, Ga.getErrorPath)(r,n,l.jsPropertySyntax)}`,e.parentDataProperty=(0, Me._)`${r}`,e.dataPathArr=[...d,e.parentDataProperty];}if(s!==void 0){let c=s instanceof Me.Name?s:i.let("data",s,true);u(c),a!==void 0&&(e.propertyName=a);}o&&(e.dataTypes=o);function u(c){e.data=c,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,c];}}st.extendSubschemaData=Gl;function Kl(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:o}){n!==void 0&&(e.compositeRule=n),s!==void 0&&(e.createErrors=s),o!==void 0&&(e.allErrors=o),e.jtdDiscriminator=t,e.jtdMetadata=r;}st.extendSubschemaMode=Kl;});var ys=x((Hy,Ua)=>{Ua.exports=function e(t,r){if(t===r)return true;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return false;var n,s,o;if(Array.isArray(t)){if(n=t.length,n!=r.length)return false;for(s=n;s--!==0;)if(!e(t[s],r[s]))return false;return true}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(o=Object.keys(t),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(!e(t[a],r[a]))return false}return true}return t!==t&&r!==r};});var za=x((Wy,Ja)=>{var ot=Ja.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};Wr(t,n,s,e,"",e);};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 Wr(e,t,r,n,s,o,a,i,u,c){if(n&&typeof n=="object"&&!Array.isArray(n)){t(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 k=0;k<l.length;k++)Wr(e,t,r,l[k],s+"/"+d+"/"+k,o,s,d,n,k);}else if(d in ot.propsKeywords){if(l&&typeof l=="object")for(var v in l)Wr(e,t,r,l[v],s+"/"+d+"/"+Ul(v),o,s,d,n,v);}else (d in ot.keywords||e.allKeys&&!(d in ot.skipKeywords))&&Wr(e,t,r,l,s+"/"+d,o,s,d,n);}r(n,s,o,a,i,u,c);}}function Ul(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var ir=x(ke=>{Object.defineProperty(ke,"__esModule",{value:true});ke.getSchemaRefs=ke.resolveUrl=ke.normalizeId=ke._getFullPath=ke.getFullPath=ke.inlineRef=void 0;var Jl=z(),zl=ys(),Hl=za(),Wl=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function Yl(e,t=true){return typeof e=="boolean"?true:t===true?!vs(e):t?Ha(e)<=t:false}ke.inlineRef=Yl;var Xl=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function vs(e){for(let t in e){if(Xl.has(t))return true;let r=e[t];if(Array.isArray(r)&&r.some(vs)||typeof r=="object"&&vs(r))return true}return false}function Ha(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!Wl.has(r)&&(typeof e[r]=="object"&&(0, Jl.eachItem)(e[r],n=>t+=Ha(n)),t===1/0))return 1/0}return t}function Wa(e,t="",r){r!==false&&(t=Ft(t));let n=e.parse(t);return Ya(e,n)}ke.getFullPath=Wa;function Ya(e,t){return e.serialize(t).split("#")[0]+"#"}ke._getFullPath=Ya;var Ql=/#\/?$/;function Ft(e){return e?e.replace(Ql,""):""}ke.normalizeId=Ft;function Zl(e,t,r){return r=Ft(r),e.resolve(t,r)}ke.resolveUrl=Zl;var ef=/^[a-z_][-a-z0-9._]*$/i;function tf(e,t){if(typeof e=="boolean")return {};let{schemaId:r,uriResolver:n}=this.opts,s=Ft(e[r]||t),o={"":s},a=Wa(n,s,false),i={},u=new Set;return Hl(e,{allKeys:true},(l,k,v,m)=>{if(m===void 0)return;let p=a+k,w=o[m];typeof l[r]=="string"&&(w=g.call(this,l[r])),f.call(this,l.$anchor),f.call(this,l.$dynamicAnchor),o[k]=w;function g(y){let _=this.opts.uriResolver.resolve;if(y=Ft(w?_(w,y):y),u.has(y))throw d(y);u.add(y);let b=this.refs[y];return typeof b=="string"&&(b=this.refs[b]),typeof b=="object"?c(l,b.schema,y):y!==Ft(p)&&(y[0]==="#"?(c(l,i[y],y),i[y]=l):this.refs[y]=p),y}function f(y){if(typeof y=="string"){if(!ef.test(y))throw new Error(`invalid anchor "${y}"`);g.call(this,`#${y}`);}}}),i;function c(l,k,v){if(k!==void 0&&!zl(l,k))throw d(v)}function d(l){return new Error(`reference "${l}" resolves to more than one schema`)}}ke.getSchemaRefs=tf;});var dr=x(at=>{Object.defineProperty(at,"__esModule",{value:true});at.getData=at.KeywordCxt=at.validateFunctionCode=void 0;var ti=Aa(),Xa=ar(),ws=ds(),Yr=ar(),rf=Da(),cr=Ba(),ks=Ka(),A=B(),O=Ke(),nf=ir(),Ue=z(),ur=or();function sf(e){if(si(e)&&(oi(e),ni(e))){uf(e);return}ri(e,()=>(0, ti.topBoolOrEmptySchema)(e));}at.validateFunctionCode=sf;function ri({gen:e,validateName:t,schema:r,schemaEnv:n,opts:s},o){s.code.es5?e.func(t,(0, A._)`${O.default.data}, ${O.default.valCxt}`,n.$async,()=>{e.code((0, A._)`"use strict"; ${Qa(r,s)}`),af(e,s),e.code(o);}):e.func(t,(0, A._)`${O.default.data}, ${of(s)}`,n.$async,()=>e.code(Qa(r,s)).code(o));}function of(e){return (0, A._)`{${O.default.instancePath}="", ${O.default.parentData}, ${O.default.parentDataProperty}, ${O.default.rootData}=${O.default.data}${e.dynamicRef?(0, A._)`, ${O.default.dynamicAnchors}={}`:A.nil}}={}`}function af(e,t){e.if(O.default.valCxt,()=>{e.var(O.default.instancePath,(0, A._)`${O.default.valCxt}.${O.default.instancePath}`),e.var(O.default.parentData,(0, A._)`${O.default.valCxt}.${O.default.parentData}`),e.var(O.default.parentDataProperty,(0, A._)`${O.default.valCxt}.${O.default.parentDataProperty}`),e.var(O.default.rootData,(0, A._)`${O.default.valCxt}.${O.default.rootData}`),t.dynamicRef&&e.var(O.default.dynamicAnchors,(0, A._)`${O.default.valCxt}.${O.default.dynamicAnchors}`);},()=>{e.var(O.default.instancePath,(0, A._)`""`),e.var(O.default.parentData,(0, A._)`undefined`),e.var(O.default.parentDataProperty,(0, A._)`undefined`),e.var(O.default.rootData,O.default.data),t.dynamicRef&&e.var(O.default.dynamicAnchors,(0, A._)`{}`);});}function uf(e){let{schema:t,opts:r,gen:n}=e;ri(e,()=>{r.$comment&&t.$comment&&ii(e),pf(e),n.let(O.default.vErrors,null),n.let(O.default.errors,0),r.unevaluated&&cf(e),ai(e),hf(e);});}function cf(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0, A._)`${r}.evaluated`),t.if((0, A._)`${e.evaluated}.dynamicProps`,()=>t.assign((0, A._)`${e.evaluated}.props`,(0, A._)`undefined`)),t.if((0, A._)`${e.evaluated}.dynamicItems`,()=>t.assign((0, A._)`${e.evaluated}.items`,(0, A._)`undefined`));}function Qa(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0, A._)`/*# sourceURL=${r} */`:A.nil}function df(e,t){if(si(e)&&(oi(e),ni(e))){lf(e,t);return}(0, ti.boolOrEmptySchema)(e,t);}function ni({schema:e,self:t}){if(typeof e=="boolean")return !e;for(let r in e)if(t.RULES.all[r])return true;return false}function si(e){return typeof e.schema!="boolean"}function lf(e,t){let{schema:r,gen:n,opts:s}=e;s.$comment&&r.$comment&&ii(e),mf(e),gf(e);let o=n.const("_errs",O.default.errors);ai(e,o),n.var(t,(0, A._)`${o} === ${O.default.errors}`);}function oi(e){(0, Ue.checkUnknownRules)(e),ff(e);}function ai(e,t){if(e.opts.jtd)return Za(e,[],false,t);let r=(0, Xa.getSchemaTypes)(e.schema),n=(0, Xa.coerceAndCheckDataType)(e,r);Za(e,r,!n,t);}function ff(e){let{schema:t,errSchemaPath:r,opts:n,self:s}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0, Ue.schemaHasRulesButRef)(t,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`);}function pf(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0, Ue.checkStrictMode)(e,"default is ignored in the schema root");}function mf(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0, nf.resolveUrl)(e.opts.uriResolver,e.baseId,t));}function gf(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function ii({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:s}){let o=r.$comment;if(s.$comment===true)e.code((0, A._)`${O.default.self}.logger.log(${o})`);else if(typeof s.$comment=="function"){let a=(0, A.str)`${n}/$comment`,i=e.scopeValue("root",{ref:t.root});e.code((0, A._)`${O.default.self}.opts.$comment(${o}, ${a}, ${i}.schema)`);}}function hf(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:s,opts:o}=e;r.$async?t.if((0, A._)`${O.default.errors} === 0`,()=>t.return(O.default.data),()=>t.throw((0, A._)`new ${s}(${O.default.vErrors})`)):(t.assign((0, A._)`${n}.errors`,O.default.vErrors),o.unevaluated&&yf(e),t.return((0, A._)`${O.default.errors} === 0`));}function yf({gen:e,evaluated:t,props:r,items:n}){r instanceof A.Name&&e.assign((0, A._)`${t}.props`,r),n instanceof A.Name&&e.assign((0, A._)`${t}.items`,n);}function Za(e,t,r,n){let{gen:s,schema:o,data:a,allErrors:i,opts:u,self:c}=e,{RULES:d}=c;if(o.$ref&&(u.ignoreKeywordsWithRef||!(0, Ue.schemaHasRulesButRef)(o,d))){s.block(()=>ci(e,"$ref",d.all.$ref.definition));return}u.jtd||vf(e,t),s.block(()=>{for(let k of d.rules)l(k);l(d.post);});function l(k){(0, ws.shouldUseGroup)(o,k)&&(k.type?(s.if((0, Yr.checkDataType)(k.type,a,u.strictNumbers)),ei(e,k),t.length===1&&t[0]===k.type&&r&&(s.else(),(0, Yr.reportTypeError)(e)),s.endIf()):ei(e,k),i||s.if((0, A._)`${O.default.errors} === ${n||0}`));}}function ei(e,t){let{gen:r,schema:n,opts:{useDefaults:s}}=e;s&&(0, rf.assignDefaults)(e,t.type),r.block(()=>{for(let o of t.rules)(0, ws.shouldUseRule)(n,o)&&ci(e,o.keyword,o.definition,t.type);});}function vf(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(kf(e,t),e.opts.allowUnionTypes||wf(e,t),bf(e,e.dataTypes));}function kf(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{ui(e.dataTypes,r)||bs(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`);}),_f(e,t);}}function wf(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&bs(e,"use allowUnionTypes to allow union type keyword");}function bf(e,t){let r=e.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0, ws.shouldUseRule)(e.schema,s)){let{type:o}=s.definition;o.length&&!o.some(a=>Sf(t,a))&&bs(e,`missing type "${o.join(",")}" for keyword "${n}"`);}}}function Sf(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function ui(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function _f(e,t){let r=[];for(let n of e.dataTypes)ui(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r;}function bs(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0, Ue.checkStrictMode)(e,t,e.opts.strictTypes);}var Xr=class{constructor(t,r,n){if((0, cr.validateKeywordUsage)(t,r,n),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=n,this.data=t.data,this.schema=t.schema[n],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0, Ue.schemaRefOrVal)(t,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",di(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0, cr.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=t.gen.const("_errs",O.default.errors));}result(t,r,n){this.failResult((0, A.not)(t),r,n);}failResult(t,r,n){this.gen.if(t),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else();}pass(t,r){this.failResult((0, A.not)(t),void 0,r);}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(false);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else();}fail$data(t){if(!this.$data)return this.fail(t);let{schemaCode:r}=this;this.fail((0, A._)`${r} !== undefined && (${(0, A.or)(this.invalid$data(),t)})`);}error(t,r,n){if(r){this.setParams(r),this._error(t,n),this.setParams({});return}this._error(t,n);}_error(t,r){(t?ur.reportExtraError:ur.reportError)(this,this.def.error,r);}$dataError(){(0, ur.reportError)(this,this.def.$dataError||ur.keyword$DataError);}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0, ur.resetErrorsCount)(this.gen,this.errsCount);}ok(t){this.allErrors||this.gen.if(t);}setParams(t,r){r?Object.assign(this.params,t):this.params=t;}block$data(t,r,n=A.nil){this.gen.block(()=>{this.check$data(t,n),r();});}check$data(t=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)),t!==A.nil&&n.assign(t,true),(o.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==A.nil&&n.assign(t,false)),n.else();}invalid$data(){let{gen:t,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, Yr.checkDataTypes)(u,r,o.opts.strictNumbers,Yr.DataType.Wrong)}`}return A.nil}function i(){if(s.validateSchema){let u=t.scopeValue("validate$data",{ref:s.validateSchema});return (0, A._)`!${u}(${r})`}return A.nil}}subschema(t,r){let n=(0, ks.getSubschema)(this.it,t);(0, ks.extendSubschemaData)(n,this.it,t),(0, ks.extendSubschemaMode)(n,t);let s={...this.it,...n,items:void 0,props:void 0};return df(s,r),s}mergeEvaluated(t,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==true&&t.props!==void 0&&(n.props=Ue.mergeEvaluated.props(s,t.props,n.props,r)),n.items!==true&&t.items!==void 0&&(n.items=Ue.mergeEvaluated.items(s,t.items,n.items,r)));}mergeValidEvaluated(t,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==true||n.items!==true))return s.if(r,()=>this.mergeEvaluated(t,A.Name)),true}};at.KeywordCxt=Xr;function ci(e,t,r,n){let s=new Xr(e,r,t);"code"in r?r.code(s,n):s.$data&&r.validate?(0, cr.funcKeywordCode)(s,r):"macro"in r?(0, cr.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0, cr.funcKeywordCode)(s,r);}var Rf=/^\/(?:[^~]|~0|~1)*$/,Cf=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function di(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let s,o;if(e==="")return O.default.rootData;if(e[0]==="/"){if(!Rf.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);s=e,o=O.default.rootData;}else {let c=Cf.exec(e);if(!c)throw new Error(`Invalid JSON-pointer: ${e}`);let d=+c[1];if(s=c[2],s==="#"){if(d>=t)throw new Error(u("property/index",d));return n[t-d]}if(d>t)throw new Error(u("data",d));if(o=r[t-d],!s)return o}let a=o,i=s.split("/");for(let c of i)c&&(o=(0, A._)`${o}${(0, A.getProperty)((0, Ue.unescapeJsonPointer)(c))}`,a=(0, A._)`${a} && ${o}`);return a;function u(c,d){return `Cannot access ${c} ${d} levels up, current level is ${t}`}}at.getData=di;});var Qr=x(_s=>{Object.defineProperty(_s,"__esModule",{value:true});var Ss=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=true;}};_s.default=Ss;});var lr=x($s=>{Object.defineProperty($s,"__esModule",{value:true});var Rs=ir(),Cs=class extends Error{constructor(t,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0, Rs.resolveUrl)(t,r,n),this.missingSchema=(0, Rs.normalizeId)((0, Rs.getFullPath)(t,this.missingRef));}};$s.default=Cs;});var en=x(Te=>{Object.defineProperty(Te,"__esModule",{value:true});Te.resolveSchema=Te.getCompilingSchema=Te.resolveRef=Te.compileSchema=Te.SchemaEnv=void 0;var je=B(),$f=Qr(),_t=Ke(),Ne=ir(),li=z(),Ef=dr(),Mt=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let n;typeof t.schema=="object"&&(n=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0, Ne.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={};}};Te.SchemaEnv=Mt;function xs(e){let t=fi.call(this,e);if(t)return t;let r=(0, Ne.getFullPath)(this.opts.uriResolver,e.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;e.$async&&(i=a.scopeValue("Error",{ref:$f.default,code:(0, je._)`require("ajv/dist/runtime/validation_error").default`}));let u=a.scopeName("validate");e.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:e.schema,code:(0, je.stringify)(e.schema)}:{ref:e.schema}),validateName:u,ValidationError:i,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:je.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0, je._)`""`,opts:this.opts,self:this},d;try{this._compilations.add(e),(0,Ef.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,e));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=e.schema,v.schemaEnv=e,e.$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 e.validate=v,e}catch(l){throw delete e.validate,delete e.validateName,d&&this.logger.error("Error compiling schema, function code:",d),l}finally{this._compilations.delete(e);}}Te.compileSchema=xs;function xf(e,t,r){var n;r=(0, Ne.resolveUrl)(this.opts.uriResolver,t,r);let s=e.refs[r];if(s)return s;let o=If.call(this,e,r);if(o===void 0){let a=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:i}=this.opts;a&&(o=new Mt({schema:a,schemaId:i,root:e,baseId:t}));}if(o!==void 0)return e.refs[r]=Tf.call(this,o)}Te.resolveRef=xf;function Tf(e){return (0, Ne.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:xs.call(this,e)}function fi(e){for(let t of this._compilations)if(Af(t,e))return t}Te.getCompilingSchema=fi;function Af(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function If(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||Zr.call(this,e,t)}function Zr(e,t){let r=this.opts.uriResolver.parse(t),n=(0, Ne._getFullPath)(this.opts.uriResolver,r),s=(0, Ne.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===s)return Es.call(this,r,e);let o=(0, Ne.normalizeId)(n),a=this.refs[o]||this.schemas[o];if(typeof a=="string"){let i=Zr.call(this,e,a);return typeof i?.schema!="object"?void 0:Es.call(this,r,i)}if(typeof a?.schema=="object"){if(a.validate||xs.call(this,a),o===(0, Ne.normalizeId)(t)){let{schema:i}=a,{schemaId:u}=this.opts,c=i[u];return c&&(s=(0, Ne.resolveUrl)(this.opts.uriResolver,s,c)),new Mt({schema:i,schemaId:u,root:e,baseId:s})}return Es.call(this,r,a)}}Te.resolveSchema=Zr;var Pf=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Es(e,{baseId:t,schema:r,root:n}){var s;if(((s=e.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let i of e.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];!Pf.has(i)&&c&&(t=(0, Ne.resolveUrl)(this.opts.uriResolver,t,c));}let o;if(typeof r!="boolean"&&r.$ref&&!(0, li.schemaHasRulesButRef)(r,this.RULES)){let i=(0, Ne.resolveUrl)(this.opts.uriResolver,t,r.$ref);o=Zr.call(this,n,i);}let{schemaId:a}=this.opts;if(o=o||new Mt({schema:r,schemaId:a,root:n,baseId:t}),o.schema!==o.root.schema)return o}});var pi=x((tv,Of)=>{Of.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 As=x((rv,yi)=>{var jf=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 Ts(e){let t="",r=0,n=0;for(n=0;n<e.length;n++)if(r=e[n].charCodeAt(0),r!==48){if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return "";t+=e[n];break}for(n+=1;n<e.length;n++){if(r=e[n].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return "";t+=e[n];}return t}var Nf=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function mi(e){return e.length=0,true}function qf(e,t,r){if(e.length){let n=Ts(e);if(n!=="")t.push(n);else return r.error=true,false;e.length=0;}return true}function Df(e){let t=0,r={error:false,address:"",zone:""},n=[],s=[],o=false,a=false,i=qf;for(let u=0;u<e.length;u++){let c=e[u];if(!(c==="["||c==="]"))if(c===":"){if(o===true&&(a=true),!i(s,n,r))break;if(++t>7){r.error=true;break}u>0&&e[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(Ts(s))),r.address=n.join(""),r}function hi(e){if(Ff(e,":")<2)return {host:e,isIPV6:false};let t=Df(e);if(t.error)return {host:e,isIPV6:false};{let r=t.address,n=t.address;return t.zone&&(r+="%"+t.zone,n+="%25"+t.zone),{host:r,isIPV6:true,escapedHost:n}}}function Ff(e,t){let r=0;for(let n=0;n<e.length;n++)e[n]===t&&r++;return r}function Mf(e){let t=e,r=[],n=-1,s=0;for(;s=t.length;){if(s===1){if(t===".")break;if(t==="/"){r.push("/");break}else {r.push(t);break}}else if(s===2){if(t[0]==="."){if(t[1]===".")break;if(t[1]==="/"){t=t.slice(2);continue}}else if(t[0]==="/"&&(t[1]==="."||t[1]==="/")){r.push("/");break}}else if(s===3&&t==="/.."){r.length!==0&&r.pop(),r.push("/");break}if(t[0]==="."){if(t[1]==="."){if(t[2]==="/"){t=t.slice(3);continue}}else if(t[1]==="/"){t=t.slice(2);continue}}else if(t[0]==="/"&&t[1]==="."){if(t[2]==="/"){t=t.slice(2);continue}else if(t[2]==="."&&t[3]==="/"){t=t.slice(3),r.length!==0&&r.pop();continue}}if((n=t.indexOf("/",1))===-1){r.push(t);break}else r.push(t.slice(0,n)),t=t.slice(n);}return r.join("")}function Lf(e,t){let r=t!==true?escape:unescape;return e.scheme!==void 0&&(e.scheme=r(e.scheme)),e.userinfo!==void 0&&(e.userinfo=r(e.userinfo)),e.host!==void 0&&(e.host=r(e.host)),e.path!==void 0&&(e.path=r(e.path)),e.query!==void 0&&(e.query=r(e.query)),e.fragment!==void 0&&(e.fragment=r(e.fragment)),e}function Vf(e){let t=[];if(e.userinfo!==void 0&&(t.push(e.userinfo),t.push("@")),e.host!==void 0){let r=unescape(e.host);if(!gi(r)){let n=hi(r);n.isIPV6===true?r=`[${n.escapedHost}]`:r=e.host;}t.push(r);}return (typeof e.port=="number"||typeof e.port=="string")&&(t.push(":"),t.push(String(e.port))),t.length?t.join(""):void 0}yi.exports={nonSimpleDomain:Nf,recomposeAuthority:Vf,normalizeComponentEncoding:Lf,removeDotSegments:Mf,isIPv4:gi,isUUID:jf,normalizeIPv6:hi,stringArrayToHexStripped:Ts};});var Si=x((nv,bi)=>{var{isUUID:Bf}=As(),Gf=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,Kf=["http","https","ws","wss","urn","urn:uuid"];function Uf(e){return Kf.indexOf(e)!==-1}function Is(e){return e.secure===true?true:e.secure===false?false:e.scheme?e.scheme.length===3&&(e.scheme[0]==="w"||e.scheme[0]==="W")&&(e.scheme[1]==="s"||e.scheme[1]==="S")&&(e.scheme[2]==="s"||e.scheme[2]==="S"):false}function vi(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function ki(e){let t=String(e.scheme).toLowerCase()==="https";return (e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function Jf(e){return e.secure=Is(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function zf(e){if((e.port===(Is(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0;}return e.fragment=void 0,e}function Hf(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(Gf);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let s=`${n}:${t.nid||e.nid}`,o=Ps(s);e.path=void 0,o&&(e=o.parse(e,t));}else e.error=e.error||"URN can not be parsed.";return e}function Wf(e,t){if(e.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),s=`${r}:${t.nid||n}`,o=Ps(s);o&&(e=o.serialize(e,t));let a=e,i=e.nss;return a.path=`${n||t.nid}:${i}`,t.skipEscape=true,a}function Yf(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!Bf(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function Xf(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var wi={scheme:"http",domainHost:true,parse:vi,serialize:ki},Qf={scheme:"https",domainHost:wi.domainHost,parse:vi,serialize:ki},tn={scheme:"ws",domainHost:true,parse:Jf,serialize:zf},Zf={scheme:"wss",domainHost:tn.domainHost,parse:tn.parse,serialize:tn.serialize},ep={scheme:"urn",parse:Hf,serialize:Wf,skipNormalize:true},tp={scheme:"urn:uuid",parse:Yf,serialize:Xf,skipNormalize:true},rn={http:wi,https:Qf,ws:tn,wss:Zf,urn:ep,"urn:uuid":tp};Object.setPrototypeOf(rn,null);function Ps(e){return e&&(rn[e]||rn[e.toLowerCase()])||void 0}bi.exports={wsIsSecure:Is,SCHEMES:rn,isValidSchemeName:Uf,getSchemeHandler:Ps};});var Ci=x((sv,sn)=>{var{normalizeIPv6:rp,removeDotSegments:fr,recomposeAuthority:np,normalizeComponentEncoding:nn,isIPv4:sp,nonSimpleDomain:op}=As(),{SCHEMES:ap,getSchemeHandler:_i}=Si();function ip(e,t){return typeof e=="string"?e=Le(Je(e,t),t):typeof e=="object"&&(e=Je(Le(e,t),t)),e}function up(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=Ri(Je(e,n),Je(t,n),n,true);return n.skipEscape=true,Le(s,n)}function Ri(e,t,r,n){let s={};return n||(e=Je(Le(e,r),r),t=Je(Le(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(s.scheme=t.scheme,s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=fr(t.path||""),s.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=fr(t.path||""),s.query=t.query):(t.path?(t.path[0]==="/"?s.path=fr(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?s.path="/"+t.path:e.path?s.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:s.path=t.path,s.path=fr(s.path)),s.query=t.query):(s.path=e.path,t.query!==void 0?s.query=t.query:s.query=e.query),s.userinfo=e.userinfo,s.host=e.host,s.port=e.port),s.scheme=e.scheme),s.fragment=t.fragment,s}function cp(e,t,r){return typeof e=="string"?(e=unescape(e),e=Le(nn(Je(e,r),true),{...r,skipEscape:true})):typeof e=="object"&&(e=Le(nn(e,true),{...r,skipEscape:true})),typeof t=="string"?(t=unescape(t),t=Le(nn(Je(t,r),true),{...r,skipEscape:true})):typeof t=="object"&&(t=Le(nn(t,true),{...r,skipEscape:true})),e.toLowerCase()===t.toLowerCase()}function Le(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),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=np(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=fr(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 dp=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Je(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=false;r.reference==="suffix"&&(r.scheme?e=r.scheme+":"+e:e="//"+e);let o=e.match(dp);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(sp(n.host)===false){let u=rp(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&&op(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)&&(e.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 Os={SCHEMES:ap,normalize:ip,resolve:up,resolveComponent:Ri,equal:cp,serialize:Le,parse:Je};sn.exports=Os;sn.exports.default=Os;sn.exports.fastUri=Os;});var Ei=x(js=>{Object.defineProperty(js,"__esModule",{value:true});var $i=Ci();$i.code='require("ajv/dist/runtime/uri").default';js.default=$i;});var Ni=x(ue=>{Object.defineProperty(ue,"__esModule",{value:true});ue.CodeGen=ue.Name=ue.nil=ue.stringify=ue.str=ue._=ue.KeywordCxt=void 0;var lp=dr();Object.defineProperty(ue,"KeywordCxt",{enumerable:true,get:function(){return lp.KeywordCxt}});var Lt=B();Object.defineProperty(ue,"_",{enumerable:true,get:function(){return Lt._}});Object.defineProperty(ue,"str",{enumerable:true,get:function(){return Lt.str}});Object.defineProperty(ue,"stringify",{enumerable:true,get:function(){return Lt.stringify}});Object.defineProperty(ue,"nil",{enumerable:true,get:function(){return Lt.nil}});Object.defineProperty(ue,"Name",{enumerable:true,get:function(){return Lt.Name}});Object.defineProperty(ue,"CodeGen",{enumerable:true,get:function(){return Lt.CodeGen}});var fp=Qr(),Pi=lr(),pp=cs(),pr=en(),mp=B(),mr=ir(),on=ar(),qs=z(),xi=pi(),gp=Ei(),Oi=(e,t)=>new RegExp(e,t);Oi.code="new RegExp";var hp=["removeAdditional","useDefaults","coerceTypes"],yp=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),vp={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."},kp={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Ti=200;function wp(e){var t,r,n,s,o,a,i,u,c,d,l,k,v,m,p,w,g,f,y,_,b,$,R,E,N;let D=e.strict,M=(t=e.code)===null||t===void 0?void 0:t.optimize,te=M===true||M===void 0?1:M||0,U=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Oi,de=(s=e.uriResolver)!==null&&s!==void 0?s:gp.default;return {strictSchema:(a=(o=e.strictSchema)!==null&&o!==void 0?o:D)!==null&&a!==void 0?a:true,strictNumbers:(u=(i=e.strictNumbers)!==null&&i!==void 0?i:D)!==null&&u!==void 0?u:true,strictTypes:(d=(c=e.strictTypes)!==null&&c!==void 0?c:D)!==null&&d!==void 0?d:"log",strictTuples:(k=(l=e.strictTuples)!==null&&l!==void 0?l:D)!==null&&k!==void 0?k:"log",strictRequired:(m=(v=e.strictRequired)!==null&&v!==void 0?v:D)!==null&&m!==void 0?m:false,code:e.code?{...e.code,optimize:te,regExp:U}:{optimize:te,regExp:U},loopRequired:(p=e.loopRequired)!==null&&p!==void 0?p:Ti,loopEnum:(w=e.loopEnum)!==null&&w!==void 0?w:Ti,meta:(g=e.meta)!==null&&g!==void 0?g:true,messages:(f=e.messages)!==null&&f!==void 0?f:true,inlineRefs:(y=e.inlineRefs)!==null&&y!==void 0?y:true,schemaId:(_=e.schemaId)!==null&&_!==void 0?_:"$id",addUsedSchema:(b=e.addUsedSchema)!==null&&b!==void 0?b:true,validateSchema:($=e.validateSchema)!==null&&$!==void 0?$:true,validateFormats:(R=e.validateFormats)!==null&&R!==void 0?R:true,unicodeRegExp:(E=e.unicodeRegExp)!==null&&E!==void 0?E:true,int32range:(N=e.int32range)!==null&&N!==void 0?N:true,uriResolver:de}}var gr=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...wp(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new mp.ValueScope({scope:{},prefixes:yp,es5:r,lines:n}),this.logger=$p(t.logger);let s=t.validateFormats;t.validateFormats=false,this.RULES=(0, pp.getRules)(),Ai.call(this,vp,t,"NOT SUPPORTED"),Ai.call(this,kp,t,"DEPRECATED","warn"),this._metaOpts=Rp.call(this),t.formats&&Sp.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&_p.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),bp.call(this),t.validateFormats=s;}_addVocabularies(){this.addKeyword("$async");}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,s=xi;n==="id"&&(s={...xi},s.id=s.$id,delete s.$id),r&&t&&this.addMetaSchema(s,s[n],false);}defaultMeta(){let{meta:t,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof t=="object"?t[r]||t:void 0}validate(t,r){let n;if(typeof t=="string"){if(n=this.getSchema(t),!n)throw new Error(`no schema with key or ref "${t}"`)}else n=this.compile(t);let s=n(r);return "$async"in n||(this.errors=n.errors),s}compile(t,r){let n=this._addSchema(t,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(t,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return s.call(this,t,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(t,r,n,s=this.opts.validateSchema){if(Array.isArray(t)){for(let a of t)this.addSchema(a,void 0,n,s);return this}let o;if(typeof t=="object"){let{schemaId:a}=this.opts;if(o=t[a],o!==void 0&&typeof o!="string")throw new Error(`schema ${a} must be string`)}return r=(0, mr.normalizeId)(r||o),this._checkUnique(r),this.schemas[r]=this._addSchema(t,n,r,s,true),this}addMetaSchema(t,r,n=this.opts.validateSchema){return this.addSchema(t,r,true,n),this}validateSchema(t,r){if(typeof t=="boolean")return true;let n;if(n=t.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,true;let s=this.validate(n,t);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(t){let r;for(;typeof(r=Ii.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,s=new pr.SchemaEnv({schema:{},schemaId:n});if(r=pr.resolveSchema.call(this,s,t),!r)return;this.refs[t]=r;}return r.validate||this._compileSchemaEnv(r)}removeSchema(t){if(t instanceof RegExp)return this._removeAllSchemas(this.schemas,t),this._removeAllSchemas(this.refs,t),this;switch(typeof t){case "undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case "string":{let r=Ii.call(this,t);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[t],delete this.refs[t],this}case "object":{let r=t;this._cache.delete(r);let n=t[this.opts.schemaId];return n&&(n=(0, mr.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let n;if(typeof t=="string")n=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof t=="object"&&r===void 0){if(r=t,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(xp.call(this,n,r),!r)return (0, qs.eachItem)(n,o=>Ns.call(this,o)),this;Ap.call(this,r);let s={...r,type:(0, on.getJSONTypes)(r.type),schemaType:(0, on.getJSONTypes)(r.schemaType)};return (0, qs.eachItem)(n,s.type.length===0?o=>Ns.call(this,o,s):o=>s.type.forEach(a=>Ns.call(this,o,s,a))),this}getKeyword(t){let r=this.RULES.all[t];return typeof r=="object"?r.definition:!!r}removeKeyword(t){let{RULES:r}=this;delete r.keywords[t],delete r.all[t];for(let n of r.rules){let s=n.rules.findIndex(o=>o.keyword===t);s>=0&&n.rules.splice(s,1);}return this}addFormat(t,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[t]=r,this}errorsText(t=this.errors,{separator:r=", ",dataVar:n="data"}={}){return !t||t.length===0?"No errors":t.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,o)=>s+r+o)}$dataMetaSchema(t,r){let n=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let s of r){let o=s.split("/").slice(1),a=t;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 t}_removeAllSchemas(t,r){for(let n in t){let s=t[n];(!r||r.test(n))&&(typeof s=="string"?delete t[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete t[n]));}}_addSchema(t,r,n,s=this.opts.validateSchema,o=this.opts.addUsedSchema){let a,{schemaId:i}=this.opts;if(typeof t=="object")a=t[i];else {if(this.opts.jtd)throw new Error("schema must be object");if(typeof t!="boolean")throw new Error("schema must be object or boolean")}let u=this._cache.get(t);if(u!==void 0)return u;n=(0, mr.normalizeId)(a||n);let c=mr.getSchemaRefs.call(this,t,n);return u=new pr.SchemaEnv({schema:t,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(t,true),u}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):pr.compileSchema.call(this,t),!t.validate)throw new Error("ajv implementation error");return t.validate}_compileMetaSchema(t){let r=this.opts;this.opts=this._metaOpts;try{pr.compileSchema.call(this,t);}finally{this.opts=r;}}};gr.ValidationError=fp.default;gr.MissingRefError=Pi.default;ue.default=gr;function Ai(e,t,r,n="error"){for(let s in e){let o=s;o in t&&this.logger[n](`${r}: option ${s}. ${e[o]}`);}}function Ii(e){return e=(0, mr.normalizeId)(e),this.schemas[e]||this.refs[e]}function bp(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t);}function Sp(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t);}}function _p(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r);}}function Rp(){let e={...this.opts};for(let t of hp)delete e[t];return e}var Cp={log(){},warn(){},error(){}};function $p(e){if(e===false)return Cp;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw new Error("logger must implement log, warn and error methods")}var Ep=/^[a-z_$][a-z0-9_$:-]*$/i;function xp(e,t){let{RULES:r}=this;if((0, qs.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!Ep.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!t&&t.$data&&!("code"in t||"validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function Ns(e,t,r){var n;let s=t?.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[e]=true,!t)return;let i={keyword:e,definition:{...t,type:(0, on.getJSONTypes)(t.type),schemaType:(0, on.getJSONTypes)(t.schemaType)}};t.before?Tp.call(this,a,i,t.before):a.rules.push(i),o.all[e]=i,(n=t.implements)===null||n===void 0||n.forEach(u=>this.addKeyword(u));}function Tp(e,t,r){let n=e.rules.findIndex(s=>s.keyword===r);n>=0?e.rules.splice(n,0,t):(e.rules.push(t),this.logger.warn(`rule ${r} is not defined`));}function Ap(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=ji(t)),e.validateSchema=this.compile(t,true));}var Ip={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function ji(e){return {anyOf:[e,Ip]}}});var qi=x(Ds=>{Object.defineProperty(Ds,"__esModule",{value:true});var Pp={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Ds.default=Pp;});var Li=x(Rt=>{Object.defineProperty(Rt,"__esModule",{value:true});Rt.callRef=Rt.getValidate=void 0;var Op=lr(),Di=xe(),we=B(),Vt=Ke(),Fi=en(),an=z(),jp={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{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 Op.default(n.opts.uriResolver,s,r);if(d instanceof Fi.SchemaEnv)return k(d);return v(d);function l(){if(o===c)return un(e,a,o,o.$async);let m=t.scopeValue("root",{ref:c});return un(e,(0, we._)`${m}.validate`,c,c.$async)}function k(m){let p=Mi(e,m);un(e,p,m,m.$async);}function v(m){let p=t.scopeValue("schema",i.code.source===true?{ref:m,code:(0, we.stringify)(m)}:{ref:m}),w=t.name("valid"),g=e.subschema({schema:m,dataTypes:[],schemaPath:we.nil,topSchemaRef:p,errSchemaPath:r},w);e.mergeEvaluated(g),e.ok(w);}}};function Mi(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0, we._)`${r.scopeValue("wrapper",{ref:t})}.validate`}Rt.getValidate=Mi;function un(e,t,r,n){let{gen:s,it:o}=e,{allErrors:a,schemaEnv:i,opts:u}=o,c=u.passContext?Vt.default.this:we.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, we._)`await ${(0, Di.callValidateCode)(e,t,c)}`),v(t),a||s.assign(m,true);},p=>{s.if((0, we._)`!(${p} instanceof ${o.ValidationError})`,()=>s.throw(p)),k(p),a||s.assign(m,false);}),e.ok(m);}function l(){e.result((0, Di.callValidateCode)(e,t,c),()=>v(t),()=>k(t));}function k(m){let p=(0, we._)`${m}.errors`;s.assign(Vt.default.vErrors,(0, we._)`${Vt.default.vErrors} === null ? ${p} : ${Vt.default.vErrors}.concat(${p})`),s.assign(Vt.default.errors,(0, we._)`${Vt.default.vErrors}.length`);}function v(m){var p;if(!o.opts.unevaluated)return;let w=(p=r?.validate)===null||p===void 0?void 0:p.evaluated;if(o.props!==true)if(w&&!w.dynamicProps)w.props!==void 0&&(o.props=an.mergeEvaluated.props(s,w.props,o.props));else {let g=s.var("props",(0, we._)`${m}.evaluated.props`);o.props=an.mergeEvaluated.props(s,g,o.props,we.Name);}if(o.items!==true)if(w&&!w.dynamicItems)w.items!==void 0&&(o.items=an.mergeEvaluated.items(s,w.items,o.items));else {let g=s.var("items",(0, we._)`${m}.evaluated.items`);o.items=an.mergeEvaluated.items(s,g,o.items,we.Name);}}}Rt.callRef=un;Rt.default=jp;});var Vi=x(Fs=>{Object.defineProperty(Fs,"__esModule",{value:true});var Np=qi(),qp=Li(),Dp=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",Np.default,qp.default];Fs.default=Dp;});var Bi=x(Ms=>{Object.defineProperty(Ms,"__esModule",{value:true});var cn=B(),it=cn.operators,dn={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}},Fp={message:({keyword:e,schemaCode:t})=>(0, cn.str)`must be ${dn[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0, cn._)`{comparison: ${dn[e].okStr}, limit: ${t}}`},Mp={keyword:Object.keys(dn),type:"number",schemaType:"number",$data:true,error:Fp,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0, cn._)`${r} ${dn[t].fail} ${n} || isNaN(${r})`);}};Ms.default=Mp;});var Gi=x(Ls=>{Object.defineProperty(Ls,"__esModule",{value:true});var hr=B(),Lp={message:({schemaCode:e})=>(0, hr.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0, hr._)`{multipleOf: ${e}}`},Vp={keyword:"multipleOf",type:"number",schemaType:"number",$data:true,error:Lp,code(e){let{gen:t,data:r,schemaCode:n,it:s}=e,o=s.opts.multipleOfPrecision,a=t.let("res"),i=o?(0, hr._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${o}`:(0, hr._)`${a} !== parseInt(${a})`;e.fail$data((0, hr._)`(${n} === 0 || (${a} = ${r}/${n}, ${i}))`);}};Ls.default=Vp;});var Ui=x(Vs=>{Object.defineProperty(Vs,"__esModule",{value:true});function Ki(e){let t=e.length,r=0,n=0,s;for(;n<t;)r++,s=e.charCodeAt(n++),s>=55296&&s<=56319&&n<t&&(s=e.charCodeAt(n),(s&64512)===56320&&n++);return r}Vs.default=Ki;Ki.code='require("ajv/dist/runtime/ucs2length").default';});var Ji=x(Bs=>{Object.defineProperty(Bs,"__esModule",{value:true});var Ct=B(),Bp=z(),Gp=Ui(),Kp={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return (0, Ct.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0, Ct._)`{limit: ${e}}`},Up={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:true,error:Kp,code(e){let{keyword:t,data:r,schemaCode:n,it:s}=e,o=t==="maxLength"?Ct.operators.GT:Ct.operators.LT,a=s.opts.unicode===false?(0, Ct._)`${r}.length`:(0, Ct._)`${(0, Bp.useFunc)(e.gen,Gp.default)}(${r})`;e.fail$data((0, Ct._)`${a} ${o} ${n}`);}};Bs.default=Up;});var zi=x(Gs=>{Object.defineProperty(Gs,"__esModule",{value:true});var Jp=xe(),zp=z(),Bt=B(),Hp={message:({schemaCode:e})=>(0, Bt.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0, Bt._)`{pattern: ${e}}`},Wp={keyword:"pattern",type:"string",schemaType:"string",$data:true,error:Hp,code(e){let{gen:t,data:r,$data:n,schema:s,schemaCode:o,it:a}=e,i=a.opts.unicodeRegExp?"u":"";if(n){let{regExp:u}=a.opts.code,c=u.code==="new RegExp"?(0, Bt._)`new RegExp`:(0, zp.useFunc)(t,u),d=t.let("valid");t.try(()=>t.assign(d,(0, Bt._)`${c}(${o}, ${i}).test(${r})`),()=>t.assign(d,false)),e.fail$data((0, Bt._)`!${d}`);}else {let u=(0, Jp.usePattern)(e,s);e.fail$data((0, Bt._)`!${u}.test(${r})`);}}};Gs.default=Wp;});var Hi=x(Ks=>{Object.defineProperty(Ks,"__esModule",{value:true});var yr=B(),Yp={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return (0, yr.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0, yr._)`{limit: ${e}}`},Xp={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:true,error:Yp,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxProperties"?yr.operators.GT:yr.operators.LT;e.fail$data((0, yr._)`Object.keys(${r}).length ${s} ${n}`);}};Ks.default=Xp;});var Wi=x(Us=>{Object.defineProperty(Us,"__esModule",{value:true});var vr=xe(),kr=B(),Qp=z(),Zp={message:({params:{missingProperty:e}})=>(0, kr.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0, kr._)`{missingProperty: ${e}}`},em={keyword:"required",type:"object",schemaType:"array",$data:true,error:Zp,code(e){let{gen:t,schema:r,schemaCode:n,data:s,$data:o,it:a}=e,{opts:i}=a;if(!o&&r.length===0)return;let u=r.length>=i.loopRequired;if(a.allErrors?c():d(),i.strictRequired){let v=e.parentSchema.properties,{definedProperties:m}=e.it;for(let p of r)if(v?.[p]===void 0&&!m.has(p)){let w=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${p}" is not defined at "${w}" (strictRequired)`;(0, Qp.checkStrictMode)(a,g,a.opts.strictRequired);}}function c(){if(u||o)e.block$data(kr.nil,l);else for(let v of r)(0, vr.checkReportMissingProp)(e,v);}function d(){let v=t.let("missing");if(u||o){let m=t.let("valid",true);e.block$data(m,()=>k(v,m)),e.ok(m);}else t.if((0, vr.checkMissingProp)(e,r,v)),(0, vr.reportMissingProp)(e,v),t.else();}function l(){t.forOf("prop",n,v=>{e.setParams({missingProperty:v}),t.if((0, vr.noPropertyInData)(t,s,v,i.ownProperties),()=>e.error());});}function k(v,m){e.setParams({missingProperty:v}),t.forOf(v,n,()=>{t.assign(m,(0, vr.propertyInData)(t,s,v,i.ownProperties)),t.if((0, kr.not)(m),()=>{e.error(),t.break();});},kr.nil);}}};Us.default=em;});var Yi=x(Js=>{Object.defineProperty(Js,"__esModule",{value:true});var wr=B(),tm={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return (0, wr.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0, wr._)`{limit: ${e}}`},rm={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:true,error:tm,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxItems"?wr.operators.GT:wr.operators.LT;e.fail$data((0, wr._)`${r}.length ${s} ${n}`);}};Js.default=rm;});var ln=x(zs=>{Object.defineProperty(zs,"__esModule",{value:true});var Xi=ys();Xi.code='require("ajv/dist/runtime/equal").default';zs.default=Xi;});var Qi=x(Ws=>{Object.defineProperty(Ws,"__esModule",{value:true});var Hs=ar(),ce=B(),nm=z(),sm=ln(),om={message:({params:{i:e,j:t}})=>(0, ce.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0, ce._)`{i: ${e}, j: ${t}}`},am={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:true,error:om,code(e){let{gen:t,data:r,$data:n,schema:s,parentSchema:o,schemaCode:a,it:i}=e;if(!n&&!s)return;let u=t.let("valid"),c=o.items?(0, Hs.getSchemaTypes)(o.items):[];e.block$data(u,d,(0, ce._)`${a} === false`),e.ok(u);function d(){let m=t.let("i",(0, ce._)`${r}.length`),p=t.let("j");e.setParams({i:m,j:p}),t.assign(u,true),t.if((0, ce._)`${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 w=t.name("item"),g=(0, Hs.checkDataTypes)(c,w,i.opts.strictNumbers,Hs.DataType.Wrong),f=t.const("indices",(0, ce._)`{}`);t.for((0, ce._)`;${m}--;`,()=>{t.let(w,(0, ce._)`${r}[${m}]`),t.if(g,(0, ce._)`continue`),c.length>1&&t.if((0, ce._)`typeof ${w} == "string"`,(0, ce._)`${w} += "_"`),t.if((0, ce._)`typeof ${f}[${w}] == "number"`,()=>{t.assign(p,(0, ce._)`${f}[${w}]`),e.error(),t.assign(u,false).break();}).code((0, ce._)`${f}[${w}] = ${m}`);});}function v(m,p){let w=(0, nm.useFunc)(t,sm.default),g=t.name("outer");t.label(g).for((0, ce._)`;${m}--;`,()=>t.for((0, ce._)`${p} = ${m}; ${p}--;`,()=>t.if((0, ce._)`${w}(${r}[${m}], ${r}[${p}])`,()=>{e.error(),t.assign(u,false).break(g);})));}}};Ws.default=am;});var Zi=x(Xs=>{Object.defineProperty(Xs,"__esModule",{value:true});var Ys=B(),im=z(),um=ln(),cm={message:"must be equal to constant",params:({schemaCode:e})=>(0, Ys._)`{allowedValue: ${e}}`},dm={keyword:"const",$data:true,error:cm,code(e){let{gen:t,data:r,$data:n,schemaCode:s,schema:o}=e;n||o&&typeof o=="object"?e.fail$data((0, Ys._)`!${(0, im.useFunc)(t,um.default)}(${r}, ${s})`):e.fail((0, Ys._)`${o} !== ${r}`);}};Xs.default=dm;});var eu=x(Qs=>{Object.defineProperty(Qs,"__esModule",{value:true});var br=B(),lm=z(),fm=ln(),pm={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0, br._)`{allowedValues: ${e}}`},mm={keyword:"enum",schemaType:"array",$data:true,error:pm,code(e){let{gen:t,data:r,$data:n,schema:s,schemaCode:o,it:a}=e;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, lm.useFunc)(t,fm.default)),d;if(i||n)d=t.let("valid"),e.block$data(d,l);else {if(!Array.isArray(s))throw new Error("ajv implementation error");let v=t.const("vSchema",o);d=(0, br.or)(...s.map((m,p)=>k(v,p)));}e.pass(d);function l(){t.assign(d,false),t.forOf("v",o,v=>t.if((0, br._)`${c()}(${r}, ${v})`,()=>t.assign(d,true).break()));}function k(v,m){let p=s[m];return typeof p=="object"&&p!==null?(0, br._)`${c()}(${r}, ${v}[${m}])`:(0, br._)`${r} === ${p}`}}};Qs.default=mm;});var tu=x(Zs=>{Object.defineProperty(Zs,"__esModule",{value:true});var gm=Bi(),hm=Gi(),ym=Ji(),vm=zi(),km=Hi(),wm=Wi(),bm=Yi(),Sm=Qi(),_m=Zi(),Rm=eu(),Cm=[gm.default,hm.default,ym.default,vm.default,km.default,wm.default,bm.default,Sm.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},_m.default,Rm.default];Zs.default=Cm;});var to=x(Sr=>{Object.defineProperty(Sr,"__esModule",{value:true});Sr.validateAdditionalItems=void 0;var $t=B(),eo=z(),$m={message:({params:{len:e}})=>(0, $t.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0, $t._)`{limit: ${e}}`},Em={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:$m,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0, eo.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}ru(e,n);}};function ru(e,t){let{gen:r,schema:n,data:s,keyword:o,it:a}=e;a.items=true;let i=r.const("len",(0, $t._)`${s}.length`);if(n===false)e.setParams({len:t.length}),e.pass((0, $t._)`${i} <= ${t.length}`);else if(typeof n=="object"&&!(0, eo.alwaysValidSchema)(a,n)){let c=r.var("valid",(0, $t._)`${i} <= ${t.length}`);r.if((0, $t.not)(c),()=>u(c)),e.ok(c);}function u(c){r.forRange("i",t.length,i,d=>{e.subschema({keyword:o,dataProp:d,dataPropType:eo.Type.Num},c),a.allErrors||r.if((0, $t.not)(c),()=>r.break());});}}Sr.validateAdditionalItems=ru;Sr.default=Em;});var ro=x(_r=>{Object.defineProperty(_r,"__esModule",{value:true});_r.validateTuple=void 0;var nu=B(),fn=z(),xm=xe(),Tm={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return su(e,"additionalItems",t);r.items=true,!(0, fn.alwaysValidSchema)(r,t)&&e.ok((0, xm.validateArray)(e));}};function su(e,t,r=e.schema){let{gen:n,parentSchema:s,data:o,keyword:a,it:i}=e;d(s),i.opts.unevaluated&&r.length&&i.items!==true&&(i.items=fn.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, fn.alwaysValidSchema)(i,l)||(n.if((0, nu._)`${c} > ${k}`,()=>e.subschema({keyword:a,schemaProp:k,dataProp:k},u)),e.ok(u));});function d(l){let{opts:k,errSchemaPath:v}=i,m=r.length,p=m===l.minItems&&(m===l.maxItems||l[t]===false);if(k.strictTuples&&!p){let w=`"${a}" is ${m}-tuple, but minItems or maxItems/${t} are not specified or different at path "${v}"`;(0, fn.checkStrictMode)(i,w,k.strictTuples);}}}_r.validateTuple=su;_r.default=Tm;});var ou=x(no=>{Object.defineProperty(no,"__esModule",{value:true});var Am=ro(),Im={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0, Am.validateTuple)(e,"items")};no.default=Im;});var iu=x(so=>{Object.defineProperty(so,"__esModule",{value:true});var au=B(),Pm=z(),Om=xe(),jm=to(),Nm={message:({params:{len:e}})=>(0, au.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0, au._)`{limit: ${e}}`},qm={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:Nm,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:s}=r;n.items=true,!(0, Pm.alwaysValidSchema)(n,t)&&(s?(0, jm.validateAdditionalItems)(e,s):e.ok((0, Om.validateArray)(e)));}};so.default=qm;});var uu=x(oo=>{Object.defineProperty(oo,"__esModule",{value:true});var Ae=B(),pn=z(),Dm={message:({params:{min:e,max:t}})=>t===void 0?(0, Ae.str)`must contain at least ${e} valid item(s)`:(0, Ae.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0, Ae._)`{minContains: ${e}}`:(0, Ae._)`{minContains: ${e}, maxContains: ${t}}`},Fm={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:true,error:Dm,code(e){let{gen:t,schema:r,parentSchema:n,data:s,it:o}=e,a,i,{minContains:u,maxContains:c}=n;o.opts.next?(a=u===void 0?1:u,i=c):a=1;let d=t.const("len",(0, Ae._)`${s}.length`);if(e.setParams({min:a,max:i}),i===void 0&&a===0){(0, pn.checkStrictMode)(o,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(i!==void 0&&a>i){(0, pn.checkStrictMode)(o,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0, pn.alwaysValidSchema)(o,r)){let p=(0, Ae._)`${d} >= ${a}`;i!==void 0&&(p=(0, Ae._)`${p} && ${d} <= ${i}`),e.pass(p);return}o.items=true;let l=t.name("valid");i===void 0&&a===1?v(l,()=>t.if(l,()=>t.break())):a===0?(t.let(l,true),i!==void 0&&t.if((0, Ae._)`${s}.length > 0`,k)):(t.let(l,false),k()),e.result(l,()=>e.reset());function k(){let p=t.name("_valid"),w=t.let("count",0);v(p,()=>t.if(p,()=>m(w)));}function v(p,w){t.forRange("i",0,d,g=>{e.subschema({keyword:"contains",dataProp:g,dataPropType:pn.Type.Num,compositeRule:true},p),w();});}function m(p){t.code((0, Ae._)`${p}++`),i===void 0?t.if((0, Ae._)`${p} >= ${a}`,()=>t.assign(l,true).break()):(t.if((0, Ae._)`${p} > ${i}`,()=>t.assign(l,false).break()),a===1?t.assign(l,true):t.if((0, Ae._)`${p} >= ${a}`,()=>t.assign(l,true)));}}};oo.default=Fm;});var lu=x(Ve=>{Object.defineProperty(Ve,"__esModule",{value:true});Ve.validateSchemaDeps=Ve.validatePropertyDeps=Ve.error=void 0;var ao=B(),Mm=z(),Rr=xe();Ve.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return (0, ao.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0, ao._)`{property: ${e},
|
|
5
|
+
|| ${a} === "boolean" || ${s} === null`).assign(i,(0, L._)`[${s}]`);}}}function Il({gen:e,parentData:t,parentDataProperty:r},n){e.if((0, L._)`${t} !== undefined`,()=>e.assign((0, L._)`${t}[${r}]`,n));}function vs(e,t,r,n=Vt.Correct){let s=n===Vt.Correct?L.operators.EQ:L.operators.NEQ,o;switch(e){case "null":return (0, L._)`${t} ${s} null`;case "array":o=(0, L._)`Array.isArray(${t})`;break;case "object":o=(0, L._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case "integer":o=a((0, L._)`!(${t} % 1) && !isNaN(${t})`);break;case "number":o=a();break;default:return (0, L._)`typeof ${t} ${s} ${e}`}return n===Vt.Correct?o:(0, L.not)(o);function a(i=L.nil){return (0, L.and)((0, L._)`typeof ${t} == "number"`,i,r?(0, L._)`isFinite(${t})`:L.nil)}}ye.checkDataType=vs;function Ss(e,t,r,n){if(e.length===1)return vs(e[0],t,r,n);let s,o=(0, Va.toHash)(e);if(o.array&&o.object){let a=(0, L._)`typeof ${t} != "object"`;s=o.null?a:(0, L._)`!${t} || ${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,vs(a,t,r,n));return s}ye.checkDataTypes=Ss;var Ol={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0, L._)`{type: ${e}}`:(0, L._)`{type: ${t}}`};function ws(e){let t=Pl(e);(0, $l.reportError)(t,Ol);}ye.reportTypeError=ws;function Pl(e){let{gen:t,data:r,schema:n}=e,s=(0, Va.schemaRefOrVal)(e,n,"type");return {gen:t,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:e}}});var Ua=x(Qr=>{Object.defineProperty(Qr,"__esModule",{value:true});Qr.assignDefaults=void 0;var Bt=G(),jl=z();function Nl(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let s in r)Ka(e,s,r[s].default);else t==="array"&&Array.isArray(n)&&n.forEach((s,o)=>Ka(e,o,s.default));}Qr.assignDefaults=Nl;function Ka(e,t,r){let{gen:n,compositeRule:s,data:o,opts:a}=e;if(r===void 0)return;let i=(0, Bt._)`${o}${(0, Bt.getProperty)(t)}`;if(s){(0, jl.checkStrictMode)(e,`default is ignored for: ${i}`);return}let c=(0, Bt._)`${i} === undefined`;a.useDefaults==="empty"&&(c=(0, Bt._)`${c} || ${i} === null || ${i} === ""`),n.if(c,(0, Bt._)`${i} = ${(0, Bt.stringify)(r)}`);}});var je=x(re=>{Object.defineProperty(re,"__esModule",{value:true});re.validateUnion=re.validateArray=re.usePattern=re.callValidateCode=re.schemaProperties=re.allSchemaProperties=re.noPropertyInData=re.propertyInData=re.isOwnProperty=re.hasPropFunc=re.reportMissingProp=re.checkMissingProp=re.checkReportMissingProp=void 0;var ae=G(),ks=z(),ut=Ze(),ql=z();function Fl(e,t){let{gen:r,data:n,it:s}=e;r.if(_s(r,n,t,s.opts.ownProperties),()=>{e.setParams({missingProperty:(0, ae._)`${t}`},true),e.error();});}re.checkReportMissingProp=Fl;function Dl({gen:e,data:t,it:{opts:r}},n,s){return (0, ae.or)(...n.map(o=>(0, ae.and)(_s(e,t,o,r.ownProperties),(0, ae._)`${s} = ${o}`)))}re.checkMissingProp=Dl;function Ml(e,t){e.setParams({missingProperty:t},true),e.error();}re.reportMissingProp=Ml;function Ja(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0, ae._)`Object.prototype.hasOwnProperty`})}re.hasPropFunc=Ja;function bs(e,t,r){return (0, ae._)`${Ja(e)}.call(${t}, ${r})`}re.isOwnProperty=bs;function Ll(e,t,r,n){let s=(0, ae._)`${t}${(0, ae.getProperty)(r)} !== undefined`;return n?(0, ae._)`${s} && ${bs(e,t,r)}`:s}re.propertyInData=Ll;function _s(e,t,r,n){let s=(0, ae._)`${t}${(0, ae.getProperty)(r)} === undefined`;return n?(0, ae.or)(s,(0, ae.not)(bs(e,t,r))):s}re.noPropertyInData=_s;function za(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}re.allSchemaProperties=za;function Vl(e,t){return za(t).filter(r=>!(0, ks.alwaysValidSchema)(e,t[r]))}re.schemaProperties=Vl;function Bl({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:o},it:a},i,c,u){let d=u?(0, ae._)`${e}, ${t}, ${n}${s}`:t,l=[[ut.default.instancePath,(0, ae.strConcat)(ut.default.instancePath,o)],[ut.default.parentData,a.parentData],[ut.default.parentDataProperty,a.parentDataProperty],[ut.default.rootData,ut.default.rootData]];a.opts.dynamicRef&&l.push([ut.default.dynamicAnchors,ut.default.dynamicAnchors]);let h=(0, ae._)`${d}, ${r.object(...l)}`;return c!==ae.nil?(0, ae._)`${i}.call(${c}, ${h})`:(0, ae._)`${i}(${h})`}re.callValidateCode=Bl;var Gl=(0, ae._)`new RegExp`;function Kl({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:s}=t.code,o=s(r,n);return e.scopeValue("pattern",{key:o.toString(),ref:o,code:(0, ae._)`${s.code==="new RegExp"?Gl:(0, ql.useFunc)(e,s)}(${r}, ${n})`})}re.usePattern=Kl;function Ul(e){let{gen:t,data:r,keyword:n,it:s}=e,o=t.name("valid");if(s.allErrors){let i=t.let("valid",true);return a(()=>t.assign(i,false)),i}return t.var(o,true),a(()=>t.break()),o;function a(i){let c=t.const("len",(0, ae._)`${r}.length`);t.forRange("i",0,c,u=>{e.subschema({keyword:n,dataProp:u,dataPropType:ks.Type.Num},o),t.if((0, ae.not)(o),i);});}}re.validateArray=Ul;function Jl(e){let{gen:t,schema:r,keyword:n,it:s}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0, ks.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=t.let("valid",false),i=t.name("_valid");t.block(()=>r.forEach((c,u)=>{let d=e.subschema({keyword:n,schemaProp:u,compositeRule:true},i);t.assign(a,(0, ae._)`${a} || ${i}`),e.mergeValidEvaluated(d,i)||t.if((0, ae.not)(a));})),e.result(a,()=>e.reset(),()=>e.error(true));}re.validateUnion=Jl;});var Ya=x(Ue=>{Object.defineProperty(Ue,"__esModule",{value:true});Ue.validateKeywordUsage=Ue.validSchemaType=Ue.funcKeywordCode=Ue.macroKeywordCode=void 0;var ke=G(),$t=Ze(),zl=je(),Hl=ir();function Wl(e,t){let{gen:r,keyword:n,schema:s,parentSchema:o,it:a}=e,i=t.macro.call(a.self,s,o,a),c=Wa(r,n,i);a.opts.validateSchema!==false&&a.self.validateSchema(i,true);let u=r.name("valid");e.subschema({schema:i,schemaPath:ke.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:true},u),e.pass(u,()=>e.error(true));}Ue.macroKeywordCode=Wl;function Yl(e,t){var r;let{gen:n,keyword:s,schema:o,parentSchema:a,$data:i,it:c}=e;Ql(c,t);let u=!i&&t.compile?t.compile.call(c.self,o,a,c):t.validate,d=Wa(n,s,u),l=n.let("valid");e.block$data(l,h),e.ok((r=t.valid)!==null&&r!==void 0?r:l);function h(){if(t.errors===false)p(),t.modifying&&Ha(e),v(()=>e.error());else {let _=t.async?y():f();t.modifying&&Ha(e),v(()=>Xl(e,_));}}function y(){let _=n.let("ruleErrs",null);return n.try(()=>p((0, ke._)`await `),m=>n.assign(l,false).if((0, ke._)`${m} instanceof ${c.ValidationError}`,()=>n.assign(_,(0, ke._)`${m}.errors`),()=>n.throw(m))),_}function f(){let _=(0, ke._)`${d}.errors`;return n.assign(_,null),p(ke.nil),_}function p(_=t.async?(0, ke._)`await `:ke.nil){let m=c.opts.passContext?$t.default.this:$t.default.self,g=!("compile"in t&&!i||t.schema===false);n.assign(l,(0, ke._)`${_}${(0, zl.callValidateCode)(e,d,m,g)}`,t.modifying);}function v(_){var m;n.if((0, ke.not)((m=t.valid)!==null&&m!==void 0?m:l),_);}}Ue.funcKeywordCode=Yl;function Ha(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0, ke._)`${n.parentData}[${n.parentDataProperty}]`));}function Xl(e,t){let{gen:r}=e;r.if((0, ke._)`Array.isArray(${t})`,()=>{r.assign($t.default.vErrors,(0, ke._)`${$t.default.vErrors} === null ? ${t} : ${$t.default.vErrors}.concat(${t})`).assign($t.default.errors,(0, ke._)`${$t.default.vErrors}.length`),(0, Hl.extendErrors)(e);},()=>e.error());}function Ql({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function Wa(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0, ke.stringify)(r)})}function Zl(e,t,r=false){return !t.length||t.some(n=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}Ue.validSchemaType=Zl;function ef({schema:e,opts:t,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(e,i)))throw new Error(`parent schema must have dependencies of ${o}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(e[o])){let c=`keyword "${o}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}Ue.validateKeywordUsage=ef;});var Qa=x(ct=>{Object.defineProperty(ct,"__esModule",{value:true});ct.extendSubschemaMode=ct.extendSubschemaData=ct.getSubschema=void 0;var Je=G(),Xa=z();function tf(e,{keyword:t,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:o,topSchemaRef:a}){if(t!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let i=e.schema[t];return r===void 0?{schema:i,schemaPath:(0, Je._)`${e.schemaPath}${(0, Je.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:i[r],schemaPath:(0, Je._)`${e.schemaPath}${(0, Je.getProperty)(t)}${(0, Je.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0, Xa.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')}ct.getSubschema=tf;function rf(e,t,{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}=t;if(r!==void 0){let{errorPath:u,dataPathArr:d,opts:l}=t,h=i.let("data",(0, Je._)`${t.data}${(0, Je.getProperty)(r)}`,true);c(h),e.errorPath=(0, Je.str)`${u}${(0, Xa.getErrorPath)(r,n,l.jsPropertySyntax)}`,e.parentDataProperty=(0, Je._)`${r}`,e.dataPathArr=[...d,e.parentDataProperty];}if(s!==void 0){let u=s instanceof Je.Name?s:i.let("data",s,true);c(u),a!==void 0&&(e.propertyName=a);}o&&(e.dataTypes=o);function c(u){e.data=u,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,u];}}ct.extendSubschemaData=rf;function nf(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:o}){n!==void 0&&(e.compositeRule=n),s!==void 0&&(e.createErrors=s),o!==void 0&&(e.allErrors=o),e.jtdDiscriminator=t,e.jtdMetadata=r;}ct.extendSubschemaMode=nf;});var Rs=x((tv,Za)=>{Za.exports=function e(t,r){if(t===r)return true;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return false;var n,s,o;if(Array.isArray(t)){if(n=t.length,n!=r.length)return false;for(s=n;s--!==0;)if(!e(t[s],r[s]))return false;return true}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(o=Object.keys(t),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(!e(t[a],r[a]))return false}return true}return t!==t&&r!==r};});var ti=x((rv,ei)=>{var dt=ei.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};Zr(t,n,s,e,"",e);};dt.keywords={additionalItems:true,items:true,contains:true,additionalProperties:true,propertyNames:true,not:true,if:true,then:true,else:true};dt.arrayKeywords={items:true,allOf:true,anyOf:true,oneOf:true};dt.propsKeywords={$defs:true,definitions:true,properties:true,patternProperties:true,dependencies:true};dt.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(e,t,r,n,s,o,a,i,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,s,o,a,i,c,u);for(var d in n){var l=n[d];if(Array.isArray(l)){if(d in dt.arrayKeywords)for(var h=0;h<l.length;h++)Zr(e,t,r,l[h],s+"/"+d+"/"+h,o,s,d,n,h);}else if(d in dt.propsKeywords){if(l&&typeof l=="object")for(var y in l)Zr(e,t,r,l[y],s+"/"+d+"/"+sf(y),o,s,d,n,y);}else (d in dt.keywords||e.allKeys&&!(d in dt.skipKeywords))&&Zr(e,t,r,l,s+"/"+d,o,s,d,n);}r(n,s,o,a,i,c,u);}}function sf(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var cr=x($e=>{Object.defineProperty($e,"__esModule",{value:true});$e.getSchemaRefs=$e.resolveUrl=$e.normalizeId=$e._getFullPath=$e.getFullPath=$e.inlineRef=void 0;var of=z(),af=Rs(),uf=ti(),cf=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function df(e,t=true){return typeof e=="boolean"?true:t===true?!Cs(e):t?ri(e)<=t:false}$e.inlineRef=df;var lf=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Cs(e){for(let t in e){if(lf.has(t))return true;let r=e[t];if(Array.isArray(r)&&r.some(Cs)||typeof r=="object"&&Cs(r))return true}return false}function ri(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!cf.has(r)&&(typeof e[r]=="object"&&(0, of.eachItem)(e[r],n=>t+=ri(n)),t===1/0))return 1/0}return t}function ni(e,t="",r){r!==false&&(t=Gt(t));let n=e.parse(t);return si(e,n)}$e.getFullPath=ni;function si(e,t){return e.serialize(t).split("#")[0]+"#"}$e._getFullPath=si;var ff=/#\/?$/;function Gt(e){return e?e.replace(ff,""):""}$e.normalizeId=Gt;function pf(e,t,r){return r=Gt(r),e.resolve(t,r)}$e.resolveUrl=pf;var mf=/^[a-z_][-a-z0-9._]*$/i;function gf(e,t){if(typeof e=="boolean")return {};let{schemaId:r,uriResolver:n}=this.opts,s=Gt(e[r]||t),o={"":s},a=ni(n,s,false),i={},c=new Set;return uf(e,{allKeys:true},(l,h,y,f)=>{if(f===void 0)return;let p=a+h,v=o[f];typeof l[r]=="string"&&(v=_.call(this,l[r])),m.call(this,l.$anchor),m.call(this,l.$dynamicAnchor),o[h]=v;function _(g){let w=this.opts.uriResolver.resolve;if(g=Gt(v?w(v,g):g),c.has(g))throw d(g);c.add(g);let k=this.refs[g];return typeof k=="string"&&(k=this.refs[k]),typeof k=="object"?u(l,k.schema,g):g!==Gt(p)&&(g[0]==="#"?(u(l,i[g],g),i[g]=l):this.refs[g]=p),g}function m(g){if(typeof g=="string"){if(!mf.test(g))throw new Error(`invalid anchor "${g}"`);_.call(this,`#${g}`);}}}),i;function u(l,h,y){if(h!==void 0&&!af(l,h))throw d(y)}function d(l){return new Error(`reference "${l}" resolves to more than one schema`)}}$e.getSchemaRefs=gf;});var fr=x(lt=>{Object.defineProperty(lt,"__esModule",{value:true});lt.getData=lt.KeywordCxt=lt.validateFunctionCode=void 0;var ci=Da(),oi=ur(),Es=ys(),en=ur(),hf=Ua(),lr=Ya(),$s=Qa(),A=G(),N=Ze(),yf=cr(),et=z(),dr=ir();function vf(e){if(fi(e)&&(pi(e),li(e))){kf(e);return}di(e,()=>(0, ci.topBoolOrEmptySchema)(e));}lt.validateFunctionCode=vf;function di({gen:e,validateName:t,schema:r,schemaEnv:n,opts:s},o){s.code.es5?e.func(t,(0, A._)`${N.default.data}, ${N.default.valCxt}`,n.$async,()=>{e.code((0, A._)`"use strict"; ${ai(r,s)}`),wf(e,s),e.code(o);}):e.func(t,(0, A._)`${N.default.data}, ${Sf(s)}`,n.$async,()=>e.code(ai(r,s)).code(o));}function Sf(e){return (0, A._)`{${N.default.instancePath}="", ${N.default.parentData}, ${N.default.parentDataProperty}, ${N.default.rootData}=${N.default.data}${e.dynamicRef?(0, A._)`, ${N.default.dynamicAnchors}={}`:A.nil}}={}`}function wf(e,t){e.if(N.default.valCxt,()=>{e.var(N.default.instancePath,(0, A._)`${N.default.valCxt}.${N.default.instancePath}`),e.var(N.default.parentData,(0, A._)`${N.default.valCxt}.${N.default.parentData}`),e.var(N.default.parentDataProperty,(0, A._)`${N.default.valCxt}.${N.default.parentDataProperty}`),e.var(N.default.rootData,(0, A._)`${N.default.valCxt}.${N.default.rootData}`),t.dynamicRef&&e.var(N.default.dynamicAnchors,(0, A._)`${N.default.valCxt}.${N.default.dynamicAnchors}`);},()=>{e.var(N.default.instancePath,(0, A._)`""`),e.var(N.default.parentData,(0, A._)`undefined`),e.var(N.default.parentDataProperty,(0, A._)`undefined`),e.var(N.default.rootData,N.default.data),t.dynamicRef&&e.var(N.default.dynamicAnchors,(0, A._)`{}`);});}function kf(e){let{schema:t,opts:r,gen:n}=e;di(e,()=>{r.$comment&&t.$comment&&gi(e),$f(e),n.let(N.default.vErrors,null),n.let(N.default.errors,0),r.unevaluated&&bf(e),mi(e),Tf(e);});}function bf(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0, A._)`${r}.evaluated`),t.if((0, A._)`${e.evaluated}.dynamicProps`,()=>t.assign((0, A._)`${e.evaluated}.props`,(0, A._)`undefined`)),t.if((0, A._)`${e.evaluated}.dynamicItems`,()=>t.assign((0, A._)`${e.evaluated}.items`,(0, A._)`undefined`));}function ai(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0, A._)`/*# sourceURL=${r} */`:A.nil}function _f(e,t){if(fi(e)&&(pi(e),li(e))){Rf(e,t);return}(0, ci.boolOrEmptySchema)(e,t);}function li({schema:e,self:t}){if(typeof e=="boolean")return !e;for(let r in e)if(t.RULES.all[r])return true;return false}function fi(e){return typeof e.schema!="boolean"}function Rf(e,t){let{schema:r,gen:n,opts:s}=e;s.$comment&&r.$comment&&gi(e),Ef(e),xf(e);let o=n.const("_errs",N.default.errors);mi(e,o),n.var(t,(0, A._)`${o} === ${N.default.errors}`);}function pi(e){(0, et.checkUnknownRules)(e),Cf(e);}function mi(e,t){if(e.opts.jtd)return ii(e,[],false,t);let r=(0, oi.getSchemaTypes)(e.schema),n=(0, oi.coerceAndCheckDataType)(e,r);ii(e,r,!n,t);}function Cf(e){let{schema:t,errSchemaPath:r,opts:n,self:s}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0, et.schemaHasRulesButRef)(t,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`);}function $f(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0, et.checkStrictMode)(e,"default is ignored in the schema root");}function Ef(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0, yf.resolveUrl)(e.opts.uriResolver,e.baseId,t));}function xf(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function gi({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:s}){let o=r.$comment;if(s.$comment===true)e.code((0, A._)`${N.default.self}.logger.log(${o})`);else if(typeof s.$comment=="function"){let a=(0, A.str)`${n}/$comment`,i=e.scopeValue("root",{ref:t.root});e.code((0, A._)`${N.default.self}.opts.$comment(${o}, ${a}, ${i}.schema)`);}}function Tf(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:s,opts:o}=e;r.$async?t.if((0, A._)`${N.default.errors} === 0`,()=>t.return(N.default.data),()=>t.throw((0, A._)`new ${s}(${N.default.vErrors})`)):(t.assign((0, A._)`${n}.errors`,N.default.vErrors),o.unevaluated&&Af(e),t.return((0, A._)`${N.default.errors} === 0`));}function Af({gen:e,evaluated:t,props:r,items:n}){r instanceof A.Name&&e.assign((0, A._)`${t}.props`,r),n instanceof A.Name&&e.assign((0, A._)`${t}.items`,n);}function ii(e,t,r,n){let{gen:s,schema:o,data:a,allErrors:i,opts:c,self:u}=e,{RULES:d}=u;if(o.$ref&&(c.ignoreKeywordsWithRef||!(0, et.schemaHasRulesButRef)(o,d))){s.block(()=>yi(e,"$ref",d.all.$ref.definition));return}c.jtd||If(e,t),s.block(()=>{for(let h of d.rules)l(h);l(d.post);});function l(h){(0, Es.shouldUseGroup)(o,h)&&(h.type?(s.if((0, en.checkDataType)(h.type,a,c.strictNumbers)),ui(e,h),t.length===1&&t[0]===h.type&&r&&(s.else(),(0, en.reportTypeError)(e)),s.endIf()):ui(e,h),i||s.if((0, A._)`${N.default.errors} === ${n||0}`));}}function ui(e,t){let{gen:r,schema:n,opts:{useDefaults:s}}=e;s&&(0, hf.assignDefaults)(e,t.type),r.block(()=>{for(let o of t.rules)(0, Es.shouldUseRule)(n,o)&&yi(e,o.keyword,o.definition,t.type);});}function If(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(Of(e,t),e.opts.allowUnionTypes||Pf(e,t),jf(e,e.dataTypes));}function Of(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{hi(e.dataTypes,r)||xs(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`);}),qf(e,t);}}function Pf(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&xs(e,"use allowUnionTypes to allow union type keyword");}function jf(e,t){let r=e.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0, Es.shouldUseRule)(e.schema,s)){let{type:o}=s.definition;o.length&&!o.some(a=>Nf(t,a))&&xs(e,`missing type "${o.join(",")}" for keyword "${n}"`);}}}function Nf(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function hi(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function qf(e,t){let r=[];for(let n of e.dataTypes)hi(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r;}function xs(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0, et.checkStrictMode)(e,t,e.opts.strictTypes);}var tn=class{constructor(t,r,n){if((0, lr.validateKeywordUsage)(t,r,n),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=n,this.data=t.data,this.schema=t.schema[n],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0, et.schemaRefOrVal)(t,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",vi(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0, lr.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=t.gen.const("_errs",N.default.errors));}result(t,r,n){this.failResult((0, A.not)(t),r,n);}failResult(t,r,n){this.gen.if(t),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else();}pass(t,r){this.failResult((0, A.not)(t),void 0,r);}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(false);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else();}fail$data(t){if(!this.$data)return this.fail(t);let{schemaCode:r}=this;this.fail((0, A._)`${r} !== undefined && (${(0, A.or)(this.invalid$data(),t)})`);}error(t,r,n){if(r){this.setParams(r),this._error(t,n),this.setParams({});return}this._error(t,n);}_error(t,r){(t?dr.reportExtraError:dr.reportError)(this,this.def.error,r);}$dataError(){(0, dr.reportError)(this,this.def.$dataError||dr.keyword$DataError);}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0, dr.resetErrorsCount)(this.gen,this.errsCount);}ok(t){this.allErrors||this.gen.if(t);}setParams(t,r){r?Object.assign(this.params,t):this.params=t;}block$data(t,r,n=A.nil){this.gen.block(()=>{this.check$data(t,n),r();});}check$data(t=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)),t!==A.nil&&n.assign(t,true),(o.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==A.nil&&n.assign(t,false)),n.else();}invalid$data(){let{gen:t,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 c=Array.isArray(n)?n:[n];return (0, A._)`${(0, en.checkDataTypes)(c,r,o.opts.strictNumbers,en.DataType.Wrong)}`}return A.nil}function i(){if(s.validateSchema){let c=t.scopeValue("validate$data",{ref:s.validateSchema});return (0, A._)`!${c}(${r})`}return A.nil}}subschema(t,r){let n=(0, $s.getSubschema)(this.it,t);(0, $s.extendSubschemaData)(n,this.it,t),(0, $s.extendSubschemaMode)(n,t);let s={...this.it,...n,items:void 0,props:void 0};return _f(s,r),s}mergeEvaluated(t,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==true&&t.props!==void 0&&(n.props=et.mergeEvaluated.props(s,t.props,n.props,r)),n.items!==true&&t.items!==void 0&&(n.items=et.mergeEvaluated.items(s,t.items,n.items,r)));}mergeValidEvaluated(t,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==true||n.items!==true))return s.if(r,()=>this.mergeEvaluated(t,A.Name)),true}};lt.KeywordCxt=tn;function yi(e,t,r,n){let s=new tn(e,r,t);"code"in r?r.code(s,n):s.$data&&r.validate?(0, lr.funcKeywordCode)(s,r):"macro"in r?(0, lr.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0, lr.funcKeywordCode)(s,r);}var Ff=/^\/(?:[^~]|~0|~1)*$/,Df=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function vi(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let s,o;if(e==="")return N.default.rootData;if(e[0]==="/"){if(!Ff.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);s=e,o=N.default.rootData;}else {let u=Df.exec(e);if(!u)throw new Error(`Invalid JSON-pointer: ${e}`);let d=+u[1];if(s=u[2],s==="#"){if(d>=t)throw new Error(c("property/index",d));return n[t-d]}if(d>t)throw new Error(c("data",d));if(o=r[t-d],!s)return o}let a=o,i=s.split("/");for(let u of i)u&&(o=(0, A._)`${o}${(0, A.getProperty)((0, et.unescapeJsonPointer)(u))}`,a=(0, A._)`${a} && ${o}`);return a;function c(u,d){return `Cannot access ${u} ${d} levels up, current level is ${t}`}}lt.getData=vi;});var rn=x(As=>{Object.defineProperty(As,"__esModule",{value:true});var Ts=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=true;}};As.default=Ts;});var pr=x(Ps=>{Object.defineProperty(Ps,"__esModule",{value:true});var Is=cr(),Os=class extends Error{constructor(t,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0, Is.resolveUrl)(t,r,n),this.missingSchema=(0, Is.normalizeId)((0, Is.getFullPath)(t,this.missingRef));}};Ps.default=Os;});var sn=x(Ne=>{Object.defineProperty(Ne,"__esModule",{value:true});Ne.resolveSchema=Ne.getCompilingSchema=Ne.resolveRef=Ne.compileSchema=Ne.SchemaEnv=void 0;var Ve=G(),Mf=rn(),Et=Ze(),Be=cr(),Si=z(),Lf=fr(),Kt=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let n;typeof t.schema=="object"&&(n=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0, Be.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={};}};Ne.SchemaEnv=Kt;function Ns(e){let t=wi.call(this,e);if(t)return t;let r=(0, Be.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:o}=this.opts,a=new Ve.CodeGen(this.scope,{es5:n,lines:s,ownProperties:o}),i;e.$async&&(i=a.scopeValue("Error",{ref:Mf.default,code:(0, Ve._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");e.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:Et.default.data,parentData:Et.default.parentData,parentDataProperty:Et.default.parentDataProperty,dataNames:[Et.default.data],dataPathArr:[Ve.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===true?{ref:e.schema,code:(0, Ve.stringify)(e.schema)}:{ref:e.schema}),validateName:c,ValidationError:i,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:Ve.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0, Ve._)`""`,opts:this.opts,self:this},d;try{this._compilations.add(e),(0,Lf.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let l=a.toString();d=`${a.scopeRefs(Et.default.scope)}return ${l}`,this.opts.code.process&&(d=this.opts.code.process(d,e));let y=new Function(`${Et.default.self}`,`${Et.default.scope}`,d)(this,this.scope.get());if(this.scope.value(c,{ref:y}),y.errors=null,y.schema=e.schema,y.schemaEnv=e,e.$async&&(y.$async=!0),this.opts.code.source===!0&&(y.source={validateName:c,validateCode:l,scopeValues:a._values}),this.opts.unevaluated){let{props:f,items:p}=u;y.evaluated={props:f instanceof Ve.Name?void 0:f,items:p instanceof Ve.Name?void 0:p,dynamicProps:f instanceof Ve.Name,dynamicItems:p instanceof Ve.Name},y.source&&(y.source.evaluated=(0,Ve.stringify)(y.evaluated));}return e.validate=y,e}catch(l){throw delete e.validate,delete e.validateName,d&&this.logger.error("Error compiling schema, function code:",d),l}finally{this._compilations.delete(e);}}Ne.compileSchema=Ns;function Vf(e,t,r){var n;r=(0, Be.resolveUrl)(this.opts.uriResolver,t,r);let s=e.refs[r];if(s)return s;let o=Kf.call(this,e,r);if(o===void 0){let a=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:i}=this.opts;a&&(o=new Kt({schema:a,schemaId:i,root:e,baseId:t}));}if(o!==void 0)return e.refs[r]=Bf.call(this,o)}Ne.resolveRef=Vf;function Bf(e){return (0, Be.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:Ns.call(this,e)}function wi(e){for(let t of this._compilations)if(Gf(t,e))return t}Ne.getCompilingSchema=wi;function Gf(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function Kf(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||nn.call(this,e,t)}function nn(e,t){let r=this.opts.uriResolver.parse(t),n=(0, Be._getFullPath)(this.opts.uriResolver,r),s=(0, Be.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===s)return js.call(this,r,e);let o=(0, Be.normalizeId)(n),a=this.refs[o]||this.schemas[o];if(typeof a=="string"){let i=nn.call(this,e,a);return typeof i?.schema!="object"?void 0:js.call(this,r,i)}if(typeof a?.schema=="object"){if(a.validate||Ns.call(this,a),o===(0, Be.normalizeId)(t)){let{schema:i}=a,{schemaId:c}=this.opts,u=i[c];return u&&(s=(0, Be.resolveUrl)(this.opts.uriResolver,s,u)),new Kt({schema:i,schemaId:c,root:e,baseId:s})}return js.call(this,r,a)}}Ne.resolveSchema=nn;var Uf=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function js(e,{baseId:t,schema:r,root:n}){var s;if(((s=e.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let i of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0, Si.unescapeFragment)(i)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!Uf.has(i)&&u&&(t=(0, Be.resolveUrl)(this.opts.uriResolver,t,u));}let o;if(typeof r!="boolean"&&r.$ref&&!(0, Si.schemaHasRulesButRef)(r,this.RULES)){let i=(0, Be.resolveUrl)(this.opts.uriResolver,t,r.$ref);o=nn.call(this,n,i);}let{schemaId:a}=this.opts;if(o=o||new Kt({schema:r,schemaId:a,root:n,baseId:t}),o.schema!==o.root.schema)return o}});var ki=x((uv,Jf)=>{Jf.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 Fs=x((cv,Ci)=>{var zf=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),_i=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 qs(e){let t="",r=0,n=0;for(n=0;n<e.length;n++)if(r=e[n].charCodeAt(0),r!==48){if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return "";t+=e[n];break}for(n+=1;n<e.length;n++){if(r=e[n].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return "";t+=e[n];}return t}var Hf=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function bi(e){return e.length=0,true}function Wf(e,t,r){if(e.length){let n=qs(e);if(n!=="")t.push(n);else return r.error=true,false;e.length=0;}return true}function Yf(e){let t=0,r={error:false,address:"",zone:""},n=[],s=[],o=false,a=false,i=Wf;for(let c=0;c<e.length;c++){let u=e[c];if(!(u==="["||u==="]"))if(u===":"){if(o===true&&(a=true),!i(s,n,r))break;if(++t>7){r.error=true;break}c>0&&e[c-1]===":"&&(o=true),n.push(":");continue}else if(u==="%"){if(!i(s,n,r))break;i=bi;}else {s.push(u);continue}}return s.length&&(i===bi?r.zone=s.join(""):a?n.push(s.join("")):n.push(qs(s))),r.address=n.join(""),r}function Ri(e){if(Xf(e,":")<2)return {host:e,isIPV6:false};let t=Yf(e);if(t.error)return {host:e,isIPV6:false};{let r=t.address,n=t.address;return t.zone&&(r+="%"+t.zone,n+="%25"+t.zone),{host:r,isIPV6:true,escapedHost:n}}}function Xf(e,t){let r=0;for(let n=0;n<e.length;n++)e[n]===t&&r++;return r}function Qf(e){let t=e,r=[],n=-1,s=0;for(;s=t.length;){if(s===1){if(t===".")break;if(t==="/"){r.push("/");break}else {r.push(t);break}}else if(s===2){if(t[0]==="."){if(t[1]===".")break;if(t[1]==="/"){t=t.slice(2);continue}}else if(t[0]==="/"&&(t[1]==="."||t[1]==="/")){r.push("/");break}}else if(s===3&&t==="/.."){r.length!==0&&r.pop(),r.push("/");break}if(t[0]==="."){if(t[1]==="."){if(t[2]==="/"){t=t.slice(3);continue}}else if(t[1]==="/"){t=t.slice(2);continue}}else if(t[0]==="/"&&t[1]==="."){if(t[2]==="/"){t=t.slice(2);continue}else if(t[2]==="."&&t[3]==="/"){t=t.slice(3),r.length!==0&&r.pop();continue}}if((n=t.indexOf("/",1))===-1){r.push(t);break}else r.push(t.slice(0,n)),t=t.slice(n);}return r.join("")}function Zf(e,t){let r=t!==true?escape:unescape;return e.scheme!==void 0&&(e.scheme=r(e.scheme)),e.userinfo!==void 0&&(e.userinfo=r(e.userinfo)),e.host!==void 0&&(e.host=r(e.host)),e.path!==void 0&&(e.path=r(e.path)),e.query!==void 0&&(e.query=r(e.query)),e.fragment!==void 0&&(e.fragment=r(e.fragment)),e}function ep(e){let t=[];if(e.userinfo!==void 0&&(t.push(e.userinfo),t.push("@")),e.host!==void 0){let r=unescape(e.host);if(!_i(r)){let n=Ri(r);n.isIPV6===true?r=`[${n.escapedHost}]`:r=e.host;}t.push(r);}return (typeof e.port=="number"||typeof e.port=="string")&&(t.push(":"),t.push(String(e.port))),t.length?t.join(""):void 0}Ci.exports={nonSimpleDomain:Hf,recomposeAuthority:ep,normalizeComponentEncoding:Zf,removeDotSegments:Qf,isIPv4:_i,isUUID:zf,normalizeIPv6:Ri,stringArrayToHexStripped:qs};});var Ai=x((dv,Ti)=>{var{isUUID:tp}=Fs(),rp=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,np=["http","https","ws","wss","urn","urn:uuid"];function sp(e){return np.indexOf(e)!==-1}function Ds(e){return e.secure===true?true:e.secure===false?false:e.scheme?e.scheme.length===3&&(e.scheme[0]==="w"||e.scheme[0]==="W")&&(e.scheme[1]==="s"||e.scheme[1]==="S")&&(e.scheme[2]==="s"||e.scheme[2]==="S"):false}function $i(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function Ei(e){let t=String(e.scheme).toLowerCase()==="https";return (e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function op(e){return e.secure=Ds(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function ap(e){if((e.port===(Ds(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0;}return e.fragment=void 0,e}function ip(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(rp);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let s=`${n}:${t.nid||e.nid}`,o=Ms(s);e.path=void 0,o&&(e=o.parse(e,t));}else e.error=e.error||"URN can not be parsed.";return e}function up(e,t){if(e.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),s=`${r}:${t.nid||n}`,o=Ms(s);o&&(e=o.serialize(e,t));let a=e,i=e.nss;return a.path=`${n||t.nid}:${i}`,t.skipEscape=true,a}function cp(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!tp(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function dp(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var xi={scheme:"http",domainHost:true,parse:$i,serialize:Ei},lp={scheme:"https",domainHost:xi.domainHost,parse:$i,serialize:Ei},on={scheme:"ws",domainHost:true,parse:op,serialize:ap},fp={scheme:"wss",domainHost:on.domainHost,parse:on.parse,serialize:on.serialize},pp={scheme:"urn",parse:ip,serialize:up,skipNormalize:true},mp={scheme:"urn:uuid",parse:cp,serialize:dp,skipNormalize:true},an={http:xi,https:lp,ws:on,wss:fp,urn:pp,"urn:uuid":mp};Object.setPrototypeOf(an,null);function Ms(e){return e&&(an[e]||an[e.toLowerCase()])||void 0}Ti.exports={wsIsSecure:Ds,SCHEMES:an,isValidSchemeName:sp,getSchemeHandler:Ms};});var Pi=x((lv,cn)=>{var{normalizeIPv6:gp,removeDotSegments:mr,recomposeAuthority:hp,normalizeComponentEncoding:un,isIPv4:yp,nonSimpleDomain:vp}=Fs(),{SCHEMES:Sp,getSchemeHandler:Ii}=Ai();function wp(e,t){return typeof e=="string"?e=ze(tt(e,t),t):typeof e=="object"&&(e=tt(ze(e,t),t)),e}function kp(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=Oi(tt(e,n),tt(t,n),n,true);return n.skipEscape=true,ze(s,n)}function Oi(e,t,r,n){let s={};return n||(e=tt(ze(e,r),r),t=tt(ze(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(s.scheme=t.scheme,s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=mr(t.path||""),s.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=mr(t.path||""),s.query=t.query):(t.path?(t.path[0]==="/"?s.path=mr(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?s.path="/"+t.path:e.path?s.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:s.path=t.path,s.path=mr(s.path)),s.query=t.query):(s.path=e.path,t.query!==void 0?s.query=t.query:s.query=e.query),s.userinfo=e.userinfo,s.host=e.host,s.port=e.port),s.scheme=e.scheme),s.fragment=t.fragment,s}function bp(e,t,r){return typeof e=="string"?(e=unescape(e),e=ze(un(tt(e,r),true),{...r,skipEscape:true})):typeof e=="object"&&(e=ze(un(e,true),{...r,skipEscape:true})),typeof t=="string"?(t=unescape(t),t=ze(un(tt(t,r),true),{...r,skipEscape:true})):typeof t=="object"&&(t=ze(un(t,true),{...r,skipEscape:true})),e.toLowerCase()===t.toLowerCase()}function ze(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),s=[],o=Ii(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=hp(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=mr(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 _p=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function tt(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=false;r.reference==="suffix"&&(r.scheme?e=r.scheme+":"+e:e="//"+e);let o=e.match(_p);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(yp(n.host)===false){let c=gp(n.host);n.host=c.host.toLowerCase(),s=c.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=Ii(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===false&&vp(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)&&(e.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 Ls={SCHEMES:Sp,normalize:wp,resolve:kp,resolveComponent:Oi,equal:bp,serialize:ze,parse:tt};cn.exports=Ls;cn.exports.default=Ls;cn.exports.fastUri=Ls;});var Ni=x(Vs=>{Object.defineProperty(Vs,"__esModule",{value:true});var ji=Pi();ji.code='require("ajv/dist/runtime/uri").default';Vs.default=ji;});var Gi=x(fe=>{Object.defineProperty(fe,"__esModule",{value:true});fe.CodeGen=fe.Name=fe.nil=fe.stringify=fe.str=fe._=fe.KeywordCxt=void 0;var Rp=fr();Object.defineProperty(fe,"KeywordCxt",{enumerable:true,get:function(){return Rp.KeywordCxt}});var Ut=G();Object.defineProperty(fe,"_",{enumerable:true,get:function(){return Ut._}});Object.defineProperty(fe,"str",{enumerable:true,get:function(){return Ut.str}});Object.defineProperty(fe,"stringify",{enumerable:true,get:function(){return Ut.stringify}});Object.defineProperty(fe,"nil",{enumerable:true,get:function(){return Ut.nil}});Object.defineProperty(fe,"Name",{enumerable:true,get:function(){return Ut.Name}});Object.defineProperty(fe,"CodeGen",{enumerable:true,get:function(){return Ut.CodeGen}});var Cp=rn(),Li=pr(),$p=hs(),gr=sn(),Ep=G(),hr=cr(),dn=ur(),Gs=z(),qi=ki(),xp=Ni(),Vi=(e,t)=>new RegExp(e,t);Vi.code="new RegExp";var Tp=["removeAdditional","useDefaults","coerceTypes"],Ap=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),Ip={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."},Op={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Fi=200;function Pp(e){var t,r,n,s,o,a,i,c,u,d,l,h,y,f,p,v,_,m,g,w,k,$,R,E,I;let P=e.strict,B=(t=e.code)===null||t===void 0?void 0:t.optimize,W=B===true||B===void 0?1:B||0,Z=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Vi,le=(s=e.uriResolver)!==null&&s!==void 0?s:xp.default;return {strictSchema:(a=(o=e.strictSchema)!==null&&o!==void 0?o:P)!==null&&a!==void 0?a:true,strictNumbers:(c=(i=e.strictNumbers)!==null&&i!==void 0?i:P)!==null&&c!==void 0?c:true,strictTypes:(d=(u=e.strictTypes)!==null&&u!==void 0?u:P)!==null&&d!==void 0?d:"log",strictTuples:(h=(l=e.strictTuples)!==null&&l!==void 0?l:P)!==null&&h!==void 0?h:"log",strictRequired:(f=(y=e.strictRequired)!==null&&y!==void 0?y:P)!==null&&f!==void 0?f:false,code:e.code?{...e.code,optimize:W,regExp:Z}:{optimize:W,regExp:Z},loopRequired:(p=e.loopRequired)!==null&&p!==void 0?p:Fi,loopEnum:(v=e.loopEnum)!==null&&v!==void 0?v:Fi,meta:(_=e.meta)!==null&&_!==void 0?_:true,messages:(m=e.messages)!==null&&m!==void 0?m:true,inlineRefs:(g=e.inlineRefs)!==null&&g!==void 0?g:true,schemaId:(w=e.schemaId)!==null&&w!==void 0?w:"$id",addUsedSchema:(k=e.addUsedSchema)!==null&&k!==void 0?k:true,validateSchema:($=e.validateSchema)!==null&&$!==void 0?$:true,validateFormats:(R=e.validateFormats)!==null&&R!==void 0?R:true,unicodeRegExp:(E=e.unicodeRegExp)!==null&&E!==void 0?E:true,int32range:(I=e.int32range)!==null&&I!==void 0?I:true,uriResolver:le}}var yr=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...Pp(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new Ep.ValueScope({scope:{},prefixes:Ap,es5:r,lines:n}),this.logger=Mp(t.logger);let s=t.validateFormats;t.validateFormats=false,this.RULES=(0, $p.getRules)(),Di.call(this,Ip,t,"NOT SUPPORTED"),Di.call(this,Op,t,"DEPRECATED","warn"),this._metaOpts=Fp.call(this),t.formats&&Np.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&qp.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),jp.call(this),t.validateFormats=s;}_addVocabularies(){this.addKeyword("$async");}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,s=qi;n==="id"&&(s={...qi},s.id=s.$id,delete s.$id),r&&t&&this.addMetaSchema(s,s[n],false);}defaultMeta(){let{meta:t,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof t=="object"?t[r]||t:void 0}validate(t,r){let n;if(typeof t=="string"){if(n=this.getSchema(t),!n)throw new Error(`no schema with key or ref "${t}"`)}else n=this.compile(t);let s=n(r);return "$async"in n||(this.errors=n.errors),s}compile(t,r){let n=this._addSchema(t,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(t,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return s.call(this,t,r);async function s(d,l){await o.call(this,d.$schema);let h=this._addSchema(d,l);return h.validate||a.call(this,h)}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 Li.default))throw l;return i.call(this,l),await c.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 c(d){let l=await u.call(this,d);this.refs[d]||await o.call(this,l.$schema),this.refs[d]||this.addSchema(l,d,r);}async function u(d){let l=this._loading[d];if(l)return l;try{return await(this._loading[d]=n(d))}finally{delete this._loading[d];}}}addSchema(t,r,n,s=this.opts.validateSchema){if(Array.isArray(t)){for(let a of t)this.addSchema(a,void 0,n,s);return this}let o;if(typeof t=="object"){let{schemaId:a}=this.opts;if(o=t[a],o!==void 0&&typeof o!="string")throw new Error(`schema ${a} must be string`)}return r=(0, hr.normalizeId)(r||o),this._checkUnique(r),this.schemas[r]=this._addSchema(t,n,r,s,true),this}addMetaSchema(t,r,n=this.opts.validateSchema){return this.addSchema(t,r,true,n),this}validateSchema(t,r){if(typeof t=="boolean")return true;let n;if(n=t.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,true;let s=this.validate(n,t);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(t){let r;for(;typeof(r=Mi.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,s=new gr.SchemaEnv({schema:{},schemaId:n});if(r=gr.resolveSchema.call(this,s,t),!r)return;this.refs[t]=r;}return r.validate||this._compileSchemaEnv(r)}removeSchema(t){if(t instanceof RegExp)return this._removeAllSchemas(this.schemas,t),this._removeAllSchemas(this.refs,t),this;switch(typeof t){case "undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case "string":{let r=Mi.call(this,t);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[t],delete this.refs[t],this}case "object":{let r=t;this._cache.delete(r);let n=t[this.opts.schemaId];return n&&(n=(0, hr.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let n;if(typeof t=="string")n=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof t=="object"&&r===void 0){if(r=t,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(Vp.call(this,n,r),!r)return (0, Gs.eachItem)(n,o=>Bs.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, Gs.eachItem)(n,s.type.length===0?o=>Bs.call(this,o,s):o=>s.type.forEach(a=>Bs.call(this,o,s,a))),this}getKeyword(t){let r=this.RULES.all[t];return typeof r=="object"?r.definition:!!r}removeKeyword(t){let{RULES:r}=this;delete r.keywords[t],delete r.all[t];for(let n of r.rules){let s=n.rules.findIndex(o=>o.keyword===t);s>=0&&n.rules.splice(s,1);}return this}addFormat(t,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[t]=r,this}errorsText(t=this.errors,{separator:r=", ",dataVar:n="data"}={}){return !t||t.length===0?"No errors":t.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,o)=>s+r+o)}$dataMetaSchema(t,r){let n=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let s of r){let o=s.split("/").slice(1),a=t;for(let i of o)a=a[i];for(let i in n){let c=n[i];if(typeof c!="object")continue;let{$data:u}=c.definition,d=a[i];u&&d&&(a[i]=Bi(d));}}return t}_removeAllSchemas(t,r){for(let n in t){let s=t[n];(!r||r.test(n))&&(typeof s=="string"?delete t[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete t[n]));}}_addSchema(t,r,n,s=this.opts.validateSchema,o=this.opts.addUsedSchema){let a,{schemaId:i}=this.opts;if(typeof t=="object")a=t[i];else {if(this.opts.jtd)throw new Error("schema must be object");if(typeof t!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(t);if(c!==void 0)return c;n=(0, hr.normalizeId)(a||n);let u=hr.getSchemaRefs.call(this,t,n);return c=new gr.SchemaEnv({schema:t,schemaId:i,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),o&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),s&&this.validateSchema(t,true),c}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):gr.compileSchema.call(this,t),!t.validate)throw new Error("ajv implementation error");return t.validate}_compileMetaSchema(t){let r=this.opts;this.opts=this._metaOpts;try{gr.compileSchema.call(this,t);}finally{this.opts=r;}}};yr.ValidationError=Cp.default;yr.MissingRefError=Li.default;fe.default=yr;function Di(e,t,r,n="error"){for(let s in e){let o=s;o in t&&this.logger[n](`${r}: option ${s}. ${e[o]}`);}}function Mi(e){return e=(0, hr.normalizeId)(e),this.schemas[e]||this.refs[e]}function jp(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t);}function Np(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t);}}function qp(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r);}}function Fp(){let e={...this.opts};for(let t of Tp)delete e[t];return e}var Dp={log(){},warn(){},error(){}};function Mp(e){if(e===false)return Dp;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw new Error("logger must implement log, warn and error methods")}var Lp=/^[a-z_$][a-z0-9_$:-]*$/i;function Vp(e,t){let{RULES:r}=this;if((0, Gs.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!Lp.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!t&&t.$data&&!("code"in t||"validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function Bs(e,t,r){var n;let s=t?.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:c})=>c===r);if(a||(a={type:r,rules:[]},o.rules.push(a)),o.keywords[e]=true,!t)return;let i={keyword:e,definition:{...t,type:(0, dn.getJSONTypes)(t.type),schemaType:(0, dn.getJSONTypes)(t.schemaType)}};t.before?Bp.call(this,a,i,t.before):a.rules.push(i),o.all[e]=i,(n=t.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c));}function Bp(e,t,r){let n=e.rules.findIndex(s=>s.keyword===r);n>=0?e.rules.splice(n,0,t):(e.rules.push(t),this.logger.warn(`rule ${r} is not defined`));}function Gp(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=Bi(t)),e.validateSchema=this.compile(t,true));}var Kp={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Bi(e){return {anyOf:[e,Kp]}}});var Ki=x(Ks=>{Object.defineProperty(Ks,"__esModule",{value:true});var Up={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Ks.default=Up;});var Hi=x(xt=>{Object.defineProperty(xt,"__esModule",{value:true});xt.callRef=xt.getValidate=void 0;var Jp=pr(),Ui=je(),Ee=G(),Jt=Ze(),Ji=sn(),ln=z(),zp={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:s,schemaEnv:o,validateName:a,opts:i,self:c}=n,{root:u}=o;if((r==="#"||r==="#/")&&s===u.baseId)return l();let d=Ji.resolveRef.call(c,u,s,r);if(d===void 0)throw new Jp.default(n.opts.uriResolver,s,r);if(d instanceof Ji.SchemaEnv)return h(d);return y(d);function l(){if(o===u)return fn(e,a,o,o.$async);let f=t.scopeValue("root",{ref:u});return fn(e,(0, Ee._)`${f}.validate`,u,u.$async)}function h(f){let p=zi(e,f);fn(e,p,f,f.$async);}function y(f){let p=t.scopeValue("schema",i.code.source===true?{ref:f,code:(0, Ee.stringify)(f)}:{ref:f}),v=t.name("valid"),_=e.subschema({schema:f,dataTypes:[],schemaPath:Ee.nil,topSchemaRef:p,errSchemaPath:r},v);e.mergeEvaluated(_),e.ok(v);}}};function zi(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0, Ee._)`${r.scopeValue("wrapper",{ref:t})}.validate`}xt.getValidate=zi;function fn(e,t,r,n){let{gen:s,it:o}=e,{allErrors:a,schemaEnv:i,opts:c}=o,u=c.passContext?Jt.default.this:Ee.nil;n?d():l();function d(){if(!i.$async)throw new Error("async schema referenced by sync schema");let f=s.let("valid");s.try(()=>{s.code((0, Ee._)`await ${(0, Ui.callValidateCode)(e,t,u)}`),y(t),a||s.assign(f,true);},p=>{s.if((0, Ee._)`!(${p} instanceof ${o.ValidationError})`,()=>s.throw(p)),h(p),a||s.assign(f,false);}),e.ok(f);}function l(){e.result((0, Ui.callValidateCode)(e,t,u),()=>y(t),()=>h(t));}function h(f){let p=(0, Ee._)`${f}.errors`;s.assign(Jt.default.vErrors,(0, Ee._)`${Jt.default.vErrors} === null ? ${p} : ${Jt.default.vErrors}.concat(${p})`),s.assign(Jt.default.errors,(0, Ee._)`${Jt.default.vErrors}.length`);}function y(f){var p;if(!o.opts.unevaluated)return;let v=(p=r?.validate)===null||p===void 0?void 0:p.evaluated;if(o.props!==true)if(v&&!v.dynamicProps)v.props!==void 0&&(o.props=ln.mergeEvaluated.props(s,v.props,o.props));else {let _=s.var("props",(0, Ee._)`${f}.evaluated.props`);o.props=ln.mergeEvaluated.props(s,_,o.props,Ee.Name);}if(o.items!==true)if(v&&!v.dynamicItems)v.items!==void 0&&(o.items=ln.mergeEvaluated.items(s,v.items,o.items));else {let _=s.var("items",(0, Ee._)`${f}.evaluated.items`);o.items=ln.mergeEvaluated.items(s,_,o.items,Ee.Name);}}}xt.callRef=fn;xt.default=zp;});var Wi=x(Us=>{Object.defineProperty(Us,"__esModule",{value:true});var Hp=Ki(),Wp=Hi(),Yp=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",Hp.default,Wp.default];Us.default=Yp;});var Yi=x(Js=>{Object.defineProperty(Js,"__esModule",{value:true});var pn=G(),ft=pn.operators,mn={maximum:{okStr:"<=",ok:ft.LTE,fail:ft.GT},minimum:{okStr:">=",ok:ft.GTE,fail:ft.LT},exclusiveMaximum:{okStr:"<",ok:ft.LT,fail:ft.GTE},exclusiveMinimum:{okStr:">",ok:ft.GT,fail:ft.LTE}},Xp={message:({keyword:e,schemaCode:t})=>(0, pn.str)`must be ${mn[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0, pn._)`{comparison: ${mn[e].okStr}, limit: ${t}}`},Qp={keyword:Object.keys(mn),type:"number",schemaType:"number",$data:true,error:Xp,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0, pn._)`${r} ${mn[t].fail} ${n} || isNaN(${r})`);}};Js.default=Qp;});var Xi=x(zs=>{Object.defineProperty(zs,"__esModule",{value:true});var vr=G(),Zp={message:({schemaCode:e})=>(0, vr.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0, vr._)`{multipleOf: ${e}}`},em={keyword:"multipleOf",type:"number",schemaType:"number",$data:true,error:Zp,code(e){let{gen:t,data:r,schemaCode:n,it:s}=e,o=s.opts.multipleOfPrecision,a=t.let("res"),i=o?(0, vr._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${o}`:(0, vr._)`${a} !== parseInt(${a})`;e.fail$data((0, vr._)`(${n} === 0 || (${a} = ${r}/${n}, ${i}))`);}};zs.default=em;});var Zi=x(Hs=>{Object.defineProperty(Hs,"__esModule",{value:true});function Qi(e){let t=e.length,r=0,n=0,s;for(;n<t;)r++,s=e.charCodeAt(n++),s>=55296&&s<=56319&&n<t&&(s=e.charCodeAt(n),(s&64512)===56320&&n++);return r}Hs.default=Qi;Qi.code='require("ajv/dist/runtime/ucs2length").default';});var eu=x(Ws=>{Object.defineProperty(Ws,"__esModule",{value:true});var Tt=G(),tm=z(),rm=Zi(),nm={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return (0, Tt.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0, Tt._)`{limit: ${e}}`},sm={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:true,error:nm,code(e){let{keyword:t,data:r,schemaCode:n,it:s}=e,o=t==="maxLength"?Tt.operators.GT:Tt.operators.LT,a=s.opts.unicode===false?(0, Tt._)`${r}.length`:(0, Tt._)`${(0, tm.useFunc)(e.gen,rm.default)}(${r})`;e.fail$data((0, Tt._)`${a} ${o} ${n}`);}};Ws.default=sm;});var tu=x(Ys=>{Object.defineProperty(Ys,"__esModule",{value:true});var om=je(),am=z(),zt=G(),im={message:({schemaCode:e})=>(0, zt.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0, zt._)`{pattern: ${e}}`},um={keyword:"pattern",type:"string",schemaType:"string",$data:true,error:im,code(e){let{gen:t,data:r,$data:n,schema:s,schemaCode:o,it:a}=e,i=a.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=a.opts.code,u=c.code==="new RegExp"?(0, zt._)`new RegExp`:(0, am.useFunc)(t,c),d=t.let("valid");t.try(()=>t.assign(d,(0, zt._)`${u}(${o}, ${i}).test(${r})`),()=>t.assign(d,false)),e.fail$data((0, zt._)`!${d}`);}else {let c=(0, om.usePattern)(e,s);e.fail$data((0, zt._)`!${c}.test(${r})`);}}};Ys.default=um;});var ru=x(Xs=>{Object.defineProperty(Xs,"__esModule",{value:true});var Sr=G(),cm={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return (0, Sr.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0, Sr._)`{limit: ${e}}`},dm={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:true,error:cm,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxProperties"?Sr.operators.GT:Sr.operators.LT;e.fail$data((0, Sr._)`Object.keys(${r}).length ${s} ${n}`);}};Xs.default=dm;});var nu=x(Qs=>{Object.defineProperty(Qs,"__esModule",{value:true});var wr=je(),kr=G(),lm=z(),fm={message:({params:{missingProperty:e}})=>(0, kr.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0, kr._)`{missingProperty: ${e}}`},pm={keyword:"required",type:"object",schemaType:"array",$data:true,error:fm,code(e){let{gen:t,schema:r,schemaCode:n,data:s,$data:o,it:a}=e,{opts:i}=a;if(!o&&r.length===0)return;let c=r.length>=i.loopRequired;if(a.allErrors?u():d(),i.strictRequired){let y=e.parentSchema.properties,{definedProperties:f}=e.it;for(let p of r)if(y?.[p]===void 0&&!f.has(p)){let v=a.schemaEnv.baseId+a.errSchemaPath,_=`required property "${p}" is not defined at "${v}" (strictRequired)`;(0, lm.checkStrictMode)(a,_,a.opts.strictRequired);}}function u(){if(c||o)e.block$data(kr.nil,l);else for(let y of r)(0, wr.checkReportMissingProp)(e,y);}function d(){let y=t.let("missing");if(c||o){let f=t.let("valid",true);e.block$data(f,()=>h(y,f)),e.ok(f);}else t.if((0, wr.checkMissingProp)(e,r,y)),(0, wr.reportMissingProp)(e,y),t.else();}function l(){t.forOf("prop",n,y=>{e.setParams({missingProperty:y}),t.if((0, wr.noPropertyInData)(t,s,y,i.ownProperties),()=>e.error());});}function h(y,f){e.setParams({missingProperty:y}),t.forOf(y,n,()=>{t.assign(f,(0, wr.propertyInData)(t,s,y,i.ownProperties)),t.if((0, kr.not)(f),()=>{e.error(),t.break();});},kr.nil);}}};Qs.default=pm;});var su=x(Zs=>{Object.defineProperty(Zs,"__esModule",{value:true});var br=G(),mm={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return (0, br.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0, br._)`{limit: ${e}}`},gm={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:true,error:mm,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxItems"?br.operators.GT:br.operators.LT;e.fail$data((0, br._)`${r}.length ${s} ${n}`);}};Zs.default=gm;});var gn=x(eo=>{Object.defineProperty(eo,"__esModule",{value:true});var ou=Rs();ou.code='require("ajv/dist/runtime/equal").default';eo.default=ou;});var au=x(ro=>{Object.defineProperty(ro,"__esModule",{value:true});var to=ur(),pe=G(),hm=z(),ym=gn(),vm={message:({params:{i:e,j:t}})=>(0, pe.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0, pe._)`{i: ${e}, j: ${t}}`},Sm={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:true,error:vm,code(e){let{gen:t,data:r,$data:n,schema:s,parentSchema:o,schemaCode:a,it:i}=e;if(!n&&!s)return;let c=t.let("valid"),u=o.items?(0, to.getSchemaTypes)(o.items):[];e.block$data(c,d,(0, pe._)`${a} === false`),e.ok(c);function d(){let f=t.let("i",(0, pe._)`${r}.length`),p=t.let("j");e.setParams({i:f,j:p}),t.assign(c,true),t.if((0, pe._)`${f} > 1`,()=>(l()?h:y)(f,p));}function l(){return u.length>0&&!u.some(f=>f==="object"||f==="array")}function h(f,p){let v=t.name("item"),_=(0, to.checkDataTypes)(u,v,i.opts.strictNumbers,to.DataType.Wrong),m=t.const("indices",(0, pe._)`{}`);t.for((0, pe._)`;${f}--;`,()=>{t.let(v,(0, pe._)`${r}[${f}]`),t.if(_,(0, pe._)`continue`),u.length>1&&t.if((0, pe._)`typeof ${v} == "string"`,(0, pe._)`${v} += "_"`),t.if((0, pe._)`typeof ${m}[${v}] == "number"`,()=>{t.assign(p,(0, pe._)`${m}[${v}]`),e.error(),t.assign(c,false).break();}).code((0, pe._)`${m}[${v}] = ${f}`);});}function y(f,p){let v=(0, hm.useFunc)(t,ym.default),_=t.name("outer");t.label(_).for((0, pe._)`;${f}--;`,()=>t.for((0, pe._)`${p} = ${f}; ${p}--;`,()=>t.if((0, pe._)`${v}(${r}[${f}], ${r}[${p}])`,()=>{e.error(),t.assign(c,false).break(_);})));}}};ro.default=Sm;});var iu=x(so=>{Object.defineProperty(so,"__esModule",{value:true});var no=G(),wm=z(),km=gn(),bm={message:"must be equal to constant",params:({schemaCode:e})=>(0, no._)`{allowedValue: ${e}}`},_m={keyword:"const",$data:true,error:bm,code(e){let{gen:t,data:r,$data:n,schemaCode:s,schema:o}=e;n||o&&typeof o=="object"?e.fail$data((0, no._)`!${(0, wm.useFunc)(t,km.default)}(${r}, ${s})`):e.fail((0, no._)`${o} !== ${r}`);}};so.default=_m;});var uu=x(oo=>{Object.defineProperty(oo,"__esModule",{value:true});var _r=G(),Rm=z(),Cm=gn(),$m={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0, _r._)`{allowedValues: ${e}}`},Em={keyword:"enum",schemaType:"array",$data:true,error:$m,code(e){let{gen:t,data:r,$data:n,schema:s,schemaCode:o,it:a}=e;if(!n&&s.length===0)throw new Error("enum must have non-empty array");let i=s.length>=a.opts.loopEnum,c,u=()=>c??(c=(0, Rm.useFunc)(t,Cm.default)),d;if(i||n)d=t.let("valid"),e.block$data(d,l);else {if(!Array.isArray(s))throw new Error("ajv implementation error");let y=t.const("vSchema",o);d=(0, _r.or)(...s.map((f,p)=>h(y,p)));}e.pass(d);function l(){t.assign(d,false),t.forOf("v",o,y=>t.if((0, _r._)`${u()}(${r}, ${y})`,()=>t.assign(d,true).break()));}function h(y,f){let p=s[f];return typeof p=="object"&&p!==null?(0, _r._)`${u()}(${r}, ${y}[${f}])`:(0, _r._)`${r} === ${p}`}}};oo.default=Em;});var cu=x(ao=>{Object.defineProperty(ao,"__esModule",{value:true});var xm=Yi(),Tm=Xi(),Am=eu(),Im=tu(),Om=ru(),Pm=nu(),jm=su(),Nm=au(),qm=iu(),Fm=uu(),Dm=[xm.default,Tm.default,Am.default,Im.default,Om.default,Pm.default,jm.default,Nm.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},qm.default,Fm.default];ao.default=Dm;});var uo=x(Rr=>{Object.defineProperty(Rr,"__esModule",{value:true});Rr.validateAdditionalItems=void 0;var At=G(),io=z(),Mm={message:({params:{len:e}})=>(0, At.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0, At._)`{limit: ${e}}`},Lm={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:Mm,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0, io.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}du(e,n);}};function du(e,t){let{gen:r,schema:n,data:s,keyword:o,it:a}=e;a.items=true;let i=r.const("len",(0, At._)`${s}.length`);if(n===false)e.setParams({len:t.length}),e.pass((0, At._)`${i} <= ${t.length}`);else if(typeof n=="object"&&!(0, io.alwaysValidSchema)(a,n)){let u=r.var("valid",(0, At._)`${i} <= ${t.length}`);r.if((0, At.not)(u),()=>c(u)),e.ok(u);}function c(u){r.forRange("i",t.length,i,d=>{e.subschema({keyword:o,dataProp:d,dataPropType:io.Type.Num},u),a.allErrors||r.if((0, At.not)(u),()=>r.break());});}}Rr.validateAdditionalItems=du;Rr.default=Lm;});var co=x(Cr=>{Object.defineProperty(Cr,"__esModule",{value:true});Cr.validateTuple=void 0;var lu=G(),hn=z(),Vm=je(),Bm={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return fu(e,"additionalItems",t);r.items=true,!(0, hn.alwaysValidSchema)(r,t)&&e.ok((0, Vm.validateArray)(e));}};function fu(e,t,r=e.schema){let{gen:n,parentSchema:s,data:o,keyword:a,it:i}=e;d(s),i.opts.unevaluated&&r.length&&i.items!==true&&(i.items=hn.mergeEvaluated.items(n,r.length,i.items));let c=n.name("valid"),u=n.const("len",(0, lu._)`${o}.length`);r.forEach((l,h)=>{(0, hn.alwaysValidSchema)(i,l)||(n.if((0, lu._)`${u} > ${h}`,()=>e.subschema({keyword:a,schemaProp:h,dataProp:h},c)),e.ok(c));});function d(l){let{opts:h,errSchemaPath:y}=i,f=r.length,p=f===l.minItems&&(f===l.maxItems||l[t]===false);if(h.strictTuples&&!p){let v=`"${a}" is ${f}-tuple, but minItems or maxItems/${t} are not specified or different at path "${y}"`;(0, hn.checkStrictMode)(i,v,h.strictTuples);}}}Cr.validateTuple=fu;Cr.default=Bm;});var pu=x(lo=>{Object.defineProperty(lo,"__esModule",{value:true});var Gm=co(),Km={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0, Gm.validateTuple)(e,"items")};lo.default=Km;});var gu=x(fo=>{Object.defineProperty(fo,"__esModule",{value:true});var mu=G(),Um=z(),Jm=je(),zm=uo(),Hm={message:({params:{len:e}})=>(0, mu.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0, mu._)`{limit: ${e}}`},Wm={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:Hm,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:s}=r;n.items=true,!(0, Um.alwaysValidSchema)(n,t)&&(s?(0, zm.validateAdditionalItems)(e,s):e.ok((0, Jm.validateArray)(e)));}};fo.default=Wm;});var hu=x(po=>{Object.defineProperty(po,"__esModule",{value:true});var qe=G(),yn=z(),Ym={message:({params:{min:e,max:t}})=>t===void 0?(0, qe.str)`must contain at least ${e} valid item(s)`:(0, qe.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0, qe._)`{minContains: ${e}}`:(0, qe._)`{minContains: ${e}, maxContains: ${t}}`},Xm={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:true,error:Ym,code(e){let{gen:t,schema:r,parentSchema:n,data:s,it:o}=e,a,i,{minContains:c,maxContains:u}=n;o.opts.next?(a=c===void 0?1:c,i=u):a=1;let d=t.const("len",(0, qe._)`${s}.length`);if(e.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'),e.fail();return}if((0, yn.alwaysValidSchema)(o,r)){let p=(0, qe._)`${d} >= ${a}`;i!==void 0&&(p=(0, qe._)`${p} && ${d} <= ${i}`),e.pass(p);return}o.items=true;let l=t.name("valid");i===void 0&&a===1?y(l,()=>t.if(l,()=>t.break())):a===0?(t.let(l,true),i!==void 0&&t.if((0, qe._)`${s}.length > 0`,h)):(t.let(l,false),h()),e.result(l,()=>e.reset());function h(){let p=t.name("_valid"),v=t.let("count",0);y(p,()=>t.if(p,()=>f(v)));}function y(p,v){t.forRange("i",0,d,_=>{e.subschema({keyword:"contains",dataProp:_,dataPropType:yn.Type.Num,compositeRule:true},p),v();});}function f(p){t.code((0, qe._)`${p}++`),i===void 0?t.if((0, qe._)`${p} >= ${a}`,()=>t.assign(l,true).break()):(t.if((0, qe._)`${p} > ${i}`,()=>t.assign(l,false).break()),a===1?t.assign(l,true):t.if((0, qe._)`${p} >= ${a}`,()=>t.assign(l,true)));}}};po.default=Xm;});var Su=x(He=>{Object.defineProperty(He,"__esModule",{value:true});He.validateSchemaDeps=He.validatePropertyDeps=He.error=void 0;var mo=G(),Qm=z(),$r=je();He.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return (0, mo.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0, mo._)`{property: ${e},
|
|
6
6
|
missingProperty: ${n},
|
|
7
7
|
depsCount: ${t},
|
|
8
|
-
deps: ${r}}`};var Lm={keyword:"dependencies",type:"object",schemaType:"object",error:Ve.error,code(e){let[t,r]=Vm(e);cu(e,t),du(e,r);}};function Vm({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let s=Array.isArray(e[n])?t:r;s[n]=e[n];}return [t,r]}function cu(e,t=e.schema){let{gen:r,data:n,it:s}=e;if(Object.keys(t).length===0)return;let o=r.let("missing");for(let a in t){let i=t[a];if(i.length===0)continue;let u=(0, Rr.propertyInData)(r,n,a,s.opts.ownProperties);e.setParams({property:a,depsCount:i.length,deps:i.join(", ")}),s.allErrors?r.if(u,()=>{for(let c of i)(0, Rr.checkReportMissingProp)(e,c);}):(r.if((0, ao._)`${u} && (${(0, Rr.checkMissingProp)(e,i,o)})`),(0, Rr.reportMissingProp)(e,o),r.else());}}Ve.validatePropertyDeps=cu;function du(e,t=e.schema){let{gen:r,data:n,keyword:s,it:o}=e,a=r.name("valid");for(let i in t)(0, Mm.alwaysValidSchema)(o,t[i])||(r.if((0, Rr.propertyInData)(r,n,i,o.opts.ownProperties),()=>{let u=e.subschema({keyword:s,schemaProp:i},a);e.mergeValidEvaluated(u,a);},()=>r.var(a,true)),e.ok(a));}Ve.validateSchemaDeps=du;Ve.default=Lm;});var pu=x(io=>{Object.defineProperty(io,"__esModule",{value:true});var fu=B(),Bm=z(),Gm={message:"property name must be valid",params:({params:e})=>(0, fu._)`{propertyName: ${e.propertyName}}`},Km={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:Gm,code(e){let{gen:t,schema:r,data:n,it:s}=e;if((0, Bm.alwaysValidSchema)(s,r))return;let o=t.name("valid");t.forIn("key",n,a=>{e.setParams({propertyName:a}),e.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:true},o),t.if((0, fu.not)(o),()=>{e.error(true),s.allErrors||t.break();});}),e.ok(o);}};io.default=Km;});var co=x(uo=>{Object.defineProperty(uo,"__esModule",{value:true});var mn=xe(),qe=B(),Um=Ke(),gn=z(),Jm={message:"must NOT have additional properties",params:({params:e})=>(0, qe._)`{additionalProperty: ${e.additionalProperty}}`},zm={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:true,trackErrors:true,error:Jm,code(e){let{gen:t,schema:r,parentSchema:n,data:s,errsCount:o,it:a}=e;if(!o)throw new Error("ajv implementation error");let{allErrors:i,opts:u}=a;if(a.props=true,u.removeAdditional!=="all"&&(0, gn.alwaysValidSchema)(a,r))return;let c=(0, mn.allSchemaProperties)(n.properties),d=(0, mn.allSchemaProperties)(n.patternProperties);l(),e.ok((0, qe._)`${o} === ${Um.default.errors}`);function l(){t.forIn("key",s,w=>{!c.length&&!d.length?m(w):t.if(k(w),()=>m(w));});}function k(w){let g;if(c.length>8){let f=(0, gn.schemaRefOrVal)(a,n.properties,"properties");g=(0, mn.isOwnProperty)(t,f,w);}else c.length?g=(0, qe.or)(...c.map(f=>(0, qe._)`${w} === ${f}`)):g=qe.nil;return d.length&&(g=(0, qe.or)(g,...d.map(f=>(0, qe._)`${(0, mn.usePattern)(e,f)}.test(${w})`))),(0, qe.not)(g)}function v(w){t.code((0, qe._)`delete ${s}[${w}]`);}function m(w){if(u.removeAdditional==="all"||u.removeAdditional&&r===false){v(w);return}if(r===false){e.setParams({additionalProperty:w}),e.error(),i||t.break();return}if(typeof r=="object"&&!(0, gn.alwaysValidSchema)(a,r)){let g=t.name("valid");u.removeAdditional==="failing"?(p(w,g,false),t.if((0, qe.not)(g),()=>{e.reset(),v(w);})):(p(w,g),i||t.if((0, qe.not)(g),()=>t.break()));}}function p(w,g,f){let y={keyword:"additionalProperties",dataProp:w,dataPropType:gn.Type.Str};f===false&&Object.assign(y,{compositeRule:true,createErrors:false,allErrors:false}),e.subschema(y,g);}}};uo.default=zm;});var hu=x(fo=>{Object.defineProperty(fo,"__esModule",{value:true});var Hm=dr(),mu=xe(),lo=z(),gu=co(),Wm={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:s,it:o}=e;o.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&gu.default.code(new Hm.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=lo.mergeEvaluated.props(t,(0, lo.toHash)(a),o.props));let i=a.filter(l=>!(0, lo.alwaysValidSchema)(o,r[l]));if(i.length===0)return;let u=t.name("valid");for(let l of i)c(l)?d(l):(t.if((0, mu.propertyInData)(t,s,l,o.opts.ownProperties)),d(l),o.allErrors||t.else().var(u,true),t.endIf()),e.it.definedProperties.add(l),e.ok(u);function c(l){return o.opts.useDefaults&&!o.compositeRule&&r[l].default!==void 0}function d(l){e.subschema({keyword:"properties",schemaProp:l,dataProp:l},u);}}};fo.default=Wm;});var wu=x(po=>{Object.defineProperty(po,"__esModule",{value:true});var yu=xe(),hn=B(),vu=z(),ku=z(),Ym={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:s,it:o}=e,{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=t.name("valid");o.props!==true&&!(o.props instanceof hn.Name)&&(o.props=(0, ku.evaluatedPropsToName)(t,o.props));let{props:l}=o;k();function k(){for(let p of i)c&&v(p),o.allErrors?m(p):(t.var(d,true),m(p),t.if(d));}function v(p){for(let w in c)new RegExp(p).test(w)&&(0, vu.checkStrictMode)(o,`property ${w} matches pattern ${p} (use allowMatchingProperties)`);}function m(p){t.forIn("key",n,w=>{t.if((0, hn._)`${(0, yu.usePattern)(e,p)}.test(${w})`,()=>{let g=u.includes(p);g||e.subschema({keyword:"patternProperties",schemaProp:p,dataProp:w,dataPropType:ku.Type.Str},d),o.opts.unevaluated&&l!==true?t.assign((0, hn._)`${l}[${w}]`,true):!g&&!o.allErrors&&t.if((0, hn.not)(d),()=>t.break());});});}}};po.default=Ym;});var bu=x(mo=>{Object.defineProperty(mo,"__esModule",{value:true});var Xm=z(),Qm={keyword:"not",schemaType:["object","boolean"],trackErrors:true,code(e){let{gen:t,schema:r,it:n}=e;if((0, Xm.alwaysValidSchema)(n,r)){e.fail();return}let s=t.name("valid");e.subschema({keyword:"not",compositeRule:true,createErrors:false,allErrors:false},s),e.failResult(s,()=>e.reset(),()=>e.error());},error:{message:"must NOT be valid"}};mo.default=Qm;});var Su=x(go=>{Object.defineProperty(go,"__esModule",{value:true});var Zm=xe(),eg={keyword:"anyOf",schemaType:"array",trackErrors:true,code:Zm.validateUnion,error:{message:"must match a schema in anyOf"}};go.default=eg;});var _u=x(ho=>{Object.defineProperty(ho,"__esModule",{value:true});var yn=B(),tg=z(),rg={message:"must match exactly one schema in oneOf",params:({params:e})=>(0, yn._)`{passingSchemas: ${e.passing}}`},ng={keyword:"oneOf",schemaType:"array",trackErrors:true,error:rg,code(e){let{gen:t,schema:r,parentSchema:n,it:s}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let o=r,a=t.let("valid",false),i=t.let("passing",null),u=t.name("_valid");e.setParams({passing:i}),t.block(c),e.result(a,()=>e.reset(),()=>e.error(true));function c(){o.forEach((d,l)=>{let k;(0, tg.alwaysValidSchema)(s,d)?t.var(u,true):k=e.subschema({keyword:"oneOf",schemaProp:l,compositeRule:true},u),l>0&&t.if((0, yn._)`${u} && ${a}`).assign(a,false).assign(i,(0, yn._)`[${i}, ${l}]`).else(),t.if(u,()=>{t.assign(a,true),t.assign(i,l),k&&e.mergeEvaluated(k,yn.Name);});});}}};ho.default=ng;});var Ru=x(yo=>{Object.defineProperty(yo,"__esModule",{value:true});var sg=z(),og={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=t.name("valid");r.forEach((o,a)=>{if((0, sg.alwaysValidSchema)(n,o))return;let i=e.subschema({keyword:"allOf",schemaProp:a},s);e.ok(s),e.mergeEvaluated(i);});}};yo.default=og;});var Eu=x(vo=>{Object.defineProperty(vo,"__esModule",{value:true});var vn=B(),$u=z(),ag={message:({params:e})=>(0, vn.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0, vn._)`{failingKeyword: ${e.ifClause}}`},ig={keyword:"if",schemaType:["object","boolean"],trackErrors:true,error:ag,code(e){let{gen:t,parentSchema:r,it:n}=e;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=t.let("valid",true),i=t.name("_valid");if(u(),e.reset(),s&&o){let d=t.let("ifClause");e.setParams({ifClause:d}),t.if(i,c("then",d),c("else",d));}else s?t.if(i,c("then")):t.if((0, vn.not)(i),c("else"));e.pass(a,()=>e.error(true));function u(){let d=e.subschema({keyword:"if",compositeRule:true,createErrors:false,allErrors:false},i);e.mergeEvaluated(d);}function c(d,l){return ()=>{let k=e.subschema({keyword:d},i);t.assign(a,i),e.mergeValidEvaluated(k,a),l?t.assign(l,(0, vn._)`${d}`):e.setParams({ifClause:d});}}}};function Cu(e,t){let r=e.schema[t];return r!==void 0&&!(0, $u.alwaysValidSchema)(e,r)}vo.default=ig;});var xu=x(ko=>{Object.defineProperty(ko,"__esModule",{value:true});var ug=z(),cg={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0, ug.checkStrictMode)(r,`"${e}" without "if" is ignored`);}};ko.default=cg;});var Tu=x(wo=>{Object.defineProperty(wo,"__esModule",{value:true});var dg=to(),lg=ou(),fg=ro(),pg=iu(),mg=uu(),gg=lu(),hg=pu(),yg=co(),vg=hu(),kg=wu(),wg=bu(),bg=Su(),Sg=_u(),_g=Ru(),Rg=Eu(),Cg=xu();function $g(e=false){let t=[wg.default,bg.default,Sg.default,_g.default,Rg.default,Cg.default,hg.default,yg.default,gg.default,vg.default,kg.default];return e?t.push(lg.default,pg.default):t.push(dg.default,fg.default),t.push(mg.default),t}wo.default=$g;});var Au=x(bo=>{Object.defineProperty(bo,"__esModule",{value:true});var ae=B(),Eg={message:({schemaCode:e})=>(0, ae.str)`must match format "${e}"`,params:({schemaCode:e})=>(0, ae._)`{format: ${e}}`},xg={keyword:"format",type:["number","string"],schemaType:"string",$data:true,error:Eg,code(e,t){let{gen:r,data:n,$data:s,schema:o,schemaCode:a,it:i}=e,{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, ae._)`${m}[${a}]`),w=r.let("fType"),g=r.let("format");r.if((0, ae._)`typeof ${p} == "object" && !(${p} instanceof RegExp)`,()=>r.assign(w,(0, ae._)`${p}.type || "string"`).assign(g,(0, ae._)`${p}.validate`),()=>r.assign(w,(0, ae._)`"string"`).assign(g,p)),e.fail$data((0, ae.or)(f(),y()));function f(){return u.strictSchema===false?ae.nil:(0, ae._)`${a} && !${g}`}function y(){let _=d.$async?(0, ae._)`(${p}.async ? await ${g}(${n}) : ${g}(${n}))`:(0, ae._)`${g}(${n})`,b=(0, ae._)`(typeof ${g} == "function" ? ${_} : ${g}.test(${n}))`;return (0, ae._)`${g} && ${g} !== true && ${w} === ${t} && !${b}`}}function v(){let m=l.formats[o];if(!m){f();return}if(m===true)return;let[p,w,g]=y(m);p===t&&e.pass(_());function f(){if(u.strictSchema===false){l.logger.warn(b());return}throw new Error(b());function b(){return `unknown format "${o}" ignored in schema at path "${c}"`}}function y(b){let $=b instanceof RegExp?(0, ae.regexpCode)(b):u.code.formats?(0, ae._)`${u.code.formats}${(0, ae.getProperty)(o)}`:void 0,R=r.scopeValue("formats",{key:o,ref:b,code:$});return typeof b=="object"&&!(b instanceof RegExp)?[b.type||"string",b.validate,(0, ae._)`${R}.validate`]:["string",b,R]}function _(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!d.$async)throw new Error("async format in sync schema");return (0, ae._)`await ${g}(${n})`}return typeof w=="function"?(0, ae._)`${g}(${n})`:(0, ae._)`${g}.test(${n})`}}}};bo.default=xg;});var Iu=x(So=>{Object.defineProperty(So,"__esModule",{value:true});var Tg=Au(),Ag=[Tg.default];So.default=Ag;});var Pu=x(Gt=>{Object.defineProperty(Gt,"__esModule",{value:true});Gt.contentVocabulary=Gt.metadataVocabulary=void 0;Gt.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Gt.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"];});var ju=x(_o=>{Object.defineProperty(_o,"__esModule",{value:true});var Ig=Vi(),Pg=tu(),Og=Tu(),jg=Iu(),Ou=Pu(),Ng=[Ig.default,Pg.default,(0, Og.default)(),jg.default,Ou.metadataVocabulary,Ou.contentVocabulary];_o.default=Ng;});var qu=x(kn=>{Object.defineProperty(kn,"__esModule",{value:true});kn.DiscrError=void 0;var Nu;(function(e){e.Tag="tag",e.Mapping="mapping";})(Nu||(kn.DiscrError=Nu={}));});var Fu=x(Co=>{Object.defineProperty(Co,"__esModule",{value:true});var Kt=B(),Ro=qu(),Du=en(),qg=lr(),Dg=z(),Fg={message:({params:{discrError:e,tagName:t}})=>e===Ro.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0, Kt._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},Mg={keyword:"discriminator",type:"object",schemaType:"object",error:Fg,code(e){let{gen:t,data:r,schema:n,parentSchema:s,it:o}=e,{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=t.let("valid",false),c=t.const("tag",(0, Kt._)`${r}${(0, Kt.getProperty)(i)}`);t.if((0, Kt._)`typeof ${c} == "string"`,()=>d(),()=>e.error(false,{discrError:Ro.DiscrError.Tag,tag:c,tagName:i})),e.ok(u);function d(){let v=k();t.if(false);for(let m in v)t.elseIf((0, Kt._)`${c} === ${m}`),t.assign(u,l(v[m]));t.else(),e.error(false,{discrError:Ro.DiscrError.Mapping,tag:c,tagName:i}),t.endIf();}function l(v){let m=t.name("valid"),p=e.subschema({keyword:"oneOf",schemaProp:v},m);return e.mergeEvaluated(p,Kt.Name),m}function k(){var v;let m={},p=g(s),w=true;for(let _=0;_<a.length;_++){let b=a[_];if(b?.$ref&&!(0, Dg.schemaHasRulesButRef)(b,o.self.RULES)){let R=b.$ref;if(b=Du.resolveRef.call(o.self,o.schemaEnv.root,o.baseId,R),b instanceof Du.SchemaEnv&&(b=b.schema),b===void 0)throw new qg.default(o.opts.uriResolver,o.baseId,R)}let $=(v=b?.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}"`);w=w&&(p||g(b)),f($,_);}if(!w)throw new Error(`discriminator: "${i}" must be required`);return m;function g({required:_}){return Array.isArray(_)&&_.includes(i)}function f(_,b){if(_.const)y(_.const,b);else if(_.enum)for(let $ of _.enum)y($,b);else throw new Error(`discriminator: "properties/${i}" must have "const" or "enum"`)}function y(_,b){if(typeof _!="string"||_ in m)throw new Error(`discriminator: "${i}" values must be unique strings`);m[_]=b;}}}};Co.default=Mg;});var Mu=x((Jv,Lg)=>{Lg.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,$o)=>{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 Vg=Ni(),Bg=ju(),Gg=Fu(),Lu=Mu(),Kg=["/properties"],wn="http://json-schema.org/draft-07/schema",Ut=class extends Vg.default{_addVocabularies(){super._addVocabularies(),Bg.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(Gg.default);}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(Lu,Kg):Lu;this.addMetaSchema(t,wn,false),this.refs["http://json-schema.org/schema"]=wn;}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(wn)?wn:void 0)}};ne.Ajv=Ut;$o.exports=ne=Ut;$o.exports.Ajv=Ut;Object.defineProperty(ne,"__esModule",{value:true});ne.default=Ut;var Ug=dr();Object.defineProperty(ne,"KeywordCxt",{enumerable:true,get:function(){return Ug.KeywordCxt}});var Jt=B();Object.defineProperty(ne,"_",{enumerable:true,get:function(){return Jt._}});Object.defineProperty(ne,"str",{enumerable:true,get:function(){return Jt.str}});Object.defineProperty(ne,"stringify",{enumerable:true,get:function(){return Jt.stringify}});Object.defineProperty(ne,"nil",{enumerable:true,get:function(){return Jt.nil}});Object.defineProperty(ne,"Name",{enumerable:true,get:function(){return Jt.Name}});Object.defineProperty(ne,"CodeGen",{enumerable:true,get:function(){return Jt.CodeGen}});var Jg=Qr();Object.defineProperty(ne,"ValidationError",{enumerable:true,get:function(){return Jg.default}});var zg=lr();Object.defineProperty(ne,"MissingRefError",{enumerable:true,get:function(){return zg.default}});});var Pr="b64:";function Gc(e){let t=new TextEncoder().encode(e),r=globalThis.Buffer,n;if(r)n=r.from(t).toString("base64");else if(typeof btoa=="function"){let s="";for(let o of t)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 Kc(e){let t=e.replace(/-/g,"+").replace(/_/g,"/")+"=".repeat((4-e.length%4)%4),r=globalThis.Buffer;if(r)return r.from(t,"base64").toString("utf8");if(typeof atob=="function"){let n=atob(t),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 se(e){return `${Pr}${Gc(JSON.stringify(e))}`}function Ye(e){if(!e.startsWith(Pr))throw new Error(`Invalid ref format (expected ${Pr}<base64url(json)>): ${e}`);let t;try{t=JSON.parse(Kc(e.slice(Pr.length)));}catch{throw new Error(`Invalid ref format (malformed base64url/json): ${e}`)}if(!t||typeof t!="object")throw new Error(`Invalid ref format (expected object payload): ${e}`);let r=t;if(typeof r.kind!="string"||typeof r.value!="string")throw new Error(`Invalid ref format (payload must contain string kind/value): ${e}`);return {kind:r.kind,value:r.value}}async function Bo(e,t,r){let n=e.tryAcquire();if(!n)return false;try{await t();}finally{n();}return r?.(),true}function Wt(e,t,r=".json"){let n=ie.join(e,".tmp");return T.mkdirSync(n,{recursive:true}),ie.join(n,`${t}-${Date.now()}-${Math.random().toString(36).slice(2,8)}${r}`)}function Xe(...e){return ie.join(...e)}function Jo(e){return ie.isAbsolute(e)}function On(){return randomUUID()}function zo(e){return createHash("sha256").update(e).digest("hex")}function Ho(e){return ie.dirname(fileURLToPath(e))}function Yc(e){if(typeof e=="object"&&e!==null){let{command:r,args:n=[],...s}=e,o=Ko(r,n);return {...s,command:o.command,args:o.args}}let t=Wo(e);if(t.length===0)throw new Error(`Empty command spec: ${JSON.stringify(e)}`);return Ko(t[0],t.slice(1))}function Ko(e,t){return /^(node|node\.exe)$/i.test(e)?{command:process.execPath,args:t}:/\.m?js$/i.test(e)?{command:process.execPath,args:[e,...t]}:{command:e,args:t}}function Wo(e){let t=[],r="",n=null;for(let s of e.trim()){if(n){s===n?n=null:r+=s;continue}if(s==='"'||s==="'"){n=s;continue}if(/\s/.test(s)){r&&(t.push(r),r="");continue}r+=s;}if(n)throw new Error(`Unterminated quote in command: ${e}`);return r&&t.push(r),t}function jn(e){return process.platform==="win32"&&/\.(cmd|bat)$/i.test(e)}function Yo(e,t){let{command:r,args:n=[],cwd:s,env:o,timeoutMs:a}=e;return execFileSync(r,n,{shell:jn(r),timeout:a,encoding:t?.encoding??"utf-8",cwd:s,windowsHide:true,env:o?{...process.env,...o}:void 0,input:t?.input})}function Xc(e,t){let{command:r,args:n=[],cwd:s,env:o,timeoutMs:a=3e4}=e;execFile(r,n,{shell:jn(r),encoding:"utf8",windowsHide:true,timeout:a,maxBuffer:10*1024*1024,cwd:s,env:o?{...process.env,...o}:void 0},(i,u,c)=>t(i??null,u,c));}ie.join(Pn.tmpdir(),".board-live-cards-git-bash-cache.json");function jr(e){let{command:t,args:r=[]}=e;if(process.platform==="win32"){spawn(t,r,{detached:true,stdio:"ignore",windowsHide:true,shell:jn(t)}).unref();return}spawn(t,r,{detached:true,stdio:"ignore"}).unref();}function Nn(e,t,r){let n=ie.join(e,"board-live-cards-cli.js");if(T.existsSync(n))return {cmd:process.execPath,args:[n,t,...r]};let s=ie.join(e,"board-live-cards-cli.ts"),o=ie.join(e,"..","..","node_modules","tsx","dist","cli.mjs"),a=ie.join(e,"..","..","node_modules",".bin","tsx"),i=T.existsSync(o)?o:a;return T.existsSync(s)&&T.existsSync(i)?{cmd:process.execPath,args:[i,s,t,...r]}:{cmd:process.platform==="win32"?"npx.cmd":"npx",args:["tsx",s,t,...r]}}function qn(e){let t=ie.join(e,"..","..","..","dev","board-live-cards-cli.js");if(T.existsSync(t))return t;let r=ie.join(e,"..","..","dev","board-live-cards-cli.js");if(T.existsSync(r))return r;let n=ie.join(e,"board-live-cards-cli.js");if(T.existsSync(n))return n;throw new Error(`resolveBoardCliCallbackTarget: cannot find callback target in ${e} (expected dev/board-live-cards-cli.js wrapper or ${n})`)}function Xo(e,t,r){let n=["--base-ref",se(t)];r&&n.push("--notify-channel",r);let{cmd:s,args:o}=Nn(e,"process-accumulated-events",n);jr({command:s,args:o});}function Qc(e){return process.platform==="win32"?`\\\\.\\pipe\\${e}`:ie.join(Pn.tmpdir(),`${e}.sock`)}var Or=new Map;function Qo(e,t,r){if(t.length===0)return;let n=t.map(i=>JSON.stringify(i)).join(`
|
|
8
|
+
deps: ${r}}`};var Zm={keyword:"dependencies",type:"object",schemaType:"object",error:He.error,code(e){let[t,r]=eg(e);yu(e,t),vu(e,r);}};function eg({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let s=Array.isArray(e[n])?t:r;s[n]=e[n];}return [t,r]}function yu(e,t=e.schema){let{gen:r,data:n,it:s}=e;if(Object.keys(t).length===0)return;let o=r.let("missing");for(let a in t){let i=t[a];if(i.length===0)continue;let c=(0, $r.propertyInData)(r,n,a,s.opts.ownProperties);e.setParams({property:a,depsCount:i.length,deps:i.join(", ")}),s.allErrors?r.if(c,()=>{for(let u of i)(0, $r.checkReportMissingProp)(e,u);}):(r.if((0, mo._)`${c} && (${(0, $r.checkMissingProp)(e,i,o)})`),(0, $r.reportMissingProp)(e,o),r.else());}}He.validatePropertyDeps=yu;function vu(e,t=e.schema){let{gen:r,data:n,keyword:s,it:o}=e,a=r.name("valid");for(let i in t)(0, Qm.alwaysValidSchema)(o,t[i])||(r.if((0, $r.propertyInData)(r,n,i,o.opts.ownProperties),()=>{let c=e.subschema({keyword:s,schemaProp:i},a);e.mergeValidEvaluated(c,a);},()=>r.var(a,true)),e.ok(a));}He.validateSchemaDeps=vu;He.default=Zm;});var ku=x(go=>{Object.defineProperty(go,"__esModule",{value:true});var wu=G(),tg=z(),rg={message:"property name must be valid",params:({params:e})=>(0, wu._)`{propertyName: ${e.propertyName}}`},ng={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:rg,code(e){let{gen:t,schema:r,data:n,it:s}=e;if((0, tg.alwaysValidSchema)(s,r))return;let o=t.name("valid");t.forIn("key",n,a=>{e.setParams({propertyName:a}),e.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:true},o),t.if((0, wu.not)(o),()=>{e.error(true),s.allErrors||t.break();});}),e.ok(o);}};go.default=ng;});var yo=x(ho=>{Object.defineProperty(ho,"__esModule",{value:true});var vn=je(),Ge=G(),sg=Ze(),Sn=z(),og={message:"must NOT have additional properties",params:({params:e})=>(0, Ge._)`{additionalProperty: ${e.additionalProperty}}`},ag={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:true,trackErrors:true,error:og,code(e){let{gen:t,schema:r,parentSchema:n,data:s,errsCount:o,it:a}=e;if(!o)throw new Error("ajv implementation error");let{allErrors:i,opts:c}=a;if(a.props=true,c.removeAdditional!=="all"&&(0, Sn.alwaysValidSchema)(a,r))return;let u=(0, vn.allSchemaProperties)(n.properties),d=(0, vn.allSchemaProperties)(n.patternProperties);l(),e.ok((0, Ge._)`${o} === ${sg.default.errors}`);function l(){t.forIn("key",s,v=>{!u.length&&!d.length?f(v):t.if(h(v),()=>f(v));});}function h(v){let _;if(u.length>8){let m=(0, Sn.schemaRefOrVal)(a,n.properties,"properties");_=(0, vn.isOwnProperty)(t,m,v);}else u.length?_=(0, Ge.or)(...u.map(m=>(0, Ge._)`${v} === ${m}`)):_=Ge.nil;return d.length&&(_=(0, Ge.or)(_,...d.map(m=>(0, Ge._)`${(0, vn.usePattern)(e,m)}.test(${v})`))),(0, Ge.not)(_)}function y(v){t.code((0, Ge._)`delete ${s}[${v}]`);}function f(v){if(c.removeAdditional==="all"||c.removeAdditional&&r===false){y(v);return}if(r===false){e.setParams({additionalProperty:v}),e.error(),i||t.break();return}if(typeof r=="object"&&!(0, Sn.alwaysValidSchema)(a,r)){let _=t.name("valid");c.removeAdditional==="failing"?(p(v,_,false),t.if((0, Ge.not)(_),()=>{e.reset(),y(v);})):(p(v,_),i||t.if((0, Ge.not)(_),()=>t.break()));}}function p(v,_,m){let g={keyword:"additionalProperties",dataProp:v,dataPropType:Sn.Type.Str};m===false&&Object.assign(g,{compositeRule:true,createErrors:false,allErrors:false}),e.subschema(g,_);}}};ho.default=ag;});var Ru=x(So=>{Object.defineProperty(So,"__esModule",{value:true});var ig=fr(),bu=je(),vo=z(),_u=yo(),ug={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:s,it:o}=e;o.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&_u.default.code(new ig.KeywordCxt(o,_u.default,"additionalProperties"));let a=(0, bu.allSchemaProperties)(r);for(let l of a)o.definedProperties.add(l);o.opts.unevaluated&&a.length&&o.props!==true&&(o.props=vo.mergeEvaluated.props(t,(0, vo.toHash)(a),o.props));let i=a.filter(l=>!(0, vo.alwaysValidSchema)(o,r[l]));if(i.length===0)return;let c=t.name("valid");for(let l of i)u(l)?d(l):(t.if((0, bu.propertyInData)(t,s,l,o.opts.ownProperties)),d(l),o.allErrors||t.else().var(c,true),t.endIf()),e.it.definedProperties.add(l),e.ok(c);function u(l){return o.opts.useDefaults&&!o.compositeRule&&r[l].default!==void 0}function d(l){e.subschema({keyword:"properties",schemaProp:l,dataProp:l},c);}}};So.default=ug;});var xu=x(wo=>{Object.defineProperty(wo,"__esModule",{value:true});var Cu=je(),wn=G(),$u=z(),Eu=z(),cg={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:s,it:o}=e,{opts:a}=o,i=(0, Cu.allSchemaProperties)(r),c=i.filter(p=>(0, $u.alwaysValidSchema)(o,r[p]));if(i.length===0||c.length===i.length&&(!o.opts.unevaluated||o.props===true))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,d=t.name("valid");o.props!==true&&!(o.props instanceof wn.Name)&&(o.props=(0, Eu.evaluatedPropsToName)(t,o.props));let{props:l}=o;h();function h(){for(let p of i)u&&y(p),o.allErrors?f(p):(t.var(d,true),f(p),t.if(d));}function y(p){for(let v in u)new RegExp(p).test(v)&&(0, $u.checkStrictMode)(o,`property ${v} matches pattern ${p} (use allowMatchingProperties)`);}function f(p){t.forIn("key",n,v=>{t.if((0, wn._)`${(0, Cu.usePattern)(e,p)}.test(${v})`,()=>{let _=c.includes(p);_||e.subschema({keyword:"patternProperties",schemaProp:p,dataProp:v,dataPropType:Eu.Type.Str},d),o.opts.unevaluated&&l!==true?t.assign((0, wn._)`${l}[${v}]`,true):!_&&!o.allErrors&&t.if((0, wn.not)(d),()=>t.break());});});}}};wo.default=cg;});var Tu=x(ko=>{Object.defineProperty(ko,"__esModule",{value:true});var dg=z(),lg={keyword:"not",schemaType:["object","boolean"],trackErrors:true,code(e){let{gen:t,schema:r,it:n}=e;if((0, dg.alwaysValidSchema)(n,r)){e.fail();return}let s=t.name("valid");e.subschema({keyword:"not",compositeRule:true,createErrors:false,allErrors:false},s),e.failResult(s,()=>e.reset(),()=>e.error());},error:{message:"must NOT be valid"}};ko.default=lg;});var Au=x(bo=>{Object.defineProperty(bo,"__esModule",{value:true});var fg=je(),pg={keyword:"anyOf",schemaType:"array",trackErrors:true,code:fg.validateUnion,error:{message:"must match a schema in anyOf"}};bo.default=pg;});var Iu=x(_o=>{Object.defineProperty(_o,"__esModule",{value:true});var kn=G(),mg=z(),gg={message:"must match exactly one schema in oneOf",params:({params:e})=>(0, kn._)`{passingSchemas: ${e.passing}}`},hg={keyword:"oneOf",schemaType:"array",trackErrors:true,error:gg,code(e){let{gen:t,schema:r,parentSchema:n,it:s}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let o=r,a=t.let("valid",false),i=t.let("passing",null),c=t.name("_valid");e.setParams({passing:i}),t.block(u),e.result(a,()=>e.reset(),()=>e.error(true));function u(){o.forEach((d,l)=>{let h;(0, mg.alwaysValidSchema)(s,d)?t.var(c,true):h=e.subschema({keyword:"oneOf",schemaProp:l,compositeRule:true},c),l>0&&t.if((0, kn._)`${c} && ${a}`).assign(a,false).assign(i,(0, kn._)`[${i}, ${l}]`).else(),t.if(c,()=>{t.assign(a,true),t.assign(i,l),h&&e.mergeEvaluated(h,kn.Name);});});}}};_o.default=hg;});var Ou=x(Ro=>{Object.defineProperty(Ro,"__esModule",{value:true});var yg=z(),vg={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=t.name("valid");r.forEach((o,a)=>{if((0, yg.alwaysValidSchema)(n,o))return;let i=e.subschema({keyword:"allOf",schemaProp:a},s);e.ok(s),e.mergeEvaluated(i);});}};Ro.default=vg;});var Nu=x(Co=>{Object.defineProperty(Co,"__esModule",{value:true});var bn=G(),ju=z(),Sg={message:({params:e})=>(0, bn.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0, bn._)`{failingKeyword: ${e.ifClause}}`},wg={keyword:"if",schemaType:["object","boolean"],trackErrors:true,error:Sg,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0, ju.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=Pu(n,"then"),o=Pu(n,"else");if(!s&&!o)return;let a=t.let("valid",true),i=t.name("_valid");if(c(),e.reset(),s&&o){let d=t.let("ifClause");e.setParams({ifClause:d}),t.if(i,u("then",d),u("else",d));}else s?t.if(i,u("then")):t.if((0, bn.not)(i),u("else"));e.pass(a,()=>e.error(true));function c(){let d=e.subschema({keyword:"if",compositeRule:true,createErrors:false,allErrors:false},i);e.mergeEvaluated(d);}function u(d,l){return ()=>{let h=e.subschema({keyword:d},i);t.assign(a,i),e.mergeValidEvaluated(h,a),l?t.assign(l,(0, bn._)`${d}`):e.setParams({ifClause:d});}}}};function Pu(e,t){let r=e.schema[t];return r!==void 0&&!(0, ju.alwaysValidSchema)(e,r)}Co.default=wg;});var qu=x($o=>{Object.defineProperty($o,"__esModule",{value:true});var kg=z(),bg={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0, kg.checkStrictMode)(r,`"${e}" without "if" is ignored`);}};$o.default=bg;});var Fu=x(Eo=>{Object.defineProperty(Eo,"__esModule",{value:true});var _g=uo(),Rg=pu(),Cg=co(),$g=gu(),Eg=hu(),xg=Su(),Tg=ku(),Ag=yo(),Ig=Ru(),Og=xu(),Pg=Tu(),jg=Au(),Ng=Iu(),qg=Ou(),Fg=Nu(),Dg=qu();function Mg(e=false){let t=[Pg.default,jg.default,Ng.default,qg.default,Fg.default,Dg.default,Tg.default,Ag.default,xg.default,Ig.default,Og.default];return e?t.push(Rg.default,$g.default):t.push(_g.default,Cg.default),t.push(Eg.default),t}Eo.default=Mg;});var Du=x(xo=>{Object.defineProperty(xo,"__esModule",{value:true});var de=G(),Lg={message:({schemaCode:e})=>(0, de.str)`must match format "${e}"`,params:({schemaCode:e})=>(0, de._)`{format: ${e}}`},Vg={keyword:"format",type:["number","string"],schemaType:"string",$data:true,error:Lg,code(e,t){let{gen:r,data:n,$data:s,schema:o,schemaCode:a,it:i}=e,{opts:c,errSchemaPath:u,schemaEnv:d,self:l}=i;if(!c.validateFormats)return;s?h():y();function h(){let f=r.scopeValue("formats",{ref:l.formats,code:c.code.formats}),p=r.const("fDef",(0, de._)`${f}[${a}]`),v=r.let("fType"),_=r.let("format");r.if((0, de._)`typeof ${p} == "object" && !(${p} instanceof RegExp)`,()=>r.assign(v,(0, de._)`${p}.type || "string"`).assign(_,(0, de._)`${p}.validate`),()=>r.assign(v,(0, de._)`"string"`).assign(_,p)),e.fail$data((0, de.or)(m(),g()));function m(){return c.strictSchema===false?de.nil:(0, de._)`${a} && !${_}`}function g(){let w=d.$async?(0, de._)`(${p}.async ? await ${_}(${n}) : ${_}(${n}))`:(0, de._)`${_}(${n})`,k=(0, de._)`(typeof ${_} == "function" ? ${w} : ${_}.test(${n}))`;return (0, de._)`${_} && ${_} !== true && ${v} === ${t} && !${k}`}}function y(){let f=l.formats[o];if(!f){m();return}if(f===true)return;let[p,v,_]=g(f);p===t&&e.pass(w());function m(){if(c.strictSchema===false){l.logger.warn(k());return}throw new Error(k());function k(){return `unknown format "${o}" ignored in schema at path "${u}"`}}function g(k){let $=k instanceof RegExp?(0, de.regexpCode)(k):c.code.formats?(0, de._)`${c.code.formats}${(0, de.getProperty)(o)}`:void 0,R=r.scopeValue("formats",{key:o,ref:k,code:$});return typeof k=="object"&&!(k instanceof RegExp)?[k.type||"string",k.validate,(0, de._)`${R}.validate`]:["string",k,R]}function w(){if(typeof f=="object"&&!(f instanceof RegExp)&&f.async){if(!d.$async)throw new Error("async format in sync schema");return (0, de._)`await ${_}(${n})`}return typeof v=="function"?(0, de._)`${_}(${n})`:(0, de._)`${_}.test(${n})`}}}};xo.default=Vg;});var Mu=x(To=>{Object.defineProperty(To,"__esModule",{value:true});var Bg=Du(),Gg=[Bg.default];To.default=Gg;});var Lu=x(Ht=>{Object.defineProperty(Ht,"__esModule",{value:true});Ht.contentVocabulary=Ht.metadataVocabulary=void 0;Ht.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Ht.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"];});var Bu=x(Ao=>{Object.defineProperty(Ao,"__esModule",{value:true});var Kg=Wi(),Ug=cu(),Jg=Fu(),zg=Mu(),Vu=Lu(),Hg=[Kg.default,Ug.default,(0, Jg.default)(),zg.default,Vu.metadataVocabulary,Vu.contentVocabulary];Ao.default=Hg;});var Ku=x(_n=>{Object.defineProperty(_n,"__esModule",{value:true});_n.DiscrError=void 0;var Gu;(function(e){e.Tag="tag",e.Mapping="mapping";})(Gu||(_n.DiscrError=Gu={}));});var Ju=x(Oo=>{Object.defineProperty(Oo,"__esModule",{value:true});var Wt=G(),Io=Ku(),Uu=sn(),Wg=pr(),Yg=z(),Xg={message:({params:{discrError:e,tagName:t}})=>e===Io.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0, Wt._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},Qg={keyword:"discriminator",type:"object",schemaType:"object",error:Xg,code(e){let{gen:t,data:r,schema:n,parentSchema:s,it:o}=e,{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 c=t.let("valid",false),u=t.const("tag",(0, Wt._)`${r}${(0, Wt.getProperty)(i)}`);t.if((0, Wt._)`typeof ${u} == "string"`,()=>d(),()=>e.error(false,{discrError:Io.DiscrError.Tag,tag:u,tagName:i})),e.ok(c);function d(){let y=h();t.if(false);for(let f in y)t.elseIf((0, Wt._)`${u} === ${f}`),t.assign(c,l(y[f]));t.else(),e.error(false,{discrError:Io.DiscrError.Mapping,tag:u,tagName:i}),t.endIf();}function l(y){let f=t.name("valid"),p=e.subschema({keyword:"oneOf",schemaProp:y},f);return e.mergeEvaluated(p,Wt.Name),f}function h(){var y;let f={},p=_(s),v=true;for(let w=0;w<a.length;w++){let k=a[w];if(k?.$ref&&!(0, Yg.schemaHasRulesButRef)(k,o.self.RULES)){let R=k.$ref;if(k=Uu.resolveRef.call(o.self,o.schemaEnv.root,o.baseId,R),k instanceof Uu.SchemaEnv&&(k=k.schema),k===void 0)throw new Wg.default(o.opts.uriResolver,o.baseId,R)}let $=(y=k?.properties)===null||y===void 0?void 0:y[i];if(typeof $!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${i}"`);v=v&&(p||_(k)),m($,w);}if(!v)throw new Error(`discriminator: "${i}" must be required`);return f;function _({required:w}){return Array.isArray(w)&&w.includes(i)}function m(w,k){if(w.const)g(w.const,k);else if(w.enum)for(let $ of w.enum)g($,k);else throw new Error(`discriminator: "properties/${i}" must have "const" or "enum"`)}function g(w,k){if(typeof w!="string"||w in f)throw new Error(`discriminator: "${i}" values must be unique strings`);f[w]=k;}}}};Oo.default=Qg;});var zu=x((Zv,Zg)=>{Zg.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 Wu=x((ie,Po)=>{Object.defineProperty(ie,"__esModule",{value:true});ie.MissingRefError=ie.ValidationError=ie.CodeGen=ie.Name=ie.nil=ie.stringify=ie.str=ie._=ie.KeywordCxt=ie.Ajv=void 0;var eh=Gi(),th=Bu(),rh=Ju(),Hu=zu(),nh=["/properties"],Rn="http://json-schema.org/draft-07/schema",Yt=class extends eh.default{_addVocabularies(){super._addVocabularies(),th.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(rh.default);}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(Hu,nh):Hu;this.addMetaSchema(t,Rn,false),this.refs["http://json-schema.org/schema"]=Rn;}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Rn)?Rn:void 0)}};ie.Ajv=Yt;Po.exports=ie=Yt;Po.exports.Ajv=Yt;Object.defineProperty(ie,"__esModule",{value:true});ie.default=Yt;var sh=fr();Object.defineProperty(ie,"KeywordCxt",{enumerable:true,get:function(){return sh.KeywordCxt}});var Xt=G();Object.defineProperty(ie,"_",{enumerable:true,get:function(){return Xt._}});Object.defineProperty(ie,"str",{enumerable:true,get:function(){return Xt.str}});Object.defineProperty(ie,"stringify",{enumerable:true,get:function(){return Xt.stringify}});Object.defineProperty(ie,"nil",{enumerable:true,get:function(){return Xt.nil}});Object.defineProperty(ie,"Name",{enumerable:true,get:function(){return Xt.Name}});Object.defineProperty(ie,"CodeGen",{enumerable:true,get:function(){return Xt.CodeGen}});var oh=rn();Object.defineProperty(ie,"ValidationError",{enumerable:true,get:function(){return oh.default}});var ah=pr();Object.defineProperty(ie,"MissingRefError",{enumerable:true,get:function(){return ah.default}});});var jr="b64:";function Qc(e){let t=new TextEncoder().encode(e),r=globalThis.Buffer,n;if(r)n=r.from(t).toString("base64");else if(typeof btoa=="function"){let s="";for(let o of t)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 Zc(e){let t=e.replace(/-/g,"+").replace(/_/g,"/")+"=".repeat((4-e.length%4)%4),r=globalThis.Buffer;if(r)return r.from(t,"base64").toString("utf8");if(typeof atob=="function"){let n=atob(t),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 ue(e){return `${jr}${Qc(JSON.stringify(e))}`}function Ke(e){if(!e.startsWith(jr))throw new Error(`Invalid ref format (expected ${jr}<base64url(json)>): ${e}`);let t;try{t=JSON.parse(Zc(e.slice(jr.length)));}catch{throw new Error(`Invalid ref format (malformed base64url/json): ${e}`)}if(!t||typeof t!="object")throw new Error(`Invalid ref format (expected object payload): ${e}`);let r=t;if(typeof r.kind!="string"||typeof r.value!="string")throw new Error(`Invalid ref format (payload must contain string kind/value): ${e}`);return {kind:r.kind,value:r.value}}async function Yo(e,t,r){let n=e.tryAcquire();if(!n)return false;try{await t();}finally{n();}return r?.(),true}function _e(...e){return J.join(...e)}function ea(e){return J.isAbsolute(e)}function Fn(){return randomUUID()}function ta(e){return createHash("sha256").update(e).digest("hex")}function ra(e){return J.dirname(fileURLToPath(e))}function od(e){if(typeof e=="object"&&e!==null){let{command:r,args:n=[],...s}=e,o=Qo(r,n);return {...s,command:o.command,args:o.args}}let t=na(e);if(t.length===0)throw new Error(`Empty command spec: ${JSON.stringify(e)}`);return Qo(t[0],t.slice(1))}function Qo(e,t){return /^(node|node\.exe)$/i.test(e)?{command:process.execPath,args:t}:/\.m?js$/i.test(e)?{command:process.execPath,args:[e,...t]}:{command:e,args:t}}function na(e){let t=[],r="",n=null;for(let s of e.trim()){if(n){s===n?n=null:r+=s;continue}if(s==='"'||s==="'"){n=s;continue}if(/\s/.test(s)){r&&(t.push(r),r="");continue}r+=s;}if(n)throw new Error(`Unterminated quote in command: ${e}`);return r&&t.push(r),t}function Dn(e){return process.platform==="win32"&&/\.(cmd|bat)$/i.test(e)}function sa(e,t){let{command:r,args:n=[],cwd:s,env:o,timeoutMs:a}=e;return execFileSync(r,n,{shell:Dn(r),timeout:a,encoding:t?.encoding??"utf-8",cwd:s,windowsHide:true,env:o?{...process.env,...o}:void 0,input:t?.input})}function ad(e,t){let{command:r,args:n=[],cwd:s,env:o,timeoutMs:a=3e4}=e;execFile(r,n,{shell:Dn(r),encoding:"utf8",windowsHide:true,timeout:a,maxBuffer:10*1024*1024,cwd:s,env:o?{...process.env,...o}:void 0},(i,c,u)=>t(i??null,c,u));}J.join(qn.tmpdir(),".board-live-cards-git-bash-cache.json");function qr(e){let{command:t,args:r=[]}=e;if(process.platform==="win32"){spawn(t,r,{detached:true,stdio:"ignore",windowsHide:true,shell:Dn(t)}).unref();return}spawn(t,r,{detached:true,stdio:"ignore"}).unref();}function Mn(e,t,r){let n=J.join(e,"board-live-cards-cli.js");if(b.existsSync(n))return {cmd:process.execPath,args:[n,t,...r]};let s=J.join(e,"board-live-cards-cli.ts"),o=J.join(e,"..","..","node_modules","tsx","dist","cli.mjs"),a=J.join(e,"..","..","node_modules",".bin","tsx"),i=b.existsSync(o)?o:a;return b.existsSync(s)&&b.existsSync(i)?{cmd:process.execPath,args:[i,s,t,...r]}:{cmd:process.platform==="win32"?"npx.cmd":"npx",args:["tsx",s,t,...r]}}function Ln(e){let t=J.join(e,"..","..","..","dev","board-live-cards-cli.js");if(b.existsSync(t))return t;let r=J.join(e,"..","..","dev","board-live-cards-cli.js");if(b.existsSync(r))return r;let n=J.join(e,"board-live-cards-cli.js");if(b.existsSync(n))return n;throw new Error(`resolveBoardCliCallbackTarget: cannot find callback target in ${e} (expected dev/board-live-cards-cli.js wrapper or ${n})`)}function oa(e,t,r){let n=["--base-ref",ue(t)];r&&n.push("--notify-channel",r);let{cmd:s,args:o}=Mn(e,"process-accumulated-events",n);qr({command:s,args:o});}function id(e){return process.platform==="win32"?`\\\\.\\pipe\\${e}`:J.join(qn.tmpdir(),`${e}.sock`)}var Nr=new Map;function aa(e,t,r){if(t.length===0)return;let n=t.map(i=>JSON.stringify(i)).join(`
|
|
9
9
|
`)+`
|
|
10
|
-
`,s=Or.get(e);if(s&&!s.socket.destroyed){s.ready?s.socket.write(n):s.queue.push(n);return}let o=Qc(e),a=Uo.createConnection(o);s={socket:a,ready:false,queue:[n]},Or.set(e,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)}`),Or.delete(e);}),a.on("close",()=>{Or.delete(e);});}function Nr(){return {executeSync(e,t,r){return Yo({command:e,args:t,cwd:r?.cwd,timeoutMs:r?.timeout,env:r?.env},{encoding:r?.encoding,input:r?.input})},executeAsync(e,t,r){Xc({command:e,args:t},r);},resolveInvocation(e,t){let r=Yc({command:e,args:t});return {cmd:r.command,args:r.args??[]}},splitCommand:Wo,spawnDetached(e,t){jr({command:e,args:t});}}}var ea=dirname(fileURLToPath(import.meta.url)),nd=createRequire(import.meta.url);function sd(){let e=resolve(ea,"./jsonata-sync.cjs");return existsSync(e)?e:resolve(ea,"../../card-compute/jsonata-sync.cjs")}var gt=nd(sd());function Dn(e,t,r){if(!e||typeof e!="object")return {};let n={};if(Array.isArray(e.cmdTemplate)){let s=[];for(let o of e.cmdTemplate)try{s.push(String(gt(o).evaluate(t)));}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 e.stdinTemplate=="string")try{n.stdin=gt(e.stdinTemplate).evaluate(t);}catch(s){let o=s instanceof Error?s.message:String(s);throw new Error(`[${r}] argsMassaging.stdinTemplate failed: ${o}`)}if(typeof e.urlTemplate=="string")try{n.url=String(gt(e.urlTemplate).evaluate(t));}catch(s){let o=s instanceof Error?s.message:String(s);throw new Error(`[${r}] argsMassaging.urlTemplate failed: ${o}`)}if(typeof e.headerTemplate=="string")try{let s=gt(e.headerTemplate).evaluate(t);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 e.bodyTemplate=="string")try{n.body=gt(e.bodyTemplate).evaluate(t);}catch(s){let o=s instanceof Error?s.message:String(s);throw new Error(`[${r}] argsMassaging.bodyTemplate failed: ${o}`)}return n}var ad=createRequire(import.meta.url);function id(e){return typeof e=="object"?e:Ye(e)}function ra(e){let t=ie.basename(String(e||"").trim());if(!t)throw new Error(`resolveYamlFlowCliPath: expected non-empty cli file name, got ${JSON.stringify(e)}`);let r=ie.dirname(ad.resolve("yaml-flow/package.json")),n=ie.join(r,"cli","node",t);if(!T.existsSync(n))throw new Error(`resolveYamlFlowCliPath: could not find ${t} under ${ie.join(r,"cli","node")}`);return n}function Pe(e){let t=id(e);return t.kind==="yaml-flow-cli"?ra(t.value):t.value}function ud(e,t){let r=Pe(e);switch(r){case "source-cli-task-executor":{let n=ie.join(t,"source-cli-task-executor.js");if(T.existsSync(n))return {command:process.execPath,args:[n]};let s=ie.join(t,"source-cli-task-executor.ts"),o=ie.join(t,"..","..","node_modules","tsx","dist","cli.mjs"),a=ie.join(t,"..","..","node_modules",".bin","tsx"),i=T.existsSync(o)?o:a;return T.existsSync(s)&&T.existsSync(i)?{command:process.execPath,args:[i,s]}:{command:process.execPath,args:[n]}}case "board-live-cards":{let{cmd:n,args:s}=Nn(t,"_",[]);return {command:n,args:s}}default:throw new Error(`resolveBuiltIn: unknown built-in name "${r}". Supported: source-cli-task-executor, board-live-cards`)}}function na(e,t){if(e.howToRun==="built-in"){let{command:n,args:s}=ud(e.whatToRun,t);return {command:n,baseArgs:s}}let r=(typeof e.whatToRun=="object",Pe(e.whatToRun));switch(e.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 "${e.howToRun}" is not a local transport`)}}function cd(e,t){let r=[e.subcommand];return e.inRef&&r.push("--in-ref",e.inRef),e.outRef&&r.push("--out-ref",e.outRef),e.errRef&&r.push("--err-ref",e.errRef),t&&r.push("--extra",Buffer.from(JSON.stringify(t)).toString("base64")),r}function dd(e,t){return {subcommand:e.subcommand,...e.inRef?{inRef:e.inRef}:{},...e.outRef?{outRef:e.outRef}:{},...e.errRef?{errRef:e.errRef}:{},...t?{extra:t}:{}}}function qr(e,t){return na(e,t)}function sa(e){let t=e.trim();if(!t)throw new Error("empty stdout");try{return JSON.parse(t)}catch{let r=t.split(/\r?\n/).filter(Boolean),n=r[r.length-1];return JSON.parse(n)}}function oa(e,t){return {...t,whatToRun:Pe(e.whatToRun),...e.extra?{extra:e.extra}:{}}}function Fn(e,t,r="invokeExecutionRef"){return Dn(e,t,r)}function aa(e){return e&&typeof e=="object"&&!Array.isArray(e)&&typeof e.result=="string"&&e.data&&typeof e.data=="object"&&!Array.isArray(e.data)?e:{result:"success",data:e&&typeof e=="object"&&!Array.isArray(e)?e:{stdout:e}}}function Ze(e){return {result:"failure",data:{error:e}}}function Qe(e,t,r){let n=r?.label??"invokeExecutionRefSync",s=r?.cliDir??r?.cwd??process.cwd(),o;try{o=Fn(e.argsMassaging,oa(e,t),n);}catch(l){let k=l instanceof Error?l.message:String(l);return Ze(k)}let a;try{a=qr(e,s);}catch(l){let k=l instanceof Error?l.message:String(l);return Ze(`[${n}] ref resolution failed: ${k}`)}let i=[...a.baseArgs,...o.cmdArgs??[]],u=JSON.stringify(o.stdin??t),c=Nr(),d;try{d=c.executeSync(a.command,i,{timeout:r?.timeoutMs??3e4,encoding:"utf-8",cwd:r?.cwd,input:u});}catch(l){let k=l,v=(k.stderr?String(k.stderr):"").trim(),m=typeof k.status=="number"?k.status:"unknown",p=v||k.message;return Ze(`[${n}] ref exited with status ${m}${p?`: ${p}`:""}`)}try{return aa(sa(d))}catch{return {result:"success",data:{stdout:d.trim()}}}}async function ta(e,t,r){let n=r?.label??"invokeExecutionRef",s;try{s=Fn(e.argsMassaging,oa(e,t),n);}catch(c){let d=c instanceof Error?c.message:String(c);return Ze(d)}let o=Pe(e.whatToRun),a=s.headers?{"Content-Type":"application/json",...s.headers}:{"Content-Type":"application/json"},i=s.url??o,u;if(e.howToRun==="http:get"){let c=s.body&&typeof s.body=="object"&&!Array.isArray(s.body)?s.body:t,d=new URLSearchParams(Object.entries(c).filter(([,l])=>l!=null).map(([l,k])=>[l,String(k)]));d.size>0&&(i=`${i}${i.includes("?")?"&":"?"}${d.toString()}`);}else u=JSON.stringify(s.body??t);try{let c=await fetch(i,{method:e.howToRun==="http:get"?"GET":"POST",headers:a,body:u});if(!c.ok){let l=await c.text().catch(()=>"");return Ze(`[${n}] HTTP ${c.status}${l?`: ${l}`:""}`)}let d=await c.text();if(!d.trim())return {result:"success",data:{}};try{return aa(sa(d))}catch{return {result:"success",data:{stdout:d.trim()}}}}catch(c){let d=c instanceof Error?c.message:String(c);return Ze(`[${n}] ${d}`)}}var ld={"local-node":async(e,t,r)=>Qe(e,t,r),"local-python":async(e,t,r)=>Qe(e,t,r),"local-process":async(e,t,r)=>Qe(e,t,r),"built-in":async(e,t,r)=>Qe(e,t,r),"http:post":ta,"http:get":ta},fd={"local-node":Qe,"local-python":Qe,"local-process":Qe,"built-in":Qe};async function ia(e,t,r){let n=r?.transports?.[e.howToRun]??ld[e.howToRun];return n?n(e,t,r):Ze(`[${r?.label??"invokeExecutionRef"}] unsupported howToRun: ${e.howToRun}`)}function Mn(e,t,r){let n=r?.syncTransports?.[e.howToRun]??fd[e.howToRun];return n?n(e,t,r):Ze(`[${r?.label??"invokeExecutionRefSync"}] unsupported sync howToRun: ${e.howToRun}`)}function pd(e){return {invoke(t,r){return ia(t,r,e)},invokeSync(t,r){return Mn(t,r,e)}}}function md(e,t,r){return Mn(e,t,r)}async function gd(e,t){let r={...t,whatToRun:Pe(e.whatToRun)},n=Dn(e.argsMassaging,r,"_invokeTaskExecutorHttp"),s=n.url??Pe(e.whatToRun),o=n.body?n.body:dd(t,e.extra),a={"Content-Type":"application/json"},i=n.headers?{...a,...n.headers}:a,u=await fetch(s,{method:e.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 ua(e,t,r){if(e.howToRun==="http:post"||e.howToRun==="http:get"){gd(e,t).catch(i=>{console.error(`[dispatchTaskExecutorDetached] HTTP dispatch failed: ${i.message}`);});return}let{command:s,baseArgs:o}=na(e,r),a=cd(t,e.extra);jr({command:s,args:[...o,...a]});}createRequire(import.meta.url);function yd(){return {read(e){if(!T.existsSync(e))return null;try{return T.readFileSync(e,"utf-8")}catch{return null}},write(e,t){T.mkdirSync(ie.dirname(e),{recursive:true}),T.writeFileSync(e,t,"utf-8");}}}function ca(e){return yd();}function Yt(e,t){if(process.platform!=="win32"){T.renameSync(e,t);return}let r=[10,20,40,80,160];for(let n=0;n<=r.length;n++)try{T.renameSync(e,t);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 Fr(e){function t(s){return ie.join(e,...s.split("/"))}function r(s){return ie.relative(e,s).replace(/\\/g,"/")}function n(s,o){if(T.existsSync(s))for(let a of T.readdirSync(s,{withFileTypes:true})){let i=ie.join(s,a.name);if(a.isDirectory()){n(i,o);continue}a.isFile()&&o.push(r(i));}}return {read(s){let o=t(s);if(!T.existsSync(o))return null;try{return T.readFileSync(o,"utf-8")}catch{return null}},write(s,o){let a=t(s),i=`${a}.${process.pid}.${randomUUID()}.tmp`;T.mkdirSync(ie.dirname(a),{recursive:true}),T.writeFileSync(i,o,"utf-8"),Yt(i,a);},exists(s){return T.existsSync(t(s))},remove(s){let o=t(s);try{T.existsSync(o)&&T.unlinkSync(o);}catch{}},readBytes(s){let o=t(s);if(!T.existsSync(o))return null;try{return new Uint8Array(T.readFileSync(o))}catch{return null}},writeBytes(s,o){let a=t(s),i=`${a}.${process.pid}.${randomUUID()}.tmp`;T.mkdirSync(ie.dirname(a),{recursive:true}),T.writeFileSync(i,Buffer.from(o)),Yt(i,a);},listKeys(s){let o=[];n(e,o);let a=o.sort();return s?a.filter(i=>i.startsWith(s)):a},stat(s){let o=t(s);if(!T.existsSync(o))return null;try{let a=T.statSync(o);return {key:s,size:Number(a.size||0),updatedAt:new Date(a.mtimeMs).toISOString()}}catch{return null}}}}function Vn(){return {read(e){if(!T.existsSync(e))return null;try{return T.readFileSync(e,"utf-8")}catch{return null}},write(e,t){let r=`${e}.${process.pid}.${randomUUID()}.tmp`;T.mkdirSync(ie.dirname(e),{recursive:true}),T.writeFileSync(r,t,"utf-8"),Yt(r,e);},exists(e){return T.existsSync(e)},remove(e){try{T.existsSync(e)&&T.unlinkSync(e);}catch{}},readBytes(e){if(!T.existsSync(e))return null;try{return new Uint8Array(T.readFileSync(e))}catch{return null}},writeBytes(e,t){let r=`${e}.${process.pid}.${randomUUID()}.tmp`;T.mkdirSync(ie.dirname(e),{recursive:true}),T.writeFileSync(r,Buffer.from(t)),Yt(r,e);},stat(e){if(!T.existsSync(e))return null;try{let t=T.statSync(e);return {key:e,size:Number(t.size||0),updatedAt:new Date(t.mtimeMs).toISOString()}}catch{return null}},listKeys(e){return []}}}function Mr(e){function t(n){return ie.join(e,...n.split("/"))+".json"}function r(n,s,o,a){if(T.existsSync(n))for(let i of T.readdirSync(n,{withFileTypes:true})){let u=s?`${s}/${i.name}`:i.name;if(i.isDirectory()){r(ie.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=t(n);if(!T.existsSync(s))return null;try{return JSON.parse(T.readFileSync(s,"utf-8"))}catch{return null}},write(n,s){let o=t(n),a=`${o}.${process.pid}.${randomUUID()}.tmp`;T.mkdirSync(ie.dirname(o),{recursive:true}),T.writeFileSync(a,JSON.stringify(s,null,2),"utf-8"),Yt(a,o);},delete(n){let s=t(n);try{T.existsSync(s)&&T.unlinkSync(s);}catch{}},listKeys(n){let s=[];return r(e,"",n,s),s.sort()}}}function da(e){function t(){if(!T.existsSync(e))return [];let r=T.readFileSync(e,"utf-8").trim();return r?r.split(`
|
|
11
|
-
|
|
12
|
-
`,"utf-8")
|
|
13
|
-
|
|
14
|
-
`,"utf-8");},generateId(){return randomUUID()}}}function pa(e){return {tryAcquire(){try{if(!T.existsSync(e)){T.mkdirSync(ie.dirname(e),{recursive:!0});try{T.writeFileSync(e,"{}",{flag:"wx"});}catch{}}return lockSync(e,{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=Bc(Vu());var Yg=createRequire(import.meta.url),Xg=Yg("./jsonata-sync.cjs"),bn=null;var Bu=/\b(card_data|requires|fetched_sources|computed_values|source_defs)\b/g,Qg=/^\s*(card_data|requires|fetched_sources|computed_values|source_defs)(\.|$)/;function Zg(e){let t=new Set,r;for(Bu.lastIndex=0;(r=Bu.exec(e))!==null;)t.add(r[1]);return t}function Uu(e){let t=Qg.exec(e);return t?t[1]:null}function Gu(e,t,r,n){try{Xg(e);}catch(o){let a=o instanceof Error?o.message:String(o);n.push(`${t}: invalid JSONata expression (${a})`);return}let s=Zg(e);for(let o of s)r.has(o)||n.push(`${t}: disallowed namespace "${o}" in expression`);}function Eo(e,t,r){if(Array.isArray(e)){e.forEach((s,o)=>{Eo(s,`${t}/${o}`,r);});return}if(typeof e=="string"){let s=Uu(e);if(!s)return;new Set(["card_data","requires","computed_values"]).has(s)||r.push(`${t}: disallowed namespace "${s}" in view reference`);return}if(!e||typeof e!="object")return;let n=e;for(let[s,o]of Object.entries(n))Eo(o,`${t}/${s}`,r);}function eh(){if(bn)return bn;let e=new Ku.default({allErrors:true});return Hg(e),bn=e.compile(ma),bn}function Ju(e){let t=eh(),r=t(e),n=(t.errors??[]).map(s=>`${s.instancePath||"/"}: ${s.message??"unknown error"}`);if(e&&typeof e=="object"&&!Array.isArray(e)){let s=e.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(e){let t=[];if(!e||typeof e!="object"||Array.isArray(e))return {ok:true,errors:[]};let r=e,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"]),t);});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?t.push(`/provides/${d}/ref: path "${l}" must start with a valid namespace (${[...s].join(", ")})`):s.has(k)||t.push(`/provides/${d}/ref: disallowed namespace "${k}" in path "${l}" (valid: ${[...s].join(", ")})`);});let a=r.view;a&&typeof a=="object"&&!Array.isArray(a)&&Eo(a,"/view",t);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,t);}),{ok:t.length===0,errors:t}}function xo(e){let t=Ju(e);if(!t.ok)return t;let r=zu(e);return r.ok?{ok:true,errors:[]}:{ok:false,errors:r.errors}}function Hu(e){return String(e).replace(/[^a-zA-Z0-9_-]/g,"_")}function Wu(e){let t=e.payload??{};return {id:e.id,role:typeof t.role=="string"?t.role:"system",text:typeof t.text=="string"?t.text:"",files:Array.isArray(t.files)?t.files:[],updated_at:typeof t.updated_at=="string"?t.updated_at:""}}function To(e,t){let r=s=>`chats/${Hu(s)}/processing`,n=s=>`chats/${Hu(s)}/config`;return {append(s,o,a,i=[]){return e(s).append({role:o,text:a,files:i,updated_at:new Date().toISOString()}).id},readAll(s){return e(s).readAll().map(Wu)},readAfter(s,o){let a=e(s).readAfter(o);return {records:a.entries.map(Wu),cursor:a.newCursor}},clear(s){e(s).clear?.();},setProcessing(s,o){o?t.write(r(s),true):t.delete(r(s));},isProcessing(s){return t.read(r(s))===true},getConfig(s){return t.read(n(s))??{}},setConfig(s,o){let a=t.read(n(s))??{};t.write(n(s),{...a,...o});}}}function th(){let e=globalThis.crypto;return typeof e?.randomUUID=="function"?String(e.randomUUID()):`id-${Date.now()}-${Math.random().toString(36).slice(2)}`}function rh(){let e=new Map,t=new Map;function r(n){return e.has(n)||e.set(n,[]),e.get(n)}return {append(n,s,o,a=[]){let i={id:th(),role:s,text:o,files:a,updated_at:new Date().toISOString()};return r(n).push(i),i.id},readAll(n){return r(n).slice()},readAfter(n,s){let o=r(n);if(!s)return {records:o.slice(),cursor:o.length>0?o[o.length-1].id:null};let a=o.findIndex(u=>u.id===s),i=a===-1?o.slice():o.slice(a+1);return {records:i,cursor:i.length>0?i[i.length-1].id:s}},clear(n){e.set(n,[]);},setProcessing(n,s){s?t.set(`p:${n}`,true):t.delete(`p:${n}`);},isProcessing(n){return t.get(`p:${n}`)===true},getConfig(n){return t.get(`c:${n}`)??{}},setConfig(n,s){let o=t.get(`c:${n}`)??{};t.set(`c:${n}`,{...o,...s});}}}var ut={RUNNING:"running",COMPLETED:"completed",FAILED:"failed",INACTIVATED:"inactivated"};function Re(e){return e?Array.isArray(e.provides)?e.provides:[]:[]}function ct(e){return e?Array.isArray(e.requires)?e.requires:[]:[]}function Yu(e){return e.tasks??{}}function Ao(e){return e?e.status===ut.FAILED||e.status===ut.INACTIVATED:false}function Xu(e,t){return e.refreshStrategy??t?.refreshStrategy??"data-changed"}function Qu(e){return e.maxExecutions}function Zu(e,t){let r=new Set;for(let[n,s]of Object.entries(t))if(s.status===ut.COMPLETED){let o=e.tasks[n];o&&Re(o).forEach(i=>r.add(i));}return Array.from(r)}function ec(e,t){let r={};return e.forEach(n=>{let s=t[n];if(!s)return;Re(s).forEach(a=>{r[a]||(r[a]=[]),r[a].push(n);});}),r}function tc(e,t,r){let n=e.tasks[t]??Sn(),s={};if(r){let a=r.tasks[t],i=ct(a);for(let u of i)for(let[c,d]of Object.entries(r.tasks))if(Re(d).includes(u)){let l=e.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 {...e,tasks:{...e.tasks,[t]:o},lastUpdated:new Date().toISOString()}}function rc(e,t,r,n,s,o){let a=e.tasks[r]??Sn(),i=t.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=Re(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(t.tasks))if(Re(p).includes(v)){let w=e.tasks[m];w?.lastDataHash&&(c[v]=w.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([...e.availableOutputs,...u])];return {...e,tasks:{...e.tasks,[r]:d},availableOutputs:l,lastUpdated:new Date().toISOString()}}function nc(e,t,r,n){let s=e.tasks[r]??Sn(),o=t.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 {...e,tasks:{...e.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=e.availableOutputs;if(o?.on_failure&&o.on_failure.length>0&&(i=[...new Set([...e.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 {...e,tasks:{...e.tasks,[r]:a},availableOutputs:i,lastUpdated:new Date().toISOString()}}function sc(e,t,r,n){let s=e.tasks[t]??Sn(),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 {...e,tasks:{...e.tasks,[t]:o},lastUpdated:new Date().toISOString()}}function oc(e,t){let r=e.tasks[t];if(!r)return e;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 {...e,tasks:{...e.tasks,[t]:n},lastUpdated:new Date().toISOString()}}function Sn(){return {status:"not-started",executionCount:0,retryCount:0,lastEpoch:0,messages:[],progress:null}}function _n(e,t){let r=`live-${Date.now()}`,n={};for(let o of Object.keys(e.tasks))n[o]=ic();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:e.settings.execution_mode??"eligibility-mode",conflictStrategy:e.settings.conflict_strategy??"alphabetical",completionStrategy:e.settings.completion}};return {config:e,state:s}}function nh(e,t){let{config:r,state:n}=e;if("executionId"in t&&t.executionId&&t.executionId!==n.executionId)return e;switch(t.type){case "task-started":return {config:r,state:tc(n,t.taskName,r)};case "task-completed":return {config:r,state:rc(n,r,t.taskName,t.result,t.dataHash,t.data)};case "task-failed":return {config:r,state:nc(n,r,t.taskName,t.error)};case "task-progress":return {config:r,state:sc(n,t.taskName,t.message,t.progress)};case "task-restart":return {config:r,state:oc(n,t.taskName)};case "inject-tokens":return {config:r,state:{...n,availableOutputs:[...new Set([...n.availableOutputs,...t.tokens])],lastUpdated:new Date().toISOString()}};case "agent-action":return {config:r,state:dh(n,t.action)};case "task-upsert":return sh(e,t.taskName,t.taskConfig);case "task-removal":return oh(e,t.taskName);case "node-requires-add":return ah(e,t.nodeName,t.tokens);case "node-requires-remove":return ih(e,t.nodeName,t.tokens);case "node-provides-add":return uh(e,t.nodeName,t.tokens);case "node-provides-remove":return ch(e,t.nodeName,t.tokens);default:return e}}function ac(e,t){return t.reduce((r,n)=>nh(r,n),e)}function sh(e,t,r){let n=!!e.config.tasks[t];return {config:{...e.config,tasks:{...e.config.tasks,[t]:r}},state:{...e.state,tasks:{...e.state.tasks,[t]:n?e.state.tasks[t]:ic()},lastUpdated:new Date().toISOString()}}}function oh(e,t){if(!e.config.tasks[t])return e;let{[t]:r,...n}=e.config.tasks,{[t]:s,...o}=e.state.tasks;return {config:{...e.config,tasks:n},state:{...e.state,tasks:o,lastUpdated:new Date().toISOString()}}}function ah(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=ct(n),o=r.filter(a=>!s.includes(a));return o.length===0?e:{config:{...e.config,tasks:{...e.config.tasks,[t]:{...n,requires:[...s,...o]}}},state:e.state}}function ih(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=ct(n),o=s.filter(a=>!r.includes(a));return o.length===s.length?e:{config:{...e.config,tasks:{...e.config.tasks,[t]:{...n,requires:o}}},state:e.state}}function uh(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=Re(n),o=r.filter(a=>!s.includes(a));return o.length===0?e:{config:{...e.config,tasks:{...e.config.tasks,[t]:{...n,provides:[...s,...o]}}},state:e.state}}function ch(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=Re(n),o=s.filter(a=>!r.includes(a));return o.length===s.length?e:{config:{...e.config,tasks:{...e.config.tasks,[t]:{...n,provides:o}}},state:e.state}}function Cr(e){return {version:1,config:e.config,state:e.state,snapshotAt:new Date().toISOString()}}function Rn(e){if(!e||typeof e!="object")throw new Error("Invalid snapshot: expected an object");let t=e;if(!t.config||typeof t.config!="object")throw new Error('Invalid snapshot: missing or invalid "config"');if(!t.state||typeof t.state!="object")throw new Error('Invalid snapshot: missing or invalid "state"');let r=t.config,n=t.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 ic(){return {status:"not-started",executionCount:0,retryCount:0,lastEpoch:0,messages:[],progress:null}}function dh(e,t){let r=new Date().toISOString();switch(t){case "stop":return {...e,status:"stopped",lastUpdated:r};case "pause":return {...e,status:"paused",lastUpdated:r};case "resume":return {...e,status:"running",lastUpdated:r};default:return e}}function $r(e){let{config:t,state:r}=e,n=Yu(t);if(Object.keys(n).length===0)return {eligible:[],pending:[],unresolved:[],blocked:[],conflicts:{}};let o=lh(n),a=Zu(t,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],w=Xu(m,t.settings),g=w!=="once";if(p?.status===ut.RUNNING||Ao(p))continue;let f=Qu(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(w){case "data-changed":{R.length>0&&R.some(D=>{for(let[M,te]of Object.entries(n))if(Re(te).includes(D)){let U=r.tasks[M];if(!U)continue;let de=p.lastConsumedHashes?.[D];return U.lastDataHash==null?U.executionCount>p.lastEpoch:U.lastDataHash!==de}return false})||(E=true);break}case "epoch-changed":{R.length>0&&R.some(D=>{for(let[M,te]of Object.entries(n))if(Re(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 _=[],b=[],$=[];for(let R of y){if(i.has(R))continue;let E=o[R]||[];E.length===0?_.push(R):E.every(D=>Ao(r.tasks[D]))?$.push({token:R,failedProducer:E[0]}):b.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))]}):b.length>0?c.push({taskName:v,waitingOn:b}):u.push(v);}let k={};if(u.length>1){let v=ec(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 lh(e){let t={};for(let[r,n]of Object.entries(e)){for(let s of Re(n))t[s]||(t[s]=[]),t[s].push(r);if(n.on)for(let s of Object.values(n.on))for(let o of s)t[o]||(t[o]=[]),t[o].includes(r)||t[o].push(r);if(n.on_failure)for(let s of n.on_failure)t[s]||(t[s]=[]),t[s].includes(r)||t[s].push(r);}return t}var Er=class{buffer=[];append(t){this.buffer.push(t);}drain(){let t=this.buffer;return this.buffer=[],t}get size(){return this.buffer.length}};function Io(e){let t=Po(e);return fh(t)}function Po(e){if(e==null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return "["+e.map(Po).join(",")+"]";let t=e;return "{"+Object.keys(t).sort().map(n=>JSON.stringify(n)+":"+Po(t[n])).join(",")+"}"}function fh(e){let t=0xcbf29ce484222325n,r=0x100000001b3n,n=0xffffffffffffffffn;for(let s=0;s<e.length;s++)t^=BigInt(e.charCodeAt(s)),t=t*r&n;return t.toString(16).padStart(16,"0")}function ph(e){if(typeof Buffer<"u")return Buffer.from(e,"utf8").toString("base64url");if(typeof btoa=="function"){let t=new TextEncoder().encode(e),r="";for(let n of t)r+=String.fromCharCode(n);return btoa(r).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}throw new Error("No base64 encoder available in this runtime")}function mh(e){if(typeof Buffer<"u")return Buffer.from(e,"base64url").toString("utf8");if(typeof atob=="function"){let t=e.replace(/-/g,"+").replace(/_/g,"/"),r=t+"=".repeat((4-t.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 uc(e){let t=JSON.stringify({t:e,n:Date.now().toString(36)+Math.random().toString(36).slice(2,6)});return ph(t)}function gh(e){try{let t=JSON.parse(mh(e));return typeof t?.t=="string"?{taskName:t.t}:null}catch{return null}}function cc(e,t,r){let{handlers:n,onDrain:s}=t,o=new Er,a="state"in e&&"config"in e?e:_n(e),i=false,u=new Set,c=new Map(Object.entries(n)),d=new Er,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=ac(a,_));let b=$r(a);_.length>0&&s?.(_,a,b);for(let $ of b.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=uc(R),te=w(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??[],b=new Map;for(let[R,E]of Object.entries(a.config.tasks))for(let N of E.provides??[])b.set(N,R);let $={};for(let R of _){let E=b.get(R);E?$[R]=a.state.tasks[E]?.data:$[R]=void 0;}return $}async function w(f,y,_){let b=a.config.tasks[f],$=b.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:b,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 b=uc(f),$=w(f,b).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:Io(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:Io(y.data)}):o.append(y);v();}},resolveCallback(f,y,_){if(i)return;let b=gh(f);if(!b)return;let{taskName:$}=b;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?Io(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 Cr(a)},getState(){return a},getSchedule(){return $r(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 yh=createRequire(import.meta.url),Cn=yh("./jsonata-sync.cjs"),fc=Cn;function dc(e,t){if(!t||!e)return;let r=t.split("."),n=e;for(let s=0;s<r.length;s++){if(n==null)return;n=n[r[s]];}return n}function pc(e,t,r){let n=t.split("."),s=e;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 vh(e,t){if(!e?.compute?.length)return e;e.card_data||(e.card_data={}),e.computed_values={},e._sourcesData=t?.sourcesData??{};let r=e.requires??{},n={card_data:e.card_data,requires:r,expects_data:r,fetched_sources:e._sourcesData,data:e.computed_values,computed_values:e.computed_values};for(let s of e.compute)try{let o=await Cn(s.expr).evaluate(n);pc(e.computed_values,s.bindTo,o),n.computed_values=e.computed_values;}catch{}return e}function kh(e,t){if(!e?.compute?.length)return {ok:true,node:e};e.card_data||(e.card_data={}),e.computed_values={},e._sourcesData=t?.sourcesData??{};let r=e.requires??{},n={card_data:e.card_data,requires:r,expects_data:r,fetched_sources:e._sourcesData,data:e.computed_values,computed_values:e.computed_values},s=[];for(let o of e.compute)try{let a=fc(o.expr).evaluate(n);pc(e.computed_values,o.bindTo,a),n.computed_values=e.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:e,errors:s}:{ok:true,node:e}}async function wh(e,t,r){let n={...r??{},card_data:t.card_data??{},requires:t.requires??{},fetched_sources:t._sourcesData??{},computed_values:t.computed_values??{}};return Cn(e).evaluate(n)}function bh(e,t){return t.startsWith("fetched_sources.")?dc(e._sourcesData??{},t.slice(16)):dc(e,t)}var lc=new Set(["metric","table","editable-table","chart","form","filter","list","notes","todo","alert","narrative","badge","text","markdown","ref","custom","actions"]),Sh=new Set(["id","meta","requires","provides","view","card_data","compute","source_defs"]);function _h(e){let t=[];if(!e||typeof e!="object"||Array.isArray(e))return {ok:false,errors:["Node must be a non-null object"]};let r=e;(typeof r.id!="string"||!r.id)&&t.push("id: required, must be a non-empty string");for(let n of Object.keys(r))Sh.has(n)||t.push(`Unknown top-level key: "${n}"`);if((r.card_data==null||typeof r.card_data!="object"||Array.isArray(r.card_data))&&t.push("card_data: required, must be an object"),r.meta!=null)if(typeof r.meta!="object"||Array.isArray(r.meta))t.push("meta: must be an object");else {let n=r.meta;n.title!=null&&typeof n.title!="string"&&t.push("meta.title: must be a string"),n.tags!=null&&!Array.isArray(n.tags)&&t.push("meta.tags: must be an array");}if(r.requires!=null&&!Array.isArray(r.requires)&&t.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))t.push(`provides[${s}]: must be an object with bindTo and ref`);else {let o=n;(typeof o.bindTo!="string"||!o.bindTo)&&t.push(`provides[${s}]: missing required "bindTo" string`),(typeof o.ref!="string"||!o.ref)&&t.push(`provides[${s}]: missing required "ref" string`);}}):t.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))t.push(`compute[${s}]: must be a compute step object`);else {let o=n;(typeof o.bindTo!="string"||!o.bindTo)&&t.push(`compute[${s}]: missing required "bindTo" property`),(typeof o.expr!="string"||!o.expr)&&t.push(`compute[${s}]: missing required "expr" string (JSONata expression)`);}}):t.push("compute: must be an array of compute steps")),r.source_defs!=null)if(!Array.isArray(r.source_defs))t.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))t.push(`source_defs[${a}]: must be an object`);else {let i=o;typeof i.bindTo!="string"||!i.bindTo?t.push(`source_defs[${a}]: missing required "bindTo" property`):(n.has(i.bindTo)&&t.push(`source_defs[${a}]: bindTo "${i.bindTo}" is not unique across source_defs`),n.add(i.bindTo)),typeof i.outputFile!="string"||!i.outputFile?t.push(`source_defs[${a}]: missing required "outputFile" property`):(s.has(i.outputFile)&&t.push(`source_defs[${a}]: outputFile "${i.outputFile}" is not unique across source_defs`),s.add(i.outputFile)),i.optionalForCompletionGating!=null&&typeof i.optionalForCompletionGating!="boolean"&&t.push(`source_defs[${a}]: optionalForCompletionGating must be a boolean`);}});}if(r.view!=null)if(typeof r.view!="object"||Array.isArray(r.view))t.push("view: must be an object");else {let n=r.view;!Array.isArray(n.elements)||n.elements.length===0?t.push("view.elements: required, must be a non-empty array"):n.elements.forEach((s,o)=>{if(!s||typeof s!="object"){t.push(`view.elements[${o}]: must be an object`);return}!s.kind||typeof s.kind!="string"?t.push(`view.elements[${o}].kind: required, must be a string`):lc.has(s.kind)||t.push(`view.elements[${o}].kind: unknown kind "${s.kind}". Valid: ${[...lc].join(", ")}`),s.data!=null&&(typeof s.data!="object"||Array.isArray(s.data))&&t.push(`view.elements[${o}].data: must be an object`);}),n.layout!=null&&(typeof n.layout!="object"||Array.isArray(n.layout))&&t.push("view.layout: must be an object"),n.features!=null&&(typeof n.features!="object"||Array.isArray(n.features))&&t.push("view.features: must be an object");}return {ok:t.length===0,errors:t}}async function Rh(e,t){if(!e||e.length===0)return [];let r={card_data:t.card_data??{},requires:t.requires??{}};return Promise.all(e.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 Cn(a).evaluate(r);}catch{s[o]=void 0;}}return {...n,_projections:s}}))}function Ch(e,t){if(!e||e.length===0)return [];let r={card_data:t.card_data??{},requires:t.requires??{}};return e.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]=fc(a).evaluate(r);}catch{s[o]=void 0;}}return {...n,_projections:s}})}var dt={run:vh,runSync:kh,eval:wh,resolve:bh,validate:_h,enrichSources:Rh,enrichSourcesSync:Ch};function $h(e,t){let r;return /\.m?js$/i.test(e)?r="local-node":/\.py$/i.test(e)?r="local-python":r="local-process",{meta:"task-executor",howToRun:r,whatToRun:se({kind:"fs-path",value:e}),...t?{extra:t}:{}}}function Oo(e){return JSON.stringify(e)}function jo(e){let t;try{t=JSON.parse(e);}catch{throw new Error(`parseExecutionRef: invalid JSON \u2014 ${e}`)}if(typeof t!="object"||t===null||typeof t.howToRun!="string"||typeof t.whatToRun!="string")throw new Error(`parseExecutionRef: missing required fields howToRun/whatToRun \u2014 ${e}`);return t}function $n(e,t){function r(){return e.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||!e.cardExists(o.key)?null:e.readCard(o.key)},readCardKey(s){return r()[s]?.key??null},readAllCards(){let s=[];for(let[o,a]of Object.entries(r())){if(!e.cardExists(a.key))continue;let i=e.readCard(a.key);i?s.push(i):t?.(`[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??e.defaultCardKey(s),c=e.writeCard(u,o);i[s]={key:u,checksum:c,updatedAt:new Date().toISOString()},e.writeIndex(i);},patchCard(s,o,a){let i=r(),u=i[s];if(!u||!e.cardExists(u.key))throw new Error(`card "${s}" not found`);let c=e.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=e.writeCard(u.key,d);i[s]={key:u.key,checksum:l,updatedAt:new Date().toISOString()},e.writeIndex(i);},removeCard(s){let o=r();o[s]&&(delete o[s],e.writeIndex(o));},readIndex(){return r()}}}function No(e,t){return {readSourceData(r,n){let s=e.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=t(s);e.write(`${r}/.staged/${o}/${n}`,a);},commitSourceData(r,n,s){let o=`${r}/.staged/${s}/${n}`,a=e.read(o);return a==null?false:(e.write(`${r}/${n}`,a),e.remove(o),true)},hasSource(r,n){return e.exists(`${r}/${n}`)}}}function vc(e){function t(r){let n=e.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=t(r);return n.length===0?{events:[],newCursor:r}:{events:n.map(s=>s.event),newCursor:n[n.length-1].id}},pendingCount(r){return t(r).length},appendEvent(r){e.appendEntry({id:e.generateId(),event:r});}}}function kc(e,t){return {appendEntries(r,n){if(!r||n.length===0)return;let s=e.read(r)??[];e.write(r,[...s,...n]);},dispatchEntriesForJournalId(r,n){if(!r)return;let s=e.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{t(o,i);}catch{}}e.delete(r);}}}}var xr="v1",lt="board/graph",wc="board/lastJournalProcessedId";function mc(e){return `cards/${e}/runtime`}function bc(e){return {readRuntime(t){return e.read(mc(t))??{_sources:{}}},writeRuntime(t,r){e.write(mc(t),r);}}}function Eh(e,t){let r={...e};for(let n of t.deleteKeys)delete r[n];return {...r,...t.shallowMerge}}function Sc(e){return {readSnapshot(t){return e.readValues(t)},commitSnapshot(t,r){if(r.schemaVersion!==xr)throw new Error(`Unsupported snapshot schema version: ${r.schemaVersion}`);let n=e.readValues(t);if(n.version!==r.expectedVersion)return {ok:false,reason:"version-mismatch",currentVersion:n.version};let s=Eh(n.values,r);return {ok:true,newVersion:e.writeValues(t,s,r.deleteKeys)}}}}function qo(e){function t(r){let n=e.read(r);return n==null?null:typeof n=="string"?n:JSON.stringify(n)}return {readTaskExecutorRef(){let r=t("task-executor");if(r?.trim())return jo(r.trim())},writeTaskExecutorRef(r){e.write("task-executor",Oo(r));},readChatHandlerFlow(){return e.read("chat-handler-flow")},writeChatHandlerFlow(r){e.write("chat-handler-flow",r);},readCardStoreRef(){return t("card-store-ref")},writeCardStoreRef(r){e.write("card-store-ref",r);},readOutputsStoreRef(){return t("outputs-store-ref")},writeOutputsStoreRef(r){e.write("outputs-store-ref",r);}}}function _c(e){return {writeComputedValues(t,r){e.write(`cards/${t}/computed_values`,r);},readComputedValues(t){return e.read(`cards/${t}/computed_values`)},readAllComputedValues(){let t={};for(let r of e.listKeys("cards/")){let n=r.match(/^cards\/([^/]+)\/computed_values$/);n&&(t[n[1]]=e.read(r));}return t},writeDataObjects(t){for(let[r,n]of Object.entries(t))r&&e.write(`data-objects/${r}`,n);},readDataObject(t){return e.read(`data-objects/${t}`)},readAllDataObjects(){let t={};for(let r of e.listKeys("data-objects/"))t[r.slice(13)]=e.read(r);return t},writeStatusSnapshot(t){e.write("status",t);},readStatusSnapshot(){return e.read("status")}}}function gc(e){return e?{lastRequestedToken:e.lastRequestedToken,lastCompletedToken:e.lastCompletedToken,lastCompletionStatus:e.lastCompletionStatus??(e.lastCompletedToken?"success":"not-started"),queueRequestedToken:e.queueRequestedToken}:{lastCompletionStatus:"not-started"}}function xh(e){return e?.lastRequestedToken?e.lastCompletedToken!==e.lastRequestedToken:false}function hc(e,t){return e?.lastRequestedToken?xh(e)?"in-flight":!e.lastCompletedToken||e.lastCompletedToken<t?"dispatch":"idle":"dispatch"}function Th(e,t){return {...e,lastCompletedToken:t,lastCompletionStatus:"success"}}function yc(e,t){return {...e,lastCompletedToken:t,lastCompletionStatus:"failure"}}function En(e,t){let r=t.state.tasks,n=t.config.tasks,s=Object.keys(r),o=$r(t),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 w of p.requires??[]){let g=u.get(w)??[];g.push(m),u.set(w,g);}let c=s.sort().map(m=>{let p=r[m],w=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=w.requires??[],f=w.provides??[],y=Object.keys(p.data??{}).sort(),_=g.filter(D=>t.state.availableOutputs.includes(D)),b=g.filter(D=>!t.state.availableOutputs.includes(D)),$=i.get(m)??b,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:b,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 w=(p.requires??[]).length===0,f=(p.provides??[]).some(y=>(u.get(y)??[]).some(_=>_!==m));w&&!f&&(v+=1);}return {schema_version:"v1",meta:{board:{path:e}},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 Ah(){return new Date().toISOString()}function Rc(e,t,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,w=()=>{p&&(r.cardRuntimeStore.writeRuntime(d,m),p=false);},g=q=>gc(m._sources[q]),f=(q,S)=>{m._sources[q]=gc(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,yc(h,C));}else {let C=q.rqt;if(!h.lastCompletedToken||C>h.lastCompletedToken){let I=typeof q.deliveryToken=="string"?q.deliveryToken:void 0,K=false;I&&(K=r.fetchedSourcesStore.commitSourceData(d,S,I)),K?f(S,Th(h,C)):f(S,yc(h,C));}}w();}}let b={};for(let q of k)if(q.outputFile){let S=r.fetchedSourcesStore.readSourceData(d,q.outputFile);S!==null&&(b[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=b,c.compute&&dt.runSync(R,{sourcesData:b}),(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:$}),D=e.value;E.source_defs=Array.isArray(N)?N.map(q=>({...q,boardDir:typeof q.boardDir=="string"&&q.boardDir?q.boardDir:D})):N;let M=Ah(),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,I=hc(h,C);return I==="in-flight"?false:I==="dispatch"});if(w(),U.length>0){let q=false,S=M;for(let h of U){let C=h.outputFile;if(typeof C!="string"||!C)continue;let I=g(C),K=I.queueRequestedToken??M;f(C,{...I,lastRequestedToken:K}),S=K,q=true;}return q&&w(),q&&(u.push({taskKind:"source-fetch",payload:{boardRef:se(e),enrichedCard:E,callbackToken:i.callbackToken,rqt:S}}),r.executionRequestStore.appendEntries(t,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 hc(h,C)==="in-flight"}))return "task-initiated";let ze=c.provides??[],De={};for(let{bindTo:q,ref:S}of ze)De[q]=dt.resolve(R,S);return (a??r.outputStore.writeDataObjects.bind(r.outputStore))(De),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:se(e),enrichedCard:E,callbackToken:i.callbackToken,rqt:M}}),n(i.nodeId,De),u.length>0&&r.executionRequestStore.appendEntries(t,u),"task-initiated"}}var xn={settings:{completion:"manual",refreshStrategy:"data-changed"},tasks:{}};function Cc(e){return {[lt]:e.graph,[wc]:e.lastDrainedJournalId}}function $c(e){let t=e[lt],r=e[wc];if(!t||typeof t!="object")throw new Error(`State snapshot is missing required key: ${lt}`);return {graph:t,lastDrainedJournalId:typeof r=="string"?r:""}}function Ec(e){let t=e.requires,r=e.provides?.map(n=>n.bindTo)??[];return {requires:t&&t.length>0?t:void 0,provides:r,taskHandlers:["card-handler"],description:e.meta?.title??e.id}}function X(e){return e!==void 0?{status:"success",data:e}:{status:"success"}}function j(e){return {status:"fail",error:e}}function Z(e){return {status:"error",error:e instanceof Error?e.message:String(e)}}function Ih(e){let t=new TextEncoder().encode(e),r=Array.from(t,n=>String.fromCharCode(n)).join("");return btoa(r).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function Tc(e){let t=e.replace(/-/g,"+").replace(/_/g,"/"),r=t+"=".repeat((4-t.length%4)%4),n=atob(r),s=Uint8Array.from(n,o=>o.charCodeAt(0));return new TextDecoder().decode(s)}function Tn(e){try{let t=JSON.parse(Tc(e));return typeof t?.t=="string"?{taskName:t.t}:null}catch{return null}}function Ph(e){return Ih(JSON.stringify(e))}function xc(e){try{let t=JSON.parse(Tc(e));return typeof t?.cbk=="string"&&typeof t?.cid=="string"&&typeof t?.b=="string"&&typeof t?.d=="string"?t:null}catch{return null}}function Ce(){return new Date().toISOString()}function Oh(e,t){let r=t.onWarn??(()=>{}),n=se(e);function s(S){if(S.length!==0)try{let h=t.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 ${e.value} has no card store configured. Run: init --base-ref <ref> --store-ref <b64-ref>`);let h=t.kvStorageForRef(S);return {readIndex(){return h.read("_index")},writeIndex(C){h.write("_index",C);},readCard(C){return h.read(C)},writeCard(C,I){return h.write(C,I),t.hashFn(I)},cardExists(C){return h.read(C)!==null},defaultCardKey(C){return C}}}let a={readValues(S){let h=t.kvStorage("state-snapshot"),C=h.listKeys().sort();if(C.length===0)return {version:null,values:{}};let I={};for(let K of C)I[K]=h.read(K);return {version:t.hashFn(I),values:I}},writeValues(S,h,C){let I=t.kvStorage("state-snapshot");for(let K of C)I.delete(K);for(let[K,ee]of Object.entries(h))I.write(K,ee);return t.hashFn(h)}},i=()=>qo(t.kvStorage("config")),u=()=>Sc(a),c=()=>vc(t.journalAdapter()),d=()=>$n(o(),r),l=()=>{let S=i().readOutputsStoreRef();if(!S)throw new Error(`Board at ${e.value} has no outputs store configured. Run: init --outputs-store-ref <b64-ref>`);return _c(t.kvStorageForRef(S))};function k(){return !!u().readSnapshot(e.value).values[lt]}function v(){let S=u().readSnapshot(e.value);if(!S.values[lt])throw new Error(`Board not initialized at ${e.value}`);return $c(S.values)}function m(S,h){let C=u().commitSnapshot(e.value,{schemaVersion:xr,expectedVersion:h,commitId:t.genId(),committedAt:Ce(),deleteKeys:[],shallowMerge:Cc(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 w(){let S=(P,F)=>{let oe=P.payload,We=(oe?.enrichedCard??{}).id??oe?.cardId??"unknown";p({type:"task-failed",taskName:We,error:F,timestamp:Ce()});},h=kc(t.kvStorage("execution-requests"),S),C=bc(t.kvStorage("card-runtime")),I=No(t.blobStorage("sources"),P=>t.resolveBlob(P)),K=new Map,ee={readRuntime(P){return K.get(P)??C.readRuntime(P)},writeRuntime(P,F){K.set(P,F);}},be=[],Se=new Map,He={readSourceData(P,F){let oe=`${P}/${F}`;return Se.has(oe)?Se.get(oe):I.readSourceData(P,F)},ingestSourceDataStaged(P,F,oe,Tt){I.ingestSourceDataStaged(P,F,oe,Tt);},commitSourceData(P,F,oe){let Tt=`${P}/.staged/${oe}/${F}`,Ir=t.blobStorage("sources").read(Tt);if(Ir==null)return false;let At=`${P}/${F}`,Lo=Ir.trim();try{Se.set(At,JSON.parse(Lo));}catch{Se.set(At,Lo);}return be.push({cardId:P,outputFile:F,deliveryToken:oe}),true},hasSource(P,F){let oe=`${P}/${F}`;return Se.has(oe)?true:I.hasSource(P,F)}},_e={cardStore:d(),cardRuntimeStore:ee,fetchedSourcesStore:He,outputStore:l(),executionRequestStore:h},ft=v(),pt=Rn(ft.graph),{events:Et,newCursor:xt}=c().readEntriesAfterCursor(ft.lastDrainedJournalId),mt=[],An=[],In=[],Do=new Map,Oc=(P,F)=>{mt.push({type:"task-completed",taskName:P,data:F,timestamp:Ce()});},Fo=(P,F)=>p({type:"task-failed",taskName:P,error:F,timestamp:Ce()}),Tr=cc(pt,{handlers:{"card-handler":Rc(e,xt,_e,Oc,Fo,(P,F)=>{An.push({cardId:P,values:F});},P=>{In.push(P);})}});for(mt=Et;mt.length>0;){let P=mt;mt=[];for(let F of P)if(F.type==="task-restart"){let oe=_e.cardStore.readCard(F.taskName);oe&&Do.set(F.taskName,oe);}Tr.pushAll(P),await Tr.waitForHandlers();}let Mo=Tr.getState();await Tr.dispose({wait:true});let jc=u().readSnapshot(e.value).version;m({lastDrainedJournalId:xt,graph:Cr(Mo)},jc);for(let{cardId:P,values:F}of An)_e.outputStore.writeComputedValues(P,F);for(let P of In)_e.outputStore.writeDataObjects(P);for(let[P,F]of K)C.writeRuntime(P,F);for(let{cardId:P,outputFile:F,deliveryToken:oe}of be)I.commitSourceData(P,F,oe);let Ar;try{Ar=En(n,Mo),_e.outputStore.writeStatusSnapshot(Ar);}catch(P){r(`[board-live-cards-public] status publish failed: ${P instanceof Error?P.message:String(P)}`);}let Ht=[];for(let{cardId:P,values:F}of An)Ht.push({kind:"computed_values",cardId:P,values:F});for(let P of In)for(let[F,oe]of Object.entries(P))F&&Ht.push({kind:"data_object",key:F,payload:oe});for(let[P,F]of Do)Ht.push({kind:"card_refreshed",cardId:P,card:F});Ar!==void 0&&Ht.push({kind:"status",status:Ar}),s(Ht);let Nc=i().readTaskExecutorRef()??{howToRun:"built-in",whatToRun:se({kind:"built-in",value:"source-cli-task-executor"})};h.dispatchEntriesForJournalId(xt,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",Tt=F.enrichedCard?.source_defs??[];for(let We of Tt){if(!We.outputFile){r(`[dispatch] source "${We.bindTo}" has no outputFile \u2014 skipping`);continue}let Ir=Ph({cbk:F.callbackToken,rg:e.value,br:se(e),cid:oe,b:We.bindTo,d:We.outputFile,cs:void 0,rqt:F.rqt});t.dispatchExecution(Nc,{source_def:We,base_ref:se(e),callback:{token:Ir,via:t.selfRef}}).catch(At=>Fo(oe,At instanceof Error?At.message:String(At)));}});}async function g(){try{let S=()=>{let C=v(),{events:I}=c().readEntriesAfterCursor(C.lastDrainedJournalId);I.length<=0||(g(),t.requestProcessAccumulated?.());},h=await Bo(t.lock,w,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=_n(xn);m({lastDrainedJournalId:"",graph:Cr(ee)},null);}let C=S.params?.outputsStoreRef;if(!C)return j("init requires params.outputsStoreRef \u2014 pass the outputs store ref here");let I=i();I.writeCardStoreRef(h),I.writeOutputsStoreRef(C);let K=S.body??{};K["task-executor-ref"]&&I.writeTaskExecutorRef(K["task-executor-ref"]),Object.prototype.hasOwnProperty.call(K,"chat-handler-flow")&&I.writeChatHandlerFlow(K["chat-handler-flow"]);try{l().writeStatusSnapshot(En(n,Rn(v().graph)));}catch{}return X()}catch(h){return Z(h)}}function y(S){try{let h=l().readStatusSnapshot();if(!h){h=En(n,Rn(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:Ce()}),g(),X()):j("removeCard requires params.id")}catch(h){return Z(h)}}function b(S){try{let h=S.params?.id;return h?(p({type:"task-restart",taskName:h,timestamp:Ce()}),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,I=!!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 ${e.value}`);for(let ee of K){let be=d().readCard(ee),Se=Ec(be),He=t.hashFn(Se),_e=t.kvStorage("card-upsert"),ft=_e.read(ee),pt=ft?.taskConfigHash!==He;if(!(!pt&&!I)){if(pt){let Et=ft?.blobRef??d().readCardKey(ee)??ee;p({type:"task-upsert",taskName:ee,taskConfig:Se,timestamp:Ce()}),_e.write(ee,{blobRef:Et,taskConfigHash:He,updatedAt:Ce()});}I&&p({type:"task-restart",taskName:ee,timestamp:Ce()});}}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",I=Tn(h);return I?(p({type:"task-failed",taskName:I.taskName,error:C,timestamp:Ce()}),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 I=(S.body??{}).update??{},K=Tn(h);return K?(p({type:"task-progress",taskName:K.taskName,update:I,timestamp:Ce()}),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 I=xc(h);if(!I)return j("Invalid source token");let{cbk:K,cid:ee,b:be,d:Se,cs:He,rqt:_e}=I,ft=No(t.blobStorage("sources"),mt=>t.resolveBlob(mt)),pt=t.genId();ft.ingestSourceDataStaged(ee,Se,Ye(C),pt);let Et=Tn(K);if(!Et)return j("Invalid callback token embedded in source token");let xt=Ce();return p({type:"task-progress",taskName:Et.taskName,update:{bindTo:be,outputFile:Se,fetchedAt:xt,deliveryToken:pt,sourceChecksum:He,rqt:_e},timestamp:xt}),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 I=xc(h);if(!I)return j("Invalid source token");let{cbk:K,b:ee,d:be,cs:Se,rqt:He}=I,_e=Tn(K);return _e?(p({type:"task-progress",taskName:_e.taskName,update:{bindTo:ee,outputFile:be,failure:!0,reason:C,sourceChecksum:Se,rqt:He},timestamp:Ce()}),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 ${e.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 ${e.value} has no outputs store configured`)}catch(h){return Z(h)}}function de(S){try{let h=S.params?.key;if(!h)return j("getConfig requires params.key");let C=i(),I;switch(h){case "task-executor":I=C.readTaskExecutorRef()??null;break;case "chat-handler-flow":I=C.readChatHandlerFlow()??null;break;case "card-store-ref":I=C.readCardStoreRef();break;case "outputs-store-ref":I=C.readOutputsStoreRef();break;default:return j(`getConfig: unknown key "${h}"`)}return X({value:I})}catch(h){return Z(h)}}function ze(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 De(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:de,getOutputsDataObject:ze,getAllOutputsDataObjects:De,getOutputsComputedValues:zt,getAllOutputsComputedValues:q,removeCard:_,retrigger:b,processAccumulatedEvents:$,upsertCard:R,taskFailed:E,taskProgress:N,sourceDataFetched:D,sourceDataFetchFailure:M}}function jh(e,t){let r=()=>qo(t.kvStorage("config"));function n(){let g=r().readCardStoreRef();if(!g)throw new Error(`Board at ${e.value} has no card store configured. Run: init --base-ref <ref> --store-ref <b64-ref>`);let f=t.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,_),t.hashFn(_)},cardExists(y){return f.read(y)!==null},defaultCardKey(y){return y}}}let s=()=>$n(n(),t.onWarn??(()=>{}));function o(g,f){let y=t.validateSchema(f),_=[],b=r().readTaskExecutorRef();if(b&&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=t.invokeExecutorSync(b,"validate-source-def",[],{timeout:t.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 b=typeof g.bindTo=="string"?g.bindTo:"source",$=t.makeTempFilePath(`probe-in-${b}`),R=t.makeTempFilePath(`probe-out-${b}`),E=t.makeTempFilePath(`probe-err-${b}`,".txt"),N={...g,boardDir:e.value,_projections:f},D=se({kind:"fs-path",value:$}),M=se({kind:"fs-path",value:R}),te=se({kind:"fs-path",value:E});t.absoluteBlob.write($,JSON.stringify(N,null,2));let U=null;try{if(t.invokeExecutorSync(_,"run-source-fetch",["--in-ref",D,"--out-ref",M,"--err-ref",te],{timeout:g.timeout??t.executorTimeouts?.probeMs??6e4}),U=t.absoluteBlob.read(R),U===null)return j("Executor produced no output file")}catch(de){let ze=t.absoluteBlob.read(E)?.trim()??(de instanceof Error?de.message:String(de));return j(`Probe failed: ${ze}`)}finally{try{t.absoluteBlob.remove($);}catch{}try{t.absoluteBlob.remove(E);}catch{}}if(y){let de=Ye(y);t.absoluteBlob.write(de.value,U);}else try{t.absoluteBlob.remove(R);}catch{}return X({bindTo:b,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],b=[];for(let $ of _){let R=s().readCard($);if(!R){b.push({cardId:$,isValid:!1,issues:[`Card "${$}" not found`]});continue}let E=o($,R);if(E.status!=="success")return E;b.push(E.data);}return X(b)}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)",b=o(_,y),$=r().readTaskExecutorRef();if($)try{let R=t.invokeExecutorSync($,"validate-card-preflight",[],{timeout:t.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=[...b.status==="success"?b.data.issues:[],...E.errors];return X({cardId:_,isValid:!1,issues:N})}}catch{}return b}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"],b=y["mock-projections"]??{};return _?a(_,b,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,b=_["card-content"]??_,$=_["mock-projections"]??{},R=b.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=t.invokeExecutorSync(N,"probe-source-preflight",[],{timeout:E.timeout??t.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=t.invokeExecutorSync(f,"describe-capabilities",[],{timeout:t.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 b of y){let $=b.op,R=b.id;if(!R)return j('op is missing "id"');if($==="update"){let E=b["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(),b=y.map($=>({id:$,"card-content":_.readCard($)}));return X({cards:b})}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)",b=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=dt.runSync(E,{sourcesData:b}),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 w(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)",b=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=dt.enrichSourcesSync(N,{card_data:D,requires:$});for(let h of M){let C=h.projections,I=h._projections;if(C&&I){for(let K of Object.keys(C))if(I[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=[],de=f["task-executor-ref"],ze=(de?.howToRun&&de?.whatToRun?de:void 0)??r().readTaskExecutorRef();for(let h=0;h<M.length;h++){let C=M[h],I=typeof C.bindTo=="string"?C.bindTo:`source_${h}`;if(!ze){U.push({bindTo:I,skipped:!0,error:"No task executor configured"});continue}try{let K={...C},ee=t.invokeExecutorSync(ze,"probe-source-preflight",[],{timeout:C.timeout??t.executorTimeouts?.preflightMs??6e4,input:JSON.stringify(K)}),be=JSON.parse(ee.trim());U.push({bindTo:I,reachable:be.reachable,latencyMs:be.latencyMs,error:be.ok?void 0:be.error});}catch{U.push({bindTo:I,skipped:!0,error:"Executor does not support probe-source-preflight"});}}let De=y.compute,zt={},q=[];if(De&&Array.isArray(De)&&De.length>0){let h={id:_,card_data:D,requires:$,source_defs:y.source_defs,compute:De},C=dt.runSync(h,{sourcesData:b});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:w,describeTaskExecutorCapabilities:k,updatesInCardStore:v,readFromCardStore:m}}function Nh(e){function t(s){return {status:"success",data:s}}function r(s){return {status:"fail",error:s}}function n(s){return {status:"error",error:s instanceof Error?s.message:String(s)}}return {get(s){try{let o=s.params?.id;if(o){let a=e.readCard(o);return a?t({cards:[a]}):r(`card "${o}" not found`)}return t({cards:e.readAllCards()})}catch(o){return n(o)}},set(s){try{let o=s.body;if(o==null)return r("set requires a body (card object or array of cards)");let a=Array.isArray(o)?o:[o];for(let i of a){if(typeof i.id!="string")return r("each card must have a string `id` field");e.writeCard(i.id,i);}return t({count:a.length})}catch(o){return n(o)}},del(s){try{let o=s.body?.ids??[],a=s.params?.id,i=a?[...o,a]:o;if(i.length===0)return r("del requires body.ids (string[]) or params.id");for(let u of i)e.removeCard(u);return t({count:i.length})}catch(o){return n(o)}},patch(s){try{let o=s.params?.id,a=s.params?.path;if(!o)return r("patch requires params.id");if(!a)return r("patch requires params.path");let i=s.body,u=i&&Object.prototype.hasOwnProperty.call(i,"value")?i.value:s.body;return e.patchCard(o,a,u),t({count:1})}catch(o){return n(o)}}}}function qh(e){function t(s){return {status:"success",data:s}}function r(s){return {status:"fail",error:s}}function n(s){return {status:"error",error:s instanceof Error?s.message:String(s)}}return {list(s){try{let o=s.params?.prefix??"";return t({artifacts:e.list(o)})}catch(o){return n(o)}},head(s){try{let o=s.params?.key;return o?t({artifact:e.head(o)}):r("head requires params.key")}catch(o){return n(o)}},put(s){try{let o=s.params?.key,a=s.params?.contentType;if(!o)return r("put requires params.key");let i=s.body;if(typeof i=="string")return t({artifact:e.putText(o,i,a)});if(i&&typeof i=="object"&&typeof i.text=="string")return t({artifact:e.putText(o,i.text,a)});if(i&&typeof i=="object"&&Array.isArray(i.bytes)){let u=i.bytes,c=new Uint8Array(u.map(d=>Math.max(0,Math.min(255,Number(d)||0))));return t({artifact:e.putBytes(o,c,a)})}return r("put requires body as string, {text}, or {bytes:number[]}")}catch(o){return n(o)}},get(s){try{let o=s.params?.key,a=s.params?.as??"base64";if(!o)return r("get requires params.key");let i=e.head(o);if(!i)return r(`artifact "${o}" not found`);if(a==="text"){let c=e.getText(o);return c===null?r(`artifact "${o}" not found`):t({key:o,contentType:i.contentType,size:i.size,text:c})}let u=e.getBytes(o);return u===null?r(`artifact "${o}" not found`):t({key:o,contentType:i.contentType,size:i.size,bytes:[...u]})}catch(o){return n(o)}},del(s){try{let o=s.params?.key;return o?(e.remove(o),t({ok:!0})):r("del requires params.key")}catch(o){return n(o)}}}}function Ac(){return new Date().toISOString()}function Ic(e){return new TextEncoder().encode(e).byteLength}function Dh(e){return e?{key:e.key,size:e.size,updatedAt:e.updatedAt,contentType:e.contentType}:null}function Fh(e){let t=String(e||"").match(/^(\d+)[-_]/);return t?parseInt(t[1],10):0}function Mh(e){let t=String(e||"").trim();if(!t)return "upload.bin";let r=Math.max(t.lastIndexOf("/"),t.lastIndexOf("\\"));return (r>=0?t.slice(r+1):t)||"upload.bin"}function Lh(e){return String(e||"").toLowerCase().replace(/\s+/g,"_").replace(/[^a-z0-9_-]/g,"_").replace(/_+/g,"_").replace(/^_+|_+$/g,"")||"file"}function Vh(e){if(!e||e===".")return "";let t=String(e).replace(/^\./,"").toLowerCase().replace(/[^a-z0-9]/g,"");return t?`.${t}`:""}function Bh(e){let t=Mh(e),r=t.lastIndexOf(".");return r<=0||r===t.length-1?{stem:t,ext:""}:{stem:t.slice(0,r),ext:t.slice(r)}}function Gh(e){let t=e.lastIndexOf("/");return t>=0?e.slice(t+1):e}function Kh(e){function t(r){let n=e.stat?Dh(e.stat(r)):null;if(n)return n;if(!e.exists(r))return null;let s=e.read(r);return s===null?{key:r}:{key:r,size:Ic(s)}}return {exists(r){return e.exists(r)},putText(r,n,s="text/plain; charset=utf-8"){e.write(r,n);let o=t(r)??{key:r};return o.contentType=s,o.updatedAt=o.updatedAt??Ac(),o.size=o.size??Ic(n),o},putBytes(r,n,s="application/octet-stream"){if(e.writeBytes)e.writeBytes(r,n);else {let a=JSON.stringify({__kind:"bytes-array",data:[...n]});e.write(r,a);}let o=t(r)??{key:r};return o.contentType=s,o.updatedAt=o.updatedAt??Ac(),o.size=o.size??n.byteLength,o},getText(r){let n=e.read(r);if(n===null){if(!e.readBytes)return null;let s=e.readBytes(r);return s===null?null:Buffer.from(s).toString("utf-8")}try{let s=JSON.parse(n);if(s&&s.__kind==="bytes-array"&&Array.isArray(s.data))return new TextDecoder("utf-8").decode(new Uint8Array(s.data))}catch{}return n},getBytes(r){if(e.readBytes){let s=e.readBytes(r);if(s!==null)return s}let n=e.read(r);if(n===null)return null;try{let s=JSON.parse(n);if(s&&s.__kind==="bytes-array"&&Array.isArray(s.data))return new Uint8Array(s.data)}catch{}return new TextEncoder().encode(n)},head:t,list(r=""){return e.listKeys(r).map(n=>t(n)??{key:n}).sort((n,s)=>n.key.localeCompare(s.key))},remove(r){e.remove(r);}}}function Uh(e){function t(s,o){let a=0,i=[];Array.isArray(o)&&i.push(...o);for(let u of e.list(`${s}/`))i.push(Gh(u.key));for(let u of i){let c=Fh(u);Number.isFinite(c)&&c>a&&(a=c);}return a+1}function r(s,o,a){let i=Number(a?.maxLen||32),{stem:u,ext:c}=Bh(s),d=Vh(c),l=Lh(u),k=`${String(o).padStart(3,"0")}-`,v=d,m=i-k.length-v.length;m<1&&(v="",m=i-k.length);let p=l.slice(0,Math.max(1,m)),w=`${k}${p}${v}`;return w.length>i&&(w=w.slice(0,i).replace(/\.$/,"")),w}function n(s,o,a){let i=t(s,a?.seedNames),u=r(o,i,{maxLen:a?.maxLen});for(;e.exists(`${s}/${u}`);)i+=1,u=r(o,i,{maxLen:a?.maxLen});return u}return {nextSerial:t,buildStoredName:r,allocateStoredName:n}}function Jh(){function e(s,o){if(!Array.isArray(s))return [];let a=[];for(let i of s){if(!i||typeof i!="object")continue;let u=i;typeof u.stored_name=="string"&&a.push({name:typeof u.name=="string"?u.name:u.stored_name,stored_name:u.stored_name,size:typeof u.size=="number"&&Number.isFinite(u.size)?u.size:null,mime_type:typeof u.mime_type=="string"?u.mime_type:null,path:typeof u.path=="string"?u.path:null,uploaded_at:typeof u.uploaded_at=="string"?u.uploaded_at:o||null});}return a}function t(s){return !s||typeof s!="object"?[]:e(s.files,void 0)}function r(s,o){let a=t(s);if(o.length===0)return s.files=a,a;let i=new Set(a.map(u=>u.stored_name));for(let u of o)i.has(u.stored_name)||(a.push(u),i.add(u.stored_name));return s.files=a,a}function n(s,o,a){let i=t(s);if(!Number.isInteger(o)||o<0||o>=i.length)return {ok:false,reason:"index_out_of_range"};let u=i[o];return !u||!u.stored_name?{ok:false,reason:"missing_stored_name"}:a&&a!==u.stored_name?{ok:false,reason:"stale_reference"}:{ok:true,file:u}}return {read:t,normalizeIncoming:e,merge:r,resolve:n}}function Gk(){return {async invoke(e,t){if(e.howToRun!=="local-node")return {dispatched:false,error:`createNodeSpawnInvocationAdapter: unsupported howToRun "${e.howToRun}"`};let r="";try{let o=e.whatToRun;r=Pe(o);}catch{r="";}if(!r)return {dispatched:false,error:"createNodeSpawnInvocationAdapter: could not resolve executable path from whatToRun"};let n={...t},s=Buffer.from(JSON.stringify(n)).toString("base64");try{return spawn(process.execPath,[r,"--boardId",String(t.boardId??""),"--cardId",String(t.cardId??""),"--extraEncJson",s],{stdio:"ignore",windowsHide:!0}).unref(),{dispatched:!0}}catch(o){return {dispatched:false,error:o instanceof Error?o.message:String(o)}}},async describe(e){if(e.howToRun!=="local-node")return null;let t="";try{let r=e.whatToRun;t=Pe(r);}catch{t="";}if(!t)return null;try{let r=spawnSync(process.execPath,[t,"describe"],{timeout:5e3,encoding:"utf-8",windowsHide:!0});return r.status!==0?null:JSON.parse(String(r.stdout).trim())}catch{return null}}}}var Wh=".board.lock";function Yh(e,t){return typeof e=="string"?{cliDir:e,opts:t}:{cliDir:void 0,opts:e}}function Xh(e,t){return typeof e=="string"?{cliDir:e,opts:t}:{cliDir:void 0,opts:e}}function Pc(e){if(e)return e;let t=Ho(import.meta.url),r=[t,Xe(t,"..","cli","node"),Xe(t,"..","..","cli","node")];for(let n of r)try{return qn(n),n}catch{}throw new Error(`createFsBoardPlatformAdapter: could not resolve a public CLI directory from module dir ${t}`)}function Qh(e,t,r){let{cliDir:n,opts:s}=Yh(t,r),o=Pc(n),a=e.value,u={meta:"board-live-cards",howToRun:"local-node",whatToRun:(s?.suppressSpawn?"":qn(o))?se({kind:"yaml-flow-cli",value:"board-live-cards-cli.js"}):"",...s?.notifyChannel?{extra:{notifyChannel:s.notifyChannel}}:{}};return {kvStorage:c=>Mr(Xe(a,`.${c}`)),blobStorage:c=>c?Fr(Xe(a,c)):Fr(a),journalAdapter:()=>fa(a),lock:pa(Xe(a,Wh)),selfRef:u,async dispatchExecution(c,d){if(s?.suppressSpawn)return {dispatched:false};try{let l=d.source_def?.bindTo??On().slice(0,8),k=Wt(a,`exec-in-${l}`),v=Wt(a,`exec-out-${l}`),m=Wt(a,`exec-err-${l}`,".txt"),p=se({kind:"fs-path",value:k}),w=se({kind:"fs-path",value:v}),g=se({kind:"fs-path",value:m});return ca({kind:"fs-path",value:k}).write(k,JSON.stringify(d,null,2)),ua(c,{subcommand:"run-source-fetch",inRef:p,outRef:w,errRef:g},o),{dispatched:!0}}catch(l){return {dispatched:false,error:l instanceof Error?l.message:String(l)}}},resolveBlob(c){let d=Jo(c.value)?Vn().read(c.value):Fr(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=>Mr(Ye(c).value),requestProcessAccumulated(){s?.suppressSpawn||Xo(o,e,s?.notifyChannel);},publishBoardChangeNotifications(c){if(!s?.notifyChannel||c.length===0)return;let d=c.map(l=>({id:On(),ts:new Date().toISOString(),boardRef:se(e),notification:l}));Qo(s.notifyChannel,d,s.onWarn);},onWarn:s?.onWarn}}function Kk(e,t,r){let{cliDir:n,opts:s}=Xh(t,r),o=Pc(n),a=Qh(e,o,s),i=Nr();return {...a,invokeExecutorSync(u,c,d,l){let{command:k,baseArgs:v}=qr(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=xo(u);return {ok:c.errors.length===0,errors:c.errors}},makeTempFilePath(u,c){return Wt(e.value,u,c)},absoluteBlob:Vn()}}function Uk(e){let t=Mr(Xe(e,".kv","chat"));return To(r=>{let n=String(r).replace(/[^a-zA-Z0-9_-]/g,"_");return da(Xe(e,"chats",`${n}.jsonl`))},t)}function Jk(e){try{let t=JSON.parse(Buffer.from(e,"base64url").toString());return typeof t.br=="string"?t.br:null}catch{return null}}
|
|
15
|
-
|
|
10
|
+
`,s=Nr.get(e);if(s&&!s.socket.destroyed){s.ready?s.socket.write(n):s.queue.push(n);return}let o=id(e),a=Zo.createConnection(o);s={socket:a,ready:false,queue:[n]},Nr.set(e,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)}`),Nr.delete(e);}),a.on("close",()=>{Nr.delete(e);});}function Fr(){return {executeSync(e,t,r){return sa({command:e,args:t,cwd:r?.cwd,timeoutMs:r?.timeout,env:r?.env},{encoding:r?.encoding,input:r?.input})},executeAsync(e,t,r){ad({command:e,args:t},r);},resolveInvocation(e,t){let r=od({command:e,args:t});return {cmd:r.command,args:r.args??[]}},splitCommand:na,spawnDetached(e,t){qr({command:e,args:t});}}}var ua=dirname(fileURLToPath(import.meta.url)),fd=createRequire(import.meta.url);function pd(){let e=resolve(ua,"./jsonata-sync.cjs");return existsSync(e)?e:resolve(ua,"../../card-compute/jsonata-sync.cjs")}var wt=fd(pd());function Vn(e,t,r){if(!e||typeof e!="object")return {};let n={};if(Array.isArray(e.cmdTemplate)){let s=[];for(let o of e.cmdTemplate)try{s.push(String(wt(o).evaluate(t)));}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 e.stdinTemplate=="string")try{n.stdin=wt(e.stdinTemplate).evaluate(t);}catch(s){let o=s instanceof Error?s.message:String(s);throw new Error(`[${r}] argsMassaging.stdinTemplate failed: ${o}`)}if(typeof e.urlTemplate=="string")try{n.url=String(wt(e.urlTemplate).evaluate(t));}catch(s){let o=s instanceof Error?s.message:String(s);throw new Error(`[${r}] argsMassaging.urlTemplate failed: ${o}`)}if(typeof e.headerTemplate=="string")try{let s=wt(e.headerTemplate).evaluate(t);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 e.bodyTemplate=="string")try{n.body=wt(e.bodyTemplate).evaluate(t);}catch(s){let o=s instanceof Error?s.message:String(s);throw new Error(`[${r}] argsMassaging.bodyTemplate failed: ${o}`)}return n}var gd=createRequire(import.meta.url);function hd(e){return typeof e=="object"?e:Ke(e)}function da(e){let t=J.basename(String(e||"").trim());if(!t)throw new Error(`resolveYamlFlowCliPath: expected non-empty cli file name, got ${JSON.stringify(e)}`);let r=J.dirname(gd.resolve("yaml-flow/package.json")),n=J.join(r,"cli","node",t);if(!b.existsSync(n))throw new Error(`resolveYamlFlowCliPath: could not find ${t} under ${J.join(r,"cli","node")}`);return n}function Me(e){let t=hd(e);return t.kind==="yaml-flow-cli"?da(t.value):t.value}function yd(e,t){let r=Me(e);switch(r){case "source-cli-task-executor":{let n=J.join(t,"source-cli-task-executor.js");if(b.existsSync(n))return {command:process.execPath,args:[n]};let s=J.join(t,"source-cli-task-executor.ts"),o=J.join(t,"..","..","node_modules","tsx","dist","cli.mjs"),a=J.join(t,"..","..","node_modules",".bin","tsx"),i=b.existsSync(o)?o:a;return b.existsSync(s)&&b.existsSync(i)?{command:process.execPath,args:[i,s]}:{command:process.execPath,args:[n]}}case "board-live-cards":{let{cmd:n,args:s}=Mn(t,"_",[]);return {command:n,args:s}}default:throw new Error(`resolveBuiltIn: unknown built-in name "${r}". Supported: source-cli-task-executor, board-live-cards`)}}function la(e,t){if(e.howToRun==="built-in"){let{command:n,args:s}=yd(e.whatToRun,t);return {command:n,baseArgs:s}}let r=(typeof e.whatToRun=="object",Me(e.whatToRun));switch(e.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 "${e.howToRun}" is not a local transport`)}}function vd(e,t){let r=[e.subcommand];return e.inRef&&r.push("--in-ref",e.inRef),e.outRef&&r.push("--out-ref",e.outRef),e.errRef&&r.push("--err-ref",e.errRef),t&&r.push("--extra",Buffer.from(JSON.stringify(t)).toString("base64")),r}function Sd(e,t){return {subcommand:e.subcommand,...e.inRef?{inRef:e.inRef}:{},...e.outRef?{outRef:e.outRef}:{},...e.errRef?{errRef:e.errRef}:{},...t?{extra:t}:{}}}function Dr(e,t){return la(e,t)}function fa(e){let t=e.trim();if(!t)throw new Error("empty stdout");try{return JSON.parse(t)}catch{let r=t.split(/\r?\n/).filter(Boolean),n=r[r.length-1];return JSON.parse(n)}}function pa(e,t){return {...t,whatToRun:Me(e.whatToRun),...e.extra?{extra:e.extra}:{}}}function Bn(e,t,r="invokeExecutionRef"){return Vn(e,t,r)}function ma(e){return e&&typeof e=="object"&&!Array.isArray(e)&&typeof e.result=="string"&&e.data&&typeof e.data=="object"&&!Array.isArray(e.data)?e:{result:"success",data:e&&typeof e=="object"&&!Array.isArray(e)?e:{stdout:e}}}function ot(e){return {result:"failure",data:{error:e}}}function st(e,t,r){let n=r?.label??"invokeExecutionRefSync",s=r?.cliDir??r?.cwd??process.cwd(),o;try{o=Bn(e.argsMassaging,pa(e,t),n);}catch(l){let h=l instanceof Error?l.message:String(l);return ot(h)}let a;try{a=Dr(e,s);}catch(l){let h=l instanceof Error?l.message:String(l);return ot(`[${n}] ref resolution failed: ${h}`)}let i=[...a.baseArgs,...o.cmdArgs??[]],c=JSON.stringify(o.stdin??t),u=Fr(),d;try{d=u.executeSync(a.command,i,{timeout:r?.timeoutMs??3e4,encoding:"utf-8",cwd:r?.cwd,input:c});}catch(l){let h=l,y=(h.stderr?String(h.stderr):"").trim(),f=typeof h.status=="number"?h.status:"unknown",p=y||h.message;return ot(`[${n}] ref exited with status ${f}${p?`: ${p}`:""}`)}try{return ma(fa(d))}catch{return {result:"success",data:{stdout:d.trim()}}}}async function ca(e,t,r){let n=r?.label??"invokeExecutionRef",s;try{s=Bn(e.argsMassaging,pa(e,t),n);}catch(u){let d=u instanceof Error?u.message:String(u);return ot(d)}let o=Me(e.whatToRun),a=s.headers?{"Content-Type":"application/json",...s.headers}:{"Content-Type":"application/json"},i=s.url??o,c;if(e.howToRun==="http:get"){let u=s.body&&typeof s.body=="object"&&!Array.isArray(s.body)?s.body:t,d=new URLSearchParams(Object.entries(u).filter(([,l])=>l!=null).map(([l,h])=>[l,String(h)]));d.size>0&&(i=`${i}${i.includes("?")?"&":"?"}${d.toString()}`);}else c=JSON.stringify(s.body??t);try{let u=await fetch(i,{method:e.howToRun==="http:get"?"GET":"POST",headers:a,body:c});if(!u.ok){let l=await u.text().catch(()=>"");return ot(`[${n}] HTTP ${u.status}${l?`: ${l}`:""}`)}let d=await u.text();if(!d.trim())return {result:"success",data:{}};try{return ma(fa(d))}catch{return {result:"success",data:{stdout:d.trim()}}}}catch(u){let d=u instanceof Error?u.message:String(u);return ot(`[${n}] ${d}`)}}var wd={"local-node":async(e,t,r)=>st(e,t,r),"local-python":async(e,t,r)=>st(e,t,r),"local-process":async(e,t,r)=>st(e,t,r),"built-in":async(e,t,r)=>st(e,t,r),"http:post":ca,"http:get":ca},kd={"local-node":st,"local-python":st,"local-process":st,"built-in":st};async function ga(e,t,r){let n=r?.transports?.[e.howToRun]??wd[e.howToRun];return n?n(e,t,r):ot(`[${r?.label??"invokeExecutionRef"}] unsupported howToRun: ${e.howToRun}`)}function Gn(e,t,r){let n=r?.syncTransports?.[e.howToRun]??kd[e.howToRun];return n?n(e,t,r):ot(`[${r?.label??"invokeExecutionRefSync"}] unsupported sync howToRun: ${e.howToRun}`)}function bd(e){return {invoke(t,r){return ga(t,r,e)},invokeSync(t,r){return Gn(t,r,e)}}}function _d(e,t,r){return Gn(e,t,r)}async function Rd(e,t){let r={...t,whatToRun:Me(e.whatToRun)},n=Vn(e.argsMassaging,r,"_invokeTaskExecutorHttp"),s=n.url??Me(e.whatToRun),o=n.body?n.body:Sd(t,e.extra),a={"Content-Type":"application/json"},i=n.headers?{...a,...n.headers}:a,c=await fetch(s,{method:e.howToRun==="http:get"?"GET":"POST",headers:i,body:JSON.stringify(o)});if(!c.ok){let d=await c.text().catch(()=>"");return {status:"error",error:`HTTP ${c.status}: ${d}`}}let u=await c.json().catch(()=>null);return u&&typeof u.status=="string"?u:{status:"success"}}function ha(e,t,r){if(e.howToRun==="http:post"||e.howToRun==="http:get"){Rd(e,t).catch(i=>{console.error(`[dispatchTaskExecutorDetached] HTTP dispatch failed: ${i.message}`);});return}let{command:s,baseArgs:o}=la(e,r),a=vd(t,e.extra);qr({command:s,args:[...o,...a]});}function Ye(e,t){if(process.platform!=="win32"){b.renameSync(e,t);return}let r=[10,20,40,80,160];for(let n=0;n<=r.length;n++)try{b.renameSync(e,t);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 qt(e){function t(s){return J.join(e,...s.split("/"))}function r(s){return J.relative(e,s).replace(/\\/g,"/")}function n(s,o){if(b.existsSync(s))for(let a of b.readdirSync(s,{withFileTypes:true})){let i=J.join(s,a.name);if(a.isDirectory()){n(i,o);continue}a.isFile()&&o.push(r(i));}}return {read(s){let o=t(s);if(!b.existsSync(o))return null;try{return b.readFileSync(o,"utf-8")}catch{return null}},write(s,o){let a=t(s),i=`${a}.${process.pid}.${randomUUID()}.tmp`;b.mkdirSync(J.dirname(a),{recursive:true}),b.writeFileSync(i,o,"utf-8"),Ye(i,a);},exists(s){return b.existsSync(t(s))},remove(s){let o=t(s);try{b.existsSync(o)&&b.unlinkSync(o);}catch{}},readBytes(s){let o=t(s);if(!b.existsSync(o))return null;try{return new Uint8Array(b.readFileSync(o))}catch{return null}},writeBytes(s,o){let a=t(s),i=`${a}.${process.pid}.${randomUUID()}.tmp`;b.mkdirSync(J.dirname(a),{recursive:true}),b.writeFileSync(i,Buffer.from(o)),Ye(i,a);},listKeys(s){let o=[];n(e,o);let a=o.sort();return s?a.filter(i=>i.startsWith(s)):a},stat(s){let o=t(s);if(!b.existsSync(o))return null;try{let a=b.statSync(o);return {key:s,size:Number(a.size||0),updatedAt:new Date(a.mtimeMs).toISOString()}}catch{return null}}}}function zn(){return {read(e){if(!b.existsSync(e))return null;try{return b.readFileSync(e,"utf-8")}catch{return null}},write(e,t){let r=`${e}.${process.pid}.${randomUUID()}.tmp`;b.mkdirSync(J.dirname(e),{recursive:true}),b.writeFileSync(r,t,"utf-8"),Ye(r,e);},exists(e){return b.existsSync(e)},remove(e){try{b.existsSync(e)&&b.unlinkSync(e);}catch{}},readBytes(e){if(!b.existsSync(e))return null;try{return new Uint8Array(b.readFileSync(e))}catch{return null}},writeBytes(e,t){let r=`${e}.${process.pid}.${randomUUID()}.tmp`;b.mkdirSync(J.dirname(e),{recursive:true}),b.writeFileSync(r,Buffer.from(t)),Ye(r,e);},stat(e){if(!b.existsSync(e))return null;try{let t=b.statSync(e);return {key:e,size:Number(t.size||0),updatedAt:new Date(t.mtimeMs).toISOString()}}catch{return null}},listKeys(e){return []}}}var Kn="__scratch-marker",Un="__scratch-config.json",Ed=1440*60*1e3,xd=720*60*1e3,Td=500;function ya(e,t){if(!e)return t;let r=e.replace(/[^A-Za-z0-9._-]/g,"_");return r.length>0?r:t}function Vr(e){b.mkdirSync(e,{recursive:true});let t=J.join(e,Kn),r=J.join(e,Un),n=!b.existsSync(t);if(n)try{b.writeFileSync(t,`scratch-store
|
|
11
|
+
${new Date().toISOString()}
|
|
12
|
+
`,"utf-8");}catch{}function s(){if(!b.existsSync(r))return {};try{let u=b.readFileSync(r,"utf-8"),d=JSON.parse(u);return d&&typeof d=="object"&&!Array.isArray(d)?d:{}}catch{return {}}}function o(u){let d=`${r}.${process.pid}.${randomUUID()}.tmp`;try{b.writeFileSync(d,JSON.stringify(u,null,2),"utf-8"),Ye(d,r);}catch{}}if(n){let u=s();typeof u["retention.lastSweepAt"]!="number"&&(u["retention.lastSweepAt"]=Date.now(),o(u));}function a(){if(!b.existsSync(t))return;let u=s(),d=typeof u["retention.maxAgeMs"]=="number"?u["retention.maxAgeMs"]:Ed,l=typeof u["retention.sweepIntervalMs"]=="number"?u["retention.sweepIntervalMs"]:xd;if(d<=0||l<=0)return;let h=typeof u["retention.lastSweepAt"]=="number"?u["retention.lastSweepAt"]:0,y=Date.now();if(y-h<l)return;u["retention.lastSweepAt"]=y,o(u);let f=y;try{let p=b.readdirSync(e,{withFileTypes:!0});for(let v of p){if(Date.now()-f>Td)break;if(!v.isFile()||v.name===Kn||v.name===Un)continue;let _=J.join(e,v.name);try{let m=b.statSync(_);if(y-m.mtimeMs>d)try{b.unlinkSync(_);}catch{}}catch{}}}catch{}}function i(u,d){let l=ya(u,"scratch"),h=ya(d,".json"),y=h.startsWith(".")?h:`.${h}`,f=`${l}-${Date.now()}-${randomUUID().slice(0,8)}${y}`;return J.join(e,f)}function c(u,d){let l=`${u}.${process.pid}.${randomUUID()}.tmp`;b.mkdirSync(J.dirname(u),{recursive:true}),b.writeFileSync(l,d,"utf-8"),Ye(l,u);}return {read(u){if(!b.existsSync(u))return null;try{return b.readFileSync(u,"utf-8")}catch{return null}},write(u,d){c(u,d);try{a();}catch{}},exists(u){return b.existsSync(u)},remove(u){try{b.existsSync(u)&&b.unlinkSync(u);}catch{}},readBytes(u){if(!b.existsSync(u))return null;try{return new Uint8Array(b.readFileSync(u))}catch{return null}},writeBytes(u,d){let l=`${u}.${process.pid}.${randomUUID()}.tmp`;b.mkdirSync(J.dirname(u),{recursive:true}),b.writeFileSync(l,Buffer.from(d)),Ye(l,u);try{a();}catch{}},stat(u){if(!b.existsSync(u))return null;try{let d=b.statSync(u);return {key:u,size:Number(d.size||0),updatedAt:new Date(d.mtimeMs).toISOString()}}catch{return null}},listKeys(u){try{let d=b.readdirSync(e,{withFileTypes:!0}),l=[];for(let h of d){if(!h.isFile()||h.name===Kn||h.name===Un)continue;let y=J.join(e,h.name);(!u||y.startsWith(u))&&l.push(y);}return l.sort()}catch{return []}},getUniqueKey(u,d){return i(u,d)},create(u,d,l){let h=i(d,l);c(h,u);try{a();}catch{}return h},keyRef(u){return {kind:"fs-path",value:u}},config:{get(u){return s()[u]??null},set(u,d){let l=s();d==null?delete l[u]:l[u]=d,o(l);}}}}var Ad="__archive-marker",Id="__archive-config.json",Mr="streams",Lr="blobs",Od=500;function va(e){let t=e.replace(/[^A-Za-z0-9._-]/g,"_");if(!t)throw new Error("Archive segment name cannot be empty after sanitization");return t}function Br(e){b.mkdirSync(e,{recursive:true}),b.mkdirSync(J.join(e,Mr),{recursive:true}),b.mkdirSync(J.join(e,Lr),{recursive:true});let t=J.join(e,Ad),r=J.join(e,Id);if(!b.existsSync(t))try{b.writeFileSync(t,`archive-store
|
|
13
|
+
${new Date().toISOString()}
|
|
14
|
+
`,"utf-8");}catch{}function n(){if(!b.existsSync(r))return {};try{let a=b.readFileSync(r,"utf-8"),i=JSON.parse(a);return i&&typeof i=="object"&&!Array.isArray(i)?i:{}}catch{return {}}}function s(a){let i=`${r}.${process.pid}.${randomUUID()}.tmp`;try{b.writeFileSync(i,JSON.stringify(a,null,2),"utf-8"),Ye(i,r);}catch{}}function o(){if(!b.existsSync(t))return;let a=n(),i=typeof a["retention.maxAgeMs"]=="number"?a["retention.maxAgeMs"]:0,c=typeof a["retention.sweepIntervalMs"]=="number"?a["retention.sweepIntervalMs"]:0;if(i<=0||c<=0)return;let u=typeof a["retention.lastSweepAt"]=="number"?a["retention.lastSweepAt"]:0,d=Date.now();if(d-u<c)return;a["retention.lastSweepAt"]=d,s(a);let l=d,h=y=>{let f;try{f=b.readdirSync(y,{withFileTypes:!0});}catch{return}for(let p of f){if(Date.now()-l>Od)return;let v=J.join(y,p.name);if(p.isDirectory()){h(v);continue}if(p.isFile())try{let _=b.statSync(v);if(d-_.mtimeMs>i)try{b.unlinkSync(v);}catch{}}catch{}}};h(J.join(e,Mr)),h(J.join(e,Lr));}return {stream(a){let i=va(a),c=J.join(e,Mr,`${i}.jsonl`),u=Hn(c);return {append(d){let l=u.append(d);try{o();}catch{}return l},readAll:()=>u.readAll(),readAfter:d=>u.readAfter(d),clear:()=>{u.clear&&u.clear();}}},blob(a){let i=va(a),c=J.join(e,Lr,i);b.mkdirSync(c,{recursive:true});let u=qt(c);return {read:d=>u.read(d),write:(d,l)=>{u.write(d,l);try{o();}catch{}},exists:d=>u.exists(d),remove:d=>u.remove(d),readBytes:u.readBytes?d=>u.readBytes(d):void 0,writeBytes:u.writeBytes?(d,l)=>{u.writeBytes(d,l);try{o();}catch{}}:void 0,listKeys:d=>u.listKeys(d),stat:u.stat?d=>u.stat(d):void 0}},listStreams(a){let i=J.join(e,Mr);try{return b.readdirSync(i,{withFileTypes:!0}).filter(c=>c.isFile()&&c.name.endsWith(".jsonl")).map(c=>c.name.slice(0,-6)).filter(c=>!a||c.startsWith(a)).sort()}catch{return []}},listBlobs(a){let i=J.join(e,Lr);try{return b.readdirSync(i,{withFileTypes:!0}).filter(c=>c.isDirectory()).map(c=>c.name).filter(c=>!a||c.startsWith(a)).sort()}catch{return []}},config:{get(a){return n()[a]??null},set(a,i){let c=n();i==null?delete c[a]:c[a]=i,s(c);}}}}function Gr(e){function t(n){return J.join(e,...n.split("/"))+".json"}function r(n,s,o,a){if(b.existsSync(n))for(let i of b.readdirSync(n,{withFileTypes:true})){let c=s?`${s}/${i.name}`:i.name;if(i.isDirectory()){r(J.join(n,i.name),c,o,a);continue}if(!i.isFile()||!i.name.endsWith(".json"))continue;let u=c.replace(/\.json$/,"");(!o||u.startsWith(o))&&a.push(u);}}return {read(n){let s=t(n);if(!b.existsSync(s))return null;try{return JSON.parse(b.readFileSync(s,"utf-8"))}catch{return null}},write(n,s){let o=t(n),a=`${o}.${process.pid}.${randomUUID()}.tmp`;b.mkdirSync(J.dirname(o),{recursive:true}),b.writeFileSync(a,JSON.stringify(s,null,2),"utf-8"),Ye(a,o);},delete(n){let s=t(n);try{b.existsSync(s)&&b.unlinkSync(s);}catch{}},listKeys(n){let s=[];return r(e,"",n,s),s.sort()}}}function Hn(e){function t(){if(!b.existsSync(e))return [];let r=b.readFileSync(e,"utf-8").trim();return r?r.split(`
|
|
15
|
+
`).filter(Boolean).map(n=>JSON.parse(n)):[]}return {append(r){let n={id:randomUUID(),payload:r};return b.mkdirSync(J.dirname(e),{recursive:true}),b.appendFileSync(e,JSON.stringify(n)+`
|
|
16
|
+
`,"utf-8"),n},readAll(){return t()},readAfter(r){let n=t();if(!r)return {entries:n,newCursor:n.length>0?n[n.length-1].id:null};let s=n.findIndex(a=>a.id===r),o=s===-1?n:n.slice(s+1);return {entries:o,newCursor:o.length>0?o[o.length-1].id:r}},clear(){b.existsSync(e)&&b.truncateSync(e,0);}}}function Jn(e){if(e==null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return `[${e.map(Jn).join(",")}]`;let t=e;return `{${Object.keys(t).sort().map(n=>`${JSON.stringify(n)}:${Jn(t[n])}`).join(",")}}`}function Sa(e){return createHash("sha256").update(Jn(e)).digest("hex")}function wa(e){let t=J.join(e,"board-journal.jsonl");return {readAllEntries(){if(!b.existsSync(t))return [];let r=b.readFileSync(t,"utf-8").trim();return r?r.split(`
|
|
17
|
+
`).filter(Boolean).map(n=>JSON.parse(n)):[]},appendEntry(r){b.appendFileSync(t,JSON.stringify(r)+`
|
|
18
|
+
`,"utf-8");},generateId(){return randomUUID()}}}function ka(e){return {tryAcquire(){try{if(!b.existsSync(e)){b.mkdirSync(J.dirname(e),{recursive:!0});try{b.writeFileSync(e,"{}",{flag:"wx"});}catch{}}return lockSync(e,{retries:0})}catch{return null}}}}var ba={$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 Qu=Xc(Wu());var ch=createRequire(import.meta.url),dh=ch("./jsonata-sync.cjs"),Cn=null;var Yu=/\b(card_data|requires|fetched_sources|computed_values|source_defs)\b/g,lh=/^\s*(card_data|requires|fetched_sources|computed_values|source_defs)(\.|$)/;function fh(e){let t=new Set,r;for(Yu.lastIndex=0;(r=Yu.exec(e))!==null;)t.add(r[1]);return t}function Zu(e){let t=lh.exec(e);return t?t[1]:null}function Xu(e,t,r,n){try{dh(e);}catch(o){let a=o instanceof Error?o.message:String(o);n.push(`${t}: invalid JSONata expression (${a})`);return}let s=fh(e);for(let o of s)r.has(o)||n.push(`${t}: disallowed namespace "${o}" in expression`);}function jo(e,t,r){if(Array.isArray(e)){e.forEach((s,o)=>{jo(s,`${t}/${o}`,r);});return}if(typeof e=="string"){let s=Zu(e);if(!s)return;new Set(["card_data","requires","computed_values"]).has(s)||r.push(`${t}: disallowed namespace "${s}" in view reference`);return}if(!e||typeof e!="object")return;let n=e;for(let[s,o]of Object.entries(n))jo(o,`${t}/${s}`,r);}function ph(){if(Cn)return Cn;let e=new Qu.default({allErrors:true});return ih(e),Cn=e.compile(ba),Cn}function ec(e){let t=ph(),r=t(e),n=(t.errors??[]).map(s=>`${s.instancePath||"/"}: ${s.message??"unknown error"}`);if(e&&typeof e=="object"&&!Array.isArray(e)){let s=e.source_defs;if(Array.isArray(s)){let o=new Set,a=new Set;s.forEach((i,c)=>{if(!i||typeof i!="object"||Array.isArray(i))return;let u=i;typeof u.bindTo=="string"&&u.bindTo&&(o.has(u.bindTo)&&n.push(`/source_defs/${c}/bindTo: bindTo "${u.bindTo}" must be unique across all source_defs`),o.add(u.bindTo)),typeof u.outputFile=="string"&&u.outputFile&&(a.has(u.outputFile)&&n.push(`/source_defs/${c}/outputFile: outputFile "${u.outputFile}" must be unique across all source_defs`),a.add(u.outputFile));});}}return !r||n.length>0?{ok:false,errors:n}:{ok:true,errors:[]}}function tc(e){let t=[];if(!e||typeof e!="object"||Array.isArray(e))return {ok:true,errors:[]};let r=e,n=r.compute;Array.isArray(n)&&n.forEach((u,d)=>{if(!u||typeof u!="object"||Array.isArray(u))return;let l=u.expr;typeof l!="string"||l.trim().length===0||Xu(l,`/compute/${d}/expr`,new Set(["card_data","requires","fetched_sources","computed_values"]),t);});let s=new Set(["card_data","requires","fetched_sources","computed_values"]),o=r.provides;Array.isArray(o)&&o.forEach((u,d)=>{if(!u||typeof u!="object"||Array.isArray(u))return;let l=u.ref;if(typeof l!="string"||l.trim().length===0)return;let h=Zu(l);h===null?t.push(`/provides/${d}/ref: path "${l}" must start with a valid namespace (${[...s].join(", ")})`):s.has(h)||t.push(`/provides/${d}/ref: disallowed namespace "${h}" in path "${l}" (valid: ${[...s].join(", ")})`);});let a=r.view;a&&typeof a=="object"&&!Array.isArray(a)&&jo(a,"/view",t);let i=new Set(["card_data","requires"]),c=r.source_defs;return Array.isArray(c)&&c.forEach((u,d)=>{if(!u||typeof u!="object"||Array.isArray(u))return;let l=u.projections;if(!(!l||typeof l!="object"||Array.isArray(l)))for(let[h,y]of Object.entries(l))typeof y!="string"||y.trim().length===0||Xu(y,`/source_defs/${d}/projections/${h}`,i,t);}),{ok:t.length===0,errors:t}}function No(e){let t=ec(e);if(!t.ok)return t;let r=tc(e);return r.ok?{ok:true,errors:[]}:{ok:false,errors:r.errors}}function rc(e){return String(e).replace(/[^a-zA-Z0-9_-]/g,"_")}function nc(e){let t=e.payload??{};return {id:e.id,role:typeof t.role=="string"?t.role:"system",text:typeof t.text=="string"?t.text:"",files:Array.isArray(t.files)?t.files:[],updated_at:typeof t.updated_at=="string"?t.updated_at:""}}function qo(e,t){let r=s=>`chats/${rc(s)}/processing`,n=s=>`chats/${rc(s)}/config`;return {append(s,o,a,i=[]){return e(s).append({role:o,text:a,files:i,updated_at:new Date().toISOString()}).id},readAll(s){return e(s).readAll().map(nc)},readAfter(s,o){let a=e(s).readAfter(o);return {records:a.entries.map(nc),cursor:a.newCursor}},clear(s){e(s).clear?.();},setProcessing(s,o){o?t.write(r(s),true):t.delete(r(s));},isProcessing(s){return t.read(r(s))===true},getConfig(s){return t.read(n(s))??{}},setConfig(s,o){let a=t.read(n(s))??{};t.write(n(s),{...a,...o});}}}function mh(){let e=globalThis.crypto;return typeof e?.randomUUID=="function"?String(e.randomUUID()):`id-${Date.now()}-${Math.random().toString(36).slice(2)}`}function gh(){let e=new Map,t=new Map;function r(n){return e.has(n)||e.set(n,[]),e.get(n)}return {append(n,s,o,a=[]){let i={id:mh(),role:s,text:o,files:a,updated_at:new Date().toISOString()};return r(n).push(i),i.id},readAll(n){return r(n).slice()},readAfter(n,s){let o=r(n);if(!s)return {records:o.slice(),cursor:o.length>0?o[o.length-1].id:null};let a=o.findIndex(c=>c.id===s),i=a===-1?o.slice():o.slice(a+1);return {records:i,cursor:i.length>0?i[i.length-1].id:s}},clear(n){e.set(n,[]);},setProcessing(n,s){s?t.set(`p:${n}`,true):t.delete(`p:${n}`);},isProcessing(n){return t.get(`p:${n}`)===true},getConfig(n){return t.get(`c:${n}`)??{}},setConfig(n,s){let o=t.get(`c:${n}`)??{};t.set(`c:${n}`,{...o,...s});}}}var pt={RUNNING:"running",COMPLETED:"completed",FAILED:"failed",INACTIVATED:"inactivated"};function Ae(e){return e?Array.isArray(e.provides)?e.provides:[]:[]}function mt(e){return e?Array.isArray(e.requires)?e.requires:[]:[]}function sc(e){return e.tasks??{}}function Fo(e){return e?e.status===pt.FAILED||e.status===pt.INACTIVATED:false}function oc(e,t){return e.refreshStrategy??t?.refreshStrategy??"data-changed"}function ac(e){return e.maxExecutions}function ic(e,t){let r=new Set;for(let[n,s]of Object.entries(t))if(s.status===pt.COMPLETED){let o=e.tasks[n];o&&Ae(o).forEach(i=>r.add(i));}return Array.from(r)}function uc(e,t){let r={};return e.forEach(n=>{let s=t[n];if(!s)return;Ae(s).forEach(a=>{r[a]||(r[a]=[]),r[a].push(n);});}),r}function cc(e,t,r){let n=e.tasks[t]??$n(),s={};if(r){let a=r.tasks[t],i=mt(a);for(let c of i)for(let[u,d]of Object.entries(r.tasks))if(Ae(d).includes(c)){let l=e.tasks[u];l?.lastDataHash&&(s[c]=l.lastDataHash);break}}let o={...n,status:"running",startedAt:new Date().toISOString(),lastUpdated:new Date().toISOString(),progress:0,error:void 0,startConsumedHashes:s};return {...e,tasks:{...e.tasks,[t]:o},lastUpdated:new Date().toISOString()}}function dc(e,t,r,n,s,o){let a=e.tasks[r]??$n(),i=t.tasks[r];if(!i)throw new Error(`Task "${r}" not found in graph`);let c;n&&i.on&&i.on[n]?c=i.on[n]:c=Ae(i);let u=a.startConsumedHashes?{...a.startConsumedHashes}:{...a.lastConsumedHashes};if(!a.startConsumedHashes){let h=i.requires??[];for(let y of h)for(let[f,p]of Object.entries(t.tasks))if(Ae(p).includes(y)){let v=e.tasks[f];v?.lastDataHash&&(u[y]=v.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:u,error:void 0},l=[...new Set([...e.availableOutputs,...c])];return {...e,tasks:{...e.tasks,[r]:d},availableOutputs:l,lastUpdated:new Date().toISOString()}}function lc(e,t,r,n){let s=e.tasks[r]??$n(),o=t.tasks[r];if(o?.retry){let c=s.retryCount+1;if(c<=o.retry.max_attempts){let u={...s,status:"not-started",retryCount:c,lastUpdated:new Date().toISOString(),error:n};return {...e,tasks:{...e.tasks,[r]:u},lastUpdated:new Date().toISOString()}}}let a={...s,status:"failed",failedAt:new Date().toISOString(),lastUpdated:new Date().toISOString(),error:n,executionCount:s.executionCount+1},i=e.availableOutputs;if(o?.on_failure&&o.on_failure.length>0&&(i=[...new Set([...e.availableOutputs,...o.on_failure])]),o?.circuit_breaker&&a.executionCount>=o.circuit_breaker.max_executions){let c=o.circuit_breaker.on_break;i=[...new Set([...i,...c])];}return {...e,tasks:{...e.tasks,[r]:a},availableOutputs:i,lastUpdated:new Date().toISOString()}}function fc(e,t,r,n){let s=e.tasks[t]??$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 {...e,tasks:{...e.tasks,[t]:o},lastUpdated:new Date().toISOString()}}function pc(e,t){let r=e.tasks[t];if(!r)return e;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 {...e,tasks:{...e.tasks,[t]:n},lastUpdated:new Date().toISOString()}}function $n(){return {status:"not-started",executionCount:0,retryCount:0,lastEpoch:0,messages:[],progress:null}}function En(e,t){let r=`live-${Date.now()}`,n={};for(let o of Object.keys(e.tasks))n[o]=gc();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:e.settings.execution_mode??"eligibility-mode",conflictStrategy:e.settings.conflict_strategy??"alphabetical",completionStrategy:e.settings.completion}};return {config:e,state:s}}function hh(e,t){let{config:r,state:n}=e;if("executionId"in t&&t.executionId&&t.executionId!==n.executionId)return e;switch(t.type){case "task-started":return {config:r,state:cc(n,t.taskName,r)};case "task-completed":return {config:r,state:dc(n,r,t.taskName,t.result,t.dataHash,t.data)};case "task-failed":return {config:r,state:lc(n,r,t.taskName,t.error)};case "task-progress":return {config:r,state:fc(n,t.taskName,t.message,t.progress)};case "task-restart":return {config:r,state:pc(n,t.taskName)};case "inject-tokens":return {config:r,state:{...n,availableOutputs:[...new Set([...n.availableOutputs,...t.tokens])],lastUpdated:new Date().toISOString()}};case "agent-action":return {config:r,state:_h(n,t.action)};case "task-upsert":return yh(e,t.taskName,t.taskConfig);case "task-removal":return vh(e,t.taskName);case "node-requires-add":return Sh(e,t.nodeName,t.tokens);case "node-requires-remove":return wh(e,t.nodeName,t.tokens);case "node-provides-add":return kh(e,t.nodeName,t.tokens);case "node-provides-remove":return bh(e,t.nodeName,t.tokens);default:return e}}function mc(e,t){return t.reduce((r,n)=>hh(r,n),e)}function yh(e,t,r){let n=!!e.config.tasks[t];return {config:{...e.config,tasks:{...e.config.tasks,[t]:r}},state:{...e.state,tasks:{...e.state.tasks,[t]:n?e.state.tasks[t]:gc()},lastUpdated:new Date().toISOString()}}}function vh(e,t){if(!e.config.tasks[t])return e;let{[t]:r,...n}=e.config.tasks,{[t]:s,...o}=e.state.tasks;return {config:{...e.config,tasks:n},state:{...e.state,tasks:o,lastUpdated:new Date().toISOString()}}}function Sh(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=mt(n),o=r.filter(a=>!s.includes(a));return o.length===0?e:{config:{...e.config,tasks:{...e.config.tasks,[t]:{...n,requires:[...s,...o]}}},state:e.state}}function wh(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=mt(n),o=s.filter(a=>!r.includes(a));return o.length===s.length?e:{config:{...e.config,tasks:{...e.config.tasks,[t]:{...n,requires:o}}},state:e.state}}function kh(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=Ae(n),o=r.filter(a=>!s.includes(a));return o.length===0?e:{config:{...e.config,tasks:{...e.config.tasks,[t]:{...n,provides:[...s,...o]}}},state:e.state}}function bh(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=Ae(n),o=s.filter(a=>!r.includes(a));return o.length===s.length?e:{config:{...e.config,tasks:{...e.config.tasks,[t]:{...n,provides:o}}},state:e.state}}function Er(e){return {version:1,config:e.config,state:e.state,snapshotAt:new Date().toISOString()}}function xn(e){if(!e||typeof e!="object")throw new Error("Invalid snapshot: expected an object");let t=e;if(!t.config||typeof t.config!="object")throw new Error('Invalid snapshot: missing or invalid "config"');if(!t.state||typeof t.state!="object")throw new Error('Invalid snapshot: missing or invalid "state"');let r=t.config,n=t.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 gc(){return {status:"not-started",executionCount:0,retryCount:0,lastEpoch:0,messages:[],progress:null}}function _h(e,t){let r=new Date().toISOString();switch(t){case "stop":return {...e,status:"stopped",lastUpdated:r};case "pause":return {...e,status:"paused",lastUpdated:r};case "resume":return {...e,status:"running",lastUpdated:r};default:return e}}function xr(e){let{config:t,state:r}=e,n=sc(t);if(Object.keys(n).length===0)return {eligible:[],pending:[],unresolved:[],blocked:[],conflicts:{}};let o=Rh(n),a=ic(t,r.tasks),i=new Set([...a,...r.availableOutputs]),c=[],u=[],d=[],l=[];for(let[y,f]of Object.entries(n)){let p=r.tasks[y],v=oc(f,t.settings),_=v!=="once";if(p?.status===pt.RUNNING||Fo(p))continue;let m=ac(f);if(m!==void 0&&p&&p.executionCount>=m||f.circuit_breaker&&p&&p.executionCount>=f.circuit_breaker.max_executions||!_&&p?.status===pt.COMPLETED)continue;if(_&&p?.status===pt.COMPLETED){let R=mt(f),E=false;switch(v){case "data-changed":{R.length>0&&R.some(P=>{for(let[B,W]of Object.entries(n))if(Ae(W).includes(P)){let Z=r.tasks[B];if(!Z)continue;let le=p.lastConsumedHashes?.[P];return Z.lastDataHash==null?Z.executionCount>p.lastEpoch:Z.lastDataHash!==le}return false})||(E=true);break}case "epoch-changed":{R.length>0&&R.some(P=>{for(let[B,W]of Object.entries(n))if(Ae(W).includes(P)){let Z=r.tasks[B];if(Z&&Z.executionCount>p.lastEpoch)return true}return false})||(E=true);break}case "time-based":{let I=f.refreshInterval??0;if(I<=0){E=true;break}let P=p.completedAt;if(!P){E=true;break}(Date.now()-Date.parse(P))/1e3<I&&(E=true);break}case "manual":E=true;break}if(E)continue}let g=mt(f);if(g.length===0){c.push(y);continue}let w=[],k=[],$=[];for(let R of g){if(i.has(R))continue;let E=o[R]||[];E.length===0?w.push(R):E.every(P=>Fo(r.tasks[P]))?$.push({token:R,failedProducer:E[0]}):k.push(R);}w.length>0?d.push({taskName:y,missingTokens:w}):$.length>0?l.push({taskName:y,failedTokens:$.map(R=>R.token),failedProducers:[...new Set($.map(R=>R.failedProducer))]}):k.length>0?u.push({taskName:y,waitingOn:k}):c.push(y);}let h={};if(c.length>1){let y=uc(c,n);for(let[f,p]of Object.entries(y))p.length>1&&(h[f]=p);}return {eligible:c,pending:u,unresolved:d,blocked:l,conflicts:h}}function Rh(e){let t={};for(let[r,n]of Object.entries(e)){for(let s of Ae(n))t[s]||(t[s]=[]),t[s].push(r);if(n.on)for(let s of Object.values(n.on))for(let o of s)t[o]||(t[o]=[]),t[o].includes(r)||t[o].push(r);if(n.on_failure)for(let s of n.on_failure)t[s]||(t[s]=[]),t[s].includes(r)||t[s].push(r);}return t}var Tr=class{buffer=[];append(t){this.buffer.push(t);}drain(){let t=this.buffer;return this.buffer=[],t}get size(){return this.buffer.length}};function Do(e){let t=Mo(e);return Ch(t)}function Mo(e){if(e==null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return "["+e.map(Mo).join(",")+"]";let t=e;return "{"+Object.keys(t).sort().map(n=>JSON.stringify(n)+":"+Mo(t[n])).join(",")+"}"}function Ch(e){let t=0xcbf29ce484222325n,r=0x100000001b3n,n=0xffffffffffffffffn;for(let s=0;s<e.length;s++)t^=BigInt(e.charCodeAt(s)),t=t*r&n;return t.toString(16).padStart(16,"0")}function $h(e){if(typeof Buffer<"u")return Buffer.from(e,"utf8").toString("base64url");if(typeof btoa=="function"){let t=new TextEncoder().encode(e),r="";for(let n of t)r+=String.fromCharCode(n);return btoa(r).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}throw new Error("No base64 encoder available in this runtime")}function Eh(e){if(typeof Buffer<"u")return Buffer.from(e,"base64url").toString("utf8");if(typeof atob=="function"){let t=e.replace(/-/g,"+").replace(/_/g,"/"),r=t+"=".repeat((4-t.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 hc(e){let t=JSON.stringify({t:e,n:Date.now().toString(36)+Math.random().toString(36).slice(2,6)});return $h(t)}function xh(e){try{let t=JSON.parse(Eh(e));return typeof t?.t=="string"?{taskName:t.t}:null}catch{return null}}function yc(e,t,r){let{handlers:n,onDrain:s}=t,o=new Tr,a="state"in e&&"config"in e?e:En(e),i=false,c=new Set,u=new Map(Object.entries(n)),d=new Tr,l=false,h=false;function y(){if(!i){if(l){h=true;return}l=true;try{do h=!1,f();while(h)}finally{l=false;}}}function f(){let m=d.drain(),g=o.drain(),w=[...m,...g];w.length>0&&(a=mc(a,w));let k=xr(a);w.length>0&&s?.(w,a,k);for(let $ of k.eligible)_($);for(let $ of w)if($.type==="task-progress"){let{taskName:R,update:E}=$;if(!a.config.tasks[R])continue;let P=a.state.tasks[R];if(!P||P.status!=="running")continue;let B=hc(R),W=v(R,B,E).catch(Z=>{i||(d.append({type:"task-failed",taskName:R,error:Z.message??String(Z),timestamp:new Date().toISOString()}),y());}).finally(()=>{c.delete(W);});c.add(W);}}function p(m){let w=a.config.tasks[m].requires??[],k=new Map;for(let[R,E]of Object.entries(a.config.tasks))for(let I of E.provides??[])k.set(I,R);let $={};for(let R of w){let E=k.get(R);E?$[R]=a.state.tasks[E]?.data:$[R]=void 0;}return $}async function v(m,g,w){let k=a.config.tasks[m],$=k.taskHandlers??[],R=p(m);for(let E of $){let I=u.get(E);if(!I)throw new Error(`Handler '${E}' not found in registry (task '${m}')`);let P={nodeId:m,state:R,taskState:a.state.tasks[m],config:k,callbackToken:g,update:w};if(await I(P)==="task-initiate-failure")throw new Error(`Handler '${E}' returned task-initiate-failure (task '${m}')`)}}function _(m){let w=a.config.tasks[m]?.taskHandlers;if(!w||w.length===0)return;d.append({type:"task-started",taskName:m,timestamp:new Date().toISOString()}),y();let k=hc(m),$=v(m,k).catch(R=>{i||(d.append({type:"task-failed",taskName:m,error:R.message??String(R),timestamp:new Date().toISOString()}),y());}).finally(()=>{c.delete($);});c.add($);}return {push(m){i||(m.type==="task-completed"&&m.data&&!m.dataHash&&(m={...m,dataHash:Do(m.data)}),o.append(m),y());},pushAll(m){if(!i){for(let g of m)g.type==="task-completed"&&g.data&&!g.dataHash?o.append({...g,dataHash:Do(g.data)}):o.append(g);y();}},resolveCallback(m,g,w){if(i)return;let k=xh(m);if(!k)return;let{taskName:$}=k;if(a.config.tasks[$]){if(w&&w.length>0)o.append({type:"task-failed",taskName:$,error:w.join("; "),timestamp:new Date().toISOString()});else {let R=g&&Object.keys(g).length>0?Do(g):void 0;o.append({type:"task-completed",taskName:$,data:g,dataHash:R,timestamp:new Date().toISOString()});}y();}},addNode(m,g){i||(o.append({type:"task-upsert",taskName:m,taskConfig:g,timestamp:new Date().toISOString()}),y());},removeNode(m){i||(o.append({type:"task-removal",taskName:m,timestamp:new Date().toISOString()}),y());},addRequires(m,g){i||(o.append({type:"node-requires-add",nodeName:m,tokens:g,timestamp:new Date().toISOString()}),y());},removeRequires(m,g){i||(o.append({type:"node-requires-remove",nodeName:m,tokens:g,timestamp:new Date().toISOString()}),y());},addProvides(m,g){i||(o.append({type:"node-provides-add",nodeName:m,tokens:g,timestamp:new Date().toISOString()}),y());},removeProvides(m,g){i||(o.append({type:"node-provides-remove",nodeName:m,tokens:g,timestamp:new Date().toISOString()}),y());},registerHandler(m,g){u.set(m,g);},unregisterHandler(m){u.delete(m);},retrigger(m){i||a.config.tasks[m]&&(o.append({type:"task-restart",taskName:m,timestamp:new Date().toISOString()}),y());},retriggerAll(m){if(!i){for(let g of m)a.config.tasks[g]&&o.append({type:"task-restart",taskName:g,timestamp:new Date().toISOString()});y();}},snapshot(){return Er(a)},getState(){return a},getSchedule(){return xr(a)},async waitForHandlers(){c.size>0&&await Promise.allSettled([...c]);},async dispose(m){m?.wait&&c.size>0&&await Promise.allSettled([...c]),i=true;}}}var Ah=createRequire(import.meta.url),Tn=Ah("./jsonata-sync.cjs"),wc=Tn;function vc(e,t){if(!t||!e)return;let r=t.split("."),n=e;for(let s=0;s<r.length;s++){if(n==null)return;n=n[r[s]];}return n}function kc(e,t,r){let n=t.split("."),s=e;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 Ih(e,t){if(!e?.compute?.length)return e;e.card_data||(e.card_data={}),e.computed_values={},e._sourcesData=t?.sourcesData??{};let r=e.requires??{},n={card_data:e.card_data,requires:r,expects_data:r,fetched_sources:e._sourcesData,data:e.computed_values,computed_values:e.computed_values};for(let s of e.compute)try{let o=await Tn(s.expr).evaluate(n);kc(e.computed_values,s.bindTo,o),n.computed_values=e.computed_values;}catch{}return e}function Oh(e,t){if(!e?.compute?.length)return {ok:true,node:e};e.card_data||(e.card_data={}),e.computed_values={},e._sourcesData=t?.sourcesData??{};let r=e.requires??{},n={card_data:e.card_data,requires:r,expects_data:r,fetched_sources:e._sourcesData,data:e.computed_values,computed_values:e.computed_values},s=[];for(let o of e.compute)try{let a=wc(o.expr).evaluate(n);kc(e.computed_values,o.bindTo,a),n.computed_values=e.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:e,errors:s}:{ok:true,node:e}}async function Ph(e,t,r){let n={...r??{},card_data:t.card_data??{},requires:t.requires??{},fetched_sources:t._sourcesData??{},computed_values:t.computed_values??{}};return Tn(e).evaluate(n)}function jh(e,t){return t.startsWith("fetched_sources.")?vc(e._sourcesData??{},t.slice(16)):vc(e,t)}var Sc=new Set(["metric","table","editable-table","chart","form","filter","list","notes","todo","alert","narrative","badge","text","markdown","ref","custom","actions"]),Nh=new Set(["id","meta","requires","provides","view","card_data","compute","source_defs"]);function qh(e){let t=[];if(!e||typeof e!="object"||Array.isArray(e))return {ok:false,errors:["Node must be a non-null object"]};let r=e;(typeof r.id!="string"||!r.id)&&t.push("id: required, must be a non-empty string");for(let n of Object.keys(r))Nh.has(n)||t.push(`Unknown top-level key: "${n}"`);if((r.card_data==null||typeof r.card_data!="object"||Array.isArray(r.card_data))&&t.push("card_data: required, must be an object"),r.meta!=null)if(typeof r.meta!="object"||Array.isArray(r.meta))t.push("meta: must be an object");else {let n=r.meta;n.title!=null&&typeof n.title!="string"&&t.push("meta.title: must be a string"),n.tags!=null&&!Array.isArray(n.tags)&&t.push("meta.tags: must be an array");}if(r.requires!=null&&!Array.isArray(r.requires)&&t.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))t.push(`provides[${s}]: must be an object with bindTo and ref`);else {let o=n;(typeof o.bindTo!="string"||!o.bindTo)&&t.push(`provides[${s}]: missing required "bindTo" string`),(typeof o.ref!="string"||!o.ref)&&t.push(`provides[${s}]: missing required "ref" string`);}}):t.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))t.push(`compute[${s}]: must be a compute step object`);else {let o=n;(typeof o.bindTo!="string"||!o.bindTo)&&t.push(`compute[${s}]: missing required "bindTo" property`),(typeof o.expr!="string"||!o.expr)&&t.push(`compute[${s}]: missing required "expr" string (JSONata expression)`);}}):t.push("compute: must be an array of compute steps")),r.source_defs!=null)if(!Array.isArray(r.source_defs))t.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))t.push(`source_defs[${a}]: must be an object`);else {let i=o;typeof i.bindTo!="string"||!i.bindTo?t.push(`source_defs[${a}]: missing required "bindTo" property`):(n.has(i.bindTo)&&t.push(`source_defs[${a}]: bindTo "${i.bindTo}" is not unique across source_defs`),n.add(i.bindTo)),typeof i.outputFile!="string"||!i.outputFile?t.push(`source_defs[${a}]: missing required "outputFile" property`):(s.has(i.outputFile)&&t.push(`source_defs[${a}]: outputFile "${i.outputFile}" is not unique across source_defs`),s.add(i.outputFile)),i.optionalForCompletionGating!=null&&typeof i.optionalForCompletionGating!="boolean"&&t.push(`source_defs[${a}]: optionalForCompletionGating must be a boolean`);}});}if(r.view!=null)if(typeof r.view!="object"||Array.isArray(r.view))t.push("view: must be an object");else {let n=r.view;!Array.isArray(n.elements)||n.elements.length===0?t.push("view.elements: required, must be a non-empty array"):n.elements.forEach((s,o)=>{if(!s||typeof s!="object"){t.push(`view.elements[${o}]: must be an object`);return}!s.kind||typeof s.kind!="string"?t.push(`view.elements[${o}].kind: required, must be a string`):Sc.has(s.kind)||t.push(`view.elements[${o}].kind: unknown kind "${s.kind}". Valid: ${[...Sc].join(", ")}`),s.data!=null&&(typeof s.data!="object"||Array.isArray(s.data))&&t.push(`view.elements[${o}].data: must be an object`);}),n.layout!=null&&(typeof n.layout!="object"||Array.isArray(n.layout))&&t.push("view.layout: must be an object"),n.features!=null&&(typeof n.features!="object"||Array.isArray(n.features))&&t.push("view.features: must be an object");}return {ok:t.length===0,errors:t}}async function Fh(e,t){if(!e||e.length===0)return [];let r={card_data:t.card_data??{},requires:t.requires??{}};return Promise.all(e.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 Dh(e,t){if(!e||e.length===0)return [];let r={card_data:t.card_data??{},requires:t.requires??{}};return e.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]=wc(a).evaluate(r);}catch{s[o]=void 0;}}return {...n,_projections:s}})}var gt={run:Ih,runSync:Oh,eval:Ph,resolve:jh,validate:qh,enrichSources:Fh,enrichSourcesSync:Dh};function Mh(e,t){let r;return /\.m?js$/i.test(e)?r="local-node":/\.py$/i.test(e)?r="local-python":r="local-process",{meta:"task-executor",howToRun:r,whatToRun:ue({kind:"fs-path",value:e}),...t?{extra:t}:{}}}function Lo(e){return JSON.stringify(e)}function Vo(e){let t;try{t=JSON.parse(e);}catch{throw new Error(`parseExecutionRef: invalid JSON \u2014 ${e}`)}if(typeof t!="object"||t===null||typeof t.howToRun!="string"||typeof t.whatToRun!="string")throw new Error(`parseExecutionRef: missing required fields howToRun/whatToRun \u2014 ${e}`);return t}function An(e,t){function r(){return e.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 c={...s},u=c;for(let d=0;d<i.length-1;d++){let l=i[d],h=u[l],y=h&&typeof h=="object"&&!Array.isArray(h)?{...h}:{};u[l]=y,u=y;}return u[i[i.length-1]]=a,c}return {readCard(s){let o=r()[s];return !o||!e.cardExists(o.key)?null:e.readCard(o.key)},readCardKey(s){return r()[s]?.key??null},readAllCards(){let s=[];for(let[o,a]of Object.entries(r())){if(!e.cardExists(a.key))continue;let i=e.readCard(a.key);i?s.push(i):t?.(`[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,c]of Object.entries(o))s[i]!==c.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],c=Object.entries(a).find(([,u])=>u.key===o);return i&&i.key!==o?{ok:false,error:`Card id "${s}" is already mapped to key "${i.key}", cannot remap to "${o}"`}:c&&c[0]!==s?{ok:false,error:`Key "${o}" is already mapped to card id "${c[0]}", cannot remap to "${s}"`}:{ok:true}},writeCard(s,o,a){let i=r(),c=a??i[s]?.key??e.defaultCardKey(s),u=e.writeCard(c,o);i[s]={key:c,checksum:u,updatedAt:new Date().toISOString()},e.writeIndex(i);},patchCard(s,o,a){let i=r(),c=i[s];if(!c||!e.cardExists(c.key))throw new Error(`card "${s}" not found`);let u=e.readCard(c.key);if(!u||typeof u!="object"||Array.isArray(u))throw new Error(`card "${s}" is not patchable`);let d=n(u,o,a),l=e.writeCard(c.key,d);i[s]={key:c.key,checksum:l,updatedAt:new Date().toISOString()},e.writeIndex(i);},removeCard(s){let o=r();o[s]&&(delete o[s],e.writeIndex(o));},readIndex(){return r()}}}function Bo(e,t){return {readSourceData(r,n){let s=e.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=t(s);e.write(`${r}/.staged/${o}/${n}`,a);},commitSourceData(r,n,s){let o=`${r}/.staged/${s}/${n}`,a=e.read(o);return a==null?false:(e.write(`${r}/${n}`,a),e.remove(o),true)},hasSource(r,n){return e.exists(`${r}/${n}`)}}}function $c(e){function t(r){let n=e.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=t(r);return n.length===0?{events:[],newCursor:r}:{events:n.map(s=>s.event),newCursor:n[n.length-1].id}},pendingCount(r){return t(r).length},appendEvent(r){e.appendEntry({id:e.generateId(),event:r});}}}function Ec(e,t){return {appendEntries(r,n){if(!r||n.length===0)return;let s=e.read(r)??[];e.write(r,[...s,...n]);},dispatchEntriesForJournalId(r,n){if(!r)return;let s=e.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{t(o,i);}catch{}}e.delete(r);}}}}var Ar="v1",ht="board/graph",xc="board/lastJournalProcessedId";function bc(e){return `cards/${e}/runtime`}function Tc(e){return {readRuntime(t){return e.read(bc(t))??{_sources:{}}},writeRuntime(t,r){e.write(bc(t),r);}}}function Lh(e,t){let r={...e};for(let n of t.deleteKeys)delete r[n];return {...r,...t.shallowMerge}}function Ac(e){return {readSnapshot(t){return e.readValues(t)},commitSnapshot(t,r){if(r.schemaVersion!==Ar)throw new Error(`Unsupported snapshot schema version: ${r.schemaVersion}`);let n=e.readValues(t);if(n.version!==r.expectedVersion)return {ok:false,reason:"version-mismatch",currentVersion:n.version};let s=Lh(n.values,r);return {ok:true,newVersion:e.writeValues(t,s,r.deleteKeys)}}}}function Go(e){function t(r){let n=e.read(r);return n==null?null:typeof n=="string"?n:JSON.stringify(n)}return {readTaskExecutorRef(){let r=t("task-executor");if(r?.trim())return Vo(r.trim())},writeTaskExecutorRef(r){e.write("task-executor",Lo(r));},readChatHandlerFlow(){return e.read("chat-handler-flow")},writeChatHandlerFlow(r){e.write("chat-handler-flow",r);},readCardStoreRef(){return t("card-store-ref")},writeCardStoreRef(r){e.write("card-store-ref",r);},readOutputsStoreRef(){return t("outputs-store-ref")},writeOutputsStoreRef(r){e.write("outputs-store-ref",r);},readScratchStoreRef(){return t("scratch-store-ref")},writeScratchStoreRef(r){e.write("scratch-store-ref",r);},readArchiveStoreRef(){return t("archive-store-ref")},writeArchiveStoreRef(r){e.write("archive-store-ref",r);}}}function Ic(e){return {writeComputedValues(t,r){e.write(`cards/${t}/computed_values`,r);},readComputedValues(t){return e.read(`cards/${t}/computed_values`)},readAllComputedValues(){let t={};for(let r of e.listKeys("cards/")){let n=r.match(/^cards\/([^/]+)\/computed_values$/);n&&(t[n[1]]=e.read(r));}return t},writeDataObjects(t){for(let[r,n]of Object.entries(t))r&&e.write(`data-objects/${r}`,n);},readDataObject(t){return e.read(`data-objects/${t}`)},readAllDataObjects(){let t={};for(let r of e.listKeys("data-objects/"))t[r.slice(13)]=e.read(r);return t},writeStatusSnapshot(t){e.write("status",t);},readStatusSnapshot(){return e.read("status")}}}function _c(e){return e?{lastRequestedToken:e.lastRequestedToken,lastCompletedToken:e.lastCompletedToken,lastCompletionStatus:e.lastCompletionStatus??(e.lastCompletedToken?"success":"not-started"),queueRequestedToken:e.queueRequestedToken}:{lastCompletionStatus:"not-started"}}function Vh(e){return e?.lastRequestedToken?e.lastCompletedToken!==e.lastRequestedToken:false}function Rc(e,t){return e?.lastRequestedToken?Vh(e)?"in-flight":!e.lastCompletedToken||e.lastCompletedToken<t?"dispatch":"idle":"dispatch"}function Bh(e,t){return {...e,lastCompletedToken:t,lastCompletionStatus:"success"}}function Cc(e,t){return {...e,lastCompletedToken:t,lastCompletionStatus:"failure"}}function In(e,t){let r=t.state.tasks,n=t.config.tasks,s=Object.keys(r),o=xr(t),a={completed:0,failed:0,in_progress:0,pending:0,blocked:0,unresolved:0},i=new Map;for(let f of o.pending)i.set(f.taskName,f.waitingOn);for(let f of o.unresolved)i.set(f.taskName,f.missingTokens);for(let f of o.blocked)i.set(f.taskName,f.failedTokens);let c=new Map;for(let[f,p]of Object.entries(n))for(let v of p.requires??[]){let _=c.get(v)??[];_.push(f),c.set(v,_);}let u=s.sort().map(f=>{let p=r[f],v=n[f]??{requires:[],provides:[]};p.status==="completed"?a.completed+=1:p.status==="failed"?a.failed+=1:p.status==="in-progress"&&(a.in_progress+=1);let _=v.requires??[],m=v.provides??[],g=Object.keys(p.data??{}).sort(),w=_.filter(P=>t.state.availableOutputs.includes(P)),k=_.filter(P=>!t.state.availableOutputs.includes(P)),$=i.get(f)??k,R=new Set;for(let P of m)for(let B of c.get(P)??[])B!==f&&R.add(B);let E=p.failedAt,I=p.error?{message:p.error,code:"TASK_FAILED",at:E,source:"task-runtime"}:void 0;return {name:f,status:p.status,error:I,requires:_,requires_satisfied:w,requires_missing:k,provides_declared:m,provides_runtime:g,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=u.map(f=>({name:f.name,fanOut:f.unblocks.length})).sort((f,p)=>p.fanOut-f.fanOut||f.name.localeCompare(p.name)),l=d.length>0?d[0]:{name:null,fanOut:0},h=new Set;for(let f of Object.values(n))for(let p of f.requires??[])h.add(p);let y=0;for(let[f,p]of Object.entries(n)){let v=(p.requires??[]).length===0,m=(p.provides??[]).some(g=>(c.get(g)??[]).some(w=>w!==f));v&&!m&&(y+=1);}return {schema_version:"v1",meta:{board:{path:e}},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:y,topology:{edge_count:Array.from(h).length,max_fan_out_card:l.name,max_fan_out:l.fanOut}},cards:u}}function Gh(){return new Date().toISOString()}function Oc(e,t,r,n,s,o,a){return async i=>{let c=[],u=r.cardStore.readCard(i.nodeId);if(!u)return "task-initiate-failure";let d=u.id,l=u.card_data??{},h=u.source_defs??[],y=h.filter(D=>D.optionalForCompletionGating!==true),f=r.cardRuntimeStore.readRuntime(d),p=false,v=()=>{p&&(r.cardRuntimeStore.writeRuntime(d,f),p=false);},_=D=>_c(f._sources[D]),m=(D,M)=>{f._sources[D]=_c(M),p=true;},g=i.taskState?.executionCount??0;if(f._lastExecutionCount!==g&&(f._sources={},f._lastExecutionCount=g,p=true),i.update){let D=i.update,M=D.outputFile;if(M){let ne=_(M);if(D.failure){let X=D.rqt??ne.lastRequestedToken??ne.queueRequestedToken;X&&m(M,Cc(ne,X));}else {let X=D.rqt;if(!ne.lastCompletedToken||X>ne.lastCompletedToken){let C=typeof D.deliveryToken=="string"?D.deliveryToken:void 0,S=false;C&&(S=r.fetchedSourcesStore.commitSourceData(d,M,C)),S?m(M,Bh(ne,X)):m(M,Cc(ne,X));}}v();}}let k={};for(let D of h)if(D.outputFile){let M=r.fetchedSourcesStore.readSourceData(d,D.outputFile);M!==null&&(k[D.bindTo]=M);}let $={};for(let[D,M]of Object.entries(i.state??{}))if(M!==null&&typeof M=="object"&&!Array.isArray(M)){let ne=M[D];$[D]=ne!==void 0?ne:M;}else $[D]=M;let R={id:d,card_data:{...l},requires:$,source_defs:h,compute:u.compute};R._sourcesData=k,u.compute&>.runSync(R,{sourcesData:k}),(o??r.outputStore.writeComputedValues.bind(r.outputStore))(d,R.computed_values??{});let E={...u},I=gt.enrichSourcesSync(Array.isArray(u.source_defs)?u.source_defs:void 0,{card_data:u.card_data,requires:$}),P=e.value;E.source_defs=Array.isArray(I)?I.map(D=>({...D,boardDir:typeof D.boardDir=="string"&&D.boardDir?D.boardDir:P})):I;let B=Gh(),W=i.update?void 0:B,Z=y.filter(D=>{let M=D.outputFile;if(typeof M!="string"||!M)return true;let ne=_(M);W&&(ne={...ne,queueRequestedToken:W},m(M,ne));let X=ne.queueRequestedToken??ne.lastRequestedToken??B,C=Rc(ne,X);return C==="in-flight"?false:C==="dispatch"});if(v(),Z.length>0){let D=false,M=B;for(let ne of Z){let X=ne.outputFile;if(typeof X!="string"||!X)continue;let C=_(X),S=C.queueRequestedToken??B;m(X,{...C,lastRequestedToken:S}),M=S,D=true;}return D&&v(),D&&(c.push({taskKind:"source-fetch",payload:{boardRef:ue(e),enrichedCard:E,callbackToken:i.callbackToken,rqt:M}}),r.executionRequestStore.appendEntries(t,c)),"task-initiated"}if(y.some(D=>{let M=D.outputFile;if(typeof M!="string"||!M)return false;let ne=_(M),X=ne.queueRequestedToken??ne.lastRequestedToken??B;return Rc(ne,X)==="in-flight"}))return "task-initiated";let Ie=u.provides??[],be={};for(let{bindTo:D,ref:M}of Ie)be[D]=gt.resolve(R,M);return (a??r.outputStore.writeDataObjects.bind(r.outputStore))(be),h.filter(D=>{if(D.optionalForCompletionGating!==true)return false;let M=_(D.outputFile);return !M.lastRequestedToken||!M.lastCompletedToken?true:M.lastCompletedToken<=M.lastRequestedToken}).length>0&&c.push({taskKind:"source-fetch",payload:{boardRef:ue(e),enrichedCard:E,callbackToken:i.callbackToken,rqt:B}}),n(i.nodeId,be),c.length>0&&r.executionRequestStore.appendEntries(t,c),"task-initiated"}}var On={settings:{completion:"manual",refreshStrategy:"data-changed"},tasks:{}};function Pc(e){return {[ht]:e.graph,[xc]:e.lastDrainedJournalId}}function jc(e){let t=e[ht],r=e[xc];if(!t||typeof t!="object")throw new Error(`State snapshot is missing required key: ${ht}`);return {graph:t,lastDrainedJournalId:typeof r=="string"?r:""}}function Nc(e){let t=e.requires,r=e.provides?.map(n=>n.bindTo)??[];return {requires:t&&t.length>0?t:void 0,provides:r,taskHandlers:["card-handler"],description:e.meta?.title??e.id}}function Q(e){return e!==void 0?{status:"success",data:e}:{status:"success"}}function q(e){return {status:"fail",error:e}}function ee(e){return {status:"error",error:e instanceof Error?e.message:String(e)}}function Kh(e){let t=new TextEncoder().encode(e),r=Array.from(t,n=>String.fromCharCode(n)).join("");return btoa(r).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function Fc(e){let t=e.replace(/-/g,"+").replace(/_/g,"/"),r=t+"=".repeat((4-t.length%4)%4),n=atob(r),s=Uint8Array.from(n,o=>o.charCodeAt(0));return new TextDecoder().decode(s)}function Pn(e){try{let t=JSON.parse(Fc(e));return typeof t?.t=="string"?{taskName:t.t}:null}catch{return null}}function Uh(e){return Kh(JSON.stringify(e))}function qc(e){try{let t=JSON.parse(Fc(e));return typeof t?.cbk=="string"&&typeof t?.cid=="string"&&typeof t?.b=="string"&&typeof t?.d=="string"?t:null}catch{return null}}function ve(){return new Date().toISOString()}function Jh(e,t){let r=t.onWarn??(()=>{}),n=ue(e);function s(C){if(C.length!==0)try{let S=t.publishBoardChangeNotifications?.(C);S&&typeof S.catch=="function"&&S.catch(T=>r(`[board-live-cards-public] publishBoardChangeNotifications failed: ${T instanceof Error?T.message:String(T)}`));}catch(S){r(`[board-live-cards-public] publishBoardChangeNotifications failed: ${S instanceof Error?S.message:String(S)}`);}}function o(){let C=i().readCardStoreRef();if(!C)throw new Error(`Board at ${e.value} has no card store configured. Run: init --base-ref <ref> --store-ref <b64-ref>`);let S=t.kvStorageForRef(C);return {readIndex(){return S.read("_index")},writeIndex(T){S.write("_index",T);},readCard(T){return S.read(T)},writeCard(T,j){return S.write(T,j),t.hashFn(j)},cardExists(T){return S.read(T)!==null},defaultCardKey(T){return T}}}let a={readValues(C){let S=t.kvStorage("state-snapshot"),T=S.listKeys().sort();if(T.length===0)return {version:null,values:{}};let j={};for(let te of T)j[te]=S.read(te);return {version:t.hashFn(j),values:j}},writeValues(C,S,T){let j=t.kvStorage("state-snapshot");for(let te of T)j.delete(te);for(let[te,se]of Object.entries(S))j.write(te,se);return t.hashFn(S)}},i=()=>Go(t.kvStorage("config")),c=()=>Ac(a),u=()=>$c(t.journalAdapter()),d=()=>An(o(),r),l=()=>{let C=i().readOutputsStoreRef();if(!C)throw new Error(`Board at ${e.value} has no outputs store configured. Run: init --outputs-store-ref <b64-ref>`);return Ic(t.kvStorageForRef(C))},h=()=>{let C=i().readArchiveStoreRef();return C?t.archiveFactoryForRef(C):t.archiveFactory()};function y(){return !!c().readSnapshot(e.value).values[ht]}function f(){let C=c().readSnapshot(e.value);if(!C.values[ht])throw new Error(`Board not initialized at ${e.value}`);return jc(C.values)}function p(C,S){let T=c().commitSnapshot(e.value,{schemaVersion:Ar,expectedVersion:S,commitId:t.genId(),committedAt:ve(),deleteKeys:[],shallowMerge:Pc(C)});if(!T.ok)throw new Error(`Snapshot commit failed (version mismatch): expected=${S??"null"} current=${T.currentVersion??"null"}`)}function v(C){u().appendEvent(C);}async function _(){let C=(O,F)=>{let ce=O.payload,nt=(ce?.enrichedCard??{}).id??ce?.cardId??"unknown";v({type:"task-failed",taskName:nt,error:F,timestamp:ve()});},S=Ec(t.kvStorage("execution-requests"),C),T=Tc(t.kvStorage("card-runtime")),j=Bo(t.blobStorage("sources"),O=>t.resolveBlob(O)),te=new Map,se={readRuntime(O){return te.get(O)??T.readRuntime(O)},writeRuntime(O,F){te.set(O,F);}},xe=[],Se=new Map,rt={readSourceData(O,F){let ce=`${O}/${F}`;return Se.has(ce)?Se.get(ce):j.readSourceData(O,F)},ingestSourceDataStaged(O,F,ce,Pt){j.ingestSourceDataStaged(O,F,ce,Pt);},commitSourceData(O,F,ce){let Pt=`${O}/.staged/${ce}/${F}`,Pr=t.blobStorage("sources").read(Pt);if(Pr==null)return false;let jt=`${O}/${F}`,Ho=Pr.trim();try{Se.set(jt,JSON.parse(Ho));}catch{Se.set(jt,Ho);}return xe.push({cardId:O,outputFile:F,deliveryToken:ce}),true},hasSource(O,F){let ce=`${O}/${F}`;return Se.has(ce)?true:j.hasSource(O,F)}},Te={cardStore:d(),cardRuntimeStore:se,fetchedSourcesStore:rt,outputStore:l(),executionRequestStore:S},yt=f(),vt=xn(yt.graph),{events:It,newCursor:Ot}=u().readEntriesAfterCursor(yt.lastDrainedJournalId),St=[],jn=[],Nn=[],Uo=new Map,Bc=(O,F)=>{St.push({type:"task-completed",taskName:O,data:F,timestamp:ve()});try{h().stream("exec-history").append({taskName:O,status:"completed",completedAt:ve()});}catch{}},Jo=(O,F)=>{v({type:"task-failed",taskName:O,error:F,timestamp:ve()});try{h().stream("exec-history").append({taskName:O,status:"failed",error:F,completedAt:ve()});}catch{}},Ir=yc(vt,{handlers:{"card-handler":Oc(e,Ot,Te,Bc,Jo,(O,F)=>{jn.push({cardId:O,values:F});},O=>{Nn.push(O);})}});for(St=It;St.length>0;){let O=St;St=[];for(let F of O)if(F.type==="task-restart"){let ce=Te.cardStore.readCard(F.taskName);ce&&Uo.set(F.taskName,ce);}Ir.pushAll(O),await Ir.waitForHandlers();}let zo=Ir.getState();await Ir.dispose({wait:true});let Gc=c().readSnapshot(e.value).version;p({lastDrainedJournalId:Ot,graph:Er(zo)},Gc);for(let{cardId:O,values:F}of jn)Te.outputStore.writeComputedValues(O,F);for(let O of Nn)Te.outputStore.writeDataObjects(O);for(let[O,F]of te)T.writeRuntime(O,F);for(let{cardId:O,outputFile:F,deliveryToken:ce}of xe)j.commitSourceData(O,F,ce);let Or;try{Or=In(n,zo),Te.outputStore.writeStatusSnapshot(Or);}catch(O){r(`[board-live-cards-public] status publish failed: ${O instanceof Error?O.message:String(O)}`);}let Qt=[];for(let{cardId:O,values:F}of jn)Qt.push({kind:"computed_values",cardId:O,values:F});for(let O of Nn)for(let[F,ce]of Object.entries(O))F&&Qt.push({kind:"data_object",key:F,payload:ce});for(let[O,F]of Uo)Qt.push({kind:"card_refreshed",cardId:O,card:F});Or!==void 0&&Qt.push({kind:"status",status:Or}),s(Qt);let Kc=i().readTaskExecutorRef()??{howToRun:"built-in",whatToRun:ue({kind:"built-in",value:"source-cli-task-executor"})};S.dispatchEntriesForJournalId(Ot,O=>{if(O.taskKind!=="source-fetch"){r(`[process-accumulated-events] unknown taskKind "${O.taskKind}" \u2014 skipping`);return}let F=O.payload,ce=F.enrichedCard?.id??"unknown",Pt=F.enrichedCard?.source_defs??[];for(let nt of Pt){if(!nt.outputFile){r(`[dispatch] source "${nt.bindTo}" has no outputFile \u2014 skipping`);continue}let Pr=Uh({cbk:F.callbackToken,rg:e.value,br:ue(e),cid:ce,b:nt.bindTo,d:nt.outputFile,cs:void 0,rqt:F.rqt});t.dispatchExecution(Kc,{source_def:nt,base_ref:ue(e),callback:{token:Pr,via:t.selfRef}}).catch(jt=>Jo(ce,jt instanceof Error?jt.message:String(jt)));}});}async function m(){try{let C=()=>{let T=f(),{events:j}=u().readEntriesAfterCursor(T.lastDrainedJournalId);j.length<=0||(m(),t.requestProcessAccumulated?.());},S=await Yo(t.lock,_,C);return Q({ran:S!==!1})}catch(C){return ee(C)}}function g(C){try{let S=C.params?.cardStoreRef;if(!S)return q("init requires params.cardStoreRef \u2014 create a card store with card-store-cli and pass its ref here");if(!y()){let Se=En(On);p({lastDrainedJournalId:"",graph:Er(Se)},null);}let T=C.params?.outputsStoreRef;if(!T)return q("init requires params.outputsStoreRef \u2014 pass the outputs store ref here");let j=C.params?.scratchStoreRef,te=C.params?.archiveStoreRef,se=i();se.writeCardStoreRef(S),se.writeOutputsStoreRef(T),j&&se.writeScratchStoreRef(j),te&&se.writeArchiveStoreRef(te);let xe=C.body??{};xe["task-executor-ref"]&&se.writeTaskExecutorRef(xe["task-executor-ref"]),Object.prototype.hasOwnProperty.call(xe,"chat-handler-flow")&&se.writeChatHandlerFlow(xe["chat-handler-flow"]);try{l().writeStatusSnapshot(In(n,xn(f().graph)));}catch{}return Q()}catch(S){return ee(S)}}function w(C){try{let S=l().readStatusSnapshot();if(!S){S=In(n,xn(f().graph));try{l().writeStatusSnapshot(S);}catch{}}return Q(S)}catch(S){return ee(S)}}function k(C){try{let S=C.params?.id;return S?(v({type:"task-removal",taskName:S,timestamp:ve()}),m(),Q()):q("removeCard requires params.id")}catch(S){return ee(S)}}function $(C){try{let S=C.params?.id;return S?(v({type:"task-restart",taskName:S,timestamp:ve()}),m(),Q()):q("retrigger requires params.id")}catch(S){return ee(S)}}async function R(C){return m()}function E(C){try{let S=C.params?.cardId,T=C.params?.all,j=!!C.params?.restart;if(!S&&!T)return q("upsertCard requires --card-id <id> or --all");let te=T?d().readAllCards().map(se=>se.id):[S];for(let se of te)if(!d().readCard(se))return q(`Card "${se}" not found in board at ${e.value}`);for(let se of te){let xe=d().readCard(se),Se=Nc(xe),rt=t.hashFn(Se),Te=t.kvStorage("card-upsert"),yt=Te.read(se),vt=yt?.taskConfigHash!==rt;if(!(!vt&&!j)){if(vt){let It=yt?.blobRef??d().readCardKey(se)??se;v({type:"task-upsert",taskName:se,taskConfig:Se,timestamp:ve()}),Te.write(se,{blobRef:It,taskConfigHash:rt,updatedAt:ve()});}j&&v({type:"task-restart",taskName:se,timestamp:ve()});}}return m(),Q()}catch(S){return ee(S)}}function I(C){try{let S=C.params?.token;if(!S)return q("taskFailed requires params.token");let T=C.params?.error??"unknown error",j=Pn(S);if(!j)return q("Invalid callback token");v({type:"task-failed",taskName:j.taskName,error:T,timestamp:ve()});try{h().stream("exec-history").append({taskName:j.taskName,status:"failed",error:T,completedAt:ve()});}catch{}return m(),Q()}catch(S){return ee(S)}}function P(C){try{let S=C.params?.token;if(!S)return q("taskProgress requires params.token");let j=(C.body??{}).update??{},te=Pn(S);return te?(v({type:"task-progress",taskName:te.taskName,update:j,timestamp:ve()}),m(),Q()):q("Invalid callback token")}catch(S){return ee(S)}}function B(C){try{let S=C.params?.token,T=C.params?.ref;if(!S)return q("sourceDataFetched requires params.token");if(!T)return q("sourceDataFetched requires params.ref");let j=qc(S);if(!j)return q("Invalid source token");let{cbk:te,cid:se,b:xe,d:Se,cs:rt,rqt:Te}=j,yt=Bo(t.blobStorage("sources"),St=>t.resolveBlob(St)),vt=t.genId();yt.ingestSourceDataStaged(se,Se,Ke(T),vt);let It=Pn(te);if(!It)return q("Invalid callback token embedded in source token");let Ot=ve();return v({type:"task-progress",taskName:It.taskName,update:{bindTo:xe,outputFile:Se,fetchedAt:Ot,deliveryToken:vt,sourceChecksum:rt,rqt:Te},timestamp:Ot}),m(),Q()}catch(S){return ee(S)}}function W(C){try{let S=C.params?.token,T=C.params?.reason??"unknown";if(!S)return q("sourceDataFetchFailure requires params.token");let j=qc(S);if(!j)return q("Invalid source token");let{cbk:te,b:se,d:xe,cs:Se,rqt:rt}=j,Te=Pn(te);return Te?(v({type:"task-progress",taskName:Te.taskName,update:{bindTo:se,outputFile:xe,failure:!0,reason:T,sourceChecksum:Se,rqt:rt},timestamp:ve()}),m(),Q()):q("Invalid callback token embedded in source token")}catch(S){return ee(S)}}function Z(C){try{let S=i().readCardStoreRef();return S?Q({storeRef:S}):q(`Board at ${e.value} has no card store configured`)}catch(S){return ee(S)}}function le(C){try{let S=i().readOutputsStoreRef();return S?Q({storeRef:S}):q(`Board at ${e.value} has no outputs store configured`)}catch(S){return ee(S)}}function Ie(C){try{let S=i().readScratchStoreRef();return Q({storeRef:S})}catch(S){return ee(S)}}function be(C){try{let S=i().readArchiveStoreRef();return Q({storeRef:S})}catch(S){return ee(S)}}function We(C){try{let S=C.params?.key;if(!S)return q("getConfig requires params.key");let T=i(),j;switch(S){case "task-executor":j=T.readTaskExecutorRef()??null;break;case "chat-handler-flow":j=T.readChatHandlerFlow()??null;break;case "card-store-ref":j=T.readCardStoreRef();break;case "outputs-store-ref":j=T.readOutputsStoreRef();break;case "scratch-store-ref":j=T.readScratchStoreRef();break;case "archive-store-ref":j=T.readArchiveStoreRef();break;default:return q(`getConfig: unknown key "${S}"`)}return Q({value:j})}catch(S){return ee(S)}}function D(C){try{let S=C.params?.key;if(!S)return q("getOutputsDataObject requires params.key");let T=l().readDataObject(S);return Q(T)}catch(S){return ee(S)}}function M(C){try{return Q(l().readAllDataObjects())}catch(S){return ee(S)}}function ne(C){try{let S=C.params?.key;if(!S)return q("getOutputsComputedValues requires params.key");let T=l().readComputedValues(S);return Q(T)}catch(S){return ee(S)}}function X(C){try{return Q(l().readAllComputedValues())}catch(S){return ee(S)}}return {init:g,status:w,getCardStoreRef:Z,getOutputsStoreRef:le,getScratchStoreRef:Ie,getArchiveStoreRef:be,getConfig:We,getOutputsDataObject:D,getAllOutputsDataObjects:M,getOutputsComputedValues:ne,getAllOutputsComputedValues:X,removeCard:k,retrigger:$,processAccumulatedEvents:R,upsertCard:E,taskFailed:I,taskProgress:P,sourceDataFetched:B,sourceDataFetchFailure:W}}function zh(e,t){let r=()=>Go(t.kvStorage("config"));function n(){let m=r().readCardStoreRef();if(!m)throw new Error(`Board at ${e.value} has no card store configured. Run: init --base-ref <ref> --store-ref <b64-ref>`);let g=t.kvStorageForRef(m);return {readIndex(){return g.read("_index")},writeIndex(w){g.write("_index",w);},readCard(w){return g.read(w)},writeCard(w,k){return g.write(w,k),t.hashFn(k)},cardExists(w){return g.read(w)!==null},defaultCardKey(w){return w}}}let s=()=>An(n(),t.onWarn??(()=>{})),o=()=>{let m=r().readScratchStoreRef();return m?t.scratchStorageForRef(m):t.scratchStorage()};function a(m,g){let w=t.validateSchema(g),k=[],$=r().readTaskExecutorRef();if($&&Array.isArray(g.source_defs))for(let E of g.source_defs){let I=typeof E.bindTo=="string"?E.bindTo:"(unknown)";try{let P;try{P=t.invokeExecutorSync($,"validate-source-def",[],{timeout:t.executorTimeouts?.validationMs??1e4,input:JSON.stringify(E)});}catch(W){let Z=W;if(P=typeof Z?.stdout=="string"?Z.stdout:"",!P.trim()){k.push(`source "${I}": executor validate-source-def failed \u2014 ${W instanceof Error?W.message:String(W)}`);continue}}let B=JSON.parse(P.trim());if(!B.ok&&Array.isArray(B.errors))for(let W of B.errors)k.push(`source "${I}": ${W}`);}catch(P){k.push(`source "${I}": executor validate-source-def failed \u2014 ${P instanceof Error?P.message:String(P)}`);}}let R=[...w.errors,...k];return Q({cardId:m,isValid:R.length===0,issues:R})}function i(m,g,w){let k=r().readTaskExecutorRef();if(!k)return q("No task-executor registered for this board");let $=typeof m.bindTo=="string"?m.bindTo:"source",R=o(),E={...m,boardDir:e.value,_projections:g},I=R.create(JSON.stringify(E,null,2),`probe-in-${$}`,".json"),P=R.getUniqueKey(`probe-out-${$}`,".json"),B=R.getUniqueKey(`probe-err-${$}`,".txt"),W=ue(R.keyRef(I)),Z=ue(R.keyRef(P)),le=ue(R.keyRef(B)),Ie=null;try{if(t.invokeExecutorSync(k,"run-source-fetch",["--in-ref",W,"--out-ref",Z,"--err-ref",le],{timeout:m.timeout??t.executorTimeouts?.probeMs??6e4}),Ie=R.read(P),Ie===null)return q("Executor produced no output file")}catch(be){let We=R.read(B)?.trim()??(be instanceof Error?be.message:String(be));return q(`Probe failed: ${We}`)}finally{try{R.remove(I);}catch{}try{R.remove(B);}catch{}}if(w){let be=Ke(w);t.absoluteBlob.write(be.value,Ie);}try{R.remove(P);}catch{}return Q({bindTo:$,resultSizeBytes:Ie.length})}function c(m){try{let g=m.params?.cardId,w=m.params?.all;if(!g&&!w)return q("validateCard requires --card-id <id> or --all");let k=w?s().readAllCards().map(R=>R.id):[g],$=[];for(let R of k){let E=s().readCard(R);if(!E){$.push({cardId:R,isValid:!1,issues:[`Card "${R}" not found`]});continue}let I=a(R,E);if(I.status!=="success")return I;$.push(I.data);}return Q($)}catch(g){return ee(g)}}function u(m){try{if(!m.body||typeof m.body!="object"||Array.isArray(m.body))return q("validateCardPreflight requires card JSON object in body");let g=m.body,w=g["card-content"]??g,k=typeof w.id=="string"?w.id:"(unknown)",$=a(k,w),R=r().readTaskExecutorRef();if(R)try{let E=t.invokeExecutorSync(R,"validate-card-preflight",[],{timeout:t.executorTimeouts?.validationMs??1e4,input:JSON.stringify(w)}),I=JSON.parse(E.trim());if(!I.ok&&Array.isArray(I.errors)&&I.errors.length>0){let P=[...$.status==="success"?$.data.issues:[],...I.errors];return Q({cardId:k,isValid:!1,issues:P})}}catch{}return $}catch(g){return ee(g)}}function d(m){try{let g=m.params?.cardId,w=m.params?.sourceIdx,k=m.params?.outRef;if(!g)return q("probeSource requires params.cardId");if(w===void 0)return q("probeSource requires params.sourceIdx");let R=(m.body??{})["mock-projections"]??{},E=s().readCard(g);if(!E)return q(`Card "${g}" not found`);let I=E.source_defs??[];return w<0||w>=I.length?q(`sourceIdx ${w} out of range (card has ${I.length} source(s))`):i(I[w],R,k)}catch(g){return ee(g)}}function l(m){try{let g=m.params?.outRef,w=m.body;if(!w)return q('probeTmpSource requires body with "source-def" and "mock-projections"');let k=w["source-def"],$=w["mock-projections"]??{};return k?i(k,$,g):q('probeTmpSource body requires "source-def"')}catch(g){return ee(g)}}function h(m){try{let g=m.params?.sourceIdx,w=m.params?.outRef;if(g===void 0)return q("probeSourcePreflight requires params.sourceIdx");if(!m.body||typeof m.body!="object"||Array.isArray(m.body))return q("probeSourcePreflight requires card JSON object in body");let k=m.body,$=k["card-content"]??k,R=k["mock-projections"]??{},E=$.source_defs??[];if(g<0||g>=E.length)return q(`sourceIdx ${g} out of range (card has ${E.length} source(s))`);let I=E[g],P=r().readTaskExecutorRef();if(P){let B=typeof I.bindTo=="string"?I.bindTo:"source";try{let W={...I,_projections:R},Z=t.invokeExecutorSync(P,"probe-source-preflight",[],{timeout:I.timeout??t.executorTimeouts?.preflightMs??6e4,input:JSON.stringify(W)}),le=JSON.parse(Z.trim());return le.ok?Q({bindTo:B,reachable:le.reachable,latencyMs:le.latencyMs,note:le.note}):q(le.error??"Preflight probe failed")}catch{}}return i(I,R,w)}catch(g){return ee(g)}}function y(m){try{let g=r().readTaskExecutorRef();if(!g)return q("No task-executor registered for this board");let w=t.invokeExecutorSync(g,"describe-capabilities",[],{timeout:t.executorTimeouts?.describeMs??1e4});return Q(JSON.parse(w.trim()))}catch(g){return ee(g)}}function f(m){try{let g=m.body;if(!g||!Array.isArray(g.ops))return q("updatesInCardStore requires body.ops array");let w=g.ops,k=s();for(let $ of w){let R=$.op,E=$.id;if(!E)return q('op is missing "id"');if(R==="update"){let I=$["card-content"];if(!I)return q(`update op for "${E}" is missing "card-content"`);k.writeCard(E,I);}else return q(`Unknown op type: "${R??"(none)"}"`)}return Q()}catch(g){return ee(g)}}function p(m){try{let g=m.body;if(!g||!Array.isArray(g.ids))return q("readFromCardStore requires body.ids array");let w=g.ids,k=s(),$=w.map(R=>({id:R,"card-content":k.readCard(R)}));return Q({cards:$})}catch(g){return ee(g)}}function v(m){try{if(!m.body||typeof m.body!="object"||Array.isArray(m.body))return q("evalCardCompute requires a JSON object in body");let g=m.body,w=g["card-content"]??g,k=typeof w.id=="string"?w.id:"(unknown)",$=g["mock-fetched-sources"]??{},R=g["mock-requires"]??{},E=w.compute;if(!E||!Array.isArray(E)||E.length===0)return Q({cardId:k,ok:!0,computed_values:{},errors:[]});let I={id:k,card_data:w.card_data??{},requires:R,source_defs:w.source_defs,compute:E},P=gt.runSync(I,{sourcesData:$}),B=P.node.computed_values??{},W=P.errors??[];return Q({cardId:k,ok:W.length===0,computed_values:B,errors:W})}catch(g){return ee(g)}}function _(m){try{if(!m.body||typeof m.body!="object"||Array.isArray(m.body))return q("simulateCardCycle requires a JSON object in body");let g=m.body,w=g["card-content"]??g,k=typeof w.id=="string"?w.id:"(unknown)",$=g["mock-fetched-sources"]??{},R=g["mock-requires"]??{},E=a(k,w),I=E.status==="success"?{isValid:E.data.isValid,issues:E.data.issues}:{isValid:!1,issues:[E.status==="fail"?E.error:"internal error"]},P=w.source_defs??[],B=w.card_data??{},W=[],Z=[];if(P.length>0){W=gt.enrichSourcesSync(P,{card_data:B,requires:R});for(let X of W){let C=X.projections,S=X._projections;if(C&&S){for(let T of Object.keys(C))if(S[T]===void 0){let j=typeof X.bindTo=="string"?X.bindTo:"(unknown)";Z.push({bindTo:j,key:T,error:`Projection "${T}" resolved to undefined`});}}}}let le=[],Ie=g["task-executor-ref"],be=(Ie?.howToRun&&Ie?.whatToRun?Ie:void 0)??r().readTaskExecutorRef();for(let X=0;X<W.length;X++){let C=W[X],S=typeof C.bindTo=="string"?C.bindTo:`source_${X}`;if(!be){le.push({bindTo:S,skipped:!0,error:"No task executor configured"});continue}try{let T={...C},j=t.invokeExecutorSync(be,"probe-source-preflight",[],{timeout:C.timeout??t.executorTimeouts?.preflightMs??6e4,input:JSON.stringify(T)}),te=JSON.parse(j.trim());le.push({bindTo:S,reachable:te.reachable,latencyMs:te.latencyMs,error:te.ok?void 0:te.error});}catch{le.push({bindTo:S,skipped:!0,error:"Executor does not support probe-source-preflight"});}}let We=w.compute,D={},M=[];if(We&&Array.isArray(We)&&We.length>0){let X={id:k,card_data:B,requires:R,source_defs:w.source_defs,compute:We},C=gt.runSync(X,{sourcesData:$});D=C.node.computed_values??{},M=C.errors??[];}let ne=I.isValid&&Z.length===0&&M.length===0&&le.every(X=>X.reachable!==!1);return Q({cardId:k,ok:ne,validation:I,source_probes:le,projection_errors:Z,computed_values:D,compute_errors:M})}catch(g){return ee(g)}}return {validateCard:c,validateCardPreflight:u,probeSource:d,probeTmpSource:l,probeSourcePreflight:h,evalCardCompute:v,simulateCardCycle:_,describeTaskExecutorCapabilities:y,updatesInCardStore:f,readFromCardStore:p}}function Hh(e){function t(s){return {status:"success",data:s}}function r(s){return {status:"fail",error:s}}function n(s){return {status:"error",error:s instanceof Error?s.message:String(s)}}return {get(s){try{let o=s.params?.id;if(o){let a=e.readCard(o);return a?t({cards:[a]}):r(`card "${o}" not found`)}return t({cards:e.readAllCards()})}catch(o){return n(o)}},set(s){try{let o=s.body;if(o==null)return r("set requires a body (card object or array of cards)");let a=Array.isArray(o)?o:[o];for(let i of a){if(typeof i.id!="string")return r("each card must have a string `id` field");e.writeCard(i.id,i);}return t({count:a.length})}catch(o){return n(o)}},del(s){try{let o=s.body?.ids??[],a=s.params?.id,i=a?[...o,a]:o;if(i.length===0)return r("del requires body.ids (string[]) or params.id");for(let c of i)e.removeCard(c);return t({count:i.length})}catch(o){return n(o)}},patch(s){try{let o=s.params?.id,a=s.params?.path;if(!o)return r("patch requires params.id");if(!a)return r("patch requires params.path");let i=s.body,c=i&&Object.prototype.hasOwnProperty.call(i,"value")?i.value:s.body;return e.patchCard(o,a,c),t({count:1})}catch(o){return n(o)}}}}function Wh(e){function t(s){return {status:"success",data:s}}function r(s){return {status:"fail",error:s}}function n(s){return {status:"error",error:s instanceof Error?s.message:String(s)}}return {list(s){try{let o=s.params?.prefix??"";return t({artifacts:e.list(o)})}catch(o){return n(o)}},head(s){try{let o=s.params?.key;return o?t({artifact:e.head(o)}):r("head requires params.key")}catch(o){return n(o)}},put(s){try{let o=s.params?.key,a=s.params?.contentType;if(!o)return r("put requires params.key");let i=s.body;if(typeof i=="string")return t({artifact:e.putText(o,i,a)});if(i&&typeof i=="object"&&typeof i.text=="string")return t({artifact:e.putText(o,i.text,a)});if(i&&typeof i=="object"&&Array.isArray(i.bytes)){let c=i.bytes,u=new Uint8Array(c.map(d=>Math.max(0,Math.min(255,Number(d)||0))));return t({artifact:e.putBytes(o,u,a)})}return r("put requires body as string, {text}, or {bytes:number[]}")}catch(o){return n(o)}},get(s){try{let o=s.params?.key,a=s.params?.as??"base64";if(!o)return r("get requires params.key");let i=e.head(o);if(!i)return r(`artifact "${o}" not found`);if(a==="text"){let u=e.getText(o);return u===null?r(`artifact "${o}" not found`):t({key:o,contentType:i.contentType,size:i.size,text:u})}let c=e.getBytes(o);return c===null?r(`artifact "${o}" not found`):t({key:o,contentType:i.contentType,size:i.size,bytes:[...c]})}catch(o){return n(o)}},del(s){try{let o=s.params?.key;return o?(e.remove(o),t({ok:!0})):r("del requires params.key")}catch(o){return n(o)}}}}function Dc(){return new Date().toISOString()}function Mc(e){return new TextEncoder().encode(e).byteLength}function Yh(e){return e?{key:e.key,size:e.size,updatedAt:e.updatedAt,contentType:e.contentType}:null}function Xh(e){let t=String(e||"").match(/^(\d+)[-_]/);return t?parseInt(t[1],10):0}function Qh(e){let t=String(e||"").trim();if(!t)return "upload.bin";let r=Math.max(t.lastIndexOf("/"),t.lastIndexOf("\\"));return (r>=0?t.slice(r+1):t)||"upload.bin"}function Zh(e){return String(e||"").toLowerCase().replace(/\s+/g,"_").replace(/[^a-z0-9_-]/g,"_").replace(/_+/g,"_").replace(/^_+|_+$/g,"")||"file"}function ey(e){if(!e||e===".")return "";let t=String(e).replace(/^\./,"").toLowerCase().replace(/[^a-z0-9]/g,"");return t?`.${t}`:""}function ty(e){let t=Qh(e),r=t.lastIndexOf(".");return r<=0||r===t.length-1?{stem:t,ext:""}:{stem:t.slice(0,r),ext:t.slice(r)}}function ry(e){let t=e.lastIndexOf("/");return t>=0?e.slice(t+1):e}function Ko(e){function t(r){let n=e.stat?Yh(e.stat(r)):null;if(n)return n;if(!e.exists(r))return null;let s=e.read(r);return s===null?{key:r}:{key:r,size:Mc(s)}}return {exists(r){return e.exists(r)},putText(r,n,s="text/plain; charset=utf-8"){e.write(r,n);let o=t(r)??{key:r};return o.contentType=s,o.updatedAt=o.updatedAt??Dc(),o.size=o.size??Mc(n),o},putBytes(r,n,s="application/octet-stream"){if(e.writeBytes)e.writeBytes(r,n);else {let a=JSON.stringify({__kind:"bytes-array",data:[...n]});e.write(r,a);}let o=t(r)??{key:r};return o.contentType=s,o.updatedAt=o.updatedAt??Dc(),o.size=o.size??n.byteLength,o},getText(r){let n=e.read(r);if(n===null){if(!e.readBytes)return null;let s=e.readBytes(r);return s===null?null:Buffer.from(s).toString("utf-8")}try{let s=JSON.parse(n);if(s&&s.__kind==="bytes-array"&&Array.isArray(s.data))return new TextDecoder("utf-8").decode(new Uint8Array(s.data))}catch{}return n},getBytes(r){if(e.readBytes){let s=e.readBytes(r);if(s!==null)return s}let n=e.read(r);if(n===null)return null;try{let s=JSON.parse(n);if(s&&s.__kind==="bytes-array"&&Array.isArray(s.data))return new Uint8Array(s.data)}catch{}return new TextEncoder().encode(n)},head:t,list(r=""){return e.listKeys(r).map(n=>t(n)??{key:n}).sort((n,s)=>n.key.localeCompare(s.key))},remove(r){e.remove(r);}}}function ny(e){function t(s,o){let a=0,i=[];Array.isArray(o)&&i.push(...o);for(let c of e.list(`${s}/`))i.push(ry(c.key));for(let c of i){let u=Xh(c);Number.isFinite(u)&&u>a&&(a=u);}return a+1}function r(s,o,a){let i=Number(a?.maxLen||32),{stem:c,ext:u}=ty(s),d=ey(u),l=Zh(c),h=`${String(o).padStart(3,"0")}-`,y=d,f=i-h.length-y.length;f<1&&(y="",f=i-h.length);let p=l.slice(0,Math.max(1,f)),v=`${h}${p}${y}`;return v.length>i&&(v=v.slice(0,i).replace(/\.$/,"")),v}function n(s,o,a){let i=t(s,a?.seedNames),c=r(o,i,{maxLen:a?.maxLen});for(;e.exists(`${s}/${c}`);)i+=1,c=r(o,i,{maxLen:a?.maxLen});return c}return {nextSerial:t,buildStoredName:r,allocateStoredName:n}}function sy(){function e(s,o){if(!Array.isArray(s))return [];let a=[];for(let i of s){if(!i||typeof i!="object")continue;let c=i;typeof c.stored_name=="string"&&a.push({name:typeof c.name=="string"?c.name:c.stored_name,stored_name:c.stored_name,size:typeof c.size=="number"&&Number.isFinite(c.size)?c.size:null,mime_type:typeof c.mime_type=="string"?c.mime_type:null,path:typeof c.path=="string"?c.path:null,uploaded_at:typeof c.uploaded_at=="string"?c.uploaded_at:o||null});}return a}function t(s){return !s||typeof s!="object"?[]:e(s.files,void 0)}function r(s,o){let a=t(s);if(o.length===0)return s.files=a,a;let i=new Set(a.map(c=>c.stored_name));for(let c of o)i.has(c.stored_name)||(a.push(c),i.add(c.stored_name));return s.files=a,a}function n(s,o,a){let i=t(s);if(!Number.isInteger(o)||o<0||o>=i.length)return {ok:false,reason:"index_out_of_range"};let c=i[o];return !c||!c.stored_name?{ok:false,reason:"missing_stored_name"}:a&&a!==c.stored_name?{ok:false,reason:"stale_reference"}:{ok:true,file:c}}return {read:t,normalizeIncoming:e,merge:r,resolve:n}}function YS(){return {async invoke(e,t){if(e.howToRun!=="local-node")return {dispatched:false,error:`createNodeSpawnInvocationAdapter: unsupported howToRun "${e.howToRun}"`};let r="";try{let o=e.whatToRun;r=Me(o);}catch{r="";}if(!r)return {dispatched:false,error:"createNodeSpawnInvocationAdapter: could not resolve executable path from whatToRun"};let n={...t},s=Buffer.from(JSON.stringify(n)).toString("base64");try{return spawn(process.execPath,[r,"--boardId",String(t.boardId??""),"--cardId",String(t.cardId??""),"--extraEncJson",s],{stdio:"ignore",windowsHide:!0}).unref(),{dispatched:!0}}catch(o){return {dispatched:false,error:o instanceof Error?o.message:String(o)}}},async describe(e){if(e.howToRun!=="local-node")return null;let t="";try{let r=e.whatToRun;t=Me(r);}catch{t="";}if(!t)return null;try{let r=spawnSync(process.execPath,[t,"describe"],{timeout:5e3,encoding:"utf-8",windowsHide:!0});return r.status!==0?null:JSON.parse(String(r.stdout).trim())}catch{return null}}}}var iy=".board.lock";function Lc(e,t){if(!e||!t)return false;let r=String(e).replace(/[\\/]+$/,"").split(/[\\/]+/).filter(Boolean);return r.length>0&&r[r.length-1]===t}function uy(e,t){return typeof e=="string"?{cliDir:e,opts:t}:{cliDir:void 0,opts:e}}function cy(e,t){return typeof e=="string"?{cliDir:e,opts:t}:{cliDir:void 0,opts:e}}function Vc(e){if(e)return e;let t=ra(import.meta.url),r=[t,_e(t,"..","cli","node"),_e(t,"..","..","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 ${t}`)}function dy(e,t,r){let{cliDir:n,opts:s}=uy(t,r),o=Vc(n),a=e.value,c={meta:"board-live-cards",howToRun:"local-node",whatToRun:(s?.suppressSpawn?"":Ln(o))?ue({kind:"yaml-flow-cli",value:"board-live-cards-cli.js"}):"",...s?.notifyChannel?{extra:{notifyChannel:s.notifyChannel}}:{}};return {kvStorage:u=>Gr(_e(a,`.${u}`)),blobStorage:u=>u?qt(_e(a,u)):qt(a),scratchStorage:()=>Vr(_e(a,".tmp")),scratchStorageForRef:u=>Vr(Ke(u).value),archiveFactory:()=>Br(_e(a,"archive")),archiveFactoryForRef:u=>Br(Ke(u).value),journalAdapter:()=>wa(a),lock:ka(_e(a,iy)),selfRef:c,async dispatchExecution(u,d){if(s?.suppressSpawn)return {dispatched:false};try{let l=d.source_def?.bindTo??Fn().slice(0,8),h=Vr(_e(a,".tmp")),y=h.create(JSON.stringify(d,null,2),`exec-in-${l}`,".json"),f=h.getUniqueKey(`exec-out-${l}`,".json"),p=h.getUniqueKey(`exec-err-${l}`,".txt"),v=ue(h.keyRef(y)),_=ue(h.keyRef(f)),m=ue(h.keyRef(p));return ha(u,{subcommand:"run-source-fetch",inRef:v,outRef:_,errRef:m},o),{dispatched:!0}}catch(l){let h=l instanceof Error?l.message:String(l);try{let y=Br(_e(a,"archive")),f=new Date().toISOString().replace(/[:.]/g,"-"),p=d.source_def?.bindTo??"unknown";y.blob("exec-failures").write(`${f}-${p}.json`,JSON.stringify({error:h,args:d,ref:u,at:new Date().toISOString()},null,2));}catch{}return {dispatched:false,error:h}}},resolveBlob(u){let d=ea(u.value)?zn().read(u.value):qt(a).read(u.value);if(d===null)throw new Error(`resolveBlob: blob not found: ::${u.kind}::${u.value}`);return d},hashFn:Sa,genId:()=>ta(`${Date.now()}-${Math.random()}`).slice(0,32),kvStorageForRef:u=>Gr(Ke(u).value),requestProcessAccumulated(){s?.suppressSpawn||oa(o,e,s?.notifyChannel);},publishBoardChangeNotifications(u){if(!s?.notifyChannel||u.length===0)return;let d=u.map(l=>({id:Fn(),ts:new Date().toISOString(),boardRef:ue(e),notification:l}));aa(s.notifyChannel,d,s.onWarn);},onWarn:s?.onWarn}}function XS(e,t,r){let{cliDir:n,opts:s}=cy(t,r),o=Vc(n),a=dy(e,o,s),i=Fr();return {...a,invokeExecutorSync(c,u,d,l){let{command:h,baseArgs:y}=Dr(c,o),f=c.extra?["--extra",Buffer.from(JSON.stringify(c.extra)).toString("base64")]:[];return i.executeSync(h,[...y,u,...d,...f],{timeout:l?.timeout??3e4,encoding:"utf-8",input:l?.input})},validateSchema(c){let u=No(c);return {ok:u.errors.length===0,errors:u.errors}},absoluteBlob:zn()}}function QS(e,t={}){let r=t.chatsSubdir??"chats",n=t.kvSubdir??".kv",s=n?[n,"chat"]:["chat"],o=r&&!Lc(e,r)?_e(e,r):e,a=Gr(_e(e,...s));return qo(i=>{let u=`${String(i).replace(/[^a-zA-Z0-9_-]/g,"_")}.jsonl`,d=_e(o,u);return Hn(d)},a)}function ZS(e,t={}){let r=t.filesSubdir??"files",n=r&&!Lc(e,r)?_e(e,r):e;return Ko(qt(n))}function ew(e){try{let t=JSON.parse(Buffer.from(e,"base64url").toString());return typeof t.br=="string"?t.br:null}catch{return null}}
|
|
19
|
+
export{ht as BOARD_GRAPH_KEY,On as EMPTY_CONFIG,Ar as SNAPSHOT_SCHEMA_VERSION_V1,Dr as buildLocalBaseSpec,Ko as createArtifactsStore,Wh as createArtifactsStorePublic,zh as createBoardLiveCardsNonCorePublic,Jh as createBoardLiveCardsPublic,sy as createCardFileMetadataStore,An as createCardStore,Hh as createCardStorePublic,qo as createChatStorage,bd as createExecutionRefInvoker,ny as createFileArtifactsStore,QS as createFsBoardChatStorage,ZS as createFsBoardFileArtifactsStore,XS as createFsBoardNonCorePlatformAdapter,dy as createFsBoardPlatformAdapter,gh as createInMemoryChatStorage,YS as createNodeSpawnInvocationAdapter,ew as decodeBoardRefFromToken,Bn as evaluateArgsMassaging,Mh as executionRefFromScriptPath,ga as invokeExecutionRef,Gn as invokeExecutionRefSync,_d as invokeRefSync,Vo as parseExecutionRef,Ke as parseRef,Me as resolveWhatToRunValue,da as resolveYamlFlowCliPath,Lo as serializeExecutionRef,ue as serializeRef};//# sourceMappingURL=fs-board-adapter.js.map
|
|
16
20
|
//# sourceMappingURL=fs-board-adapter.js.map
|