yaml-flow 8.4.7 → 8.4.9
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 -6
- package/browser/live-cards.js +7 -7
- package/cli/browser-api/board-live-cards-browser-adapter.d.ts +1 -1
- package/cli/node/board-live-cards-cli.js +13 -13
- package/cli/node/chat-store-cli.js +3 -3
- package/cli/node/fs-board-adapter.d.ts +3 -3
- package/cli/node/fs-board-adapter.js +13 -13
- package/cli/{types-BkJvnXVD.d.ts → types-BbQ75HLf.d.ts} +3 -1
- package/examples/board/demo-shell-with-server.html +2 -2
- package/examples/board/doc.html +2 -2
- package/examples/board/server/board-worker/source_def_flows.json +2 -1
- package/examples/board/server/board-worker/task-executor.js +88 -2
- package/examples/board-local/demo-shell-localstorage.html +3 -3
- package/lib/{artifacts-store-lib-454TAuov.d.ts → artifacts-store-lib-CXgRA5J7.d.ts} +1 -1
- package/lib/{artifacts-store-lib-zsGFbBV8.d.cts → artifacts-store-lib-WdoKNAF0.d.cts} +1 -1
- package/lib/artifacts-store-public.d.cts +2 -2
- package/lib/artifacts-store-public.d.ts +2 -2
- package/lib/board-live-cards-node.cjs +13 -13
- package/lib/board-live-cards-node.d.cts +6 -6
- package/lib/board-live-cards-node.d.ts +6 -6
- package/lib/board-live-cards-node.js +13 -13
- package/lib/{board-live-cards-public-Crjm8KWn.d.ts → board-live-cards-public-C81ZEkF-.d.ts} +3 -1
- package/lib/{board-live-cards-public-CU8VVw3v.d.cts → board-live-cards-public-wbWRD1nO.d.cts} +3 -1
- package/lib/board-live-cards-public.cjs +2 -2
- package/lib/board-live-cards-public.d.cts +1 -1
- package/lib/board-live-cards-public.d.ts +1 -1
- package/lib/board-live-cards-public.js +2 -2
- package/lib/board-live-cards-server-runtime.cjs +3 -3
- package/lib/board-live-cards-server-runtime.d.cts +3 -3
- package/lib/board-live-cards-server-runtime.d.ts +3 -3
- package/lib/board-live-cards-server-runtime.js +3 -3
- package/lib/card-store-public.d.cts +1 -1
- package/lib/card-store-public.d.ts +1 -1
- package/lib/chat-store-public.d.cts +1 -1
- package/lib/chat-store-public.d.ts +1 -1
- package/lib/server-runtime/index.cjs +3 -3
- package/lib/server-runtime/index.d.cts +4 -4
- package/lib/server-runtime/index.d.ts +4 -4
- package/lib/server-runtime/index.js +3 -3
- package/lib/{types-DX8wXuZ0.d.cts → types-D5E1YmeB.d.cts} +2 -2
- package/lib/{types-BC8ZnA6i.d.ts → types-D_WD7RYH.d.ts} +2 -2
- package/package.json +1 -1
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
import {spawnSync,spawn,execFile,execFileSync}from'child_process';import*as b from'fs';import {existsSync}from'fs';import*as Dn from'os';import*as J from'path';import {dirname,resolve}from'path';import*as ta from'net';import {fileURLToPath}from'url';import {createHash,randomUUID}from'crypto';import {createRequire}from'module';import {lockSync}from'proper-lockfile';import ch from'ajv-formats';var zc=Object.create;var Xo=Object.defineProperty;var Hc=Object.getOwnPropertyDescriptor;var Wc=Object.getOwnPropertyNames;var Yc=Object.getPrototypeOf,Xc=Object.prototype.hasOwnProperty;var x=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Qc=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of Wc(t))!Xc.call(e,s)&&s!==r&&Xo(e,s,{get:()=>t[s],enumerable:!(n=Hc(t,s))||n.enumerable});return e};var Zc=(e,t,r)=>(r=e!=null?zc(Yc(e)):{},Qc(Xo(r,"default",{value:e,enumerable:true}),e));var nr=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 tr=class{};Y._CodeOrName=tr;Y.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var bt=class extends tr{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=bt;var je=class extends tr{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 bt&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Y._Code=je;Y.nil=new je("");function Ca(e,...t){let r=[e[0]],n=0;for(;n<t.length;)Qn(r,t[n]),r.push(e[++n]);return new je(r)}Y._=Ca;var Xn=new je("+");function $a(e,...t){let r=[rr(e[0])],n=0;for(;n<t.length;)r.push(Xn),Qn(r,t[n]),r.push(Xn,rr(e[++n]));return qd(r),new je(r)}Y.str=$a;function Qn(e,t){t instanceof je?e.push(...t._items):t instanceof bt?e.push(t):e.push(Md(t));}Y.addCodeArg=Qn;function qd(e){let t=1;for(;t<e.length-1;){if(e[t]===Xn){let r=Fd(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+";}t++;}}function Fd(e,t){if(t==='""')return e;if(e==='""')return t;if(typeof e=="string")return t instanceof bt||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 bt))return `"${e}${t.slice(1)}`}function Dd(e,t){return t.emptyStr()?e:e.emptyStr()?t:$a`${e}${t}`}Y.strConcat=Dd;function Md(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:rr(Array.isArray(e)?e.join(","):e)}function Ld(e){return new je(rr(e))}Y.stringify=Ld;function rr(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}Y.safeStringify=rr;function Vd(e){return typeof e=="string"&&Y.IDENTIFIER.test(e)?new je(`.${e}`):Ca`[${e}]`}Y.getProperty=Vd;function Bd(e){if(typeof e=="string"&&Y.IDENTIFIER.test(e))return new je(`${e}`);throw new Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}Y.getEsmExportName=Bd;function Gd(e){return new je(e.toString())}Y.regexpCode=Gd;});var ts=x($e=>{Object.defineProperty($e,"__esModule",{value:true});$e.ValueScope=$e.ValueScopeName=$e.Scope=$e.varKinds=$e.UsedValueState=void 0;var Ce=nr(),Zn=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value;}},Jr;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed";})(Jr||($e.UsedValueState=Jr={}));$e.varKinds={const:new Ce.Name("const"),let:new Ce.Name("let"),var:new Ce.Name("var")};var zr=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r;}toName(t){return t instanceof Ce.Name?t:this.name(t)}name(t){return new Ce.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return `${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};$e.Scope=zr;var Hr=class extends Ce.Name{constructor(t,r){super(r),this.prefix=t;}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0, Ce._)`.${new Ce.Name(r)}[${n}]`;}};$e.ValueScopeName=Hr;var Kd=(0, Ce._)`\n`,es=class extends zr{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?Kd:Ce.nil};}get(){return this._scope}name(t){return new Hr(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, Ce._)`${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=Ce.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,Jr.Started);let d=r(u);if(d){let l=this.opts.es5?$e.varKinds.var:$e.varKinds.const;o=(0, Ce._)`${o}${l} ${u} = ${d};${this.opts._n}`;}else if(d=s?.(u))o=(0, Ce._)`${o}${d}${this.opts._n}`;else throw new Zn(u);c.set(u,Jr.Completed);});}return o}};$e.ValueScope=es;});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=nr(),Ve=ts(),it=nr();Object.defineProperty(V,"_",{enumerable:true,get:function(){return it._}});Object.defineProperty(V,"str",{enumerable:true,get:function(){return it.str}});Object.defineProperty(V,"strConcat",{enumerable:true,get:function(){return it.strConcat}});Object.defineProperty(V,"nil",{enumerable:true,get:function(){return it.nil}});Object.defineProperty(V,"getProperty",{enumerable:true,get:function(){return it.getProperty}});Object.defineProperty(V,"stringify",{enumerable:true,get:function(){return it.stringify}});Object.defineProperty(V,"regexpCode",{enumerable:true,get:function(){return it.regexpCode}});Object.defineProperty(V,"Name",{enumerable:true,get:function(){return it.Name}});var Qr=ts();Object.defineProperty(V,"Scope",{enumerable:true,get:function(){return Qr.Scope}});Object.defineProperty(V,"ValueScope",{enumerable:true,get:function(){return Qr.ValueScope}});Object.defineProperty(V,"ValueScopeName",{enumerable:true,get:function(){return Qr.ValueScopeName}});Object.defineProperty(V,"varKinds",{enumerable:true,get:function(){return Qr.varKinds}});V.operators={GT:new 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 Qe=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},rs=class extends Qe{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n;}render({es5:t,_n:r}){let n=t?Ve.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=Mt(this.rhs,t,r)),this}get names(){return this.rhs instanceof U._CodeOrName?this.rhs.names:{}}},Wr=class extends Qe{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=Mt(this.rhs,t,r),this}get names(){let t=this.lhs instanceof U.Name?{}:{...this.lhs.names};return Xr(t,this.rhs)}},ns=class extends Wr{constructor(t,r,n,s){super(t,n,s),this.op=r;}render({_n:t}){return `${this.lhs} ${this.op}= ${this.rhs};`+t}},ss=class extends Qe{constructor(t){super(),this.label=t,this.names={};}render({_n:t}){return `${this.label}:`+t}},os=class extends Qe{constructor(t){super(),this.label=t,this.names={};}render({_n:t}){return `break${this.label?` ${this.label}`:""};`+t}},as=class extends Qe{constructor(t){super(),this.error=t;}render({_n:t}){return `throw ${this.error};`+t}get names(){return this.error.names}},is=class extends Qe{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=Mt(this.code,t,r),this}get names(){return this.code instanceof U._CodeOrName?this.code.names:{}}},sr=class extends Qe{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)||(Ud(t,o.names),n.splice(s,1));}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>Ct(t,r.names),{})}},Ze=class extends sr{render(t){return "{"+t._n+super.render(t)+"}"+t._n}},us=class extends sr{},Dt=class extends Ze{};Dt.kind="else";var _t=class e extends Ze{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 Dt(n):n;}if(r)return t===false?r instanceof e?r:r.nodes:this.nodes.length?this:new e(Ea(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=Mt(this.condition,t,r),this}get names(){let t=super.names;return Xr(t,this.condition),this.else&&Ct(t,this.else.names),t}};_t.kind="if";var Rt=class extends Ze{};Rt.kind="for";var cs=class extends Rt{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=Mt(this.iteration,t,r),this}get names(){return Ct(super.names,this.iteration.names)}},ds=class extends Rt{constructor(t,r,n,s){super(),this.varKind=t,this.name=r,this.from=n,this.to=s;}render(t){let r=t.es5?Ve.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=Xr(super.names,this.from);return Xr(t,this.to)}},Yr=class extends Rt{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=Mt(this.iterable,t,r),this}get names(){return Ct(super.names,this.iterable.names)}},or=class extends Ze{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)}};or.kind="func";var ar=class extends sr{render(t){return "return "+super.render(t)}};ar.kind="return";var ls=class extends Ze{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&&Ct(t,this.catch.names),this.finally&&Ct(t,this.finally.names),t}},ir=class extends Ze{constructor(t){super(),this.error=t;}render(t){return `catch(${this.error})`+super.render(t)}};ir.kind="catch";var ur=class extends Ze{render(t){return "finally"+super.render(t)}};ur.kind="finally";var fs=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
2
|
-
`:""},this._extScope=t,this._scope=new Ve.Scope({parent:t}),this._nodes=[new us];}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 rs(t,o,n)),o}const(t,r,n){return this._def(Ve.varKinds.const,t,r,n)}let(t,r,n){return this._def(Ve.varKinds.let,t,r,n)}var(t,r,n){return this._def(Ve.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new Wr(t,r,n))}add(t,r){return this._leafNode(new ns(t,V.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==U.nil&&this._leafNode(new is(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 _t(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 _t(t))}else(){return this._elseNode(new Dt)}endIf(){return this._endBlockNode(_t,Dt)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new cs(t),r)}forRange(t,r,n,s,o=this.opts.es5?Ve.varKinds.var:Ve.varKinds.let){let a=this._scope.toName(t);return this._for(new ds(o,a,r,n),()=>s(a))}forOf(t,r,n,s=Ve.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 Yr("of",s,o,r),()=>n(o))}forIn(t,r,n,s=this.opts.es5?Ve.varKinds.var:Ve.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 Yr("in",s,o,r),()=>n(o))}endFor(){return this._endBlockNode(Rt)}label(t){return this._leafNode(new ss(t))}break(t){return this._leafNode(new os(t))}return(t){let r=new ar;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(ar)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new ls;if(this._blockNode(s),this.code(t),r){let o=this.name("e");this._currNode=s.catch=new ir(o),r(o);}return n&&(this._currNode=s.finally=new ur,this.code(n)),this._endBlockNode(ir,ur)}throw(t){return this._leafNode(new as(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 or(t,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(or)}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 _t))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=fs;function Ct(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function Xr(e,t){return t instanceof U._CodeOrName?Ct(e,t.names):e}function Mt(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 Ud(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0);}function Ea(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0, U._)`!${ps(e)}`}V.not=Ea;var Jd=xa(V.operators.AND);function zd(...e){return e.reduce(Jd)}V.and=zd;var Hd=xa(V.operators.OR);function Wd(...e){return e.reduce(Hd)}V.or=Wd;function xa(e){return (t,r)=>t===U.nil?r:r===U.nil?t:(0, U._)`${ps(t)} ${e} ${ps(r)}`}function ps(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 se=G(),Yd=nr();function Xd(e){let t={};for(let r of e)t[r]=true;return t}K.toHash=Xd;function Qd(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?true:(Ia(e,t),!Pa(t,e.self.RULES.all))}K.alwaysValidSchema=Qd;function Ia(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]||Na(e,`unknown keyword: "${o}"`);}K.checkUnknownRules=Ia;function Pa(e,t){if(typeof e=="boolean")return !e;for(let r in e)if(t[r])return true;return false}K.schemaHasRules=Pa;function Zd(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=Zd;function el({topSchemaRef:e,schemaPath:t},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return (0, se._)`${r}`}return (0, se._)`${e}${t}${(0, se.getProperty)(n)}`}K.schemaRefOrVal=el;function tl(e){return Oa(decodeURIComponent(e))}K.unescapeFragment=tl;function rl(e){return encodeURIComponent(gs(e))}K.escapeFragment=rl;function gs(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}K.escapeJsonPointer=gs;function Oa(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}K.unescapeJsonPointer=Oa;function nl(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e);}K.eachItem=nl;function Ta({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return (s,o,a,i)=>{let c=a===void 0?o:a instanceof se.Name?(o instanceof se.Name?e(s,o,a):t(s,o,a),a):o instanceof se.Name?(t(s,a,o),o):r(o,a);return i===se.Name&&!(c instanceof se.Name)?n(s,c):c}}K.mergeEvaluated={props:Ta({mergeNames:(e,t,r)=>e.if((0, se._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0, se._)`${t} === true`,()=>e.assign(r,true),()=>e.assign(r,(0, se._)`${r} || {}`).code((0, se._)`Object.assign(${r}, ${t})`));}),mergeToName:(e,t,r)=>e.if((0, se._)`${r} !== true`,()=>{t===true?e.assign(r,true):(e.assign(r,(0, se._)`${r} || {}`),hs(e,r,t));}),mergeValues:(e,t)=>e===true?true:{...e,...t},resultToName:ja}),items:Ta({mergeNames:(e,t,r)=>e.if((0, se._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0, se._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0, se._)`${r} !== true`,()=>e.assign(r,t===true?true:(0, se._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===true?true:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function ja(e,t){if(t===true)return e.var("props",true);let r=e.var("props",(0, se._)`{}`);return t!==void 0&&hs(e,r,t),r}K.evaluatedPropsToName=ja;function hs(e,t,r){Object.keys(r).forEach(n=>e.assign((0, se._)`${t}${(0, se.getProperty)(n)}`,true));}K.setEvaluated=hs;var Aa={};function sl(e,t){return e.scopeValue("func",{ref:t,code:Aa[t.code]||(Aa[t.code]=new Yd._Code(t.code))})}K.useFunc=sl;var ms;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str";})(ms||(K.Type=ms={}));function ol(e,t,r){if(e instanceof se.Name){let n=t===ms.Num;return r?n?(0, se._)`"[" + ${e} + "]"`:(0, se._)`"['" + ${e} + "']"`:n?(0, se._)`"/" + ${e}`:(0, se._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0, se.getProperty)(e).toString():"/"+gs(e)}K.getErrorPath=ol;function Na(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=Na;});var et=x(ys=>{Object.defineProperty(ys,"__esModule",{value:true});var he=G(),al={data:new he.Name("data"),valCxt:new he.Name("valCxt"),instancePath:new he.Name("instancePath"),parentData:new he.Name("parentData"),parentDataProperty:new he.Name("parentDataProperty"),rootData:new he.Name("rootData"),dynamicAnchors:new he.Name("dynamicAnchors"),vErrors:new he.Name("vErrors"),errors:new he.Name("errors"),this:new he.Name("this"),self:new he.Name("self"),scope:new he.Name("scope"),json:new he.Name("json"),jsonPos:new he.Name("jsonPos"),jsonLen:new he.Name("jsonLen"),jsonPart:new he.Name("jsonPart")};ys.default=al;});var cr=x(ye=>{Object.defineProperty(ye,"__esModule",{value:true});ye.extendErrors=ye.resetErrorsCount=ye.reportExtraError=ye.reportError=ye.keyword$DataError=ye.keywordError=void 0;var H=G(),Zr=z(),we=et();ye.keywordError={message:({keyword:e})=>(0, H.str)`must pass "${e}" keyword validation`};ye.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 il(e,t=ye.keywordError,r,n){let{it:s}=e,{gen:o,compositeRule:a,allErrors:i}=s,c=Da(e,t,r);n??(a||i)?qa(o,c):Fa(s,(0, H._)`[${c}]`);}ye.reportError=il;function ul(e,t=ye.keywordError,r){let{it:n}=e,{gen:s,compositeRule:o,allErrors:a}=n,i=Da(e,t,r);qa(s,i),o||a||Fa(n,we.default.vErrors);}ye.reportExtraError=ul;function cl(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)));}ye.resetErrorsCount=cl;function dl({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));});}ye.extendErrors=dl;function qa(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 Fa(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 $t={keyword:new H.Name("keyword"),schemaPath:new H.Name("schemaPath"),params:new H.Name("params"),propertyName:new H.Name("propertyName"),message:new H.Name("message"),schema:new H.Name("schema"),parentSchema:new H.Name("parentSchema")};function Da(e,t,r){let{createErrors:n}=e.it;return n===false?(0, H._)`{}`:ll(e,t,r)}function ll(e,t,r={}){let{gen:n,it:s}=e,o=[fl(s,r),pl(e,r)];return ml(e,t,o),n.object(...o)}function fl({errorPath:e},{instancePath:t}){let r=t?(0, H.str)`${e}${(0, Zr.getErrorPath)(t,Zr.Type.Str)}`:e;return [we.default.instancePath,(0, H.strConcat)(we.default.instancePath,r)]}function pl({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)}`),[$t.schemaPath,s]}function ml(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([$t.keyword,s],[$t.params,typeof t=="function"?t(e):t||(0, H._)`{}`]),c.messages&&n.push([$t.message,typeof r=="function"?r(e):r]),c.verbose&&n.push([$t.schema,a],[$t.parentSchema,(0, H._)`${d}${l}`],[we.default.data,o]),u&&n.push([$t.propertyName,u]);}});var La=x(Lt=>{Object.defineProperty(Lt,"__esModule",{value:true});Lt.boolOrEmptySchema=Lt.topBoolOrEmptySchema=void 0;var gl=cr(),hl=G(),yl=et(),vl={message:"boolean schema is false"};function Sl(e){let{gen:t,schema:r,validateName:n}=e;r===false?Ma(e,false):typeof r=="object"&&r.$async===true?t.return(yl.default.data):(t.assign((0, hl._)`${n}.errors`,null),t.return(true));}Lt.topBoolOrEmptySchema=Sl;function kl(e,t){let{gen:r,schema:n}=e;n===false?(r.var(t,false),Ma(e)):r.var(t,true);}Lt.boolOrEmptySchema=kl;function Ma(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, gl.reportError)(s,vl,void 0,t);}});var vs=x(Vt=>{Object.defineProperty(Vt,"__esModule",{value:true});Vt.getRules=Vt.isJSONType=void 0;var wl=["string","number","integer","boolean","null","object","array"],bl=new Set(wl);function _l(e){return typeof e=="string"&&bl.has(e)}Vt.isJSONType=_l;function Rl(){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:{}}}Vt.getRules=Rl;});var Ss=x(ut=>{Object.defineProperty(ut,"__esModule",{value:true});ut.shouldUseRule=ut.shouldUseGroup=ut.schemaHasRulesForType=void 0;function Cl({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==true&&Va(e,n)}ut.schemaHasRulesForType=Cl;function Va(e,t){return t.rules.some(r=>Ba(e,r))}ut.shouldUseGroup=Va;function Ba(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))}ut.shouldUseRule=Ba;});var dr=x(ve=>{Object.defineProperty(ve,"__esModule",{value:true});ve.reportTypeError=ve.checkDataTypes=ve.checkDataType=ve.coerceAndCheckDataType=ve.getJSONTypes=ve.getSchemaTypes=ve.DataType=void 0;var $l=vs(),El=Ss(),xl=cr(),L=G(),Ga=z(),Bt;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong";})(Bt||(ve.DataType=Bt={}));function Tl(e){let t=Ka(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}ve.getSchemaTypes=Tl;function Ka(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every($l.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}ve.getJSONTypes=Ka;function Al(e,t){let{gen:r,data:n,opts:s}=e,o=Il(t,s.coerceTypes),a=t.length>0&&!(o.length===0&&t.length===1&&(0, El.schemaHasRulesForType)(e,t[0]));if(a){let i=ws(t,n,s.strictNumbers,Bt.Wrong);r.if(i,()=>{o.length?Pl(e,t,o):bs(e);});}return a}ve.coerceAndCheckDataType=Al;var Ua=new Set(["string","number","integer","boolean","null"]);function Il(e,t){return t?e.filter(r=>Ua.has(r)||t==="array"&&r==="array"):[]}function Pl(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(ws(t,s,o.strictNumbers),()=>n.assign(i,s))),n.if((0, L._)`${i} !== undefined`);for(let u of r)(Ua.has(u)||u==="array"&&o.coerceTypes==="array")&&c(u);n.else(),bs(e),n.endIf(),n.if((0, L._)`${i} !== undefined`,()=>{n.assign(s,i),Ol(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
|
-
|| (${a} == "string" && ${s} && ${s} == +${s})`).assign(i,(0,
|
|
4
|
-
|| (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(i,(0,
|
|
5
|
-
|| ${a} === "boolean" || ${s} === null`).assign(i,(0, L._)`[${s}]`);}}}function Ol({gen:e,parentData:t,parentDataProperty:r},n){e.if((0, L._)`${t} !== undefined`,()=>e.assign((0, L._)`${t}[${r}]`,n));}function ks(e,t,r,n=Bt.Correct){let s=n===Bt.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===Bt.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)}}ve.checkDataType=ks;function ws(e,t,r,n){if(e.length===1)return ks(e[0],t,r,n);let s,o=(0, Ga.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,ks(a,t,r,n));return s}ve.checkDataTypes=ws;var jl={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0, L._)`{type: ${e}}`:(0, L._)`{type: ${t}}`};function bs(e){let t=Nl(e);(0, xl.reportError)(t,jl);}ve.reportTypeError=bs;function Nl(e){let{gen:t,data:r,schema:n}=e,s=(0, Ga.schemaRefOrVal)(e,n,"type");return {gen:t,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:e}}});var za=x(en=>{Object.defineProperty(en,"__esModule",{value:true});en.assignDefaults=void 0;var Gt=G(),ql=z();function Fl(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let s in r)Ja(e,s,r[s].default);else t==="array"&&Array.isArray(n)&&n.forEach((s,o)=>Ja(e,o,s.default));}en.assignDefaults=Fl;function Ja(e,t,r){let{gen:n,compositeRule:s,data:o,opts:a}=e;if(r===void 0)return;let i=(0, Gt._)`${o}${(0, Gt.getProperty)(t)}`;if(s){(0, ql.checkStrictMode)(e,`default is ignored for: ${i}`);return}let c=(0, Gt._)`${i} === undefined`;a.useDefaults==="empty"&&(c=(0, Gt._)`${c} || ${i} === null || ${i} === ""`),n.if(c,(0, Gt._)`${i} = ${(0, Gt.stringify)(r)}`);}});var Ne=x(te=>{Object.defineProperty(te,"__esModule",{value:true});te.validateUnion=te.validateArray=te.usePattern=te.callValidateCode=te.schemaProperties=te.allSchemaProperties=te.noPropertyInData=te.propertyInData=te.isOwnProperty=te.hasPropFunc=te.reportMissingProp=te.checkMissingProp=te.checkReportMissingProp=void 0;var ae=G(),_s=z(),ct=et(),Dl=z();function Ml(e,t){let{gen:r,data:n,it:s}=e;r.if(Cs(r,n,t,s.opts.ownProperties),()=>{e.setParams({missingProperty:(0, ae._)`${t}`},true),e.error();});}te.checkReportMissingProp=Ml;function Ll({gen:e,data:t,it:{opts:r}},n,s){return (0, ae.or)(...n.map(o=>(0, ae.and)(Cs(e,t,o,r.ownProperties),(0, ae._)`${s} = ${o}`)))}te.checkMissingProp=Ll;function Vl(e,t){e.setParams({missingProperty:t},true),e.error();}te.reportMissingProp=Vl;function Ha(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0, ae._)`Object.prototype.hasOwnProperty`})}te.hasPropFunc=Ha;function Rs(e,t,r){return (0, ae._)`${Ha(e)}.call(${t}, ${r})`}te.isOwnProperty=Rs;function Bl(e,t,r,n){let s=(0, ae._)`${t}${(0, ae.getProperty)(r)} !== undefined`;return n?(0, ae._)`${s} && ${Rs(e,t,r)}`:s}te.propertyInData=Bl;function Cs(e,t,r,n){let s=(0, ae._)`${t}${(0, ae.getProperty)(r)} === undefined`;return n?(0, ae.or)(s,(0, ae.not)(Rs(e,t,r))):s}te.noPropertyInData=Cs;function Wa(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}te.allSchemaProperties=Wa;function Gl(e,t){return Wa(t).filter(r=>!(0, _s.alwaysValidSchema)(e,t[r]))}te.schemaProperties=Gl;function Kl({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=[[ct.default.instancePath,(0, ae.strConcat)(ct.default.instancePath,o)],[ct.default.parentData,a.parentData],[ct.default.parentDataProperty,a.parentDataProperty],[ct.default.rootData,ct.default.rootData]];a.opts.dynamicRef&&l.push([ct.default.dynamicAnchors,ct.default.dynamicAnchors]);let h=(0, ae._)`${d}, ${r.object(...l)}`;return c!==ae.nil?(0, ae._)`${i}.call(${c}, ${h})`:(0, ae._)`${i}(${h})`}te.callValidateCode=Kl;var Ul=(0, ae._)`new RegExp`;function Jl({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"?Ul:(0, Dl.useFunc)(e,s)}(${r}, ${n})`})}te.usePattern=Jl;function zl(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:_s.Type.Num},o),t.if((0, ae.not)(o),i);});}}te.validateArray=zl;function Hl(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, _s.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));}te.validateUnion=Hl;});var Qa=x(Je=>{Object.defineProperty(Je,"__esModule",{value:true});Je.validateKeywordUsage=Je.validSchemaType=Je.funcKeywordCode=Je.macroKeywordCode=void 0;var be=G(),Et=et(),Wl=Ne(),Yl=cr();function Xl(e,t){let{gen:r,keyword:n,schema:s,parentSchema:o,it:a}=e,i=t.macro.call(a.self,s,o,a),c=Xa(r,n,i);a.opts.validateSchema!==false&&a.self.validateSchema(i,true);let u=r.name("valid");e.subschema({schema:i,schemaPath:be.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:true},u),e.pass(u,()=>e.error(true));}Je.macroKeywordCode=Xl;function Ql(e,t){var r;let{gen:n,keyword:s,schema:o,parentSchema:a,$data:i,it:c}=e;ef(c,t);let u=!i&&t.compile?t.compile.call(c.self,o,a,c):t.validate,d=Xa(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&&Ya(e),v(()=>e.error());else {let _=t.async?y():f();t.modifying&&Ya(e),v(()=>Zl(e,_));}}function y(){let _=n.let("ruleErrs",null);return n.try(()=>p((0, be._)`await `),g=>n.assign(l,false).if((0, be._)`${g} instanceof ${c.ValidationError}`,()=>n.assign(_,(0, be._)`${g}.errors`),()=>n.throw(g))),_}function f(){let _=(0, be._)`${d}.errors`;return n.assign(_,null),p(be.nil),_}function p(_=t.async?(0, be._)`await `:be.nil){let g=c.opts.passContext?Et.default.this:Et.default.self,m=!("compile"in t&&!i||t.schema===false);n.assign(l,(0, be._)`${_}${(0, Wl.callValidateCode)(e,d,g,m)}`,t.modifying);}function v(_){var g;n.if((0, be.not)((g=t.valid)!==null&&g!==void 0?g:l),_);}}Je.funcKeywordCode=Ql;function Ya(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0, be._)`${n.parentData}[${n.parentDataProperty}]`));}function Zl(e,t){let{gen:r}=e;r.if((0, be._)`Array.isArray(${t})`,()=>{r.assign(Et.default.vErrors,(0, be._)`${Et.default.vErrors} === null ? ${t} : ${Et.default.vErrors}.concat(${t})`).assign(Et.default.errors,(0, be._)`${Et.default.vErrors}.length`),(0, Yl.extendErrors)(e);},()=>e.error());}function ef({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function Xa(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, be.stringify)(r)})}function tf(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")}Je.validSchemaType=tf;function rf({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)}}Je.validateKeywordUsage=rf;});var ei=x(dt=>{Object.defineProperty(dt,"__esModule",{value:true});dt.extendSubschemaMode=dt.extendSubschemaData=dt.getSubschema=void 0;var ze=G(),Za=z();function nf(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, ze._)`${e.schemaPath}${(0, ze.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:i[r],schemaPath:(0, ze._)`${e.schemaPath}${(0, ze.getProperty)(t)}${(0, ze.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0, Za.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')}dt.getSubschema=nf;function sf(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, ze._)`${t.data}${(0, ze.getProperty)(r)}`,true);c(h),e.errorPath=(0, ze.str)`${u}${(0, Za.getErrorPath)(r,n,l.jsPropertySyntax)}`,e.parentDataProperty=(0, ze._)`${r}`,e.dataPathArr=[...d,e.parentDataProperty];}if(s!==void 0){let u=s instanceof ze.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];}}dt.extendSubschemaData=sf;function of(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;}dt.extendSubschemaMode=of;});var $s=x((sv,ti)=>{ti.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 ni=x((ov,ri)=>{var lt=ri.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(){};tn(t,n,s,e,"",e);};lt.keywords={additionalItems:true,items:true,contains:true,additionalProperties:true,propertyNames:true,not:true,if:true,then:true,else:true};lt.arrayKeywords={items:true,allOf:true,anyOf:true,oneOf:true};lt.propsKeywords={$defs:true,definitions:true,properties:true,patternProperties:true,dependencies:true};lt.skipKeywords={default:true,enum:true,const:true,required:true,maximum:true,minimum:true,exclusiveMaximum:true,exclusiveMinimum:true,multipleOf:true,maxLength:true,minLength:true,pattern:true,format:true,maxItems:true,minItems:true,uniqueItems:true,maxProperties:true,minProperties:true};function tn(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 lt.arrayKeywords)for(var h=0;h<l.length;h++)tn(e,t,r,l[h],s+"/"+d+"/"+h,o,s,d,n,h);}else if(d in lt.propsKeywords){if(l&&typeof l=="object")for(var y in l)tn(e,t,r,l[y],s+"/"+d+"/"+af(y),o,s,d,n,y);}else (d in lt.keywords||e.allKeys&&!(d in lt.skipKeywords))&&tn(e,t,r,l,s+"/"+d,o,s,d,n);}r(n,s,o,a,i,c,u);}}function af(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var lr=x(Ee=>{Object.defineProperty(Ee,"__esModule",{value:true});Ee.getSchemaRefs=Ee.resolveUrl=Ee.normalizeId=Ee._getFullPath=Ee.getFullPath=Ee.inlineRef=void 0;var uf=z(),cf=$s(),df=ni(),lf=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function ff(e,t=true){return typeof e=="boolean"?true:t===true?!Es(e):t?si(e)<=t:false}Ee.inlineRef=ff;var pf=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Es(e){for(let t in e){if(pf.has(t))return true;let r=e[t];if(Array.isArray(r)&&r.some(Es)||typeof r=="object"&&Es(r))return true}return false}function si(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!lf.has(r)&&(typeof e[r]=="object"&&(0, uf.eachItem)(e[r],n=>t+=si(n)),t===1/0))return 1/0}return t}function oi(e,t="",r){r!==false&&(t=Kt(t));let n=e.parse(t);return ai(e,n)}Ee.getFullPath=oi;function ai(e,t){return e.serialize(t).split("#")[0]+"#"}Ee._getFullPath=ai;var mf=/#\/?$/;function Kt(e){return e?e.replace(mf,""):""}Ee.normalizeId=Kt;function gf(e,t,r){return r=Kt(r),e.resolve(t,r)}Ee.resolveUrl=gf;var hf=/^[a-z_][-a-z0-9._]*$/i;function yf(e,t){if(typeof e=="boolean")return {};let{schemaId:r,uriResolver:n}=this.opts,s=Kt(e[r]||t),o={"":s},a=oi(n,s,false),i={},c=new Set;return df(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])),g.call(this,l.$anchor),g.call(this,l.$dynamicAnchor),o[h]=v;function _(m){let k=this.opts.uriResolver.resolve;if(m=Kt(v?k(v,m):m),c.has(m))throw d(m);c.add(m);let w=this.refs[m];return typeof w=="string"&&(w=this.refs[w]),typeof w=="object"?u(l,w.schema,m):m!==Kt(p)&&(m[0]==="#"?(u(l,i[m],m),i[m]=l):this.refs[m]=p),m}function g(m){if(typeof m=="string"){if(!hf.test(m))throw new Error(`invalid anchor "${m}"`);_.call(this,`#${m}`);}}}),i;function u(l,h,y){if(h!==void 0&&!cf(l,h))throw d(y)}function d(l){return new Error(`reference "${l}" resolves to more than one schema`)}}Ee.getSchemaRefs=yf;});var mr=x(ft=>{Object.defineProperty(ft,"__esModule",{value:true});ft.getData=ft.KeywordCxt=ft.validateFunctionCode=void 0;var li=La(),ii=dr(),Ts=Ss(),rn=dr(),vf=za(),pr=Qa(),xs=ei(),A=G(),N=et(),Sf=lr(),tt=z(),fr=cr();function kf(e){if(mi(e)&&(gi(e),pi(e))){_f(e);return}fi(e,()=>(0, li.topBoolOrEmptySchema)(e));}ft.validateFunctionCode=kf;function fi({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"; ${ui(r,s)}`),bf(e,s),e.code(o);}):e.func(t,(0, A._)`${N.default.data}, ${wf(s)}`,n.$async,()=>e.code(ui(r,s)).code(o));}function wf(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 bf(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 _f(e){let{schema:t,opts:r,gen:n}=e;fi(e,()=>{r.$comment&&t.$comment&&yi(e),xf(e),n.let(N.default.vErrors,null),n.let(N.default.errors,0),r.unevaluated&&Rf(e),hi(e),If(e);});}function Rf(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 ui(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 Cf(e,t){if(mi(e)&&(gi(e),pi(e))){$f(e,t);return}(0, li.boolOrEmptySchema)(e,t);}function pi({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 mi(e){return typeof e.schema!="boolean"}function $f(e,t){let{schema:r,gen:n,opts:s}=e;s.$comment&&r.$comment&&yi(e),Tf(e),Af(e);let o=n.const("_errs",N.default.errors);hi(e,o),n.var(t,(0, A._)`${o} === ${N.default.errors}`);}function gi(e){(0, tt.checkUnknownRules)(e),Ef(e);}function hi(e,t){if(e.opts.jtd)return ci(e,[],false,t);let r=(0, ii.getSchemaTypes)(e.schema),n=(0, ii.coerceAndCheckDataType)(e,r);ci(e,r,!n,t);}function Ef(e){let{schema:t,errSchemaPath:r,opts:n,self:s}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0, tt.schemaHasRulesButRef)(t,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`);}function xf(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0, tt.checkStrictMode)(e,"default is ignored in the schema root");}function Tf(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0, Sf.resolveUrl)(e.opts.uriResolver,e.baseId,t));}function Af(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function yi({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 If(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&&Pf(e),t.return((0, A._)`${N.default.errors} === 0`));}function Pf({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 ci(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, tt.schemaHasRulesButRef)(o,d))){s.block(()=>Si(e,"$ref",d.all.$ref.definition));return}c.jtd||Of(e,t),s.block(()=>{for(let h of d.rules)l(h);l(d.post);});function l(h){(0, Ts.shouldUseGroup)(o,h)&&(h.type?(s.if((0, rn.checkDataType)(h.type,a,c.strictNumbers)),di(e,h),t.length===1&&t[0]===h.type&&r&&(s.else(),(0, rn.reportTypeError)(e)),s.endIf()):di(e,h),i||s.if((0, A._)`${N.default.errors} === ${n||0}`));}}function di(e,t){let{gen:r,schema:n,opts:{useDefaults:s}}=e;s&&(0, vf.assignDefaults)(e,t.type),r.block(()=>{for(let o of t.rules)(0, Ts.shouldUseRule)(n,o)&&Si(e,o.keyword,o.definition,t.type);});}function Of(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(jf(e,t),e.opts.allowUnionTypes||Nf(e,t),qf(e,e.dataTypes));}function jf(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{vi(e.dataTypes,r)||As(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`);}),Df(e,t);}}function Nf(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&As(e,"use allowUnionTypes to allow union type keyword");}function qf(e,t){let r=e.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0, Ts.shouldUseRule)(e.schema,s)){let{type:o}=s.definition;o.length&&!o.some(a=>Ff(t,a))&&As(e,`missing type "${o.join(",")}" for keyword "${n}"`);}}}function Ff(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function vi(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function Df(e,t){let r=[];for(let n of e.dataTypes)vi(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r;}function As(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0, tt.checkStrictMode)(e,t,e.opts.strictTypes);}var nn=class{constructor(t,r,n){if((0, pr.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, tt.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",ki(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0, pr.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?fr.reportExtraError:fr.reportError)(this,this.def.error,r);}$dataError(){(0, fr.reportError)(this,this.def.$dataError||fr.keyword$DataError);}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0, fr.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, rn.checkDataTypes)(c,r,o.opts.strictNumbers,rn.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, xs.getSubschema)(this.it,t);(0, xs.extendSubschemaData)(n,this.it,t),(0, xs.extendSubschemaMode)(n,t);let s={...this.it,...n,items:void 0,props:void 0};return Cf(s,r),s}mergeEvaluated(t,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==true&&t.props!==void 0&&(n.props=tt.mergeEvaluated.props(s,t.props,n.props,r)),n.items!==true&&t.items!==void 0&&(n.items=tt.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}};ft.KeywordCxt=nn;function Si(e,t,r,n){let s=new nn(e,r,t);"code"in r?r.code(s,n):s.$data&&r.validate?(0, pr.funcKeywordCode)(s,r):"macro"in r?(0, pr.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0, pr.funcKeywordCode)(s,r);}var Mf=/^\/(?:[^~]|~0|~1)*$/,Lf=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function ki(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let s,o;if(e==="")return N.default.rootData;if(e[0]==="/"){if(!Mf.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);s=e,o=N.default.rootData;}else {let u=Lf.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, tt.unescapeJsonPointer)(u))}`,a=(0, A._)`${a} && ${o}`);return a;function c(u,d){return `Cannot access ${u} ${d} levels up, current level is ${t}`}}ft.getData=ki;});var sn=x(Ps=>{Object.defineProperty(Ps,"__esModule",{value:true});var Is=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=true;}};Ps.default=Is;});var gr=x(Ns=>{Object.defineProperty(Ns,"__esModule",{value:true});var Os=lr(),js=class extends Error{constructor(t,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0, Os.resolveUrl)(t,r,n),this.missingSchema=(0, Os.normalizeId)((0, Os.getFullPath)(t,this.missingRef));}};Ns.default=js;});var an=x(qe=>{Object.defineProperty(qe,"__esModule",{value:true});qe.resolveSchema=qe.getCompilingSchema=qe.resolveRef=qe.compileSchema=qe.SchemaEnv=void 0;var Be=G(),Vf=sn(),xt=et(),Ge=lr(),wi=z(),Bf=mr(),Ut=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, Ge.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={};}};qe.SchemaEnv=Ut;function Fs(e){let t=bi.call(this,e);if(t)return t;let r=(0, Ge.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:o}=this.opts,a=new Be.CodeGen(this.scope,{es5:n,lines:s,ownProperties:o}),i;e.$async&&(i=a.scopeValue("Error",{ref:Vf.default,code:(0, Be._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");e.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:xt.default.data,parentData:xt.default.parentData,parentDataProperty:xt.default.parentDataProperty,dataNames:[xt.default.data],dataPathArr:[Be.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===true?{ref:e.schema,code:(0, Be.stringify)(e.schema)}:{ref:e.schema}),validateName:c,ValidationError:i,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:Be.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0, Be._)`""`,opts:this.opts,self:this},d;try{this._compilations.add(e),(0,Bf.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let l=a.toString();d=`${a.scopeRefs(xt.default.scope)}return ${l}`,this.opts.code.process&&(d=this.opts.code.process(d,e));let y=new Function(`${xt.default.self}`,`${xt.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 Be.Name?void 0:f,items:p instanceof Be.Name?void 0:p,dynamicProps:f instanceof Be.Name,dynamicItems:p instanceof Be.Name},y.source&&(y.source.evaluated=(0,Be.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);}}qe.compileSchema=Fs;function Gf(e,t,r){var n;r=(0, Ge.resolveUrl)(this.opts.uriResolver,t,r);let s=e.refs[r];if(s)return s;let o=Jf.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 Ut({schema:a,schemaId:i,root:e,baseId:t}));}if(o!==void 0)return e.refs[r]=Kf.call(this,o)}qe.resolveRef=Gf;function Kf(e){return (0, Ge.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:Fs.call(this,e)}function bi(e){for(let t of this._compilations)if(Uf(t,e))return t}qe.getCompilingSchema=bi;function Uf(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function Jf(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||on.call(this,e,t)}function on(e,t){let r=this.opts.uriResolver.parse(t),n=(0, Ge._getFullPath)(this.opts.uriResolver,r),s=(0, Ge.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===s)return qs.call(this,r,e);let o=(0, Ge.normalizeId)(n),a=this.refs[o]||this.schemas[o];if(typeof a=="string"){let i=on.call(this,e,a);return typeof i?.schema!="object"?void 0:qs.call(this,r,i)}if(typeof a?.schema=="object"){if(a.validate||Fs.call(this,a),o===(0, Ge.normalizeId)(t)){let{schema:i}=a,{schemaId:c}=this.opts,u=i[c];return u&&(s=(0, Ge.resolveUrl)(this.opts.uriResolver,s,u)),new Ut({schema:i,schemaId:c,root:e,baseId:s})}return qs.call(this,r,a)}}qe.resolveSchema=on;var zf=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function qs(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, wi.unescapeFragment)(i)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!zf.has(i)&&u&&(t=(0, Ge.resolveUrl)(this.opts.uriResolver,t,u));}let o;if(typeof r!="boolean"&&r.$ref&&!(0, wi.schemaHasRulesButRef)(r,this.RULES)){let i=(0, Ge.resolveUrl)(this.opts.uriResolver,t,r.$ref);o=on.call(this,n,i);}let{schemaId:a}=this.opts;if(o=o||new Ut({schema:r,schemaId:a,root:n,baseId:t}),o.schema!==o.root.schema)return o}});var _i=x((lv,Hf)=>{Hf.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 Ms=x((fv,Ei)=>{var Wf=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),Ci=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 Ds(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 Yf=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function Ri(e){return e.length=0,true}function Xf(e,t,r){if(e.length){let n=Ds(e);if(n!=="")t.push(n);else return r.error=true,false;e.length=0;}return true}function Qf(e){let t=0,r={error:false,address:"",zone:""},n=[],s=[],o=false,a=false,i=Xf;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=Ri;}else {s.push(u);continue}}return s.length&&(i===Ri?r.zone=s.join(""):a?n.push(s.join("")):n.push(Ds(s))),r.address=n.join(""),r}function $i(e){if(Zf(e,":")<2)return {host:e,isIPV6:false};let t=Qf(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 Zf(e,t){let r=0;for(let n=0;n<e.length;n++)e[n]===t&&r++;return r}function ep(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 tp(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 rp(e){let t=[];if(e.userinfo!==void 0&&(t.push(e.userinfo),t.push("@")),e.host!==void 0){let r=unescape(e.host);if(!Ci(r)){let n=$i(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}Ei.exports={nonSimpleDomain:Yf,recomposeAuthority:rp,normalizeComponentEncoding:tp,removeDotSegments:ep,isIPv4:Ci,isUUID:Wf,normalizeIPv6:$i,stringArrayToHexStripped:Ds};});var Pi=x((pv,Ii)=>{var{isUUID:np}=Ms(),sp=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,op=["http","https","ws","wss","urn","urn:uuid"];function ap(e){return op.indexOf(e)!==-1}function Ls(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 xi(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function Ti(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 ip(e){return e.secure=Ls(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function up(e){if((e.port===(Ls(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 cp(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(sp);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=Vs(s);e.path=void 0,o&&(e=o.parse(e,t));}else e.error=e.error||"URN can not be parsed.";return e}function dp(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=Vs(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 lp(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!np(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function fp(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var Ai={scheme:"http",domainHost:true,parse:xi,serialize:Ti},pp={scheme:"https",domainHost:Ai.domainHost,parse:xi,serialize:Ti},un={scheme:"ws",domainHost:true,parse:ip,serialize:up},mp={scheme:"wss",domainHost:un.domainHost,parse:un.parse,serialize:un.serialize},gp={scheme:"urn",parse:cp,serialize:dp,skipNormalize:true},hp={scheme:"urn:uuid",parse:lp,serialize:fp,skipNormalize:true},cn={http:Ai,https:pp,ws:un,wss:mp,urn:gp,"urn:uuid":hp};Object.setPrototypeOf(cn,null);function Vs(e){return e&&(cn[e]||cn[e.toLowerCase()])||void 0}Ii.exports={wsIsSecure:Ls,SCHEMES:cn,isValidSchemeName:ap,getSchemeHandler:Vs};});var Ni=x((mv,ln)=>{var{normalizeIPv6:yp,removeDotSegments:hr,recomposeAuthority:vp,normalizeComponentEncoding:dn,isIPv4:Sp,nonSimpleDomain:kp}=Ms(),{SCHEMES:wp,getSchemeHandler:Oi}=Pi();function bp(e,t){return typeof e=="string"?e=He(rt(e,t),t):typeof e=="object"&&(e=rt(He(e,t),t)),e}function _p(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=ji(rt(e,n),rt(t,n),n,true);return n.skipEscape=true,He(s,n)}function ji(e,t,r,n){let s={};return n||(e=rt(He(e,r),r),t=rt(He(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=hr(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=hr(t.path||""),s.query=t.query):(t.path?(t.path[0]==="/"?s.path=hr(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=hr(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 Rp(e,t,r){return typeof e=="string"?(e=unescape(e),e=He(dn(rt(e,r),true),{...r,skipEscape:true})):typeof e=="object"&&(e=He(dn(e,true),{...r,skipEscape:true})),typeof t=="string"?(t=unescape(t),t=He(dn(rt(t,r),true),{...r,skipEscape:true})):typeof t=="object"&&(t=He(dn(t,true),{...r,skipEscape:true})),e.toLowerCase()===t.toLowerCase()}function He(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=Oi(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=vp(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=hr(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 Cp=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function rt(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(Cp);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 c=yp(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=Oi(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===false&&kp(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 Bs={SCHEMES:wp,normalize:bp,resolve:_p,resolveComponent:ji,equal:Rp,serialize:He,parse:rt};ln.exports=Bs;ln.exports.default=Bs;ln.exports.fastUri=Bs;});var Fi=x(Gs=>{Object.defineProperty(Gs,"__esModule",{value:true});var qi=Ni();qi.code='require("ajv/dist/runtime/uri").default';Gs.default=qi;});var Ui=x(me=>{Object.defineProperty(me,"__esModule",{value:true});me.CodeGen=me.Name=me.nil=me.stringify=me.str=me._=me.KeywordCxt=void 0;var $p=mr();Object.defineProperty(me,"KeywordCxt",{enumerable:true,get:function(){return $p.KeywordCxt}});var Jt=G();Object.defineProperty(me,"_",{enumerable:true,get:function(){return Jt._}});Object.defineProperty(me,"str",{enumerable:true,get:function(){return Jt.str}});Object.defineProperty(me,"stringify",{enumerable:true,get:function(){return Jt.stringify}});Object.defineProperty(me,"nil",{enumerable:true,get:function(){return Jt.nil}});Object.defineProperty(me,"Name",{enumerable:true,get:function(){return Jt.Name}});Object.defineProperty(me,"CodeGen",{enumerable:true,get:function(){return Jt.CodeGen}});var Ep=sn(),Bi=gr(),xp=vs(),yr=an(),Tp=G(),vr=lr(),fn=dr(),Us=z(),Di=_i(),Ap=Fi(),Gi=(e,t)=>new RegExp(e,t);Gi.code="new RegExp";var Ip=["removeAdditional","useDefaults","coerceTypes"],Pp=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),Op={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."},jp={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Mi=200;function Np(e){var t,r,n,s,o,a,i,c,u,d,l,h,y,f,p,v,_,g,m,k,w,$,R,E,I;let O=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:Gi,fe=(s=e.uriResolver)!==null&&s!==void 0?s:Ap.default;return {strictSchema:(a=(o=e.strictSchema)!==null&&o!==void 0?o:O)!==null&&a!==void 0?a:true,strictNumbers:(c=(i=e.strictNumbers)!==null&&i!==void 0?i:O)!==null&&c!==void 0?c:true,strictTypes:(d=(u=e.strictTypes)!==null&&u!==void 0?u:O)!==null&&d!==void 0?d:"log",strictTuples:(h=(l=e.strictTuples)!==null&&l!==void 0?l:O)!==null&&h!==void 0?h:"log",strictRequired:(f=(y=e.strictRequired)!==null&&y!==void 0?y:O)!==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:Mi,loopEnum:(v=e.loopEnum)!==null&&v!==void 0?v:Mi,meta:(_=e.meta)!==null&&_!==void 0?_:true,messages:(g=e.messages)!==null&&g!==void 0?g:true,inlineRefs:(m=e.inlineRefs)!==null&&m!==void 0?m:true,schemaId:(k=e.schemaId)!==null&&k!==void 0?k:"$id",addUsedSchema:(w=e.addUsedSchema)!==null&&w!==void 0?w: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:fe}}var Sr=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...Np(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new Tp.ValueScope({scope:{},prefixes:Pp,es5:r,lines:n}),this.logger=Vp(t.logger);let s=t.validateFormats;t.validateFormats=false,this.RULES=(0, xp.getRules)(),Li.call(this,Op,t,"NOT SUPPORTED"),Li.call(this,jp,t,"DEPRECATED","warn"),this._metaOpts=Mp.call(this),t.formats&&Fp.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&Dp.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),qp.call(this),t.validateFormats=s;}_addVocabularies(){this.addKeyword("$async");}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,s=Di;n==="id"&&(s={...Di},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 Bi.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, vr.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=Vi.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,s=new yr.SchemaEnv({schema:{},schemaId:n});if(r=yr.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=Vi.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, vr.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(Gp.call(this,n,r),!r)return (0, Us.eachItem)(n,o=>Ks.call(this,o)),this;Up.call(this,r);let s={...r,type:(0, fn.getJSONTypes)(r.type),schemaType:(0, fn.getJSONTypes)(r.schemaType)};return (0, Us.eachItem)(n,s.type.length===0?o=>Ks.call(this,o,s):o=>s.type.forEach(a=>Ks.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]=Ki(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, vr.normalizeId)(a||n);let u=vr.getSchemaRefs.call(this,t,n);return c=new yr.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):yr.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{yr.compileSchema.call(this,t);}finally{this.opts=r;}}};Sr.ValidationError=Ep.default;Sr.MissingRefError=Bi.default;me.default=Sr;function Li(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 Vi(e){return e=(0, vr.normalizeId)(e),this.schemas[e]||this.refs[e]}function qp(){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 Fp(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t);}}function Dp(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r);}}function Mp(){let e={...this.opts};for(let t of Ip)delete e[t];return e}var Lp={log(){},warn(){},error(){}};function Vp(e){if(e===false)return Lp;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 Bp=/^[a-z_$][a-z0-9_$:-]*$/i;function Gp(e,t){let{RULES:r}=this;if((0, Us.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!Bp.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 Ks(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, fn.getJSONTypes)(t.type),schemaType:(0, fn.getJSONTypes)(t.schemaType)}};t.before?Kp.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 Kp(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 Up(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=Ki(t)),e.validateSchema=this.compile(t,true));}var Jp={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Ki(e){return {anyOf:[e,Jp]}}});var Ji=x(Js=>{Object.defineProperty(Js,"__esModule",{value:true});var zp={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Js.default=zp;});var Yi=x(Tt=>{Object.defineProperty(Tt,"__esModule",{value:true});Tt.callRef=Tt.getValidate=void 0;var Hp=gr(),zi=Ne(),xe=G(),zt=et(),Hi=an(),pn=z(),Wp={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=Hi.resolveRef.call(c,u,s,r);if(d===void 0)throw new Hp.default(n.opts.uriResolver,s,r);if(d instanceof Hi.SchemaEnv)return h(d);return y(d);function l(){if(o===u)return mn(e,a,o,o.$async);let f=t.scopeValue("root",{ref:u});return mn(e,(0, xe._)`${f}.validate`,u,u.$async)}function h(f){let p=Wi(e,f);mn(e,p,f,f.$async);}function y(f){let p=t.scopeValue("schema",i.code.source===true?{ref:f,code:(0, xe.stringify)(f)}:{ref:f}),v=t.name("valid"),_=e.subschema({schema:f,dataTypes:[],schemaPath:xe.nil,topSchemaRef:p,errSchemaPath:r},v);e.mergeEvaluated(_),e.ok(v);}}};function Wi(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0, xe._)`${r.scopeValue("wrapper",{ref:t})}.validate`}Tt.getValidate=Wi;function mn(e,t,r,n){let{gen:s,it:o}=e,{allErrors:a,schemaEnv:i,opts:c}=o,u=c.passContext?zt.default.this:xe.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, xe._)`await ${(0, zi.callValidateCode)(e,t,u)}`),y(t),a||s.assign(f,true);},p=>{s.if((0, xe._)`!(${p} instanceof ${o.ValidationError})`,()=>s.throw(p)),h(p),a||s.assign(f,false);}),e.ok(f);}function l(){e.result((0, zi.callValidateCode)(e,t,u),()=>y(t),()=>h(t));}function h(f){let p=(0, xe._)`${f}.errors`;s.assign(zt.default.vErrors,(0, xe._)`${zt.default.vErrors} === null ? ${p} : ${zt.default.vErrors}.concat(${p})`),s.assign(zt.default.errors,(0, xe._)`${zt.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=pn.mergeEvaluated.props(s,v.props,o.props));else {let _=s.var("props",(0, xe._)`${f}.evaluated.props`);o.props=pn.mergeEvaluated.props(s,_,o.props,xe.Name);}if(o.items!==true)if(v&&!v.dynamicItems)v.items!==void 0&&(o.items=pn.mergeEvaluated.items(s,v.items,o.items));else {let _=s.var("items",(0, xe._)`${f}.evaluated.items`);o.items=pn.mergeEvaluated.items(s,_,o.items,xe.Name);}}}Tt.callRef=mn;Tt.default=Wp;});var Xi=x(zs=>{Object.defineProperty(zs,"__esModule",{value:true});var Yp=Ji(),Xp=Yi(),Qp=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",Yp.default,Xp.default];zs.default=Qp;});var Qi=x(Hs=>{Object.defineProperty(Hs,"__esModule",{value:true});var gn=G(),pt=gn.operators,hn={maximum:{okStr:"<=",ok:pt.LTE,fail:pt.GT},minimum:{okStr:">=",ok:pt.GTE,fail:pt.LT},exclusiveMaximum:{okStr:"<",ok:pt.LT,fail:pt.GTE},exclusiveMinimum:{okStr:">",ok:pt.GT,fail:pt.LTE}},Zp={message:({keyword:e,schemaCode:t})=>(0, gn.str)`must be ${hn[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0, gn._)`{comparison: ${hn[e].okStr}, limit: ${t}}`},em={keyword:Object.keys(hn),type:"number",schemaType:"number",$data:true,error:Zp,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0, gn._)`${r} ${hn[t].fail} ${n} || isNaN(${r})`);}};Hs.default=em;});var Zi=x(Ws=>{Object.defineProperty(Ws,"__esModule",{value:true});var kr=G(),tm={message:({schemaCode:e})=>(0, kr.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0, kr._)`{multipleOf: ${e}}`},rm={keyword:"multipleOf",type:"number",schemaType:"number",$data:true,error:tm,code(e){let{gen:t,data:r,schemaCode:n,it:s}=e,o=s.opts.multipleOfPrecision,a=t.let("res"),i=o?(0, kr._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${o}`:(0, kr._)`${a} !== parseInt(${a})`;e.fail$data((0, kr._)`(${n} === 0 || (${a} = ${r}/${n}, ${i}))`);}};Ws.default=rm;});var tu=x(Ys=>{Object.defineProperty(Ys,"__esModule",{value:true});function eu(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}Ys.default=eu;eu.code='require("ajv/dist/runtime/ucs2length").default';});var ru=x(Xs=>{Object.defineProperty(Xs,"__esModule",{value:true});var At=G(),nm=z(),sm=tu(),om={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return (0, At.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0, At._)`{limit: ${e}}`},am={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:true,error:om,code(e){let{keyword:t,data:r,schemaCode:n,it:s}=e,o=t==="maxLength"?At.operators.GT:At.operators.LT,a=s.opts.unicode===false?(0, At._)`${r}.length`:(0, At._)`${(0, nm.useFunc)(e.gen,sm.default)}(${r})`;e.fail$data((0, At._)`${a} ${o} ${n}`);}};Xs.default=am;});var nu=x(Qs=>{Object.defineProperty(Qs,"__esModule",{value:true});var im=Ne(),um=z(),Ht=G(),cm={message:({schemaCode:e})=>(0, Ht.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0, Ht._)`{pattern: ${e}}`},dm={keyword:"pattern",type:"string",schemaType:"string",$data:true,error:cm,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, Ht._)`new RegExp`:(0, um.useFunc)(t,c),d=t.let("valid");t.try(()=>t.assign(d,(0, Ht._)`${u}(${o}, ${i}).test(${r})`),()=>t.assign(d,false)),e.fail$data((0, Ht._)`!${d}`);}else {let c=(0, im.usePattern)(e,s);e.fail$data((0, Ht._)`!${c}.test(${r})`);}}};Qs.default=dm;});var su=x(Zs=>{Object.defineProperty(Zs,"__esModule",{value:true});var wr=G(),lm={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return (0, wr.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0, wr._)`{limit: ${e}}`},fm={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:true,error:lm,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxProperties"?wr.operators.GT:wr.operators.LT;e.fail$data((0, wr._)`Object.keys(${r}).length ${s} ${n}`);}};Zs.default=fm;});var ou=x(eo=>{Object.defineProperty(eo,"__esModule",{value:true});var br=Ne(),_r=G(),pm=z(),mm={message:({params:{missingProperty:e}})=>(0, _r.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0, _r._)`{missingProperty: ${e}}`},gm={keyword:"required",type:"object",schemaType:"array",$data:true,error:mm,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, pm.checkStrictMode)(a,_,a.opts.strictRequired);}}function u(){if(c||o)e.block$data(_r.nil,l);else for(let y of r)(0, br.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, br.checkMissingProp)(e,r,y)),(0, br.reportMissingProp)(e,y),t.else();}function l(){t.forOf("prop",n,y=>{e.setParams({missingProperty:y}),t.if((0, br.noPropertyInData)(t,s,y,i.ownProperties),()=>e.error());});}function h(y,f){e.setParams({missingProperty:y}),t.forOf(y,n,()=>{t.assign(f,(0, br.propertyInData)(t,s,y,i.ownProperties)),t.if((0, _r.not)(f),()=>{e.error(),t.break();});},_r.nil);}}};eo.default=gm;});var au=x(to=>{Object.defineProperty(to,"__esModule",{value:true});var Rr=G(),hm={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return (0, Rr.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0, Rr._)`{limit: ${e}}`},ym={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:true,error:hm,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxItems"?Rr.operators.GT:Rr.operators.LT;e.fail$data((0, Rr._)`${r}.length ${s} ${n}`);}};to.default=ym;});var yn=x(ro=>{Object.defineProperty(ro,"__esModule",{value:true});var iu=$s();iu.code='require("ajv/dist/runtime/equal").default';ro.default=iu;});var uu=x(so=>{Object.defineProperty(so,"__esModule",{value:true});var no=dr(),ge=G(),vm=z(),Sm=yn(),km={message:({params:{i:e,j:t}})=>(0, ge.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0, ge._)`{i: ${e}, j: ${t}}`},wm={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:true,error:km,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, no.getSchemaTypes)(o.items):[];e.block$data(c,d,(0, ge._)`${a} === false`),e.ok(c);function d(){let f=t.let("i",(0, ge._)`${r}.length`),p=t.let("j");e.setParams({i:f,j:p}),t.assign(c,true),t.if((0, ge._)`${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, no.checkDataTypes)(u,v,i.opts.strictNumbers,no.DataType.Wrong),g=t.const("indices",(0, ge._)`{}`);t.for((0, ge._)`;${f}--;`,()=>{t.let(v,(0, ge._)`${r}[${f}]`),t.if(_,(0, ge._)`continue`),u.length>1&&t.if((0, ge._)`typeof ${v} == "string"`,(0, ge._)`${v} += "_"`),t.if((0, ge._)`typeof ${g}[${v}] == "number"`,()=>{t.assign(p,(0, ge._)`${g}[${v}]`),e.error(),t.assign(c,false).break();}).code((0, ge._)`${g}[${v}] = ${f}`);});}function y(f,p){let v=(0, vm.useFunc)(t,Sm.default),_=t.name("outer");t.label(_).for((0, ge._)`;${f}--;`,()=>t.for((0, ge._)`${p} = ${f}; ${p}--;`,()=>t.if((0, ge._)`${v}(${r}[${f}], ${r}[${p}])`,()=>{e.error(),t.assign(c,false).break(_);})));}}};so.default=wm;});var cu=x(ao=>{Object.defineProperty(ao,"__esModule",{value:true});var oo=G(),bm=z(),_m=yn(),Rm={message:"must be equal to constant",params:({schemaCode:e})=>(0, oo._)`{allowedValue: ${e}}`},Cm={keyword:"const",$data:true,error:Rm,code(e){let{gen:t,data:r,$data:n,schemaCode:s,schema:o}=e;n||o&&typeof o=="object"?e.fail$data((0, oo._)`!${(0, bm.useFunc)(t,_m.default)}(${r}, ${s})`):e.fail((0, oo._)`${o} !== ${r}`);}};ao.default=Cm;});var du=x(io=>{Object.defineProperty(io,"__esModule",{value:true});var Cr=G(),$m=z(),Em=yn(),xm={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0, Cr._)`{allowedValues: ${e}}`},Tm={keyword:"enum",schemaType:"array",$data:true,error:xm,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, $m.useFunc)(t,Em.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, Cr.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, Cr._)`${u()}(${r}, ${y})`,()=>t.assign(d,true).break()));}function h(y,f){let p=s[f];return typeof p=="object"&&p!==null?(0, Cr._)`${u()}(${r}, ${y}[${f}])`:(0, Cr._)`${r} === ${p}`}}};io.default=Tm;});var lu=x(uo=>{Object.defineProperty(uo,"__esModule",{value:true});var Am=Qi(),Im=Zi(),Pm=ru(),Om=nu(),jm=su(),Nm=ou(),qm=au(),Fm=uu(),Dm=cu(),Mm=du(),Lm=[Am.default,Im.default,Pm.default,Om.default,jm.default,Nm.default,qm.default,Fm.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},Dm.default,Mm.default];uo.default=Lm;});var lo=x($r=>{Object.defineProperty($r,"__esModule",{value:true});$r.validateAdditionalItems=void 0;var It=G(),co=z(),Vm={message:({params:{len:e}})=>(0, It.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0, It._)`{limit: ${e}}`},Bm={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:Vm,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0, co.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}fu(e,n);}};function fu(e,t){let{gen:r,schema:n,data:s,keyword:o,it:a}=e;a.items=true;let i=r.const("len",(0, It._)`${s}.length`);if(n===false)e.setParams({len:t.length}),e.pass((0, It._)`${i} <= ${t.length}`);else if(typeof n=="object"&&!(0, co.alwaysValidSchema)(a,n)){let u=r.var("valid",(0, It._)`${i} <= ${t.length}`);r.if((0, It.not)(u),()=>c(u)),e.ok(u);}function c(u){r.forRange("i",t.length,i,d=>{e.subschema({keyword:o,dataProp:d,dataPropType:co.Type.Num},u),a.allErrors||r.if((0, It.not)(u),()=>r.break());});}}$r.validateAdditionalItems=fu;$r.default=Bm;});var fo=x(Er=>{Object.defineProperty(Er,"__esModule",{value:true});Er.validateTuple=void 0;var pu=G(),vn=z(),Gm=Ne(),Km={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return mu(e,"additionalItems",t);r.items=true,!(0, vn.alwaysValidSchema)(r,t)&&e.ok((0, Gm.validateArray)(e));}};function mu(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=vn.mergeEvaluated.items(n,r.length,i.items));let c=n.name("valid"),u=n.const("len",(0, pu._)`${o}.length`);r.forEach((l,h)=>{(0, vn.alwaysValidSchema)(i,l)||(n.if((0, pu._)`${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, vn.checkStrictMode)(i,v,h.strictTuples);}}}Er.validateTuple=mu;Er.default=Km;});var gu=x(po=>{Object.defineProperty(po,"__esModule",{value:true});var Um=fo(),Jm={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0, Um.validateTuple)(e,"items")};po.default=Jm;});var yu=x(mo=>{Object.defineProperty(mo,"__esModule",{value:true});var hu=G(),zm=z(),Hm=Ne(),Wm=lo(),Ym={message:({params:{len:e}})=>(0, hu.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0, hu._)`{limit: ${e}}`},Xm={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:Ym,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:s}=r;n.items=true,!(0, zm.alwaysValidSchema)(n,t)&&(s?(0, Wm.validateAdditionalItems)(e,s):e.ok((0, Hm.validateArray)(e)));}};mo.default=Xm;});var vu=x(go=>{Object.defineProperty(go,"__esModule",{value:true});var Fe=G(),Sn=z(),Qm={message:({params:{min:e,max:t}})=>t===void 0?(0, Fe.str)`must contain at least ${e} valid item(s)`:(0, Fe.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0, Fe._)`{minContains: ${e}}`:(0, Fe._)`{minContains: ${e}, maxContains: ${t}}`},Zm={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:true,error:Qm,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, Fe._)`${s}.length`);if(e.setParams({min:a,max:i}),i===void 0&&a===0){(0, Sn.checkStrictMode)(o,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(i!==void 0&&a>i){(0, Sn.checkStrictMode)(o,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0, Sn.alwaysValidSchema)(o,r)){let p=(0, Fe._)`${d} >= ${a}`;i!==void 0&&(p=(0, Fe._)`${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, Fe._)`${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:Sn.Type.Num,compositeRule:true},p),v();});}function f(p){t.code((0, Fe._)`${p}++`),i===void 0?t.if((0, Fe._)`${p} >= ${a}`,()=>t.assign(l,true).break()):(t.if((0, Fe._)`${p} > ${i}`,()=>t.assign(l,false).break()),a===1?t.assign(l,true):t.if((0, Fe._)`${p} >= ${a}`,()=>t.assign(l,true)));}}};go.default=Zm;});var wu=x(We=>{Object.defineProperty(We,"__esModule",{value:true});We.validateSchemaDeps=We.validatePropertyDeps=We.error=void 0;var ho=G(),eg=z(),xr=Ne();We.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return (0, ho.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0, ho._)`{property: ${e},
|
|
1
|
+
import {spawnSync,spawn,execFile,execFileSync}from'child_process';import*as b from'fs';import {existsSync}from'fs';import*as Dn from'os';import*as H from'path';import {dirname,resolve}from'path';import*as ta from'net';import {fileURLToPath}from'url';import {createHash,randomUUID}from'crypto';import {createRequire}from'module';import {lockSync}from'proper-lockfile';import ch from'ajv-formats';var zc=Object.create;var Xo=Object.defineProperty;var Hc=Object.getOwnPropertyDescriptor;var Wc=Object.getOwnPropertyNames;var Yc=Object.getPrototypeOf,Xc=Object.prototype.hasOwnProperty;var T=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Qc=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of Wc(t))!Xc.call(e,s)&&s!==r&&Xo(e,s,{get:()=>t[s],enumerable:!(n=Hc(t,s))||n.enumerable});return e};var Zc=(e,t,r)=>(r=e!=null?zc(Yc(e)):{},Qc(Xo(r,"default",{value:e,enumerable:true}),e));var nr=T(X=>{Object.defineProperty(X,"__esModule",{value:true});X.regexpCode=X.getEsmExportName=X.getProperty=X.safeStringify=X.stringify=X.strConcat=X.addCodeArg=X.str=X._=X.nil=X._Code=X.Name=X.IDENTIFIER=X._CodeOrName=void 0;var tr=class{};X._CodeOrName=tr;X.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var bt=class extends tr{constructor(t){if(super(),!X.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}}};X.Name=bt;var Ne=class extends tr{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 bt&&(r[n.str]=(r[n.str]||0)+1),r),{})}};X._Code=Ne;X.nil=new Ne("");function Ca(e,...t){let r=[e[0]],n=0;for(;n<t.length;)Qn(r,t[n]),r.push(e[++n]);return new Ne(r)}X._=Ca;var Xn=new Ne("+");function Ea(e,...t){let r=[rr(e[0])],n=0;for(;n<t.length;)r.push(Xn),Qn(r,t[n]),r.push(Xn,rr(e[++n]));return qd(r),new Ne(r)}X.str=Ea;function Qn(e,t){t instanceof Ne?e.push(...t._items):t instanceof bt?e.push(t):e.push(Md(t));}X.addCodeArg=Qn;function qd(e){let t=1;for(;t<e.length-1;){if(e[t]===Xn){let r=Fd(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+";}t++;}}function Fd(e,t){if(t==='""')return e;if(e==='""')return t;if(typeof e=="string")return t instanceof bt||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 bt))return `"${e}${t.slice(1)}`}function Dd(e,t){return t.emptyStr()?e:e.emptyStr()?t:Ea`${e}${t}`}X.strConcat=Dd;function Md(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:rr(Array.isArray(e)?e.join(","):e)}function Ld(e){return new Ne(rr(e))}X.stringify=Ld;function rr(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}X.safeStringify=rr;function Vd(e){return typeof e=="string"&&X.IDENTIFIER.test(e)?new Ne(`.${e}`):Ca`[${e}]`}X.getProperty=Vd;function Bd(e){if(typeof e=="string"&&X.IDENTIFIER.test(e))return new Ne(`${e}`);throw new Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}X.getEsmExportName=Bd;function Gd(e){return new Ne(e.toString())}X.regexpCode=Gd;});var ts=T(xe=>{Object.defineProperty(xe,"__esModule",{value:true});xe.ValueScope=xe.ValueScopeName=xe.Scope=xe.varKinds=xe.UsedValueState=void 0;var $e=nr(),Zn=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value;}},Jr;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed";})(Jr||(xe.UsedValueState=Jr={}));xe.varKinds={const:new $e.Name("const"),let:new $e.Name("let"),var:new $e.Name("var")};var zr=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r;}toName(t){return t instanceof $e.Name?t:this.name(t)}name(t){return new $e.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return `${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};xe.Scope=zr;var Hr=class extends $e.Name{constructor(t,r){super(r),this.prefix=t;}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0, $e._)`.${new $e.Name(r)}[${n}]`;}};xe.ValueScopeName=Hr;var Kd=(0, $e._)`\n`,es=class extends zr{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?Kd:$e.nil};}get(){return this._scope}name(t){return new Hr(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, $e._)`${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=$e.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,Jr.Started);let d=r(u);if(d){let l=this.opts.es5?xe.varKinds.var:xe.varKinds.const;o=(0, $e._)`${o}${l} ${u} = ${d};${this.opts._n}`;}else if(d=s?.(u))o=(0, $e._)`${o}${d}${this.opts._n}`;else throw new Zn(u);c.set(u,Jr.Completed);});}return o}};xe.ValueScope=es;});var U=T(K=>{Object.defineProperty(K,"__esModule",{value:true});K.or=K.and=K.not=K.CodeGen=K.operators=K.varKinds=K.ValueScopeName=K.ValueScope=K.Scope=K.Name=K.regexpCode=K.stringify=K.getProperty=K.nil=K.strConcat=K.str=K._=void 0;var z=nr(),Ge=ts(),it=nr();Object.defineProperty(K,"_",{enumerable:true,get:function(){return it._}});Object.defineProperty(K,"str",{enumerable:true,get:function(){return it.str}});Object.defineProperty(K,"strConcat",{enumerable:true,get:function(){return it.strConcat}});Object.defineProperty(K,"nil",{enumerable:true,get:function(){return it.nil}});Object.defineProperty(K,"getProperty",{enumerable:true,get:function(){return it.getProperty}});Object.defineProperty(K,"stringify",{enumerable:true,get:function(){return it.stringify}});Object.defineProperty(K,"regexpCode",{enumerable:true,get:function(){return it.regexpCode}});Object.defineProperty(K,"Name",{enumerable:true,get:function(){return it.Name}});var Qr=ts();Object.defineProperty(K,"Scope",{enumerable:true,get:function(){return Qr.Scope}});Object.defineProperty(K,"ValueScope",{enumerable:true,get:function(){return Qr.ValueScope}});Object.defineProperty(K,"ValueScopeName",{enumerable:true,get:function(){return Qr.ValueScopeName}});Object.defineProperty(K,"varKinds",{enumerable:true,get:function(){return Qr.varKinds}});K.operators={GT:new z._Code(">"),GTE:new z._Code(">="),LT:new z._Code("<"),LTE:new z._Code("<="),EQ:new z._Code("==="),NEQ:new z._Code("!=="),NOT:new z._Code("!"),OR:new z._Code("||"),AND:new z._Code("&&"),ADD:new z._Code("+")};var Qe=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},rs=class extends Qe{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n;}render({es5:t,_n:r}){let n=t?Ge.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=Mt(this.rhs,t,r)),this}get names(){return this.rhs instanceof z._CodeOrName?this.rhs.names:{}}},Wr=class extends Qe{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 z.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=Mt(this.rhs,t,r),this}get names(){let t=this.lhs instanceof z.Name?{}:{...this.lhs.names};return Xr(t,this.rhs)}},ns=class extends Wr{constructor(t,r,n,s){super(t,n,s),this.op=r;}render({_n:t}){return `${this.lhs} ${this.op}= ${this.rhs};`+t}},ss=class extends Qe{constructor(t){super(),this.label=t,this.names={};}render({_n:t}){return `${this.label}:`+t}},os=class extends Qe{constructor(t){super(),this.label=t,this.names={};}render({_n:t}){return `break${this.label?` ${this.label}`:""};`+t}},as=class extends Qe{constructor(t){super(),this.error=t;}render({_n:t}){return `throw ${this.error};`+t}get names(){return this.error.names}},is=class extends Qe{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=Mt(this.code,t,r),this}get names(){return this.code instanceof z._CodeOrName?this.code.names:{}}},sr=class extends Qe{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)||(Ud(t,o.names),n.splice(s,1));}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>Ct(t,r.names),{})}},Ze=class extends sr{render(t){return "{"+t._n+super.render(t)+"}"+t._n}},us=class extends sr{},Dt=class extends Ze{};Dt.kind="else";var _t=class e extends Ze{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 Dt(n):n;}if(r)return t===false?r instanceof e?r:r.nodes:this.nodes.length?this:new e($a(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=Mt(this.condition,t,r),this}get names(){let t=super.names;return Xr(t,this.condition),this.else&&Ct(t,this.else.names),t}};_t.kind="if";var Rt=class extends Ze{};Rt.kind="for";var cs=class extends Rt{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=Mt(this.iteration,t,r),this}get names(){return Ct(super.names,this.iteration.names)}},ds=class extends Rt{constructor(t,r,n,s){super(),this.varKind=t,this.name=r,this.from=n,this.to=s;}render(t){let r=t.es5?Ge.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=Xr(super.names,this.from);return Xr(t,this.to)}},Yr=class extends Rt{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=Mt(this.iterable,t,r),this}get names(){return Ct(super.names,this.iterable.names)}},or=class extends Ze{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)}};or.kind="func";var ar=class extends sr{render(t){return "return "+super.render(t)}};ar.kind="return";var ls=class extends Ze{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&&Ct(t,this.catch.names),this.finally&&Ct(t,this.finally.names),t}},ir=class extends Ze{constructor(t){super(),this.error=t;}render(t){return `catch(${this.error})`+super.render(t)}};ir.kind="catch";var ur=class extends Ze{render(t){return "finally"+super.render(t)}};ur.kind="finally";var fs=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
2
|
+
`:""},this._extScope=t,this._scope=new Ge.Scope({parent:t}),this._nodes=[new us];}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 rs(t,o,n)),o}const(t,r,n){return this._def(Ge.varKinds.const,t,r,n)}let(t,r,n){return this._def(Ge.varKinds.let,t,r,n)}var(t,r,n){return this._def(Ge.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new Wr(t,r,n))}add(t,r){return this._leafNode(new ns(t,K.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==z.nil&&this._leafNode(new is(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, z.addCodeArg)(r,s));return r.push("}"),new z._Code(r)}if(t,r,n){if(this._blockNode(new _t(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 _t(t))}else(){return this._elseNode(new Dt)}endIf(){return this._endBlockNode(_t,Dt)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new cs(t),r)}forRange(t,r,n,s,o=this.opts.es5?Ge.varKinds.var:Ge.varKinds.let){let a=this._scope.toName(t);return this._for(new ds(o,a,r,n),()=>s(a))}forOf(t,r,n,s=Ge.varKinds.const){let o=this._scope.toName(t);if(this.opts.es5){let a=r instanceof z.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0, z._)`${a}.length`,i=>{this.var(o,(0, z._)`${a}[${i}]`),n(o);})}return this._for(new Yr("of",s,o,r),()=>n(o))}forIn(t,r,n,s=this.opts.es5?Ge.varKinds.var:Ge.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0, z._)`Object.keys(${r})`,n);let o=this._scope.toName(t);return this._for(new Yr("in",s,o,r),()=>n(o))}endFor(){return this._endBlockNode(Rt)}label(t){return this._leafNode(new ss(t))}break(t){return this._leafNode(new os(t))}return(t){let r=new ar;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(ar)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new ls;if(this._blockNode(s),this.code(t),r){let o=this.name("e");this._currNode=s.catch=new ir(o),r(o);}return n&&(this._currNode=s.finally=new ur,this.code(n)),this._endBlockNode(ir,ur)}throw(t){return this._leafNode(new as(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=z.nil,n,s){return this._blockNode(new or(t,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(or)}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 _t))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;}};K.CodeGen=fs;function Ct(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function Xr(e,t){return t instanceof z._CodeOrName?Ct(e,t.names):e}function Mt(e,t,r){if(e instanceof z.Name)return n(e);if(!s(e))return e;return new z._Code(e._items.reduce((o,a)=>(a instanceof z.Name&&(a=n(a)),a instanceof z._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 z._Code&&o._items.some(a=>a instanceof z.Name&&t[a.str]===1&&r[a.str]!==void 0)}}function Ud(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0);}function $a(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0, z._)`!${ps(e)}`}K.not=$a;var Jd=xa(K.operators.AND);function zd(...e){return e.reduce(Jd)}K.and=zd;var Hd=xa(K.operators.OR);function Wd(...e){return e.reduce(Hd)}K.or=Wd;function xa(e){return (t,r)=>t===z.nil?r:r===z.nil?t:(0, z._)`${ps(t)} ${e} ${ps(r)}`}function ps(e){return e instanceof z.Name?e:(0, z._)`(${e})`}});var W=T(J=>{Object.defineProperty(J,"__esModule",{value:true});J.checkStrictMode=J.getErrorPath=J.Type=J.useFunc=J.setEvaluated=J.evaluatedPropsToName=J.mergeEvaluated=J.eachItem=J.unescapeJsonPointer=J.escapeJsonPointer=J.escapeFragment=J.unescapeFragment=J.schemaRefOrVal=J.schemaHasRulesButRef=J.schemaHasRules=J.checkUnknownRules=J.alwaysValidSchema=J.toHash=void 0;var se=U(),Yd=nr();function Xd(e){let t={};for(let r of e)t[r]=true;return t}J.toHash=Xd;function Qd(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?true:(Ia(e,t),!Pa(t,e.self.RULES.all))}J.alwaysValidSchema=Qd;function Ia(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]||Na(e,`unknown keyword: "${o}"`);}J.checkUnknownRules=Ia;function Pa(e,t){if(typeof e=="boolean")return !e;for(let r in e)if(t[r])return true;return false}J.schemaHasRules=Pa;function Zd(e,t){if(typeof e=="boolean")return !e;for(let r in e)if(r!=="$ref"&&t.all[r])return true;return false}J.schemaHasRulesButRef=Zd;function el({topSchemaRef:e,schemaPath:t},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return (0, se._)`${r}`}return (0, se._)`${e}${t}${(0, se.getProperty)(n)}`}J.schemaRefOrVal=el;function tl(e){return ja(decodeURIComponent(e))}J.unescapeFragment=tl;function rl(e){return encodeURIComponent(gs(e))}J.escapeFragment=rl;function gs(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}J.escapeJsonPointer=gs;function ja(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}J.unescapeJsonPointer=ja;function nl(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e);}J.eachItem=nl;function Ta({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return (s,o,a,i)=>{let c=a===void 0?o:a instanceof se.Name?(o instanceof se.Name?e(s,o,a):t(s,o,a),a):o instanceof se.Name?(t(s,a,o),o):r(o,a);return i===se.Name&&!(c instanceof se.Name)?n(s,c):c}}J.mergeEvaluated={props:Ta({mergeNames:(e,t,r)=>e.if((0, se._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0, se._)`${t} === true`,()=>e.assign(r,true),()=>e.assign(r,(0, se._)`${r} || {}`).code((0, se._)`Object.assign(${r}, ${t})`));}),mergeToName:(e,t,r)=>e.if((0, se._)`${r} !== true`,()=>{t===true?e.assign(r,true):(e.assign(r,(0, se._)`${r} || {}`),hs(e,r,t));}),mergeValues:(e,t)=>e===true?true:{...e,...t},resultToName:Oa}),items:Ta({mergeNames:(e,t,r)=>e.if((0, se._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0, se._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0, se._)`${r} !== true`,()=>e.assign(r,t===true?true:(0, se._)`${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, se._)`{}`);return t!==void 0&&hs(e,r,t),r}J.evaluatedPropsToName=Oa;function hs(e,t,r){Object.keys(r).forEach(n=>e.assign((0, se._)`${t}${(0, se.getProperty)(n)}`,true));}J.setEvaluated=hs;var Aa={};function sl(e,t){return e.scopeValue("func",{ref:t,code:Aa[t.code]||(Aa[t.code]=new Yd._Code(t.code))})}J.useFunc=sl;var ms;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str";})(ms||(J.Type=ms={}));function ol(e,t,r){if(e instanceof se.Name){let n=t===ms.Num;return r?n?(0, se._)`"[" + ${e} + "]"`:(0, se._)`"['" + ${e} + "']"`:n?(0, se._)`"/" + ${e}`:(0, se._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0, se.getProperty)(e).toString():"/"+gs(e)}J.getErrorPath=ol;function Na(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===true)throw new Error(t);e.self.logger.warn(t);}}J.checkStrictMode=Na;});var et=T(ys=>{Object.defineProperty(ys,"__esModule",{value:true});var ye=U(),al={data:new ye.Name("data"),valCxt:new ye.Name("valCxt"),instancePath:new ye.Name("instancePath"),parentData:new ye.Name("parentData"),parentDataProperty:new ye.Name("parentDataProperty"),rootData:new ye.Name("rootData"),dynamicAnchors:new ye.Name("dynamicAnchors"),vErrors:new ye.Name("vErrors"),errors:new ye.Name("errors"),this:new ye.Name("this"),self:new ye.Name("self"),scope:new ye.Name("scope"),json:new ye.Name("json"),jsonPos:new ye.Name("jsonPos"),jsonLen:new ye.Name("jsonLen"),jsonPart:new ye.Name("jsonPart")};ys.default=al;});var cr=T(ve=>{Object.defineProperty(ve,"__esModule",{value:true});ve.extendErrors=ve.resetErrorsCount=ve.reportExtraError=ve.reportError=ve.keyword$DataError=ve.keywordError=void 0;var Y=U(),Zr=W(),be=et();ve.keywordError={message:({keyword:e})=>(0, Y.str)`must pass "${e}" keyword validation`};ve.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0, Y.str)`"${e}" keyword must be ${t} ($data)`:(0, Y.str)`"${e}" keyword is invalid ($data)`};function il(e,t=ve.keywordError,r,n){let{it:s}=e,{gen:o,compositeRule:a,allErrors:i}=s,c=Da(e,t,r);n??(a||i)?qa(o,c):Fa(s,(0, Y._)`[${c}]`);}ve.reportError=il;function ul(e,t=ve.keywordError,r){let{it:n}=e,{gen:s,compositeRule:o,allErrors:a}=n,i=Da(e,t,r);qa(s,i),o||a||Fa(n,be.default.vErrors);}ve.reportExtraError=ul;function cl(e,t){e.assign(be.default.errors,t),e.if((0, Y._)`${be.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0, Y._)`${be.default.vErrors}.length`,t),()=>e.assign(be.default.vErrors,null)));}ve.resetErrorsCount=cl;function dl({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,be.default.errors,i=>{e.const(a,(0, Y._)`${be.default.vErrors}[${i}]`),e.if((0, Y._)`${a}.instancePath === undefined`,()=>e.assign((0, Y._)`${a}.instancePath`,(0, Y.strConcat)(be.default.instancePath,o.errorPath))),e.assign((0, Y._)`${a}.schemaPath`,(0, Y.str)`${o.errSchemaPath}/${t}`),o.opts.verbose&&(e.assign((0, Y._)`${a}.schema`,r),e.assign((0, Y._)`${a}.data`,n));});}ve.extendErrors=dl;function qa(e,t){let r=e.const("err",t);e.if((0, Y._)`${be.default.vErrors} === null`,()=>e.assign(be.default.vErrors,(0, Y._)`[${r}]`),(0, Y._)`${be.default.vErrors}.push(${r})`),e.code((0, Y._)`${be.default.errors}++`);}function Fa(e,t){let{gen:r,validateName:n,schemaEnv:s}=e;s.$async?r.throw((0, Y._)`new ${e.ValidationError}(${t})`):(r.assign((0, Y._)`${n}.errors`,t),r.return(false));}var Et={keyword:new Y.Name("keyword"),schemaPath:new Y.Name("schemaPath"),params:new Y.Name("params"),propertyName:new Y.Name("propertyName"),message:new Y.Name("message"),schema:new Y.Name("schema"),parentSchema:new Y.Name("parentSchema")};function Da(e,t,r){let{createErrors:n}=e.it;return n===false?(0, Y._)`{}`:ll(e,t,r)}function ll(e,t,r={}){let{gen:n,it:s}=e,o=[fl(s,r),pl(e,r)];return ml(e,t,o),n.object(...o)}function fl({errorPath:e},{instancePath:t}){let r=t?(0, Y.str)`${e}${(0, Zr.getErrorPath)(t,Zr.Type.Str)}`:e;return [be.default.instancePath,(0, Y.strConcat)(be.default.instancePath,r)]}function pl({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let s=n?t:(0, Y.str)`${t}/${e}`;return r&&(s=(0, Y.str)`${s}${(0, Zr.getErrorPath)(r,Zr.Type.Str)}`),[Et.schemaPath,s]}function ml(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([Et.keyword,s],[Et.params,typeof t=="function"?t(e):t||(0, Y._)`{}`]),c.messages&&n.push([Et.message,typeof r=="function"?r(e):r]),c.verbose&&n.push([Et.schema,a],[Et.parentSchema,(0, Y._)`${d}${l}`],[be.default.data,o]),u&&n.push([Et.propertyName,u]);}});var La=T(Lt=>{Object.defineProperty(Lt,"__esModule",{value:true});Lt.boolOrEmptySchema=Lt.topBoolOrEmptySchema=void 0;var gl=cr(),hl=U(),yl=et(),vl={message:"boolean schema is false"};function Sl(e){let{gen:t,schema:r,validateName:n}=e;r===false?Ma(e,false):typeof r=="object"&&r.$async===true?t.return(yl.default.data):(t.assign((0, hl._)`${n}.errors`,null),t.return(true));}Lt.topBoolOrEmptySchema=Sl;function kl(e,t){let{gen:r,schema:n}=e;n===false?(r.var(t,false),Ma(e)):r.var(t,true);}Lt.boolOrEmptySchema=kl;function Ma(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, gl.reportError)(s,vl,void 0,t);}});var vs=T(Vt=>{Object.defineProperty(Vt,"__esModule",{value:true});Vt.getRules=Vt.isJSONType=void 0;var wl=["string","number","integer","boolean","null","object","array"],bl=new Set(wl);function _l(e){return typeof e=="string"&&bl.has(e)}Vt.isJSONType=_l;function Rl(){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:{}}}Vt.getRules=Rl;});var Ss=T(ut=>{Object.defineProperty(ut,"__esModule",{value:true});ut.shouldUseRule=ut.shouldUseGroup=ut.schemaHasRulesForType=void 0;function Cl({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==true&&Va(e,n)}ut.schemaHasRulesForType=Cl;function Va(e,t){return t.rules.some(r=>Ba(e,r))}ut.shouldUseGroup=Va;function Ba(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))}ut.shouldUseRule=Ba;});var dr=T(Se=>{Object.defineProperty(Se,"__esModule",{value:true});Se.reportTypeError=Se.checkDataTypes=Se.checkDataType=Se.coerceAndCheckDataType=Se.getJSONTypes=Se.getSchemaTypes=Se.DataType=void 0;var El=vs(),$l=Ss(),xl=cr(),G=U(),Ga=W(),Bt;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong";})(Bt||(Se.DataType=Bt={}));function Tl(e){let t=Ka(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}Se.getSchemaTypes=Tl;function Ka(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(El.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}Se.getJSONTypes=Ka;function Al(e,t){let{gen:r,data:n,opts:s}=e,o=Il(t,s.coerceTypes),a=t.length>0&&!(o.length===0&&t.length===1&&(0, $l.schemaHasRulesForType)(e,t[0]));if(a){let i=ws(t,n,s.strictNumbers,Bt.Wrong);r.if(i,()=>{o.length?Pl(e,t,o):bs(e);});}return a}Se.coerceAndCheckDataType=Al;var Ua=new Set(["string","number","integer","boolean","null"]);function Il(e,t){return t?e.filter(r=>Ua.has(r)||t==="array"&&r==="array"):[]}function Pl(e,t,r){let{gen:n,data:s,opts:o}=e,a=n.let("dataType",(0, G._)`typeof ${s}`),i=n.let("coerced",(0, G._)`undefined`);o.coerceTypes==="array"&&n.if((0, G._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0, G._)`${s}[0]`).assign(a,(0, G._)`typeof ${s}`).if(ws(t,s,o.strictNumbers),()=>n.assign(i,s))),n.if((0, G._)`${i} !== undefined`);for(let u of r)(Ua.has(u)||u==="array"&&o.coerceTypes==="array")&&c(u);n.else(),bs(e),n.endIf(),n.if((0, G._)`${i} !== undefined`,()=>{n.assign(s,i),jl(e,i);});function c(u){switch(u){case "string":n.elseIf((0, G._)`${a} == "number" || ${a} == "boolean"`).assign(i,(0, G._)`"" + ${s}`).elseIf((0, G._)`${s} === null`).assign(i,(0, G._)`""`);return;case "number":n.elseIf((0, G._)`${a} == "boolean" || ${s} === null
|
|
3
|
+
|| (${a} == "string" && ${s} && ${s} == +${s})`).assign(i,(0, G._)`+${s}`);return;case "integer":n.elseIf((0, G._)`${a} === "boolean" || ${s} === null
|
|
4
|
+
|| (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(i,(0, G._)`+${s}`);return;case "boolean":n.elseIf((0, G._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(i,false).elseIf((0, G._)`${s} === "true" || ${s} === 1`).assign(i,true);return;case "null":n.elseIf((0, G._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(i,null);return;case "array":n.elseIf((0, G._)`${a} === "string" || ${a} === "number"
|
|
5
|
+
|| ${a} === "boolean" || ${s} === null`).assign(i,(0, G._)`[${s}]`);}}}function jl({gen:e,parentData:t,parentDataProperty:r},n){e.if((0, G._)`${t} !== undefined`,()=>e.assign((0, G._)`${t}[${r}]`,n));}function ks(e,t,r,n=Bt.Correct){let s=n===Bt.Correct?G.operators.EQ:G.operators.NEQ,o;switch(e){case "null":return (0, G._)`${t} ${s} null`;case "array":o=(0, G._)`Array.isArray(${t})`;break;case "object":o=(0, G._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case "integer":o=a((0, G._)`!(${t} % 1) && !isNaN(${t})`);break;case "number":o=a();break;default:return (0, G._)`typeof ${t} ${s} ${e}`}return n===Bt.Correct?o:(0, G.not)(o);function a(i=G.nil){return (0, G.and)((0, G._)`typeof ${t} == "number"`,i,r?(0, G._)`isFinite(${t})`:G.nil)}}Se.checkDataType=ks;function ws(e,t,r,n){if(e.length===1)return ks(e[0],t,r,n);let s,o=(0, Ga.toHash)(e);if(o.array&&o.object){let a=(0, G._)`typeof ${t} != "object"`;s=o.null?a:(0, G._)`!${t} || ${a}`,delete o.null,delete o.array,delete o.object;}else s=G.nil;o.number&&delete o.integer;for(let a in o)s=(0, G.and)(s,ks(a,t,r,n));return s}Se.checkDataTypes=ws;var Ol={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0, G._)`{type: ${e}}`:(0, G._)`{type: ${t}}`};function bs(e){let t=Nl(e);(0, xl.reportError)(t,Ol);}Se.reportTypeError=bs;function Nl(e){let{gen:t,data:r,schema:n}=e,s=(0, Ga.schemaRefOrVal)(e,n,"type");return {gen:t,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:e}}});var za=T(en=>{Object.defineProperty(en,"__esModule",{value:true});en.assignDefaults=void 0;var Gt=U(),ql=W();function Fl(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let s in r)Ja(e,s,r[s].default);else t==="array"&&Array.isArray(n)&&n.forEach((s,o)=>Ja(e,o,s.default));}en.assignDefaults=Fl;function Ja(e,t,r){let{gen:n,compositeRule:s,data:o,opts:a}=e;if(r===void 0)return;let i=(0, Gt._)`${o}${(0, Gt.getProperty)(t)}`;if(s){(0, ql.checkStrictMode)(e,`default is ignored for: ${i}`);return}let c=(0, Gt._)`${i} === undefined`;a.useDefaults==="empty"&&(c=(0, Gt._)`${c} || ${i} === null || ${i} === ""`),n.if(c,(0, Gt._)`${i} = ${(0, Gt.stringify)(r)}`);}});var qe=T(ne=>{Object.defineProperty(ne,"__esModule",{value:true});ne.validateUnion=ne.validateArray=ne.usePattern=ne.callValidateCode=ne.schemaProperties=ne.allSchemaProperties=ne.noPropertyInData=ne.propertyInData=ne.isOwnProperty=ne.hasPropFunc=ne.reportMissingProp=ne.checkMissingProp=ne.checkReportMissingProp=void 0;var ae=U(),_s=W(),ct=et(),Dl=W();function Ml(e,t){let{gen:r,data:n,it:s}=e;r.if(Cs(r,n,t,s.opts.ownProperties),()=>{e.setParams({missingProperty:(0, ae._)`${t}`},true),e.error();});}ne.checkReportMissingProp=Ml;function Ll({gen:e,data:t,it:{opts:r}},n,s){return (0, ae.or)(...n.map(o=>(0, ae.and)(Cs(e,t,o,r.ownProperties),(0, ae._)`${s} = ${o}`)))}ne.checkMissingProp=Ll;function Vl(e,t){e.setParams({missingProperty:t},true),e.error();}ne.reportMissingProp=Vl;function Ha(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0, ae._)`Object.prototype.hasOwnProperty`})}ne.hasPropFunc=Ha;function Rs(e,t,r){return (0, ae._)`${Ha(e)}.call(${t}, ${r})`}ne.isOwnProperty=Rs;function Bl(e,t,r,n){let s=(0, ae._)`${t}${(0, ae.getProperty)(r)} !== undefined`;return n?(0, ae._)`${s} && ${Rs(e,t,r)}`:s}ne.propertyInData=Bl;function Cs(e,t,r,n){let s=(0, ae._)`${t}${(0, ae.getProperty)(r)} === undefined`;return n?(0, ae.or)(s,(0, ae.not)(Rs(e,t,r))):s}ne.noPropertyInData=Cs;function Wa(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}ne.allSchemaProperties=Wa;function Gl(e,t){return Wa(t).filter(r=>!(0, _s.alwaysValidSchema)(e,t[r]))}ne.schemaProperties=Gl;function Kl({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=[[ct.default.instancePath,(0, ae.strConcat)(ct.default.instancePath,o)],[ct.default.parentData,a.parentData],[ct.default.parentDataProperty,a.parentDataProperty],[ct.default.rootData,ct.default.rootData]];a.opts.dynamicRef&&l.push([ct.default.dynamicAnchors,ct.default.dynamicAnchors]);let m=(0, ae._)`${d}, ${r.object(...l)}`;return c!==ae.nil?(0, ae._)`${i}.call(${c}, ${m})`:(0, ae._)`${i}(${m})`}ne.callValidateCode=Kl;var Ul=(0, ae._)`new RegExp`;function Jl({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"?Ul:(0, Dl.useFunc)(e,s)}(${r}, ${n})`})}ne.usePattern=Jl;function zl(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:_s.Type.Num},o),t.if((0, ae.not)(o),i);});}}ne.validateArray=zl;function Hl(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, _s.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));}ne.validateUnion=Hl;});var Qa=T(ze=>{Object.defineProperty(ze,"__esModule",{value:true});ze.validateKeywordUsage=ze.validSchemaType=ze.funcKeywordCode=ze.macroKeywordCode=void 0;var _e=U(),$t=et(),Wl=qe(),Yl=cr();function Xl(e,t){let{gen:r,keyword:n,schema:s,parentSchema:o,it:a}=e,i=t.macro.call(a.self,s,o,a),c=Xa(r,n,i);a.opts.validateSchema!==false&&a.self.validateSchema(i,true);let u=r.name("valid");e.subschema({schema:i,schemaPath:_e.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:true},u),e.pass(u,()=>e.error(true));}ze.macroKeywordCode=Xl;function Ql(e,t){var r;let{gen:n,keyword:s,schema:o,parentSchema:a,$data:i,it:c}=e;ef(c,t);let u=!i&&t.compile?t.compile.call(c.self,o,a,c):t.validate,d=Xa(n,s,u),l=n.let("valid");e.block$data(l,m),e.ok((r=t.valid)!==null&&r!==void 0?r:l);function m(){if(t.errors===false)p(),t.modifying&&Ya(e),S(()=>e.error());else {let _=t.async?g():f();t.modifying&&Ya(e),S(()=>Zl(e,_));}}function g(){let _=n.let("ruleErrs",null);return n.try(()=>p((0, _e._)`await `),w=>n.assign(l,false).if((0, _e._)`${w} instanceof ${c.ValidationError}`,()=>n.assign(_,(0, _e._)`${w}.errors`),()=>n.throw(w))),_}function f(){let _=(0, _e._)`${d}.errors`;return n.assign(_,null),p(_e.nil),_}function p(_=t.async?(0, _e._)`await `:_e.nil){let w=c.opts.passContext?$t.default.this:$t.default.self,R=!("compile"in t&&!i||t.schema===false);n.assign(l,(0, _e._)`${_}${(0, Wl.callValidateCode)(e,d,w,R)}`,t.modifying);}function S(_){var w;n.if((0, _e.not)((w=t.valid)!==null&&w!==void 0?w:l),_);}}ze.funcKeywordCode=Ql;function Ya(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0, _e._)`${n.parentData}[${n.parentDataProperty}]`));}function Zl(e,t){let{gen:r}=e;r.if((0, _e._)`Array.isArray(${t})`,()=>{r.assign($t.default.vErrors,(0, _e._)`${$t.default.vErrors} === null ? ${t} : ${$t.default.vErrors}.concat(${t})`).assign($t.default.errors,(0, _e._)`${$t.default.vErrors}.length`),(0, Yl.extendErrors)(e);},()=>e.error());}function ef({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function Xa(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, _e.stringify)(r)})}function tf(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")}ze.validSchemaType=tf;function rf({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)}}ze.validateKeywordUsage=rf;});var ei=T(dt=>{Object.defineProperty(dt,"__esModule",{value:true});dt.extendSubschemaMode=dt.extendSubschemaData=dt.getSubschema=void 0;var He=U(),Za=W();function nf(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, He._)`${e.schemaPath}${(0, He.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:i[r],schemaPath:(0, He._)`${e.schemaPath}${(0, He.getProperty)(t)}${(0, He.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0, Za.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')}dt.getSubschema=nf;function sf(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,m=i.let("data",(0, He._)`${t.data}${(0, He.getProperty)(r)}`,true);c(m),e.errorPath=(0, He.str)`${u}${(0, Za.getErrorPath)(r,n,l.jsPropertySyntax)}`,e.parentDataProperty=(0, He._)`${r}`,e.dataPathArr=[...d,e.parentDataProperty];}if(s!==void 0){let u=s instanceof He.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];}}dt.extendSubschemaData=sf;function of(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;}dt.extendSubschemaMode=of;});var Es=T((sv,ti)=>{ti.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 ni=T((ov,ri)=>{var lt=ri.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(){};tn(t,n,s,e,"",e);};lt.keywords={additionalItems:true,items:true,contains:true,additionalProperties:true,propertyNames:true,not:true,if:true,then:true,else:true};lt.arrayKeywords={items:true,allOf:true,anyOf:true,oneOf:true};lt.propsKeywords={$defs:true,definitions:true,properties:true,patternProperties:true,dependencies:true};lt.skipKeywords={default:true,enum:true,const:true,required:true,maximum:true,minimum:true,exclusiveMaximum:true,exclusiveMinimum:true,multipleOf:true,maxLength:true,minLength:true,pattern:true,format:true,maxItems:true,minItems:true,uniqueItems:true,maxProperties:true,minProperties:true};function tn(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 lt.arrayKeywords)for(var m=0;m<l.length;m++)tn(e,t,r,l[m],s+"/"+d+"/"+m,o,s,d,n,m);}else if(d in lt.propsKeywords){if(l&&typeof l=="object")for(var g in l)tn(e,t,r,l[g],s+"/"+d+"/"+af(g),o,s,d,n,g);}else (d in lt.keywords||e.allKeys&&!(d in lt.skipKeywords))&&tn(e,t,r,l,s+"/"+d,o,s,d,n);}r(n,s,o,a,i,c,u);}}function af(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var lr=T(Te=>{Object.defineProperty(Te,"__esModule",{value:true});Te.getSchemaRefs=Te.resolveUrl=Te.normalizeId=Te._getFullPath=Te.getFullPath=Te.inlineRef=void 0;var uf=W(),cf=Es(),df=ni(),lf=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function ff(e,t=true){return typeof e=="boolean"?true:t===true?!$s(e):t?si(e)<=t:false}Te.inlineRef=ff;var pf=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function $s(e){for(let t in e){if(pf.has(t))return true;let r=e[t];if(Array.isArray(r)&&r.some($s)||typeof r=="object"&&$s(r))return true}return false}function si(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!lf.has(r)&&(typeof e[r]=="object"&&(0, uf.eachItem)(e[r],n=>t+=si(n)),t===1/0))return 1/0}return t}function oi(e,t="",r){r!==false&&(t=Kt(t));let n=e.parse(t);return ai(e,n)}Te.getFullPath=oi;function ai(e,t){return e.serialize(t).split("#")[0]+"#"}Te._getFullPath=ai;var mf=/#\/?$/;function Kt(e){return e?e.replace(mf,""):""}Te.normalizeId=Kt;function gf(e,t,r){return r=Kt(r),e.resolve(t,r)}Te.resolveUrl=gf;var hf=/^[a-z_][-a-z0-9._]*$/i;function yf(e,t){if(typeof e=="boolean")return {};let{schemaId:r,uriResolver:n}=this.opts,s=Kt(e[r]||t),o={"":s},a=oi(n,s,false),i={},c=new Set;return df(e,{allKeys:true},(l,m,g,f)=>{if(f===void 0)return;let p=a+m,S=o[f];typeof l[r]=="string"&&(S=_.call(this,l[r])),w.call(this,l.$anchor),w.call(this,l.$dynamicAnchor),o[m]=S;function _(R){let j=this.opts.uriResolver.resolve;if(R=Kt(S?j(S,R):R),c.has(R))throw d(R);c.add(R);let y=this.refs[R];return typeof y=="string"&&(y=this.refs[y]),typeof y=="object"?u(l,y.schema,R):R!==Kt(p)&&(R[0]==="#"?(u(l,i[R],R),i[R]=l):this.refs[R]=p),R}function w(R){if(typeof R=="string"){if(!hf.test(R))throw new Error(`invalid anchor "${R}"`);_.call(this,`#${R}`);}}}),i;function u(l,m,g){if(m!==void 0&&!cf(l,m))throw d(g)}function d(l){return new Error(`reference "${l}" resolves to more than one schema`)}}Te.getSchemaRefs=yf;});var mr=T(ft=>{Object.defineProperty(ft,"__esModule",{value:true});ft.getData=ft.KeywordCxt=ft.validateFunctionCode=void 0;var li=La(),ii=dr(),Ts=Ss(),rn=dr(),vf=za(),pr=Qa(),xs=ei(),P=U(),L=et(),Sf=lr(),tt=W(),fr=cr();function kf(e){if(mi(e)&&(gi(e),pi(e))){_f(e);return}fi(e,()=>(0, li.topBoolOrEmptySchema)(e));}ft.validateFunctionCode=kf;function fi({gen:e,validateName:t,schema:r,schemaEnv:n,opts:s},o){s.code.es5?e.func(t,(0, P._)`${L.default.data}, ${L.default.valCxt}`,n.$async,()=>{e.code((0, P._)`"use strict"; ${ui(r,s)}`),bf(e,s),e.code(o);}):e.func(t,(0, P._)`${L.default.data}, ${wf(s)}`,n.$async,()=>e.code(ui(r,s)).code(o));}function wf(e){return (0, P._)`{${L.default.instancePath}="", ${L.default.parentData}, ${L.default.parentDataProperty}, ${L.default.rootData}=${L.default.data}${e.dynamicRef?(0, P._)`, ${L.default.dynamicAnchors}={}`:P.nil}}={}`}function bf(e,t){e.if(L.default.valCxt,()=>{e.var(L.default.instancePath,(0, P._)`${L.default.valCxt}.${L.default.instancePath}`),e.var(L.default.parentData,(0, P._)`${L.default.valCxt}.${L.default.parentData}`),e.var(L.default.parentDataProperty,(0, P._)`${L.default.valCxt}.${L.default.parentDataProperty}`),e.var(L.default.rootData,(0, P._)`${L.default.valCxt}.${L.default.rootData}`),t.dynamicRef&&e.var(L.default.dynamicAnchors,(0, P._)`${L.default.valCxt}.${L.default.dynamicAnchors}`);},()=>{e.var(L.default.instancePath,(0, P._)`""`),e.var(L.default.parentData,(0, P._)`undefined`),e.var(L.default.parentDataProperty,(0, P._)`undefined`),e.var(L.default.rootData,L.default.data),t.dynamicRef&&e.var(L.default.dynamicAnchors,(0, P._)`{}`);});}function _f(e){let{schema:t,opts:r,gen:n}=e;fi(e,()=>{r.$comment&&t.$comment&&yi(e),xf(e),n.let(L.default.vErrors,null),n.let(L.default.errors,0),r.unevaluated&&Rf(e),hi(e),If(e);});}function Rf(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0, P._)`${r}.evaluated`),t.if((0, P._)`${e.evaluated}.dynamicProps`,()=>t.assign((0, P._)`${e.evaluated}.props`,(0, P._)`undefined`)),t.if((0, P._)`${e.evaluated}.dynamicItems`,()=>t.assign((0, P._)`${e.evaluated}.items`,(0, P._)`undefined`));}function ui(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0, P._)`/*# sourceURL=${r} */`:P.nil}function Cf(e,t){if(mi(e)&&(gi(e),pi(e))){Ef(e,t);return}(0, li.boolOrEmptySchema)(e,t);}function pi({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 mi(e){return typeof e.schema!="boolean"}function Ef(e,t){let{schema:r,gen:n,opts:s}=e;s.$comment&&r.$comment&&yi(e),Tf(e),Af(e);let o=n.const("_errs",L.default.errors);hi(e,o),n.var(t,(0, P._)`${o} === ${L.default.errors}`);}function gi(e){(0, tt.checkUnknownRules)(e),$f(e);}function hi(e,t){if(e.opts.jtd)return ci(e,[],false,t);let r=(0, ii.getSchemaTypes)(e.schema),n=(0, ii.coerceAndCheckDataType)(e,r);ci(e,r,!n,t);}function $f(e){let{schema:t,errSchemaPath:r,opts:n,self:s}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0, tt.schemaHasRulesButRef)(t,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`);}function xf(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0, tt.checkStrictMode)(e,"default is ignored in the schema root");}function Tf(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0, Sf.resolveUrl)(e.opts.uriResolver,e.baseId,t));}function Af(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function yi({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:s}){let o=r.$comment;if(s.$comment===true)e.code((0, P._)`${L.default.self}.logger.log(${o})`);else if(typeof s.$comment=="function"){let a=(0, P.str)`${n}/$comment`,i=e.scopeValue("root",{ref:t.root});e.code((0, P._)`${L.default.self}.opts.$comment(${o}, ${a}, ${i}.schema)`);}}function If(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:s,opts:o}=e;r.$async?t.if((0, P._)`${L.default.errors} === 0`,()=>t.return(L.default.data),()=>t.throw((0, P._)`new ${s}(${L.default.vErrors})`)):(t.assign((0, P._)`${n}.errors`,L.default.vErrors),o.unevaluated&&Pf(e),t.return((0, P._)`${L.default.errors} === 0`));}function Pf({gen:e,evaluated:t,props:r,items:n}){r instanceof P.Name&&e.assign((0, P._)`${t}.props`,r),n instanceof P.Name&&e.assign((0, P._)`${t}.items`,n);}function ci(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, tt.schemaHasRulesButRef)(o,d))){s.block(()=>Si(e,"$ref",d.all.$ref.definition));return}c.jtd||jf(e,t),s.block(()=>{for(let m of d.rules)l(m);l(d.post);});function l(m){(0, Ts.shouldUseGroup)(o,m)&&(m.type?(s.if((0, rn.checkDataType)(m.type,a,c.strictNumbers)),di(e,m),t.length===1&&t[0]===m.type&&r&&(s.else(),(0, rn.reportTypeError)(e)),s.endIf()):di(e,m),i||s.if((0, P._)`${L.default.errors} === ${n||0}`));}}function di(e,t){let{gen:r,schema:n,opts:{useDefaults:s}}=e;s&&(0, vf.assignDefaults)(e,t.type),r.block(()=>{for(let o of t.rules)(0, Ts.shouldUseRule)(n,o)&&Si(e,o.keyword,o.definition,t.type);});}function jf(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(Of(e,t),e.opts.allowUnionTypes||Nf(e,t),qf(e,e.dataTypes));}function Of(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{vi(e.dataTypes,r)||As(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`);}),Df(e,t);}}function Nf(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&As(e,"use allowUnionTypes to allow union type keyword");}function qf(e,t){let r=e.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0, Ts.shouldUseRule)(e.schema,s)){let{type:o}=s.definition;o.length&&!o.some(a=>Ff(t,a))&&As(e,`missing type "${o.join(",")}" for keyword "${n}"`);}}}function Ff(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function vi(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function Df(e,t){let r=[];for(let n of e.dataTypes)vi(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r;}function As(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0, tt.checkStrictMode)(e,t,e.opts.strictTypes);}var nn=class{constructor(t,r,n){if((0, pr.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, tt.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",ki(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0, pr.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",L.default.errors));}result(t,r,n){this.failResult((0, P.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, P.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, P._)`${r} !== undefined && (${(0, P.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?fr.reportExtraError:fr.reportError)(this,this.def.error,r);}$dataError(){(0, fr.reportError)(this,this.def.$dataError||fr.keyword$DataError);}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0, fr.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=P.nil){this.gen.block(()=>{this.check$data(t,n),r();});}check$data(t=P.nil,r=P.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:o,def:a}=this;n.if((0, P.or)((0, P._)`${s} === undefined`,r)),t!==P.nil&&n.assign(t,true),(o.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==P.nil&&n.assign(t,false)),n.else();}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:s,it:o}=this;return (0, P.or)(a(),i());function a(){if(n.length){if(!(r instanceof P.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return (0, P._)`${(0, rn.checkDataTypes)(c,r,o.opts.strictNumbers,rn.DataType.Wrong)}`}return P.nil}function i(){if(s.validateSchema){let c=t.scopeValue("validate$data",{ref:s.validateSchema});return (0, P._)`!${c}(${r})`}return P.nil}}subschema(t,r){let n=(0, xs.getSubschema)(this.it,t);(0, xs.extendSubschemaData)(n,this.it,t),(0, xs.extendSubschemaMode)(n,t);let s={...this.it,...n,items:void 0,props:void 0};return Cf(s,r),s}mergeEvaluated(t,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==true&&t.props!==void 0&&(n.props=tt.mergeEvaluated.props(s,t.props,n.props,r)),n.items!==true&&t.items!==void 0&&(n.items=tt.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,P.Name)),true}};ft.KeywordCxt=nn;function Si(e,t,r,n){let s=new nn(e,r,t);"code"in r?r.code(s,n):s.$data&&r.validate?(0, pr.funcKeywordCode)(s,r):"macro"in r?(0, pr.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0, pr.funcKeywordCode)(s,r);}var Mf=/^\/(?:[^~]|~0|~1)*$/,Lf=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function ki(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let s,o;if(e==="")return L.default.rootData;if(e[0]==="/"){if(!Mf.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);s=e,o=L.default.rootData;}else {let u=Lf.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, P._)`${o}${(0, P.getProperty)((0, tt.unescapeJsonPointer)(u))}`,a=(0, P._)`${a} && ${o}`);return a;function c(u,d){return `Cannot access ${u} ${d} levels up, current level is ${t}`}}ft.getData=ki;});var sn=T(Ps=>{Object.defineProperty(Ps,"__esModule",{value:true});var Is=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=true;}};Ps.default=Is;});var gr=T(Ns=>{Object.defineProperty(Ns,"__esModule",{value:true});var js=lr(),Os=class extends Error{constructor(t,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0, js.resolveUrl)(t,r,n),this.missingSchema=(0, js.normalizeId)((0, js.getFullPath)(t,this.missingRef));}};Ns.default=Os;});var an=T(Fe=>{Object.defineProperty(Fe,"__esModule",{value:true});Fe.resolveSchema=Fe.getCompilingSchema=Fe.resolveRef=Fe.compileSchema=Fe.SchemaEnv=void 0;var Ke=U(),Vf=sn(),xt=et(),Ue=lr(),wi=W(),Bf=mr(),Ut=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, Ue.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={};}};Fe.SchemaEnv=Ut;function Fs(e){let t=bi.call(this,e);if(t)return t;let r=(0, Ue.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:o}=this.opts,a=new Ke.CodeGen(this.scope,{es5:n,lines:s,ownProperties:o}),i;e.$async&&(i=a.scopeValue("Error",{ref:Vf.default,code:(0, Ke._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");e.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:xt.default.data,parentData:xt.default.parentData,parentDataProperty:xt.default.parentDataProperty,dataNames:[xt.default.data],dataPathArr:[Ke.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===true?{ref:e.schema,code:(0, Ke.stringify)(e.schema)}:{ref:e.schema}),validateName:c,ValidationError:i,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:Ke.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0, Ke._)`""`,opts:this.opts,self:this},d;try{this._compilations.add(e),(0,Bf.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let l=a.toString();d=`${a.scopeRefs(xt.default.scope)}return ${l}`,this.opts.code.process&&(d=this.opts.code.process(d,e));let g=new Function(`${xt.default.self}`,`${xt.default.scope}`,d)(this,this.scope.get());if(this.scope.value(c,{ref:g}),g.errors=null,g.schema=e.schema,g.schemaEnv=e,e.$async&&(g.$async=!0),this.opts.code.source===!0&&(g.source={validateName:c,validateCode:l,scopeValues:a._values}),this.opts.unevaluated){let{props:f,items:p}=u;g.evaluated={props:f instanceof Ke.Name?void 0:f,items:p instanceof Ke.Name?void 0:p,dynamicProps:f instanceof Ke.Name,dynamicItems:p instanceof Ke.Name},g.source&&(g.source.evaluated=(0,Ke.stringify)(g.evaluated));}return e.validate=g,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);}}Fe.compileSchema=Fs;function Gf(e,t,r){var n;r=(0, Ue.resolveUrl)(this.opts.uriResolver,t,r);let s=e.refs[r];if(s)return s;let o=Jf.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 Ut({schema:a,schemaId:i,root:e,baseId:t}));}if(o!==void 0)return e.refs[r]=Kf.call(this,o)}Fe.resolveRef=Gf;function Kf(e){return (0, Ue.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:Fs.call(this,e)}function bi(e){for(let t of this._compilations)if(Uf(t,e))return t}Fe.getCompilingSchema=bi;function Uf(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function Jf(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||on.call(this,e,t)}function on(e,t){let r=this.opts.uriResolver.parse(t),n=(0, Ue._getFullPath)(this.opts.uriResolver,r),s=(0, Ue.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===s)return qs.call(this,r,e);let o=(0, Ue.normalizeId)(n),a=this.refs[o]||this.schemas[o];if(typeof a=="string"){let i=on.call(this,e,a);return typeof i?.schema!="object"?void 0:qs.call(this,r,i)}if(typeof a?.schema=="object"){if(a.validate||Fs.call(this,a),o===(0, Ue.normalizeId)(t)){let{schema:i}=a,{schemaId:c}=this.opts,u=i[c];return u&&(s=(0, Ue.resolveUrl)(this.opts.uriResolver,s,u)),new Ut({schema:i,schemaId:c,root:e,baseId:s})}return qs.call(this,r,a)}}Fe.resolveSchema=on;var zf=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function qs(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, wi.unescapeFragment)(i)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!zf.has(i)&&u&&(t=(0, Ue.resolveUrl)(this.opts.uriResolver,t,u));}let o;if(typeof r!="boolean"&&r.$ref&&!(0, wi.schemaHasRulesButRef)(r,this.RULES)){let i=(0, Ue.resolveUrl)(this.opts.uriResolver,t,r.$ref);o=on.call(this,n,i);}let{schemaId:a}=this.opts;if(o=o||new Ut({schema:r,schemaId:a,root:n,baseId:t}),o.schema!==o.root.schema)return o}});var _i=T((lv,Hf)=>{Hf.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 Ms=T((fv,$i)=>{var Wf=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),Ci=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 Ds(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 Yf=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function Ri(e){return e.length=0,true}function Xf(e,t,r){if(e.length){let n=Ds(e);if(n!=="")t.push(n);else return r.error=true,false;e.length=0;}return true}function Qf(e){let t=0,r={error:false,address:"",zone:""},n=[],s=[],o=false,a=false,i=Xf;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=Ri;}else {s.push(u);continue}}return s.length&&(i===Ri?r.zone=s.join(""):a?n.push(s.join("")):n.push(Ds(s))),r.address=n.join(""),r}function Ei(e){if(Zf(e,":")<2)return {host:e,isIPV6:false};let t=Qf(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 Zf(e,t){let r=0;for(let n=0;n<e.length;n++)e[n]===t&&r++;return r}function ep(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 tp(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 rp(e){let t=[];if(e.userinfo!==void 0&&(t.push(e.userinfo),t.push("@")),e.host!==void 0){let r=unescape(e.host);if(!Ci(r)){let n=Ei(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}$i.exports={nonSimpleDomain:Yf,recomposeAuthority:rp,normalizeComponentEncoding:tp,removeDotSegments:ep,isIPv4:Ci,isUUID:Wf,normalizeIPv6:Ei,stringArrayToHexStripped:Ds};});var Pi=T((pv,Ii)=>{var{isUUID:np}=Ms(),sp=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,op=["http","https","ws","wss","urn","urn:uuid"];function ap(e){return op.indexOf(e)!==-1}function Ls(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 xi(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function Ti(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 ip(e){return e.secure=Ls(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function up(e){if((e.port===(Ls(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 cp(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(sp);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=Vs(s);e.path=void 0,o&&(e=o.parse(e,t));}else e.error=e.error||"URN can not be parsed.";return e}function dp(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=Vs(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 lp(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!np(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function fp(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var Ai={scheme:"http",domainHost:true,parse:xi,serialize:Ti},pp={scheme:"https",domainHost:Ai.domainHost,parse:xi,serialize:Ti},un={scheme:"ws",domainHost:true,parse:ip,serialize:up},mp={scheme:"wss",domainHost:un.domainHost,parse:un.parse,serialize:un.serialize},gp={scheme:"urn",parse:cp,serialize:dp,skipNormalize:true},hp={scheme:"urn:uuid",parse:lp,serialize:fp,skipNormalize:true},cn={http:Ai,https:pp,ws:un,wss:mp,urn:gp,"urn:uuid":hp};Object.setPrototypeOf(cn,null);function Vs(e){return e&&(cn[e]||cn[e.toLowerCase()])||void 0}Ii.exports={wsIsSecure:Ls,SCHEMES:cn,isValidSchemeName:ap,getSchemeHandler:Vs};});var Ni=T((mv,ln)=>{var{normalizeIPv6:yp,removeDotSegments:hr,recomposeAuthority:vp,normalizeComponentEncoding:dn,isIPv4:Sp,nonSimpleDomain:kp}=Ms(),{SCHEMES:wp,getSchemeHandler:ji}=Pi();function bp(e,t){return typeof e=="string"?e=We(rt(e,t),t):typeof e=="object"&&(e=rt(We(e,t),t)),e}function _p(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=Oi(rt(e,n),rt(t,n),n,true);return n.skipEscape=true,We(s,n)}function Oi(e,t,r,n){let s={};return n||(e=rt(We(e,r),r),t=rt(We(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=hr(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=hr(t.path||""),s.query=t.query):(t.path?(t.path[0]==="/"?s.path=hr(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=hr(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 Rp(e,t,r){return typeof e=="string"?(e=unescape(e),e=We(dn(rt(e,r),true),{...r,skipEscape:true})):typeof e=="object"&&(e=We(dn(e,true),{...r,skipEscape:true})),typeof t=="string"?(t=unescape(t),t=We(dn(rt(t,r),true),{...r,skipEscape:true})):typeof t=="object"&&(t=We(dn(t,true),{...r,skipEscape:true})),e.toLowerCase()===t.toLowerCase()}function We(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=ji(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=vp(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=hr(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 Cp=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function rt(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(Cp);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 c=yp(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=ji(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===false&&kp(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 Bs={SCHEMES:wp,normalize:bp,resolve:_p,resolveComponent:Oi,equal:Rp,serialize:We,parse:rt};ln.exports=Bs;ln.exports.default=Bs;ln.exports.fastUri=Bs;});var Fi=T(Gs=>{Object.defineProperty(Gs,"__esModule",{value:true});var qi=Ni();qi.code='require("ajv/dist/runtime/uri").default';Gs.default=qi;});var Ui=T(ge=>{Object.defineProperty(ge,"__esModule",{value:true});ge.CodeGen=ge.Name=ge.nil=ge.stringify=ge.str=ge._=ge.KeywordCxt=void 0;var Ep=mr();Object.defineProperty(ge,"KeywordCxt",{enumerable:true,get:function(){return Ep.KeywordCxt}});var Jt=U();Object.defineProperty(ge,"_",{enumerable:true,get:function(){return Jt._}});Object.defineProperty(ge,"str",{enumerable:true,get:function(){return Jt.str}});Object.defineProperty(ge,"stringify",{enumerable:true,get:function(){return Jt.stringify}});Object.defineProperty(ge,"nil",{enumerable:true,get:function(){return Jt.nil}});Object.defineProperty(ge,"Name",{enumerable:true,get:function(){return Jt.Name}});Object.defineProperty(ge,"CodeGen",{enumerable:true,get:function(){return Jt.CodeGen}});var $p=sn(),Bi=gr(),xp=vs(),yr=an(),Tp=U(),vr=lr(),fn=dr(),Us=W(),Di=_i(),Ap=Fi(),Gi=(e,t)=>new RegExp(e,t);Gi.code="new RegExp";var Ip=["removeAdditional","useDefaults","coerceTypes"],Pp=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),jp={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},Op={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Mi=200;function Np(e){var t,r,n,s,o,a,i,c,u,d,l,m,g,f,p,S,_,w,R,j,y,h,k,C,E;let x=e.strict,I=(t=e.code)===null||t===void 0?void 0:t.optimize,F=I===true||I===void 0?1:I||0,N=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Gi,fe=(s=e.uriResolver)!==null&&s!==void 0?s:Ap.default;return {strictSchema:(a=(o=e.strictSchema)!==null&&o!==void 0?o:x)!==null&&a!==void 0?a:true,strictNumbers:(c=(i=e.strictNumbers)!==null&&i!==void 0?i:x)!==null&&c!==void 0?c:true,strictTypes:(d=(u=e.strictTypes)!==null&&u!==void 0?u:x)!==null&&d!==void 0?d:"log",strictTuples:(m=(l=e.strictTuples)!==null&&l!==void 0?l:x)!==null&&m!==void 0?m:"log",strictRequired:(f=(g=e.strictRequired)!==null&&g!==void 0?g:x)!==null&&f!==void 0?f:false,code:e.code?{...e.code,optimize:F,regExp:N}:{optimize:F,regExp:N},loopRequired:(p=e.loopRequired)!==null&&p!==void 0?p:Mi,loopEnum:(S=e.loopEnum)!==null&&S!==void 0?S:Mi,meta:(_=e.meta)!==null&&_!==void 0?_:true,messages:(w=e.messages)!==null&&w!==void 0?w:true,inlineRefs:(R=e.inlineRefs)!==null&&R!==void 0?R:true,schemaId:(j=e.schemaId)!==null&&j!==void 0?j:"$id",addUsedSchema:(y=e.addUsedSchema)!==null&&y!==void 0?y:true,validateSchema:(h=e.validateSchema)!==null&&h!==void 0?h:true,validateFormats:(k=e.validateFormats)!==null&&k!==void 0?k:true,unicodeRegExp:(C=e.unicodeRegExp)!==null&&C!==void 0?C:true,int32range:(E=e.int32range)!==null&&E!==void 0?E:true,uriResolver:fe}}var Sr=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...Np(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new Tp.ValueScope({scope:{},prefixes:Pp,es5:r,lines:n}),this.logger=Vp(t.logger);let s=t.validateFormats;t.validateFormats=false,this.RULES=(0, xp.getRules)(),Li.call(this,jp,t,"NOT SUPPORTED"),Li.call(this,Op,t,"DEPRECATED","warn"),this._metaOpts=Mp.call(this),t.formats&&Fp.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&Dp.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),qp.call(this),t.validateFormats=s;}_addVocabularies(){this.addKeyword("$async");}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,s=Di;n==="id"&&(s={...Di},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 m=this._addSchema(d,l);return m.validate||a.call(this,m)}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 Bi.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, vr.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=Vi.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,s=new yr.SchemaEnv({schema:{},schemaId:n});if(r=yr.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=Vi.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, vr.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(Gp.call(this,n,r),!r)return (0, Us.eachItem)(n,o=>Ks.call(this,o)),this;Up.call(this,r);let s={...r,type:(0, fn.getJSONTypes)(r.type),schemaType:(0, fn.getJSONTypes)(r.schemaType)};return (0, Us.eachItem)(n,s.type.length===0?o=>Ks.call(this,o,s):o=>s.type.forEach(a=>Ks.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]=Ki(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, vr.normalizeId)(a||n);let u=vr.getSchemaRefs.call(this,t,n);return c=new yr.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):yr.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{yr.compileSchema.call(this,t);}finally{this.opts=r;}}};Sr.ValidationError=$p.default;Sr.MissingRefError=Bi.default;ge.default=Sr;function Li(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 Vi(e){return e=(0, vr.normalizeId)(e),this.schemas[e]||this.refs[e]}function qp(){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 Fp(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t);}}function Dp(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r);}}function Mp(){let e={...this.opts};for(let t of Ip)delete e[t];return e}var Lp={log(){},warn(){},error(){}};function Vp(e){if(e===false)return Lp;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 Bp=/^[a-z_$][a-z0-9_$:-]*$/i;function Gp(e,t){let{RULES:r}=this;if((0, Us.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!Bp.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 Ks(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, fn.getJSONTypes)(t.type),schemaType:(0, fn.getJSONTypes)(t.schemaType)}};t.before?Kp.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 Kp(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 Up(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=Ki(t)),e.validateSchema=this.compile(t,true));}var Jp={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Ki(e){return {anyOf:[e,Jp]}}});var Ji=T(Js=>{Object.defineProperty(Js,"__esModule",{value:true});var zp={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Js.default=zp;});var Yi=T(Tt=>{Object.defineProperty(Tt,"__esModule",{value:true});Tt.callRef=Tt.getValidate=void 0;var Hp=gr(),zi=qe(),Ae=U(),zt=et(),Hi=an(),pn=W(),Wp={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=Hi.resolveRef.call(c,u,s,r);if(d===void 0)throw new Hp.default(n.opts.uriResolver,s,r);if(d instanceof Hi.SchemaEnv)return m(d);return g(d);function l(){if(o===u)return mn(e,a,o,o.$async);let f=t.scopeValue("root",{ref:u});return mn(e,(0, Ae._)`${f}.validate`,u,u.$async)}function m(f){let p=Wi(e,f);mn(e,p,f,f.$async);}function g(f){let p=t.scopeValue("schema",i.code.source===true?{ref:f,code:(0, Ae.stringify)(f)}:{ref:f}),S=t.name("valid"),_=e.subschema({schema:f,dataTypes:[],schemaPath:Ae.nil,topSchemaRef:p,errSchemaPath:r},S);e.mergeEvaluated(_),e.ok(S);}}};function Wi(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0, Ae._)`${r.scopeValue("wrapper",{ref:t})}.validate`}Tt.getValidate=Wi;function mn(e,t,r,n){let{gen:s,it:o}=e,{allErrors:a,schemaEnv:i,opts:c}=o,u=c.passContext?zt.default.this:Ae.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, Ae._)`await ${(0, zi.callValidateCode)(e,t,u)}`),g(t),a||s.assign(f,true);},p=>{s.if((0, Ae._)`!(${p} instanceof ${o.ValidationError})`,()=>s.throw(p)),m(p),a||s.assign(f,false);}),e.ok(f);}function l(){e.result((0, zi.callValidateCode)(e,t,u),()=>g(t),()=>m(t));}function m(f){let p=(0, Ae._)`${f}.errors`;s.assign(zt.default.vErrors,(0, Ae._)`${zt.default.vErrors} === null ? ${p} : ${zt.default.vErrors}.concat(${p})`),s.assign(zt.default.errors,(0, Ae._)`${zt.default.vErrors}.length`);}function g(f){var p;if(!o.opts.unevaluated)return;let S=(p=r?.validate)===null||p===void 0?void 0:p.evaluated;if(o.props!==true)if(S&&!S.dynamicProps)S.props!==void 0&&(o.props=pn.mergeEvaluated.props(s,S.props,o.props));else {let _=s.var("props",(0, Ae._)`${f}.evaluated.props`);o.props=pn.mergeEvaluated.props(s,_,o.props,Ae.Name);}if(o.items!==true)if(S&&!S.dynamicItems)S.items!==void 0&&(o.items=pn.mergeEvaluated.items(s,S.items,o.items));else {let _=s.var("items",(0, Ae._)`${f}.evaluated.items`);o.items=pn.mergeEvaluated.items(s,_,o.items,Ae.Name);}}}Tt.callRef=mn;Tt.default=Wp;});var Xi=T(zs=>{Object.defineProperty(zs,"__esModule",{value:true});var Yp=Ji(),Xp=Yi(),Qp=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",Yp.default,Xp.default];zs.default=Qp;});var Qi=T(Hs=>{Object.defineProperty(Hs,"__esModule",{value:true});var gn=U(),pt=gn.operators,hn={maximum:{okStr:"<=",ok:pt.LTE,fail:pt.GT},minimum:{okStr:">=",ok:pt.GTE,fail:pt.LT},exclusiveMaximum:{okStr:"<",ok:pt.LT,fail:pt.GTE},exclusiveMinimum:{okStr:">",ok:pt.GT,fail:pt.LTE}},Zp={message:({keyword:e,schemaCode:t})=>(0, gn.str)`must be ${hn[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0, gn._)`{comparison: ${hn[e].okStr}, limit: ${t}}`},em={keyword:Object.keys(hn),type:"number",schemaType:"number",$data:true,error:Zp,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0, gn._)`${r} ${hn[t].fail} ${n} || isNaN(${r})`);}};Hs.default=em;});var Zi=T(Ws=>{Object.defineProperty(Ws,"__esModule",{value:true});var kr=U(),tm={message:({schemaCode:e})=>(0, kr.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0, kr._)`{multipleOf: ${e}}`},rm={keyword:"multipleOf",type:"number",schemaType:"number",$data:true,error:tm,code(e){let{gen:t,data:r,schemaCode:n,it:s}=e,o=s.opts.multipleOfPrecision,a=t.let("res"),i=o?(0, kr._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${o}`:(0, kr._)`${a} !== parseInt(${a})`;e.fail$data((0, kr._)`(${n} === 0 || (${a} = ${r}/${n}, ${i}))`);}};Ws.default=rm;});var tu=T(Ys=>{Object.defineProperty(Ys,"__esModule",{value:true});function eu(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}Ys.default=eu;eu.code='require("ajv/dist/runtime/ucs2length").default';});var ru=T(Xs=>{Object.defineProperty(Xs,"__esModule",{value:true});var At=U(),nm=W(),sm=tu(),om={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return (0, At.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0, At._)`{limit: ${e}}`},am={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:true,error:om,code(e){let{keyword:t,data:r,schemaCode:n,it:s}=e,o=t==="maxLength"?At.operators.GT:At.operators.LT,a=s.opts.unicode===false?(0, At._)`${r}.length`:(0, At._)`${(0, nm.useFunc)(e.gen,sm.default)}(${r})`;e.fail$data((0, At._)`${a} ${o} ${n}`);}};Xs.default=am;});var nu=T(Qs=>{Object.defineProperty(Qs,"__esModule",{value:true});var im=qe(),um=W(),Ht=U(),cm={message:({schemaCode:e})=>(0, Ht.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0, Ht._)`{pattern: ${e}}`},dm={keyword:"pattern",type:"string",schemaType:"string",$data:true,error:cm,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, Ht._)`new RegExp`:(0, um.useFunc)(t,c),d=t.let("valid");t.try(()=>t.assign(d,(0, Ht._)`${u}(${o}, ${i}).test(${r})`),()=>t.assign(d,false)),e.fail$data((0, Ht._)`!${d}`);}else {let c=(0, im.usePattern)(e,s);e.fail$data((0, Ht._)`!${c}.test(${r})`);}}};Qs.default=dm;});var su=T(Zs=>{Object.defineProperty(Zs,"__esModule",{value:true});var wr=U(),lm={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return (0, wr.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0, wr._)`{limit: ${e}}`},fm={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:true,error:lm,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxProperties"?wr.operators.GT:wr.operators.LT;e.fail$data((0, wr._)`Object.keys(${r}).length ${s} ${n}`);}};Zs.default=fm;});var ou=T(eo=>{Object.defineProperty(eo,"__esModule",{value:true});var br=qe(),_r=U(),pm=W(),mm={message:({params:{missingProperty:e}})=>(0, _r.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0, _r._)`{missingProperty: ${e}}`},gm={keyword:"required",type:"object",schemaType:"array",$data:true,error:mm,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 g=e.parentSchema.properties,{definedProperties:f}=e.it;for(let p of r)if(g?.[p]===void 0&&!f.has(p)){let S=a.schemaEnv.baseId+a.errSchemaPath,_=`required property "${p}" is not defined at "${S}" (strictRequired)`;(0, pm.checkStrictMode)(a,_,a.opts.strictRequired);}}function u(){if(c||o)e.block$data(_r.nil,l);else for(let g of r)(0, br.checkReportMissingProp)(e,g);}function d(){let g=t.let("missing");if(c||o){let f=t.let("valid",true);e.block$data(f,()=>m(g,f)),e.ok(f);}else t.if((0, br.checkMissingProp)(e,r,g)),(0, br.reportMissingProp)(e,g),t.else();}function l(){t.forOf("prop",n,g=>{e.setParams({missingProperty:g}),t.if((0, br.noPropertyInData)(t,s,g,i.ownProperties),()=>e.error());});}function m(g,f){e.setParams({missingProperty:g}),t.forOf(g,n,()=>{t.assign(f,(0, br.propertyInData)(t,s,g,i.ownProperties)),t.if((0, _r.not)(f),()=>{e.error(),t.break();});},_r.nil);}}};eo.default=gm;});var au=T(to=>{Object.defineProperty(to,"__esModule",{value:true});var Rr=U(),hm={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return (0, Rr.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0, Rr._)`{limit: ${e}}`},ym={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:true,error:hm,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxItems"?Rr.operators.GT:Rr.operators.LT;e.fail$data((0, Rr._)`${r}.length ${s} ${n}`);}};to.default=ym;});var yn=T(ro=>{Object.defineProperty(ro,"__esModule",{value:true});var iu=Es();iu.code='require("ajv/dist/runtime/equal").default';ro.default=iu;});var uu=T(so=>{Object.defineProperty(so,"__esModule",{value:true});var no=dr(),he=U(),vm=W(),Sm=yn(),km={message:({params:{i:e,j:t}})=>(0, he.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0, he._)`{i: ${e}, j: ${t}}`},wm={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:true,error:km,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, no.getSchemaTypes)(o.items):[];e.block$data(c,d,(0, he._)`${a} === false`),e.ok(c);function d(){let f=t.let("i",(0, he._)`${r}.length`),p=t.let("j");e.setParams({i:f,j:p}),t.assign(c,true),t.if((0, he._)`${f} > 1`,()=>(l()?m:g)(f,p));}function l(){return u.length>0&&!u.some(f=>f==="object"||f==="array")}function m(f,p){let S=t.name("item"),_=(0, no.checkDataTypes)(u,S,i.opts.strictNumbers,no.DataType.Wrong),w=t.const("indices",(0, he._)`{}`);t.for((0, he._)`;${f}--;`,()=>{t.let(S,(0, he._)`${r}[${f}]`),t.if(_,(0, he._)`continue`),u.length>1&&t.if((0, he._)`typeof ${S} == "string"`,(0, he._)`${S} += "_"`),t.if((0, he._)`typeof ${w}[${S}] == "number"`,()=>{t.assign(p,(0, he._)`${w}[${S}]`),e.error(),t.assign(c,false).break();}).code((0, he._)`${w}[${S}] = ${f}`);});}function g(f,p){let S=(0, vm.useFunc)(t,Sm.default),_=t.name("outer");t.label(_).for((0, he._)`;${f}--;`,()=>t.for((0, he._)`${p} = ${f}; ${p}--;`,()=>t.if((0, he._)`${S}(${r}[${f}], ${r}[${p}])`,()=>{e.error(),t.assign(c,false).break(_);})));}}};so.default=wm;});var cu=T(ao=>{Object.defineProperty(ao,"__esModule",{value:true});var oo=U(),bm=W(),_m=yn(),Rm={message:"must be equal to constant",params:({schemaCode:e})=>(0, oo._)`{allowedValue: ${e}}`},Cm={keyword:"const",$data:true,error:Rm,code(e){let{gen:t,data:r,$data:n,schemaCode:s,schema:o}=e;n||o&&typeof o=="object"?e.fail$data((0, oo._)`!${(0, bm.useFunc)(t,_m.default)}(${r}, ${s})`):e.fail((0, oo._)`${o} !== ${r}`);}};ao.default=Cm;});var du=T(io=>{Object.defineProperty(io,"__esModule",{value:true});var Cr=U(),Em=W(),$m=yn(),xm={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0, Cr._)`{allowedValues: ${e}}`},Tm={keyword:"enum",schemaType:"array",$data:true,error:xm,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, Em.useFunc)(t,$m.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 g=t.const("vSchema",o);d=(0, Cr.or)(...s.map((f,p)=>m(g,p)));}e.pass(d);function l(){t.assign(d,false),t.forOf("v",o,g=>t.if((0, Cr._)`${u()}(${r}, ${g})`,()=>t.assign(d,true).break()));}function m(g,f){let p=s[f];return typeof p=="object"&&p!==null?(0, Cr._)`${u()}(${r}, ${g}[${f}])`:(0, Cr._)`${r} === ${p}`}}};io.default=Tm;});var lu=T(uo=>{Object.defineProperty(uo,"__esModule",{value:true});var Am=Qi(),Im=Zi(),Pm=ru(),jm=nu(),Om=su(),Nm=ou(),qm=au(),Fm=uu(),Dm=cu(),Mm=du(),Lm=[Am.default,Im.default,Pm.default,jm.default,Om.default,Nm.default,qm.default,Fm.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},Dm.default,Mm.default];uo.default=Lm;});var lo=T(Er=>{Object.defineProperty(Er,"__esModule",{value:true});Er.validateAdditionalItems=void 0;var It=U(),co=W(),Vm={message:({params:{len:e}})=>(0, It.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0, It._)`{limit: ${e}}`},Bm={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:Vm,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0, co.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}fu(e,n);}};function fu(e,t){let{gen:r,schema:n,data:s,keyword:o,it:a}=e;a.items=true;let i=r.const("len",(0, It._)`${s}.length`);if(n===false)e.setParams({len:t.length}),e.pass((0, It._)`${i} <= ${t.length}`);else if(typeof n=="object"&&!(0, co.alwaysValidSchema)(a,n)){let u=r.var("valid",(0, It._)`${i} <= ${t.length}`);r.if((0, It.not)(u),()=>c(u)),e.ok(u);}function c(u){r.forRange("i",t.length,i,d=>{e.subschema({keyword:o,dataProp:d,dataPropType:co.Type.Num},u),a.allErrors||r.if((0, It.not)(u),()=>r.break());});}}Er.validateAdditionalItems=fu;Er.default=Bm;});var fo=T($r=>{Object.defineProperty($r,"__esModule",{value:true});$r.validateTuple=void 0;var pu=U(),vn=W(),Gm=qe(),Km={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return mu(e,"additionalItems",t);r.items=true,!(0, vn.alwaysValidSchema)(r,t)&&e.ok((0, Gm.validateArray)(e));}};function mu(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=vn.mergeEvaluated.items(n,r.length,i.items));let c=n.name("valid"),u=n.const("len",(0, pu._)`${o}.length`);r.forEach((l,m)=>{(0, vn.alwaysValidSchema)(i,l)||(n.if((0, pu._)`${u} > ${m}`,()=>e.subschema({keyword:a,schemaProp:m,dataProp:m},c)),e.ok(c));});function d(l){let{opts:m,errSchemaPath:g}=i,f=r.length,p=f===l.minItems&&(f===l.maxItems||l[t]===false);if(m.strictTuples&&!p){let S=`"${a}" is ${f}-tuple, but minItems or maxItems/${t} are not specified or different at path "${g}"`;(0, vn.checkStrictMode)(i,S,m.strictTuples);}}}$r.validateTuple=mu;$r.default=Km;});var gu=T(po=>{Object.defineProperty(po,"__esModule",{value:true});var Um=fo(),Jm={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0, Um.validateTuple)(e,"items")};po.default=Jm;});var yu=T(mo=>{Object.defineProperty(mo,"__esModule",{value:true});var hu=U(),zm=W(),Hm=qe(),Wm=lo(),Ym={message:({params:{len:e}})=>(0, hu.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0, hu._)`{limit: ${e}}`},Xm={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:Ym,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:s}=r;n.items=true,!(0, zm.alwaysValidSchema)(n,t)&&(s?(0, Wm.validateAdditionalItems)(e,s):e.ok((0, Hm.validateArray)(e)));}};mo.default=Xm;});var vu=T(go=>{Object.defineProperty(go,"__esModule",{value:true});var De=U(),Sn=W(),Qm={message:({params:{min:e,max:t}})=>t===void 0?(0, De.str)`must contain at least ${e} valid item(s)`:(0, De.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0, De._)`{minContains: ${e}}`:(0, De._)`{minContains: ${e}, maxContains: ${t}}`},Zm={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:true,error:Qm,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, De._)`${s}.length`);if(e.setParams({min:a,max:i}),i===void 0&&a===0){(0, Sn.checkStrictMode)(o,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(i!==void 0&&a>i){(0, Sn.checkStrictMode)(o,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0, Sn.alwaysValidSchema)(o,r)){let p=(0, De._)`${d} >= ${a}`;i!==void 0&&(p=(0, De._)`${p} && ${d} <= ${i}`),e.pass(p);return}o.items=true;let l=t.name("valid");i===void 0&&a===1?g(l,()=>t.if(l,()=>t.break())):a===0?(t.let(l,true),i!==void 0&&t.if((0, De._)`${s}.length > 0`,m)):(t.let(l,false),m()),e.result(l,()=>e.reset());function m(){let p=t.name("_valid"),S=t.let("count",0);g(p,()=>t.if(p,()=>f(S)));}function g(p,S){t.forRange("i",0,d,_=>{e.subschema({keyword:"contains",dataProp:_,dataPropType:Sn.Type.Num,compositeRule:true},p),S();});}function f(p){t.code((0, De._)`${p}++`),i===void 0?t.if((0, De._)`${p} >= ${a}`,()=>t.assign(l,true).break()):(t.if((0, De._)`${p} > ${i}`,()=>t.assign(l,false).break()),a===1?t.assign(l,true):t.if((0, De._)`${p} >= ${a}`,()=>t.assign(l,true)));}}};go.default=Zm;});var wu=T(Ye=>{Object.defineProperty(Ye,"__esModule",{value:true});Ye.validateSchemaDeps=Ye.validatePropertyDeps=Ye.error=void 0;var ho=U(),eg=W(),xr=qe();Ye.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return (0, ho.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0, ho._)`{property: ${e},
|
|
6
6
|
missingProperty: ${n},
|
|
7
7
|
depsCount: ${t},
|
|
8
|
-
deps: ${r}}`};var tg={keyword:"dependencies",type:"object",schemaType:"object",error:We.error,code(e){let[t,r]=rg(e);Su(e,t),ku(e,r);}};function rg({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 Su(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, xr.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, xr.checkReportMissingProp)(e,u);}):(r.if((0, ho._)`${c} && (${(0, xr.checkMissingProp)(e,i,o)})`),(0, xr.reportMissingProp)(e,o),r.else());}}We.validatePropertyDeps=Su;function ku(e,t=e.schema){let{gen:r,data:n,keyword:s,it:o}=e,a=r.name("valid");for(let i in t)(0, eg.alwaysValidSchema)(o,t[i])||(r.if((0, xr.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));}We.validateSchemaDeps=ku;We.default=tg;});var _u=x(yo=>{Object.defineProperty(yo,"__esModule",{value:true});var bu=G(),ng=z(),sg={message:"property name must be valid",params:({params:e})=>(0, bu._)`{propertyName: ${e.propertyName}}`},og={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:sg,code(e){let{gen:t,schema:r,data:n,it:s}=e;if((0, ng.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, bu.not)(o),()=>{e.error(true),s.allErrors||t.break();});}),e.ok(o);}};yo.default=og;});var So=x(vo=>{Object.defineProperty(vo,"__esModule",{value:true});var kn=Ne(),Ke=G(),ag=et(),wn=z(),ig={message:"must NOT have additional properties",params:({params:e})=>(0, Ke._)`{additionalProperty: ${e.additionalProperty}}`},ug={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:true,trackErrors:true,error:ig,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, wn.alwaysValidSchema)(a,r))return;let u=(0, kn.allSchemaProperties)(n.properties),d=(0, kn.allSchemaProperties)(n.patternProperties);l(),e.ok((0, Ke._)`${o} === ${ag.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 g=(0, wn.schemaRefOrVal)(a,n.properties,"properties");_=(0, kn.isOwnProperty)(t,g,v);}else u.length?_=(0, Ke.or)(...u.map(g=>(0, Ke._)`${v} === ${g}`)):_=Ke.nil;return d.length&&(_=(0, Ke.or)(_,...d.map(g=>(0, Ke._)`${(0, kn.usePattern)(e,g)}.test(${v})`))),(0, Ke.not)(_)}function y(v){t.code((0, Ke._)`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, wn.alwaysValidSchema)(a,r)){let _=t.name("valid");c.removeAdditional==="failing"?(p(v,_,false),t.if((0, Ke.not)(_),()=>{e.reset(),y(v);})):(p(v,_),i||t.if((0, Ke.not)(_),()=>t.break()));}}function p(v,_,g){let m={keyword:"additionalProperties",dataProp:v,dataPropType:wn.Type.Str};g===false&&Object.assign(m,{compositeRule:true,createErrors:false,allErrors:false}),e.subschema(m,_);}}};vo.default=ug;});var $u=x(wo=>{Object.defineProperty(wo,"__esModule",{value:true});var cg=mr(),Ru=Ne(),ko=z(),Cu=So(),dg={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&&Cu.default.code(new cg.KeywordCxt(o,Cu.default,"additionalProperties"));let a=(0, Ru.allSchemaProperties)(r);for(let l of a)o.definedProperties.add(l);o.opts.unevaluated&&a.length&&o.props!==true&&(o.props=ko.mergeEvaluated.props(t,(0, ko.toHash)(a),o.props));let i=a.filter(l=>!(0, ko.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, Ru.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);}}};wo.default=dg;});var Au=x(bo=>{Object.defineProperty(bo,"__esModule",{value:true});var Eu=Ne(),bn=G(),xu=z(),Tu=z(),lg={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, Eu.allSchemaProperties)(r),c=i.filter(p=>(0, xu.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 bn.Name)&&(o.props=(0, Tu.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, xu.checkStrictMode)(o,`property ${v} matches pattern ${p} (use allowMatchingProperties)`);}function f(p){t.forIn("key",n,v=>{t.if((0, bn._)`${(0, Eu.usePattern)(e,p)}.test(${v})`,()=>{let _=c.includes(p);_||e.subschema({keyword:"patternProperties",schemaProp:p,dataProp:v,dataPropType:Tu.Type.Str},d),o.opts.unevaluated&&l!==true?t.assign((0, bn._)`${l}[${v}]`,true):!_&&!o.allErrors&&t.if((0, bn.not)(d),()=>t.break());});});}}};bo.default=lg;});var Iu=x(_o=>{Object.defineProperty(_o,"__esModule",{value:true});var fg=z(),pg={keyword:"not",schemaType:["object","boolean"],trackErrors:true,code(e){let{gen:t,schema:r,it:n}=e;if((0, fg.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"}};_o.default=pg;});var Pu=x(Ro=>{Object.defineProperty(Ro,"__esModule",{value:true});var mg=Ne(),gg={keyword:"anyOf",schemaType:"array",trackErrors:true,code:mg.validateUnion,error:{message:"must match a schema in anyOf"}};Ro.default=gg;});var Ou=x(Co=>{Object.defineProperty(Co,"__esModule",{value:true});var _n=G(),hg=z(),yg={message:"must match exactly one schema in oneOf",params:({params:e})=>(0, _n._)`{passingSchemas: ${e.passing}}`},vg={keyword:"oneOf",schemaType:"array",trackErrors:true,error:yg,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, hg.alwaysValidSchema)(s,d)?t.var(c,true):h=e.subschema({keyword:"oneOf",schemaProp:l,compositeRule:true},c),l>0&&t.if((0, _n._)`${c} && ${a}`).assign(a,false).assign(i,(0, _n._)`[${i}, ${l}]`).else(),t.if(c,()=>{t.assign(a,true),t.assign(i,l),h&&e.mergeEvaluated(h,_n.Name);});});}}};Co.default=vg;});var ju=x($o=>{Object.defineProperty($o,"__esModule",{value:true});var Sg=z(),kg={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);});}};$o.default=kg;});var Fu=x(Eo=>{Object.defineProperty(Eo,"__esModule",{value:true});var Rn=G(),qu=z(),wg={message:({params:e})=>(0, Rn.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0, Rn._)`{failingKeyword: ${e.ifClause}}`},bg={keyword:"if",schemaType:["object","boolean"],trackErrors:true,error:wg,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0, qu.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=Nu(n,"then"),o=Nu(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, Rn.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, Rn._)`${d}`):e.setParams({ifClause:d});}}}};function Nu(e,t){let r=e.schema[t];return r!==void 0&&!(0, qu.alwaysValidSchema)(e,r)}Eo.default=bg;});var Du=x(xo=>{Object.defineProperty(xo,"__esModule",{value:true});var _g=z(),Rg={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0, _g.checkStrictMode)(r,`"${e}" without "if" is ignored`);}};xo.default=Rg;});var Mu=x(To=>{Object.defineProperty(To,"__esModule",{value:true});var Cg=lo(),$g=gu(),Eg=fo(),xg=yu(),Tg=vu(),Ag=wu(),Ig=_u(),Pg=So(),Og=$u(),jg=Au(),Ng=Iu(),qg=Pu(),Fg=Ou(),Dg=ju(),Mg=Fu(),Lg=Du();function Vg(e=false){let t=[Ng.default,qg.default,Fg.default,Dg.default,Mg.default,Lg.default,Ig.default,Pg.default,Ag.default,Og.default,jg.default];return e?t.push($g.default,xg.default):t.push(Cg.default,Eg.default),t.push(Tg.default),t}To.default=Vg;});var Lu=x(Ao=>{Object.defineProperty(Ao,"__esModule",{value:true});var le=G(),Bg={message:({schemaCode:e})=>(0, le.str)`must match format "${e}"`,params:({schemaCode:e})=>(0, le._)`{format: ${e}}`},Gg={keyword:"format",type:["number","string"],schemaType:"string",$data:true,error:Bg,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, le._)`${f}[${a}]`),v=r.let("fType"),_=r.let("format");r.if((0, le._)`typeof ${p} == "object" && !(${p} instanceof RegExp)`,()=>r.assign(v,(0, le._)`${p}.type || "string"`).assign(_,(0, le._)`${p}.validate`),()=>r.assign(v,(0, le._)`"string"`).assign(_,p)),e.fail$data((0, le.or)(g(),m()));function g(){return c.strictSchema===false?le.nil:(0, le._)`${a} && !${_}`}function m(){let k=d.$async?(0, le._)`(${p}.async ? await ${_}(${n}) : ${_}(${n}))`:(0, le._)`${_}(${n})`,w=(0, le._)`(typeof ${_} == "function" ? ${k} : ${_}.test(${n}))`;return (0, le._)`${_} && ${_} !== true && ${v} === ${t} && !${w}`}}function y(){let f=l.formats[o];if(!f){g();return}if(f===true)return;let[p,v,_]=m(f);p===t&&e.pass(k());function g(){if(c.strictSchema===false){l.logger.warn(w());return}throw new Error(w());function w(){return `unknown format "${o}" ignored in schema at path "${u}"`}}function m(w){let $=w instanceof RegExp?(0, le.regexpCode)(w):c.code.formats?(0, le._)`${c.code.formats}${(0, le.getProperty)(o)}`:void 0,R=r.scopeValue("formats",{key:o,ref:w,code:$});return typeof w=="object"&&!(w instanceof RegExp)?[w.type||"string",w.validate,(0, le._)`${R}.validate`]:["string",w,R]}function k(){if(typeof f=="object"&&!(f instanceof RegExp)&&f.async){if(!d.$async)throw new Error("async format in sync schema");return (0, le._)`await ${_}(${n})`}return typeof v=="function"?(0, le._)`${_}(${n})`:(0, le._)`${_}.test(${n})`}}}};Ao.default=Gg;});var Vu=x(Io=>{Object.defineProperty(Io,"__esModule",{value:true});var Kg=Lu(),Ug=[Kg.default];Io.default=Ug;});var Bu=x(Wt=>{Object.defineProperty(Wt,"__esModule",{value:true});Wt.contentVocabulary=Wt.metadataVocabulary=void 0;Wt.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Wt.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"];});var Ku=x(Po=>{Object.defineProperty(Po,"__esModule",{value:true});var Jg=Xi(),zg=lu(),Hg=Mu(),Wg=Vu(),Gu=Bu(),Yg=[Jg.default,zg.default,(0, Hg.default)(),Wg.default,Gu.metadataVocabulary,Gu.contentVocabulary];Po.default=Yg;});var Ju=x(Cn=>{Object.defineProperty(Cn,"__esModule",{value:true});Cn.DiscrError=void 0;var Uu;(function(e){e.Tag="tag",e.Mapping="mapping";})(Uu||(Cn.DiscrError=Uu={}));});var Hu=x(jo=>{Object.defineProperty(jo,"__esModule",{value:true});var Yt=G(),Oo=Ju(),zu=an(),Xg=gr(),Qg=z(),Zg={message:({params:{discrError:e,tagName:t}})=>e===Oo.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0, Yt._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},eh={keyword:"discriminator",type:"object",schemaType:"object",error:Zg,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, Yt._)`${r}${(0, Yt.getProperty)(i)}`);t.if((0, Yt._)`typeof ${u} == "string"`,()=>d(),()=>e.error(false,{discrError:Oo.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, Yt._)`${u} === ${f}`),t.assign(c,l(y[f]));t.else(),e.error(false,{discrError:Oo.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,Yt.Name),f}function h(){var y;let f={},p=_(s),v=true;for(let k=0;k<a.length;k++){let w=a[k];if(w?.$ref&&!(0, Qg.schemaHasRulesButRef)(w,o.self.RULES)){let R=w.$ref;if(w=zu.resolveRef.call(o.self,o.schemaEnv.root,o.baseId,R),w instanceof zu.SchemaEnv&&(w=w.schema),w===void 0)throw new Xg.default(o.opts.uriResolver,o.baseId,R)}let $=(y=w?.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||_(w)),g($,k);}if(!v)throw new Error(`discriminator: "${i}" must be required`);return f;function _({required:k}){return Array.isArray(k)&&k.includes(i)}function g(k,w){if(k.const)m(k.const,w);else if(k.enum)for(let $ of k.enum)m($,w);else throw new Error(`discriminator: "properties/${i}" must have "const" or "enum"`)}function m(k,w){if(typeof k!="string"||k in f)throw new Error(`discriminator: "${i}" values must be unique strings`);f[k]=w;}}}};jo.default=eh;});var Wu=x((rS,th)=>{th.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 Xu=x((ie,No)=>{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 rh=Ui(),nh=Ku(),sh=Hu(),Yu=Wu(),oh=["/properties"],$n="http://json-schema.org/draft-07/schema",Xt=class extends rh.default{_addVocabularies(){super._addVocabularies(),nh.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(sh.default);}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(Yu,oh):Yu;this.addMetaSchema(t,$n,false),this.refs["http://json-schema.org/schema"]=$n;}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema($n)?$n:void 0)}};ie.Ajv=Xt;No.exports=ie=Xt;No.exports.Ajv=Xt;Object.defineProperty(ie,"__esModule",{value:true});ie.default=Xt;var ah=mr();Object.defineProperty(ie,"KeywordCxt",{enumerable:true,get:function(){return ah.KeywordCxt}});var Qt=G();Object.defineProperty(ie,"_",{enumerable:true,get:function(){return Qt._}});Object.defineProperty(ie,"str",{enumerable:true,get:function(){return Qt.str}});Object.defineProperty(ie,"stringify",{enumerable:true,get:function(){return Qt.stringify}});Object.defineProperty(ie,"nil",{enumerable:true,get:function(){return Qt.nil}});Object.defineProperty(ie,"Name",{enumerable:true,get:function(){return Qt.Name}});Object.defineProperty(ie,"CodeGen",{enumerable:true,get:function(){return Qt.CodeGen}});var ih=sn();Object.defineProperty(ie,"ValidationError",{enumerable:true,get:function(){return ih.default}});var uh=gr();Object.defineProperty(ie,"MissingRefError",{enumerable:true,get:function(){return uh.default}});});var qr="b64:";function ed(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 td(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 oe(e){return `${qr}${ed(JSON.stringify(e))}`}function Ue(e){if(!e.startsWith(qr))throw new Error(`Invalid ref format (expected ${qr}<base64url(json)>): ${e}`);let t;try{t=JSON.parse(td(e.slice(qr.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 Qo(e,t,r){let n=e.tryAcquire();if(!n)return false;try{await t();}finally{n();}return r?.(),true}function Re(...e){return J.join(...e)}function ra(e){return J.isAbsolute(e)}function Mn(){return randomUUID()}function na(e){return createHash("sha256").update(e).digest("hex")}function sa(e){return J.dirname(fileURLToPath(e))}function id(e){if(typeof e=="object"&&e!==null){let{command:r,args:n=[],...s}=e,o=ea(r,n);return {...s,command:o.command,args:o.args}}let t=oa(e);if(t.length===0)throw new Error(`Empty command spec: ${JSON.stringify(e)}`);return ea(t[0],t.slice(1))}function ea(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 oa(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 Ln(e){return process.platform==="win32"&&/\.(cmd|bat)$/i.test(e)}function aa(e,t){let{command:r,args:n=[],cwd:s,env:o,timeoutMs:a}=e;return execFileSync(r,n,{shell:Ln(r),timeout:a,encoding:t?.encoding??"utf-8",cwd:s,windowsHide:true,env:o?{...process.env,...o}:void 0,input:t?.input})}function ud(e,t){let{command:r,args:n=[],cwd:s,env:o,timeoutMs:a=3e4}=e;execFile(r,n,{shell:Ln(r),encoding:"utf8",windowsHide:true,timeout:a,maxBuffer:10*1024*1024,cwd:s,env:o?{...process.env,...o}:void 0},(i,c,u)=>t(i??null,c,u));}J.join(Dn.tmpdir(),".board-live-cards-git-bash-cache.json");function Dr(e){let{command:t,args:r=[]}=e;if(process.platform==="win32"){spawn(t,r,{detached:true,stdio:"ignore",windowsHide:true,shell:Ln(t)}).unref();return}spawn(t,r,{detached:true,stdio:"ignore"}).unref();}function Vn(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"),a=[J.join(e,"..","..","..","node_modules","tsx","dist","cli.mjs"),J.join(e,"..","..","node_modules","tsx","dist","cli.mjs"),J.join(e,"..","..","..","node_modules",".bin","tsx"),J.join(e,"..","..","node_modules",".bin","tsx")].find(c=>b.existsSync(c));return b.existsSync(s)&&b.existsSync(a)?{cmd:process.execPath,args:[a,s,t,...r]}:{cmd:process.platform==="win32"?"npx.cmd":"npx",args:["tsx",s,t,...r]}}function Bn(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 ia(e,t,r){let n=["--base-ref",oe(t)];r&&n.push("--notify-channel",r);let{cmd:s,args:o}=Vn(e,"process-accumulated-events",n);Dr({command:s,args:o});}function cd(e){return process.platform==="win32"?`\\\\.\\pipe\\${e}`:J.join(Dn.tmpdir(),`${e}.sock`)}var Fr=new Map;function ua(e,t,r){if(t.length===0)return;let n=t.map(i=>JSON.stringify(i)).join(`
|
|
8
|
+
deps: ${r}}`};var tg={keyword:"dependencies",type:"object",schemaType:"object",error:Ye.error,code(e){let[t,r]=rg(e);Su(e,t),ku(e,r);}};function rg({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 Su(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, xr.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, xr.checkReportMissingProp)(e,u);}):(r.if((0, ho._)`${c} && (${(0, xr.checkMissingProp)(e,i,o)})`),(0, xr.reportMissingProp)(e,o),r.else());}}Ye.validatePropertyDeps=Su;function ku(e,t=e.schema){let{gen:r,data:n,keyword:s,it:o}=e,a=r.name("valid");for(let i in t)(0, eg.alwaysValidSchema)(o,t[i])||(r.if((0, xr.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));}Ye.validateSchemaDeps=ku;Ye.default=tg;});var _u=T(yo=>{Object.defineProperty(yo,"__esModule",{value:true});var bu=U(),ng=W(),sg={message:"property name must be valid",params:({params:e})=>(0, bu._)`{propertyName: ${e.propertyName}}`},og={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:sg,code(e){let{gen:t,schema:r,data:n,it:s}=e;if((0, ng.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, bu.not)(o),()=>{e.error(true),s.allErrors||t.break();});}),e.ok(o);}};yo.default=og;});var So=T(vo=>{Object.defineProperty(vo,"__esModule",{value:true});var kn=qe(),Je=U(),ag=et(),wn=W(),ig={message:"must NOT have additional properties",params:({params:e})=>(0, Je._)`{additionalProperty: ${e.additionalProperty}}`},ug={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:true,trackErrors:true,error:ig,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, wn.alwaysValidSchema)(a,r))return;let u=(0, kn.allSchemaProperties)(n.properties),d=(0, kn.allSchemaProperties)(n.patternProperties);l(),e.ok((0, Je._)`${o} === ${ag.default.errors}`);function l(){t.forIn("key",s,S=>{!u.length&&!d.length?f(S):t.if(m(S),()=>f(S));});}function m(S){let _;if(u.length>8){let w=(0, wn.schemaRefOrVal)(a,n.properties,"properties");_=(0, kn.isOwnProperty)(t,w,S);}else u.length?_=(0, Je.or)(...u.map(w=>(0, Je._)`${S} === ${w}`)):_=Je.nil;return d.length&&(_=(0, Je.or)(_,...d.map(w=>(0, Je._)`${(0, kn.usePattern)(e,w)}.test(${S})`))),(0, Je.not)(_)}function g(S){t.code((0, Je._)`delete ${s}[${S}]`);}function f(S){if(c.removeAdditional==="all"||c.removeAdditional&&r===false){g(S);return}if(r===false){e.setParams({additionalProperty:S}),e.error(),i||t.break();return}if(typeof r=="object"&&!(0, wn.alwaysValidSchema)(a,r)){let _=t.name("valid");c.removeAdditional==="failing"?(p(S,_,false),t.if((0, Je.not)(_),()=>{e.reset(),g(S);})):(p(S,_),i||t.if((0, Je.not)(_),()=>t.break()));}}function p(S,_,w){let R={keyword:"additionalProperties",dataProp:S,dataPropType:wn.Type.Str};w===false&&Object.assign(R,{compositeRule:true,createErrors:false,allErrors:false}),e.subschema(R,_);}}};vo.default=ug;});var Eu=T(wo=>{Object.defineProperty(wo,"__esModule",{value:true});var cg=mr(),Ru=qe(),ko=W(),Cu=So(),dg={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&&Cu.default.code(new cg.KeywordCxt(o,Cu.default,"additionalProperties"));let a=(0, Ru.allSchemaProperties)(r);for(let l of a)o.definedProperties.add(l);o.opts.unevaluated&&a.length&&o.props!==true&&(o.props=ko.mergeEvaluated.props(t,(0, ko.toHash)(a),o.props));let i=a.filter(l=>!(0, ko.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, Ru.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);}}};wo.default=dg;});var Au=T(bo=>{Object.defineProperty(bo,"__esModule",{value:true});var $u=qe(),bn=U(),xu=W(),Tu=W(),lg={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, $u.allSchemaProperties)(r),c=i.filter(p=>(0, xu.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 bn.Name)&&(o.props=(0, Tu.evaluatedPropsToName)(t,o.props));let{props:l}=o;m();function m(){for(let p of i)u&&g(p),o.allErrors?f(p):(t.var(d,true),f(p),t.if(d));}function g(p){for(let S in u)new RegExp(p).test(S)&&(0, xu.checkStrictMode)(o,`property ${S} matches pattern ${p} (use allowMatchingProperties)`);}function f(p){t.forIn("key",n,S=>{t.if((0, bn._)`${(0, $u.usePattern)(e,p)}.test(${S})`,()=>{let _=c.includes(p);_||e.subschema({keyword:"patternProperties",schemaProp:p,dataProp:S,dataPropType:Tu.Type.Str},d),o.opts.unevaluated&&l!==true?t.assign((0, bn._)`${l}[${S}]`,true):!_&&!o.allErrors&&t.if((0, bn.not)(d),()=>t.break());});});}}};bo.default=lg;});var Iu=T(_o=>{Object.defineProperty(_o,"__esModule",{value:true});var fg=W(),pg={keyword:"not",schemaType:["object","boolean"],trackErrors:true,code(e){let{gen:t,schema:r,it:n}=e;if((0, fg.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"}};_o.default=pg;});var Pu=T(Ro=>{Object.defineProperty(Ro,"__esModule",{value:true});var mg=qe(),gg={keyword:"anyOf",schemaType:"array",trackErrors:true,code:mg.validateUnion,error:{message:"must match a schema in anyOf"}};Ro.default=gg;});var ju=T(Co=>{Object.defineProperty(Co,"__esModule",{value:true});var _n=U(),hg=W(),yg={message:"must match exactly one schema in oneOf",params:({params:e})=>(0, _n._)`{passingSchemas: ${e.passing}}`},vg={keyword:"oneOf",schemaType:"array",trackErrors:true,error:yg,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 m;(0, hg.alwaysValidSchema)(s,d)?t.var(c,true):m=e.subschema({keyword:"oneOf",schemaProp:l,compositeRule:true},c),l>0&&t.if((0, _n._)`${c} && ${a}`).assign(a,false).assign(i,(0, _n._)`[${i}, ${l}]`).else(),t.if(c,()=>{t.assign(a,true),t.assign(i,l),m&&e.mergeEvaluated(m,_n.Name);});});}}};Co.default=vg;});var Ou=T(Eo=>{Object.defineProperty(Eo,"__esModule",{value:true});var Sg=W(),kg={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);});}};Eo.default=kg;});var Fu=T($o=>{Object.defineProperty($o,"__esModule",{value:true});var Rn=U(),qu=W(),wg={message:({params:e})=>(0, Rn.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0, Rn._)`{failingKeyword: ${e.ifClause}}`},bg={keyword:"if",schemaType:["object","boolean"],trackErrors:true,error:wg,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0, qu.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=Nu(n,"then"),o=Nu(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, Rn.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 m=e.subschema({keyword:d},i);t.assign(a,i),e.mergeValidEvaluated(m,a),l?t.assign(l,(0, Rn._)`${d}`):e.setParams({ifClause:d});}}}};function Nu(e,t){let r=e.schema[t];return r!==void 0&&!(0, qu.alwaysValidSchema)(e,r)}$o.default=bg;});var Du=T(xo=>{Object.defineProperty(xo,"__esModule",{value:true});var _g=W(),Rg={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0, _g.checkStrictMode)(r,`"${e}" without "if" is ignored`);}};xo.default=Rg;});var Mu=T(To=>{Object.defineProperty(To,"__esModule",{value:true});var Cg=lo(),Eg=gu(),$g=fo(),xg=yu(),Tg=vu(),Ag=wu(),Ig=_u(),Pg=So(),jg=Eu(),Og=Au(),Ng=Iu(),qg=Pu(),Fg=ju(),Dg=Ou(),Mg=Fu(),Lg=Du();function Vg(e=false){let t=[Ng.default,qg.default,Fg.default,Dg.default,Mg.default,Lg.default,Ig.default,Pg.default,Ag.default,jg.default,Og.default];return e?t.push(Eg.default,xg.default):t.push(Cg.default,$g.default),t.push(Tg.default),t}To.default=Vg;});var Lu=T(Ao=>{Object.defineProperty(Ao,"__esModule",{value:true});var ce=U(),Bg={message:({schemaCode:e})=>(0, ce.str)`must match format "${e}"`,params:({schemaCode:e})=>(0, ce._)`{format: ${e}}`},Gg={keyword:"format",type:["number","string"],schemaType:"string",$data:true,error:Bg,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?m():g();function m(){let f=r.scopeValue("formats",{ref:l.formats,code:c.code.formats}),p=r.const("fDef",(0, ce._)`${f}[${a}]`),S=r.let("fType"),_=r.let("format");r.if((0, ce._)`typeof ${p} == "object" && !(${p} instanceof RegExp)`,()=>r.assign(S,(0, ce._)`${p}.type || "string"`).assign(_,(0, ce._)`${p}.validate`),()=>r.assign(S,(0, ce._)`"string"`).assign(_,p)),e.fail$data((0, ce.or)(w(),R()));function w(){return c.strictSchema===false?ce.nil:(0, ce._)`${a} && !${_}`}function R(){let j=d.$async?(0, ce._)`(${p}.async ? await ${_}(${n}) : ${_}(${n}))`:(0, ce._)`${_}(${n})`,y=(0, ce._)`(typeof ${_} == "function" ? ${j} : ${_}.test(${n}))`;return (0, ce._)`${_} && ${_} !== true && ${S} === ${t} && !${y}`}}function g(){let f=l.formats[o];if(!f){w();return}if(f===true)return;let[p,S,_]=R(f);p===t&&e.pass(j());function w(){if(c.strictSchema===false){l.logger.warn(y());return}throw new Error(y());function y(){return `unknown format "${o}" ignored in schema at path "${u}"`}}function R(y){let h=y instanceof RegExp?(0, ce.regexpCode)(y):c.code.formats?(0, ce._)`${c.code.formats}${(0, ce.getProperty)(o)}`:void 0,k=r.scopeValue("formats",{key:o,ref:y,code:h});return typeof y=="object"&&!(y instanceof RegExp)?[y.type||"string",y.validate,(0, ce._)`${k}.validate`]:["string",y,k]}function j(){if(typeof f=="object"&&!(f instanceof RegExp)&&f.async){if(!d.$async)throw new Error("async format in sync schema");return (0, ce._)`await ${_}(${n})`}return typeof S=="function"?(0, ce._)`${_}(${n})`:(0, ce._)`${_}.test(${n})`}}}};Ao.default=Gg;});var Vu=T(Io=>{Object.defineProperty(Io,"__esModule",{value:true});var Kg=Lu(),Ug=[Kg.default];Io.default=Ug;});var Bu=T(Wt=>{Object.defineProperty(Wt,"__esModule",{value:true});Wt.contentVocabulary=Wt.metadataVocabulary=void 0;Wt.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Wt.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"];});var Ku=T(Po=>{Object.defineProperty(Po,"__esModule",{value:true});var Jg=Xi(),zg=lu(),Hg=Mu(),Wg=Vu(),Gu=Bu(),Yg=[Jg.default,zg.default,(0, Hg.default)(),Wg.default,Gu.metadataVocabulary,Gu.contentVocabulary];Po.default=Yg;});var Ju=T(Cn=>{Object.defineProperty(Cn,"__esModule",{value:true});Cn.DiscrError=void 0;var Uu;(function(e){e.Tag="tag",e.Mapping="mapping";})(Uu||(Cn.DiscrError=Uu={}));});var Hu=T(Oo=>{Object.defineProperty(Oo,"__esModule",{value:true});var Yt=U(),jo=Ju(),zu=an(),Xg=gr(),Qg=W(),Zg={message:({params:{discrError:e,tagName:t}})=>e===jo.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0, Yt._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},eh={keyword:"discriminator",type:"object",schemaType:"object",error:Zg,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, Yt._)`${r}${(0, Yt.getProperty)(i)}`);t.if((0, Yt._)`typeof ${u} == "string"`,()=>d(),()=>e.error(false,{discrError:jo.DiscrError.Tag,tag:u,tagName:i})),e.ok(c);function d(){let g=m();t.if(false);for(let f in g)t.elseIf((0, Yt._)`${u} === ${f}`),t.assign(c,l(g[f]));t.else(),e.error(false,{discrError:jo.DiscrError.Mapping,tag:u,tagName:i}),t.endIf();}function l(g){let f=t.name("valid"),p=e.subschema({keyword:"oneOf",schemaProp:g},f);return e.mergeEvaluated(p,Yt.Name),f}function m(){var g;let f={},p=_(s),S=true;for(let j=0;j<a.length;j++){let y=a[j];if(y?.$ref&&!(0, Qg.schemaHasRulesButRef)(y,o.self.RULES)){let k=y.$ref;if(y=zu.resolveRef.call(o.self,o.schemaEnv.root,o.baseId,k),y instanceof zu.SchemaEnv&&(y=y.schema),y===void 0)throw new Xg.default(o.opts.uriResolver,o.baseId,k)}let h=(g=y?.properties)===null||g===void 0?void 0:g[i];if(typeof h!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${i}"`);S=S&&(p||_(y)),w(h,j);}if(!S)throw new Error(`discriminator: "${i}" must be required`);return f;function _({required:j}){return Array.isArray(j)&&j.includes(i)}function w(j,y){if(j.const)R(j.const,y);else if(j.enum)for(let h of j.enum)R(h,y);else throw new Error(`discriminator: "properties/${i}" must have "const" or "enum"`)}function R(j,y){if(typeof j!="string"||j in f)throw new Error(`discriminator: "${i}" values must be unique strings`);f[j]=y;}}}};Oo.default=eh;});var Wu=T((rS,th)=>{th.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 Xu=T((ie,No)=>{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 rh=Ui(),nh=Ku(),sh=Hu(),Yu=Wu(),oh=["/properties"],En="http://json-schema.org/draft-07/schema",Xt=class extends rh.default{_addVocabularies(){super._addVocabularies(),nh.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(sh.default);}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(Yu,oh):Yu;this.addMetaSchema(t,En,false),this.refs["http://json-schema.org/schema"]=En;}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(En)?En:void 0)}};ie.Ajv=Xt;No.exports=ie=Xt;No.exports.Ajv=Xt;Object.defineProperty(ie,"__esModule",{value:true});ie.default=Xt;var ah=mr();Object.defineProperty(ie,"KeywordCxt",{enumerable:true,get:function(){return ah.KeywordCxt}});var Qt=U();Object.defineProperty(ie,"_",{enumerable:true,get:function(){return Qt._}});Object.defineProperty(ie,"str",{enumerable:true,get:function(){return Qt.str}});Object.defineProperty(ie,"stringify",{enumerable:true,get:function(){return Qt.stringify}});Object.defineProperty(ie,"nil",{enumerable:true,get:function(){return Qt.nil}});Object.defineProperty(ie,"Name",{enumerable:true,get:function(){return Qt.Name}});Object.defineProperty(ie,"CodeGen",{enumerable:true,get:function(){return Qt.CodeGen}});var ih=sn();Object.defineProperty(ie,"ValidationError",{enumerable:true,get:function(){return ih.default}});var uh=gr();Object.defineProperty(ie,"MissingRefError",{enumerable:true,get:function(){return uh.default}});});var qr="b64:";function ed(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 td(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 oe(e){return `${qr}${ed(JSON.stringify(e))}`}function Me(e){if(!e.startsWith(qr))throw new Error(`Invalid ref format (expected ${qr}<base64url(json)>): ${e}`);let t;try{t=JSON.parse(td(e.slice(qr.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 Qo(e,t,r){let n=e.tryAcquire();if(!n)return false;try{await t();}finally{n();}return r?.(),true}function Ee(...e){return H.join(...e)}function ra(e){return H.isAbsolute(e)}function Mn(){return randomUUID()}function na(e){return createHash("sha256").update(e).digest("hex")}function sa(e){return H.dirname(fileURLToPath(e))}function id(e){if(typeof e=="object"&&e!==null){let{command:r,args:n=[],...s}=e,o=ea(r,n);return {...s,command:o.command,args:o.args}}let t=oa(e);if(t.length===0)throw new Error(`Empty command spec: ${JSON.stringify(e)}`);return ea(t[0],t.slice(1))}function ea(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 oa(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 Ln(e){return process.platform==="win32"&&/\.(cmd|bat)$/i.test(e)}function aa(e,t){let{command:r,args:n=[],cwd:s,env:o,timeoutMs:a}=e;return execFileSync(r,n,{shell:Ln(r),timeout:a,encoding:t?.encoding??"utf-8",cwd:s,windowsHide:true,env:o?{...process.env,...o}:void 0,input:t?.input})}function ud(e,t){let{command:r,args:n=[],cwd:s,env:o,timeoutMs:a=3e4}=e;execFile(r,n,{shell:Ln(r),encoding:"utf8",windowsHide:true,timeout:a,maxBuffer:10*1024*1024,cwd:s,env:o?{...process.env,...o}:void 0},(i,c,u)=>t(i??null,c,u));}H.join(Dn.tmpdir(),".board-live-cards-git-bash-cache.json");function Dr(e){let{command:t,args:r=[]}=e;if(process.platform==="win32"){spawn(t,r,{detached:true,stdio:"ignore",windowsHide:true,shell:Ln(t)}).unref();return}spawn(t,r,{detached:true,stdio:"ignore"}).unref();}function Vn(e,t,r){let n=H.join(e,"board-live-cards-cli.js");if(b.existsSync(n))return {cmd:process.execPath,args:[n,t,...r]};let s=H.join(e,"board-live-cards-cli.ts"),a=[H.join(e,"..","..","..","node_modules","tsx","dist","cli.mjs"),H.join(e,"..","..","node_modules","tsx","dist","cli.mjs"),H.join(e,"..","..","..","node_modules",".bin","tsx"),H.join(e,"..","..","node_modules",".bin","tsx")].find(c=>b.existsSync(c));return b.existsSync(s)&&b.existsSync(a)?{cmd:process.execPath,args:[a,s,t,...r]}:{cmd:process.platform==="win32"?"npx.cmd":"npx",args:["tsx",s,t,...r]}}function Bn(e){let t=H.join(e,"..","..","..","dev","board-live-cards-cli.js");if(b.existsSync(t))return t;let r=H.join(e,"..","..","dev","board-live-cards-cli.js");if(b.existsSync(r))return r;let n=H.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 ia(e,t,r){let n=["--base-ref",oe(t)];r&&n.push("--notify-channel",r);let{cmd:s,args:o}=Vn(e,"process-accumulated-events",n);Dr({command:s,args:o});}function cd(e){return process.platform==="win32"?`\\\\.\\pipe\\${e}`:H.join(Dn.tmpdir(),`${e}.sock`)}var Fr=new Map;function ua(e,t,r){if(t.length===0)return;let n=t.map(i=>JSON.stringify(i)).join(`
|
|
9
9
|
`)+`
|
|
10
|
-
`,s=Fr.get(e);if(s&&!s.socket.destroyed){s.ready?s.socket.write(n):s.queue.push(n);return}let o=cd(e),a=ta.createConnection(o);s={socket:a,ready:false,queue:[n]},Fr.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)}`),Fr.delete(e);}),a.on("close",()=>{Fr.delete(e);});}function Mr(){return {executeSync(e,t,r){return aa({command:e,args:t,cwd:r?.cwd,timeoutMs:r?.timeout,env:r?.env},{encoding:r?.encoding,input:r?.input})},executeAsync(e,t,r){ud({command:e,args:t},r);},resolveInvocation(e,t){let r=id({command:e,args:t});return {cmd:r.command,args:r.args??[]}},splitCommand:oa,spawnDetached(e,t){Dr({command:e,args:t});}}}var da=dirname(fileURLToPath(import.meta.url)),md=createRequire(import.meta.url);function gd(){let e=resolve(da,"./jsonata-sync.cjs");return existsSync(e)?e:resolve(da,"../../card-compute/jsonata-sync.cjs")}var wt=md(gd());function er(e){e.registerFunction("fsPathRef",t=>oe({kind:"fs-path",value:String(t)}),"<s:s>");}function Gn(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{let a=wt(o);er(a),s.push(String(a.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{let s=wt(e.stdinTemplate);er(s),n.stdin=s.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{let s=wt(e.urlTemplate);er(s),n.url=String(s.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);er(s);let o=s.evaluate(t);if(typeof o!="object"||o===null)throw new Error(`headerTemplate must produce an object, got: ${JSON.stringify(o)}`);n.headers=o;}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{let s=wt(e.bodyTemplate);er(s),n.body=s.evaluate(t);}catch(s){let o=s instanceof Error?s.message:String(s);throw new Error(`[${r}] argsMassaging.bodyTemplate failed: ${o}`)}return n}var yd=createRequire(import.meta.url);function vd(e){return typeof e=="object"?e:Ue(e)}function fa(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(yd.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 Le(e){let t=vd(e);return t.kind==="yaml-flow-cli"?fa(t.value):t.value}function Sd(e,t){let r=Le(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}=Vn(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 pa(e,t){if(e.howToRun==="built-in"){let{command:n,args:s}=Sd(e.whatToRun,t);return {command:n,baseArgs:s}}let r=(typeof e.whatToRun=="object",Le(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 kd(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 wd(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 Lr(e,t){return pa(e,t)}function ma(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 ga(e,t){return {...t,whatToRun:Le(e.whatToRun),...e.extra?{extra:e.extra}:{}}}function Kn(e,t,r="invokeExecutionRef"){return Gn(e,t,r)}function ha(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 at(e){return {result:"failure",data:{error:e}}}function ot(e,t,r){let n=r?.label??"invokeExecutionRefSync",s=r?.cliDir??r?.cwd??process.cwd(),o;try{o=Kn(e.argsMassaging,ga(e,t),n);}catch(l){let h=l instanceof Error?l.message:String(l);return at(h)}let a;try{a=Lr(e,s);}catch(l){let h=l instanceof Error?l.message:String(l);return at(`[${n}] ref resolution failed: ${h}`)}let i=[...a.baseArgs,...o.cmdArgs??[]],c=JSON.stringify(o.stdin??t),u=Mr(),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 at(`[${n}] ref exited with status ${f}${p?`: ${p}`:""}`)}try{return ha(ma(d))}catch{return {result:"success",data:{stdout:d.trim()}}}}async function la(e,t,r){let n=r?.label??"invokeExecutionRef",s;try{s=Kn(e.argsMassaging,ga(e,t),n);}catch(u){let d=u instanceof Error?u.message:String(u);return at(d)}let o=Le(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 at(`[${n}] HTTP ${u.status}${l?`: ${l}`:""}`)}let d=await u.text();if(!d.trim())return {result:"success",data:{}};try{return ha(ma(d))}catch{return {result:"success",data:{stdout:d.trim()}}}}catch(u){let d=u instanceof Error?u.message:String(u);return at(`[${n}] ${d}`)}}var bd={"local-node":async(e,t,r)=>ot(e,t,r),"local-python":async(e,t,r)=>ot(e,t,r),"local-process":async(e,t,r)=>ot(e,t,r),"built-in":async(e,t,r)=>ot(e,t,r),"http:post":la,"http:get":la},_d={"local-node":ot,"local-python":ot,"local-process":ot,"built-in":ot};async function ya(e,t,r){let n=r?.transports?.[e.howToRun]??bd[e.howToRun];return n?n(e,t,r):at(`[${r?.label??"invokeExecutionRef"}] unsupported howToRun: ${e.howToRun}`)}function Un(e,t,r){let n=r?.syncTransports?.[e.howToRun]??_d[e.howToRun];return n?n(e,t,r):at(`[${r?.label??"invokeExecutionRefSync"}] unsupported sync howToRun: ${e.howToRun}`)}function Rd(e){return {invoke(t,r){return ya(t,r,e)},invokeSync(t,r){return Un(t,r,e)}}}function Cd(e,t,r){return Un(e,t,r)}async function $d(e,t){let r={...t,whatToRun:Le(e.whatToRun)},n=Gn(e.argsMassaging,r,"_invokeTaskExecutorHttp"),s=n.url??Le(e.whatToRun),o=n.body?n.body:wd(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 va(e,t,r){if(e.howToRun==="http:post"||e.howToRun==="http:get"){$d(e,t).catch(i=>{console.error(`[dispatchTaskExecutorDetached] HTTP dispatch failed: ${i.message}`);});return}let{command:s,baseArgs:o}=pa(e,r),a=kd(t,e.extra);Dr({command:s,args:[...o,...a]});}function Xe(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 Ft(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"),Xe(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)),Xe(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 Wn(){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"),Xe(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)),Xe(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 Jn="__scratch-marker",zn="__scratch-config.json",Td=1440*60*1e3,Ad=720*60*1e3,Id=500;function Sa(e,t){if(!e)return t;let r=e.replace(/[^A-Za-z0-9._-]/g,"_");return r.length>0?r:t}function Gr(e){b.mkdirSync(e,{recursive:true});let t=J.join(e,Jn),r=J.join(e,zn),n=!b.existsSync(t);if(n)try{b.writeFileSync(t,`scratch-store
|
|
10
|
+
`,s=Fr.get(e);if(s&&!s.socket.destroyed){s.ready?s.socket.write(n):s.queue.push(n);return}let o=cd(e),a=ta.createConnection(o);s={socket:a,ready:false,queue:[n]},Fr.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)}`),Fr.delete(e);}),a.on("close",()=>{Fr.delete(e);});}function Mr(){return {executeSync(e,t,r){return aa({command:e,args:t,cwd:r?.cwd,timeoutMs:r?.timeout,env:r?.env},{encoding:r?.encoding,input:r?.input})},executeAsync(e,t,r){ud({command:e,args:t},r);},resolveInvocation(e,t){let r=id({command:e,args:t});return {cmd:r.command,args:r.args??[]}},splitCommand:oa,spawnDetached(e,t){Dr({command:e,args:t});}}}var da=dirname(fileURLToPath(import.meta.url)),md=createRequire(import.meta.url);function gd(){let e=resolve(da,"./jsonata-sync.cjs");return existsSync(e)?e:resolve(da,"../../card-compute/jsonata-sync.cjs")}var wt=md(gd());function er(e){e.registerFunction("fsPathRef",t=>oe({kind:"fs-path",value:String(t)}),"<s:s>");}function Gn(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{let a=wt(o);er(a),s.push(String(a.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{let s=wt(e.stdinTemplate);er(s),n.stdin=s.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{let s=wt(e.urlTemplate);er(s),n.url=String(s.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);er(s);let o=s.evaluate(t);if(typeof o!="object"||o===null)throw new Error(`headerTemplate must produce an object, got: ${JSON.stringify(o)}`);n.headers=o;}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{let s=wt(e.bodyTemplate);er(s),n.body=s.evaluate(t);}catch(s){let o=s instanceof Error?s.message:String(s);throw new Error(`[${r}] argsMassaging.bodyTemplate failed: ${o}`)}return n}var yd=createRequire(import.meta.url);function vd(e){return typeof e=="object"?e:Me(e)}function fa(e){let t=H.basename(String(e||"").trim());if(!t)throw new Error(`resolveYamlFlowCliPath: expected non-empty cli file name, got ${JSON.stringify(e)}`);let r=H.dirname(yd.resolve("yaml-flow/package.json")),n=H.join(r,"cli","node",t);if(!b.existsSync(n))throw new Error(`resolveYamlFlowCliPath: could not find ${t} under ${H.join(r,"cli","node")}`);return n}function Be(e){let t=vd(e);return t.kind==="yaml-flow-cli"?fa(t.value):t.value}function Sd(e,t){let r=Be(e);switch(r){case "source-cli-task-executor":{let n=H.join(t,"source-cli-task-executor.js");if(b.existsSync(n))return {command:process.execPath,args:[n]};let s=H.join(t,"source-cli-task-executor.ts"),o=H.join(t,"..","..","node_modules","tsx","dist","cli.mjs"),a=H.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}=Vn(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 pa(e,t){if(e.howToRun==="built-in"){let{command:n,args:s}=Sd(e.whatToRun,t);return {command:n,baseArgs:s}}let r=(typeof e.whatToRun=="object",Be(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 kd(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 wd(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 Lr(e,t){return pa(e,t)}function ma(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 ga(e,t){return {...t,whatToRun:Be(e.whatToRun),...e.extra?{extra:e.extra}:{}}}function Kn(e,t,r="invokeExecutionRef"){return Gn(e,t,r)}function ha(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 at(e){return {result:"failure",data:{error:e}}}function ot(e,t,r){let n=r?.label??"invokeExecutionRefSync",s=r?.cliDir??r?.cwd??process.cwd(),o;try{o=Kn(e.argsMassaging,ga(e,t),n);}catch(l){let m=l instanceof Error?l.message:String(l);return at(m)}let a;try{a=Lr(e,s);}catch(l){let m=l instanceof Error?l.message:String(l);return at(`[${n}] ref resolution failed: ${m}`)}let i=[...a.baseArgs,...o.cmdArgs??[]],c=JSON.stringify(o.stdin??t),u=Mr(),d;try{d=u.executeSync(a.command,i,{timeout:r?.timeoutMs??3e4,encoding:"utf-8",cwd:r?.cwd,input:c});}catch(l){let m=l,g=(m.stderr?String(m.stderr):"").trim(),f=typeof m.status=="number"?m.status:"unknown",p=g||m.message;return at(`[${n}] ref exited with status ${f}${p?`: ${p}`:""}`)}try{return ha(ma(d))}catch{return {result:"success",data:{stdout:d.trim()}}}}async function la(e,t,r){let n=r?.label??"invokeExecutionRef",s;try{s=Kn(e.argsMassaging,ga(e,t),n);}catch(u){let d=u instanceof Error?u.message:String(u);return at(d)}let o=Be(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,m])=>[l,String(m)]));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 at(`[${n}] HTTP ${u.status}${l?`: ${l}`:""}`)}let d=await u.text();if(!d.trim())return {result:"success",data:{}};try{return ha(ma(d))}catch{return {result:"success",data:{stdout:d.trim()}}}}catch(u){let d=u instanceof Error?u.message:String(u);return at(`[${n}] ${d}`)}}var bd={"local-node":async(e,t,r)=>ot(e,t,r),"local-python":async(e,t,r)=>ot(e,t,r),"local-process":async(e,t,r)=>ot(e,t,r),"built-in":async(e,t,r)=>ot(e,t,r),"http:post":la,"http:get":la},_d={"local-node":ot,"local-python":ot,"local-process":ot,"built-in":ot};async function ya(e,t,r){let n=r?.transports?.[e.howToRun]??bd[e.howToRun];return n?n(e,t,r):at(`[${r?.label??"invokeExecutionRef"}] unsupported howToRun: ${e.howToRun}`)}function Un(e,t,r){let n=r?.syncTransports?.[e.howToRun]??_d[e.howToRun];return n?n(e,t,r):at(`[${r?.label??"invokeExecutionRefSync"}] unsupported sync howToRun: ${e.howToRun}`)}function Rd(e){return {invoke(t,r){return ya(t,r,e)},invokeSync(t,r){return Un(t,r,e)}}}function Cd(e,t,r){return Un(e,t,r)}async function Ed(e,t){let r={...t,whatToRun:Be(e.whatToRun)},n=Gn(e.argsMassaging,r,"_invokeTaskExecutorHttp"),s=n.url??Be(e.whatToRun),o=n.body?n.body:wd(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 va(e,t,r){if(e.howToRun==="http:post"||e.howToRun==="http:get"){Ed(e,t).catch(i=>{console.error(`[dispatchTaskExecutorDetached] HTTP dispatch failed: ${i.message}`);});return}let{command:s,baseArgs:o}=pa(e,r),a=kd(t,e.extra);Dr({command:s,args:[...o,...a]});}function Xe(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 Ft(e){function t(s){return H.join(e,...s.split("/"))}function r(s){return H.relative(e,s).replace(/\\/g,"/")}function n(s,o){if(b.existsSync(s))for(let a of b.readdirSync(s,{withFileTypes:true})){let i=H.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(H.dirname(a),{recursive:true}),b.writeFileSync(i,o,"utf-8"),Xe(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(H.dirname(a),{recursive:true}),b.writeFileSync(i,Buffer.from(o)),Xe(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 Wn(){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(H.dirname(e),{recursive:true}),b.writeFileSync(r,t,"utf-8"),Xe(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(H.dirname(e),{recursive:true}),b.writeFileSync(r,Buffer.from(t)),Xe(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 Jn="__scratch-marker",zn="__scratch-config.json",Td=1440*60*1e3,Ad=720*60*1e3,Id=500;function Sa(e,t){if(!e)return t;let r=e.replace(/[^A-Za-z0-9._-]/g,"_");return r.length>0?r:t}function Gr(e){b.mkdirSync(e,{recursive:true});let t=H.join(e,Jn),r=H.join(e,zn),n=!b.existsSync(t);if(n)try{b.writeFileSync(t,`scratch-store
|
|
11
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"),Xe(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"]:Td,l=typeof u["retention.sweepIntervalMs"]=="number"?u["retention.sweepIntervalMs"]:Ad;if(d<=0||l<=0)return;let
|
|
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"),Xe(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"]:Td,l=typeof u["retention.sweepIntervalMs"]=="number"?u["retention.sweepIntervalMs"]:Ad;if(d<=0||l<=0)return;let m=typeof u["retention.lastSweepAt"]=="number"?u["retention.lastSweepAt"]:0,g=Date.now();if(g-m<l)return;u["retention.lastSweepAt"]=g,o(u);let f=g;try{let p=b.readdirSync(e,{withFileTypes:!0});for(let S of p){if(Date.now()-f>Id)break;if(!S.isFile()||S.name===Jn||S.name===zn)continue;let _=H.join(e,S.name);try{let w=b.statSync(_);if(g-w.mtimeMs>d)try{b.unlinkSync(_);}catch{}}catch{}}}catch{}}function i(u,d){let l=Sa(u,"scratch"),m=Sa(d,".json"),g=m.startsWith(".")?m:`.${m}`,f=`${l}-${Date.now()}-${randomUUID().slice(0,8)}${g}`;return H.join(e,f)}function c(u,d){let l=`${u}.${process.pid}.${randomUUID()}.tmp`;b.mkdirSync(H.dirname(u),{recursive:true}),b.writeFileSync(l,d,"utf-8"),Xe(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(H.dirname(u),{recursive:true}),b.writeFileSync(l,Buffer.from(d)),Xe(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 m of d){if(!m.isFile()||m.name===Jn||m.name===zn)continue;let g=H.join(e,m.name);(!u||g.startsWith(u))&&l.push(g);}return l.sort()}catch{return []}},getUniqueKey(u,d){return i(u,d)},create(u,d,l){let m=i(d,l);c(m,u);try{a();}catch{}return m},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 Pd="__archive-marker",jd="__archive-config.json",Vr="streams",Br="blobs",Od=500;function ka(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 Kr(e){b.mkdirSync(e,{recursive:true}),b.mkdirSync(H.join(e,Vr),{recursive:true}),b.mkdirSync(H.join(e,Br),{recursive:true});let t=H.join(e,Pd),r=H.join(e,jd);if(!b.existsSync(t))try{b.writeFileSync(t,`archive-store
|
|
13
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"),Xe(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,
|
|
15
|
-
`).filter(Boolean).map(n=>JSON.parse(n)):[]}return {append(r){let n={id:randomUUID(),payload:r};return b.mkdirSync(
|
|
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 Hn(e){if(e==null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return `[${e.map(Hn).join(",")}]`;let t=e;return `{${Object.keys(t).sort().map(n=>`${JSON.stringify(n)}:${Hn(t[n])}`).join(",")}}`}function wa(e){return createHash("sha256").update(Hn(e)).digest("hex")}function ba(e){let t=
|
|
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"),Xe(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,m=g=>{let f;try{f=b.readdirSync(g,{withFileTypes:!0});}catch{return}for(let p of f){if(Date.now()-l>Od)return;let S=H.join(g,p.name);if(p.isDirectory()){m(S);continue}if(p.isFile())try{let _=b.statSync(S);if(d-_.mtimeMs>i)try{b.unlinkSync(S);}catch{}}catch{}}};m(H.join(e,Vr)),m(H.join(e,Br));}return {stream(a){let i=ka(a),c=H.join(e,Vr,`${i}.jsonl`),u=Yn(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=ka(a),c=H.join(e,Br,i);b.mkdirSync(c,{recursive:true});let u=Ft(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=H.join(e,Vr);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=H.join(e,Br);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 Ur(e){function t(n){return H.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(H.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(H.dirname(o),{recursive:true}),b.writeFileSync(a,JSON.stringify(s,null,2),"utf-8"),Xe(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 Yn(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(H.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 Hn(e){if(e==null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return `[${e.map(Hn).join(",")}]`;let t=e;return `{${Object.keys(t).sort().map(n=>`${JSON.stringify(n)}:${Hn(t[n])}`).join(",")}}`}function wa(e){return createHash("sha256").update(Hn(e)).digest("hex")}function ba(e){let t=H.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
17
|
`).filter(Boolean).map(n=>JSON.parse(n)):[]},appendEntry(r){b.appendFileSync(t,JSON.stringify(r)+`
|
|
18
|
-
`,"utf-8");},generateId(){return randomUUID()}}}function _a(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 Ra={$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 ec=Zc(Xu());var lh=createRequire(import.meta.url),fh=lh("./jsonata-sync.cjs"),En=null;var Qu=/\b(card_data|requires|fetched_sources|computed_values|source_defs)\b/g,ph=/^\s*(card_data|requires|fetched_sources|computed_values|source_defs)(\.|$)/;function mh(e){let t=new Set,r;for(Qu.lastIndex=0;(r=Qu.exec(e))!==null;)t.add(r[1]);return t}function tc(e){let t=ph.exec(e);return t?t[1]:null}function Zu(e,t,r,n){try{fh(e);}catch(o){let a=o instanceof Error?o.message:String(o);n.push(`${t}: invalid JSONata expression (${a})`);return}let s=mh(e);for(let o of s)r.has(o)||n.push(`${t}: disallowed namespace "${o}" in expression`);}function qo(e,t,r){if(Array.isArray(e)){e.forEach((s,o)=>{qo(s,`${t}/${o}`,r);});return}if(typeof e=="string"){let s=tc(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))qo(o,`${t}/${s}`,r);}function gh(){if(En)return En;let e=new ec.default({allErrors:true});return ch(e),En=e.compile(Ra),En}function rc(e){let t=gh(),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 nc(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||Zu(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=tc(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)&&qo(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||Zu(y,`/source_defs/${d}/projections/${h}`,i,t);}),{ok:t.length===0,errors:t}}function Fo(e){let t=rc(e);if(!t.ok)return t;let r=nc(e);return r.ok?{ok:true,errors:[]}:{ok:false,errors:r.errors}}function sc(e){return String(e).replace(/[^a-zA-Z0-9_-]/g,"_")}function oc(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 Do(e,t){let r=s=>`chats/${sc(s)}/processing`,n=s=>`chats/${sc(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(oc)},readAfter(s,o){let a=e(s).readAfter(o);return {records:a.entries.map(oc),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 hh(){let e=globalThis.crypto;return typeof e?.randomUUID=="function"?String(e.randomUUID()):`id-${Date.now()}-${Math.random().toString(36).slice(2)}`}function yh(){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:hh(),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 mt={RUNNING:"running",COMPLETED:"completed",FAILED:"failed",INACTIVATED:"inactivated"};function Ie(e){return e?Array.isArray(e.provides)?e.provides:[]:[]}function gt(e){return e?Array.isArray(e.requires)?e.requires:[]:[]}function ac(e){return e.tasks??{}}function Mo(e){return e?e.status===mt.FAILED||e.status===mt.INACTIVATED:false}function ic(e,t){return e.refreshStrategy??t?.refreshStrategy??"data-changed"}function uc(e){return e.maxExecutions}function cc(e,t){let r=new Set;for(let[n,s]of Object.entries(t))if(s.status===mt.COMPLETED){let o=e.tasks[n];o&&Ie(o).forEach(i=>r.add(i));}return Array.from(r)}function dc(e,t){let r={};return e.forEach(n=>{let s=t[n];if(!s)return;Ie(s).forEach(a=>{r[a]||(r[a]=[]),r[a].push(n);});}),r}function lc(e,t,r){let n=e.tasks[t]??xn(),s={};if(r){let a=r.tasks[t],i=gt(a);for(let c of i)for(let[u,d]of Object.entries(r.tasks))if(Ie(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 fc(e,t,r,n,s,o){let a=e.tasks[r]??xn(),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=Ie(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(Ie(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 pc(e,t,r,n){let s=e.tasks[r]??xn(),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 mc(e,t,r,n){let s=e.tasks[t]??xn(),o={...s,progress:typeof n=="number"?n:s.progress,messages:[...s.messages??[],...r?[{message:r,timestamp:new Date().toISOString(),status:s.status}]:[]],lastUpdated:new Date().toISOString()};return {...e,tasks:{...e.tasks,[t]:o},lastUpdated:new Date().toISOString()}}function gc(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 xn(){return {status:"not-started",executionCount:0,retryCount:0,lastEpoch:0,messages:[],progress:null}}function Tn(e,t){let r=`live-${Date.now()}`,n={};for(let o of Object.keys(e.tasks))n[o]=yc();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 vh(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:lc(n,t.taskName,r)};case "task-completed":return {config:r,state:fc(n,r,t.taskName,t.result,t.dataHash,t.data)};case "task-failed":return {config:r,state:pc(n,r,t.taskName,t.error)};case "task-progress":return {config:r,state:mc(n,t.taskName,t.message,t.progress)};case "task-restart":return {config:r,state:gc(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:Ch(n,t.action)};case "task-upsert":return Sh(e,t.taskName,t.taskConfig);case "task-removal":return kh(e,t.taskName);case "node-requires-add":return wh(e,t.nodeName,t.tokens);case "node-requires-remove":return bh(e,t.nodeName,t.tokens);case "node-provides-add":return _h(e,t.nodeName,t.tokens);case "node-provides-remove":return Rh(e,t.nodeName,t.tokens);default:return e}}function hc(e,t){return t.reduce((r,n)=>vh(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]:yc()},lastUpdated:new Date().toISOString()}}}function kh(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 wh(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=gt(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 bh(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=gt(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 _h(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=Ie(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 Rh(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=Ie(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 Tr(e){return {version:1,config:e.config,state:e.state,snapshotAt:new Date().toISOString()}}function An(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 yc(){return {status:"not-started",executionCount:0,retryCount:0,lastEpoch:0,messages:[],progress:null}}function Ch(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 Ar(e){let{config:t,state:r}=e,n=ac(t);if(Object.keys(n).length===0)return {eligible:[],pending:[],unresolved:[],blocked:[],conflicts:{}};let o=$h(n),a=cc(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=ic(f,t.settings),_=v!=="once";if(p?.status===mt.RUNNING||Mo(p))continue;let g=uc(f);if(g!==void 0&&p&&p.executionCount>=g||f.circuit_breaker&&p&&p.executionCount>=f.circuit_breaker.max_executions||!_&&p?.status===mt.COMPLETED)continue;if(_&&p?.status===mt.COMPLETED){let R=gt(f),E=false;switch(v){case "data-changed":{R.length>0&&R.some(O=>{for(let[B,W]of Object.entries(n))if(Ie(W).includes(O)){let Z=r.tasks[B];if(!Z)continue;let fe=p.lastConsumedHashes?.[O];return Z.lastDataHash==null?Z.executionCount>p.lastEpoch:Z.lastDataHash!==fe}return false})||(E=true);break}case "epoch-changed":{R.length>0&&R.some(O=>{for(let[B,W]of Object.entries(n))if(Ie(W).includes(O)){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 O=p.completedAt;if(!O){E=true;break}(Date.now()-Date.parse(O))/1e3<I&&(E=true);break}case "manual":E=true;break}if(E)continue}let m=gt(f);if(m.length===0){c.push(y);continue}let k=[],w=[],$=[];for(let R of m){if(i.has(R))continue;let E=o[R]||[];E.length===0?k.push(R):E.every(O=>Mo(r.tasks[O]))?$.push({token:R,failedProducer:E[0]}):w.push(R);}k.length>0?d.push({taskName:y,missingTokens:k}):$.length>0?l.push({taskName:y,failedTokens:$.map(R=>R.token),failedProducers:[...new Set($.map(R=>R.failedProducer))]}):w.length>0?u.push({taskName:y,waitingOn:w}):c.push(y);}let h={};if(c.length>1){let y=dc(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 $h(e){let t={};for(let[r,n]of Object.entries(e)){for(let s of Ie(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 Ir=class{buffer=[];append(t){this.buffer.push(t);}drain(){let t=this.buffer;return this.buffer=[],t}get size(){return this.buffer.length}};function Lo(e){let t=Vo(e);return Eh(t)}function Vo(e){if(e==null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return "["+e.map(Vo).join(",")+"]";let t=e;return "{"+Object.keys(t).sort().map(n=>JSON.stringify(n)+":"+Vo(t[n])).join(",")+"}"}function Eh(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 xh(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 Th(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 vc(e){let t=JSON.stringify({t:e,n:Date.now().toString(36)+Math.random().toString(36).slice(2,6)});return xh(t)}function Ah(e){try{let t=JSON.parse(Th(e));return typeof t?.t=="string"?{taskName:t.t}:null}catch{return null}}function Sc(e,t,r){let{handlers:n,onDrain:s}=t,o=new Ir,a="state"in e&&"config"in e?e:Tn(e),i=false,c=new Set,u=new Map(Object.entries(n)),d=new Ir,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 g=d.drain(),m=o.drain(),k=[...g,...m];k.length>0&&(a=hc(a,k));let w=Ar(a);k.length>0&&s?.(k,a,w);for(let $ of w.eligible)_($);for(let $ of k)if($.type==="task-progress"){let{taskName:R,update:E}=$;if(!a.config.tasks[R])continue;let O=a.state.tasks[R];if(!O||O.status!=="running")continue;let B=vc(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(g){let k=a.config.tasks[g].requires??[],w=new Map;for(let[R,E]of Object.entries(a.config.tasks))for(let I of E.provides??[])w.set(I,R);let $={};for(let R of k){let E=w.get(R);E?$[R]=a.state.tasks[E]?.data:$[R]=void 0;}return $}async function v(g,m,k){let w=a.config.tasks[g],$=w.taskHandlers??[],R=p(g);for(let E of $){let I=u.get(E);if(!I)throw new Error(`Handler '${E}' not found in registry (task '${g}')`);let O={nodeId:g,state:R,taskState:a.state.tasks[g],config:w,callbackToken:m,update:k};if(await I(O)==="task-initiate-failure")throw new Error(`Handler '${E}' returned task-initiate-failure (task '${g}')`)}}function _(g){let k=a.config.tasks[g]?.taskHandlers;if(!k||k.length===0)return;d.append({type:"task-started",taskName:g,timestamp:new Date().toISOString()}),y();let w=vc(g),$=v(g,w).catch(R=>{i||(d.append({type:"task-failed",taskName:g,error:R.message??String(R),timestamp:new Date().toISOString()}),y());}).finally(()=>{c.delete($);});c.add($);}return {push(g){i||(g.type==="task-completed"&&g.data&&!g.dataHash&&(g={...g,dataHash:Lo(g.data)}),o.append(g),y());},pushAll(g){if(!i){for(let m of g)m.type==="task-completed"&&m.data&&!m.dataHash?o.append({...m,dataHash:Lo(m.data)}):o.append(m);y();}},resolveCallback(g,m,k){if(i)return;let w=Ah(g);if(!w)return;let{taskName:$}=w;if(a.config.tasks[$]){if(k&&k.length>0)o.append({type:"task-failed",taskName:$,error:k.join("; "),timestamp:new Date().toISOString()});else {let R=m&&Object.keys(m).length>0?Lo(m):void 0;o.append({type:"task-completed",taskName:$,data:m,dataHash:R,timestamp:new Date().toISOString()});}y();}},addNode(g,m){i||(o.append({type:"task-upsert",taskName:g,taskConfig:m,timestamp:new Date().toISOString()}),y());},removeNode(g){i||(o.append({type:"task-removal",taskName:g,timestamp:new Date().toISOString()}),y());},addRequires(g,m){i||(o.append({type:"node-requires-add",nodeName:g,tokens:m,timestamp:new Date().toISOString()}),y());},removeRequires(g,m){i||(o.append({type:"node-requires-remove",nodeName:g,tokens:m,timestamp:new Date().toISOString()}),y());},addProvides(g,m){i||(o.append({type:"node-provides-add",nodeName:g,tokens:m,timestamp:new Date().toISOString()}),y());},removeProvides(g,m){i||(o.append({type:"node-provides-remove",nodeName:g,tokens:m,timestamp:new Date().toISOString()}),y());},registerHandler(g,m){u.set(g,m);},unregisterHandler(g){u.delete(g);},retrigger(g){i||a.config.tasks[g]&&(o.append({type:"task-restart",taskName:g,timestamp:new Date().toISOString()}),y());},retriggerAll(g){if(!i){for(let m of g)a.config.tasks[m]&&o.append({type:"task-restart",taskName:m,timestamp:new Date().toISOString()});y();}},snapshot(){return Tr(a)},getState(){return a},getSchedule(){return Ar(a)},async waitForHandlers(){c.size>0&&await Promise.allSettled([...c]);},async dispose(g){g?.wait&&c.size>0&&await Promise.allSettled([...c]),i=true;}}}var Ph=createRequire(import.meta.url),In=Ph("./jsonata-sync.cjs"),bc=In;function kc(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 _c(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 Oh(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 In(s.expr).evaluate(n);_c(e.computed_values,s.bindTo,o),n.computed_values=e.computed_values;}catch{}return e}function jh(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=bc(o.expr).evaluate(n);_c(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 Nh(e,t,r){let n={...r??{},card_data:t.card_data??{},requires:t.requires??{},fetched_sources:t._sourcesData??{},computed_values:t.computed_values??{}};return In(e).evaluate(n)}function qh(e,t){return t.startsWith("fetched_sources.")?kc(e._sourcesData??{},t.slice(16)):kc(e,t)}var wc=new Set(["metric","table","editable-table","chart","form","filter","list","notes","todo","alert","narrative","badge","text","markdown","ref","custom","actions"]),Fh=new Set(["id","meta","requires","provides","view","card_data","compute","source_defs"]);function Dh(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))Fh.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`):wc.has(s.kind)||t.push(`view.elements[${o}].kind: unknown kind "${s.kind}". Valid: ${[...wc].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 Mh(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 In(a).evaluate(r);}catch{s[o]=void 0;}}return {...n,_projections:s}}))}function Lh(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]=bc(a).evaluate(r);}catch{s[o]=void 0;}}return {...n,_projections:s}})}var ht={run:Oh,runSync:jh,eval:Nh,resolve:qh,validate:Dh,enrichSources:Mh,enrichSourcesSync:Lh};function Vh(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:oe({kind:"fs-path",value:e}),...t?{extra:t}:{}}}function Bo(e){return JSON.stringify(e)}function Go(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 Pn(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(),a=o[s];a&&(e.removeCard(a.key),delete o[s],e.writeIndex(o));},readIndex(){return r()}}}function Ko(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 xc(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 Tc(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 Pr="v1",yt="board/graph",Ac="board/lastJournalProcessedId";function Rc(e){return `cards/${e}/runtime`}function Ic(e){return {readRuntime(t){return e.read(Rc(t))??{_sources:{}}},writeRuntime(t,r){e.write(Rc(t),r);}}}function Bh(e,t){let r={...e};for(let n of t.deleteKeys)delete r[n];return {...r,...t.shallowMerge}}function Pc(e){return {readSnapshot(t){return e.readValues(t)},commitSnapshot(t,r){if(r.schemaVersion!==Pr)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=Bh(n.values,r);return {ok:true,newVersion:e.writeValues(t,s,r.deleteKeys)}}}}function Uo(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 Go(r.trim())},writeTaskExecutorRef(r){e.write("task-executor",Bo(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 Oc(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 Cc(e){return e?{lastRequestedToken:e.lastRequestedToken,lastCompletedToken:e.lastCompletedToken,lastCompletionStatus:e.lastCompletionStatus??(e.lastCompletedToken?"success":"not-started"),queueRequestedToken:e.queueRequestedToken}:{lastCompletionStatus:"not-started"}}function Gh(e){return e?.lastRequestedToken?e.lastCompletedToken!==e.lastRequestedToken:false}function $c(e,t){return e?.lastRequestedToken?Gh(e)?"in-flight":!e.lastCompletedToken||e.lastCompletedToken<t?"dispatch":"idle":"dispatch"}function Kh(e,t){return {...e,lastCompletedToken:t,lastCompletionStatus:"success"}}function Ec(e,t){return {...e,lastCompletedToken:t,lastCompletionStatus:"failure"}}function On(e,t){let r=t.state.tasks,n=t.config.tasks,s=Object.keys(r),o=Ar(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??[],g=v.provides??[],m=Object.keys(p.data??{}).sort(),k=_.filter(O=>t.state.availableOutputs.includes(O)),w=_.filter(O=>!t.state.availableOutputs.includes(O)),$=i.get(f)??w,R=new Set;for(let O of g)for(let B of c.get(O)??[])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:k,requires_missing:w,provides_declared:g,provides_runtime:m,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,g=(p.provides??[]).some(m=>(c.get(m)??[]).some(k=>k!==f));v&&!g&&(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 Uh(){return new Date().toISOString()}function jc(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=>Cc(f._sources[D]),g=(D,M)=>{f._sources[D]=Cc(M),p=true;},m=i.taskState?.executionCount??0;if(f._lastExecutionCount!==m&&(f._sources={},f._lastExecutionCount=m,p=true),i.update){let D=i.update,M=D.outputFile;if(M){let re=_(M);if(D.failure){let X=D.rqt??re.lastRequestedToken??re.queueRequestedToken;X&&g(M,Ec(re,X));}else {let X=D.rqt;if(!re.lastCompletedToken||X>re.lastCompletedToken){let de=typeof D.deliveryToken=="string"?D.deliveryToken:void 0,C=false;de&&(C=r.fetchedSourcesStore.commitSourceData(d,M,de)),C?g(M,Kh(re,X)):g(M,Ec(re,X));}}v();}}let w={};for(let D of h)if(D.outputFile){let M=r.fetchedSourcesStore.readSourceData(d,D.outputFile);M!==null&&(w[D.bindTo]=M);}let $={};for(let[D,M]of Object.entries(i.state??{}))if(M!==null&&typeof M=="object"&&!Array.isArray(M)){let re=M[D];$[D]=re!==void 0?re:M;}else $[D]=M;let R={id:d,card_data:{...l},requires:$,source_defs:h,compute:u.compute};R._sourcesData=w,u.compute&&ht.runSync(R,{sourcesData:w}),(o??r.outputStore.writeComputedValues.bind(r.outputStore))(d,R.computed_values??{});let E={...u},I=ht.enrichSourcesSync(Array.isArray(u.source_defs)?u.source_defs:void 0,{card_data:u.card_data,requires:$}),O=e.value;E.source_defs=Array.isArray(I)?I.map(D=>({...D,boardDir:typeof D.boardDir=="string"&&D.boardDir?D.boardDir:O})):I;let B=Uh(),W=i.update?void 0:B,Z=y.filter(D=>{let M=D.outputFile;if(typeof M!="string"||!M)return true;let re=_(M);W&&(re={...re,queueRequestedToken:W},g(M,re));let X=re.queueRequestedToken??re.lastRequestedToken??B,de=$c(re,X);return de==="in-flight"?false:de==="dispatch"});if(v(),Z.length>0){let D=false,M=B;for(let re of Z){let X=re.outputFile;if(typeof X!="string"||!X)continue;let de=_(X),C=de.queueRequestedToken??B;g(X,{...de,lastRequestedToken:C}),M=C,D=true;}return D&&v(),D&&(c.push({taskKind:"source-fetch",payload:{boardRef:oe(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 re=_(M),X=re.queueRequestedToken??re.lastRequestedToken??B;return $c(re,X)==="in-flight"}))return "task-initiated";let Pe=u.provides??[],_e={};for(let{bindTo:D,ref:M}of Pe)_e[D]=ht.resolve(R,M);return (a??r.outputStore.writeDataObjects.bind(r.outputStore))(_e),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:oe(e),enrichedCard:E,callbackToken:i.callbackToken,rqt:B}}),n(i.nodeId,_e),c.length>0&&r.executionRequestStore.appendEntries(t,c),"task-initiated"}}var jn={settings:{completion:"manual",refreshStrategy:"data-changed"},tasks:{}};function Nc(e){return {[yt]:e.graph,[Ac]:e.lastDrainedJournalId}}function qc(e){let t=e[yt],r=e[Ac];if(!t||typeof t!="object")throw new Error(`State snapshot is missing required key: ${yt}`);return {graph:t,lastDrainedJournalId:typeof r=="string"?r:""}}function Fc(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 Jh(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 Mc(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 Nn(e){try{let t=JSON.parse(Mc(e));return typeof t?.t=="string"?{taskName:t.t}:null}catch{return null}}function zh(e){return Jh(JSON.stringify(e))}function Dc(e){try{let t=JSON.parse(Mc(e));return typeof t?.cbk=="string"&&typeof t?.cid=="string"&&typeof t?.b=="string"&&typeof t?.d=="string"?t:null}catch{return null}}function Se(){return new Date().toISOString()}function Hh(e,t){let r=t.onWarn??(()=>{}),n=oe(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)},removeCard(T){S.delete(T);},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 ue of T)j[ue]=S.read(ue);return {version:t.hashFn(j),values:j}},writeValues(C,S,T){let j=t.kvStorage("state-snapshot");for(let ue of T)j.delete(ue);for(let[ue,ne]of Object.entries(S))j.write(ue,ne);return t.hashFn(S)}},i=()=>Uo(t.kvStorage("config")),c=()=>Pc(a),u=()=>xc(t.journalAdapter()),d=()=>Pn(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 Oc(t.kvStorageForRef(C))},h=()=>{let C=i().readArchiveStoreRef();return C?t.archiveFactoryForRef(C):t.archiveFactory()};function y(){return !!c().readSnapshot(e.value).values[yt]}function f(){let C=c().readSnapshot(e.value);if(!C.values[yt])throw new Error(`Board not initialized at ${e.value}`);return qc(C.values)}function p(C,S){let T=c().commitSnapshot(e.value,{schemaVersion:Pr,expectedVersion:S,commitId:t.genId(),committedAt:Se(),deleteKeys:[],shallowMerge:Nc(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=(P,F)=>{let ce=P.payload,st=(ce?.enrichedCard??{}).id??ce?.cardId??"unknown";v({type:"task-failed",taskName:st,error:F,timestamp:Se()});},S=Tc(t.kvStorage("execution-requests"),C),T=Ic(t.kvStorage("card-runtime")),j=Ko(t.blobStorage("sources"),P=>t.resolveBlob(P)),ue=new Map,ne={readRuntime(P){return ue.get(P)??T.readRuntime(P)},writeRuntime(P,F){ue.set(P,F);}},Te=[],ke=new Map,nt={readSourceData(P,F){let ce=`${P}/${F}`;return ke.has(ce)?ke.get(ce):j.readSourceData(P,F)},ingestSourceDataStaged(P,F,ce,jt){j.ingestSourceDataStaged(P,F,ce,jt);},commitSourceData(P,F,ce){let jt=`${P}/.staged/${ce}/${F}`,Nr=t.blobStorage("sources").read(jt);if(Nr==null)return false;let Nt=`${P}/${F}`,Yo=Nr.trim();try{ke.set(Nt,JSON.parse(Yo));}catch{ke.set(Nt,Yo);}return Te.push({cardId:P,outputFile:F,deliveryToken:ce}),true},hasSource(P,F){let ce=`${P}/${F}`;return ke.has(ce)?true:j.hasSource(P,F)}},Ae={cardStore:d(),cardRuntimeStore:ne,fetchedSourcesStore:nt,outputStore:l(),executionRequestStore:S},vt=f(),St=An(vt.graph),{events:Pt,newCursor:Ot}=u().readEntriesAfterCursor(vt.lastDrainedJournalId),kt=[],qn=[],Fn=[],zo=new Map,Kc=(P,F)=>{kt.push({type:"task-completed",taskName:P,data:F,timestamp:Se()});try{h().stream("exec-history").append({taskName:P,status:"completed",completedAt:Se()});}catch{}},Ho=(P,F)=>{v({type:"task-failed",taskName:P,error:F,timestamp:Se()});try{h().stream("exec-history").append({taskName:P,status:"failed",error:F,completedAt:Se()});}catch{}},Or=Sc(St,{handlers:{"card-handler":jc(e,Ot,Ae,Kc,Ho,(P,F)=>{qn.push({cardId:P,values:F});},P=>{Fn.push(P);})}});for(kt=Pt;kt.length>0;){let P=kt;kt=[];for(let F of P)if(F.type==="task-restart"){let ce=Ae.cardStore.readCard(F.taskName);ce&&zo.set(F.taskName,ce);}Or.pushAll(P),await Or.waitForHandlers();}let Wo=Or.getState();await Or.dispose({wait:true});let Uc=c().readSnapshot(e.value).version;p({lastDrainedJournalId:Ot,graph:Tr(Wo)},Uc);for(let{cardId:P,values:F}of qn)Ae.outputStore.writeComputedValues(P,F);for(let P of Fn)Ae.outputStore.writeDataObjects(P);for(let[P,F]of ue)T.writeRuntime(P,F);for(let{cardId:P,outputFile:F,deliveryToken:ce}of Te)j.commitSourceData(P,F,ce);let jr;try{jr=On(n,Wo),Ae.outputStore.writeStatusSnapshot(jr);}catch(P){r(`[board-live-cards-public] status publish failed: ${P instanceof Error?P.message:String(P)}`);}let Zt=[];for(let{cardId:P,values:F}of qn)Zt.push({kind:"computed_values",cardId:P,values:F});for(let P of Fn)for(let[F,ce]of Object.entries(P))F&&Zt.push({kind:"data_object",key:F,payload:ce});for(let[P,F]of zo)Zt.push({kind:"card_refreshed",cardId:P,card:F});jr!==void 0&&Zt.push({kind:"status",status:jr}),s(Zt);let Jc=i().readTaskExecutorRef()??{howToRun:"built-in",whatToRun:oe({kind:"built-in",value:"source-cli-task-executor"})};S.dispatchEntriesForJournalId(Ot,P=>{if(P.taskKind!=="source-fetch"){r(`[process-accumulated-events] unknown taskKind "${P.taskKind}" \u2014 skipping`);return}let F=P.payload,ce=F.enrichedCard?.id??"unknown",jt=F.enrichedCard?.source_defs??[];for(let st of jt){if(!st.outputFile){r(`[dispatch] source "${st.bindTo}" has no outputFile \u2014 skipping`);continue}let Nr=zh({cbk:F.callbackToken,rg:e.value,br:oe(e),cid:ce,b:st.bindTo,d:st.outputFile,cs:void 0,rqt:F.rqt});t.dispatchExecution(Jc,{source_def:st,base_ref:oe(e),callback:{token:Nr,via:t.selfRef}}).catch(Nt=>Ho(ce,Nt instanceof Error?Nt.message:String(Nt)));}});}async function g(){try{let C=()=>{let T=f(),{events:j}=u().readEntriesAfterCursor(T.lastDrainedJournalId);j.length<=0||(g(),t.requestProcessAccumulated?.());},S=await Qo(t.lock,_,C);return Q({ran:S!==!1})}catch(C){return ee(C)}}function m(){g(),t.requestProcessAccumulated?.();}function k(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 ke=Tn(jn);p({lastDrainedJournalId:"",graph:Tr(ke)},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,ue=C.params?.archiveStoreRef,ne=i();ne.writeCardStoreRef(S),ne.writeOutputsStoreRef(T),j&&ne.writeScratchStoreRef(j),ue&&ne.writeArchiveStoreRef(ue);let Te=C.body??{};Te["task-executor-ref"]&&ne.writeTaskExecutorRef(Te["task-executor-ref"]),Object.prototype.hasOwnProperty.call(Te,"chat-handler-flow")&&ne.writeChatHandlerFlow(Te["chat-handler-flow"]);try{l().writeStatusSnapshot(On(n,An(f().graph)));}catch{}return Q()}catch(S){return ee(S)}}function w(C){try{let S=l().readStatusSnapshot();if(!S){S=On(n,An(f().graph));try{l().writeStatusSnapshot(S);}catch{}}return Q(S)}catch(S){return ee(S)}}function $(C){try{let S=C.params?.id;return S?(v({type:"task-removal",taskName:S,timestamp:Se()}),m(),Q()):q("removeCard requires params.id")}catch(S){return ee(S)}}function R(C){try{let S=C.params?.id;return S?(v({type:"task-restart",taskName:S,timestamp:Se()}),m(),Q()):q("retrigger requires params.id")}catch(S){return ee(S)}}async function E(C){return g()}function I(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 ue=T?d().readAllCards().map(ne=>ne.id):[S];for(let ne of ue)if(!d().readCard(ne))return q(`Card "${ne}" not found in board at ${e.value}`);for(let ne of ue){let Te=d().readCard(ne),ke=Fc(Te),nt=t.hashFn(ke),Ae=t.kvStorage("card-upsert"),vt=Ae.read(ne),St=vt?.taskConfigHash!==nt;if(!(!St&&!j)){if(St){let Pt=vt?.blobRef??d().readCardKey(ne)??ne;v({type:"task-upsert",taskName:ne,taskConfig:ke,timestamp:Se()}),Ae.write(ne,{blobRef:Pt,taskConfigHash:nt,updatedAt:Se()});}j&&v({type:"task-restart",taskName:ne,timestamp:Se()});}}return m(),Q()}catch(S){return ee(S)}}function O(C){try{let S=C.params?.token;if(!S)return q("taskFailed requires params.token");let T=C.params?.error??"unknown error",j=Nn(S);if(!j)return q("Invalid callback token");v({type:"task-failed",taskName:j.taskName,error:T,timestamp:Se()});try{h().stream("exec-history").append({taskName:j.taskName,status:"failed",error:T,completedAt:Se()});}catch{}return m(),Q()}catch(S){return ee(S)}}function B(C){try{let S=C.params?.token;if(!S)return q("taskProgress requires params.token");let j=(C.body??{}).update??{},ue=Nn(S);return ue?(v({type:"task-progress",taskName:ue.taskName,update:j,timestamp:Se()}),m(),Q()):q("Invalid callback token")}catch(S){return ee(S)}}function W(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=Dc(S);if(!j)return q("Invalid source token");let{cbk:ue,cid:ne,b:Te,d:ke,cs:nt,rqt:Ae}=j,vt=Ko(t.blobStorage("sources"),kt=>t.resolveBlob(kt)),St=t.genId();vt.ingestSourceDataStaged(ne,ke,Ue(T),St);let Pt=Nn(ue);if(!Pt)return q("Invalid callback token embedded in source token");let Ot=Se();return v({type:"task-progress",taskName:Pt.taskName,update:{bindTo:Te,outputFile:ke,fetchedAt:Ot,deliveryToken:St,sourceChecksum:nt,rqt:Ae},timestamp:Ot}),m(),Q()}catch(S){return ee(S)}}function Z(C){try{let S=C.params?.token,T=C.params?.reason??"unknown";if(!S)return q("sourceDataFetchFailure requires params.token");let j=Dc(S);if(!j)return q("Invalid source token");let{cbk:ue,b:ne,d:Te,cs:ke,rqt:nt}=j,Ae=Nn(ue);return Ae?(v({type:"task-progress",taskName:Ae.taskName,update:{bindTo:ne,outputFile:Te,failure:!0,reason:T,sourceChecksum:ke,rqt:nt},timestamp:Se()}),m(),Q()):q("Invalid callback token embedded in source token")}catch(S){return ee(S)}}function fe(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 Pe(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 _e(C){try{let S=i().readScratchStoreRef();return Q({storeRef:S})}catch(S){return ee(S)}}function Ye(C){try{let S=i().readArchiveStoreRef();return Q({storeRef:S})}catch(S){return ee(S)}}function D(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 M(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 re(C){try{return Q(l().readAllDataObjects())}catch(S){return ee(S)}}function X(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 de(C){try{return Q(l().readAllComputedValues())}catch(S){return ee(S)}}return {init:k,status:w,getCardStoreRef:fe,getOutputsStoreRef:Pe,getScratchStoreRef:_e,getArchiveStoreRef:Ye,getConfig:D,getOutputsDataObject:M,getAllOutputsDataObjects:re,getOutputsComputedValues:X,getAllOutputsComputedValues:de,removeCard:$,retrigger:R,processAccumulatedEvents:E,upsertCard:I,taskFailed:O,taskProgress:B,sourceDataFetched:W,sourceDataFetchFailure:Z}}function Wh(e,t){let r=()=>Uo(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 m=t.kvStorageForRef(g);return {readIndex(){return m.read("_index")},writeIndex(k){m.write("_index",k);},readCard(k){return m.read(k)},writeCard(k,w){return m.write(k,w),t.hashFn(w)},removeCard(k){m.delete(k);},cardExists(k){return m.read(k)!==null},defaultCardKey(k){return k}}}let s=()=>Pn(n(),t.onWarn??(()=>{})),o=()=>{let g=r().readScratchStoreRef();return g?t.scratchStorageForRef(g):t.scratchStorage()};function a(g,m){let k=t.validateSchema(m),w=[],$=r().readTaskExecutorRef();if($&&Array.isArray(m.source_defs))for(let E of m.source_defs){let I=typeof E.bindTo=="string"?E.bindTo:"(unknown)";try{let O;try{O=t.invokeExecutorSync($,"validate-source-def",[],{timeout:t.executorTimeouts?.validationMs??1e4,input:JSON.stringify(E)});}catch(W){let Z=W;if(O=typeof Z?.stdout=="string"?Z.stdout:"",!O.trim()){w.push(`source "${I}": executor validate-source-def failed \u2014 ${W instanceof Error?W.message:String(W)}`);continue}}let B=JSON.parse(O.trim());if(!B.ok&&Array.isArray(B.errors))for(let W of B.errors)w.push(`source "${I}": ${W}`);}catch(O){w.push(`source "${I}": executor validate-source-def failed \u2014 ${O instanceof Error?O.message:String(O)}`);}}let R=[...k.errors,...w];return Q({cardId:g,isValid:R.length===0,issues:R})}function i(g,m,k){let w=r().readTaskExecutorRef();if(!w)return q("No task-executor registered for this board");let $=typeof g.bindTo=="string"?g.bindTo:"source",R=o(),E={...g,boardDir:e.value,_projections:m},I=R.create(JSON.stringify(E,null,2),`probe-in-${$}`,".json"),O=R.getUniqueKey(`probe-out-${$}`,".json"),B=R.getUniqueKey(`probe-err-${$}`,".txt"),W=oe(R.keyRef(I)),Z=oe(R.keyRef(O)),fe=oe(R.keyRef(B)),Pe=null;try{if(t.invokeExecutorSync(w,"run-source-fetch",["--in-ref",W,"--out-ref",Z,"--err-ref",fe],{timeout:g.timeout??t.executorTimeouts?.probeMs??6e4}),Pe=R.read(O),Pe===null)return q("Executor produced no output file")}catch(_e){let Ye=R.read(B)?.trim()??(_e instanceof Error?_e.message:String(_e));return q(`Probe failed: ${Ye}`)}finally{try{R.remove(I);}catch{}try{R.remove(B);}catch{}}if(k){let _e=Ue(k);t.absoluteBlob.write(_e.value,Pe);}try{R.remove(O);}catch{}return Q({bindTo:$,resultSizeBytes:Pe.length})}function c(g){try{let m=g.params?.cardId,k=g.params?.all;if(!m&&!k)return q("validateCard requires --card-id <id> or --all");let w=k?s().readAllCards().map(R=>R.id):[m],$=[];for(let R of w){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(m){return ee(m)}}function u(g){try{if(!g.body||typeof g.body!="object"||Array.isArray(g.body))return q("validateCardPreflight requires card JSON object in body");let m=g.body,k=m["card-content"]??m,w=typeof k.id=="string"?k.id:"(unknown)",$=a(w,k),R=r().readTaskExecutorRef();if(R)try{let E=t.invokeExecutorSync(R,"validate-card-preflight",[],{timeout:t.executorTimeouts?.validationMs??1e4,input:JSON.stringify(k)}),I=JSON.parse(E.trim());if(!I.ok&&Array.isArray(I.errors)&&I.errors.length>0){let O=[...$.status==="success"?$.data.issues:[],...I.errors];return Q({cardId:w,isValid:!1,issues:O})}}catch{}return $}catch(m){return ee(m)}}function d(g){try{let m=g.params?.cardId,k=g.params?.sourceIdx,w=g.params?.outRef;if(!m)return q("probeSource requires params.cardId");if(k===void 0)return q("probeSource requires params.sourceIdx");let R=(g.body??{})["mock-projections"]??{},E=s().readCard(m);if(!E)return q(`Card "${m}" not found`);let I=E.source_defs??[];return k<0||k>=I.length?q(`sourceIdx ${k} out of range (card has ${I.length} source(s))`):i(I[k],R,w)}catch(m){return ee(m)}}function l(g){try{let m=g.params?.outRef,k=g.body;if(!k)return q('probeTmpSource requires body with "source-def" and "mock-projections"');let w=k["source-def"],$=k["mock-projections"]??{};return w?i(w,$,m):q('probeTmpSource body requires "source-def"')}catch(m){return ee(m)}}function h(g){try{let m=g.params?.sourceIdx,k=g.params?.outRef;if(m===void 0)return q("probeSourcePreflight requires params.sourceIdx");if(!g.body||typeof g.body!="object"||Array.isArray(g.body))return q("probeSourcePreflight requires card JSON object in body");let w=g.body,$=w["card-content"]??w,R=w["mock-projections"]??{},E=$.source_defs??[];if(m<0||m>=E.length)return q(`sourceIdx ${m} out of range (card has ${E.length} source(s))`);let I=E[m],O=r().readTaskExecutorRef();if(O){let B=typeof I.bindTo=="string"?I.bindTo:"source";try{let W={...I,_projections:R},Z=t.invokeExecutorSync(O,"probe-source-preflight",[],{timeout:I.timeout??t.executorTimeouts?.preflightMs??6e4,input:JSON.stringify(W)}),fe=JSON.parse(Z.trim());return fe.ok?Q({bindTo:B,reachable:fe.reachable,latencyMs:fe.latencyMs,note:fe.note}):q(fe.error??"Preflight probe failed")}catch{}}return i(I,R,k)}catch(m){return ee(m)}}function y(g){try{let m=r().readTaskExecutorRef();if(!m)return q("No task-executor registered for this board");let k=t.invokeExecutorSync(m,"describe-capabilities",[],{timeout:t.executorTimeouts?.describeMs??1e4});return Q(JSON.parse(k.trim()))}catch(m){return ee(m)}}function f(g){try{let m=g.body;if(!m||!Array.isArray(m.ops))return q("updatesInCardStore requires body.ops array");let k=m.ops,w=s();for(let $ of k){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"`);w.writeCard(E,I);}else return q(`Unknown op type: "${R??"(none)"}"`)}return Q()}catch(m){return ee(m)}}function p(g){try{let m=g.body;if(!m||!Array.isArray(m.ids))return q("readFromCardStore requires body.ids array");let k=m.ids,w=s(),$=k.map(R=>({id:R,"card-content":w.readCard(R)}));return Q({cards:$})}catch(m){return ee(m)}}function v(g){try{if(!g.body||typeof g.body!="object"||Array.isArray(g.body))return q("evalCardCompute requires a JSON object in body");let m=g.body,k=m["card-content"]??m,w=typeof k.id=="string"?k.id:"(unknown)",$=m["mock-fetched-sources"]??{},R=m["mock-requires"]??{},E=k.compute;if(!E||!Array.isArray(E)||E.length===0)return Q({cardId:w,ok:!0,computed_values:{},errors:[]});let I={id:w,card_data:k.card_data??{},requires:R,source_defs:k.source_defs,compute:E},O=ht.runSync(I,{sourcesData:$}),B=O.node.computed_values??{},W=O.errors??[];return Q({cardId:w,ok:W.length===0,computed_values:B,errors:W})}catch(m){return ee(m)}}function _(g){try{if(!g.body||typeof g.body!="object"||Array.isArray(g.body))return q("simulateCardCycle requires a JSON object in body");let m=g.body,k=m["card-content"]??m,w=typeof k.id=="string"?k.id:"(unknown)",$=m["mock-fetched-sources"]??{},R=m["mock-requires"]??{},E=a(w,k),I=E.status==="success"?{isValid:E.data.isValid,issues:E.data.issues}:{isValid:!1,issues:[E.status==="fail"?E.error:"internal error"]},O=k.source_defs??[],B=k.card_data??{},W=[],Z=[];if(O.length>0){W=ht.enrichSourcesSync(O,{card_data:B,requires:R});for(let X of W){let de=X.projections,C=X._projections;if(de&&C){for(let S of Object.keys(de))if(C[S]===void 0){let T=typeof X.bindTo=="string"?X.bindTo:"(unknown)";Z.push({bindTo:T,key:S,error:`Projection "${S}" resolved to undefined`});}}}}let fe=[],Pe=m["task-executor-ref"],_e=(Pe?.howToRun&&Pe?.whatToRun?Pe:void 0)??r().readTaskExecutorRef();for(let X=0;X<W.length;X++){let de=W[X],C=typeof de.bindTo=="string"?de.bindTo:`source_${X}`;if(!_e){fe.push({bindTo:C,skipped:!0,error:"No task executor configured"});continue}try{let S={...de},T=t.invokeExecutorSync(_e,"probe-source-preflight",[],{timeout:de.timeout??t.executorTimeouts?.preflightMs??6e4,input:JSON.stringify(S)}),j=JSON.parse(T.trim());fe.push({bindTo:C,reachable:j.reachable,latencyMs:j.latencyMs,error:j.ok?void 0:j.error});}catch{fe.push({bindTo:C,skipped:!0,error:"Executor does not support probe-source-preflight"});}}let Ye=k.compute,D={},M=[];if(Ye&&Array.isArray(Ye)&&Ye.length>0){let X={id:w,card_data:B,requires:R,source_defs:k.source_defs,compute:Ye},de=ht.runSync(X,{sourcesData:$});D=de.node.computed_values??{},M=de.errors??[];}let re=I.isValid&&Z.length===0&&M.length===0&&fe.every(X=>X.reachable!==!1);return Q({cardId:w,ok:re,validation:I,source_probes:fe,projection_errors:Z,computed_values:D,compute_errors:M})}catch(m){return ee(m)}}return {validateCard:c,validateCardPreflight:u,probeSource:d,probeTmpSource:l,probeSourcePreflight:h,evalCardCompute:v,simulateCardCycle:_,describeTaskExecutorCapabilities:y,updatesInCardStore:f,readFromCardStore:p}}function Yh(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 Xh(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 Lc(){return new Date().toISOString()}function Vc(e){return new TextEncoder().encode(e).byteLength}function Qh(e){return e?{key:e.key,size:e.size,updatedAt:e.updatedAt,contentType:e.contentType}:null}function Zh(e){let t=String(e||"").match(/^(\d+)[-_]/);return t?parseInt(t[1],10):0}function ey(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 ty(e){return String(e||"").toLowerCase().replace(/\s+/g,"_").replace(/[^a-z0-9_-]/g,"_").replace(/_+/g,"_").replace(/^_+|_+$/g,"")||"file"}function ry(e){if(!e||e===".")return "";let t=String(e).replace(/^\./,"").toLowerCase().replace(/[^a-z0-9]/g,"");return t?`.${t}`:""}function ny(e){let t=ey(e),r=t.lastIndexOf(".");return r<=0||r===t.length-1?{stem:t,ext:""}:{stem:t.slice(0,r),ext:t.slice(r)}}function sy(e){let t=e.lastIndexOf("/");return t>=0?e.slice(t+1):e}function Jo(e){function t(r){let n=e.stat?Qh(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:Vc(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??Lc(),o.size=o.size??Vc(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??Lc(),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 oy(e){function t(s,o){let a=0,i=[];Array.isArray(o)&&i.push(...o);for(let c of e.list(`${s}/`))i.push(sy(c.key));for(let c of i){let u=Zh(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}=ny(s),d=ry(u),l=ty(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 ay(){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 ZS(){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=Le(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=Le(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 cy=".board.lock";function Bc(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 dy(e,t){return typeof e=="string"?{cliDir:e,opts:t}:{cliDir:void 0,opts:e}}function ly(e,t){return typeof e=="string"?{cliDir:e,opts:t}:{cliDir:void 0,opts:e}}function Gc(e){if(e)return e;let t=sa(import.meta.url),r=[t,Re(t,"..","cli","node"),Re(t,"..","..","cli","node")];for(let n of r)try{return Bn(n),n}catch{}throw new Error(`createFsBoardPlatformAdapter: could not resolve a public CLI directory from module dir ${t}`)}function fy(e,t,r){let{cliDir:n,opts:s}=dy(t,r),o=Gc(n),a=e.value,c={meta:"board-live-cards",howToRun:"local-node",whatToRun:(s?.suppressSpawn?"":Bn(o))?oe({kind:"yaml-flow-cli",value:"board-live-cards-cli.js"}):"",...s?.notifyChannel?{extra:{notifyChannel:s.notifyChannel}}:{}};return {kvStorage:u=>Ur(Re(a,`.${u}`)),blobStorage:u=>u?Ft(Re(a,u)):Ft(a),scratchStorage:()=>Gr(Re(a,".tmp")),scratchStorageForRef:u=>Gr(Ue(u).value),archiveFactory:()=>Kr(Re(a,"archive")),archiveFactoryForRef:u=>Kr(Ue(u).value),journalAdapter:()=>ba(a),lock:_a(Re(a,cy)),selfRef:c,async dispatchExecution(u,d){if(s?.suppressSpawn)return {dispatched:false};try{let l=d.source_def?.bindTo??Mn().slice(0,8),h=Gr(Re(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=oe(h.keyRef(y)),_=oe(h.keyRef(f)),g=oe(h.keyRef(p));return va(u,{subcommand:"run-source-fetch",inRef:v,outRef:_,errRef:g},o),{dispatched:!0}}catch(l){let h=l instanceof Error?l.message:String(l);try{let y=Kr(Re(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=ra(u.value)?Wn().read(u.value):Ft(a).read(u.value);if(d===null)throw new Error(`resolveBlob: blob not found: ::${u.kind}::${u.value}`);return d},hashFn:wa,genId:()=>na(`${Date.now()}-${Math.random()}`).slice(0,32),kvStorageForRef:u=>Ur(Ue(u).value),requestProcessAccumulated(){s?.suppressSpawn||ia(o,e,s?.notifyChannel);},publishBoardChangeNotifications(u){if(!s?.notifyChannel||u.length===0)return;let d=u.map(l=>({id:Mn(),ts:new Date().toISOString(),boardRef:oe(e),notification:l}));ua(s.notifyChannel,d,s.onWarn);},onWarn:s?.onWarn}}function ek(e,t,r){let{cliDir:n,opts:s}=ly(t,r),o=Gc(n),a=fy(e,o,s),i=Mr();return {...a,invokeExecutorSync(c,u,d,l){let{command:h,baseArgs:y}=Lr(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=Fo(c);return {ok:u.errors.length===0,errors:u.errors}},absoluteBlob:Wn()}}function tk(e,t={}){let r=t.chatsSubdir??"chats",n=t.kvSubdir??".kv",s=n?[n,"chat"]:["chat"],o=r&&!Bc(e,r)?Re(e,r):e,a=Ur(Re(e,...s));return Do(i=>{let u=`${String(i).replace(/[^a-zA-Z0-9_-]/g,"_")}.jsonl`,d=Re(o,u);return Yn(d)},a)}function rk(e,t={}){let r=t.filesSubdir??"files",n=r&&!Bc(e,r)?Re(e,r):e;return Jo(Ft(n))}function nk(e){try{let t=JSON.parse(Buffer.from(e,"base64url").toString());return typeof t.br=="string"?t.br:null}catch{return null}}
|
|
19
|
-
export{yt as BOARD_GRAPH_KEY,
|
|
18
|
+
`,"utf-8");},generateId(){return randomUUID()}}}function _a(e){return {tryAcquire(){try{if(!b.existsSync(e)){b.mkdirSync(H.dirname(e),{recursive:!0});try{b.writeFileSync(e,"{}",{flag:"wx"});}catch{}}return lockSync(e,{retries:0})}catch{return null}}}}var Ra={$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 ec=Zc(Xu());var lh=createRequire(import.meta.url),fh=lh("./jsonata-sync.cjs"),$n=null;var Qu=/\b(card_data|requires|fetched_sources|computed_values|source_defs)\b/g,ph=/^\s*(card_data|requires|fetched_sources|computed_values|source_defs)(\.|$)/;function mh(e){let t=new Set,r;for(Qu.lastIndex=0;(r=Qu.exec(e))!==null;)t.add(r[1]);return t}function tc(e){let t=ph.exec(e);return t?t[1]:null}function Zu(e,t,r,n){try{fh(e);}catch(o){let a=o instanceof Error?o.message:String(o);n.push(`${t}: invalid JSONata expression (${a})`);return}let s=mh(e);for(let o of s)r.has(o)||n.push(`${t}: disallowed namespace "${o}" in expression`);}function qo(e,t,r){if(Array.isArray(e)){e.forEach((s,o)=>{qo(s,`${t}/${o}`,r);});return}if(typeof e=="string"){let s=tc(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))qo(o,`${t}/${s}`,r);}function gh(){if($n)return $n;let e=new ec.default({allErrors:true});return ch(e),$n=e.compile(Ra),$n}function rc(e){let t=gh(),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 nc(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||Zu(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 m=tc(l);m===null?t.push(`/provides/${d}/ref: path "${l}" must start with a valid namespace (${[...s].join(", ")})`):s.has(m)||t.push(`/provides/${d}/ref: disallowed namespace "${m}" in path "${l}" (valid: ${[...s].join(", ")})`);});let a=r.view;a&&typeof a=="object"&&!Array.isArray(a)&&qo(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[m,g]of Object.entries(l))typeof g!="string"||g.trim().length===0||Zu(g,`/source_defs/${d}/projections/${m}`,i,t);}),{ok:t.length===0,errors:t}}function Fo(e){let t=rc(e);if(!t.ok)return t;let r=nc(e);return r.ok?{ok:true,errors:[]}:{ok:false,errors:r.errors}}function sc(e){return String(e).replace(/[^a-zA-Z0-9_-]/g,"_")}function oc(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 Do(e,t){let r=s=>`chats/${sc(s)}/processing`,n=s=>`chats/${sc(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(oc)},readAfter(s,o){let a=e(s).readAfter(o);return {records:a.entries.map(oc),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 hh(){let e=globalThis.crypto;return typeof e?.randomUUID=="function"?String(e.randomUUID()):`id-${Date.now()}-${Math.random().toString(36).slice(2)}`}function yh(){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:hh(),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 mt={RUNNING:"running",COMPLETED:"completed",FAILED:"failed",INACTIVATED:"inactivated"};function Pe(e){return e?Array.isArray(e.provides)?e.provides:[]:[]}function gt(e){return e?Array.isArray(e.requires)?e.requires:[]:[]}function ac(e){return e.tasks??{}}function Mo(e){return e?e.status===mt.FAILED||e.status===mt.INACTIVATED:false}function ic(e,t){return e.refreshStrategy??t?.refreshStrategy??"data-changed"}function uc(e){return e.maxExecutions}function cc(e,t){let r=new Set;for(let[n,s]of Object.entries(t))if(s.status===mt.COMPLETED){let o=e.tasks[n];o&&Pe(o).forEach(i=>r.add(i));}return Array.from(r)}function dc(e,t){let r={};return e.forEach(n=>{let s=t[n];if(!s)return;Pe(s).forEach(a=>{r[a]||(r[a]=[]),r[a].push(n);});}),r}function lc(e,t,r){let n=e.tasks[t]??xn(),s={};if(r){let a=r.tasks[t],i=gt(a);for(let c of i)for(let[u,d]of Object.entries(r.tasks))if(Pe(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 fc(e,t,r,n,s,o){let a=e.tasks[r]??xn(),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=Pe(i);let u=a.startConsumedHashes?{...a.startConsumedHashes}:{...a.lastConsumedHashes};if(!a.startConsumedHashes){let m=i.requires??[];for(let g of m)for(let[f,p]of Object.entries(t.tasks))if(Pe(p).includes(g)){let S=e.tasks[f];S?.lastDataHash&&(u[g]=S.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 pc(e,t,r,n){let s=e.tasks[r]??xn(),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 mc(e,t,r,n){let s=e.tasks[t]??xn(),o={...s,progress:typeof n=="number"?n:s.progress,messages:[...s.messages??[],...r?[{message:r,timestamp:new Date().toISOString(),status:s.status}]:[]],lastUpdated:new Date().toISOString()};return {...e,tasks:{...e.tasks,[t]:o},lastUpdated:new Date().toISOString()}}function gc(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 xn(){return {status:"not-started",executionCount:0,retryCount:0,lastEpoch:0,messages:[],progress:null}}function Tn(e,t){let r=`live-${Date.now()}`,n={};for(let o of Object.keys(e.tasks))n[o]=yc();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 vh(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:lc(n,t.taskName,r)};case "task-completed":return {config:r,state:fc(n,r,t.taskName,t.result,t.dataHash,t.data)};case "task-failed":return {config:r,state:pc(n,r,t.taskName,t.error)};case "task-progress":return {config:r,state:mc(n,t.taskName,t.message,t.progress)};case "task-restart":return {config:r,state:gc(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:Ch(n,t.action)};case "task-upsert":return Sh(e,t.taskName,t.taskConfig);case "task-removal":return kh(e,t.taskName);case "node-requires-add":return wh(e,t.nodeName,t.tokens);case "node-requires-remove":return bh(e,t.nodeName,t.tokens);case "node-provides-add":return _h(e,t.nodeName,t.tokens);case "node-provides-remove":return Rh(e,t.nodeName,t.tokens);default:return e}}function hc(e,t){return t.reduce((r,n)=>vh(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]:yc()},lastUpdated:new Date().toISOString()}}}function kh(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 wh(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=gt(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 bh(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=gt(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 _h(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=Pe(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 Rh(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=Pe(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 Tr(e){return {version:1,config:e.config,state:e.state,snapshotAt:new Date().toISOString()}}function An(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 yc(){return {status:"not-started",executionCount:0,retryCount:0,lastEpoch:0,messages:[],progress:null}}function Ch(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 Ar(e){let{config:t,state:r}=e,n=ac(t);if(Object.keys(n).length===0)return {eligible:[],pending:[],unresolved:[],blocked:[],conflicts:{}};let o=Eh(n),a=cc(t,r.tasks),i=new Set([...a,...r.availableOutputs]),c=[],u=[],d=[],l=[];for(let[g,f]of Object.entries(n)){let p=r.tasks[g],S=ic(f,t.settings),_=S!=="once";if(p?.status===mt.RUNNING||Mo(p))continue;let w=uc(f);if(w!==void 0&&p&&p.executionCount>=w||f.circuit_breaker&&p&&p.executionCount>=f.circuit_breaker.max_executions||!_&&p?.status===mt.COMPLETED)continue;if(_&&p?.status===mt.COMPLETED){let k=gt(f),C=false;switch(S){case "data-changed":{k.length>0&&k.some(x=>{for(let[I,F]of Object.entries(n))if(Pe(F).includes(x)){let N=r.tasks[I];if(!N)continue;let fe=p.lastConsumedHashes?.[x];return N.lastDataHash==null?N.executionCount>p.lastEpoch:N.lastDataHash!==fe}return false})||(C=true);break}case "epoch-changed":{k.length>0&&k.some(x=>{for(let[I,F]of Object.entries(n))if(Pe(F).includes(x)){let N=r.tasks[I];if(N&&N.executionCount>p.lastEpoch)return true}return false})||(C=true);break}case "time-based":{let E=f.refreshInterval??0;if(E<=0){C=true;break}let x=p.completedAt;if(!x){C=true;break}(Date.now()-Date.parse(x))/1e3<E&&(C=true);break}case "manual":C=true;break}if(C)continue}let R=gt(f);if(R.length===0){c.push(g);continue}let j=[],y=[],h=[];for(let k of R){if(i.has(k))continue;let C=o[k]||[];C.length===0?j.push(k):C.every(x=>Mo(r.tasks[x]))?h.push({token:k,failedProducer:C[0]}):y.push(k);}j.length>0?d.push({taskName:g,missingTokens:j}):h.length>0?l.push({taskName:g,failedTokens:h.map(k=>k.token),failedProducers:[...new Set(h.map(k=>k.failedProducer))]}):y.length>0?u.push({taskName:g,waitingOn:y}):c.push(g);}let m={};if(c.length>1){let g=dc(c,n);for(let[f,p]of Object.entries(g))p.length>1&&(m[f]=p);}return {eligible:c,pending:u,unresolved:d,blocked:l,conflicts:m}}function Eh(e){let t={};for(let[r,n]of Object.entries(e)){for(let s of Pe(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 Ir=class{buffer=[];append(t){this.buffer.push(t);}drain(){let t=this.buffer;return this.buffer=[],t}get size(){return this.buffer.length}};function Lo(e){let t=Vo(e);return $h(t)}function Vo(e){if(e==null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return "["+e.map(Vo).join(",")+"]";let t=e;return "{"+Object.keys(t).sort().map(n=>JSON.stringify(n)+":"+Vo(t[n])).join(",")+"}"}function $h(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 xh(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 Th(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 vc(e){let t=JSON.stringify({t:e,n:Date.now().toString(36)+Math.random().toString(36).slice(2,6)});return xh(t)}function Ah(e){try{let t=JSON.parse(Th(e));return typeof t?.t=="string"?{taskName:t.t}:null}catch{return null}}function Sc(e,t,r){let{handlers:n,onDrain:s}=t,o=new Ir,a="state"in e&&"config"in e?e:Tn(e),i=false,c=new Set,u=new Map(Object.entries(n)),d=new Ir,l=false,m=false;function g(){if(!i){if(l){m=true;return}l=true;try{do m=!1,f();while(m)}finally{l=false;}}}function f(){let w=d.drain(),R=o.drain(),j=[...w,...R];j.length>0&&(a=hc(a,j));let y=Ar(a);j.length>0&&s?.(j,a,y);for(let h of y.eligible)_(h);for(let h of j)if(h.type==="task-progress"){let{taskName:k,update:C}=h;if(!a.config.tasks[k])continue;let x=a.state.tasks[k];if(!x||x.status!=="running")continue;let I=vc(k),F=S(k,I,C).catch(N=>{i||(d.append({type:"task-failed",taskName:k,error:N.message??String(N),timestamp:new Date().toISOString()}),g());}).finally(()=>{c.delete(F);});c.add(F);}}function p(w){let j=a.config.tasks[w].requires??[],y=new Map;for(let[k,C]of Object.entries(a.config.tasks))for(let E of C.provides??[])y.set(E,k);let h={};for(let k of j){let C=y.get(k);C?h[k]=a.state.tasks[C]?.data:h[k]=void 0;}return h}async function S(w,R,j){let y=a.config.tasks[w],h=y.taskHandlers??[],k=p(w);for(let C of h){let E=u.get(C);if(!E)throw new Error(`Handler '${C}' not found in registry (task '${w}')`);let x={nodeId:w,state:k,taskState:a.state.tasks[w],config:y,callbackToken:R,update:j};if(await E(x)==="task-initiate-failure")throw new Error(`Handler '${C}' returned task-initiate-failure (task '${w}')`)}}function _(w){let j=a.config.tasks[w]?.taskHandlers;if(!j||j.length===0)return;d.append({type:"task-started",taskName:w,timestamp:new Date().toISOString()}),g();let y=vc(w),h=S(w,y).catch(k=>{i||(d.append({type:"task-failed",taskName:w,error:k.message??String(k),timestamp:new Date().toISOString()}),g());}).finally(()=>{c.delete(h);});c.add(h);}return {push(w){i||(w.type==="task-completed"&&w.data&&!w.dataHash&&(w={...w,dataHash:Lo(w.data)}),o.append(w),g());},pushAll(w){if(!i){for(let R of w)R.type==="task-completed"&&R.data&&!R.dataHash?o.append({...R,dataHash:Lo(R.data)}):o.append(R);g();}},resolveCallback(w,R,j){if(i)return;let y=Ah(w);if(!y)return;let{taskName:h}=y;if(a.config.tasks[h]){if(j&&j.length>0)o.append({type:"task-failed",taskName:h,error:j.join("; "),timestamp:new Date().toISOString()});else {let k=R&&Object.keys(R).length>0?Lo(R):void 0;o.append({type:"task-completed",taskName:h,data:R,dataHash:k,timestamp:new Date().toISOString()});}g();}},addNode(w,R){i||(o.append({type:"task-upsert",taskName:w,taskConfig:R,timestamp:new Date().toISOString()}),g());},removeNode(w){i||(o.append({type:"task-removal",taskName:w,timestamp:new Date().toISOString()}),g());},addRequires(w,R){i||(o.append({type:"node-requires-add",nodeName:w,tokens:R,timestamp:new Date().toISOString()}),g());},removeRequires(w,R){i||(o.append({type:"node-requires-remove",nodeName:w,tokens:R,timestamp:new Date().toISOString()}),g());},addProvides(w,R){i||(o.append({type:"node-provides-add",nodeName:w,tokens:R,timestamp:new Date().toISOString()}),g());},removeProvides(w,R){i||(o.append({type:"node-provides-remove",nodeName:w,tokens:R,timestamp:new Date().toISOString()}),g());},registerHandler(w,R){u.set(w,R);},unregisterHandler(w){u.delete(w);},retrigger(w){i||a.config.tasks[w]&&(o.append({type:"task-restart",taskName:w,timestamp:new Date().toISOString()}),g());},retriggerAll(w){if(!i){for(let R of w)a.config.tasks[R]&&o.append({type:"task-restart",taskName:R,timestamp:new Date().toISOString()});g();}},snapshot(){return Tr(a)},getState(){return a},getSchedule(){return Ar(a)},async waitForHandlers(){c.size>0&&await Promise.allSettled([...c]);},async dispose(w){w?.wait&&c.size>0&&await Promise.allSettled([...c]),i=true;}}}var Ph=createRequire(import.meta.url),In=Ph("./jsonata-sync.cjs"),bc=In;function kc(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 _c(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 jh(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 In(s.expr).evaluate(n);_c(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=bc(o.expr).evaluate(n);_c(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 Nh(e,t,r){let n={...r??{},card_data:t.card_data??{},requires:t.requires??{},fetched_sources:t._sourcesData??{},computed_values:t.computed_values??{}};return In(e).evaluate(n)}function qh(e,t){return t.startsWith("fetched_sources.")?kc(e._sourcesData??{},t.slice(16)):kc(e,t)}var wc=new Set(["metric","table","editable-table","chart","form","filter","list","notes","todo","alert","narrative","badge","text","markdown","ref","custom","actions"]),Fh=new Set(["id","meta","requires","provides","view","card_data","compute","source_defs"]);function Dh(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))Fh.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`):wc.has(s.kind)||t.push(`view.elements[${o}].kind: unknown kind "${s.kind}". Valid: ${[...wc].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 Mh(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 In(a).evaluate(r);}catch{s[o]=void 0;}}return {...n,_projections:s}}))}function Lh(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]=bc(a).evaluate(r);}catch{s[o]=void 0;}}return {...n,_projections:s}})}var ht={run:jh,runSync:Oh,eval:Nh,resolve:qh,validate:Dh,enrichSources:Mh,enrichSourcesSync:Lh};function Vh(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:oe({kind:"fs-path",value:e}),...t?{extra:t}:{}}}function Bo(e){return JSON.stringify(e)}function Go(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 Pn(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],m=u[l],g=m&&typeof m=="object"&&!Array.isArray(m)?{...m}:{};u[l]=g,u=g;}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(),a=o[s];a&&(e.removeCard(a.key),delete o[s],e.writeIndex(o));},readIndex(){return r()}}}function Ko(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 xc(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 Tc(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 Pr="v1",yt="board/graph",Ac="board/lastJournalProcessedId";function Rc(e){return `cards/${e}/runtime`}function Ic(e){return {readRuntime(t){return e.read(Rc(t))??{_sources:{}}},writeRuntime(t,r){e.write(Rc(t),r);}}}function Bh(e,t){let r={...e};for(let n of t.deleteKeys)delete r[n];return {...r,...t.shallowMerge}}function Pc(e){return {readSnapshot(t){return e.readValues(t)},commitSnapshot(t,r){if(r.schemaVersion!==Pr)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=Bh(n.values,r);return {ok:true,newVersion:e.writeValues(t,s,r.deleteKeys)}}}}function Uo(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 Go(r.trim())},writeTaskExecutorRef(r){e.write("task-executor",Bo(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 jc(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 Cc(e){return e?{lastRequestedToken:e.lastRequestedToken,lastCompletedToken:e.lastCompletedToken,lastCompletionStatus:e.lastCompletionStatus??(e.lastCompletedToken?"success":"not-started"),queueRequestedToken:e.queueRequestedToken}:{lastCompletionStatus:"not-started"}}function Gh(e){return e?.lastRequestedToken?e.lastCompletedToken!==e.lastRequestedToken:false}function Ec(e,t){return e?.lastRequestedToken?Gh(e)?"in-flight":!e.lastCompletedToken||e.lastCompletedToken<t?"dispatch":"idle":"dispatch"}function Kh(e,t){return {...e,lastCompletedToken:t,lastCompletionStatus:"success"}}function $c(e,t){return {...e,lastCompletedToken:t,lastCompletionStatus:"failure"}}function jn(e,t){let r=t.state.tasks,n=t.config.tasks,s=Object.keys(r),o=Ar(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 S of p.requires??[]){let _=c.get(S)??[];_.push(f),c.set(S,_);}let u=s.sort().map(f=>{let p=r[f],S=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 _=S.requires??[],w=S.provides??[],R=Object.keys(p.data??{}).sort(),j=_.filter(x=>t.state.availableOutputs.includes(x)),y=_.filter(x=>!t.state.availableOutputs.includes(x)),h=i.get(f)??y,k=new Set;for(let x of w)for(let I of c.get(x)??[])I!==f&&k.add(I);let C=p.failedAt,E=p.error?{message:p.error,code:"TASK_FAILED",at:C,source:"task-runtime"}:void 0;return {name:f,status:p.status,error:E,requires:_,requires_satisfied:j,requires_missing:y,provides_declared:w,provides_runtime:R,blocked_by:h,unblocks:Array.from(k).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},m=new Set;for(let f of Object.values(n))for(let p of f.requires??[])m.add(p);let g=0;for(let[f,p]of Object.entries(n)){let S=(p.requires??[]).length===0,w=(p.provides??[]).some(R=>(c.get(R)??[]).some(j=>j!==f));S&&!w&&(g+=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:g,topology:{edge_count:Array.from(m).length,max_fan_out_card:l.name,max_fan_out:l.fanOut}},cards:u}}function Uh(){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??{},m=u.source_defs??[],g=m.filter(D=>D.optionalForCompletionGating!==true),f=r.cardRuntimeStore.readRuntime(d),p=false,S=()=>{p&&(r.cardRuntimeStore.writeRuntime(d,f),p=false);},_=D=>Cc(f._sources[D]),w=(D,V)=>{f._sources[D]=Cc(V),p=true;},R=i.taskState?.executionCount??0;if(f._lastExecutionCount!==R&&(f._sources={},f._lastExecutionCount=R,p=true),i.update){let D=i.update,V=D.outputFile;if(V){let ee=_(V);if(D.failure){let le=D.rqt??ee.lastRequestedToken??ee.queueRequestedToken;le&&w(V,$c(ee,le));}else {let le=D.rqt;if(!ee.lastCompletedToken||le>ee.lastCompletedToken){let Ce=typeof D.deliveryToken=="string"?D.deliveryToken:void 0,$=false;Ce&&($=r.fetchedSourcesStore.commitSourceData(d,V,Ce)),$?w(V,Kh(ee,le)):w(V,$c(ee,le));}}S();}}let y={};for(let D of m)if(D.outputFile){let V=r.fetchedSourcesStore.readSourceData(d,D.outputFile);V!==null&&(y[D.bindTo]=V);}let h={};for(let[D,V]of Object.entries(i.state??{}))if(V!==null&&typeof V=="object"&&!Array.isArray(V)){let ee=V[D];h[D]=ee!==void 0?ee:V;}else h[D]=V;let k={id:d,card_data:{...l},requires:h,source_defs:m,compute:u.compute};k._sourcesData=y,u.compute&&ht.runSync(k,{sourcesData:y}),(o??r.outputStore.writeComputedValues.bind(r.outputStore))(d,k.computed_values??{});let C={...u},E=ht.enrichSourcesSync(Array.isArray(u.source_defs)?u.source_defs:void 0,{card_data:u.card_data,requires:h}),x=e.value;C.source_defs=Array.isArray(E)?E.map(D=>({...D,boardDir:typeof D.boardDir=="string"&&D.boardDir?D.boardDir:x})):E;let I=Uh(),F=i.update?void 0:I,N=g.filter(D=>{let V=D.outputFile;if(typeof V!="string"||!V)return true;let ee=_(V);F&&(ee={...ee,queueRequestedToken:F},w(V,ee));let le=ee.queueRequestedToken??ee.lastRequestedToken??I,Ce=Ec(ee,le);return Ce==="in-flight"?false:Ce==="dispatch"});if(S(),N.length>0){let D=false,V=I;for(let ee of N){let le=ee.outputFile;if(typeof le!="string"||!le)continue;let Ce=_(le),$=Ce.queueRequestedToken??I;w(le,{...Ce,lastRequestedToken:$}),V=$,D=true;}return D&&S(),D&&(c.push({taskKind:"source-fetch",payload:{boardRef:oe(e),enrichedCard:C,callbackToken:i.callbackToken,rqt:V}}),r.executionRequestStore.appendEntries(t,c)),"task-initiated"}if(g.some(D=>{let V=D.outputFile;if(typeof V!="string"||!V)return false;let ee=_(V),le=ee.queueRequestedToken??ee.lastRequestedToken??I;return Ec(ee,le)==="in-flight"}))return "task-initiated";let de=u.provides??[],Re={};for(let{bindTo:D,ref:V}of de)Re[D]=ht.resolve(k,V);return (a??r.outputStore.writeDataObjects.bind(r.outputStore))(Re),m.filter(D=>{if(D.optionalForCompletionGating!==true)return false;let V=_(D.outputFile);return !V.lastRequestedToken||!V.lastCompletedToken?true:V.lastCompletedToken<=V.lastRequestedToken}).length>0&&c.push({taskKind:"source-fetch",payload:{boardRef:oe(e),enrichedCard:C,callbackToken:i.callbackToken,rqt:I}}),n(i.nodeId,Re),c.length>0&&r.executionRequestStore.appendEntries(t,c),"task-initiated"}}var On={settings:{completion:"manual",refreshStrategy:"data-changed"},tasks:{}};function Nc(e){return {[yt]:e.graph,[Ac]:e.lastDrainedJournalId}}function qc(e){let t=e[yt],r=e[Ac];if(!t||typeof t!="object")throw new Error(`State snapshot is missing required key: ${yt}`);return {graph:t,lastDrainedJournalId:typeof r=="string"?r:""}}function Fc(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 M(e){return {status:"fail",error:e}}function te(e){return {status:"error",error:e instanceof Error?e.message:String(e)}}function Jh(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 Mc(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 Nn(e){try{let t=JSON.parse(Mc(e));return typeof t?.t=="string"?{taskName:t.t}:null}catch{return null}}function zh(e){return Jh(JSON.stringify(e))}function Dc(e){try{let t=JSON.parse(Mc(e));return typeof t?.cbk=="string"&&typeof t?.cid=="string"&&typeof t?.b=="string"&&typeof t?.d=="string"?t:null}catch{return null}}function ke(){return new Date().toISOString()}function Hh(e,t){let r=t.onWarn??(()=>{}),n=oe(e);function s($){if($.length!==0)try{let v=t.publishBoardChangeNotifications?.($);v&&typeof v.catch=="function"&&v.catch(A=>r(`[board-live-cards-public] publishBoardChangeNotifications failed: ${A instanceof Error?A.message:String(A)}`));}catch(v){r(`[board-live-cards-public] publishBoardChangeNotifications failed: ${v instanceof Error?v.message:String(v)}`);}}function o(){let $=i().readCardStoreRef();if(!$)throw new Error(`Board at ${e.value} has no card store configured. Run: init --base-ref <ref> --store-ref <b64-ref>`);let v=t.kvStorageForRef($);return {readIndex(){return v.read("_index")},writeIndex(A){v.write("_index",A);},readCard(A){return v.read(A)},writeCard(A,q){return v.write(A,q),t.hashFn(q)},removeCard(A){v.delete(A);},cardExists(A){return v.read(A)!==null},defaultCardKey(A){return A}}}let a={readValues($){let v=t.kvStorage("state-snapshot"),A=v.listKeys().sort();if(A.length===0)return {version:null,values:{}};let q={};for(let re of A)q[re]=v.read(re);return {version:t.hashFn(q),values:q}},writeValues($,v,A){let q=t.kvStorage("state-snapshot");for(let re of A)q.delete(re);for(let[re,Z]of Object.entries(v))q.write(re,Z);return t.hashFn(v)}},i=()=>Uo(t.kvStorage("config")),c=()=>Pc(a),u=()=>xc(t.journalAdapter()),d=()=>Pn(o(),r),l=()=>{let $=i().readOutputsStoreRef();if(!$)throw new Error(`Board at ${e.value} has no outputs store configured. Run: init --outputs-store-ref <b64-ref>`);return jc(t.kvStorageForRef($))},m=()=>{let $=i().readArchiveStoreRef();return $?t.archiveFactoryForRef($):t.archiveFactory()};function g(){return !!c().readSnapshot(e.value).values[yt]}function f(){let $=c().readSnapshot(e.value);if(!$.values[yt])throw new Error(`Board not initialized at ${e.value}`);return qc($.values)}function p($,v){let A=c().commitSnapshot(e.value,{schemaVersion:Pr,expectedVersion:v,commitId:t.genId(),committedAt:ke(),deleteKeys:[],shallowMerge:Nc($)});if(!A.ok)throw new Error(`Snapshot commit failed (version mismatch): expected=${v??"null"} current=${A.currentVersion??"null"}`)}function S($){u().appendEvent($);}async function _(){let $=(O,B)=>{let ue=O.payload,st=(ue?.enrichedCard??{}).id??ue?.cardId??"unknown";S({type:"task-failed",taskName:st,error:B,timestamp:ke()});},v=Tc(t.kvStorage("execution-requests"),$),A=Ic(t.kvStorage("card-runtime")),q=Ko(t.blobStorage("sources"),O=>t.resolveBlob(O)),re=new Map,Z={readRuntime(O){return re.get(O)??A.readRuntime(O)},writeRuntime(O,B){re.set(O,B);}},pe=[],we=new Map,nt={readSourceData(O,B){let ue=`${O}/${B}`;return we.has(ue)?we.get(ue):q.readSourceData(O,B)},ingestSourceDataStaged(O,B,ue,Ot){q.ingestSourceDataStaged(O,B,ue,Ot);},commitSourceData(O,B,ue){let Ot=`${O}/.staged/${ue}/${B}`,Nr=t.blobStorage("sources").read(Ot);if(Nr==null)return false;let Nt=`${O}/${B}`,Yo=Nr.trim();try{we.set(Nt,JSON.parse(Yo));}catch{we.set(Nt,Yo);}return pe.push({cardId:O,outputFile:B,deliveryToken:ue}),true},hasSource(O,B){let ue=`${O}/${B}`;return we.has(ue)?true:q.hasSource(O,B)}},Ie={cardStore:d(),cardRuntimeStore:Z,fetchedSourcesStore:nt,outputStore:l(),executionRequestStore:v},vt=f(),St=An(vt.graph),{events:Pt,newCursor:jt}=u().readEntriesAfterCursor(vt.lastDrainedJournalId),kt=[],qn=[],Fn=[],zo=new Map,Kc=(O,B)=>{kt.push({type:"task-completed",taskName:O,data:B,timestamp:ke()});try{m().stream("exec-history").append({taskName:O,status:"completed",completedAt:ke()});}catch{}},Ho=(O,B)=>{S({type:"task-failed",taskName:O,error:B,timestamp:ke()});try{m().stream("exec-history").append({taskName:O,status:"failed",error:B,completedAt:ke()});}catch{}},jr=Sc(St,{handlers:{"card-handler":Oc(e,jt,Ie,Kc,Ho,(O,B)=>{qn.push({cardId:O,values:B});},O=>{Fn.push(O);})}});for(kt=Pt;kt.length>0;){let O=kt;kt=[];for(let B of O)if(B.type==="task-restart"){let ue=Ie.cardStore.readCard(B.taskName);ue&&zo.set(B.taskName,ue);}jr.pushAll(O),await jr.waitForHandlers();}let Wo=jr.getState();await jr.dispose({wait:true});let Uc=c().readSnapshot(e.value).version;p({lastDrainedJournalId:jt,graph:Tr(Wo)},Uc);for(let{cardId:O,values:B}of qn)Ie.outputStore.writeComputedValues(O,B);for(let O of Fn)Ie.outputStore.writeDataObjects(O);for(let[O,B]of re)A.writeRuntime(O,B);for(let{cardId:O,outputFile:B,deliveryToken:ue}of pe)q.commitSourceData(O,B,ue);let Or;try{Or=jn(n,Wo),Ie.outputStore.writeStatusSnapshot(Or);}catch(O){r(`[board-live-cards-public] status publish failed: ${O instanceof Error?O.message:String(O)}`);}let Zt=[];for(let{cardId:O,values:B}of qn)Zt.push({kind:"computed_values",cardId:O,values:B});for(let O of Fn)for(let[B,ue]of Object.entries(O))B&&Zt.push({kind:"data_object",key:B,payload:ue});for(let[O,B]of zo)Zt.push({kind:"card_refreshed",cardId:O,card:B});Or!==void 0&&Zt.push({kind:"status",status:Or}),s(Zt);let Jc=i().readTaskExecutorRef()??{howToRun:"built-in",whatToRun:oe({kind:"built-in",value:"source-cli-task-executor"})};v.dispatchEntriesForJournalId(jt,O=>{if(O.taskKind!=="source-fetch"){r(`[process-accumulated-events] unknown taskKind "${O.taskKind}" \u2014 skipping`);return}let B=O.payload,ue=B.enrichedCard?.id??"unknown",Ot=B.enrichedCard?.source_defs??[];for(let st of Ot){if(!st.outputFile){r(`[dispatch] source "${st.bindTo}" has no outputFile \u2014 skipping`);continue}let Nr=zh({cbk:B.callbackToken,rg:e.value,br:oe(e),cid:ue,b:st.bindTo,d:st.outputFile,cs:void 0,rqt:B.rqt});t.dispatchExecution(Jc,{source_def:st,base_ref:oe(e),callback:{token:Nr,via:t.selfRef}}).catch(Nt=>Ho(ue,Nt instanceof Error?Nt.message:String(Nt)));}});}async function w(){try{let $=()=>{let A=f(),{events:q}=u().readEntriesAfterCursor(A.lastDrainedJournalId);q.length<=0||(w(),t.requestProcessAccumulated?.());},v=await Qo(t.lock,_,$);return Q({ran:v!==!1})}catch($){return te($)}}function R(){w(),t.requestProcessAccumulated?.();}function j($){try{let v=$.params?.cardStoreRef;if(!v)return M("init requires params.cardStoreRef \u2014 create a card store with card-store-cli and pass its ref here");if(!g()){let we=Tn(On);p({lastDrainedJournalId:"",graph:Tr(we)},null);}let A=$.params?.outputsStoreRef;if(!A)return M("init requires params.outputsStoreRef \u2014 pass the outputs store ref here");let q=$.params?.scratchStoreRef,re=$.params?.archiveStoreRef,Z=i();Z.writeCardStoreRef(v),Z.writeOutputsStoreRef(A),q&&Z.writeScratchStoreRef(q),re&&Z.writeArchiveStoreRef(re);let pe=$.body??{};pe["task-executor-ref"]&&Z.writeTaskExecutorRef(pe["task-executor-ref"]),Object.prototype.hasOwnProperty.call(pe,"chat-handler-flow")&&Z.writeChatHandlerFlow(pe["chat-handler-flow"]);try{l().writeStatusSnapshot(jn(n,An(f().graph)));}catch{}return Q()}catch(v){return te(v)}}function y($){try{let v=l().readStatusSnapshot();if(!v){v=jn(n,An(f().graph));try{l().writeStatusSnapshot(v);}catch{}}return Q(v)}catch(v){return te(v)}}function h($){try{let v=$.params?.id;return v?(S({type:"task-removal",taskName:v,timestamp:ke()}),R(),Q()):M("removeCard requires params.id")}catch(v){return te(v)}}function k($){try{let v=$.params?.id;return v?(S({type:"task-restart",taskName:v,timestamp:ke()}),R(),Q()):M("retrigger requires params.id")}catch(v){return te(v)}}async function C($){return w()}function E($){try{let v=$.params?.cardId,A=$.params?.all,q=!!$.params?.restart;if(!v&&!A)return M("upsertCard requires --card-id <id> or --all");let re=A?d().readAllCards().map(Z=>Z.id):[v];for(let Z of re)if(!d().readCard(Z))return M(`Card "${Z}" not found in board at ${e.value}`);for(let Z of re){let pe=d().readCard(Z),we=Fc(pe),nt=t.hashFn(we),Ie=t.kvStorage("card-upsert"),vt=Ie.read(Z),St=vt?.taskConfigHash!==nt;if(!(!St&&!q)){if(St){let Pt=vt?.blobRef??d().readCardKey(Z)??Z;S({type:"task-upsert",taskName:Z,taskConfig:we,timestamp:ke()}),Ie.write(Z,{blobRef:Pt,taskConfigHash:nt,updatedAt:ke()});}q&&S({type:"task-restart",taskName:Z,timestamp:ke()});}}return R(),Q()}catch(v){return te(v)}}function x($){try{let v=$.params?.token;if(!v)return M("taskFailed requires params.token");let A=$.params?.error??"unknown error",q=Nn(v);if(!q)return M("Invalid callback token");S({type:"task-failed",taskName:q.taskName,error:A,timestamp:ke()});try{m().stream("exec-history").append({taskName:q.taskName,status:"failed",error:A,completedAt:ke()});}catch{}return R(),Q()}catch(v){return te(v)}}function I($){try{let v=$.params?.token;if(!v)return M("taskProgress requires params.token");let q=($.body??{}).update??{},re=Nn(v);return re?(S({type:"task-progress",taskName:re.taskName,update:q,timestamp:ke()}),R(),Q()):M("Invalid callback token")}catch(v){return te(v)}}function F($){try{let v=$.params?.token,A=$.params?.ref;if(!v)return M("sourceDataFetched requires params.token");if(!A)return M("sourceDataFetched requires params.ref");let q=Dc(v);if(!q)return M("Invalid source token");let{cbk:re,cid:Z,b:pe,d:we,cs:nt,rqt:Ie}=q,vt=Ko(t.blobStorage("sources"),kt=>t.resolveBlob(kt)),St=t.genId();vt.ingestSourceDataStaged(Z,we,Me(A),St);let Pt=Nn(re);if(!Pt)return M("Invalid callback token embedded in source token");let jt=ke();return S({type:"task-progress",taskName:Pt.taskName,update:{bindTo:pe,outputFile:we,fetchedAt:jt,deliveryToken:St,sourceChecksum:nt,rqt:Ie},timestamp:jt}),R(),Q()}catch(v){return te(v)}}function N($){try{let v=$.params?.token,A=$.params?.reason??"unknown";if(!v)return M("sourceDataFetchFailure requires params.token");let q=Dc(v);if(!q)return M("Invalid source token");let{cbk:re,b:Z,d:pe,cs:we,rqt:nt}=q,Ie=Nn(re);return Ie?(S({type:"task-progress",taskName:Ie.taskName,update:{bindTo:Z,outputFile:pe,failure:!0,reason:A,sourceChecksum:we,rqt:nt},timestamp:ke()}),R(),Q()):M("Invalid callback token embedded in source token")}catch(v){return te(v)}}function fe($){try{let v=i().readCardStoreRef();return v?Q({storeRef:v}):M(`Board at ${e.value} has no card store configured`)}catch(v){return te(v)}}function de($){try{let v=i().readOutputsStoreRef();return v?Q({storeRef:v}):M(`Board at ${e.value} has no outputs store configured`)}catch(v){return te(v)}}function Re($){try{let v=i().readScratchStoreRef();return Q({storeRef:v})}catch(v){return te(v)}}function je($){try{let v=i().readArchiveStoreRef();return Q({storeRef:v})}catch(v){return te(v)}}function D($){try{let v=$.params?.key;if(!v)return M("getConfig requires params.key");let A=i(),q;switch(v){case "task-executor":q=A.readTaskExecutorRef()??null;break;case "chat-handler-flow":q=A.readChatHandlerFlow()??null;break;case "card-store-ref":q=A.readCardStoreRef();break;case "outputs-store-ref":q=A.readOutputsStoreRef();break;case "scratch-store-ref":q=A.readScratchStoreRef();break;case "archive-store-ref":q=A.readArchiveStoreRef();break;default:return M(`getConfig: unknown key "${v}"`)}return Q({value:q})}catch(v){return te(v)}}function V($){try{let v=$.params?.key;if(!v)return M("getOutputsDataObject requires params.key");let A=l().readDataObject(v);return Q(A)}catch(v){return te(v)}}function ee($){try{return Q(l().readAllDataObjects())}catch(v){return te(v)}}function le($){try{let v=$.params?.key;if(!v)return M("getOutputsComputedValues requires params.key");let A=l().readComputedValues(v);return Q(A)}catch(v){return te(v)}}function Ce($){try{return Q(l().readAllComputedValues())}catch(v){return te(v)}}return {init:j,status:y,getCardStoreRef:fe,getOutputsStoreRef:de,getScratchStoreRef:Re,getArchiveStoreRef:je,getConfig:D,getOutputsDataObject:V,getAllOutputsDataObjects:ee,getOutputsComputedValues:le,getAllOutputsComputedValues:Ce,removeCard:h,retrigger:k,processAccumulatedEvents:C,upsertCard:E,taskFailed:x,taskProgress:I,sourceDataFetched:F,sourceDataFetchFailure:N}}function Wh(e,t){let r=()=>Uo(t.kvStorage("config"));function n(){let y=r().readCardStoreRef();if(!y)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(y);return {readIndex(){return h.read("_index")},writeIndex(k){h.write("_index",k);},readCard(k){return h.read(k)},writeCard(k,C){return h.write(k,C),t.hashFn(C)},removeCard(k){h.delete(k);},cardExists(k){return h.read(k)!==null},defaultCardKey(k){return k}}}let s=()=>Pn(n(),t.onWarn??(()=>{})),o=()=>{let y=r().readScratchStoreRef();return y?t.scratchStorageForRef(y):t.scratchStorage()};function a(y,h){let k=t.validateSchema(h),C=[],E=r().readTaskExecutorRef();if(E&&Array.isArray(h.source_defs))for(let I of h.source_defs){let F=typeof I.bindTo=="string"?I.bindTo:"(unknown)";try{let N;try{N=t.invokeExecutorSync(E,"validate-source-def",[],{timeout:t.executorTimeouts?.validationMs??1e4,input:JSON.stringify(I)});}catch(de){let Re=de;if(N=typeof Re?.stdout=="string"?Re.stdout:"",!N.trim()){C.push(`source "${F}": executor validate-source-def failed \u2014 ${de instanceof Error?de.message:String(de)}`);continue}}let fe=JSON.parse(N.trim());if(!fe.ok&&Array.isArray(fe.errors))for(let de of fe.errors)C.push(`source "${F}": ${de}`);}catch(N){C.push(`source "${F}": executor validate-source-def failed \u2014 ${N instanceof Error?N.message:String(N)}`);}}let x=[...k.errors,...C];return Q({cardId:y,isValid:x.length===0,issues:x})}function i(y,h){let k=r().readTaskExecutorRef();if(!k)throw new Error("No task-executor registered for this board");let C=typeof y.bindTo=="string"?y.bindTo:"source",E=o(),x={...y,boardDir:e.value,_projections:h},I=E.create(JSON.stringify(x,null,2),`probe-in-${C}`,".json"),F=E.getUniqueKey(`probe-out-${C}`,".json"),N=E.getUniqueKey(`probe-err-${C}`,".txt"),fe=oe(E.keyRef(I)),de=oe(E.keyRef(F)),Re=oe(E.keyRef(N)),je=null;try{if(t.invokeExecutorSync(k,"run-source-fetch",["--in-ref",fe,"--out-ref",de,"--err-ref",Re],{timeout:y.timeout??t.executorTimeouts?.probeMs??6e4}),je=E.read(F),je===null)throw new Error("Executor produced no output file")}catch(D){let V=E.read(N)?.trim()??(D instanceof Error?D.message:String(D));throw new Error(`Probe failed: ${V}`)}finally{try{E.remove(I);}catch{}try{E.remove(N);}catch{}}return {bindTo:C,result:je}}function c(y,h,k){let C;try{C=i(y,h);}catch(E){return M(E instanceof Error?E.message:String(E))}if(k){let E=Me(k);t.absoluteBlob.write(E.value,C.result);}return Q({bindTo:C.bindTo,resultSizeBytes:C.result.length})}function u(y,h){let k=y.params?.sourceIdx,C=y.params?.outRef;if(k===void 0)return M(`${h} requires params.sourceIdx`);if(!y.body||typeof y.body!="object"||Array.isArray(y.body))return M(`${h} requires card JSON object in body`);let E=y.body,x=E["card-content"]??E,I=E["mock-projections"]??{},F=x.source_defs??[];if(k<0||k>=F.length)return M(`sourceIdx ${k} out of range (card has ${F.length} source(s))`);let N=F[k],fe=typeof N.bindTo=="string"?N.bindTo:"source";return {src:N,bindTo:fe,outRef:C,mockProjections:I}}function d(y){try{let h=y.params?.cardId,k=y.params?.all;if(!h&&!k)return M("validateCard requires --card-id <id> or --all");let C=k?s().readAllCards().map(x=>x.id):[h],E=[];for(let x of C){let I=s().readCard(x);if(!I){E.push({cardId:x,isValid:!1,issues:[`Card "${x}" not found`]});continue}let F=a(x,I);if(F.status!=="success")return F;E.push(F.data);}return Q(E)}catch(h){return te(h)}}function l(y){try{if(!y.body||typeof y.body!="object"||Array.isArray(y.body))return M("validateCardPreflight requires card JSON object in body");let h=y.body,k=h["card-content"]??h,C=typeof k.id=="string"?k.id:"(unknown)",E=a(C,k),x=r().readTaskExecutorRef();if(x)try{let I=t.invokeExecutorSync(x,"validate-card-preflight",[],{timeout:t.executorTimeouts?.validationMs??1e4,input:JSON.stringify(k)}),F=JSON.parse(I.trim());if(!F.ok&&Array.isArray(F.errors)&&F.errors.length>0){let N=[...E.status==="success"?E.data.issues:[],...F.errors];return Q({cardId:C,isValid:!1,issues:N})}}catch{}return E}catch(h){return te(h)}}function m(y){try{let h=y.params?.cardId,k=y.params?.sourceIdx,C=y.params?.outRef;if(!h)return M("probeSource requires params.cardId");if(k===void 0)return M("probeSource requires params.sourceIdx");let x=(y.body??{})["mock-projections"]??{},I=s().readCard(h);if(!I)return M(`Card "${h}" not found`);let F=I.source_defs??[];return k<0||k>=F.length?M(`sourceIdx ${k} out of range (card has ${F.length} source(s))`):c(F[k],x,C)}catch(h){return te(h)}}function g(y){try{let h=y.params?.outRef,k=y.body;if(!k)return M('probeTmpSource requires body with "source-def" and "mock-projections"');let C=k["source-def"],E=k["mock-projections"]??{};return C?c(C,E,h):M('probeTmpSource body requires "source-def"')}catch(h){return te(h)}}function f(y){try{let h=u(y,"probeSourcePreflight");if("status"in h)return h;let k=r().readTaskExecutorRef();if(!k)return M("No task-executor registered for this board");try{let C={...h.src,_projections:h.mockProjections},E=t.invokeExecutorSync(k,"probe-source-preflight",[],{timeout:h.src.timeout??t.executorTimeouts?.preflightMs??6e4,input:JSON.stringify(C)}),x=JSON.parse(E.trim());return x.ok?Q({bindTo:h.bindTo,reachable:x.reachable,latencyMs:x.latencyMs,note:x.note}):M(x.error??"Preflight probe failed")}catch{return M("Executor does not support probe-source-preflight")}}catch(h){return te(h)}}function p(y){try{let h=u(y,"runSourcePreflight");if("status"in h)return h;let k=r().readTaskExecutorRef();if(k)try{let I={...h.src,_projections:h.mockProjections},F=t.invokeExecutorSync(k,"run-source-preflight",[],{timeout:h.src.timeout??t.executorTimeouts?.preflightMs??6e4,input:JSON.stringify(I)}),N=JSON.parse(F.trim());return N.ok?Q({bindTo:N.bindTo??h.bindTo,reachable:N.reachable,latencyMs:N.latencyMs,kind:N.kind,resultValue:N.resultValue,note:N.note}):M(N.error??"Source preflight failed")}catch{}let C=Date.now(),E=i(h.src,h.mockProjections);if(h.outRef){let I=Me(h.outRef);t.absoluteBlob.write(I.value,E.result);}let x=E.result;try{x=JSON.parse(E.result);}catch{}return Q({bindTo:E.bindTo,reachable:!0,latencyMs:Date.now()-C,resultValue:x,note:"Actual fetch preflight passed"})}catch(h){return te(h)}}function S(y){try{let h=r().readTaskExecutorRef();if(!h)return M("No task-executor registered for this board");let k=t.invokeExecutorSync(h,"describe-capabilities",[],{timeout:t.executorTimeouts?.describeMs??1e4});return Q(JSON.parse(k.trim()))}catch(h){return te(h)}}function _(y){try{let h=y.body;if(!h||!Array.isArray(h.ops))return M("updatesInCardStore requires body.ops array");let k=h.ops,C=s();for(let E of k){let x=E.op,I=E.id;if(!I)return M('op is missing "id"');if(x==="update"){let F=E["card-content"];if(!F)return M(`update op for "${I}" is missing "card-content"`);C.writeCard(I,F);}else return M(`Unknown op type: "${x??"(none)"}"`)}return Q()}catch(h){return te(h)}}function w(y){try{let h=y.body;if(!h||!Array.isArray(h.ids))return M("readFromCardStore requires body.ids array");let k=h.ids,C=s(),E=k.map(x=>({id:x,"card-content":C.readCard(x)}));return Q({cards:E})}catch(h){return te(h)}}function R(y){try{if(!y.body||typeof y.body!="object"||Array.isArray(y.body))return M("evalCardCompute requires a JSON object in body");let h=y.body,k=h["card-content"]??h,C=typeof k.id=="string"?k.id:"(unknown)",E=h["mock-fetched-sources"]??{},x=h["mock-requires"]??{},I=k.compute;if(!I||!Array.isArray(I)||I.length===0)return Q({cardId:C,ok:!0,computed_values:{},errors:[]});let F={id:C,card_data:k.card_data??{},requires:x,source_defs:k.source_defs,compute:I},N=ht.runSync(F,{sourcesData:E}),fe=N.node.computed_values??{},de=N.errors??[];return Q({cardId:C,ok:de.length===0,computed_values:fe,errors:de})}catch(h){return te(h)}}function j(y){try{if(!y.body||typeof y.body!="object"||Array.isArray(y.body))return M("simulateCardCycle requires a JSON object in body");let h=y.body,k=h["card-content"]??h,C=typeof k.id=="string"?k.id:"(unknown)",E=h["mock-fetched-sources"]??{},x=h["mock-requires"]??{},I=a(C,k),F=I.status==="success"?{isValid:I.data.isValid,issues:I.data.issues}:{isValid:!1,issues:[I.status==="fail"?I.error:"internal error"]},N=k.source_defs??[],fe=k.card_data??{},de=[],Re=[];if(N.length>0){de=ht.enrichSourcesSync(N,{card_data:fe,requires:x});for(let v of de){let A=v.projections,q=v._projections;if(A&&q){for(let re of Object.keys(A))if(q[re]===void 0){let Z=typeof v.bindTo=="string"?v.bindTo:"(unknown)";Re.push({bindTo:Z,key:re,error:`Projection "${re}" resolved to undefined`});}}}}let je=[],D=h["task-executor-ref"],V=(D?.howToRun&&D?.whatToRun?D:void 0)??r().readTaskExecutorRef();for(let v=0;v<de.length;v++){let A=de[v],q=typeof A.bindTo=="string"?A.bindTo:`source_${v}`;if(!V){je.push({bindTo:q,skipped:!0,error:"No task executor configured"});continue}try{let re={...A},Z=t.invokeExecutorSync(V,"run-source-preflight",[],{timeout:A.timeout??t.executorTimeouts?.preflightMs??6e4,input:JSON.stringify(re)}),pe=JSON.parse(Z.trim());je.push({bindTo:q,reachable:pe.reachable,latencyMs:pe.latencyMs,error:pe.ok?void 0:pe.error});}catch{je.push({bindTo:q,skipped:!0,error:"Executor does not support run-source-preflight"});}}let ee=k.compute,le={},Ce=[];if(ee&&Array.isArray(ee)&&ee.length>0){let v={id:C,card_data:fe,requires:x,source_defs:k.source_defs,compute:ee},A=ht.runSync(v,{sourcesData:E});le=A.node.computed_values??{},Ce=A.errors??[];}let $=F.isValid&&Re.length===0&&Ce.length===0&&je.every(v=>v.reachable!==!1);return Q({cardId:C,ok:$,validation:F,source_probes:je,projection_errors:Re,computed_values:le,compute_errors:Ce})}catch(h){return te(h)}}return {validateCard:d,validateCardPreflight:l,probeSource:m,probeTmpSource:g,probeSourcePreflight:f,runSourcePreflight:p,evalCardCompute:R,simulateCardCycle:j,describeTaskExecutorCapabilities:S,updatesInCardStore:_,readFromCardStore:w}}function Yh(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 Xh(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 Lc(){return new Date().toISOString()}function Vc(e){return new TextEncoder().encode(e).byteLength}function Qh(e){return e?{key:e.key,size:e.size,updatedAt:e.updatedAt,contentType:e.contentType}:null}function Zh(e){let t=String(e||"").match(/^(\d+)[-_]/);return t?parseInt(t[1],10):0}function ey(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 ty(e){return String(e||"").toLowerCase().replace(/\s+/g,"_").replace(/[^a-z0-9_-]/g,"_").replace(/_+/g,"_").replace(/^_+|_+$/g,"")||"file"}function ry(e){if(!e||e===".")return "";let t=String(e).replace(/^\./,"").toLowerCase().replace(/[^a-z0-9]/g,"");return t?`.${t}`:""}function ny(e){let t=ey(e),r=t.lastIndexOf(".");return r<=0||r===t.length-1?{stem:t,ext:""}:{stem:t.slice(0,r),ext:t.slice(r)}}function sy(e){let t=e.lastIndexOf("/");return t>=0?e.slice(t+1):e}function Jo(e){function t(r){let n=e.stat?Qh(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:Vc(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??Lc(),o.size=o.size??Vc(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??Lc(),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 oy(e){function t(s,o){let a=0,i=[];Array.isArray(o)&&i.push(...o);for(let c of e.list(`${s}/`))i.push(sy(c.key));for(let c of i){let u=Zh(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}=ny(s),d=ry(u),l=ty(c),m=`${String(o).padStart(3,"0")}-`,g=d,f=i-m.length-g.length;f<1&&(g="",f=i-m.length);let p=l.slice(0,Math.max(1,f)),S=`${m}${p}${g}`;return S.length>i&&(S=S.slice(0,i).replace(/\.$/,"")),S}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 ay(){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,uploaded_at:typeof c.uploaded_at=="string"?c.uploaded_at:o||null,chat:c.chat===true});}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 ZS(){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=Be(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=Be(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 cy=".board.lock";function Bc(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 dy(e,t){return typeof e=="string"?{cliDir:e,opts:t}:{cliDir:void 0,opts:e}}function ly(e,t){return typeof e=="string"?{cliDir:e,opts:t}:{cliDir:void 0,opts:e}}function Gc(e){if(e)return e;let t=sa(import.meta.url),r=[t,Ee(t,"..","cli","node"),Ee(t,"..","..","cli","node")];for(let n of r)try{return Bn(n),n}catch{}throw new Error(`createFsBoardPlatformAdapter: could not resolve a public CLI directory from module dir ${t}`)}function fy(e,t,r){let{cliDir:n,opts:s}=dy(t,r),o=Gc(n),a=e.value,c={meta:"board-live-cards",howToRun:"local-node",whatToRun:(s?.suppressSpawn?"":Bn(o))?oe({kind:"yaml-flow-cli",value:"board-live-cards-cli.js"}):"",...s?.notifyChannel?{extra:{notifyChannel:s.notifyChannel}}:{}};return {kvStorage:u=>Ur(Ee(a,`.${u}`)),blobStorage:u=>u?Ft(Ee(a,u)):Ft(a),scratchStorage:()=>Gr(Ee(a,".tmp")),scratchStorageForRef:u=>Gr(Me(u).value),archiveFactory:()=>Kr(Ee(a,"archive")),archiveFactoryForRef:u=>Kr(Me(u).value),journalAdapter:()=>ba(a),lock:_a(Ee(a,cy)),selfRef:c,async dispatchExecution(u,d){if(s?.suppressSpawn)return {dispatched:false};try{let l=d.source_def?.bindTo??Mn().slice(0,8),m=Gr(Ee(a,".tmp")),g=m.create(JSON.stringify(d,null,2),`exec-in-${l}`,".json"),f=m.getUniqueKey(`exec-out-${l}`,".json"),p=m.getUniqueKey(`exec-err-${l}`,".txt"),S=oe(m.keyRef(g)),_=oe(m.keyRef(f)),w=oe(m.keyRef(p));return va(u,{subcommand:"run-source-fetch",inRef:S,outRef:_,errRef:w},o),{dispatched:!0}}catch(l){let m=l instanceof Error?l.message:String(l);try{let g=Kr(Ee(a,"archive")),f=new Date().toISOString().replace(/[:.]/g,"-"),p=d.source_def?.bindTo??"unknown";g.blob("exec-failures").write(`${f}-${p}.json`,JSON.stringify({error:m,args:d,ref:u,at:new Date().toISOString()},null,2));}catch{}return {dispatched:false,error:m}}},resolveBlob(u){let d=ra(u.value)?Wn().read(u.value):Ft(a).read(u.value);if(d===null)throw new Error(`resolveBlob: blob not found: ::${u.kind}::${u.value}`);return d},hashFn:wa,genId:()=>na(`${Date.now()}-${Math.random()}`).slice(0,32),kvStorageForRef:u=>Ur(Me(u).value),requestProcessAccumulated(){s?.suppressSpawn||ia(o,e,s?.notifyChannel);},publishBoardChangeNotifications(u){if(!s?.notifyChannel||u.length===0)return;let d=u.map(l=>({id:Mn(),ts:new Date().toISOString(),boardRef:oe(e),notification:l}));ua(s.notifyChannel,d,s.onWarn);},onWarn:s?.onWarn}}function ek(e,t,r){let{cliDir:n,opts:s}=ly(t,r),o=Gc(n),a=fy(e,o,s),i=Mr();return {...a,invokeExecutorSync(c,u,d,l){let{command:m,baseArgs:g}=Lr(c,o),f=c.extra?["--extra",Buffer.from(JSON.stringify(c.extra)).toString("base64")]:[];return i.executeSync(m,[...g,u,...d,...f],{timeout:l?.timeout??3e4,encoding:"utf-8",input:l?.input})},validateSchema(c){let u=Fo(c);return {ok:u.errors.length===0,errors:u.errors}},absoluteBlob:Wn()}}function tk(e,t={}){let r=t.chatsSubdir??"chats",n=t.kvSubdir??".kv",s=n?[n,"chat"]:["chat"],o=r&&!Bc(e,r)?Ee(e,r):e,a=Ur(Ee(e,...s));return Do(i=>{let u=`${String(i).replace(/[^a-zA-Z0-9_-]/g,"_")}.jsonl`,d=Ee(o,u);return Yn(d)},a)}function rk(e,t={}){let r=t.filesSubdir??"files",n=r&&!Bc(e,r)?Ee(e,r):e;return Jo(Ft(n))}function nk(e){try{let t=JSON.parse(Buffer.from(e,"base64url").toString());return typeof t.br=="string"?t.br:null}catch{return null}}
|
|
19
|
+
export{yt as BOARD_GRAPH_KEY,On as EMPTY_CONFIG,Pr as SNAPSHOT_SCHEMA_VERSION_V1,Lr as buildLocalBaseSpec,Jo as createArtifactsStore,Xh as createArtifactsStorePublic,Wh as createBoardLiveCardsNonCorePublic,Hh as createBoardLiveCardsPublic,ay as createCardFileMetadataStore,Pn as createCardStore,Yh as createCardStorePublic,Do as createChatStorage,Rd as createExecutionRefInvoker,oy as createFileArtifactsStore,tk as createFsBoardChatStorage,rk as createFsBoardFileArtifactsStore,ek as createFsBoardNonCorePlatformAdapter,fy as createFsBoardPlatformAdapter,yh as createInMemoryChatStorage,ZS as createNodeSpawnInvocationAdapter,nk as decodeBoardRefFromToken,Kn as evaluateArgsMassaging,Vh as executionRefFromScriptPath,ya as invokeExecutionRef,Un as invokeExecutionRefSync,Cd as invokeRefSync,Go as parseExecutionRef,Me as parseRef,Be as resolveWhatToRunValue,fa as resolveYamlFlowCliPath,Bo as serializeExecutionRef,oe as serializeRef};//# sourceMappingURL=board-live-cards-node.js.map
|
|
20
20
|
//# sourceMappingURL=board-live-cards-node.js.map
|