yaml-flow 8.4.18 → 8.4.21
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 +7 -7
- package/cli/browser-api/board-live-cards-browser-adapter.d.ts +2 -2
- package/cli/browser-api/board-live-cards-browser-adapter.js +3 -3
- package/cli/browser-api/card-store-browser-api.js +1 -1
- package/cli/bundled/artifacts-store-cli.mjs +9 -9
- package/cli/bundled/board-live-cards-cli.mjs +19 -19
- package/cli/{execution-interface-BCIhu1gO.d.ts → execution-interface-_BN4kSuA.d.ts} +7 -1
- package/cli/{types-juH2nFpz.d.ts → types-CaQhDvWD.d.ts} +8 -1
- package/examples/board/demo-shell-with-server.html +2 -2
- package/examples/board/doc.html +2 -2
- package/examples/board-local/demo-shell-localstorage.html +3 -3
- package/lib/{artifacts-store-lib-D-k-E8Vy.d.ts → artifacts-store-lib-CODxnrXD.d.ts} +1 -1
- package/lib/{artifacts-store-lib-CVgtQrNZ.d.cts → artifacts-store-lib-DuatIrVb.d.cts} +1 -1
- package/lib/artifacts-store-public.d.cts +3 -3
- package/lib/artifacts-store-public.d.ts +3 -3
- package/lib/board-live-cards-node.cjs +10 -10
- package/lib/board-live-cards-node.d.cts +10 -10
- package/lib/board-live-cards-node.d.ts +10 -10
- package/lib/board-live-cards-node.js +10 -10
- package/lib/{board-live-cards-public-B4RcYPC_.d.cts → board-live-cards-public-DTuWGcCs.d.cts} +8 -1
- package/lib/{board-live-cards-public-ydXuA4zh.d.ts → board-live-cards-public-KyDR96Rf.d.ts} +8 -1
- package/lib/board-live-cards-public.cjs +2 -2
- package/lib/board-live-cards-public.d.cts +2 -2
- package/lib/board-live-cards-public.d.ts +2 -2
- package/lib/board-live-cards-public.js +2 -2
- package/lib/board-live-cards-server-runtime.cjs +3 -3
- package/lib/board-live-cards-server-runtime.d.cts +5 -5
- package/lib/board-live-cards-server-runtime.d.ts +5 -5
- package/lib/board-live-cards-server-runtime.js +3 -3
- package/lib/card-store-public.d.cts +2 -2
- package/lib/card-store-public.d.ts +2 -2
- package/lib/{chat-storage-lib-DsF4kPon.d.ts → chat-storage-lib-DFUsokwy.d.ts} +1 -1
- package/lib/{chat-storage-lib-B1wU27y3.d.cts → chat-storage-lib-DxyFlJVt.d.cts} +1 -1
- package/lib/chat-store-public.d.cts +3 -3
- package/lib/chat-store-public.d.ts +3 -3
- package/lib/execution-refs.cjs +2 -2
- package/lib/execution-refs.js +2 -2
- package/lib/index.d.cts +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/server-runtime/index.cjs +3 -3
- package/lib/server-runtime/index.d.cts +6 -6
- package/lib/server-runtime/index.d.ts +6 -6
- package/lib/server-runtime/index.js +3 -3
- package/lib/step-machine-public/index.cjs +3 -3
- package/lib/step-machine-public/index.d.cts +1 -1
- package/lib/step-machine-public/index.d.ts +1 -1
- package/lib/step-machine-public/index.js +3 -3
- package/lib/{storage-interface-B2WD9D5n.d.cts → storage-interface-D4Ny0Men.d.cts} +7 -1
- package/lib/{storage-interface-B2WD9D5n.d.ts → storage-interface-D4Ny0Men.d.ts} +7 -1
- package/lib/stores/index.d.cts +1 -1
- package/lib/stores/index.d.ts +1 -1
- package/lib/stores/kv.d.cts +1 -1
- package/lib/stores/kv.d.ts +1 -1
- package/lib/{types-1L1D33mr.d.ts → types-Bep-vtP0.d.ts} +4 -4
- package/lib/{types-D501gMQt.d.cts → types-DbvoDam4.d.cts} +4 -4
- package/package.json +1 -1
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
'use strict';var child_process=require('child_process'),_=require('fs'),zn=require('os'),X=require('path'),da=require('net'),url=require('url'),crypto=require('crypto'),module$1=require('module'),properLockfile=require('proper-lockfile'),Sh=require('ajv-formats');var _documentCurrentScript=typeof document!=='undefined'?document.currentScript:null;function _interopDefault(e){return e&&e.__esModule?e:{default:e}}function _interopNamespace(e){if(e&&e.__esModule)return e;var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var ___namespace=/*#__PURE__*/_interopNamespace(_);var zn__namespace=/*#__PURE__*/_interopNamespace(zn);var X__namespace=/*#__PURE__*/_interopNamespace(X);var da__namespace=/*#__PURE__*/_interopNamespace(da);var Sh__default=/*#__PURE__*/_interopDefault(Sh);var nd=Object.create;var aa=Object.defineProperty;var sd=Object.getOwnPropertyDescriptor;var od=Object.getOwnPropertyNames;var ad=Object.getPrototypeOf,id=Object.prototype.hasOwnProperty;var T=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var ud=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of od(t))!id.call(e,s)&&s!==r&&aa(e,s,{get:()=>t[s],enumerable:!(n=sd(t,s))||n.enumerable});return e};var cd=(e,t,r)=>(r=e!=null?nd(ad(e)):{},ud(aa(r,"default",{value:e,enumerable:true}),e));var dr=T(ee=>{Object.defineProperty(ee,"__esModule",{value:true});ee.regexpCode=ee.getEsmExportName=ee.getProperty=ee.safeStringify=ee.stringify=ee.strConcat=ee.addCodeArg=ee.str=ee._=ee.nil=ee._Code=ee.Name=ee.IDENTIFIER=ee._CodeOrName=void 0;var ur=class{};ee._CodeOrName=ur;ee.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var At=class extends ur{constructor(t){if(super(),!ee.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}}};ee.Name=At;var Me=class extends ur{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 At&&(r[n.str]=(r[n.str]||0)+1),r),{})}};ee._Code=Me;ee.nil=new Me("");function Oa(e,...t){let r=[e[0]],n=0;for(;n<t.length;)is(r,t[n]),r.push(e[++n]);return new Me(r)}ee._=Oa;var as=new Me("+");function Na(e,...t){let r=[cr(e[0])],n=0;for(;n<t.length;)r.push(as),is(r,t[n]),r.push(as,cr(e[++n]));return Jd(r),new Me(r)}ee.str=Na;function is(e,t){t instanceof Me?e.push(...t._items):t instanceof At?e.push(t):e.push(Wd(t));}ee.addCodeArg=is;function Jd(e){let t=1;for(;t<e.length-1;){if(e[t]===as){let r=zd(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+";}t++;}}function zd(e,t){if(t==='""')return e;if(e==='""')return t;if(typeof e=="string")return t instanceof At||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 At))return `"${e}${t.slice(1)}`}function Hd(e,t){return t.emptyStr()?e:e.emptyStr()?t:Na`${e}${t}`}ee.strConcat=Hd;function Wd(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:cr(Array.isArray(e)?e.join(","):e)}function Yd(e){return new Me(cr(e))}ee.stringify=Yd;function cr(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}ee.safeStringify=cr;function Xd(e){return typeof e=="string"&&ee.IDENTIFIER.test(e)?new Me(`.${e}`):Oa`[${e}]`}ee.getProperty=Xd;function Qd(e){if(typeof e=="string"&&ee.IDENTIFIER.test(e))return new Me(`${e}`);throw new Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}ee.getEsmExportName=Qd;function Zd(e){return new Me(e.toString())}ee.regexpCode=Zd;});var ds=T(Te=>{Object.defineProperty(Te,"__esModule",{value:true});Te.ValueScope=Te.ValueScopeName=Te.Scope=Te.varKinds=Te.UsedValueState=void 0;var Ae=dr(),us=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value;}},Zr;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed";})(Zr||(Te.UsedValueState=Zr={}));Te.varKinds={const:new Ae.Name("const"),let:new Ae.Name("let"),var:new Ae.Name("var")};var en=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r;}toName(t){return t instanceof Ae.Name?t:this.name(t)}name(t){return new Ae.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return `${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};Te.Scope=en;var tn=class extends Ae.Name{constructor(t,r){super(r),this.prefix=t;}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0, Ae._)`.${new Ae.Name(r)}[${n}]`;}};Te.ValueScopeName=tn;var el=(0, Ae._)`\n`,cs=class extends en{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?el:Ae.nil};}get(){return this._scope}name(t){return new tn(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, Ae._)`${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=Ae.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,Zr.Started);let d=r(u);if(d){let l=this.opts.es5?Te.varKinds.var:Te.varKinds.const;o=(0, Ae._)`${o}${l} ${u} = ${d};${this.opts._n}`;}else if(d=s?.(u))o=(0, Ae._)`${o}${d}${this.opts._n}`;else throw new us(u);c.set(u,Zr.Completed);});}return o}};Te.ValueScope=cs;});var U=T(G=>{Object.defineProperty(G,"__esModule",{value:true});G.or=G.and=G.not=G.CodeGen=G.operators=G.varKinds=G.ValueScopeName=G.ValueScope=G.Scope=G.Name=G.regexpCode=G.stringify=G.getProperty=G.nil=G.strConcat=G.str=G._=void 0;var Y=dr(),ze=ds(),pt=dr();Object.defineProperty(G,"_",{enumerable:true,get:function(){return pt._}});Object.defineProperty(G,"str",{enumerable:true,get:function(){return pt.str}});Object.defineProperty(G,"strConcat",{enumerable:true,get:function(){return pt.strConcat}});Object.defineProperty(G,"nil",{enumerable:true,get:function(){return pt.nil}});Object.defineProperty(G,"getProperty",{enumerable:true,get:function(){return pt.getProperty}});Object.defineProperty(G,"stringify",{enumerable:true,get:function(){return pt.stringify}});Object.defineProperty(G,"regexpCode",{enumerable:true,get:function(){return pt.regexpCode}});Object.defineProperty(G,"Name",{enumerable:true,get:function(){return pt.Name}});var on=ds();Object.defineProperty(G,"Scope",{enumerable:true,get:function(){return on.Scope}});Object.defineProperty(G,"ValueScope",{enumerable:true,get:function(){return on.ValueScope}});Object.defineProperty(G,"ValueScopeName",{enumerable:true,get:function(){return on.ValueScopeName}});Object.defineProperty(G,"varKinds",{enumerable:true,get:function(){return on.varKinds}});G.operators={GT:new Y._Code(">"),GTE:new Y._Code(">="),LT:new Y._Code("<"),LTE:new Y._Code("<="),EQ:new Y._Code("==="),NEQ:new Y._Code("!=="),NOT:new Y._Code("!"),OR:new Y._Code("||"),AND:new Y._Code("&&"),ADD:new Y._Code("+")};var nt=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},ls=class extends nt{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n;}render({es5:t,_n:r}){let n=t?ze.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=zt(this.rhs,t,r)),this}get names(){return this.rhs instanceof Y._CodeOrName?this.rhs.names:{}}},rn=class extends nt{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 Y.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=zt(this.rhs,t,r),this}get names(){let t=this.lhs instanceof Y.Name?{}:{...this.lhs.names};return sn(t,this.rhs)}},fs=class extends rn{constructor(t,r,n,s){super(t,n,s),this.op=r;}render({_n:t}){return `${this.lhs} ${this.op}= ${this.rhs};`+t}},ps=class extends nt{constructor(t){super(),this.label=t,this.names={};}render({_n:t}){return `${this.label}:`+t}},ms=class extends nt{constructor(t){super(),this.label=t,this.names={};}render({_n:t}){return `break${this.label?` ${this.label}`:""};`+t}},gs=class extends nt{constructor(t){super(),this.error=t;}render({_n:t}){return `throw ${this.error};`+t}get names(){return this.error.names}},hs=class extends nt{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=zt(this.code,t,r),this}get names(){return this.code instanceof Y._CodeOrName?this.code.names:{}}},lr=class extends nt{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)||(tl(t,o.names),n.splice(s,1));}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>Pt(t,r.names),{})}},st=class extends lr{render(t){return "{"+t._n+super.render(t)+"}"+t._n}},ys=class extends lr{},Jt=class extends st{};Jt.kind="else";var Tt=class e extends st{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 Jt(n):n;}if(r)return t===false?r instanceof e?r:r.nodes:this.nodes.length?this:new e(qa(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=zt(this.condition,t,r),this}get names(){let t=super.names;return sn(t,this.condition),this.else&&Pt(t,this.else.names),t}};Tt.kind="if";var It=class extends st{};It.kind="for";var vs=class extends It{constructor(t){super(),this.iteration=t;}render(t){return `for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=zt(this.iteration,t,r),this}get names(){return Pt(super.names,this.iteration.names)}},Ss=class extends It{constructor(t,r,n,s){super(),this.varKind=t,this.name=r,this.from=n,this.to=s;}render(t){let r=t.es5?ze.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=sn(super.names,this.from);return sn(t,this.to)}},nn=class extends It{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=zt(this.iterable,t,r),this}get names(){return Pt(super.names,this.iterable.names)}},fr=class extends st{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)}};fr.kind="func";var pr=class extends lr{render(t){return "return "+super.render(t)}};pr.kind="return";var ks=class extends st{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&&Pt(t,this.catch.names),this.finally&&Pt(t,this.finally.names),t}},mr=class extends st{constructor(t){super(),this.error=t;}render(t){return `catch(${this.error})`+super.render(t)}};mr.kind="catch";var gr=class extends st{render(t){return "finally"+super.render(t)}};gr.kind="finally";var ws=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
2
|
-
`:""},this._extScope=t,this._scope=new ze.Scope({parent:t}),this._nodes=[new ys];}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 ls(t,o,n)),o}const(t,r,n){return this._def(ze.varKinds.const,t,r,n)}let(t,r,n){return this._def(ze.varKinds.let,t,r,n)}var(t,r,n){return this._def(ze.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new rn(t,r,n))}add(t,r){return this._leafNode(new fs(t,G.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==Y.nil&&this._leafNode(new hs(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, Y.addCodeArg)(r,s));return r.push("}"),new Y._Code(r)}if(t,r,n){if(this._blockNode(new Tt(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 Tt(t))}else(){return this._elseNode(new Jt)}endIf(){return this._endBlockNode(Tt,Jt)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new vs(t),r)}forRange(t,r,n,s,o=this.opts.es5?ze.varKinds.var:ze.varKinds.let){let a=this._scope.toName(t);return this._for(new Ss(o,a,r,n),()=>s(a))}forOf(t,r,n,s=ze.varKinds.const){let o=this._scope.toName(t);if(this.opts.es5){let a=r instanceof Y.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0, Y._)`${a}.length`,i=>{this.var(o,(0, Y._)`${a}[${i}]`),n(o);})}return this._for(new nn("of",s,o,r),()=>n(o))}forIn(t,r,n,s=this.opts.es5?ze.varKinds.var:ze.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0, Y._)`Object.keys(${r})`,n);let o=this._scope.toName(t);return this._for(new nn("in",s,o,r),()=>n(o))}endFor(){return this._endBlockNode(It)}label(t){return this._leafNode(new ps(t))}break(t){return this._leafNode(new ms(t))}return(t){let r=new pr;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(pr)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new ks;if(this._blockNode(s),this.code(t),r){let o=this.name("e");this._currNode=s.catch=new mr(o),r(o);}return n&&(this._currNode=s.finally=new gr,this.code(n)),this._endBlockNode(mr,gr)}throw(t){return this._leafNode(new gs(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=Y.nil,n,s){return this._blockNode(new fr(t,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(fr)}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 Tt))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;}};G.CodeGen=ws;function Pt(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function sn(e,t){return t instanceof Y._CodeOrName?Pt(e,t.names):e}function zt(e,t,r){if(e instanceof Y.Name)return n(e);if(!s(e))return e;return new Y._Code(e._items.reduce((o,a)=>(a instanceof Y.Name&&(a=n(a)),a instanceof Y._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 Y._Code&&o._items.some(a=>a instanceof Y.Name&&t[a.str]===1&&r[a.str]!==void 0)}}function tl(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0);}function qa(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0, Y._)`!${bs(e)}`}G.not=qa;var rl=Fa(G.operators.AND);function nl(...e){return e.reduce(rl)}G.and=nl;var sl=Fa(G.operators.OR);function ol(...e){return e.reduce(sl)}G.or=ol;function Fa(e){return (t,r)=>t===Y.nil?r:r===Y.nil?t:(0, Y._)`${bs(t)} ${e} ${bs(r)}`}function bs(e){return e instanceof Y.Name?e:(0, Y._)`(${e})`}});var Q=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(),al=dr();function il(e){let t={};for(let r of e)t[r]=true;return t}J.toHash=il;function ul(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?true:(La(e,t),!Va(t,e.self.RULES.all))}J.alwaysValidSchema=ul;function La(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]||Ga(e,`unknown keyword: "${o}"`);}J.checkUnknownRules=La;function Va(e,t){if(typeof e=="boolean")return !e;for(let r in e)if(t[r])return true;return false}J.schemaHasRules=Va;function cl(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=cl;function dl({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=dl;function ll(e){return Ba(decodeURIComponent(e))}J.unescapeFragment=ll;function fl(e){return encodeURIComponent(Rs(e))}J.escapeFragment=fl;function Rs(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}J.escapeJsonPointer=Rs;function Ba(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}J.unescapeJsonPointer=Ba;function pl(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e);}J.eachItem=pl;function Da({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:Da({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} || {}`),Cs(e,r,t));}),mergeValues:(e,t)=>e===true?true:{...e,...t},resultToName:Ka}),items:Da({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 Ka(e,t){if(t===true)return e.var("props",true);let r=e.var("props",(0, se._)`{}`);return t!==void 0&&Cs(e,r,t),r}J.evaluatedPropsToName=Ka;function Cs(e,t,r){Object.keys(r).forEach(n=>e.assign((0, se._)`${t}${(0, se.getProperty)(n)}`,true));}J.setEvaluated=Cs;var Ma={};function ml(e,t){return e.scopeValue("func",{ref:t,code:Ma[t.code]||(Ma[t.code]=new al._Code(t.code))})}J.useFunc=ml;var _s;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str";})(_s||(J.Type=_s={}));function gl(e,t,r){if(e instanceof se.Name){let n=t===_s.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():"/"+Rs(e)}J.getErrorPath=gl;function Ga(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=Ga;});var ot=T($s=>{Object.defineProperty($s,"__esModule",{value:true});var ye=U(),hl={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")};$s.default=hl;});var hr=T(ve=>{Object.defineProperty(ve,"__esModule",{value:true});ve.extendErrors=ve.resetErrorsCount=ve.reportExtraError=ve.reportError=ve.keyword$DataError=ve.keywordError=void 0;var Z=U(),an=Q(),_e=ot();ve.keywordError={message:({keyword:e})=>(0, Z.str)`must pass "${e}" keyword validation`};ve.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0, Z.str)`"${e}" keyword must be ${t} ($data)`:(0, Z.str)`"${e}" keyword is invalid ($data)`};function yl(e,t=ve.keywordError,r,n){let{it:s}=e,{gen:o,compositeRule:a,allErrors:i}=s,c=za(e,t,r);n??(a||i)?Ua(o,c):Ja(s,(0, Z._)`[${c}]`);}ve.reportError=yl;function vl(e,t=ve.keywordError,r){let{it:n}=e,{gen:s,compositeRule:o,allErrors:a}=n,i=za(e,t,r);Ua(s,i),o||a||Ja(n,_e.default.vErrors);}ve.reportExtraError=vl;function Sl(e,t){e.assign(_e.default.errors,t),e.if((0, Z._)`${_e.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0, Z._)`${_e.default.vErrors}.length`,t),()=>e.assign(_e.default.vErrors,null)));}ve.resetErrorsCount=Sl;function kl({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,_e.default.errors,i=>{e.const(a,(0, Z._)`${_e.default.vErrors}[${i}]`),e.if((0, Z._)`${a}.instancePath === undefined`,()=>e.assign((0, Z._)`${a}.instancePath`,(0, Z.strConcat)(_e.default.instancePath,o.errorPath))),e.assign((0, Z._)`${a}.schemaPath`,(0, Z.str)`${o.errSchemaPath}/${t}`),o.opts.verbose&&(e.assign((0, Z._)`${a}.schema`,r),e.assign((0, Z._)`${a}.data`,n));});}ve.extendErrors=kl;function Ua(e,t){let r=e.const("err",t);e.if((0, Z._)`${_e.default.vErrors} === null`,()=>e.assign(_e.default.vErrors,(0, Z._)`[${r}]`),(0, Z._)`${_e.default.vErrors}.push(${r})`),e.code((0, Z._)`${_e.default.errors}++`);}function Ja(e,t){let{gen:r,validateName:n,schemaEnv:s}=e;s.$async?r.throw((0, Z._)`new ${e.ValidationError}(${t})`):(r.assign((0, Z._)`${n}.errors`,t),r.return(false));}var jt={keyword:new Z.Name("keyword"),schemaPath:new Z.Name("schemaPath"),params:new Z.Name("params"),propertyName:new Z.Name("propertyName"),message:new Z.Name("message"),schema:new Z.Name("schema"),parentSchema:new Z.Name("parentSchema")};function za(e,t,r){let{createErrors:n}=e.it;return n===false?(0, Z._)`{}`:wl(e,t,r)}function wl(e,t,r={}){let{gen:n,it:s}=e,o=[bl(s,r),_l(e,r)];return Rl(e,t,o),n.object(...o)}function bl({errorPath:e},{instancePath:t}){let r=t?(0, Z.str)`${e}${(0, an.getErrorPath)(t,an.Type.Str)}`:e;return [_e.default.instancePath,(0, Z.strConcat)(_e.default.instancePath,r)]}function _l({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let s=n?t:(0, Z.str)`${t}/${e}`;return r&&(s=(0, Z.str)`${s}${(0, an.getErrorPath)(r,an.Type.Str)}`),[jt.schemaPath,s]}function Rl(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([jt.keyword,s],[jt.params,typeof t=="function"?t(e):t||(0, Z._)`{}`]),c.messages&&n.push([jt.message,typeof r=="function"?r(e):r]),c.verbose&&n.push([jt.schema,a],[jt.parentSchema,(0, Z._)`${d}${l}`],[_e.default.data,o]),u&&n.push([jt.propertyName,u]);}});var Wa=T(Ht=>{Object.defineProperty(Ht,"__esModule",{value:true});Ht.boolOrEmptySchema=Ht.topBoolOrEmptySchema=void 0;var Cl=hr(),$l=U(),El=ot(),xl={message:"boolean schema is false"};function Al(e){let{gen:t,schema:r,validateName:n}=e;r===false?Ha(e,false):typeof r=="object"&&r.$async===true?t.return(El.default.data):(t.assign((0, $l._)`${n}.errors`,null),t.return(true));}Ht.topBoolOrEmptySchema=Al;function Tl(e,t){let{gen:r,schema:n}=e;n===false?(r.var(t,false),Ha(e)):r.var(t,true);}Ht.boolOrEmptySchema=Tl;function Ha(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, Cl.reportError)(s,xl,void 0,t);}});var Es=T(Wt=>{Object.defineProperty(Wt,"__esModule",{value:true});Wt.getRules=Wt.isJSONType=void 0;var Il=["string","number","integer","boolean","null","object","array"],Pl=new Set(Il);function jl(e){return typeof e=="string"&&Pl.has(e)}Wt.isJSONType=jl;function Ol(){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:{}}}Wt.getRules=Ol;});var xs=T(mt=>{Object.defineProperty(mt,"__esModule",{value:true});mt.shouldUseRule=mt.shouldUseGroup=mt.schemaHasRulesForType=void 0;function Nl({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==true&&Ya(e,n)}mt.schemaHasRulesForType=Nl;function Ya(e,t){return t.rules.some(r=>Xa(e,r))}mt.shouldUseGroup=Ya;function Xa(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))}mt.shouldUseRule=Xa;});var yr=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 ql=Es(),Fl=xs(),Dl=hr(),K=U(),Qa=Q(),Yt;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong";})(Yt||(Se.DataType=Yt={}));function Ml(e){let t=Za(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=Ml;function Za(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(ql.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}Se.getJSONTypes=Za;function Ll(e,t){let{gen:r,data:n,opts:s}=e,o=Vl(t,s.coerceTypes),a=t.length>0&&!(o.length===0&&t.length===1&&(0, Fl.schemaHasRulesForType)(e,t[0]));if(a){let i=Ts(t,n,s.strictNumbers,Yt.Wrong);r.if(i,()=>{o.length?Bl(e,t,o):Is(e);});}return a}Se.coerceAndCheckDataType=Ll;var ei=new Set(["string","number","integer","boolean","null"]);function Vl(e,t){return t?e.filter(r=>ei.has(r)||t==="array"&&r==="array"):[]}function Bl(e,t,r){let{gen:n,data:s,opts:o}=e,a=n.let("dataType",(0, K._)`typeof ${s}`),i=n.let("coerced",(0, K._)`undefined`);o.coerceTypes==="array"&&n.if((0, K._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0, K._)`${s}[0]`).assign(a,(0, K._)`typeof ${s}`).if(Ts(t,s,o.strictNumbers),()=>n.assign(i,s))),n.if((0, K._)`${i} !== undefined`);for(let u of r)(ei.has(u)||u==="array"&&o.coerceTypes==="array")&&c(u);n.else(),Is(e),n.endIf(),n.if((0, K._)`${i} !== undefined`,()=>{n.assign(s,i),Kl(e,i);});function c(u){switch(u){case "string":n.elseIf((0, K._)`${a} == "number" || ${a} == "boolean"`).assign(i,(0, K._)`"" + ${s}`).elseIf((0, K._)`${s} === null`).assign(i,(0, K._)`""`);return;case "number":n.elseIf((0, K._)`${a} == "boolean" || ${s} === null
|
|
1
|
+
'use strict';var child_process=require('child_process'),_=require('fs'),Hn=require('os'),X=require('path'),la=require('net'),url=require('url'),crypto=require('crypto'),module$1=require('module'),properLockfile=require('proper-lockfile'),bh=require('ajv-formats');var _documentCurrentScript=typeof document!=='undefined'?document.currentScript:null;function _interopDefault(e){return e&&e.__esModule?e:{default:e}}function _interopNamespace(e){if(e&&e.__esModule)return e;var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var ___namespace=/*#__PURE__*/_interopNamespace(_);var Hn__namespace=/*#__PURE__*/_interopNamespace(Hn);var X__namespace=/*#__PURE__*/_interopNamespace(X);var la__namespace=/*#__PURE__*/_interopNamespace(la);var bh__default=/*#__PURE__*/_interopDefault(bh);var od=Object.create;var ia=Object.defineProperty;var ad=Object.getOwnPropertyDescriptor;var id=Object.getOwnPropertyNames;var ud=Object.getPrototypeOf,cd=Object.prototype.hasOwnProperty;var T=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var dd=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of id(t))!cd.call(e,s)&&s!==r&&ia(e,s,{get:()=>t[s],enumerable:!(n=ad(t,s))||n.enumerable});return e};var ld=(e,t,r)=>(r=e!=null?od(ud(e)):{},dd(ia(r,"default",{value:e,enumerable:true}),e));var fr=T(ee=>{Object.defineProperty(ee,"__esModule",{value:true});ee.regexpCode=ee.getEsmExportName=ee.getProperty=ee.safeStringify=ee.stringify=ee.strConcat=ee.addCodeArg=ee.str=ee._=ee.nil=ee._Code=ee.Name=ee.IDENTIFIER=ee._CodeOrName=void 0;var dr=class{};ee._CodeOrName=dr;ee.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Pt=class extends dr{constructor(t){if(super(),!ee.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}}};ee.Name=Pt;var Be=class extends dr{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 Pt&&(r[n.str]=(r[n.str]||0)+1),r),{})}};ee._Code=Be;ee.nil=new Be("");function Na(e,...t){let r=[e[0]],n=0;for(;n<t.length;)us(r,t[n]),r.push(e[++n]);return new Be(r)}ee._=Na;var is=new Be("+");function qa(e,...t){let r=[lr(e[0])],n=0;for(;n<t.length;)r.push(is),us(r,t[n]),r.push(is,lr(e[++n]));return Wd(r),new Be(r)}ee.str=qa;function us(e,t){t instanceof Be?e.push(...t._items):t instanceof Pt?e.push(t):e.push(Qd(t));}ee.addCodeArg=us;function Wd(e){let t=1;for(;t<e.length-1;){if(e[t]===is){let r=Yd(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+";}t++;}}function Yd(e,t){if(t==='""')return e;if(e==='""')return t;if(typeof e=="string")return t instanceof Pt||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 Pt))return `"${e}${t.slice(1)}`}function Xd(e,t){return t.emptyStr()?e:e.emptyStr()?t:qa`${e}${t}`}ee.strConcat=Xd;function Qd(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:lr(Array.isArray(e)?e.join(","):e)}function Zd(e){return new Be(lr(e))}ee.stringify=Zd;function lr(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}ee.safeStringify=lr;function el(e){return typeof e=="string"&&ee.IDENTIFIER.test(e)?new Be(`.${e}`):Na`[${e}]`}ee.getProperty=el;function tl(e){if(typeof e=="string"&&ee.IDENTIFIER.test(e))return new Be(`${e}`);throw new Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}ee.getEsmExportName=tl;function rl(e){return new Be(e.toString())}ee.regexpCode=rl;});var ls=T(Pe=>{Object.defineProperty(Pe,"__esModule",{value:true});Pe.ValueScope=Pe.ValueScopeName=Pe.Scope=Pe.varKinds=Pe.UsedValueState=void 0;var je=fr(),cs=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value;}},tn;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed";})(tn||(Pe.UsedValueState=tn={}));Pe.varKinds={const:new je.Name("const"),let:new je.Name("let"),var:new je.Name("var")};var rn=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r;}toName(t){return t instanceof je.Name?t:this.name(t)}name(t){return new je.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}}};Pe.Scope=rn;var nn=class extends je.Name{constructor(t,r){super(r),this.prefix=t;}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0, je._)`.${new je.Name(r)}[${n}]`;}};Pe.ValueScopeName=nn;var nl=(0, je._)`\n`,ds=class extends rn{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?nl:je.nil};}get(){return this._scope}name(t){return new nn(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, je._)`${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=je.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,tn.Started);let d=r(u);if(d){let l=this.opts.es5?Pe.varKinds.var:Pe.varKinds.const;o=(0, je._)`${o}${l} ${u} = ${d};${this.opts._n}`;}else if(d=s?.(u))o=(0, je._)`${o}${d}${this.opts._n}`;else throw new cs(u);c.set(u,tn.Completed);});}return o}};Pe.ValueScope=ds;});var z=T(U=>{Object.defineProperty(U,"__esModule",{value:true});U.or=U.and=U.not=U.CodeGen=U.operators=U.varKinds=U.ValueScopeName=U.ValueScope=U.Scope=U.Name=U.regexpCode=U.stringify=U.getProperty=U.nil=U.strConcat=U.str=U._=void 0;var Y=fr(),Ye=ls(),yt=fr();Object.defineProperty(U,"_",{enumerable:true,get:function(){return yt._}});Object.defineProperty(U,"str",{enumerable:true,get:function(){return yt.str}});Object.defineProperty(U,"strConcat",{enumerable:true,get:function(){return yt.strConcat}});Object.defineProperty(U,"nil",{enumerable:true,get:function(){return yt.nil}});Object.defineProperty(U,"getProperty",{enumerable:true,get:function(){return yt.getProperty}});Object.defineProperty(U,"stringify",{enumerable:true,get:function(){return yt.stringify}});Object.defineProperty(U,"regexpCode",{enumerable:true,get:function(){return yt.regexpCode}});Object.defineProperty(U,"Name",{enumerable:true,get:function(){return yt.Name}});var un=ls();Object.defineProperty(U,"Scope",{enumerable:true,get:function(){return un.Scope}});Object.defineProperty(U,"ValueScope",{enumerable:true,get:function(){return un.ValueScope}});Object.defineProperty(U,"ValueScopeName",{enumerable:true,get:function(){return un.ValueScopeName}});Object.defineProperty(U,"varKinds",{enumerable:true,get:function(){return un.varKinds}});U.operators={GT:new Y._Code(">"),GTE:new Y._Code(">="),LT:new Y._Code("<"),LTE:new Y._Code("<="),EQ:new Y._Code("==="),NEQ:new Y._Code("!=="),NOT:new Y._Code("!"),OR:new Y._Code("||"),AND:new Y._Code("&&"),ADD:new Y._Code("+")};var ut=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},fs=class extends ut{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n;}render({es5:t,_n:r}){let n=t?Ye.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=Wt(this.rhs,t,r)),this}get names(){return this.rhs instanceof Y._CodeOrName?this.rhs.names:{}}},sn=class extends ut{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 Y.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=Wt(this.rhs,t,r),this}get names(){let t=this.lhs instanceof Y.Name?{}:{...this.lhs.names};return an(t,this.rhs)}},ps=class extends sn{constructor(t,r,n,s){super(t,n,s),this.op=r;}render({_n:t}){return `${this.lhs} ${this.op}= ${this.rhs};`+t}},ms=class extends ut{constructor(t){super(),this.label=t,this.names={};}render({_n:t}){return `${this.label}:`+t}},gs=class extends ut{constructor(t){super(),this.label=t,this.names={};}render({_n:t}){return `break${this.label?` ${this.label}`:""};`+t}},hs=class extends ut{constructor(t){super(),this.error=t;}render({_n:t}){return `throw ${this.error};`+t}get names(){return this.error.names}},ys=class extends ut{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=Wt(this.code,t,r),this}get names(){return this.code instanceof Y._CodeOrName?this.code.names:{}}},pr=class extends ut{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)||(sl(t,o.names),n.splice(s,1));}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>qt(t,r.names),{})}},ct=class extends pr{render(t){return "{"+t._n+super.render(t)+"}"+t._n}},vs=class extends pr{},Ht=class extends ct{};Ht.kind="else";var Ot=class e extends ct{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 Ht(n):n;}if(r)return t===false?r instanceof e?r:r.nodes:this.nodes.length?this:new e(Fa(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=Wt(this.condition,t,r),this}get names(){let t=super.names;return an(t,this.condition),this.else&&qt(t,this.else.names),t}};Ot.kind="if";var Nt=class extends ct{};Nt.kind="for";var Ss=class extends Nt{constructor(t){super(),this.iteration=t;}render(t){return `for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=Wt(this.iteration,t,r),this}get names(){return qt(super.names,this.iteration.names)}},ks=class extends Nt{constructor(t,r,n,s){super(),this.varKind=t,this.name=r,this.from=n,this.to=s;}render(t){let r=t.es5?Ye.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=an(super.names,this.from);return an(t,this.to)}},on=class extends Nt{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=Wt(this.iterable,t,r),this}get names(){return qt(super.names,this.iterable.names)}},mr=class extends ct{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)}};mr.kind="func";var gr=class extends pr{render(t){return "return "+super.render(t)}};gr.kind="return";var ws=class extends ct{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&&qt(t,this.catch.names),this.finally&&qt(t,this.finally.names),t}},hr=class extends ct{constructor(t){super(),this.error=t;}render(t){return `catch(${this.error})`+super.render(t)}};hr.kind="catch";var yr=class extends ct{render(t){return "finally"+super.render(t)}};yr.kind="finally";var bs=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
2
|
+
`:""},this._extScope=t,this._scope=new Ye.Scope({parent:t}),this._nodes=[new vs];}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 fs(t,o,n)),o}const(t,r,n){return this._def(Ye.varKinds.const,t,r,n)}let(t,r,n){return this._def(Ye.varKinds.let,t,r,n)}var(t,r,n){return this._def(Ye.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new sn(t,r,n))}add(t,r){return this._leafNode(new ps(t,U.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==Y.nil&&this._leafNode(new ys(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, Y.addCodeArg)(r,s));return r.push("}"),new Y._Code(r)}if(t,r,n){if(this._blockNode(new Ot(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 Ot(t))}else(){return this._elseNode(new Ht)}endIf(){return this._endBlockNode(Ot,Ht)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new Ss(t),r)}forRange(t,r,n,s,o=this.opts.es5?Ye.varKinds.var:Ye.varKinds.let){let a=this._scope.toName(t);return this._for(new ks(o,a,r,n),()=>s(a))}forOf(t,r,n,s=Ye.varKinds.const){let o=this._scope.toName(t);if(this.opts.es5){let a=r instanceof Y.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0, Y._)`${a}.length`,i=>{this.var(o,(0, Y._)`${a}[${i}]`),n(o);})}return this._for(new on("of",s,o,r),()=>n(o))}forIn(t,r,n,s=this.opts.es5?Ye.varKinds.var:Ye.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0, Y._)`Object.keys(${r})`,n);let o=this._scope.toName(t);return this._for(new on("in",s,o,r),()=>n(o))}endFor(){return this._endBlockNode(Nt)}label(t){return this._leafNode(new ms(t))}break(t){return this._leafNode(new gs(t))}return(t){let r=new gr;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(gr)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new ws;if(this._blockNode(s),this.code(t),r){let o=this.name("e");this._currNode=s.catch=new hr(o),r(o);}return n&&(this._currNode=s.finally=new yr,this.code(n)),this._endBlockNode(hr,yr)}throw(t){return this._leafNode(new hs(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=Y.nil,n,s){return this._blockNode(new mr(t,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(mr)}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 Ot))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;}};U.CodeGen=bs;function qt(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function an(e,t){return t instanceof Y._CodeOrName?qt(e,t.names):e}function Wt(e,t,r){if(e instanceof Y.Name)return n(e);if(!s(e))return e;return new Y._Code(e._items.reduce((o,a)=>(a instanceof Y.Name&&(a=n(a)),a instanceof Y._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 Y._Code&&o._items.some(a=>a instanceof Y.Name&&t[a.str]===1&&r[a.str]!==void 0)}}function sl(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0);}function Fa(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0, Y._)`!${_s(e)}`}U.not=Fa;var ol=Da(U.operators.AND);function al(...e){return e.reduce(ol)}U.and=al;var il=Da(U.operators.OR);function ul(...e){return e.reduce(il)}U.or=ul;function Da(e){return (t,r)=>t===Y.nil?r:r===Y.nil?t:(0, Y._)`${_s(t)} ${e} ${_s(r)}`}function _s(e){return e instanceof Y.Name?e:(0, Y._)`(${e})`}});var Q=T(H=>{Object.defineProperty(H,"__esModule",{value:true});H.checkStrictMode=H.getErrorPath=H.Type=H.useFunc=H.setEvaluated=H.evaluatedPropsToName=H.mergeEvaluated=H.eachItem=H.unescapeJsonPointer=H.escapeJsonPointer=H.escapeFragment=H.unescapeFragment=H.schemaRefOrVal=H.schemaHasRulesButRef=H.schemaHasRules=H.checkUnknownRules=H.alwaysValidSchema=H.toHash=void 0;var oe=z(),cl=fr();function dl(e){let t={};for(let r of e)t[r]=true;return t}H.toHash=dl;function ll(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?true:(Va(e,t),!Ba(t,e.self.RULES.all))}H.alwaysValidSchema=ll;function Va(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]||Ua(e,`unknown keyword: "${o}"`);}H.checkUnknownRules=Va;function Ba(e,t){if(typeof e=="boolean")return !e;for(let r in e)if(t[r])return true;return false}H.schemaHasRules=Ba;function fl(e,t){if(typeof e=="boolean")return !e;for(let r in e)if(r!=="$ref"&&t.all[r])return true;return false}H.schemaHasRulesButRef=fl;function pl({topSchemaRef:e,schemaPath:t},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return (0, oe._)`${r}`}return (0, oe._)`${e}${t}${(0, oe.getProperty)(n)}`}H.schemaRefOrVal=pl;function ml(e){return Ka(decodeURIComponent(e))}H.unescapeFragment=ml;function gl(e){return encodeURIComponent(Cs(e))}H.escapeFragment=gl;function Cs(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}H.escapeJsonPointer=Cs;function Ka(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}H.unescapeJsonPointer=Ka;function hl(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e);}H.eachItem=hl;function Ma({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return (s,o,a,i)=>{let c=a===void 0?o:a instanceof oe.Name?(o instanceof oe.Name?e(s,o,a):t(s,o,a),a):o instanceof oe.Name?(t(s,a,o),o):r(o,a);return i===oe.Name&&!(c instanceof oe.Name)?n(s,c):c}}H.mergeEvaluated={props:Ma({mergeNames:(e,t,r)=>e.if((0, oe._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0, oe._)`${t} === true`,()=>e.assign(r,true),()=>e.assign(r,(0, oe._)`${r} || {}`).code((0, oe._)`Object.assign(${r}, ${t})`));}),mergeToName:(e,t,r)=>e.if((0, oe._)`${r} !== true`,()=>{t===true?e.assign(r,true):(e.assign(r,(0, oe._)`${r} || {}`),$s(e,r,t));}),mergeValues:(e,t)=>e===true?true:{...e,...t},resultToName:Ga}),items:Ma({mergeNames:(e,t,r)=>e.if((0, oe._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0, oe._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0, oe._)`${r} !== true`,()=>e.assign(r,t===true?true:(0, oe._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===true?true:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function Ga(e,t){if(t===true)return e.var("props",true);let r=e.var("props",(0, oe._)`{}`);return t!==void 0&&$s(e,r,t),r}H.evaluatedPropsToName=Ga;function $s(e,t,r){Object.keys(r).forEach(n=>e.assign((0, oe._)`${t}${(0, oe.getProperty)(n)}`,true));}H.setEvaluated=$s;var La={};function yl(e,t){return e.scopeValue("func",{ref:t,code:La[t.code]||(La[t.code]=new cl._Code(t.code))})}H.useFunc=yl;var Rs;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str";})(Rs||(H.Type=Rs={}));function vl(e,t,r){if(e instanceof oe.Name){let n=t===Rs.Num;return r?n?(0, oe._)`"[" + ${e} + "]"`:(0, oe._)`"['" + ${e} + "']"`:n?(0, oe._)`"/" + ${e}`:(0, oe._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0, oe.getProperty)(e).toString():"/"+Cs(e)}H.getErrorPath=vl;function Ua(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===true)throw new Error(t);e.self.logger.warn(t);}}H.checkStrictMode=Ua;});var dt=T(Es=>{Object.defineProperty(Es,"__esModule",{value:true});var we=z(),Sl={data:new we.Name("data"),valCxt:new we.Name("valCxt"),instancePath:new we.Name("instancePath"),parentData:new we.Name("parentData"),parentDataProperty:new we.Name("parentDataProperty"),rootData:new we.Name("rootData"),dynamicAnchors:new we.Name("dynamicAnchors"),vErrors:new we.Name("vErrors"),errors:new we.Name("errors"),this:new we.Name("this"),self:new we.Name("self"),scope:new we.Name("scope"),json:new we.Name("json"),jsonPos:new we.Name("jsonPos"),jsonLen:new we.Name("jsonLen"),jsonPart:new we.Name("jsonPart")};Es.default=Sl;});var vr=T(be=>{Object.defineProperty(be,"__esModule",{value:true});be.extendErrors=be.resetErrorsCount=be.reportExtraError=be.reportError=be.keyword$DataError=be.keywordError=void 0;var Z=z(),cn=Q(),Ee=dt();be.keywordError={message:({keyword:e})=>(0, Z.str)`must pass "${e}" keyword validation`};be.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0, Z.str)`"${e}" keyword must be ${t} ($data)`:(0, Z.str)`"${e}" keyword is invalid ($data)`};function kl(e,t=be.keywordError,r,n){let{it:s}=e,{gen:o,compositeRule:a,allErrors:i}=s,c=Ha(e,t,r);n??(a||i)?Ja(o,c):za(s,(0, Z._)`[${c}]`);}be.reportError=kl;function wl(e,t=be.keywordError,r){let{it:n}=e,{gen:s,compositeRule:o,allErrors:a}=n,i=Ha(e,t,r);Ja(s,i),o||a||za(n,Ee.default.vErrors);}be.reportExtraError=wl;function bl(e,t){e.assign(Ee.default.errors,t),e.if((0, Z._)`${Ee.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0, Z._)`${Ee.default.vErrors}.length`,t),()=>e.assign(Ee.default.vErrors,null)));}be.resetErrorsCount=bl;function _l({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,Ee.default.errors,i=>{e.const(a,(0, Z._)`${Ee.default.vErrors}[${i}]`),e.if((0, Z._)`${a}.instancePath === undefined`,()=>e.assign((0, Z._)`${a}.instancePath`,(0, Z.strConcat)(Ee.default.instancePath,o.errorPath))),e.assign((0, Z._)`${a}.schemaPath`,(0, Z.str)`${o.errSchemaPath}/${t}`),o.opts.verbose&&(e.assign((0, Z._)`${a}.schema`,r),e.assign((0, Z._)`${a}.data`,n));});}be.extendErrors=_l;function Ja(e,t){let r=e.const("err",t);e.if((0, Z._)`${Ee.default.vErrors} === null`,()=>e.assign(Ee.default.vErrors,(0, Z._)`[${r}]`),(0, Z._)`${Ee.default.vErrors}.push(${r})`),e.code((0, Z._)`${Ee.default.errors}++`);}function za(e,t){let{gen:r,validateName:n,schemaEnv:s}=e;s.$async?r.throw((0, Z._)`new ${e.ValidationError}(${t})`):(r.assign((0, Z._)`${n}.errors`,t),r.return(false));}var Ft={keyword:new Z.Name("keyword"),schemaPath:new Z.Name("schemaPath"),params:new Z.Name("params"),propertyName:new Z.Name("propertyName"),message:new Z.Name("message"),schema:new Z.Name("schema"),parentSchema:new Z.Name("parentSchema")};function Ha(e,t,r){let{createErrors:n}=e.it;return n===false?(0, Z._)`{}`:Rl(e,t,r)}function Rl(e,t,r={}){let{gen:n,it:s}=e,o=[Cl(s,r),$l(e,r)];return El(e,t,o),n.object(...o)}function Cl({errorPath:e},{instancePath:t}){let r=t?(0, Z.str)`${e}${(0, cn.getErrorPath)(t,cn.Type.Str)}`:e;return [Ee.default.instancePath,(0, Z.strConcat)(Ee.default.instancePath,r)]}function $l({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let s=n?t:(0, Z.str)`${t}/${e}`;return r&&(s=(0, Z.str)`${s}${(0, cn.getErrorPath)(r,cn.Type.Str)}`),[Ft.schemaPath,s]}function El(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([Ft.keyword,s],[Ft.params,typeof t=="function"?t(e):t||(0, Z._)`{}`]),c.messages&&n.push([Ft.message,typeof r=="function"?r(e):r]),c.verbose&&n.push([Ft.schema,a],[Ft.parentSchema,(0, Z._)`${d}${l}`],[Ee.default.data,o]),u&&n.push([Ft.propertyName,u]);}});var Ya=T(Yt=>{Object.defineProperty(Yt,"__esModule",{value:true});Yt.boolOrEmptySchema=Yt.topBoolOrEmptySchema=void 0;var xl=vr(),Al=z(),Tl=dt(),Il={message:"boolean schema is false"};function jl(e){let{gen:t,schema:r,validateName:n}=e;r===false?Wa(e,false):typeof r=="object"&&r.$async===true?t.return(Tl.default.data):(t.assign((0, Al._)`${n}.errors`,null),t.return(true));}Yt.topBoolOrEmptySchema=jl;function Pl(e,t){let{gen:r,schema:n}=e;n===false?(r.var(t,false),Wa(e)):r.var(t,true);}Yt.boolOrEmptySchema=Pl;function Wa(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, xl.reportError)(s,Il,void 0,t);}});var xs=T(Xt=>{Object.defineProperty(Xt,"__esModule",{value:true});Xt.getRules=Xt.isJSONType=void 0;var Ol=["string","number","integer","boolean","null","object","array"],Nl=new Set(Ol);function ql(e){return typeof e=="string"&&Nl.has(e)}Xt.isJSONType=ql;function Fl(){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:{}}}Xt.getRules=Fl;});var As=T(vt=>{Object.defineProperty(vt,"__esModule",{value:true});vt.shouldUseRule=vt.shouldUseGroup=vt.schemaHasRulesForType=void 0;function Dl({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==true&&Xa(e,n)}vt.schemaHasRulesForType=Dl;function Xa(e,t){return t.rules.some(r=>Qa(e,r))}vt.shouldUseGroup=Xa;function Qa(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))}vt.shouldUseRule=Qa;});var Sr=T(_e=>{Object.defineProperty(_e,"__esModule",{value:true});_e.reportTypeError=_e.checkDataTypes=_e.checkDataType=_e.coerceAndCheckDataType=_e.getJSONTypes=_e.getSchemaTypes=_e.DataType=void 0;var Ml=xs(),Ll=As(),Vl=vr(),K=z(),Za=Q(),Qt;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong";})(Qt||(_e.DataType=Qt={}));function Bl(e){let t=ei(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}_e.getSchemaTypes=Bl;function ei(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(Ml.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}_e.getJSONTypes=ei;function Kl(e,t){let{gen:r,data:n,opts:s}=e,o=Gl(t,s.coerceTypes),a=t.length>0&&!(o.length===0&&t.length===1&&(0, Ll.schemaHasRulesForType)(e,t[0]));if(a){let i=Is(t,n,s.strictNumbers,Qt.Wrong);r.if(i,()=>{o.length?Ul(e,t,o):js(e);});}return a}_e.coerceAndCheckDataType=Kl;var ti=new Set(["string","number","integer","boolean","null"]);function Gl(e,t){return t?e.filter(r=>ti.has(r)||t==="array"&&r==="array"):[]}function Ul(e,t,r){let{gen:n,data:s,opts:o}=e,a=n.let("dataType",(0, K._)`typeof ${s}`),i=n.let("coerced",(0, K._)`undefined`);o.coerceTypes==="array"&&n.if((0, K._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0, K._)`${s}[0]`).assign(a,(0, K._)`typeof ${s}`).if(Is(t,s,o.strictNumbers),()=>n.assign(i,s))),n.if((0, K._)`${i} !== undefined`);for(let u of r)(ti.has(u)||u==="array"&&o.coerceTypes==="array")&&c(u);n.else(),js(e),n.endIf(),n.if((0, K._)`${i} !== undefined`,()=>{n.assign(s,i),Jl(e,i);});function c(u){switch(u){case "string":n.elseIf((0, K._)`${a} == "number" || ${a} == "boolean"`).assign(i,(0, K._)`"" + ${s}`).elseIf((0, K._)`${s} === null`).assign(i,(0, K._)`""`);return;case "number":n.elseIf((0, K._)`${a} == "boolean" || ${s} === null
|
|
3
3
|
|| (${a} == "string" && ${s} && ${s} == +${s})`).assign(i,(0, K._)`+${s}`);return;case "integer":n.elseIf((0, K._)`${a} === "boolean" || ${s} === null
|
|
4
4
|
|| (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(i,(0, K._)`+${s}`);return;case "boolean":n.elseIf((0, K._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(i,false).elseIf((0, K._)`${s} === "true" || ${s} === 1`).assign(i,true);return;case "null":n.elseIf((0, K._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(i,null);return;case "array":n.elseIf((0, K._)`${a} === "string" || ${a} === "number"
|
|
5
|
-
|| ${a} === "boolean" || ${s} === null`).assign(i,(0, K._)`[${s}]`);}}}function Kl({gen:e,parentData:t,parentDataProperty:r},n){e.if((0, K._)`${t} !== undefined`,()=>e.assign((0, K._)`${t}[${r}]`,n));}function As(e,t,r,n=Yt.Correct){let s=n===Yt.Correct?K.operators.EQ:K.operators.NEQ,o;switch(e){case "null":return (0, K._)`${t} ${s} null`;case "array":o=(0, K._)`Array.isArray(${t})`;break;case "object":o=(0, K._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case "integer":o=a((0, K._)`!(${t} % 1) && !isNaN(${t})`);break;case "number":o=a();break;default:return (0, K._)`typeof ${t} ${s} ${e}`}return n===Yt.Correct?o:(0, K.not)(o);function a(i=K.nil){return (0, K.and)((0, K._)`typeof ${t} == "number"`,i,r?(0, K._)`isFinite(${t})`:K.nil)}}Se.checkDataType=As;function Ts(e,t,r,n){if(e.length===1)return As(e[0],t,r,n);let s,o=(0, Qa.toHash)(e);if(o.array&&o.object){let a=(0, K._)`typeof ${t} != "object"`;s=o.null?a:(0, K._)`!${t} || ${a}`,delete o.null,delete o.array,delete o.object;}else s=K.nil;o.number&&delete o.integer;for(let a in o)s=(0, K.and)(s,As(a,t,r,n));return s}Se.checkDataTypes=Ts;var Gl={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0, K._)`{type: ${e}}`:(0, K._)`{type: ${t}}`};function Is(e){let t=Ul(e);(0, Dl.reportError)(t,Gl);}Se.reportTypeError=Is;function Ul(e){let{gen:t,data:r,schema:n}=e,s=(0, Qa.schemaRefOrVal)(e,n,"type");return {gen:t,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:e}}});var ri=T(un=>{Object.defineProperty(un,"__esModule",{value:true});un.assignDefaults=void 0;var Xt=U(),Jl=Q();function zl(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let s in r)ti(e,s,r[s].default);else t==="array"&&Array.isArray(n)&&n.forEach((s,o)=>ti(e,o,s.default));}un.assignDefaults=zl;function ti(e,t,r){let{gen:n,compositeRule:s,data:o,opts:a}=e;if(r===void 0)return;let i=(0, Xt._)`${o}${(0, Xt.getProperty)(t)}`;if(s){(0, Jl.checkStrictMode)(e,`default is ignored for: ${i}`);return}let c=(0, Xt._)`${i} === undefined`;a.useDefaults==="empty"&&(c=(0, Xt._)`${c} || ${i} === null || ${i} === ""`),n.if(c,(0, Xt._)`${i} = ${(0, Xt.stringify)(r)}`);}});var Le=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 ie=U(),Ps=Q(),gt=ot(),Hl=Q();function Wl(e,t){let{gen:r,data:n,it:s}=e;r.if(Os(r,n,t,s.opts.ownProperties),()=>{e.setParams({missingProperty:(0, ie._)`${t}`},true),e.error();});}ne.checkReportMissingProp=Wl;function Yl({gen:e,data:t,it:{opts:r}},n,s){return (0, ie.or)(...n.map(o=>(0, ie.and)(Os(e,t,o,r.ownProperties),(0, ie._)`${s} = ${o}`)))}ne.checkMissingProp=Yl;function Xl(e,t){e.setParams({missingProperty:t},true),e.error();}ne.reportMissingProp=Xl;function ni(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0, ie._)`Object.prototype.hasOwnProperty`})}ne.hasPropFunc=ni;function js(e,t,r){return (0, ie._)`${ni(e)}.call(${t}, ${r})`}ne.isOwnProperty=js;function Ql(e,t,r,n){let s=(0, ie._)`${t}${(0, ie.getProperty)(r)} !== undefined`;return n?(0, ie._)`${s} && ${js(e,t,r)}`:s}ne.propertyInData=Ql;function Os(e,t,r,n){let s=(0, ie._)`${t}${(0, ie.getProperty)(r)} === undefined`;return n?(0, ie.or)(s,(0, ie.not)(js(e,t,r))):s}ne.noPropertyInData=Os;function si(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}ne.allSchemaProperties=si;function Zl(e,t){return si(t).filter(r=>!(0, Ps.alwaysValidSchema)(e,t[r]))}ne.schemaProperties=Zl;function ef({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:o},it:a},i,c,u){let d=u?(0, ie._)`${e}, ${t}, ${n}${s}`:t,l=[[gt.default.instancePath,(0, ie.strConcat)(gt.default.instancePath,o)],[gt.default.parentData,a.parentData],[gt.default.parentDataProperty,a.parentDataProperty],[gt.default.rootData,gt.default.rootData]];a.opts.dynamicRef&&l.push([gt.default.dynamicAnchors,gt.default.dynamicAnchors]);let m=(0, ie._)`${d}, ${r.object(...l)}`;return c!==ie.nil?(0, ie._)`${i}.call(${c}, ${m})`:(0, ie._)`${i}(${m})`}ne.callValidateCode=ef;var tf=(0, ie._)`new RegExp`;function rf({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, ie._)`${s.code==="new RegExp"?tf:(0, Hl.useFunc)(e,s)}(${r}, ${n})`})}ne.usePattern=rf;function nf(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, ie._)`${r}.length`);t.forRange("i",0,c,u=>{e.subschema({keyword:n,dataProp:u,dataPropType:Ps.Type.Num},o),t.if((0, ie.not)(o),i);});}}ne.validateArray=nf;function sf(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, Ps.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, ie._)`${a} || ${i}`),e.mergeValidEvaluated(d,i)||t.if((0, ie.not)(a));})),e.result(a,()=>e.reset(),()=>e.error(true));}ne.validateUnion=sf;});var ii=T(Xe=>{Object.defineProperty(Xe,"__esModule",{value:true});Xe.validateKeywordUsage=Xe.validSchemaType=Xe.funcKeywordCode=Xe.macroKeywordCode=void 0;var Re=U(),Ot=ot(),of=Le(),af=hr();function uf(e,t){let{gen:r,keyword:n,schema:s,parentSchema:o,it:a}=e,i=t.macro.call(a.self,s,o,a),c=ai(r,n,i);a.opts.validateSchema!==false&&a.self.validateSchema(i,true);let u=r.name("valid");e.subschema({schema:i,schemaPath:Re.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:true},u),e.pass(u,()=>e.error(true));}Xe.macroKeywordCode=uf;function cf(e,t){var r;let{gen:n,keyword:s,schema:o,parentSchema:a,$data:i,it:c}=e;lf(c,t);let u=!i&&t.compile?t.compile.call(c.self,o,a,c):t.validate,d=ai(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&&oi(e),S(()=>e.error());else {let b=t.async?h():f();t.modifying&&oi(e),S(()=>df(e,b));}}function h(){let b=n.let("ruleErrs",null);return n.try(()=>p((0, Re._)`await `),j=>n.assign(l,false).if((0, Re._)`${j} instanceof ${c.ValidationError}`,()=>n.assign(b,(0, Re._)`${j}.errors`),()=>n.throw(j))),b}function f(){let b=(0, Re._)`${d}.errors`;return n.assign(b,null),p(Re.nil),b}function p(b=t.async?(0, Re._)`await `:Re.nil){let j=c.opts.passContext?Ot.default.this:Ot.default.self,w=!("compile"in t&&!i||t.schema===false);n.assign(l,(0, Re._)`${b}${(0, of.callValidateCode)(e,d,j,w)}`,t.modifying);}function S(b){var j;n.if((0, Re.not)((j=t.valid)!==null&&j!==void 0?j:l),b);}}Xe.funcKeywordCode=cf;function oi(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0, Re._)`${n.parentData}[${n.parentDataProperty}]`));}function df(e,t){let{gen:r}=e;r.if((0, Re._)`Array.isArray(${t})`,()=>{r.assign(Ot.default.vErrors,(0, Re._)`${Ot.default.vErrors} === null ? ${t} : ${Ot.default.vErrors}.concat(${t})`).assign(Ot.default.errors,(0, Re._)`${Ot.default.vErrors}.length`),(0, af.extendErrors)(e);},()=>e.error());}function lf({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function ai(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, Re.stringify)(r)})}function ff(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")}Xe.validSchemaType=ff;function pf({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)}}Xe.validateKeywordUsage=pf;});var ci=T(ht=>{Object.defineProperty(ht,"__esModule",{value:true});ht.extendSubschemaMode=ht.extendSubschemaData=ht.getSubschema=void 0;var Qe=U(),ui=Q();function mf(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, Qe._)`${e.schemaPath}${(0, Qe.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:i[r],schemaPath:(0, Qe._)`${e.schemaPath}${(0, Qe.getProperty)(t)}${(0, Qe.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0, ui.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')}ht.getSubschema=mf;function gf(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, Qe._)`${t.data}${(0, Qe.getProperty)(r)}`,true);c(m),e.errorPath=(0, Qe.str)`${u}${(0, ui.getErrorPath)(r,n,l.jsPropertySyntax)}`,e.parentDataProperty=(0, Qe._)`${r}`,e.dataPathArr=[...d,e.parentDataProperty];}if(s!==void 0){let u=s instanceof Qe.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];}}ht.extendSubschemaData=gf;function hf(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;}ht.extendSubschemaMode=hf;});var Ns=T((pv,di)=>{di.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 fi=T((mv,li)=>{var yt=li.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(){};cn(t,n,s,e,"",e);};yt.keywords={additionalItems:true,items:true,contains:true,additionalProperties:true,propertyNames:true,not:true,if:true,then:true,else:true};yt.arrayKeywords={items:true,allOf:true,anyOf:true,oneOf:true};yt.propsKeywords={$defs:true,definitions:true,properties:true,patternProperties:true,dependencies:true};yt.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 cn(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 yt.arrayKeywords)for(var m=0;m<l.length;m++)cn(e,t,r,l[m],s+"/"+d+"/"+m,o,s,d,n,m);}else if(d in yt.propsKeywords){if(l&&typeof l=="object")for(var h in l)cn(e,t,r,l[h],s+"/"+d+"/"+yf(h),o,s,d,n,h);}else (d in yt.keywords||e.allKeys&&!(d in yt.skipKeywords))&&cn(e,t,r,l,s+"/"+d,o,s,d,n);}r(n,s,o,a,i,c,u);}}function yf(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var vr=T(Ie=>{Object.defineProperty(Ie,"__esModule",{value:true});Ie.getSchemaRefs=Ie.resolveUrl=Ie.normalizeId=Ie._getFullPath=Ie.getFullPath=Ie.inlineRef=void 0;var vf=Q(),Sf=Ns(),kf=fi(),wf=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function bf(e,t=true){return typeof e=="boolean"?true:t===true?!qs(e):t?pi(e)<=t:false}Ie.inlineRef=bf;var _f=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function qs(e){for(let t in e){if(_f.has(t))return true;let r=e[t];if(Array.isArray(r)&&r.some(qs)||typeof r=="object"&&qs(r))return true}return false}function pi(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!wf.has(r)&&(typeof e[r]=="object"&&(0, vf.eachItem)(e[r],n=>t+=pi(n)),t===1/0))return 1/0}return t}function mi(e,t="",r){r!==false&&(t=Qt(t));let n=e.parse(t);return gi(e,n)}Ie.getFullPath=mi;function gi(e,t){return e.serialize(t).split("#")[0]+"#"}Ie._getFullPath=gi;var Rf=/#\/?$/;function Qt(e){return e?e.replace(Rf,""):""}Ie.normalizeId=Qt;function Cf(e,t,r){return r=Qt(r),e.resolve(t,r)}Ie.resolveUrl=Cf;var $f=/^[a-z_][-a-z0-9._]*$/i;function Ef(e,t){if(typeof e=="boolean")return {};let{schemaId:r,uriResolver:n}=this.opts,s=Qt(e[r]||t),o={"":s},a=mi(n,s,false),i={},c=new Set;return kf(e,{allKeys:true},(l,m,h,f)=>{if(f===void 0)return;let p=a+m,S=o[f];typeof l[r]=="string"&&(S=b.call(this,l[r])),j.call(this,l.$anchor),j.call(this,l.$dynamicAnchor),o[m]=S;function b(w){let E=this.opts.uriResolver.resolve;if(w=Qt(S?E(S,w):w),c.has(w))throw d(w);c.add(w);let y=this.refs[w];return typeof y=="string"&&(y=this.refs[y]),typeof y=="object"?u(l,y.schema,w):w!==Qt(p)&&(w[0]==="#"?(u(l,i[w],w),i[w]=l):this.refs[w]=p),w}function j(w){if(typeof w=="string"){if(!$f.test(w))throw new Error(`invalid anchor "${w}"`);b.call(this,`#${w}`);}}}),i;function u(l,m,h){if(m!==void 0&&!Sf(l,m))throw d(h)}function d(l){return new Error(`reference "${l}" resolves to more than one schema`)}}Ie.getSchemaRefs=Ef;});var wr=T(vt=>{Object.defineProperty(vt,"__esModule",{value:true});vt.getData=vt.KeywordCxt=vt.validateFunctionCode=void 0;var ki=Wa(),hi=yr(),Ds=xs(),dn=yr(),xf=ri(),kr=ii(),Fs=ci(),O=U(),V=ot(),Af=vr(),at=Q(),Sr=hr();function Tf(e){if(_i(e)&&(Ri(e),bi(e))){jf(e);return}wi(e,()=>(0, ki.topBoolOrEmptySchema)(e));}vt.validateFunctionCode=Tf;function wi({gen:e,validateName:t,schema:r,schemaEnv:n,opts:s},o){s.code.es5?e.func(t,(0, O._)`${V.default.data}, ${V.default.valCxt}`,n.$async,()=>{e.code((0, O._)`"use strict"; ${yi(r,s)}`),Pf(e,s),e.code(o);}):e.func(t,(0, O._)`${V.default.data}, ${If(s)}`,n.$async,()=>e.code(yi(r,s)).code(o));}function If(e){return (0, O._)`{${V.default.instancePath}="", ${V.default.parentData}, ${V.default.parentDataProperty}, ${V.default.rootData}=${V.default.data}${e.dynamicRef?(0, O._)`, ${V.default.dynamicAnchors}={}`:O.nil}}={}`}function Pf(e,t){e.if(V.default.valCxt,()=>{e.var(V.default.instancePath,(0, O._)`${V.default.valCxt}.${V.default.instancePath}`),e.var(V.default.parentData,(0, O._)`${V.default.valCxt}.${V.default.parentData}`),e.var(V.default.parentDataProperty,(0, O._)`${V.default.valCxt}.${V.default.parentDataProperty}`),e.var(V.default.rootData,(0, O._)`${V.default.valCxt}.${V.default.rootData}`),t.dynamicRef&&e.var(V.default.dynamicAnchors,(0, O._)`${V.default.valCxt}.${V.default.dynamicAnchors}`);},()=>{e.var(V.default.instancePath,(0, O._)`""`),e.var(V.default.parentData,(0, O._)`undefined`),e.var(V.default.parentDataProperty,(0, O._)`undefined`),e.var(V.default.rootData,V.default.data),t.dynamicRef&&e.var(V.default.dynamicAnchors,(0, O._)`{}`);});}function jf(e){let{schema:t,opts:r,gen:n}=e;wi(e,()=>{r.$comment&&t.$comment&&$i(e),Df(e),n.let(V.default.vErrors,null),n.let(V.default.errors,0),r.unevaluated&&Of(e),Ci(e),Vf(e);});}function Of(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0, O._)`${r}.evaluated`),t.if((0, O._)`${e.evaluated}.dynamicProps`,()=>t.assign((0, O._)`${e.evaluated}.props`,(0, O._)`undefined`)),t.if((0, O._)`${e.evaluated}.dynamicItems`,()=>t.assign((0, O._)`${e.evaluated}.items`,(0, O._)`undefined`));}function yi(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0, O._)`/*# sourceURL=${r} */`:O.nil}function Nf(e,t){if(_i(e)&&(Ri(e),bi(e))){qf(e,t);return}(0, ki.boolOrEmptySchema)(e,t);}function bi({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 _i(e){return typeof e.schema!="boolean"}function qf(e,t){let{schema:r,gen:n,opts:s}=e;s.$comment&&r.$comment&&$i(e),Mf(e),Lf(e);let o=n.const("_errs",V.default.errors);Ci(e,o),n.var(t,(0, O._)`${o} === ${V.default.errors}`);}function Ri(e){(0, at.checkUnknownRules)(e),Ff(e);}function Ci(e,t){if(e.opts.jtd)return vi(e,[],false,t);let r=(0, hi.getSchemaTypes)(e.schema),n=(0, hi.coerceAndCheckDataType)(e,r);vi(e,r,!n,t);}function Ff(e){let{schema:t,errSchemaPath:r,opts:n,self:s}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0, at.schemaHasRulesButRef)(t,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`);}function Df(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0, at.checkStrictMode)(e,"default is ignored in the schema root");}function Mf(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0, Af.resolveUrl)(e.opts.uriResolver,e.baseId,t));}function Lf(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function $i({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:s}){let o=r.$comment;if(s.$comment===true)e.code((0, O._)`${V.default.self}.logger.log(${o})`);else if(typeof s.$comment=="function"){let a=(0, O.str)`${n}/$comment`,i=e.scopeValue("root",{ref:t.root});e.code((0, O._)`${V.default.self}.opts.$comment(${o}, ${a}, ${i}.schema)`);}}function Vf(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:s,opts:o}=e;r.$async?t.if((0, O._)`${V.default.errors} === 0`,()=>t.return(V.default.data),()=>t.throw((0, O._)`new ${s}(${V.default.vErrors})`)):(t.assign((0, O._)`${n}.errors`,V.default.vErrors),o.unevaluated&&Bf(e),t.return((0, O._)`${V.default.errors} === 0`));}function Bf({gen:e,evaluated:t,props:r,items:n}){r instanceof O.Name&&e.assign((0, O._)`${t}.props`,r),n instanceof O.Name&&e.assign((0, O._)`${t}.items`,n);}function vi(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, at.schemaHasRulesButRef)(o,d))){s.block(()=>xi(e,"$ref",d.all.$ref.definition));return}c.jtd||Kf(e,t),s.block(()=>{for(let m of d.rules)l(m);l(d.post);});function l(m){(0, Ds.shouldUseGroup)(o,m)&&(m.type?(s.if((0, dn.checkDataType)(m.type,a,c.strictNumbers)),Si(e,m),t.length===1&&t[0]===m.type&&r&&(s.else(),(0, dn.reportTypeError)(e)),s.endIf()):Si(e,m),i||s.if((0, O._)`${V.default.errors} === ${n||0}`));}}function Si(e,t){let{gen:r,schema:n,opts:{useDefaults:s}}=e;s&&(0, xf.assignDefaults)(e,t.type),r.block(()=>{for(let o of t.rules)(0, Ds.shouldUseRule)(n,o)&&xi(e,o.keyword,o.definition,t.type);});}function Kf(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(Gf(e,t),e.opts.allowUnionTypes||Uf(e,t),Jf(e,e.dataTypes));}function Gf(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{Ei(e.dataTypes,r)||Ms(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`);}),Hf(e,t);}}function Uf(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&Ms(e,"use allowUnionTypes to allow union type keyword");}function Jf(e,t){let r=e.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0, Ds.shouldUseRule)(e.schema,s)){let{type:o}=s.definition;o.length&&!o.some(a=>zf(t,a))&&Ms(e,`missing type "${o.join(",")}" for keyword "${n}"`);}}}function zf(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function Ei(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function Hf(e,t){let r=[];for(let n of e.dataTypes)Ei(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r;}function Ms(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0, at.checkStrictMode)(e,t,e.opts.strictTypes);}var ln=class{constructor(t,r,n){if((0, kr.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, at.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",Ai(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0, kr.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",V.default.errors));}result(t,r,n){this.failResult((0, O.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, O.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, O._)`${r} !== undefined && (${(0, O.or)(this.invalid$data(),t)})`);}error(t,r,n){if(r){this.setParams(r),this._error(t,n),this.setParams({});return}this._error(t,n);}_error(t,r){(t?Sr.reportExtraError:Sr.reportError)(this,this.def.error,r);}$dataError(){(0, Sr.reportError)(this,this.def.$dataError||Sr.keyword$DataError);}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0, Sr.resetErrorsCount)(this.gen,this.errsCount);}ok(t){this.allErrors||this.gen.if(t);}setParams(t,r){r?Object.assign(this.params,t):this.params=t;}block$data(t,r,n=O.nil){this.gen.block(()=>{this.check$data(t,n),r();});}check$data(t=O.nil,r=O.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:o,def:a}=this;n.if((0, O.or)((0, O._)`${s} === undefined`,r)),t!==O.nil&&n.assign(t,true),(o.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==O.nil&&n.assign(t,false)),n.else();}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:s,it:o}=this;return (0, O.or)(a(),i());function a(){if(n.length){if(!(r instanceof O.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return (0, O._)`${(0, dn.checkDataTypes)(c,r,o.opts.strictNumbers,dn.DataType.Wrong)}`}return O.nil}function i(){if(s.validateSchema){let c=t.scopeValue("validate$data",{ref:s.validateSchema});return (0, O._)`!${c}(${r})`}return O.nil}}subschema(t,r){let n=(0, Fs.getSubschema)(this.it,t);(0, Fs.extendSubschemaData)(n,this.it,t),(0, Fs.extendSubschemaMode)(n,t);let s={...this.it,...n,items:void 0,props:void 0};return Nf(s,r),s}mergeEvaluated(t,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==true&&t.props!==void 0&&(n.props=at.mergeEvaluated.props(s,t.props,n.props,r)),n.items!==true&&t.items!==void 0&&(n.items=at.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,O.Name)),true}};vt.KeywordCxt=ln;function xi(e,t,r,n){let s=new ln(e,r,t);"code"in r?r.code(s,n):s.$data&&r.validate?(0, kr.funcKeywordCode)(s,r):"macro"in r?(0, kr.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0, kr.funcKeywordCode)(s,r);}var Wf=/^\/(?:[^~]|~0|~1)*$/,Yf=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function Ai(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let s,o;if(e==="")return V.default.rootData;if(e[0]==="/"){if(!Wf.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);s=e,o=V.default.rootData;}else {let u=Yf.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, O._)`${o}${(0, O.getProperty)((0, at.unescapeJsonPointer)(u))}`,a=(0, O._)`${a} && ${o}`);return a;function c(u,d){return `Cannot access ${u} ${d} levels up, current level is ${t}`}}vt.getData=Ai;});var fn=T(Vs=>{Object.defineProperty(Vs,"__esModule",{value:true});var Ls=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=true;}};Vs.default=Ls;});var br=T(Gs=>{Object.defineProperty(Gs,"__esModule",{value:true});var Bs=vr(),Ks=class extends Error{constructor(t,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0, Bs.resolveUrl)(t,r,n),this.missingSchema=(0, Bs.normalizeId)((0, Bs.getFullPath)(t,this.missingRef));}};Gs.default=Ks;});var mn=T(Ve=>{Object.defineProperty(Ve,"__esModule",{value:true});Ve.resolveSchema=Ve.getCompilingSchema=Ve.resolveRef=Ve.compileSchema=Ve.SchemaEnv=void 0;var He=U(),Xf=fn(),Nt=ot(),We=vr(),Ti=Q(),Qf=wr(),Zt=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, We.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={};}};Ve.SchemaEnv=Zt;function Js(e){let t=Ii.call(this,e);if(t)return t;let r=(0, We.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:o}=this.opts,a=new He.CodeGen(this.scope,{es5:n,lines:s,ownProperties:o}),i;e.$async&&(i=a.scopeValue("Error",{ref:Xf.default,code:(0, He._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");e.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:Nt.default.data,parentData:Nt.default.parentData,parentDataProperty:Nt.default.parentDataProperty,dataNames:[Nt.default.data],dataPathArr:[He.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===true?{ref:e.schema,code:(0, He.stringify)(e.schema)}:{ref:e.schema}),validateName:c,ValidationError:i,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:He.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0, He._)`""`,opts:this.opts,self:this},d;try{this._compilations.add(e),(0,Qf.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let l=a.toString();d=`${a.scopeRefs(Nt.default.scope)}return ${l}`,this.opts.code.process&&(d=this.opts.code.process(d,e));let h=new Function(`${Nt.default.self}`,`${Nt.default.scope}`,d)(this,this.scope.get());if(this.scope.value(c,{ref:h}),h.errors=null,h.schema=e.schema,h.schemaEnv=e,e.$async&&(h.$async=!0),this.opts.code.source===!0&&(h.source={validateName:c,validateCode:l,scopeValues:a._values}),this.opts.unevaluated){let{props:f,items:p}=u;h.evaluated={props:f instanceof He.Name?void 0:f,items:p instanceof He.Name?void 0:p,dynamicProps:f instanceof He.Name,dynamicItems:p instanceof He.Name},h.source&&(h.source.evaluated=(0,He.stringify)(h.evaluated));}return e.validate=h,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);}}Ve.compileSchema=Js;function Zf(e,t,r){var n;r=(0, We.resolveUrl)(this.opts.uriResolver,t,r);let s=e.refs[r];if(s)return s;let o=rp.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 Zt({schema:a,schemaId:i,root:e,baseId:t}));}if(o!==void 0)return e.refs[r]=ep.call(this,o)}Ve.resolveRef=Zf;function ep(e){return (0, We.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:Js.call(this,e)}function Ii(e){for(let t of this._compilations)if(tp(t,e))return t}Ve.getCompilingSchema=Ii;function tp(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function rp(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||pn.call(this,e,t)}function pn(e,t){let r=this.opts.uriResolver.parse(t),n=(0, We._getFullPath)(this.opts.uriResolver,r),s=(0, We.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===s)return Us.call(this,r,e);let o=(0, We.normalizeId)(n),a=this.refs[o]||this.schemas[o];if(typeof a=="string"){let i=pn.call(this,e,a);return typeof i?.schema!="object"?void 0:Us.call(this,r,i)}if(typeof a?.schema=="object"){if(a.validate||Js.call(this,a),o===(0, We.normalizeId)(t)){let{schema:i}=a,{schemaId:c}=this.opts,u=i[c];return u&&(s=(0, We.resolveUrl)(this.opts.uriResolver,s,u)),new Zt({schema:i,schemaId:c,root:e,baseId:s})}return Us.call(this,r,a)}}Ve.resolveSchema=pn;var np=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Us(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, Ti.unescapeFragment)(i)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!np.has(i)&&u&&(t=(0, We.resolveUrl)(this.opts.uriResolver,t,u));}let o;if(typeof r!="boolean"&&r.$ref&&!(0, Ti.schemaHasRulesButRef)(r,this.RULES)){let i=(0, We.resolveUrl)(this.opts.uriResolver,t,r.$ref);o=pn.call(this,n,i);}let{schemaId:a}=this.opts;if(o=o||new Zt({schema:r,schemaId:a,root:n,baseId:t}),o.schema!==o.root.schema)return o}});var Pi=T((kv,sp)=>{sp.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 Hs=T((wv,qi)=>{var op=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),Oi=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 zs(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 ap=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function ji(e){return e.length=0,true}function ip(e,t,r){if(e.length){let n=zs(e);if(n!=="")t.push(n);else return r.error=true,false;e.length=0;}return true}function up(e){let t=0,r={error:false,address:"",zone:""},n=[],s=[],o=false,a=false,i=ip;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=ji;}else {s.push(u);continue}}return s.length&&(i===ji?r.zone=s.join(""):a?n.push(s.join("")):n.push(zs(s))),r.address=n.join(""),r}function Ni(e){if(cp(e,":")<2)return {host:e,isIPV6:false};let t=up(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 cp(e,t){let r=0;for(let n=0;n<e.length;n++)e[n]===t&&r++;return r}function dp(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 lp(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 fp(e){let t=[];if(e.userinfo!==void 0&&(t.push(e.userinfo),t.push("@")),e.host!==void 0){let r=unescape(e.host);if(!Oi(r)){let n=Ni(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}qi.exports={nonSimpleDomain:ap,recomposeAuthority:fp,normalizeComponentEncoding:lp,removeDotSegments:dp,isIPv4:Oi,isUUID:op,normalizeIPv6:Ni,stringArrayToHexStripped:zs};});var Vi=T((bv,Li)=>{var{isUUID:pp}=Hs(),mp=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,gp=["http","https","ws","wss","urn","urn:uuid"];function hp(e){return gp.indexOf(e)!==-1}function Ws(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 Fi(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function Di(e){let t=String(e.scheme).toLowerCase()==="https";return (e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function yp(e){return e.secure=Ws(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function vp(e){if((e.port===(Ws(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 Sp(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(mp);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let s=`${n}:${t.nid||e.nid}`,o=Ys(s);e.path=void 0,o&&(e=o.parse(e,t));}else e.error=e.error||"URN can not be parsed.";return e}function kp(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=Ys(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 wp(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!pp(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function bp(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var Mi={scheme:"http",domainHost:true,parse:Fi,serialize:Di},_p={scheme:"https",domainHost:Mi.domainHost,parse:Fi,serialize:Di},gn={scheme:"ws",domainHost:true,parse:yp,serialize:vp},Rp={scheme:"wss",domainHost:gn.domainHost,parse:gn.parse,serialize:gn.serialize},Cp={scheme:"urn",parse:Sp,serialize:kp,skipNormalize:true},$p={scheme:"urn:uuid",parse:wp,serialize:bp,skipNormalize:true},hn={http:Mi,https:_p,ws:gn,wss:Rp,urn:Cp,"urn:uuid":$p};Object.setPrototypeOf(hn,null);function Ys(e){return e&&(hn[e]||hn[e.toLowerCase()])||void 0}Li.exports={wsIsSecure:Ws,SCHEMES:hn,isValidSchemeName:hp,getSchemeHandler:Ys};});var Gi=T((_v,vn)=>{var{normalizeIPv6:Ep,removeDotSegments:_r,recomposeAuthority:xp,normalizeComponentEncoding:yn,isIPv4:Ap,nonSimpleDomain:Tp}=Hs(),{SCHEMES:Ip,getSchemeHandler:Bi}=Vi();function Pp(e,t){return typeof e=="string"?e=Ze(it(e,t),t):typeof e=="object"&&(e=it(Ze(e,t),t)),e}function jp(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=Ki(it(e,n),it(t,n),n,true);return n.skipEscape=true,Ze(s,n)}function Ki(e,t,r,n){let s={};return n||(e=it(Ze(e,r),r),t=it(Ze(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(s.scheme=t.scheme,s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=_r(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=_r(t.path||""),s.query=t.query):(t.path?(t.path[0]==="/"?s.path=_r(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=_r(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 Op(e,t,r){return typeof e=="string"?(e=unescape(e),e=Ze(yn(it(e,r),true),{...r,skipEscape:true})):typeof e=="object"&&(e=Ze(yn(e,true),{...r,skipEscape:true})),typeof t=="string"?(t=unescape(t),t=Ze(yn(it(t,r),true),{...r,skipEscape:true})):typeof t=="object"&&(t=Ze(yn(t,true),{...r,skipEscape:true})),e.toLowerCase()===t.toLowerCase()}function Ze(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),s=[],o=Bi(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=xp(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=_r(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 Np=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function it(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(Np);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(Ap(n.host)===false){let c=Ep(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=Bi(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===false&&Tp(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 Xs={SCHEMES:Ip,normalize:Pp,resolve:jp,resolveComponent:Ki,equal:Op,serialize:Ze,parse:it};vn.exports=Xs;vn.exports.default=Xs;vn.exports.fastUri=Xs;});var Ji=T(Qs=>{Object.defineProperty(Qs,"__esModule",{value:true});var Ui=Gi();Ui.code='require("ajv/dist/runtime/uri").default';Qs.default=Ui;});var eu=T(ge=>{Object.defineProperty(ge,"__esModule",{value:true});ge.CodeGen=ge.Name=ge.nil=ge.stringify=ge.str=ge._=ge.KeywordCxt=void 0;var qp=wr();Object.defineProperty(ge,"KeywordCxt",{enumerable:true,get:function(){return qp.KeywordCxt}});var er=U();Object.defineProperty(ge,"_",{enumerable:true,get:function(){return er._}});Object.defineProperty(ge,"str",{enumerable:true,get:function(){return er.str}});Object.defineProperty(ge,"stringify",{enumerable:true,get:function(){return er.stringify}});Object.defineProperty(ge,"nil",{enumerable:true,get:function(){return er.nil}});Object.defineProperty(ge,"Name",{enumerable:true,get:function(){return er.Name}});Object.defineProperty(ge,"CodeGen",{enumerable:true,get:function(){return er.CodeGen}});var Fp=fn(),Xi=br(),Dp=Es(),Rr=mn(),Mp=U(),Cr=vr(),Sn=yr(),eo=Q(),zi=Pi(),Lp=Ji(),Qi=(e,t)=>new RegExp(e,t);Qi.code="new RegExp";var Vp=["removeAdditional","useDefaults","coerceTypes"],Bp=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),Kp={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."},Gp={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Hi=200;function Up(e){var t,r,n,s,o,a,i,c,u,d,l,m,h,f,p,S,b,j,w,E,y,v,k,R,$;let x=e.strict,P=(t=e.code)===null||t===void 0?void 0:t.optimize,D=P===true||P===void 0?1:P||0,q=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Qi,de=(s=e.uriResolver)!==null&&s!==void 0?s:Lp.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=(h=e.strictRequired)!==null&&h!==void 0?h:x)!==null&&f!==void 0?f:false,code:e.code?{...e.code,optimize:D,regExp:q}:{optimize:D,regExp:q},loopRequired:(p=e.loopRequired)!==null&&p!==void 0?p:Hi,loopEnum:(S=e.loopEnum)!==null&&S!==void 0?S:Hi,meta:(b=e.meta)!==null&&b!==void 0?b:true,messages:(j=e.messages)!==null&&j!==void 0?j:true,inlineRefs:(w=e.inlineRefs)!==null&&w!==void 0?w:true,schemaId:(E=e.schemaId)!==null&&E!==void 0?E:"$id",addUsedSchema:(y=e.addUsedSchema)!==null&&y!==void 0?y:true,validateSchema:(v=e.validateSchema)!==null&&v!==void 0?v:true,validateFormats:(k=e.validateFormats)!==null&&k!==void 0?k:true,unicodeRegExp:(R=e.unicodeRegExp)!==null&&R!==void 0?R:true,int32range:($=e.int32range)!==null&&$!==void 0?$:true,uriResolver:de}}var $r=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...Up(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new Mp.ValueScope({scope:{},prefixes:Bp,es5:r,lines:n}),this.logger=Xp(t.logger);let s=t.validateFormats;t.validateFormats=false,this.RULES=(0, Dp.getRules)(),Wi.call(this,Kp,t,"NOT SUPPORTED"),Wi.call(this,Gp,t,"DEPRECATED","warn"),this._metaOpts=Wp.call(this),t.formats&&zp.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&Hp.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),Jp.call(this),t.validateFormats=s;}_addVocabularies(){this.addKeyword("$async");}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,s=zi;n==="id"&&(s={...zi},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 Xi.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, Cr.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=Yi.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,s=new Rr.SchemaEnv({schema:{},schemaId:n});if(r=Rr.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=Yi.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, Cr.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let n;if(typeof t=="string")n=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof t=="object"&&r===void 0){if(r=t,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(Zp.call(this,n,r),!r)return (0, eo.eachItem)(n,o=>Zs.call(this,o)),this;tm.call(this,r);let s={...r,type:(0, Sn.getJSONTypes)(r.type),schemaType:(0, Sn.getJSONTypes)(r.schemaType)};return (0, eo.eachItem)(n,s.type.length===0?o=>Zs.call(this,o,s):o=>s.type.forEach(a=>Zs.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]=Zi(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, Cr.normalizeId)(a||n);let u=Cr.getSchemaRefs.call(this,t,n);return c=new Rr.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):Rr.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{Rr.compileSchema.call(this,t);}finally{this.opts=r;}}};$r.ValidationError=Fp.default;$r.MissingRefError=Xi.default;ge.default=$r;function Wi(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 Yi(e){return e=(0, Cr.normalizeId)(e),this.schemas[e]||this.refs[e]}function Jp(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t);}function zp(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t);}}function Hp(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 Wp(){let e={...this.opts};for(let t of Vp)delete e[t];return e}var Yp={log(){},warn(){},error(){}};function Xp(e){if(e===false)return Yp;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 Qp=/^[a-z_$][a-z0-9_$:-]*$/i;function Zp(e,t){let{RULES:r}=this;if((0, eo.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!Qp.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 Zs(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, Sn.getJSONTypes)(t.type),schemaType:(0, Sn.getJSONTypes)(t.schemaType)}};t.before?em.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 em(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 tm(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=Zi(t)),e.validateSchema=this.compile(t,true));}var rm={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Zi(e){return {anyOf:[e,rm]}}});var tu=T(to=>{Object.defineProperty(to,"__esModule",{value:true});var nm={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};to.default=nm;});var ou=T(qt=>{Object.defineProperty(qt,"__esModule",{value:true});qt.callRef=qt.getValidate=void 0;var sm=br(),ru=Le(),Pe=U(),tr=ot(),nu=mn(),kn=Q(),om={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=nu.resolveRef.call(c,u,s,r);if(d===void 0)throw new sm.default(n.opts.uriResolver,s,r);if(d instanceof nu.SchemaEnv)return m(d);return h(d);function l(){if(o===u)return wn(e,a,o,o.$async);let f=t.scopeValue("root",{ref:u});return wn(e,(0, Pe._)`${f}.validate`,u,u.$async)}function m(f){let p=su(e,f);wn(e,p,f,f.$async);}function h(f){let p=t.scopeValue("schema",i.code.source===true?{ref:f,code:(0, Pe.stringify)(f)}:{ref:f}),S=t.name("valid"),b=e.subschema({schema:f,dataTypes:[],schemaPath:Pe.nil,topSchemaRef:p,errSchemaPath:r},S);e.mergeEvaluated(b),e.ok(S);}}};function su(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0, Pe._)`${r.scopeValue("wrapper",{ref:t})}.validate`}qt.getValidate=su;function wn(e,t,r,n){let{gen:s,it:o}=e,{allErrors:a,schemaEnv:i,opts:c}=o,u=c.passContext?tr.default.this:Pe.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, Pe._)`await ${(0, ru.callValidateCode)(e,t,u)}`),h(t),a||s.assign(f,true);},p=>{s.if((0, Pe._)`!(${p} instanceof ${o.ValidationError})`,()=>s.throw(p)),m(p),a||s.assign(f,false);}),e.ok(f);}function l(){e.result((0, ru.callValidateCode)(e,t,u),()=>h(t),()=>m(t));}function m(f){let p=(0, Pe._)`${f}.errors`;s.assign(tr.default.vErrors,(0, Pe._)`${tr.default.vErrors} === null ? ${p} : ${tr.default.vErrors}.concat(${p})`),s.assign(tr.default.errors,(0, Pe._)`${tr.default.vErrors}.length`);}function h(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=kn.mergeEvaluated.props(s,S.props,o.props));else {let b=s.var("props",(0, Pe._)`${f}.evaluated.props`);o.props=kn.mergeEvaluated.props(s,b,o.props,Pe.Name);}if(o.items!==true)if(S&&!S.dynamicItems)S.items!==void 0&&(o.items=kn.mergeEvaluated.items(s,S.items,o.items));else {let b=s.var("items",(0, Pe._)`${f}.evaluated.items`);o.items=kn.mergeEvaluated.items(s,b,o.items,Pe.Name);}}}qt.callRef=wn;qt.default=om;});var au=T(ro=>{Object.defineProperty(ro,"__esModule",{value:true});var am=tu(),im=ou(),um=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",am.default,im.default];ro.default=um;});var iu=T(no=>{Object.defineProperty(no,"__esModule",{value:true});var bn=U(),St=bn.operators,_n={maximum:{okStr:"<=",ok:St.LTE,fail:St.GT},minimum:{okStr:">=",ok:St.GTE,fail:St.LT},exclusiveMaximum:{okStr:"<",ok:St.LT,fail:St.GTE},exclusiveMinimum:{okStr:">",ok:St.GT,fail:St.LTE}},cm={message:({keyword:e,schemaCode:t})=>(0, bn.str)`must be ${_n[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0, bn._)`{comparison: ${_n[e].okStr}, limit: ${t}}`},dm={keyword:Object.keys(_n),type:"number",schemaType:"number",$data:true,error:cm,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0, bn._)`${r} ${_n[t].fail} ${n} || isNaN(${r})`);}};no.default=dm;});var uu=T(so=>{Object.defineProperty(so,"__esModule",{value:true});var Er=U(),lm={message:({schemaCode:e})=>(0, Er.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0, Er._)`{multipleOf: ${e}}`},fm={keyword:"multipleOf",type:"number",schemaType:"number",$data:true,error:lm,code(e){let{gen:t,data:r,schemaCode:n,it:s}=e,o=s.opts.multipleOfPrecision,a=t.let("res"),i=o?(0, Er._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${o}`:(0, Er._)`${a} !== parseInt(${a})`;e.fail$data((0, Er._)`(${n} === 0 || (${a} = ${r}/${n}, ${i}))`);}};so.default=fm;});var du=T(oo=>{Object.defineProperty(oo,"__esModule",{value:true});function cu(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}oo.default=cu;cu.code='require("ajv/dist/runtime/ucs2length").default';});var lu=T(ao=>{Object.defineProperty(ao,"__esModule",{value:true});var Ft=U(),pm=Q(),mm=du(),gm={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return (0, Ft.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0, Ft._)`{limit: ${e}}`},hm={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:true,error:gm,code(e){let{keyword:t,data:r,schemaCode:n,it:s}=e,o=t==="maxLength"?Ft.operators.GT:Ft.operators.LT,a=s.opts.unicode===false?(0, Ft._)`${r}.length`:(0, Ft._)`${(0, pm.useFunc)(e.gen,mm.default)}(${r})`;e.fail$data((0, Ft._)`${a} ${o} ${n}`);}};ao.default=hm;});var fu=T(io=>{Object.defineProperty(io,"__esModule",{value:true});var ym=Le(),vm=Q(),rr=U(),Sm={message:({schemaCode:e})=>(0, rr.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0, rr._)`{pattern: ${e}}`},km={keyword:"pattern",type:"string",schemaType:"string",$data:true,error:Sm,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, rr._)`new RegExp`:(0, vm.useFunc)(t,c),d=t.let("valid");t.try(()=>t.assign(d,(0, rr._)`${u}(${o}, ${i}).test(${r})`),()=>t.assign(d,false)),e.fail$data((0, rr._)`!${d}`);}else {let c=(0, ym.usePattern)(e,s);e.fail$data((0, rr._)`!${c}.test(${r})`);}}};io.default=km;});var pu=T(uo=>{Object.defineProperty(uo,"__esModule",{value:true});var xr=U(),wm={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return (0, xr.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0, xr._)`{limit: ${e}}`},bm={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:true,error:wm,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxProperties"?xr.operators.GT:xr.operators.LT;e.fail$data((0, xr._)`Object.keys(${r}).length ${s} ${n}`);}};uo.default=bm;});var mu=T(co=>{Object.defineProperty(co,"__esModule",{value:true});var Ar=Le(),Tr=U(),_m=Q(),Rm={message:({params:{missingProperty:e}})=>(0, Tr.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0, Tr._)`{missingProperty: ${e}}`},Cm={keyword:"required",type:"object",schemaType:"array",$data:true,error:Rm,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 h=e.parentSchema.properties,{definedProperties:f}=e.it;for(let p of r)if(h?.[p]===void 0&&!f.has(p)){let S=a.schemaEnv.baseId+a.errSchemaPath,b=`required property "${p}" is not defined at "${S}" (strictRequired)`;(0, _m.checkStrictMode)(a,b,a.opts.strictRequired);}}function u(){if(c||o)e.block$data(Tr.nil,l);else for(let h of r)(0, Ar.checkReportMissingProp)(e,h);}function d(){let h=t.let("missing");if(c||o){let f=t.let("valid",true);e.block$data(f,()=>m(h,f)),e.ok(f);}else t.if((0, Ar.checkMissingProp)(e,r,h)),(0, Ar.reportMissingProp)(e,h),t.else();}function l(){t.forOf("prop",n,h=>{e.setParams({missingProperty:h}),t.if((0, Ar.noPropertyInData)(t,s,h,i.ownProperties),()=>e.error());});}function m(h,f){e.setParams({missingProperty:h}),t.forOf(h,n,()=>{t.assign(f,(0, Ar.propertyInData)(t,s,h,i.ownProperties)),t.if((0, Tr.not)(f),()=>{e.error(),t.break();});},Tr.nil);}}};co.default=Cm;});var gu=T(lo=>{Object.defineProperty(lo,"__esModule",{value:true});var Ir=U(),$m={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return (0, Ir.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0, Ir._)`{limit: ${e}}`},Em={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:true,error:$m,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxItems"?Ir.operators.GT:Ir.operators.LT;e.fail$data((0, Ir._)`${r}.length ${s} ${n}`);}};lo.default=Em;});var Rn=T(fo=>{Object.defineProperty(fo,"__esModule",{value:true});var hu=Ns();hu.code='require("ajv/dist/runtime/equal").default';fo.default=hu;});var yu=T(mo=>{Object.defineProperty(mo,"__esModule",{value:true});var po=yr(),he=U(),xm=Q(),Am=Rn(),Tm={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}}`},Im={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:true,error:Tm,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, po.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:h)(f,p));}function l(){return u.length>0&&!u.some(f=>f==="object"||f==="array")}function m(f,p){let S=t.name("item"),b=(0, po.checkDataTypes)(u,S,i.opts.strictNumbers,po.DataType.Wrong),j=t.const("indices",(0, he._)`{}`);t.for((0, he._)`;${f}--;`,()=>{t.let(S,(0, he._)`${r}[${f}]`),t.if(b,(0, he._)`continue`),u.length>1&&t.if((0, he._)`typeof ${S} == "string"`,(0, he._)`${S} += "_"`),t.if((0, he._)`typeof ${j}[${S}] == "number"`,()=>{t.assign(p,(0, he._)`${j}[${S}]`),e.error(),t.assign(c,false).break();}).code((0, he._)`${j}[${S}] = ${f}`);});}function h(f,p){let S=(0, xm.useFunc)(t,Am.default),b=t.name("outer");t.label(b).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(b);})));}}};mo.default=Im;});var vu=T(ho=>{Object.defineProperty(ho,"__esModule",{value:true});var go=U(),Pm=Q(),jm=Rn(),Om={message:"must be equal to constant",params:({schemaCode:e})=>(0, go._)`{allowedValue: ${e}}`},Nm={keyword:"const",$data:true,error:Om,code(e){let{gen:t,data:r,$data:n,schemaCode:s,schema:o}=e;n||o&&typeof o=="object"?e.fail$data((0, go._)`!${(0, Pm.useFunc)(t,jm.default)}(${r}, ${s})`):e.fail((0, go._)`${o} !== ${r}`);}};ho.default=Nm;});var Su=T(yo=>{Object.defineProperty(yo,"__esModule",{value:true});var Pr=U(),qm=Q(),Fm=Rn(),Dm={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0, Pr._)`{allowedValues: ${e}}`},Mm={keyword:"enum",schemaType:"array",$data:true,error:Dm,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, qm.useFunc)(t,Fm.default)),d;if(i||n)d=t.let("valid"),e.block$data(d,l);else {if(!Array.isArray(s))throw new Error("ajv implementation error");let h=t.const("vSchema",o);d=(0, Pr.or)(...s.map((f,p)=>m(h,p)));}e.pass(d);function l(){t.assign(d,false),t.forOf("v",o,h=>t.if((0, Pr._)`${u()}(${r}, ${h})`,()=>t.assign(d,true).break()));}function m(h,f){let p=s[f];return typeof p=="object"&&p!==null?(0, Pr._)`${u()}(${r}, ${h}[${f}])`:(0, Pr._)`${r} === ${p}`}}};yo.default=Mm;});var ku=T(vo=>{Object.defineProperty(vo,"__esModule",{value:true});var Lm=iu(),Vm=uu(),Bm=lu(),Km=fu(),Gm=pu(),Um=mu(),Jm=gu(),zm=yu(),Hm=vu(),Wm=Su(),Ym=[Lm.default,Vm.default,Bm.default,Km.default,Gm.default,Um.default,Jm.default,zm.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},Hm.default,Wm.default];vo.default=Ym;});var ko=T(jr=>{Object.defineProperty(jr,"__esModule",{value:true});jr.validateAdditionalItems=void 0;var Dt=U(),So=Q(),Xm={message:({params:{len:e}})=>(0, Dt.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0, Dt._)`{limit: ${e}}`},Qm={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:Xm,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0, So.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}wu(e,n);}};function wu(e,t){let{gen:r,schema:n,data:s,keyword:o,it:a}=e;a.items=true;let i=r.const("len",(0, Dt._)`${s}.length`);if(n===false)e.setParams({len:t.length}),e.pass((0, Dt._)`${i} <= ${t.length}`);else if(typeof n=="object"&&!(0, So.alwaysValidSchema)(a,n)){let u=r.var("valid",(0, Dt._)`${i} <= ${t.length}`);r.if((0, Dt.not)(u),()=>c(u)),e.ok(u);}function c(u){r.forRange("i",t.length,i,d=>{e.subschema({keyword:o,dataProp:d,dataPropType:So.Type.Num},u),a.allErrors||r.if((0, Dt.not)(u),()=>r.break());});}}jr.validateAdditionalItems=wu;jr.default=Qm;});var wo=T(Or=>{Object.defineProperty(Or,"__esModule",{value:true});Or.validateTuple=void 0;var bu=U(),Cn=Q(),Zm=Le(),eg={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return _u(e,"additionalItems",t);r.items=true,!(0, Cn.alwaysValidSchema)(r,t)&&e.ok((0, Zm.validateArray)(e));}};function _u(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=Cn.mergeEvaluated.items(n,r.length,i.items));let c=n.name("valid"),u=n.const("len",(0, bu._)`${o}.length`);r.forEach((l,m)=>{(0, Cn.alwaysValidSchema)(i,l)||(n.if((0, bu._)`${u} > ${m}`,()=>e.subschema({keyword:a,schemaProp:m,dataProp:m},c)),e.ok(c));});function d(l){let{opts:m,errSchemaPath:h}=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 "${h}"`;(0, Cn.checkStrictMode)(i,S,m.strictTuples);}}}Or.validateTuple=_u;Or.default=eg;});var Ru=T(bo=>{Object.defineProperty(bo,"__esModule",{value:true});var tg=wo(),rg={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0, tg.validateTuple)(e,"items")};bo.default=rg;});var $u=T(_o=>{Object.defineProperty(_o,"__esModule",{value:true});var Cu=U(),ng=Q(),sg=Le(),og=ko(),ag={message:({params:{len:e}})=>(0, Cu.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0, Cu._)`{limit: ${e}}`},ig={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:ag,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:s}=r;n.items=true,!(0, ng.alwaysValidSchema)(n,t)&&(s?(0, og.validateAdditionalItems)(e,s):e.ok((0, sg.validateArray)(e)));}};_o.default=ig;});var Eu=T(Ro=>{Object.defineProperty(Ro,"__esModule",{value:true});var Be=U(),$n=Q(),ug={message:({params:{min:e,max:t}})=>t===void 0?(0, Be.str)`must contain at least ${e} valid item(s)`:(0, Be.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0, Be._)`{minContains: ${e}}`:(0, Be._)`{minContains: ${e}, maxContains: ${t}}`},cg={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:true,error:ug,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, Be._)`${s}.length`);if(e.setParams({min:a,max:i}),i===void 0&&a===0){(0, $n.checkStrictMode)(o,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(i!==void 0&&a>i){(0, $n.checkStrictMode)(o,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0, $n.alwaysValidSchema)(o,r)){let p=(0, Be._)`${d} >= ${a}`;i!==void 0&&(p=(0, Be._)`${p} && ${d} <= ${i}`),e.pass(p);return}o.items=true;let l=t.name("valid");i===void 0&&a===1?h(l,()=>t.if(l,()=>t.break())):a===0?(t.let(l,true),i!==void 0&&t.if((0, Be._)`${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);h(p,()=>t.if(p,()=>f(S)));}function h(p,S){t.forRange("i",0,d,b=>{e.subschema({keyword:"contains",dataProp:b,dataPropType:$n.Type.Num,compositeRule:true},p),S();});}function f(p){t.code((0, Be._)`${p}++`),i===void 0?t.if((0, Be._)`${p} >= ${a}`,()=>t.assign(l,true).break()):(t.if((0, Be._)`${p} > ${i}`,()=>t.assign(l,false).break()),a===1?t.assign(l,true):t.if((0, Be._)`${p} >= ${a}`,()=>t.assign(l,true)));}}};Ro.default=cg;});var Tu=T(et=>{Object.defineProperty(et,"__esModule",{value:true});et.validateSchemaDeps=et.validatePropertyDeps=et.error=void 0;var Co=U(),dg=Q(),Nr=Le();et.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return (0, Co.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0, Co._)`{property: ${e},
|
|
5
|
+
|| ${a} === "boolean" || ${s} === null`).assign(i,(0, K._)`[${s}]`);}}}function Jl({gen:e,parentData:t,parentDataProperty:r},n){e.if((0, K._)`${t} !== undefined`,()=>e.assign((0, K._)`${t}[${r}]`,n));}function Ts(e,t,r,n=Qt.Correct){let s=n===Qt.Correct?K.operators.EQ:K.operators.NEQ,o;switch(e){case "null":return (0, K._)`${t} ${s} null`;case "array":o=(0, K._)`Array.isArray(${t})`;break;case "object":o=(0, K._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case "integer":o=a((0, K._)`!(${t} % 1) && !isNaN(${t})`);break;case "number":o=a();break;default:return (0, K._)`typeof ${t} ${s} ${e}`}return n===Qt.Correct?o:(0, K.not)(o);function a(i=K.nil){return (0, K.and)((0, K._)`typeof ${t} == "number"`,i,r?(0, K._)`isFinite(${t})`:K.nil)}}_e.checkDataType=Ts;function Is(e,t,r,n){if(e.length===1)return Ts(e[0],t,r,n);let s,o=(0, Za.toHash)(e);if(o.array&&o.object){let a=(0, K._)`typeof ${t} != "object"`;s=o.null?a:(0, K._)`!${t} || ${a}`,delete o.null,delete o.array,delete o.object;}else s=K.nil;o.number&&delete o.integer;for(let a in o)s=(0, K.and)(s,Ts(a,t,r,n));return s}_e.checkDataTypes=Is;var zl={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0, K._)`{type: ${e}}`:(0, K._)`{type: ${t}}`};function js(e){let t=Hl(e);(0, Vl.reportError)(t,zl);}_e.reportTypeError=js;function Hl(e){let{gen:t,data:r,schema:n}=e,s=(0, Za.schemaRefOrVal)(e,n,"type");return {gen:t,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:e}}});var ni=T(dn=>{Object.defineProperty(dn,"__esModule",{value:true});dn.assignDefaults=void 0;var Zt=z(),Wl=Q();function Yl(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let s in r)ri(e,s,r[s].default);else t==="array"&&Array.isArray(n)&&n.forEach((s,o)=>ri(e,o,s.default));}dn.assignDefaults=Yl;function ri(e,t,r){let{gen:n,compositeRule:s,data:o,opts:a}=e;if(r===void 0)return;let i=(0, Zt._)`${o}${(0, Zt.getProperty)(t)}`;if(s){(0, Wl.checkStrictMode)(e,`default is ignored for: ${i}`);return}let c=(0, Zt._)`${i} === undefined`;a.useDefaults==="empty"&&(c=(0, Zt._)`${c} || ${i} === null || ${i} === ""`),n.if(c,(0, Zt._)`${i} = ${(0, Zt.stringify)(r)}`);}});var Ke=T(se=>{Object.defineProperty(se,"__esModule",{value:true});se.validateUnion=se.validateArray=se.usePattern=se.callValidateCode=se.schemaProperties=se.allSchemaProperties=se.noPropertyInData=se.propertyInData=se.isOwnProperty=se.hasPropFunc=se.reportMissingProp=se.checkMissingProp=se.checkReportMissingProp=void 0;var ue=z(),Ps=Q(),St=dt(),Xl=Q();function Ql(e,t){let{gen:r,data:n,it:s}=e;r.if(Ns(r,n,t,s.opts.ownProperties),()=>{e.setParams({missingProperty:(0, ue._)`${t}`},true),e.error();});}se.checkReportMissingProp=Ql;function Zl({gen:e,data:t,it:{opts:r}},n,s){return (0, ue.or)(...n.map(o=>(0, ue.and)(Ns(e,t,o,r.ownProperties),(0, ue._)`${s} = ${o}`)))}se.checkMissingProp=Zl;function ef(e,t){e.setParams({missingProperty:t},true),e.error();}se.reportMissingProp=ef;function si(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0, ue._)`Object.prototype.hasOwnProperty`})}se.hasPropFunc=si;function Os(e,t,r){return (0, ue._)`${si(e)}.call(${t}, ${r})`}se.isOwnProperty=Os;function tf(e,t,r,n){let s=(0, ue._)`${t}${(0, ue.getProperty)(r)} !== undefined`;return n?(0, ue._)`${s} && ${Os(e,t,r)}`:s}se.propertyInData=tf;function Ns(e,t,r,n){let s=(0, ue._)`${t}${(0, ue.getProperty)(r)} === undefined`;return n?(0, ue.or)(s,(0, ue.not)(Os(e,t,r))):s}se.noPropertyInData=Ns;function oi(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}se.allSchemaProperties=oi;function rf(e,t){return oi(t).filter(r=>!(0, Ps.alwaysValidSchema)(e,t[r]))}se.schemaProperties=rf;function nf({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:o},it:a},i,c,u){let d=u?(0, ue._)`${e}, ${t}, ${n}${s}`:t,l=[[St.default.instancePath,(0, ue.strConcat)(St.default.instancePath,o)],[St.default.parentData,a.parentData],[St.default.parentDataProperty,a.parentDataProperty],[St.default.rootData,St.default.rootData]];a.opts.dynamicRef&&l.push([St.default.dynamicAnchors,St.default.dynamicAnchors]);let g=(0, ue._)`${d}, ${r.object(...l)}`;return c!==ue.nil?(0, ue._)`${i}.call(${c}, ${g})`:(0, ue._)`${i}(${g})`}se.callValidateCode=nf;var sf=(0, ue._)`new RegExp`;function of({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, ue._)`${s.code==="new RegExp"?sf:(0, Xl.useFunc)(e,s)}(${r}, ${n})`})}se.usePattern=of;function af(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, ue._)`${r}.length`);t.forRange("i",0,c,u=>{e.subschema({keyword:n,dataProp:u,dataPropType:Ps.Type.Num},o),t.if((0, ue.not)(o),i);});}}se.validateArray=af;function uf(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, Ps.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, ue._)`${a} || ${i}`),e.mergeValidEvaluated(d,i)||t.if((0, ue.not)(a));})),e.result(a,()=>e.reset(),()=>e.error(true));}se.validateUnion=uf;});var ui=T(et=>{Object.defineProperty(et,"__esModule",{value:true});et.validateKeywordUsage=et.validSchemaType=et.funcKeywordCode=et.macroKeywordCode=void 0;var xe=z(),Dt=dt(),cf=Ke(),df=vr();function lf(e,t){let{gen:r,keyword:n,schema:s,parentSchema:o,it:a}=e,i=t.macro.call(a.self,s,o,a),c=ii(r,n,i);a.opts.validateSchema!==false&&a.self.validateSchema(i,true);let u=r.name("valid");e.subschema({schema:i,schemaPath:xe.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:true},u),e.pass(u,()=>e.error(true));}et.macroKeywordCode=lf;function ff(e,t){var r;let{gen:n,keyword:s,schema:o,parentSchema:a,$data:i,it:c}=e;mf(c,t);let u=!i&&t.compile?t.compile.call(c.self,o,a,c):t.validate,d=ii(n,s,u),l=n.let("valid");e.block$data(l,g),e.ok((r=t.valid)!==null&&r!==void 0?r:l);function g(){if(t.errors===false)p(),t.modifying&&ai(e),S(()=>e.error());else {let b=t.async?h():f();t.modifying&&ai(e),S(()=>pf(e,b));}}function h(){let b=n.let("ruleErrs",null);return n.try(()=>p((0, xe._)`await `),P=>n.assign(l,false).if((0, xe._)`${P} instanceof ${c.ValidationError}`,()=>n.assign(b,(0, xe._)`${P}.errors`),()=>n.throw(P))),b}function f(){let b=(0, xe._)`${d}.errors`;return n.assign(b,null),p(xe.nil),b}function p(b=t.async?(0, xe._)`await `:xe.nil){let P=c.opts.passContext?Dt.default.this:Dt.default.self,w=!("compile"in t&&!i||t.schema===false);n.assign(l,(0, xe._)`${b}${(0, cf.callValidateCode)(e,d,P,w)}`,t.modifying);}function S(b){var P;n.if((0, xe.not)((P=t.valid)!==null&&P!==void 0?P:l),b);}}et.funcKeywordCode=ff;function ai(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0, xe._)`${n.parentData}[${n.parentDataProperty}]`));}function pf(e,t){let{gen:r}=e;r.if((0, xe._)`Array.isArray(${t})`,()=>{r.assign(Dt.default.vErrors,(0, xe._)`${Dt.default.vErrors} === null ? ${t} : ${Dt.default.vErrors}.concat(${t})`).assign(Dt.default.errors,(0, xe._)`${Dt.default.vErrors}.length`),(0, df.extendErrors)(e);},()=>e.error());}function mf({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function ii(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, xe.stringify)(r)})}function gf(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")}et.validSchemaType=gf;function hf({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)}}et.validateKeywordUsage=hf;});var di=T(kt=>{Object.defineProperty(kt,"__esModule",{value:true});kt.extendSubschemaMode=kt.extendSubschemaData=kt.getSubschema=void 0;var tt=z(),ci=Q();function yf(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, tt._)`${e.schemaPath}${(0, tt.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:i[r],schemaPath:(0, tt._)`${e.schemaPath}${(0, tt.getProperty)(t)}${(0, tt.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0, ci.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')}kt.getSubschema=yf;function vf(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,g=i.let("data",(0, tt._)`${t.data}${(0, tt.getProperty)(r)}`,true);c(g),e.errorPath=(0, tt.str)`${u}${(0, ci.getErrorPath)(r,n,l.jsPropertySyntax)}`,e.parentDataProperty=(0, tt._)`${r}`,e.dataPathArr=[...d,e.parentDataProperty];}if(s!==void 0){let u=s instanceof tt.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];}}kt.extendSubschemaData=vf;function Sf(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;}kt.extendSubschemaMode=Sf;});var qs=T((yv,li)=>{li.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 pi=T((vv,fi)=>{var wt=fi.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(){};ln(t,n,s,e,"",e);};wt.keywords={additionalItems:true,items:true,contains:true,additionalProperties:true,propertyNames:true,not:true,if:true,then:true,else:true};wt.arrayKeywords={items:true,allOf:true,anyOf:true,oneOf:true};wt.propsKeywords={$defs:true,definitions:true,properties:true,patternProperties:true,dependencies:true};wt.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 ln(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 wt.arrayKeywords)for(var g=0;g<l.length;g++)ln(e,t,r,l[g],s+"/"+d+"/"+g,o,s,d,n,g);}else if(d in wt.propsKeywords){if(l&&typeof l=="object")for(var h in l)ln(e,t,r,l[h],s+"/"+d+"/"+kf(h),o,s,d,n,h);}else (d in wt.keywords||e.allKeys&&!(d in wt.skipKeywords))&&ln(e,t,r,l,s+"/"+d,o,s,d,n);}r(n,s,o,a,i,c,u);}}function kf(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var kr=T(Oe=>{Object.defineProperty(Oe,"__esModule",{value:true});Oe.getSchemaRefs=Oe.resolveUrl=Oe.normalizeId=Oe._getFullPath=Oe.getFullPath=Oe.inlineRef=void 0;var wf=Q(),bf=qs(),_f=pi(),Rf=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function Cf(e,t=true){return typeof e=="boolean"?true:t===true?!Fs(e):t?mi(e)<=t:false}Oe.inlineRef=Cf;var $f=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Fs(e){for(let t in e){if($f.has(t))return true;let r=e[t];if(Array.isArray(r)&&r.some(Fs)||typeof r=="object"&&Fs(r))return true}return false}function mi(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!Rf.has(r)&&(typeof e[r]=="object"&&(0, wf.eachItem)(e[r],n=>t+=mi(n)),t===1/0))return 1/0}return t}function gi(e,t="",r){r!==false&&(t=er(t));let n=e.parse(t);return hi(e,n)}Oe.getFullPath=gi;function hi(e,t){return e.serialize(t).split("#")[0]+"#"}Oe._getFullPath=hi;var Ef=/#\/?$/;function er(e){return e?e.replace(Ef,""):""}Oe.normalizeId=er;function xf(e,t,r){return r=er(r),e.resolve(t,r)}Oe.resolveUrl=xf;var Af=/^[a-z_][-a-z0-9._]*$/i;function Tf(e,t){if(typeof e=="boolean")return {};let{schemaId:r,uriResolver:n}=this.opts,s=er(e[r]||t),o={"":s},a=gi(n,s,false),i={},c=new Set;return _f(e,{allKeys:true},(l,g,h,f)=>{if(f===void 0)return;let p=a+g,S=o[f];typeof l[r]=="string"&&(S=b.call(this,l[r])),P.call(this,l.$anchor),P.call(this,l.$dynamicAnchor),o[g]=S;function b(w){let x=this.opts.uriResolver.resolve;if(w=er(S?x(S,w):w),c.has(w))throw d(w);c.add(w);let y=this.refs[w];return typeof y=="string"&&(y=this.refs[y]),typeof y=="object"?u(l,y.schema,w):w!==er(p)&&(w[0]==="#"?(u(l,i[w],w),i[w]=l):this.refs[w]=p),w}function P(w){if(typeof w=="string"){if(!Af.test(w))throw new Error(`invalid anchor "${w}"`);b.call(this,`#${w}`);}}}),i;function u(l,g,h){if(g!==void 0&&!bf(l,g))throw d(h)}function d(l){return new Error(`reference "${l}" resolves to more than one schema`)}}Oe.getSchemaRefs=Tf;});var _r=T(bt=>{Object.defineProperty(bt,"__esModule",{value:true});bt.getData=bt.KeywordCxt=bt.validateFunctionCode=void 0;var wi=Ya(),yi=Sr(),Ms=As(),fn=Sr(),If=ni(),br=ui(),Ds=di(),N=z(),V=dt(),jf=kr(),lt=Q(),wr=vr();function Pf(e){if(Ri(e)&&(Ci(e),_i(e))){qf(e);return}bi(e,()=>(0, wi.topBoolOrEmptySchema)(e));}bt.validateFunctionCode=Pf;function bi({gen:e,validateName:t,schema:r,schemaEnv:n,opts:s},o){s.code.es5?e.func(t,(0, N._)`${V.default.data}, ${V.default.valCxt}`,n.$async,()=>{e.code((0, N._)`"use strict"; ${vi(r,s)}`),Nf(e,s),e.code(o);}):e.func(t,(0, N._)`${V.default.data}, ${Of(s)}`,n.$async,()=>e.code(vi(r,s)).code(o));}function Of(e){return (0, N._)`{${V.default.instancePath}="", ${V.default.parentData}, ${V.default.parentDataProperty}, ${V.default.rootData}=${V.default.data}${e.dynamicRef?(0, N._)`, ${V.default.dynamicAnchors}={}`:N.nil}}={}`}function Nf(e,t){e.if(V.default.valCxt,()=>{e.var(V.default.instancePath,(0, N._)`${V.default.valCxt}.${V.default.instancePath}`),e.var(V.default.parentData,(0, N._)`${V.default.valCxt}.${V.default.parentData}`),e.var(V.default.parentDataProperty,(0, N._)`${V.default.valCxt}.${V.default.parentDataProperty}`),e.var(V.default.rootData,(0, N._)`${V.default.valCxt}.${V.default.rootData}`),t.dynamicRef&&e.var(V.default.dynamicAnchors,(0, N._)`${V.default.valCxt}.${V.default.dynamicAnchors}`);},()=>{e.var(V.default.instancePath,(0, N._)`""`),e.var(V.default.parentData,(0, N._)`undefined`),e.var(V.default.parentDataProperty,(0, N._)`undefined`),e.var(V.default.rootData,V.default.data),t.dynamicRef&&e.var(V.default.dynamicAnchors,(0, N._)`{}`);});}function qf(e){let{schema:t,opts:r,gen:n}=e;bi(e,()=>{r.$comment&&t.$comment&&Ei(e),Vf(e),n.let(V.default.vErrors,null),n.let(V.default.errors,0),r.unevaluated&&Ff(e),$i(e),Gf(e);});}function Ff(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0, N._)`${r}.evaluated`),t.if((0, N._)`${e.evaluated}.dynamicProps`,()=>t.assign((0, N._)`${e.evaluated}.props`,(0, N._)`undefined`)),t.if((0, N._)`${e.evaluated}.dynamicItems`,()=>t.assign((0, N._)`${e.evaluated}.items`,(0, N._)`undefined`));}function vi(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0, N._)`/*# sourceURL=${r} */`:N.nil}function Df(e,t){if(Ri(e)&&(Ci(e),_i(e))){Mf(e,t);return}(0, wi.boolOrEmptySchema)(e,t);}function _i({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 Ri(e){return typeof e.schema!="boolean"}function Mf(e,t){let{schema:r,gen:n,opts:s}=e;s.$comment&&r.$comment&&Ei(e),Bf(e),Kf(e);let o=n.const("_errs",V.default.errors);$i(e,o),n.var(t,(0, N._)`${o} === ${V.default.errors}`);}function Ci(e){(0, lt.checkUnknownRules)(e),Lf(e);}function $i(e,t){if(e.opts.jtd)return Si(e,[],false,t);let r=(0, yi.getSchemaTypes)(e.schema),n=(0, yi.coerceAndCheckDataType)(e,r);Si(e,r,!n,t);}function Lf(e){let{schema:t,errSchemaPath:r,opts:n,self:s}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0, lt.schemaHasRulesButRef)(t,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`);}function Vf(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0, lt.checkStrictMode)(e,"default is ignored in the schema root");}function Bf(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0, jf.resolveUrl)(e.opts.uriResolver,e.baseId,t));}function Kf(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function Ei({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:s}){let o=r.$comment;if(s.$comment===true)e.code((0, N._)`${V.default.self}.logger.log(${o})`);else if(typeof s.$comment=="function"){let a=(0, N.str)`${n}/$comment`,i=e.scopeValue("root",{ref:t.root});e.code((0, N._)`${V.default.self}.opts.$comment(${o}, ${a}, ${i}.schema)`);}}function Gf(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:s,opts:o}=e;r.$async?t.if((0, N._)`${V.default.errors} === 0`,()=>t.return(V.default.data),()=>t.throw((0, N._)`new ${s}(${V.default.vErrors})`)):(t.assign((0, N._)`${n}.errors`,V.default.vErrors),o.unevaluated&&Uf(e),t.return((0, N._)`${V.default.errors} === 0`));}function Uf({gen:e,evaluated:t,props:r,items:n}){r instanceof N.Name&&e.assign((0, N._)`${t}.props`,r),n instanceof N.Name&&e.assign((0, N._)`${t}.items`,n);}function Si(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, lt.schemaHasRulesButRef)(o,d))){s.block(()=>Ai(e,"$ref",d.all.$ref.definition));return}c.jtd||Jf(e,t),s.block(()=>{for(let g of d.rules)l(g);l(d.post);});function l(g){(0, Ms.shouldUseGroup)(o,g)&&(g.type?(s.if((0, fn.checkDataType)(g.type,a,c.strictNumbers)),ki(e,g),t.length===1&&t[0]===g.type&&r&&(s.else(),(0, fn.reportTypeError)(e)),s.endIf()):ki(e,g),i||s.if((0, N._)`${V.default.errors} === ${n||0}`));}}function ki(e,t){let{gen:r,schema:n,opts:{useDefaults:s}}=e;s&&(0, If.assignDefaults)(e,t.type),r.block(()=>{for(let o of t.rules)(0, Ms.shouldUseRule)(n,o)&&Ai(e,o.keyword,o.definition,t.type);});}function Jf(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(zf(e,t),e.opts.allowUnionTypes||Hf(e,t),Wf(e,e.dataTypes));}function zf(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{xi(e.dataTypes,r)||Ls(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`);}),Xf(e,t);}}function Hf(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&Ls(e,"use allowUnionTypes to allow union type keyword");}function Wf(e,t){let r=e.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0, Ms.shouldUseRule)(e.schema,s)){let{type:o}=s.definition;o.length&&!o.some(a=>Yf(t,a))&&Ls(e,`missing type "${o.join(",")}" for keyword "${n}"`);}}}function Yf(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function xi(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function Xf(e,t){let r=[];for(let n of e.dataTypes)xi(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r;}function Ls(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0, lt.checkStrictMode)(e,t,e.opts.strictTypes);}var pn=class{constructor(t,r,n){if((0, br.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, lt.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",Ti(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0, br.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",V.default.errors));}result(t,r,n){this.failResult((0, N.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, N.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, N._)`${r} !== undefined && (${(0, N.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?wr.reportExtraError:wr.reportError)(this,this.def.error,r);}$dataError(){(0, wr.reportError)(this,this.def.$dataError||wr.keyword$DataError);}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0, wr.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=N.nil){this.gen.block(()=>{this.check$data(t,n),r();});}check$data(t=N.nil,r=N.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:o,def:a}=this;n.if((0, N.or)((0, N._)`${s} === undefined`,r)),t!==N.nil&&n.assign(t,true),(o.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==N.nil&&n.assign(t,false)),n.else();}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:s,it:o}=this;return (0, N.or)(a(),i());function a(){if(n.length){if(!(r instanceof N.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return (0, N._)`${(0, fn.checkDataTypes)(c,r,o.opts.strictNumbers,fn.DataType.Wrong)}`}return N.nil}function i(){if(s.validateSchema){let c=t.scopeValue("validate$data",{ref:s.validateSchema});return (0, N._)`!${c}(${r})`}return N.nil}}subschema(t,r){let n=(0, Ds.getSubschema)(this.it,t);(0, Ds.extendSubschemaData)(n,this.it,t),(0, Ds.extendSubschemaMode)(n,t);let s={...this.it,...n,items:void 0,props:void 0};return Df(s,r),s}mergeEvaluated(t,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==true&&t.props!==void 0&&(n.props=lt.mergeEvaluated.props(s,t.props,n.props,r)),n.items!==true&&t.items!==void 0&&(n.items=lt.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,N.Name)),true}};bt.KeywordCxt=pn;function Ai(e,t,r,n){let s=new pn(e,r,t);"code"in r?r.code(s,n):s.$data&&r.validate?(0, br.funcKeywordCode)(s,r):"macro"in r?(0, br.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0, br.funcKeywordCode)(s,r);}var Qf=/^\/(?:[^~]|~0|~1)*$/,Zf=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function Ti(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let s,o;if(e==="")return V.default.rootData;if(e[0]==="/"){if(!Qf.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);s=e,o=V.default.rootData;}else {let u=Zf.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, N._)`${o}${(0, N.getProperty)((0, lt.unescapeJsonPointer)(u))}`,a=(0, N._)`${a} && ${o}`);return a;function c(u,d){return `Cannot access ${u} ${d} levels up, current level is ${t}`}}bt.getData=Ti;});var mn=T(Bs=>{Object.defineProperty(Bs,"__esModule",{value:true});var Vs=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=true;}};Bs.default=Vs;});var Rr=T(Us=>{Object.defineProperty(Us,"__esModule",{value:true});var Ks=kr(),Gs=class extends Error{constructor(t,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0, Ks.resolveUrl)(t,r,n),this.missingSchema=(0, Ks.normalizeId)((0, Ks.getFullPath)(t,this.missingRef));}};Us.default=Gs;});var hn=T(Ge=>{Object.defineProperty(Ge,"__esModule",{value:true});Ge.resolveSchema=Ge.getCompilingSchema=Ge.resolveRef=Ge.compileSchema=Ge.SchemaEnv=void 0;var Xe=z(),ep=mn(),Mt=dt(),Qe=kr(),Ii=Q(),tp=_r(),tr=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, Qe.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={};}};Ge.SchemaEnv=tr;function zs(e){let t=ji.call(this,e);if(t)return t;let r=(0, Qe.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:o}=this.opts,a=new Xe.CodeGen(this.scope,{es5:n,lines:s,ownProperties:o}),i;e.$async&&(i=a.scopeValue("Error",{ref:ep.default,code:(0, Xe._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");e.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:Mt.default.data,parentData:Mt.default.parentData,parentDataProperty:Mt.default.parentDataProperty,dataNames:[Mt.default.data],dataPathArr:[Xe.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===true?{ref:e.schema,code:(0, Xe.stringify)(e.schema)}:{ref:e.schema}),validateName:c,ValidationError:i,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:Xe.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0, Xe._)`""`,opts:this.opts,self:this},d;try{this._compilations.add(e),(0,tp.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let l=a.toString();d=`${a.scopeRefs(Mt.default.scope)}return ${l}`,this.opts.code.process&&(d=this.opts.code.process(d,e));let h=new Function(`${Mt.default.self}`,`${Mt.default.scope}`,d)(this,this.scope.get());if(this.scope.value(c,{ref:h}),h.errors=null,h.schema=e.schema,h.schemaEnv=e,e.$async&&(h.$async=!0),this.opts.code.source===!0&&(h.source={validateName:c,validateCode:l,scopeValues:a._values}),this.opts.unevaluated){let{props:f,items:p}=u;h.evaluated={props:f instanceof Xe.Name?void 0:f,items:p instanceof Xe.Name?void 0:p,dynamicProps:f instanceof Xe.Name,dynamicItems:p instanceof Xe.Name},h.source&&(h.source.evaluated=(0,Xe.stringify)(h.evaluated));}return e.validate=h,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);}}Ge.compileSchema=zs;function rp(e,t,r){var n;r=(0, Qe.resolveUrl)(this.opts.uriResolver,t,r);let s=e.refs[r];if(s)return s;let o=op.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 tr({schema:a,schemaId:i,root:e,baseId:t}));}if(o!==void 0)return e.refs[r]=np.call(this,o)}Ge.resolveRef=rp;function np(e){return (0, Qe.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:zs.call(this,e)}function ji(e){for(let t of this._compilations)if(sp(t,e))return t}Ge.getCompilingSchema=ji;function sp(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function op(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||gn.call(this,e,t)}function gn(e,t){let r=this.opts.uriResolver.parse(t),n=(0, Qe._getFullPath)(this.opts.uriResolver,r),s=(0, Qe.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===s)return Js.call(this,r,e);let o=(0, Qe.normalizeId)(n),a=this.refs[o]||this.schemas[o];if(typeof a=="string"){let i=gn.call(this,e,a);return typeof i?.schema!="object"?void 0:Js.call(this,r,i)}if(typeof a?.schema=="object"){if(a.validate||zs.call(this,a),o===(0, Qe.normalizeId)(t)){let{schema:i}=a,{schemaId:c}=this.opts,u=i[c];return u&&(s=(0, Qe.resolveUrl)(this.opts.uriResolver,s,u)),new tr({schema:i,schemaId:c,root:e,baseId:s})}return Js.call(this,r,a)}}Ge.resolveSchema=gn;var ap=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Js(e,{baseId:t,schema:r,root:n}){var s;if(((s=e.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let i of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0, Ii.unescapeFragment)(i)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!ap.has(i)&&u&&(t=(0, Qe.resolveUrl)(this.opts.uriResolver,t,u));}let o;if(typeof r!="boolean"&&r.$ref&&!(0, Ii.schemaHasRulesButRef)(r,this.RULES)){let i=(0, Qe.resolveUrl)(this.opts.uriResolver,t,r.$ref);o=gn.call(this,n,i);}let{schemaId:a}=this.opts;if(o=o||new tr({schema:r,schemaId:a,root:n,baseId:t}),o.schema!==o.root.schema)return o}});var Pi=T((Rv,ip)=>{ip.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 Ws=T((Cv,Fi)=>{var up=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),Ni=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 Hs(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 cp=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function Oi(e){return e.length=0,true}function dp(e,t,r){if(e.length){let n=Hs(e);if(n!=="")t.push(n);else return r.error=true,false;e.length=0;}return true}function lp(e){let t=0,r={error:false,address:"",zone:""},n=[],s=[],o=false,a=false,i=dp;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=Oi;}else {s.push(u);continue}}return s.length&&(i===Oi?r.zone=s.join(""):a?n.push(s.join("")):n.push(Hs(s))),r.address=n.join(""),r}function qi(e){if(fp(e,":")<2)return {host:e,isIPV6:false};let t=lp(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 fp(e,t){let r=0;for(let n=0;n<e.length;n++)e[n]===t&&r++;return r}function pp(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 mp(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 gp(e){let t=[];if(e.userinfo!==void 0&&(t.push(e.userinfo),t.push("@")),e.host!==void 0){let r=unescape(e.host);if(!Ni(r)){let n=qi(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}Fi.exports={nonSimpleDomain:cp,recomposeAuthority:gp,normalizeComponentEncoding:mp,removeDotSegments:pp,isIPv4:Ni,isUUID:up,normalizeIPv6:qi,stringArrayToHexStripped:Hs};});var Bi=T(($v,Vi)=>{var{isUUID:hp}=Ws(),yp=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,vp=["http","https","ws","wss","urn","urn:uuid"];function Sp(e){return vp.indexOf(e)!==-1}function Ys(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 Di(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function Mi(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 kp(e){return e.secure=Ys(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function wp(e){if((e.port===(Ys(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 bp(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(yp);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let s=`${n}:${t.nid||e.nid}`,o=Xs(s);e.path=void 0,o&&(e=o.parse(e,t));}else e.error=e.error||"URN can not be parsed.";return e}function _p(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=Xs(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 Rp(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!hp(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function Cp(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var Li={scheme:"http",domainHost:true,parse:Di,serialize:Mi},$p={scheme:"https",domainHost:Li.domainHost,parse:Di,serialize:Mi},yn={scheme:"ws",domainHost:true,parse:kp,serialize:wp},Ep={scheme:"wss",domainHost:yn.domainHost,parse:yn.parse,serialize:yn.serialize},xp={scheme:"urn",parse:bp,serialize:_p,skipNormalize:true},Ap={scheme:"urn:uuid",parse:Rp,serialize:Cp,skipNormalize:true},vn={http:Li,https:$p,ws:yn,wss:Ep,urn:xp,"urn:uuid":Ap};Object.setPrototypeOf(vn,null);function Xs(e){return e&&(vn[e]||vn[e.toLowerCase()])||void 0}Vi.exports={wsIsSecure:Ys,SCHEMES:vn,isValidSchemeName:Sp,getSchemeHandler:Xs};});var Ui=T((Ev,kn)=>{var{normalizeIPv6:Tp,removeDotSegments:Cr,recomposeAuthority:Ip,normalizeComponentEncoding:Sn,isIPv4:jp,nonSimpleDomain:Pp}=Ws(),{SCHEMES:Op,getSchemeHandler:Ki}=Bi();function Np(e,t){return typeof e=="string"?e=rt(ft(e,t),t):typeof e=="object"&&(e=ft(rt(e,t),t)),e}function qp(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=Gi(ft(e,n),ft(t,n),n,true);return n.skipEscape=true,rt(s,n)}function Gi(e,t,r,n){let s={};return n||(e=ft(rt(e,r),r),t=ft(rt(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=Cr(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=Cr(t.path||""),s.query=t.query):(t.path?(t.path[0]==="/"?s.path=Cr(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=Cr(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 Fp(e,t,r){return typeof e=="string"?(e=unescape(e),e=rt(Sn(ft(e,r),true),{...r,skipEscape:true})):typeof e=="object"&&(e=rt(Sn(e,true),{...r,skipEscape:true})),typeof t=="string"?(t=unescape(t),t=rt(Sn(ft(t,r),true),{...r,skipEscape:true})):typeof t=="object"&&(t=rt(Sn(t,true),{...r,skipEscape:true})),e.toLowerCase()===t.toLowerCase()}function rt(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=Ki(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=Ip(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=Cr(i)),a===void 0&&i[0]==="/"&&i[1]==="/"&&(i="/%2F"+i.slice(2)),s.push(i);}return r.query!==void 0&&s.push("?",r.query),r.fragment!==void 0&&s.push("#",r.fragment),s.join("")}var Dp=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function ft(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=false;r.reference==="suffix"&&(r.scheme?e=r.scheme+":"+e:e="//"+e);let o=e.match(Dp);if(o){if(n.scheme=o[1],n.userinfo=o[3],n.host=o[4],n.port=parseInt(o[5],10),n.path=o[6]||"",n.query=o[7],n.fragment=o[8],isNaN(n.port)&&(n.port=o[5]),n.host)if(jp(n.host)===false){let c=Tp(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=Ki(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===false&&Pp(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 Qs={SCHEMES:Op,normalize:Np,resolve:qp,resolveComponent:Gi,equal:Fp,serialize:rt,parse:ft};kn.exports=Qs;kn.exports.default=Qs;kn.exports.fastUri=Qs;});var zi=T(Zs=>{Object.defineProperty(Zs,"__esModule",{value:true});var Ji=Ui();Ji.code='require("ajv/dist/runtime/uri").default';Zs.default=Ji;});var tu=T(ve=>{Object.defineProperty(ve,"__esModule",{value:true});ve.CodeGen=ve.Name=ve.nil=ve.stringify=ve.str=ve._=ve.KeywordCxt=void 0;var Mp=_r();Object.defineProperty(ve,"KeywordCxt",{enumerable:true,get:function(){return Mp.KeywordCxt}});var rr=z();Object.defineProperty(ve,"_",{enumerable:true,get:function(){return rr._}});Object.defineProperty(ve,"str",{enumerable:true,get:function(){return rr.str}});Object.defineProperty(ve,"stringify",{enumerable:true,get:function(){return rr.stringify}});Object.defineProperty(ve,"nil",{enumerable:true,get:function(){return rr.nil}});Object.defineProperty(ve,"Name",{enumerable:true,get:function(){return rr.Name}});Object.defineProperty(ve,"CodeGen",{enumerable:true,get:function(){return rr.CodeGen}});var Lp=mn(),Qi=Rr(),Vp=xs(),$r=hn(),Bp=z(),Er=kr(),wn=Sr(),to=Q(),Hi=Pi(),Kp=zi(),Zi=(e,t)=>new RegExp(e,t);Zi.code="new RegExp";var Gp=["removeAdditional","useDefaults","coerceTypes"],Up=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."},zp={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Wi=200;function Hp(e){var t,r,n,s,o,a,i,c,u,d,l,g,h,f,p,S,b,P,w,x,y,v,k,R,$;let A=e.strict,j=(t=e.code)===null||t===void 0?void 0:t.optimize,D=j===true||j===void 0?1:j||0,F=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Zi,de=(s=e.uriResolver)!==null&&s!==void 0?s:Kp.default;return {strictSchema:(a=(o=e.strictSchema)!==null&&o!==void 0?o:A)!==null&&a!==void 0?a:true,strictNumbers:(c=(i=e.strictNumbers)!==null&&i!==void 0?i:A)!==null&&c!==void 0?c:true,strictTypes:(d=(u=e.strictTypes)!==null&&u!==void 0?u:A)!==null&&d!==void 0?d:"log",strictTuples:(g=(l=e.strictTuples)!==null&&l!==void 0?l:A)!==null&&g!==void 0?g:"log",strictRequired:(f=(h=e.strictRequired)!==null&&h!==void 0?h:A)!==null&&f!==void 0?f:false,code:e.code?{...e.code,optimize:D,regExp:F}:{optimize:D,regExp:F},loopRequired:(p=e.loopRequired)!==null&&p!==void 0?p:Wi,loopEnum:(S=e.loopEnum)!==null&&S!==void 0?S:Wi,meta:(b=e.meta)!==null&&b!==void 0?b:true,messages:(P=e.messages)!==null&&P!==void 0?P:true,inlineRefs:(w=e.inlineRefs)!==null&&w!==void 0?w:true,schemaId:(x=e.schemaId)!==null&&x!==void 0?x:"$id",addUsedSchema:(y=e.addUsedSchema)!==null&&y!==void 0?y:true,validateSchema:(v=e.validateSchema)!==null&&v!==void 0?v:true,validateFormats:(k=e.validateFormats)!==null&&k!==void 0?k:true,unicodeRegExp:(R=e.unicodeRegExp)!==null&&R!==void 0?R:true,int32range:($=e.int32range)!==null&&$!==void 0?$:true,uriResolver:de}}var xr=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...Hp(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new Bp.ValueScope({scope:{},prefixes:Up,es5:r,lines:n}),this.logger=em(t.logger);let s=t.validateFormats;t.validateFormats=false,this.RULES=(0, Vp.getRules)(),Yi.call(this,Jp,t,"NOT SUPPORTED"),Yi.call(this,zp,t,"DEPRECATED","warn"),this._metaOpts=Qp.call(this),t.formats&&Yp.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&Xp.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),Wp.call(this),t.validateFormats=s;}_addVocabularies(){this.addKeyword("$async");}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,s=Hi;n==="id"&&(s={...Hi},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 g=this._addSchema(d,l);return g.validate||a.call(this,g)}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 Qi.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, Er.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=Xi.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,s=new $r.SchemaEnv({schema:{},schemaId:n});if(r=$r.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=Xi.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, Er.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(rm.call(this,n,r),!r)return (0, to.eachItem)(n,o=>eo.call(this,o)),this;sm.call(this,r);let s={...r,type:(0, wn.getJSONTypes)(r.type),schemaType:(0, wn.getJSONTypes)(r.schemaType)};return (0, to.eachItem)(n,s.type.length===0?o=>eo.call(this,o,s):o=>s.type.forEach(a=>eo.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]=eu(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, Er.normalizeId)(a||n);let u=Er.getSchemaRefs.call(this,t,n);return c=new $r.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):$r.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{$r.compileSchema.call(this,t);}finally{this.opts=r;}}};xr.ValidationError=Lp.default;xr.MissingRefError=Qi.default;ve.default=xr;function Yi(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 Xi(e){return e=(0, Er.normalizeId)(e),this.schemas[e]||this.refs[e]}function Wp(){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 Yp(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t);}}function Xp(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r);}}function Qp(){let e={...this.opts};for(let t of Gp)delete e[t];return e}var Zp={log(){},warn(){},error(){}};function em(e){if(e===false)return Zp;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 tm=/^[a-z_$][a-z0-9_$:-]*$/i;function rm(e,t){let{RULES:r}=this;if((0, to.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!tm.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 eo(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, wn.getJSONTypes)(t.type),schemaType:(0, wn.getJSONTypes)(t.schemaType)}};t.before?nm.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 nm(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 sm(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=eu(t)),e.validateSchema=this.compile(t,true));}var om={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function eu(e){return {anyOf:[e,om]}}});var ru=T(ro=>{Object.defineProperty(ro,"__esModule",{value:true});var am={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};ro.default=am;});var au=T(Lt=>{Object.defineProperty(Lt,"__esModule",{value:true});Lt.callRef=Lt.getValidate=void 0;var im=Rr(),nu=Ke(),Ne=z(),nr=dt(),su=hn(),bn=Q(),um={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=su.resolveRef.call(c,u,s,r);if(d===void 0)throw new im.default(n.opts.uriResolver,s,r);if(d instanceof su.SchemaEnv)return g(d);return h(d);function l(){if(o===u)return _n(e,a,o,o.$async);let f=t.scopeValue("root",{ref:u});return _n(e,(0, Ne._)`${f}.validate`,u,u.$async)}function g(f){let p=ou(e,f);_n(e,p,f,f.$async);}function h(f){let p=t.scopeValue("schema",i.code.source===true?{ref:f,code:(0, Ne.stringify)(f)}:{ref:f}),S=t.name("valid"),b=e.subschema({schema:f,dataTypes:[],schemaPath:Ne.nil,topSchemaRef:p,errSchemaPath:r},S);e.mergeEvaluated(b),e.ok(S);}}};function ou(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0, Ne._)`${r.scopeValue("wrapper",{ref:t})}.validate`}Lt.getValidate=ou;function _n(e,t,r,n){let{gen:s,it:o}=e,{allErrors:a,schemaEnv:i,opts:c}=o,u=c.passContext?nr.default.this:Ne.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, Ne._)`await ${(0, nu.callValidateCode)(e,t,u)}`),h(t),a||s.assign(f,true);},p=>{s.if((0, Ne._)`!(${p} instanceof ${o.ValidationError})`,()=>s.throw(p)),g(p),a||s.assign(f,false);}),e.ok(f);}function l(){e.result((0, nu.callValidateCode)(e,t,u),()=>h(t),()=>g(t));}function g(f){let p=(0, Ne._)`${f}.errors`;s.assign(nr.default.vErrors,(0, Ne._)`${nr.default.vErrors} === null ? ${p} : ${nr.default.vErrors}.concat(${p})`),s.assign(nr.default.errors,(0, Ne._)`${nr.default.vErrors}.length`);}function h(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=bn.mergeEvaluated.props(s,S.props,o.props));else {let b=s.var("props",(0, Ne._)`${f}.evaluated.props`);o.props=bn.mergeEvaluated.props(s,b,o.props,Ne.Name);}if(o.items!==true)if(S&&!S.dynamicItems)S.items!==void 0&&(o.items=bn.mergeEvaluated.items(s,S.items,o.items));else {let b=s.var("items",(0, Ne._)`${f}.evaluated.items`);o.items=bn.mergeEvaluated.items(s,b,o.items,Ne.Name);}}}Lt.callRef=_n;Lt.default=um;});var iu=T(no=>{Object.defineProperty(no,"__esModule",{value:true});var cm=ru(),dm=au(),lm=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",cm.default,dm.default];no.default=lm;});var uu=T(so=>{Object.defineProperty(so,"__esModule",{value:true});var Rn=z(),_t=Rn.operators,Cn={maximum:{okStr:"<=",ok:_t.LTE,fail:_t.GT},minimum:{okStr:">=",ok:_t.GTE,fail:_t.LT},exclusiveMaximum:{okStr:"<",ok:_t.LT,fail:_t.GTE},exclusiveMinimum:{okStr:">",ok:_t.GT,fail:_t.LTE}},fm={message:({keyword:e,schemaCode:t})=>(0, Rn.str)`must be ${Cn[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0, Rn._)`{comparison: ${Cn[e].okStr}, limit: ${t}}`},pm={keyword:Object.keys(Cn),type:"number",schemaType:"number",$data:true,error:fm,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0, Rn._)`${r} ${Cn[t].fail} ${n} || isNaN(${r})`);}};so.default=pm;});var cu=T(oo=>{Object.defineProperty(oo,"__esModule",{value:true});var Ar=z(),mm={message:({schemaCode:e})=>(0, Ar.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0, Ar._)`{multipleOf: ${e}}`},gm={keyword:"multipleOf",type:"number",schemaType:"number",$data:true,error:mm,code(e){let{gen:t,data:r,schemaCode:n,it:s}=e,o=s.opts.multipleOfPrecision,a=t.let("res"),i=o?(0, Ar._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${o}`:(0, Ar._)`${a} !== parseInt(${a})`;e.fail$data((0, Ar._)`(${n} === 0 || (${a} = ${r}/${n}, ${i}))`);}};oo.default=gm;});var lu=T(ao=>{Object.defineProperty(ao,"__esModule",{value:true});function du(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}ao.default=du;du.code='require("ajv/dist/runtime/ucs2length").default';});var fu=T(io=>{Object.defineProperty(io,"__esModule",{value:true});var Vt=z(),hm=Q(),ym=lu(),vm={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return (0, Vt.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0, Vt._)`{limit: ${e}}`},Sm={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:true,error:vm,code(e){let{keyword:t,data:r,schemaCode:n,it:s}=e,o=t==="maxLength"?Vt.operators.GT:Vt.operators.LT,a=s.opts.unicode===false?(0, Vt._)`${r}.length`:(0, Vt._)`${(0, hm.useFunc)(e.gen,ym.default)}(${r})`;e.fail$data((0, Vt._)`${a} ${o} ${n}`);}};io.default=Sm;});var pu=T(uo=>{Object.defineProperty(uo,"__esModule",{value:true});var km=Ke(),wm=Q(),sr=z(),bm={message:({schemaCode:e})=>(0, sr.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0, sr._)`{pattern: ${e}}`},_m={keyword:"pattern",type:"string",schemaType:"string",$data:true,error:bm,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, sr._)`new RegExp`:(0, wm.useFunc)(t,c),d=t.let("valid");t.try(()=>t.assign(d,(0, sr._)`${u}(${o}, ${i}).test(${r})`),()=>t.assign(d,false)),e.fail$data((0, sr._)`!${d}`);}else {let c=(0, km.usePattern)(e,s);e.fail$data((0, sr._)`!${c}.test(${r})`);}}};uo.default=_m;});var mu=T(co=>{Object.defineProperty(co,"__esModule",{value:true});var Tr=z(),Rm={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return (0, Tr.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0, Tr._)`{limit: ${e}}`},Cm={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:true,error:Rm,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxProperties"?Tr.operators.GT:Tr.operators.LT;e.fail$data((0, Tr._)`Object.keys(${r}).length ${s} ${n}`);}};co.default=Cm;});var gu=T(lo=>{Object.defineProperty(lo,"__esModule",{value:true});var Ir=Ke(),jr=z(),$m=Q(),Em={message:({params:{missingProperty:e}})=>(0, jr.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0, jr._)`{missingProperty: ${e}}`},xm={keyword:"required",type:"object",schemaType:"array",$data:true,error:Em,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 h=e.parentSchema.properties,{definedProperties:f}=e.it;for(let p of r)if(h?.[p]===void 0&&!f.has(p)){let S=a.schemaEnv.baseId+a.errSchemaPath,b=`required property "${p}" is not defined at "${S}" (strictRequired)`;(0, $m.checkStrictMode)(a,b,a.opts.strictRequired);}}function u(){if(c||o)e.block$data(jr.nil,l);else for(let h of r)(0, Ir.checkReportMissingProp)(e,h);}function d(){let h=t.let("missing");if(c||o){let f=t.let("valid",true);e.block$data(f,()=>g(h,f)),e.ok(f);}else t.if((0, Ir.checkMissingProp)(e,r,h)),(0, Ir.reportMissingProp)(e,h),t.else();}function l(){t.forOf("prop",n,h=>{e.setParams({missingProperty:h}),t.if((0, Ir.noPropertyInData)(t,s,h,i.ownProperties),()=>e.error());});}function g(h,f){e.setParams({missingProperty:h}),t.forOf(h,n,()=>{t.assign(f,(0, Ir.propertyInData)(t,s,h,i.ownProperties)),t.if((0, jr.not)(f),()=>{e.error(),t.break();});},jr.nil);}}};lo.default=xm;});var hu=T(fo=>{Object.defineProperty(fo,"__esModule",{value:true});var Pr=z(),Am={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return (0, Pr.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0, Pr._)`{limit: ${e}}`},Tm={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:true,error:Am,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxItems"?Pr.operators.GT:Pr.operators.LT;e.fail$data((0, Pr._)`${r}.length ${s} ${n}`);}};fo.default=Tm;});var $n=T(po=>{Object.defineProperty(po,"__esModule",{value:true});var yu=qs();yu.code='require("ajv/dist/runtime/equal").default';po.default=yu;});var vu=T(go=>{Object.defineProperty(go,"__esModule",{value:true});var mo=Sr(),Se=z(),Im=Q(),jm=$n(),Pm={message:({params:{i:e,j:t}})=>(0, Se.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0, Se._)`{i: ${e}, j: ${t}}`},Om={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:true,error:Pm,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, mo.getSchemaTypes)(o.items):[];e.block$data(c,d,(0, Se._)`${a} === false`),e.ok(c);function d(){let f=t.let("i",(0, Se._)`${r}.length`),p=t.let("j");e.setParams({i:f,j:p}),t.assign(c,true),t.if((0, Se._)`${f} > 1`,()=>(l()?g:h)(f,p));}function l(){return u.length>0&&!u.some(f=>f==="object"||f==="array")}function g(f,p){let S=t.name("item"),b=(0, mo.checkDataTypes)(u,S,i.opts.strictNumbers,mo.DataType.Wrong),P=t.const("indices",(0, Se._)`{}`);t.for((0, Se._)`;${f}--;`,()=>{t.let(S,(0, Se._)`${r}[${f}]`),t.if(b,(0, Se._)`continue`),u.length>1&&t.if((0, Se._)`typeof ${S} == "string"`,(0, Se._)`${S} += "_"`),t.if((0, Se._)`typeof ${P}[${S}] == "number"`,()=>{t.assign(p,(0, Se._)`${P}[${S}]`),e.error(),t.assign(c,false).break();}).code((0, Se._)`${P}[${S}] = ${f}`);});}function h(f,p){let S=(0, Im.useFunc)(t,jm.default),b=t.name("outer");t.label(b).for((0, Se._)`;${f}--;`,()=>t.for((0, Se._)`${p} = ${f}; ${p}--;`,()=>t.if((0, Se._)`${S}(${r}[${f}], ${r}[${p}])`,()=>{e.error(),t.assign(c,false).break(b);})));}}};go.default=Om;});var Su=T(yo=>{Object.defineProperty(yo,"__esModule",{value:true});var ho=z(),Nm=Q(),qm=$n(),Fm={message:"must be equal to constant",params:({schemaCode:e})=>(0, ho._)`{allowedValue: ${e}}`},Dm={keyword:"const",$data:true,error:Fm,code(e){let{gen:t,data:r,$data:n,schemaCode:s,schema:o}=e;n||o&&typeof o=="object"?e.fail$data((0, ho._)`!${(0, Nm.useFunc)(t,qm.default)}(${r}, ${s})`):e.fail((0, ho._)`${o} !== ${r}`);}};yo.default=Dm;});var ku=T(vo=>{Object.defineProperty(vo,"__esModule",{value:true});var Or=z(),Mm=Q(),Lm=$n(),Vm={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0, Or._)`{allowedValues: ${e}}`},Bm={keyword:"enum",schemaType:"array",$data:true,error:Vm,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, Mm.useFunc)(t,Lm.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 h=t.const("vSchema",o);d=(0, Or.or)(...s.map((f,p)=>g(h,p)));}e.pass(d);function l(){t.assign(d,false),t.forOf("v",o,h=>t.if((0, Or._)`${u()}(${r}, ${h})`,()=>t.assign(d,true).break()));}function g(h,f){let p=s[f];return typeof p=="object"&&p!==null?(0, Or._)`${u()}(${r}, ${h}[${f}])`:(0, Or._)`${r} === ${p}`}}};vo.default=Bm;});var wu=T(So=>{Object.defineProperty(So,"__esModule",{value:true});var Km=uu(),Gm=cu(),Um=fu(),Jm=pu(),zm=mu(),Hm=gu(),Wm=hu(),Ym=vu(),Xm=Su(),Qm=ku(),Zm=[Km.default,Gm.default,Um.default,Jm.default,zm.default,Hm.default,Wm.default,Ym.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},Xm.default,Qm.default];So.default=Zm;});var wo=T(Nr=>{Object.defineProperty(Nr,"__esModule",{value:true});Nr.validateAdditionalItems=void 0;var Bt=z(),ko=Q(),eg={message:({params:{len:e}})=>(0, Bt.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0, Bt._)`{limit: ${e}}`},tg={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:eg,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0, ko.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}bu(e,n);}};function bu(e,t){let{gen:r,schema:n,data:s,keyword:o,it:a}=e;a.items=true;let i=r.const("len",(0, Bt._)`${s}.length`);if(n===false)e.setParams({len:t.length}),e.pass((0, Bt._)`${i} <= ${t.length}`);else if(typeof n=="object"&&!(0, ko.alwaysValidSchema)(a,n)){let u=r.var("valid",(0, Bt._)`${i} <= ${t.length}`);r.if((0, Bt.not)(u),()=>c(u)),e.ok(u);}function c(u){r.forRange("i",t.length,i,d=>{e.subschema({keyword:o,dataProp:d,dataPropType:ko.Type.Num},u),a.allErrors||r.if((0, Bt.not)(u),()=>r.break());});}}Nr.validateAdditionalItems=bu;Nr.default=tg;});var bo=T(qr=>{Object.defineProperty(qr,"__esModule",{value:true});qr.validateTuple=void 0;var _u=z(),En=Q(),rg=Ke(),ng={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return Ru(e,"additionalItems",t);r.items=true,!(0, En.alwaysValidSchema)(r,t)&&e.ok((0, rg.validateArray)(e));}};function Ru(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=En.mergeEvaluated.items(n,r.length,i.items));let c=n.name("valid"),u=n.const("len",(0, _u._)`${o}.length`);r.forEach((l,g)=>{(0, En.alwaysValidSchema)(i,l)||(n.if((0, _u._)`${u} > ${g}`,()=>e.subschema({keyword:a,schemaProp:g,dataProp:g},c)),e.ok(c));});function d(l){let{opts:g,errSchemaPath:h}=i,f=r.length,p=f===l.minItems&&(f===l.maxItems||l[t]===false);if(g.strictTuples&&!p){let S=`"${a}" is ${f}-tuple, but minItems or maxItems/${t} are not specified or different at path "${h}"`;(0, En.checkStrictMode)(i,S,g.strictTuples);}}}qr.validateTuple=Ru;qr.default=ng;});var Cu=T(_o=>{Object.defineProperty(_o,"__esModule",{value:true});var sg=bo(),og={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0, sg.validateTuple)(e,"items")};_o.default=og;});var Eu=T(Ro=>{Object.defineProperty(Ro,"__esModule",{value:true});var $u=z(),ag=Q(),ig=Ke(),ug=wo(),cg={message:({params:{len:e}})=>(0, $u.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0, $u._)`{limit: ${e}}`},dg={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:cg,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:s}=r;n.items=true,!(0, ag.alwaysValidSchema)(n,t)&&(s?(0, ug.validateAdditionalItems)(e,s):e.ok((0, ig.validateArray)(e)));}};Ro.default=dg;});var xu=T(Co=>{Object.defineProperty(Co,"__esModule",{value:true});var Ue=z(),xn=Q(),lg={message:({params:{min:e,max:t}})=>t===void 0?(0, Ue.str)`must contain at least ${e} valid item(s)`:(0, Ue.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0, Ue._)`{minContains: ${e}}`:(0, Ue._)`{minContains: ${e}, maxContains: ${t}}`},fg={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:true,error:lg,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, Ue._)`${s}.length`);if(e.setParams({min:a,max:i}),i===void 0&&a===0){(0, xn.checkStrictMode)(o,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(i!==void 0&&a>i){(0, xn.checkStrictMode)(o,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0, xn.alwaysValidSchema)(o,r)){let p=(0, Ue._)`${d} >= ${a}`;i!==void 0&&(p=(0, Ue._)`${p} && ${d} <= ${i}`),e.pass(p);return}o.items=true;let l=t.name("valid");i===void 0&&a===1?h(l,()=>t.if(l,()=>t.break())):a===0?(t.let(l,true),i!==void 0&&t.if((0, Ue._)`${s}.length > 0`,g)):(t.let(l,false),g()),e.result(l,()=>e.reset());function g(){let p=t.name("_valid"),S=t.let("count",0);h(p,()=>t.if(p,()=>f(S)));}function h(p,S){t.forRange("i",0,d,b=>{e.subschema({keyword:"contains",dataProp:b,dataPropType:xn.Type.Num,compositeRule:true},p),S();});}function f(p){t.code((0, Ue._)`${p}++`),i===void 0?t.if((0, Ue._)`${p} >= ${a}`,()=>t.assign(l,true).break()):(t.if((0, Ue._)`${p} > ${i}`,()=>t.assign(l,false).break()),a===1?t.assign(l,true):t.if((0, Ue._)`${p} >= ${a}`,()=>t.assign(l,true)));}}};Co.default=fg;});var Iu=T(nt=>{Object.defineProperty(nt,"__esModule",{value:true});nt.validateSchemaDeps=nt.validatePropertyDeps=nt.error=void 0;var $o=z(),pg=Q(),Fr=Ke();nt.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return (0, $o.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0, $o._)`{property: ${e},
|
|
6
6
|
missingProperty: ${n},
|
|
7
7
|
depsCount: ${t},
|
|
8
|
-
deps: ${r}}`};var lg={keyword:"dependencies",type:"object",schemaType:"object",error:et.error,code(e){let[t,r]=fg(e);xu(e,t),Au(e,r);}};function fg({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 xu(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, Nr.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, Nr.checkReportMissingProp)(e,u);}):(r.if((0, Co._)`${c} && (${(0, Nr.checkMissingProp)(e,i,o)})`),(0, Nr.reportMissingProp)(e,o),r.else());}}et.validatePropertyDeps=xu;function Au(e,t=e.schema){let{gen:r,data:n,keyword:s,it:o}=e,a=r.name("valid");for(let i in t)(0, dg.alwaysValidSchema)(o,t[i])||(r.if((0, Nr.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));}et.validateSchemaDeps=Au;et.default=lg;});var Pu=T($o=>{Object.defineProperty($o,"__esModule",{value:true});var Iu=U(),pg=Q(),mg={message:"property name must be valid",params:({params:e})=>(0, Iu._)`{propertyName: ${e.propertyName}}`},gg={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:mg,code(e){let{gen:t,schema:r,data:n,it:s}=e;if((0, pg.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, Iu.not)(o),()=>{e.error(true),s.allErrors||t.break();});}),e.ok(o);}};$o.default=gg;});var xo=T(Eo=>{Object.defineProperty(Eo,"__esModule",{value:true});var En=Le(),Ye=U(),hg=ot(),xn=Q(),yg={message:"must NOT have additional properties",params:({params:e})=>(0, Ye._)`{additionalProperty: ${e.additionalProperty}}`},vg={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:true,trackErrors:true,error:yg,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, xn.alwaysValidSchema)(a,r))return;let u=(0, En.allSchemaProperties)(n.properties),d=(0, En.allSchemaProperties)(n.patternProperties);l(),e.ok((0, Ye._)`${o} === ${hg.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 b;if(u.length>8){let j=(0, xn.schemaRefOrVal)(a,n.properties,"properties");b=(0, En.isOwnProperty)(t,j,S);}else u.length?b=(0, Ye.or)(...u.map(j=>(0, Ye._)`${S} === ${j}`)):b=Ye.nil;return d.length&&(b=(0, Ye.or)(b,...d.map(j=>(0, Ye._)`${(0, En.usePattern)(e,j)}.test(${S})`))),(0, Ye.not)(b)}function h(S){t.code((0, Ye._)`delete ${s}[${S}]`);}function f(S){if(c.removeAdditional==="all"||c.removeAdditional&&r===false){h(S);return}if(r===false){e.setParams({additionalProperty:S}),e.error(),i||t.break();return}if(typeof r=="object"&&!(0, xn.alwaysValidSchema)(a,r)){let b=t.name("valid");c.removeAdditional==="failing"?(p(S,b,false),t.if((0, Ye.not)(b),()=>{e.reset(),h(S);})):(p(S,b),i||t.if((0, Ye.not)(b),()=>t.break()));}}function p(S,b,j){let w={keyword:"additionalProperties",dataProp:S,dataPropType:xn.Type.Str};j===false&&Object.assign(w,{compositeRule:true,createErrors:false,allErrors:false}),e.subschema(w,b);}}};Eo.default=vg;});var Nu=T(To=>{Object.defineProperty(To,"__esModule",{value:true});var Sg=wr(),ju=Le(),Ao=Q(),Ou=xo(),kg={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&&Ou.default.code(new Sg.KeywordCxt(o,Ou.default,"additionalProperties"));let a=(0, ju.allSchemaProperties)(r);for(let l of a)o.definedProperties.add(l);o.opts.unevaluated&&a.length&&o.props!==true&&(o.props=Ao.mergeEvaluated.props(t,(0, Ao.toHash)(a),o.props));let i=a.filter(l=>!(0, Ao.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, ju.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);}}};To.default=kg;});var Mu=T(Io=>{Object.defineProperty(Io,"__esModule",{value:true});var qu=Le(),An=U(),Fu=Q(),Du=Q(),wg={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, qu.allSchemaProperties)(r),c=i.filter(p=>(0, Fu.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 An.Name)&&(o.props=(0, Du.evaluatedPropsToName)(t,o.props));let{props:l}=o;m();function m(){for(let p of i)u&&h(p),o.allErrors?f(p):(t.var(d,true),f(p),t.if(d));}function h(p){for(let S in u)new RegExp(p).test(S)&&(0, Fu.checkStrictMode)(o,`property ${S} matches pattern ${p} (use allowMatchingProperties)`);}function f(p){t.forIn("key",n,S=>{t.if((0, An._)`${(0, qu.usePattern)(e,p)}.test(${S})`,()=>{let b=c.includes(p);b||e.subschema({keyword:"patternProperties",schemaProp:p,dataProp:S,dataPropType:Du.Type.Str},d),o.opts.unevaluated&&l!==true?t.assign((0, An._)`${l}[${S}]`,true):!b&&!o.allErrors&&t.if((0, An.not)(d),()=>t.break());});});}}};Io.default=wg;});var Lu=T(Po=>{Object.defineProperty(Po,"__esModule",{value:true});var bg=Q(),_g={keyword:"not",schemaType:["object","boolean"],trackErrors:true,code(e){let{gen:t,schema:r,it:n}=e;if((0, bg.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"}};Po.default=_g;});var Vu=T(jo=>{Object.defineProperty(jo,"__esModule",{value:true});var Rg=Le(),Cg={keyword:"anyOf",schemaType:"array",trackErrors:true,code:Rg.validateUnion,error:{message:"must match a schema in anyOf"}};jo.default=Cg;});var Bu=T(Oo=>{Object.defineProperty(Oo,"__esModule",{value:true});var Tn=U(),$g=Q(),Eg={message:"must match exactly one schema in oneOf",params:({params:e})=>(0, Tn._)`{passingSchemas: ${e.passing}}`},xg={keyword:"oneOf",schemaType:"array",trackErrors:true,error:Eg,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, $g.alwaysValidSchema)(s,d)?t.var(c,true):m=e.subschema({keyword:"oneOf",schemaProp:l,compositeRule:true},c),l>0&&t.if((0, Tn._)`${c} && ${a}`).assign(a,false).assign(i,(0, Tn._)`[${i}, ${l}]`).else(),t.if(c,()=>{t.assign(a,true),t.assign(i,l),m&&e.mergeEvaluated(m,Tn.Name);});});}}};Oo.default=xg;});var Ku=T(No=>{Object.defineProperty(No,"__esModule",{value:true});var Ag=Q(),Tg={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, Ag.alwaysValidSchema)(n,o))return;let i=e.subschema({keyword:"allOf",schemaProp:a},s);e.ok(s),e.mergeEvaluated(i);});}};No.default=Tg;});var Ju=T(qo=>{Object.defineProperty(qo,"__esModule",{value:true});var In=U(),Uu=Q(),Ig={message:({params:e})=>(0, In.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0, In._)`{failingKeyword: ${e.ifClause}}`},Pg={keyword:"if",schemaType:["object","boolean"],trackErrors:true,error:Ig,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0, Uu.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=Gu(n,"then"),o=Gu(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, In.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, In._)`${d}`):e.setParams({ifClause:d});}}}};function Gu(e,t){let r=e.schema[t];return r!==void 0&&!(0, Uu.alwaysValidSchema)(e,r)}qo.default=Pg;});var zu=T(Fo=>{Object.defineProperty(Fo,"__esModule",{value:true});var jg=Q(),Og={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0, jg.checkStrictMode)(r,`"${e}" without "if" is ignored`);}};Fo.default=Og;});var Hu=T(Do=>{Object.defineProperty(Do,"__esModule",{value:true});var Ng=ko(),qg=Ru(),Fg=wo(),Dg=$u(),Mg=Eu(),Lg=Tu(),Vg=Pu(),Bg=xo(),Kg=Nu(),Gg=Mu(),Ug=Lu(),Jg=Vu(),zg=Bu(),Hg=Ku(),Wg=Ju(),Yg=zu();function Xg(e=false){let t=[Ug.default,Jg.default,zg.default,Hg.default,Wg.default,Yg.default,Vg.default,Bg.default,Lg.default,Kg.default,Gg.default];return e?t.push(qg.default,Dg.default):t.push(Ng.default,Fg.default),t.push(Mg.default),t}Do.default=Xg;});var Wu=T(Mo=>{Object.defineProperty(Mo,"__esModule",{value:true});var le=U(),Qg={message:({schemaCode:e})=>(0, le.str)`must match format "${e}"`,params:({schemaCode:e})=>(0, le._)`{format: ${e}}`},Zg={keyword:"format",type:["number","string"],schemaType:"string",$data:true,error:Qg,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():h();function m(){let f=r.scopeValue("formats",{ref:l.formats,code:c.code.formats}),p=r.const("fDef",(0, le._)`${f}[${a}]`),S=r.let("fType"),b=r.let("format");r.if((0, le._)`typeof ${p} == "object" && !(${p} instanceof RegExp)`,()=>r.assign(S,(0, le._)`${p}.type || "string"`).assign(b,(0, le._)`${p}.validate`),()=>r.assign(S,(0, le._)`"string"`).assign(b,p)),e.fail$data((0, le.or)(j(),w()));function j(){return c.strictSchema===false?le.nil:(0, le._)`${a} && !${b}`}function w(){let E=d.$async?(0, le._)`(${p}.async ? await ${b}(${n}) : ${b}(${n}))`:(0, le._)`${b}(${n})`,y=(0, le._)`(typeof ${b} == "function" ? ${E} : ${b}.test(${n}))`;return (0, le._)`${b} && ${b} !== true && ${S} === ${t} && !${y}`}}function h(){let f=l.formats[o];if(!f){j();return}if(f===true)return;let[p,S,b]=w(f);p===t&&e.pass(E());function j(){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 w(y){let v=y instanceof RegExp?(0, le.regexpCode)(y):c.code.formats?(0, le._)`${c.code.formats}${(0, le.getProperty)(o)}`:void 0,k=r.scopeValue("formats",{key:o,ref:y,code:v});return typeof y=="object"&&!(y instanceof RegExp)?[y.type||"string",y.validate,(0, le._)`${k}.validate`]:["string",y,k]}function E(){if(typeof f=="object"&&!(f instanceof RegExp)&&f.async){if(!d.$async)throw new Error("async format in sync schema");return (0, le._)`await ${b}(${n})`}return typeof S=="function"?(0, le._)`${b}(${n})`:(0, le._)`${b}.test(${n})`}}}};Mo.default=Zg;});var Yu=T(Lo=>{Object.defineProperty(Lo,"__esModule",{value:true});var eh=Wu(),th=[eh.default];Lo.default=th;});var Xu=T(nr=>{Object.defineProperty(nr,"__esModule",{value:true});nr.contentVocabulary=nr.metadataVocabulary=void 0;nr.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];nr.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"];});var Zu=T(Vo=>{Object.defineProperty(Vo,"__esModule",{value:true});var rh=au(),nh=ku(),sh=Hu(),oh=Yu(),Qu=Xu(),ah=[rh.default,nh.default,(0, sh.default)(),oh.default,Qu.metadataVocabulary,Qu.contentVocabulary];Vo.default=ah;});var tc=T(Pn=>{Object.defineProperty(Pn,"__esModule",{value:true});Pn.DiscrError=void 0;var ec;(function(e){e.Tag="tag",e.Mapping="mapping";})(ec||(Pn.DiscrError=ec={}));});var nc=T(Ko=>{Object.defineProperty(Ko,"__esModule",{value:true});var sr=U(),Bo=tc(),rc=mn(),ih=br(),uh=Q(),ch={message:({params:{discrError:e,tagName:t}})=>e===Bo.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0, sr._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},dh={keyword:"discriminator",type:"object",schemaType:"object",error:ch,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, sr._)`${r}${(0, sr.getProperty)(i)}`);t.if((0, sr._)`typeof ${u} == "string"`,()=>d(),()=>e.error(false,{discrError:Bo.DiscrError.Tag,tag:u,tagName:i})),e.ok(c);function d(){let h=m();t.if(false);for(let f in h)t.elseIf((0, sr._)`${u} === ${f}`),t.assign(c,l(h[f]));t.else(),e.error(false,{discrError:Bo.DiscrError.Mapping,tag:u,tagName:i}),t.endIf();}function l(h){let f=t.name("valid"),p=e.subschema({keyword:"oneOf",schemaProp:h},f);return e.mergeEvaluated(p,sr.Name),f}function m(){var h;let f={},p=b(s),S=true;for(let E=0;E<a.length;E++){let y=a[E];if(y?.$ref&&!(0, uh.schemaHasRulesButRef)(y,o.self.RULES)){let k=y.$ref;if(y=rc.resolveRef.call(o.self,o.schemaEnv.root,o.baseId,k),y instanceof rc.SchemaEnv&&(y=y.schema),y===void 0)throw new ih.default(o.opts.uriResolver,o.baseId,k)}let v=(h=y?.properties)===null||h===void 0?void 0:h[i];if(typeof v!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${i}"`);S=S&&(p||b(y)),j(v,E);}if(!S)throw new Error(`discriminator: "${i}" must be required`);return f;function b({required:E}){return Array.isArray(E)&&E.includes(i)}function j(E,y){if(E.const)w(E.const,y);else if(E.enum)for(let v of E.enum)w(v,y);else throw new Error(`discriminator: "properties/${i}" must have "const" or "enum"`)}function w(E,y){if(typeof E!="string"||E in f)throw new Error(`discriminator: "${i}" values must be unique strings`);f[E]=y;}}}};Ko.default=dh;});var sc=T((lS,lh)=>{lh.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 ac=T((ue,Go)=>{Object.defineProperty(ue,"__esModule",{value:true});ue.MissingRefError=ue.ValidationError=ue.CodeGen=ue.Name=ue.nil=ue.stringify=ue.str=ue._=ue.KeywordCxt=ue.Ajv=void 0;var fh=eu(),ph=Zu(),mh=nc(),oc=sc(),gh=["/properties"],jn="http://json-schema.org/draft-07/schema",or=class extends fh.default{_addVocabularies(){super._addVocabularies(),ph.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(mh.default);}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(oc,gh):oc;this.addMetaSchema(t,jn,false),this.refs["http://json-schema.org/schema"]=jn;}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(jn)?jn:void 0)}};ue.Ajv=or;Go.exports=ue=or;Go.exports.Ajv=or;Object.defineProperty(ue,"__esModule",{value:true});ue.default=or;var hh=wr();Object.defineProperty(ue,"KeywordCxt",{enumerable:true,get:function(){return hh.KeywordCxt}});var ar=U();Object.defineProperty(ue,"_",{enumerable:true,get:function(){return ar._}});Object.defineProperty(ue,"str",{enumerable:true,get:function(){return ar.str}});Object.defineProperty(ue,"stringify",{enumerable:true,get:function(){return ar.stringify}});Object.defineProperty(ue,"nil",{enumerable:true,get:function(){return ar.nil}});Object.defineProperty(ue,"Name",{enumerable:true,get:function(){return ar.Name}});Object.defineProperty(ue,"CodeGen",{enumerable:true,get:function(){return ar.CodeGen}});var yh=fn();Object.defineProperty(ue,"ValidationError",{enumerable:true,get:function(){return yh.default}});var vh=br();Object.defineProperty(ue,"MissingRefError",{enumerable:true,get:function(){return vh.default}});});var Kr="b64:";function dd(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 ld(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 `${Kr}${dd(JSON.stringify(e))}`}function Ge(e){if(!e.startsWith(Kr))throw new Error(`Invalid ref format (expected ${Kr}<base64url(json)>): ${e}`);let t;try{t=JSON.parse(ld(e.slice(Kr.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 ia(e,t,r){let n=e.tryAcquire();if(!n)return false;try{await t();}finally{n();}return r?.(),true}function xe(...e){return X__namespace.join(...e)}function la(e){return X__namespace.isAbsolute(e)}function Hn(){return crypto.randomUUID()}function fa(e){return crypto.createHash("sha256").update(e).digest("hex")}function pa(e){return X__namespace.dirname(url.fileURLToPath(e))}function yd(e){if(typeof e=="object"&&e!==null){let{command:r,args:n=[],...s}=e,o=ca(r,n);return {...s,command:o.command,args:o.args}}let t=ma(e);if(t.length===0)throw new Error(`Empty command spec: ${JSON.stringify(e)}`);return ca(t[0],t.slice(1))}function ca(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 ma(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 Wn(e){return process.platform==="win32"&&/\.(cmd|bat)$/i.test(e)}function ga(e,t){let{command:r,args:n=[],cwd:s,env:o,timeoutMs:a}=e;return child_process.execFileSync(r,n,{shell:Wn(r),timeout:a,encoding:t?.encoding??"utf-8",cwd:s,windowsHide:true,env:o?{...process.env,...o}:void 0,input:t?.input})}function vd(e,t){let{command:r,args:n=[],cwd:s,env:o,timeoutMs:a=3e4}=e;child_process.execFile(r,n,{shell:Wn(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));}X__namespace.join(zn__namespace.tmpdir(),".board-live-cards-git-bash-cache.json");function Ur(e){let{command:t,args:r=[]}=e;if(process.platform==="win32"){child_process.spawn(t,r,{stdio:"ignore",windowsHide:true,shell:Wn(t)}).unref();return}child_process.spawn(t,r,{detached:true,stdio:"ignore"}).unref();}function Yn(e,t,r){let n=X__namespace.join(e,"board-live-cards-cli.js");if(___namespace.existsSync(n))return {cmd:process.execPath,args:[n,t,...r]};let s=X__namespace.join(e,"board-live-cards-cli.ts"),a=[X__namespace.join(e,"..","..","..","node_modules","tsx","dist","cli.mjs"),X__namespace.join(e,"..","..","node_modules","tsx","dist","cli.mjs"),X__namespace.join(e,"..","..","..","node_modules",".bin","tsx"),X__namespace.join(e,"..","..","node_modules",".bin","tsx")].find(c=>___namespace.existsSync(c));return ___namespace.existsSync(s)&&___namespace.existsSync(a)?{cmd:process.execPath,args:[a,s,t,...r]}:{cmd:process.platform==="win32"?"npx.cmd":"npx",args:["tsx",s,t,...r]}}function Xn(e){let t=X__namespace.join(e,"board-live-cards-cli.mjs");if(___namespace.existsSync(t))return t;let r=X__namespace.join(e,"..","..","..","dev","board-live-cards-cli.js");if(___namespace.existsSync(r))return r;let n=X__namespace.join(e,"..","..","dev","board-live-cards-cli.js");if(___namespace.existsSync(n))return n;let s=X__namespace.join(e,"board-live-cards-cli.js");if(___namespace.existsSync(s))return s;throw new Error(`resolveBoardCliCallbackTarget: cannot find callback target in ${e} (expected dev/board-live-cards-cli.js wrapper, ${s}, or ${t})`)}function ha(e,t,r){let n=["--base-ref",oe(t)];r&&n.push("--notify-channel",r);let{cmd:s,args:o}=Yn(e,"process-accumulated-events",n);Ur({command:s,args:o});}function Sd(e){return process.platform==="win32"?`\\\\.\\pipe\\${e}`:X__namespace.join(zn__namespace.tmpdir(),`${e}.sock`)}var Gr=new Map;function ya(e,t,r){if(t.length===0)return;let n=t.map(i=>JSON.stringify(i)).join(`
|
|
8
|
+
deps: ${r}}`};var mg={keyword:"dependencies",type:"object",schemaType:"object",error:nt.error,code(e){let[t,r]=gg(e);Au(e,t),Tu(e,r);}};function gg({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 Au(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, Fr.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, Fr.checkReportMissingProp)(e,u);}):(r.if((0, $o._)`${c} && (${(0, Fr.checkMissingProp)(e,i,o)})`),(0, Fr.reportMissingProp)(e,o),r.else());}}nt.validatePropertyDeps=Au;function Tu(e,t=e.schema){let{gen:r,data:n,keyword:s,it:o}=e,a=r.name("valid");for(let i in t)(0, pg.alwaysValidSchema)(o,t[i])||(r.if((0, Fr.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));}nt.validateSchemaDeps=Tu;nt.default=mg;});var Pu=T(Eo=>{Object.defineProperty(Eo,"__esModule",{value:true});var ju=z(),hg=Q(),yg={message:"property name must be valid",params:({params:e})=>(0, ju._)`{propertyName: ${e.propertyName}}`},vg={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:yg,code(e){let{gen:t,schema:r,data:n,it:s}=e;if((0, hg.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, ju.not)(o),()=>{e.error(true),s.allErrors||t.break();});}),e.ok(o);}};Eo.default=vg;});var Ao=T(xo=>{Object.defineProperty(xo,"__esModule",{value:true});var An=Ke(),Ze=z(),Sg=dt(),Tn=Q(),kg={message:"must NOT have additional properties",params:({params:e})=>(0, Ze._)`{additionalProperty: ${e.additionalProperty}}`},wg={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:true,trackErrors:true,error:kg,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, Tn.alwaysValidSchema)(a,r))return;let u=(0, An.allSchemaProperties)(n.properties),d=(0, An.allSchemaProperties)(n.patternProperties);l(),e.ok((0, Ze._)`${o} === ${Sg.default.errors}`);function l(){t.forIn("key",s,S=>{!u.length&&!d.length?f(S):t.if(g(S),()=>f(S));});}function g(S){let b;if(u.length>8){let P=(0, Tn.schemaRefOrVal)(a,n.properties,"properties");b=(0, An.isOwnProperty)(t,P,S);}else u.length?b=(0, Ze.or)(...u.map(P=>(0, Ze._)`${S} === ${P}`)):b=Ze.nil;return d.length&&(b=(0, Ze.or)(b,...d.map(P=>(0, Ze._)`${(0, An.usePattern)(e,P)}.test(${S})`))),(0, Ze.not)(b)}function h(S){t.code((0, Ze._)`delete ${s}[${S}]`);}function f(S){if(c.removeAdditional==="all"||c.removeAdditional&&r===false){h(S);return}if(r===false){e.setParams({additionalProperty:S}),e.error(),i||t.break();return}if(typeof r=="object"&&!(0, Tn.alwaysValidSchema)(a,r)){let b=t.name("valid");c.removeAdditional==="failing"?(p(S,b,false),t.if((0, Ze.not)(b),()=>{e.reset(),h(S);})):(p(S,b),i||t.if((0, Ze.not)(b),()=>t.break()));}}function p(S,b,P){let w={keyword:"additionalProperties",dataProp:S,dataPropType:Tn.Type.Str};P===false&&Object.assign(w,{compositeRule:true,createErrors:false,allErrors:false}),e.subschema(w,b);}}};xo.default=wg;});var qu=T(Io=>{Object.defineProperty(Io,"__esModule",{value:true});var bg=_r(),Ou=Ke(),To=Q(),Nu=Ao(),_g={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&&Nu.default.code(new bg.KeywordCxt(o,Nu.default,"additionalProperties"));let a=(0, Ou.allSchemaProperties)(r);for(let l of a)o.definedProperties.add(l);o.opts.unevaluated&&a.length&&o.props!==true&&(o.props=To.mergeEvaluated.props(t,(0, To.toHash)(a),o.props));let i=a.filter(l=>!(0, To.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, Ou.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);}}};Io.default=_g;});var Lu=T(jo=>{Object.defineProperty(jo,"__esModule",{value:true});var Fu=Ke(),In=z(),Du=Q(),Mu=Q(),Rg={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, Fu.allSchemaProperties)(r),c=i.filter(p=>(0, Du.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 In.Name)&&(o.props=(0, Mu.evaluatedPropsToName)(t,o.props));let{props:l}=o;g();function g(){for(let p of i)u&&h(p),o.allErrors?f(p):(t.var(d,true),f(p),t.if(d));}function h(p){for(let S in u)new RegExp(p).test(S)&&(0, Du.checkStrictMode)(o,`property ${S} matches pattern ${p} (use allowMatchingProperties)`);}function f(p){t.forIn("key",n,S=>{t.if((0, In._)`${(0, Fu.usePattern)(e,p)}.test(${S})`,()=>{let b=c.includes(p);b||e.subschema({keyword:"patternProperties",schemaProp:p,dataProp:S,dataPropType:Mu.Type.Str},d),o.opts.unevaluated&&l!==true?t.assign((0, In._)`${l}[${S}]`,true):!b&&!o.allErrors&&t.if((0, In.not)(d),()=>t.break());});});}}};jo.default=Rg;});var Vu=T(Po=>{Object.defineProperty(Po,"__esModule",{value:true});var Cg=Q(),$g={keyword:"not",schemaType:["object","boolean"],trackErrors:true,code(e){let{gen:t,schema:r,it:n}=e;if((0, Cg.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"}};Po.default=$g;});var Bu=T(Oo=>{Object.defineProperty(Oo,"__esModule",{value:true});var Eg=Ke(),xg={keyword:"anyOf",schemaType:"array",trackErrors:true,code:Eg.validateUnion,error:{message:"must match a schema in anyOf"}};Oo.default=xg;});var Ku=T(No=>{Object.defineProperty(No,"__esModule",{value:true});var jn=z(),Ag=Q(),Tg={message:"must match exactly one schema in oneOf",params:({params:e})=>(0, jn._)`{passingSchemas: ${e.passing}}`},Ig={keyword:"oneOf",schemaType:"array",trackErrors:true,error:Tg,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 g;(0, Ag.alwaysValidSchema)(s,d)?t.var(c,true):g=e.subschema({keyword:"oneOf",schemaProp:l,compositeRule:true},c),l>0&&t.if((0, jn._)`${c} && ${a}`).assign(a,false).assign(i,(0, jn._)`[${i}, ${l}]`).else(),t.if(c,()=>{t.assign(a,true),t.assign(i,l),g&&e.mergeEvaluated(g,jn.Name);});});}}};No.default=Ig;});var Gu=T(qo=>{Object.defineProperty(qo,"__esModule",{value:true});var jg=Q(),Pg={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, jg.alwaysValidSchema)(n,o))return;let i=e.subschema({keyword:"allOf",schemaProp:a},s);e.ok(s),e.mergeEvaluated(i);});}};qo.default=Pg;});var zu=T(Fo=>{Object.defineProperty(Fo,"__esModule",{value:true});var Pn=z(),Ju=Q(),Og={message:({params:e})=>(0, Pn.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0, Pn._)`{failingKeyword: ${e.ifClause}}`},Ng={keyword:"if",schemaType:["object","boolean"],trackErrors:true,error:Og,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0, Ju.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=Uu(n,"then"),o=Uu(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, Pn.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 g=e.subschema({keyword:d},i);t.assign(a,i),e.mergeValidEvaluated(g,a),l?t.assign(l,(0, Pn._)`${d}`):e.setParams({ifClause:d});}}}};function Uu(e,t){let r=e.schema[t];return r!==void 0&&!(0, Ju.alwaysValidSchema)(e,r)}Fo.default=Ng;});var Hu=T(Do=>{Object.defineProperty(Do,"__esModule",{value:true});var qg=Q(),Fg={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0, qg.checkStrictMode)(r,`"${e}" without "if" is ignored`);}};Do.default=Fg;});var Wu=T(Mo=>{Object.defineProperty(Mo,"__esModule",{value:true});var Dg=wo(),Mg=Cu(),Lg=bo(),Vg=Eu(),Bg=xu(),Kg=Iu(),Gg=Pu(),Ug=Ao(),Jg=qu(),zg=Lu(),Hg=Vu(),Wg=Bu(),Yg=Ku(),Xg=Gu(),Qg=zu(),Zg=Hu();function eh(e=false){let t=[Hg.default,Wg.default,Yg.default,Xg.default,Qg.default,Zg.default,Gg.default,Ug.default,Kg.default,Jg.default,zg.default];return e?t.push(Mg.default,Vg.default):t.push(Dg.default,Lg.default),t.push(Bg.default),t}Mo.default=eh;});var Yu=T(Lo=>{Object.defineProperty(Lo,"__esModule",{value:true});var le=z(),th={message:({schemaCode:e})=>(0, le.str)`must match format "${e}"`,params:({schemaCode:e})=>(0, le._)`{format: ${e}}`},rh={keyword:"format",type:["number","string"],schemaType:"string",$data:true,error:th,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?g():h();function g(){let f=r.scopeValue("formats",{ref:l.formats,code:c.code.formats}),p=r.const("fDef",(0, le._)`${f}[${a}]`),S=r.let("fType"),b=r.let("format");r.if((0, le._)`typeof ${p} == "object" && !(${p} instanceof RegExp)`,()=>r.assign(S,(0, le._)`${p}.type || "string"`).assign(b,(0, le._)`${p}.validate`),()=>r.assign(S,(0, le._)`"string"`).assign(b,p)),e.fail$data((0, le.or)(P(),w()));function P(){return c.strictSchema===false?le.nil:(0, le._)`${a} && !${b}`}function w(){let x=d.$async?(0, le._)`(${p}.async ? await ${b}(${n}) : ${b}(${n}))`:(0, le._)`${b}(${n})`,y=(0, le._)`(typeof ${b} == "function" ? ${x} : ${b}.test(${n}))`;return (0, le._)`${b} && ${b} !== true && ${S} === ${t} && !${y}`}}function h(){let f=l.formats[o];if(!f){P();return}if(f===true)return;let[p,S,b]=w(f);p===t&&e.pass(x());function P(){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 w(y){let v=y instanceof RegExp?(0, le.regexpCode)(y):c.code.formats?(0, le._)`${c.code.formats}${(0, le.getProperty)(o)}`:void 0,k=r.scopeValue("formats",{key:o,ref:y,code:v});return typeof y=="object"&&!(y instanceof RegExp)?[y.type||"string",y.validate,(0, le._)`${k}.validate`]:["string",y,k]}function x(){if(typeof f=="object"&&!(f instanceof RegExp)&&f.async){if(!d.$async)throw new Error("async format in sync schema");return (0, le._)`await ${b}(${n})`}return typeof S=="function"?(0, le._)`${b}(${n})`:(0, le._)`${b}.test(${n})`}}}};Lo.default=rh;});var Xu=T(Vo=>{Object.defineProperty(Vo,"__esModule",{value:true});var nh=Yu(),sh=[nh.default];Vo.default=sh;});var Qu=T(or=>{Object.defineProperty(or,"__esModule",{value:true});or.contentVocabulary=or.metadataVocabulary=void 0;or.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];or.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"];});var ec=T(Bo=>{Object.defineProperty(Bo,"__esModule",{value:true});var oh=iu(),ah=wu(),ih=Wu(),uh=Xu(),Zu=Qu(),ch=[oh.default,ah.default,(0, ih.default)(),uh.default,Zu.metadataVocabulary,Zu.contentVocabulary];Bo.default=ch;});var rc=T(On=>{Object.defineProperty(On,"__esModule",{value:true});On.DiscrError=void 0;var tc;(function(e){e.Tag="tag",e.Mapping="mapping";})(tc||(On.DiscrError=tc={}));});var sc=T(Go=>{Object.defineProperty(Go,"__esModule",{value:true});var ar=z(),Ko=rc(),nc=hn(),dh=Rr(),lh=Q(),fh={message:({params:{discrError:e,tagName:t}})=>e===Ko.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0, ar._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},ph={keyword:"discriminator",type:"object",schemaType:"object",error:fh,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, ar._)`${r}${(0, ar.getProperty)(i)}`);t.if((0, ar._)`typeof ${u} == "string"`,()=>d(),()=>e.error(false,{discrError:Ko.DiscrError.Tag,tag:u,tagName:i})),e.ok(c);function d(){let h=g();t.if(false);for(let f in h)t.elseIf((0, ar._)`${u} === ${f}`),t.assign(c,l(h[f]));t.else(),e.error(false,{discrError:Ko.DiscrError.Mapping,tag:u,tagName:i}),t.endIf();}function l(h){let f=t.name("valid"),p=e.subschema({keyword:"oneOf",schemaProp:h},f);return e.mergeEvaluated(p,ar.Name),f}function g(){var h;let f={},p=b(s),S=true;for(let x=0;x<a.length;x++){let y=a[x];if(y?.$ref&&!(0, lh.schemaHasRulesButRef)(y,o.self.RULES)){let k=y.$ref;if(y=nc.resolveRef.call(o.self,o.schemaEnv.root,o.baseId,k),y instanceof nc.SchemaEnv&&(y=y.schema),y===void 0)throw new dh.default(o.opts.uriResolver,o.baseId,k)}let v=(h=y?.properties)===null||h===void 0?void 0:h[i];if(typeof v!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${i}"`);S=S&&(p||b(y)),P(v,x);}if(!S)throw new Error(`discriminator: "${i}" must be required`);return f;function b({required:x}){return Array.isArray(x)&&x.includes(i)}function P(x,y){if(x.const)w(x.const,y);else if(x.enum)for(let v of x.enum)w(v,y);else throw new Error(`discriminator: "properties/${i}" must have "const" or "enum"`)}function w(x,y){if(typeof x!="string"||x in f)throw new Error(`discriminator: "${i}" values must be unique strings`);f[x]=y;}}}};Go.default=ph;});var oc=T((gS,mh)=>{mh.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 ic=T((ce,Uo)=>{Object.defineProperty(ce,"__esModule",{value:true});ce.MissingRefError=ce.ValidationError=ce.CodeGen=ce.Name=ce.nil=ce.stringify=ce.str=ce._=ce.KeywordCxt=ce.Ajv=void 0;var gh=tu(),hh=ec(),yh=sc(),ac=oc(),vh=["/properties"],Nn="http://json-schema.org/draft-07/schema",ir=class extends gh.default{_addVocabularies(){super._addVocabularies(),hh.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(yh.default);}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(ac,vh):ac;this.addMetaSchema(t,Nn,false),this.refs["http://json-schema.org/schema"]=Nn;}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Nn)?Nn:void 0)}};ce.Ajv=ir;Uo.exports=ce=ir;Uo.exports.Ajv=ir;Object.defineProperty(ce,"__esModule",{value:true});ce.default=ir;var Sh=_r();Object.defineProperty(ce,"KeywordCxt",{enumerable:true,get:function(){return Sh.KeywordCxt}});var ur=z();Object.defineProperty(ce,"_",{enumerable:true,get:function(){return ur._}});Object.defineProperty(ce,"str",{enumerable:true,get:function(){return ur.str}});Object.defineProperty(ce,"stringify",{enumerable:true,get:function(){return ur.stringify}});Object.defineProperty(ce,"nil",{enumerable:true,get:function(){return ur.nil}});Object.defineProperty(ce,"Name",{enumerable:true,get:function(){return ur.Name}});Object.defineProperty(ce,"CodeGen",{enumerable:true,get:function(){return ur.CodeGen}});var kh=mn();Object.defineProperty(ce,"ValidationError",{enumerable:true,get:function(){return kh.default}});var wh=Rr();Object.defineProperty(ce,"MissingRefError",{enumerable:true,get:function(){return wh.default}});});var Ur="b64:";function fd(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 pd(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 ne(e){return `${Ur}${fd(JSON.stringify(e))}`}function Me(e){if(!e.startsWith(Ur))throw new Error(`Invalid ref format (expected ${Ur}<base64url(json)>): ${e}`);let t;try{t=JSON.parse(pd(e.slice(Ur.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}}function zn(e){return ne({kind:"artifacts-store-entry",value:JSON.stringify({storeRef:e.storeRef,key:e.key})})}function md(e){let t=Me(e);if(t.kind!=="artifacts-store-entry")throw new Error(`Invalid artifact entry ref kind: ${t.kind}`);let r;try{r=JSON.parse(t.value);}catch{throw new Error(`Invalid artifact entry ref payload: ${e}`)}if(!r||typeof r!="object")throw new Error(`Invalid artifact entry ref payload: ${e}`);let n=r;if(typeof n.storeRef!="string"||typeof n.key!="string")throw new Error(`Invalid artifact entry ref payload: ${e}`);return {storeRef:n.storeRef,key:n.key}}async function ua(e,t,r){let n=e.tryAcquire();if(!n)return false;try{await t();}finally{n();}return r?.(),true}function Ie(...e){return X__namespace.join(...e)}function fa(e){return X__namespace.isAbsolute(e)}function Wn(){return crypto.randomUUID()}function pa(e){return crypto.createHash("sha256").update(e).digest("hex")}function ma(e){return X__namespace.dirname(url.fileURLToPath(e))}function kd(e){if(typeof e=="object"&&e!==null){let{command:r,args:n=[],...s}=e,o=da(r,n);return {...s,command:o.command,args:o.args}}let t=ga(e);if(t.length===0)throw new Error(`Empty command spec: ${JSON.stringify(e)}`);return da(t[0],t.slice(1))}function da(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 ga(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 Yn(e){return process.platform==="win32"&&/\.(cmd|bat)$/i.test(e)}function ha(e,t){let{command:r,args:n=[],cwd:s,env:o,timeoutMs:a}=e;return child_process.execFileSync(r,n,{shell:Yn(r),timeout:a,encoding:t?.encoding??"utf-8",cwd:s,windowsHide:true,env:o?{...process.env,...o}:void 0,input:t?.input})}function wd(e,t){let{command:r,args:n=[],cwd:s,env:o,timeoutMs:a=3e4}=e;child_process.execFile(r,n,{shell:Yn(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));}X__namespace.join(Hn__namespace.tmpdir(),".board-live-cards-git-bash-cache.json");function zr(e){let{command:t,args:r=[]}=e;if(process.platform==="win32"){child_process.spawn(t,r,{stdio:"ignore",windowsHide:true,shell:Yn(t)}).unref();return}child_process.spawn(t,r,{detached:true,stdio:"ignore"}).unref();}function Xn(e,t,r){let n=X__namespace.join(e,"board-live-cards-cli.js");if(___namespace.existsSync(n))return {cmd:process.execPath,args:[n,t,...r]};let s=X__namespace.join(e,"board-live-cards-cli.ts"),a=[X__namespace.join(e,"..","..","..","node_modules","tsx","dist","cli.mjs"),X__namespace.join(e,"..","..","node_modules","tsx","dist","cli.mjs"),X__namespace.join(e,"..","..","..","node_modules",".bin","tsx"),X__namespace.join(e,"..","..","node_modules",".bin","tsx")].find(c=>___namespace.existsSync(c));return ___namespace.existsSync(s)&&___namespace.existsSync(a)?{cmd:process.execPath,args:[a,s,t,...r]}:{cmd:process.platform==="win32"?"npx.cmd":"npx",args:["tsx",s,t,...r]}}function Qn(e){let t=X__namespace.join(e,"board-live-cards-cli.mjs");if(___namespace.existsSync(t))return t;let r=X__namespace.join(e,"..","..","..","dev","board-live-cards-cli.js");if(___namespace.existsSync(r))return r;let n=X__namespace.join(e,"..","..","dev","board-live-cards-cli.js");if(___namespace.existsSync(n))return n;let s=X__namespace.join(e,"board-live-cards-cli.js");if(___namespace.existsSync(s))return s;throw new Error(`resolveBoardCliCallbackTarget: cannot find callback target in ${e} (expected dev/board-live-cards-cli.js wrapper, ${s}, or ${t})`)}function ya(e,t,r){let n=["--base-ref",ne(t)];r&&n.push("--notify-channel",r);let{cmd:s,args:o}=Xn(e,"process-accumulated-events",n);zr({command:s,args:o});}function bd(e){return process.platform==="win32"?`\\\\.\\pipe\\${e}`:X__namespace.join(Hn__namespace.tmpdir(),`${e}.sock`)}var Jr=new Map;function va(e,t,r){if(t.length===0)return;let n=t.map(i=>JSON.stringify(i)).join(`
|
|
9
9
|
`)+`
|
|
10
|
-
`,s=Gr.get(e);if(s&&!s.socket.destroyed){s.ready?s.socket.write(n):s.queue.push(n);return}let o=Sd(e),a=da__namespace.createConnection(o);s={socket:a,ready:false,queue:[n]},Gr.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)}`),Gr.delete(e);}),a.on("close",()=>{Gr.delete(e);});}function Jr(){return {executeSync(e,t,r){return ga({command:e,args:t,cwd:r?.cwd,timeoutMs:r?.timeout,env:r?.env},{encoding:r?.encoding,input:r?.input})},executeAsync(e,t,r){vd({command:e,args:t},r);},resolveInvocation(e,t){let r=yd({command:e,args:t});return {cmd:r.command,args:r.args??[]}},splitCommand:ma,spawnDetached(e,t){Ur({command:e,args:t});}}}var Sa=X.dirname(url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('board-live-cards-node.cjs', document.baseURI).href)))),Rd=module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('board-live-cards-node.cjs', document.baseURI).href)));function Cd(){let e=X.resolve(Sa,"./jsonata-sync.cjs");return _.existsSync(e)?e:X.resolve(Sa,"../../card-compute/jsonata-sync.cjs")}var Et=Rd(Cd());function ir(e){e.registerFunction("fsPathRef",t=>oe({kind:"fs-path",value:String(t)}),"<s:s>");}function Qn(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=Et(o);ir(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=Et(e.stdinTemplate);ir(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=Et(e.urlTemplate);ir(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=Et(e.headerTemplate);ir(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=Et(e.bodyTemplate);ir(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 Ed=module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('board-live-cards-node.cjs', document.baseURI).href)));function xd(e){return typeof e=="object"?e:Ge(e)}function wa(e){let t=X__namespace.basename(String(e||"").trim());if(!t)throw new Error(`resolveYamlFlowCliPath: expected non-empty cli file name, got ${JSON.stringify(e)}`);let r=X__namespace.dirname(Ed.resolve("yaml-flow/package.json")),n=t.replace(/\.[^.]+$/,""),s=X__namespace.join(r,"cli","bundled",`${n}.mjs`);if(___namespace.existsSync(s))return s;let o=X__namespace.join(r,"cli","node",t);if(___namespace.existsSync(o))return o;throw new Error(`resolveYamlFlowCliPath: could not find ${t} under cli/bundled or cli/node in ${r}`)}function Je(e){let t=xd(e);return t.kind==="yaml-flow-cli"?wa(t.value):t.value}function Ad(e,t){let r=Je(e);switch(r){case "source-cli-task-executor":{let n=X__namespace.join(t,"source-cli-task-executor.js");if(___namespace.existsSync(n))return {command:process.execPath,args:[n]};let s=X__namespace.join(t,"source-cli-task-executor.ts"),o=X__namespace.join(t,"..","..","node_modules","tsx","dist","cli.mjs"),a=X__namespace.join(t,"..","..","node_modules",".bin","tsx"),i=___namespace.existsSync(o)?o:a;return ___namespace.existsSync(s)&&___namespace.existsSync(i)?{command:process.execPath,args:[i,s]}:{command:process.execPath,args:[n]}}case "board-live-cards":{let{cmd:n,args:s}=Yn(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 ba(e,t){if(e.howToRun==="built-in"){let{command:n,args:s}=Ad(e.whatToRun,t);return {command:n,baseArgs:s}}let r=(typeof e.whatToRun=="object",Je(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 Td(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 Id(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 zr(e,t){return ba(e,t)}function _a(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 Ra(e,t){return {...t,whatToRun:Je(e.whatToRun),...e.extra?{extra:e.extra}:{}}}function Zn(e,t,r="invokeExecutionRef"){return Qn(e,t,r)}function Ca(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 ft(e){return {result:"failure",data:{error:e}}}function lt(e,t,r){let n=r?.label??"invokeExecutionRefSync",s=r?.cliDir??r?.cwd??process.cwd(),o;try{o=Zn(e.argsMassaging,Ra(e,t),n);}catch(l){let m=l instanceof Error?l.message:String(l);return ft(m)}let a;try{a=zr(e,s);}catch(l){let m=l instanceof Error?l.message:String(l);return ft(`[${n}] ref resolution failed: ${m}`)}let i=[...a.baseArgs,...o.cmdArgs??[]],c=JSON.stringify(o.stdin??t),u=Jr(),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,h=(m.stderr?String(m.stderr):"").trim(),f=typeof m.status=="number"?m.status:"unknown",p=h||m.message;return ft(`[${n}] ref exited with status ${f}${p?`: ${p}`:""}`)}try{return Ca(_a(d))}catch{return {result:"success",data:{stdout:d.trim()}}}}async function ka(e,t,r){let n=r?.label??"invokeExecutionRef",s;try{s=Zn(e.argsMassaging,Ra(e,t),n);}catch(u){let d=u instanceof Error?u.message:String(u);return ft(d)}let o=Je(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 ft(`[${n}] HTTP ${u.status}${l?`: ${l}`:""}`)}let d=await u.text();if(!d.trim())return {result:"success",data:{}};try{return Ca(_a(d))}catch{return {result:"success",data:{stdout:d.trim()}}}}catch(u){let d=u instanceof Error?u.message:String(u);return ft(`[${n}] ${d}`)}}var Pd={"local-node":async(e,t,r)=>lt(e,t,r),"local-python":async(e,t,r)=>lt(e,t,r),"local-process":async(e,t,r)=>lt(e,t,r),"built-in":async(e,t,r)=>lt(e,t,r),"http:post":ka,"http:get":ka},jd={"local-node":lt,"local-python":lt,"local-process":lt,"built-in":lt};async function $a(e,t,r){let n=r?.transports?.[e.howToRun]??Pd[e.howToRun];return n?n(e,t,r):ft(`[${r?.label??"invokeExecutionRef"}] unsupported howToRun: ${e.howToRun}`)}function es(e,t,r){let n=r?.syncTransports?.[e.howToRun]??jd[e.howToRun];return n?n(e,t,r):ft(`[${r?.label??"invokeExecutionRefSync"}] unsupported sync howToRun: ${e.howToRun}`)}function Od(e){return {invoke(t,r){return $a(t,r,e)},invokeSync(t,r){return es(t,r,e)}}}function Nd(e,t,r){return es(e,t,r)}async function qd(e,t){let r={...t,whatToRun:Je(e.whatToRun)},n=Qn(e.argsMassaging,r,"_invokeTaskExecutorHttp"),s=n.url??Je(e.whatToRun),o=n.body?n.body:Id(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 Ea(e,t,r){if(e.howToRun==="http:post"||e.howToRun==="http:get"){qd(e,t).catch(i=>{console.error(`[dispatchTaskExecutorDetached] HTTP dispatch failed: ${i.message}`);});return}let{command:s,baseArgs:o}=ba(e,r),a=Td(t,e.extra);Ur({command:s,args:[...o,...a]});}function rt(e,t){if(process.platform!=="win32"){___namespace.renameSync(e,t);return}let r=[10,20,40,80,160];for(let n=0;n<=r.length;n++)try{___namespace.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 Ut(e){function t(s){return X__namespace.join(e,...s.split("/"))}function r(s){return X__namespace.relative(e,s).replace(/\\/g,"/")}function n(s,o){if(___namespace.existsSync(s))for(let a of ___namespace.readdirSync(s,{withFileTypes:true})){let i=X__namespace.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(!___namespace.existsSync(o))return null;try{return ___namespace.readFileSync(o,"utf-8")}catch{return null}},write(s,o){let a=t(s),i=`${a}.${process.pid}.${crypto.randomUUID()}.tmp`;___namespace.mkdirSync(X__namespace.dirname(a),{recursive:true}),___namespace.writeFileSync(i,o,"utf-8"),rt(i,a);},exists(s){return ___namespace.existsSync(t(s))},remove(s){let o=t(s);try{___namespace.existsSync(o)&&___namespace.unlinkSync(o);}catch{}},readBytes(s){let o=t(s);if(!___namespace.existsSync(o))return null;try{return new Uint8Array(___namespace.readFileSync(o))}catch{return null}},writeBytes(s,o){let a=t(s),i=`${a}.${process.pid}.${crypto.randomUUID()}.tmp`;___namespace.mkdirSync(X__namespace.dirname(a),{recursive:true}),___namespace.writeFileSync(i,Buffer.from(o)),rt(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(!___namespace.existsSync(o))return null;try{let a=___namespace.statSync(o);return {key:s,size:Number(a.size||0),updatedAt:new Date(a.mtimeMs).toISOString()}}catch{return null}},keyRef(s){return {kind:"fs-path",value:t(s)}}}}function ss(){return {read(e){if(!___namespace.existsSync(e))return null;try{return ___namespace.readFileSync(e,"utf-8")}catch{return null}},write(e,t){let r=`${e}.${process.pid}.${crypto.randomUUID()}.tmp`;___namespace.mkdirSync(X__namespace.dirname(e),{recursive:true}),___namespace.writeFileSync(r,t,"utf-8"),rt(r,e);},exists(e){return ___namespace.existsSync(e)},remove(e){try{___namespace.existsSync(e)&&___namespace.unlinkSync(e);}catch{}},readBytes(e){if(!___namespace.existsSync(e))return null;try{return new Uint8Array(___namespace.readFileSync(e))}catch{return null}},writeBytes(e,t){let r=`${e}.${process.pid}.${crypto.randomUUID()}.tmp`;___namespace.mkdirSync(X__namespace.dirname(e),{recursive:true}),___namespace.writeFileSync(r,Buffer.from(t)),rt(r,e);},stat(e){if(!___namespace.existsSync(e))return null;try{let t=___namespace.statSync(e);return {key:e,size:Number(t.size||0),updatedAt:new Date(t.mtimeMs).toISOString()}}catch{return null}},listKeys(e){return []}}}var ts="__scratch-marker",rs="__scratch-config.json",Md=1440*60*1e3,Ld=720*60*1e3,Vd=500;function xa(e,t){if(!e)return t;let r=e.replace(/[^A-Za-z0-9._-]/g,"_");return r.length>0?r:t}function Yr(e){___namespace.mkdirSync(e,{recursive:true});let t=X__namespace.join(e,ts),r=X__namespace.join(e,rs),n=!___namespace.existsSync(t);if(n)try{___namespace.writeFileSync(t,`scratch-store
|
|
10
|
+
`,s=Jr.get(e);if(s&&!s.socket.destroyed){s.ready?s.socket.write(n):s.queue.push(n);return}let o=bd(e),a=la__namespace.createConnection(o);s={socket:a,ready:false,queue:[n]},Jr.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)}`),Jr.delete(e);}),a.on("close",()=>{Jr.delete(e);});}function Hr(){return {executeSync(e,t,r){return ha({command:e,args:t,cwd:r?.cwd,timeoutMs:r?.timeout,env:r?.env},{encoding:r?.encoding,input:r?.input})},executeAsync(e,t,r){wd({command:e,args:t},r);},resolveInvocation(e,t){let r=kd({command:e,args:t});return {cmd:r.command,args:r.args??[]}},splitCommand:ga,spawnDetached(e,t){zr({command:e,args:t});}}}var ka=X.dirname(url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('board-live-cards-node.cjs', document.baseURI).href)))),Ed=module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('board-live-cards-node.cjs', document.baseURI).href)));function xd(){let e=X.resolve(ka,"./jsonata-sync.cjs");return _.existsSync(e)?e:X.resolve(ka,"../../card-compute/jsonata-sync.cjs")}var It=Ed(xd());function cr(e){e.registerFunction("fsPathRef",t=>ne({kind:"fs-path",value:String(t)}),"<s:s>");}function Zn(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=It(o);cr(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=It(e.stdinTemplate);cr(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=It(e.urlTemplate);cr(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=It(e.headerTemplate);cr(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=It(e.bodyTemplate);cr(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 Td=module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('board-live-cards-node.cjs', document.baseURI).href)));function Id(e){return typeof e=="object"?e:Me(e)}function ba(e){let t=X__namespace.basename(String(e||"").trim());if(!t)throw new Error(`resolveYamlFlowCliPath: expected non-empty cli file name, got ${JSON.stringify(e)}`);let r=X__namespace.dirname(Td.resolve("yaml-flow/package.json")),n=t.replace(/\.[^.]+$/,""),s=X__namespace.join(r,"cli","bundled",`${n}.mjs`);if(___namespace.existsSync(s))return s;let o=X__namespace.join(r,"cli","node",t);if(___namespace.existsSync(o))return o;throw new Error(`resolveYamlFlowCliPath: could not find ${t} under cli/bundled or cli/node in ${r}`)}function We(e){let t=Id(e);return t.kind==="yaml-flow-cli"?ba(t.value):t.value}function jd(e,t){let r=We(e);switch(r){case "source-cli-task-executor":{let n=X__namespace.join(t,"source-cli-task-executor.js");if(___namespace.existsSync(n))return {command:process.execPath,args:[n]};let s=X__namespace.join(t,"source-cli-task-executor.ts"),o=X__namespace.join(t,"..","..","node_modules","tsx","dist","cli.mjs"),a=X__namespace.join(t,"..","..","node_modules",".bin","tsx"),i=___namespace.existsSync(o)?o:a;return ___namespace.existsSync(s)&&___namespace.existsSync(i)?{command:process.execPath,args:[i,s]}:{command:process.execPath,args:[n]}}case "board-live-cards":{let{cmd:n,args:s}=Xn(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 _a(e,t){if(e.howToRun==="built-in"){let{command:n,args:s}=jd(e.whatToRun,t);return {command:n,baseArgs:s}}let r=(typeof e.whatToRun=="object",We(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 Pd(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 Od(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 Wr(e,t){return _a(e,t)}function Ra(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 Ca(e,t){return {...t,whatToRun:We(e.whatToRun),...e.extra?{extra:e.extra}:{}}}function es(e,t,r="invokeExecutionRef"){return Zn(e,t,r)}function $a(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 ht(e){return {result:"failure",data:{error:e}}}function gt(e,t,r){let n=r?.label??"invokeExecutionRefSync",s=r?.cliDir??r?.cwd??process.cwd(),o;try{o=es(e.argsMassaging,Ca(e,t),n);}catch(l){let g=l instanceof Error?l.message:String(l);return ht(g)}let a;try{a=Wr(e,s);}catch(l){let g=l instanceof Error?l.message:String(l);return ht(`[${n}] ref resolution failed: ${g}`)}let i=[...a.baseArgs,...o.cmdArgs??[]],c=JSON.stringify(o.stdin??t),u=Hr(),d;try{d=u.executeSync(a.command,i,{timeout:r?.timeoutMs??3e4,encoding:"utf-8",cwd:r?.cwd,input:c});}catch(l){let g=l,h=(g.stderr?String(g.stderr):"").trim(),f=typeof g.status=="number"?g.status:"unknown",p=h||g.message;return ht(`[${n}] ref exited with status ${f}${p?`: ${p}`:""}`)}try{return $a(Ra(d))}catch{return {result:"success",data:{stdout:d.trim()}}}}async function wa(e,t,r){let n=r?.label??"invokeExecutionRef",s;try{s=es(e.argsMassaging,Ca(e,t),n);}catch(u){let d=u instanceof Error?u.message:String(u);return ht(d)}let o=We(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,g])=>[l,String(g)]));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 ht(`[${n}] HTTP ${u.status}${l?`: ${l}`:""}`)}let d=await u.text();if(!d.trim())return {result:"success",data:{}};try{return $a(Ra(d))}catch{return {result:"success",data:{stdout:d.trim()}}}}catch(u){let d=u instanceof Error?u.message:String(u);return ht(`[${n}] ${d}`)}}var Nd={"local-node":async(e,t,r)=>gt(e,t,r),"local-python":async(e,t,r)=>gt(e,t,r),"local-process":async(e,t,r)=>gt(e,t,r),"built-in":async(e,t,r)=>gt(e,t,r),"http:post":wa,"http:get":wa},qd={"local-node":gt,"local-python":gt,"local-process":gt,"built-in":gt};async function Ea(e,t,r){let n=r?.transports?.[e.howToRun]??Nd[e.howToRun];return n?n(e,t,r):ht(`[${r?.label??"invokeExecutionRef"}] unsupported howToRun: ${e.howToRun}`)}function ts(e,t,r){let n=r?.syncTransports?.[e.howToRun]??qd[e.howToRun];return n?n(e,t,r):ht(`[${r?.label??"invokeExecutionRefSync"}] unsupported sync howToRun: ${e.howToRun}`)}function Fd(e){return {invoke(t,r){return Ea(t,r,e)},invokeSync(t,r){return ts(t,r,e)}}}function Dd(e,t,r){return ts(e,t,r)}async function Md(e,t){let r={...t,whatToRun:We(e.whatToRun)},n=Zn(e.argsMassaging,r,"_invokeTaskExecutorHttp"),s=n.url??We(e.whatToRun),o=n.body?n.body:Od(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 xa(e,t,r){if(e.howToRun==="http:post"||e.howToRun==="http:get"){Md(e,t).catch(i=>{console.error(`[dispatchTaskExecutorDetached] HTTP dispatch failed: ${i.message}`);});return}let{command:s,baseArgs:o}=_a(e,r),a=Pd(t,e.extra);zr({command:s,args:[...o,...a]});}function it(e,t){if(process.platform!=="win32"){___namespace.renameSync(e,t);return}let r=[10,20,40,80,160];for(let n=0;n<=r.length;n++)try{___namespace.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 zt(e){function t(s){return X__namespace.join(e,...s.split("/"))}function r(s){return X__namespace.relative(e,s).replace(/\\/g,"/")}function n(s,o){if(___namespace.existsSync(s))for(let a of ___namespace.readdirSync(s,{withFileTypes:true})){let i=X__namespace.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(!___namespace.existsSync(o))return null;try{return ___namespace.readFileSync(o,"utf-8")}catch{return null}},write(s,o){let a=t(s),i=`${a}.${process.pid}.${crypto.randomUUID()}.tmp`;___namespace.mkdirSync(X__namespace.dirname(a),{recursive:true}),___namespace.writeFileSync(i,o,"utf-8"),it(i,a);},exists(s){return ___namespace.existsSync(t(s))},remove(s){let o=t(s);try{___namespace.existsSync(o)&&___namespace.unlinkSync(o);}catch{}},readBytes(s){let o=t(s);if(!___namespace.existsSync(o))return null;try{return new Uint8Array(___namespace.readFileSync(o))}catch{return null}},writeBytes(s,o){let a=t(s),i=`${a}.${process.pid}.${crypto.randomUUID()}.tmp`;___namespace.mkdirSync(X__namespace.dirname(a),{recursive:true}),___namespace.writeFileSync(i,Buffer.from(o)),it(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(!___namespace.existsSync(o))return null;try{let a=___namespace.statSync(o);return {key:s,size:Number(a.size||0),updatedAt:new Date(a.mtimeMs).toISOString()}}catch{return null}},keyRef(s){return {kind:"fs-path",value:t(s)}}}}function os(){return {read(e){if(!___namespace.existsSync(e))return null;try{return ___namespace.readFileSync(e,"utf-8")}catch{return null}},write(e,t){let r=`${e}.${process.pid}.${crypto.randomUUID()}.tmp`;___namespace.mkdirSync(X__namespace.dirname(e),{recursive:true}),___namespace.writeFileSync(r,t,"utf-8"),it(r,e);},exists(e){return ___namespace.existsSync(e)},remove(e){try{___namespace.existsSync(e)&&___namespace.unlinkSync(e);}catch{}},readBytes(e){if(!___namespace.existsSync(e))return null;try{return new Uint8Array(___namespace.readFileSync(e))}catch{return null}},writeBytes(e,t){let r=`${e}.${process.pid}.${crypto.randomUUID()}.tmp`;___namespace.mkdirSync(X__namespace.dirname(e),{recursive:true}),___namespace.writeFileSync(r,Buffer.from(t)),it(r,e);},stat(e){if(!___namespace.existsSync(e))return null;try{let t=___namespace.statSync(e);return {key:e,size:Number(t.size||0),updatedAt:new Date(t.mtimeMs).toISOString()}}catch{return null}},listKeys(e){return []}}}var rs="__scratch-marker",ns="__scratch-config.json",Bd=1440*60*1e3,Kd=720*60*1e3,Gd=500;function Aa(e,t){if(!e)return t;let r=e.replace(/[^A-Za-z0-9._-]/g,"_");return r.length>0?r:t}function Qr(e){___namespace.mkdirSync(e,{recursive:true});let t=X__namespace.join(e,rs),r=X__namespace.join(e,ns),n=!___namespace.existsSync(t);if(n)try{___namespace.writeFileSync(t,`scratch-store
|
|
11
11
|
${new Date().toISOString()}
|
|
12
|
-
`,"utf-8");}catch{}function s(){if(!___namespace.existsSync(r))return {};try{let u=___namespace.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}.${crypto.randomUUID()}.tmp`;try{___namespace.writeFileSync(d,JSON.stringify(u,null,2),"utf-8"),
|
|
12
|
+
`,"utf-8");}catch{}function s(){if(!___namespace.existsSync(r))return {};try{let u=___namespace.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}.${crypto.randomUUID()}.tmp`;try{___namespace.writeFileSync(d,JSON.stringify(u,null,2),"utf-8"),it(d,r);}catch{}}if(n){let u=s();typeof u["retention.lastSweepAt"]!="number"&&(u["retention.lastSweepAt"]=Date.now(),o(u));}function a(){if(!___namespace.existsSync(t))return;let u=s(),d=typeof u["retention.maxAgeMs"]=="number"?u["retention.maxAgeMs"]:Bd,l=typeof u["retention.sweepIntervalMs"]=="number"?u["retention.sweepIntervalMs"]:Kd;if(d<=0||l<=0)return;let g=typeof u["retention.lastSweepAt"]=="number"?u["retention.lastSweepAt"]:0,h=Date.now();if(h-g<l)return;u["retention.lastSweepAt"]=h,o(u);let f=h;try{let p=___namespace.readdirSync(e,{withFileTypes:!0});for(let S of p){if(Date.now()-f>Gd)break;if(!S.isFile()||S.name===rs||S.name===ns)continue;let b=X__namespace.join(e,S.name);try{let P=___namespace.statSync(b);if(h-P.mtimeMs>d)try{___namespace.unlinkSync(b);}catch{}}catch{}}}catch{}}function i(u,d){let l=Aa(u,"scratch"),g=Aa(d,".json"),h=g.startsWith(".")?g:`.${g}`,f=`${l}-${Date.now()}-${crypto.randomUUID().slice(0,8)}${h}`;return X__namespace.join(e,f)}function c(u,d){let l=`${u}.${process.pid}.${crypto.randomUUID()}.tmp`;___namespace.mkdirSync(X__namespace.dirname(u),{recursive:true}),___namespace.writeFileSync(l,d,"utf-8"),it(l,u);}return {read(u){if(!___namespace.existsSync(u))return null;try{return ___namespace.readFileSync(u,"utf-8")}catch{return null}},write(u,d){c(u,d);try{a();}catch{}},exists(u){return ___namespace.existsSync(u)},remove(u){try{___namespace.existsSync(u)&&___namespace.unlinkSync(u);}catch{}},readBytes(u){if(!___namespace.existsSync(u))return null;try{return new Uint8Array(___namespace.readFileSync(u))}catch{return null}},writeBytes(u,d){let l=`${u}.${process.pid}.${crypto.randomUUID()}.tmp`;___namespace.mkdirSync(X__namespace.dirname(u),{recursive:true}),___namespace.writeFileSync(l,Buffer.from(d)),it(l,u);try{a();}catch{}},stat(u){if(!___namespace.existsSync(u))return null;try{let d=___namespace.statSync(u);return {key:u,size:Number(d.size||0),updatedAt:new Date(d.mtimeMs).toISOString()}}catch{return null}},listKeys(u){try{let d=___namespace.readdirSync(e,{withFileTypes:!0}),l=[];for(let g of d){if(!g.isFile()||g.name===rs||g.name===ns)continue;let h=X__namespace.join(e,g.name);(!u||h.startsWith(u))&&l.push(h);}return l.sort()}catch{return []}},getUniqueKey(u,d){return i(u,d)},create(u,d,l){let g=i(d,l);c(g,u);try{a();}catch{}return g},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 Ud="__archive-marker",Jd="__archive-config.json",Yr="streams",Xr="blobs",zd=500;function Ta(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 Zr(e){___namespace.mkdirSync(e,{recursive:true}),___namespace.mkdirSync(X__namespace.join(e,Yr),{recursive:true}),___namespace.mkdirSync(X__namespace.join(e,Xr),{recursive:true});let t=X__namespace.join(e,Ud),r=X__namespace.join(e,Jd);if(!___namespace.existsSync(t))try{___namespace.writeFileSync(t,`archive-store
|
|
13
13
|
${new Date().toISOString()}
|
|
14
|
-
`,"utf-8");}catch{}function n(){if(!___namespace.existsSync(r))return {};try{let a=___namespace.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}.${crypto.randomUUID()}.tmp`;try{___namespace.writeFileSync(i,JSON.stringify(a,null,2),"utf-8"),
|
|
14
|
+
`,"utf-8");}catch{}function n(){if(!___namespace.existsSync(r))return {};try{let a=___namespace.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}.${crypto.randomUUID()}.tmp`;try{___namespace.writeFileSync(i,JSON.stringify(a,null,2),"utf-8"),it(i,r);}catch{}}function o(){if(!___namespace.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,g=h=>{let f;try{f=___namespace.readdirSync(h,{withFileTypes:!0});}catch{return}for(let p of f){if(Date.now()-l>zd)return;let S=X__namespace.join(h,p.name);if(p.isDirectory()){g(S);continue}if(p.isFile())try{let b=___namespace.statSync(S);if(d-b.mtimeMs>i)try{___namespace.unlinkSync(S);}catch{}}catch{}}};g(X__namespace.join(e,Yr)),g(X__namespace.join(e,Xr));}return {stream(a){let i=Ta(a),c=X__namespace.join(e,Yr,`${i}.jsonl`),u=as(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=Ta(a),c=X__namespace.join(e,Xr,i);___namespace.mkdirSync(c,{recursive:true});let u=zt(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=X__namespace.join(e,Yr);try{return ___namespace.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=X__namespace.join(e,Xr);try{return ___namespace.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 en(e){function t(n){return X__namespace.join(e,...n.split("/"))+".json"}function r(n,s,o,a){if(___namespace.existsSync(n))for(let i of ___namespace.readdirSync(n,{withFileTypes:true})){let c=s?`${s}/${i.name}`:i.name;if(i.isDirectory()){r(X__namespace.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(!___namespace.existsSync(s))return null;try{return JSON.parse(___namespace.readFileSync(s,"utf-8"))}catch{return null}},write(n,s){let o=t(n),a=`${o}.${process.pid}.${crypto.randomUUID()}.tmp`;___namespace.mkdirSync(X__namespace.dirname(o),{recursive:true}),___namespace.writeFileSync(a,JSON.stringify(s,null,2),"utf-8"),it(a,o);},delete(n){let s=t(n);try{___namespace.existsSync(s)&&___namespace.unlinkSync(s);}catch{}},listKeys(n){let s=[];return r(e,"",n,s),s.sort()}}}function as(e){function t(){if(!___namespace.existsSync(e))return [];let r=___namespace.readFileSync(e,"utf-8").trim();return r?r.split(`
|
|
15
15
|
`).filter(Boolean).map(n=>JSON.parse(n)):[]}return {append(r){let n={id:crypto.randomUUID(),payload:r};return ___namespace.mkdirSync(X__namespace.dirname(e),{recursive:true}),___namespace.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(){___namespace.existsSync(e)&&___namespace.truncateSync(e,0);}}}function
|
|
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(){___namespace.existsSync(e)&&___namespace.truncateSync(e,0);}}}function ss(e){if(e==null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return `[${e.map(ss).join(",")}]`;let t=e;return `{${Object.keys(t).sort().map(n=>`${JSON.stringify(n)}:${ss(t[n])}`).join(",")}}`}function Ia(e){return crypto.createHash("sha256").update(ss(e)).digest("hex")}function ja(e){let t=X__namespace.join(e,"board-journal.jsonl");return {readAllEntries(){if(!___namespace.existsSync(t))return [];let r=___namespace.readFileSync(t,"utf-8").trim();return r?r.split(`
|
|
17
17
|
`).filter(Boolean).map(n=>JSON.parse(n)):[]},appendEntry(r){___namespace.appendFileSync(t,JSON.stringify(r)+`
|
|
18
|
-
`,"utf-8");},generateId(){return crypto.randomUUID()}}}function Pa(e){return {tryAcquire(){try{if(!___namespace.existsSync(e)){___namespace.mkdirSync(X__namespace.dirname(e),{recursive:!0});try{___namespace.writeFileSync(e,"{}",{flag:"wx"});}catch{}}return properLockfile.lockSync(e,{retries:0})}catch{return null}}}}var ja={$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"},chat:{type:"boolean",description:"Whether this file entry is associated with a chat interaction"}},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 cc=cd(ac());var wh=module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('board-live-cards-node.cjs', document.baseURI).href))),bh=wh("./jsonata-sync.cjs"),On=null;var ic=/\b(card_data|requires|fetched_sources|computed_values|source_defs)\b/g,_h=/^\s*(card_data|requires|fetched_sources|computed_values|source_defs)(\.|$)/;function Rh(e){let t=new Set,r;for(ic.lastIndex=0;(r=ic.exec(e))!==null;)t.add(r[1]);return t}function dc(e){let t=_h.exec(e);return t?t[1]:null}function uc(e,t,r,n){try{bh(e);}catch(o){let a=o instanceof Error?o.message:String(o);n.push(`${t}: invalid JSONata expression (${a})`);return}let s=Rh(e);for(let o of s)r.has(o)||n.push(`${t}: disallowed namespace "${o}" in expression`);}function Uo(e,t,r){if(Array.isArray(e)){e.forEach((s,o)=>{Uo(s,`${t}/${o}`,r);});return}if(typeof e=="string"){let s=dc(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))Uo(o,`${t}/${s}`,r);}function Ch(){if(On)return On;let e=new cc.default({allErrors:true});return Sh__default.default(e),On=e.compile(ja),On}function lc(e){let t=Ch(),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 fc(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||uc(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=dc(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)&&Uo(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,h]of Object.entries(l))typeof h!="string"||h.trim().length===0||uc(h,`/source_defs/${d}/projections/${m}`,i,t);}),{ok:t.length===0,errors:t}}function Jo(e){let t=lc(e);if(!t.ok)return t;let r=fc(e);return r.ok?{ok:true,errors:[]}:{ok:false,errors:r.errors}}function pc(e){return String(e).replace(/[^a-zA-Z0-9_-]/g,"_")}function mc(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 zo(e,t){let r=s=>`chats/${pc(s)}/processing`,n=s=>`chats/${pc(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(mc)},readAfter(s,o){let a=e(s).readAfter(o);return {records:a.entries.map(mc),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 $h(){let e=globalThis.crypto;return typeof e?.randomUUID=="function"?String(e.randomUUID()):`id-${Date.now()}-${Math.random().toString(36).slice(2)}`}function Eh(){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:$h(),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 kt={RUNNING:"running",COMPLETED:"completed",FAILED:"failed",INACTIVATED:"inactivated"};function Oe(e){return e?Array.isArray(e.provides)?e.provides:[]:[]}function wt(e){return e?Array.isArray(e.requires)?e.requires:[]:[]}function gc(e){return e.tasks??{}}function Ho(e){return e?e.status===kt.FAILED||e.status===kt.INACTIVATED:false}function hc(e,t){return e.refreshStrategy??t?.refreshStrategy??"data-changed"}function yc(e){return e.maxExecutions}function vc(e,t){let r=new Set;for(let[n,s]of Object.entries(t))if(s.status===kt.COMPLETED){let o=e.tasks[n];o&&Oe(o).forEach(i=>r.add(i));}return Array.from(r)}function Sc(e,t){let r={};return e.forEach(n=>{let s=t[n];if(!s)return;Oe(s).forEach(a=>{r[a]||(r[a]=[]),r[a].push(n);});}),r}function kc(e,t,r){let n=e.tasks[t]??Nn(),s={};if(r){let a=r.tasks[t],i=wt(a);for(let c of i)for(let[u,d]of Object.entries(r.tasks))if(Oe(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 wc(e,t,r,n,s,o){let a=e.tasks[r]??Nn(),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=Oe(i);let u=a.startConsumedHashes?{...a.startConsumedHashes}:{...a.lastConsumedHashes};if(!a.startConsumedHashes){let m=i.requires??[];for(let h of m)for(let[f,p]of Object.entries(t.tasks))if(Oe(p).includes(h)){let S=e.tasks[f];S?.lastDataHash&&(u[h]=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 bc(e,t,r,n){let s=e.tasks[r]??Nn(),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 _c(e,t,r,n){let s=e.tasks[t]??Nn(),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 Rc(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 Nn(){return {status:"not-started",executionCount:0,retryCount:0,lastEpoch:0,messages:[],progress:null}}function qn(e,t){let r=`live-${Date.now()}`,n={};for(let o of Object.keys(e.tasks))n[o]=$c();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 xh(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:kc(n,t.taskName,r)};case "task-completed":return {config:r,state:wc(n,r,t.taskName,t.result,t.dataHash,t.data)};case "task-failed":return {config:r,state:bc(n,r,t.taskName,t.error)};case "task-progress":return {config:r,state:_c(n,t.taskName,t.message,t.progress)};case "task-restart":return {config:r,state:Rc(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:Nh(n,t.action)};case "task-upsert":return Ah(e,t.taskName,t.taskConfig);case "task-removal":return Th(e,t.taskName);case "node-requires-add":return Ih(e,t.nodeName,t.tokens);case "node-requires-remove":return Ph(e,t.nodeName,t.tokens);case "node-provides-add":return jh(e,t.nodeName,t.tokens);case "node-provides-remove":return Oh(e,t.nodeName,t.tokens);default:return e}}function Cc(e,t){return t.reduce((r,n)=>xh(r,n),e)}function Ah(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]:$c()},lastUpdated:new Date().toISOString()}}}function Th(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 Ih(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=wt(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 Ph(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=wt(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 jh(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=Oe(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 Oh(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=Oe(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 qr(e){return {version:1,config:e.config,state:e.state,snapshotAt:new Date().toISOString()}}function Fn(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 $c(){return {status:"not-started",executionCount:0,retryCount:0,lastEpoch:0,messages:[],progress:null}}function Nh(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 Fr(e){let{config:t,state:r}=e,n=gc(t);if(Object.keys(n).length===0)return {eligible:[],pending:[],unresolved:[],blocked:[],conflicts:{}};let o=qh(n),a=vc(t,r.tasks),i=new Set([...a,...r.availableOutputs]),c=[],u=[],d=[],l=[];for(let[h,f]of Object.entries(n)){let p=r.tasks[h],S=hc(f,t.settings),b=S!=="once";if(p?.status===kt.RUNNING||Ho(p))continue;let j=yc(f);if(j!==void 0&&p&&p.executionCount>=j||f.circuit_breaker&&p&&p.executionCount>=f.circuit_breaker.max_executions||!b&&p?.status===kt.COMPLETED)continue;if(b&&p?.status===kt.COMPLETED){let k=wt(f),R=false;switch(S){case "data-changed":{k.length>0&&k.some(x=>{for(let[P,D]of Object.entries(n))if(Oe(D).includes(x)){let q=r.tasks[P];if(!q)continue;let de=p.lastConsumedHashes?.[x];return q.lastDataHash==null?q.executionCount>p.lastEpoch:q.lastDataHash!==de}return false})||(R=true);break}case "epoch-changed":{k.length>0&&k.some(x=>{for(let[P,D]of Object.entries(n))if(Oe(D).includes(x)){let q=r.tasks[P];if(q&&q.executionCount>p.lastEpoch)return true}return false})||(R=true);break}case "time-based":{let $=f.refreshInterval??0;if($<=0){R=true;break}let x=p.completedAt;if(!x){R=true;break}(Date.now()-Date.parse(x))/1e3<$&&(R=true);break}case "manual":R=true;break}if(R)continue}let w=wt(f);if(w.length===0){c.push(h);continue}let E=[],y=[],v=[];for(let k of w){if(i.has(k))continue;let R=o[k]||[];R.length===0?E.push(k):R.every(x=>Ho(r.tasks[x]))?v.push({token:k,failedProducer:R[0]}):y.push(k);}E.length>0?d.push({taskName:h,missingTokens:E}):v.length>0?l.push({taskName:h,failedTokens:v.map(k=>k.token),failedProducers:[...new Set(v.map(k=>k.failedProducer))]}):y.length>0?u.push({taskName:h,waitingOn:y}):c.push(h);}let m={};if(c.length>1){let h=Sc(c,n);for(let[f,p]of Object.entries(h))p.length>1&&(m[f]=p);}return {eligible:c,pending:u,unresolved:d,blocked:l,conflicts:m}}function qh(e){let t={};for(let[r,n]of Object.entries(e)){for(let s of Oe(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 Dr=class{buffer=[];append(t){this.buffer.push(t);}drain(){let t=this.buffer;return this.buffer=[],t}get size(){return this.buffer.length}};function Wo(e){let t=Yo(e);return Fh(t)}function Yo(e){if(e==null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return "["+e.map(Yo).join(",")+"]";let t=e;return "{"+Object.keys(t).sort().map(n=>JSON.stringify(n)+":"+Yo(t[n])).join(",")+"}"}function Fh(e){let t=0xcbf29ce484222325n,r=0x100000001b3n,n=0xffffffffffffffffn;for(let s=0;s<e.length;s++)t^=BigInt(e.charCodeAt(s)),t=t*r&n;return t.toString(16).padStart(16,"0")}function Dh(e){if(typeof Buffer<"u")return Buffer.from(e,"utf8").toString("base64url");if(typeof btoa=="function"){let t=new TextEncoder().encode(e),r="";for(let n of t)r+=String.fromCharCode(n);return btoa(r).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}throw new Error("No base64 encoder available in this runtime")}function Mh(e){if(typeof Buffer<"u")return Buffer.from(e,"base64url").toString("utf8");if(typeof atob=="function"){let t=e.replace(/-/g,"+").replace(/_/g,"/"),r=t+"=".repeat((4-t.length%4)%4),n=atob(r),s=new Uint8Array(n.length);for(let o=0;o<n.length;o++)s[o]=n.charCodeAt(o);return new TextDecoder().decode(s)}throw new Error("No base64 decoder available in this runtime")}function Ec(e){let t=JSON.stringify({t:e,n:Date.now().toString(36)+Math.random().toString(36).slice(2,6)});return Dh(t)}function Lh(e){try{let t=JSON.parse(Mh(e));return typeof t?.t=="string"?{taskName:t.t}:null}catch{return null}}function xc(e,t,r){let{handlers:n,onNodeRemoved:s,onDrain:o}=t,a=new Dr,i="state"in e&&"config"in e?e:qn(e),c=false,u=new Set,d=new Map(Object.entries(n)),l=new Dr,m=false,h=false;function f(){if(!c){if(m){h=true;return}m=true;try{do h=!1,p();while(h)}finally{m=false;}}}function p(){let w=l.drain(),E=a.drain(),y=[...w,...E];if(y.length>0&&(i=Cc(i,y),s)){for(let k of y)if(k.type==="task-removal")try{s(k.taskName);}catch(R){console.warn("[reactive] onNodeRemoved failed:",R instanceof Error?R.message:String(R));}}let v=Fr(i);y.length>0&&o?.(y,i,v);for(let k of v.eligible)j(k);for(let k of y)if(k.type==="task-progress"){let{taskName:R,update:$}=k;if(!i.config.tasks[R])continue;let P=i.state.tasks[R];if(!P||P.status!=="running")continue;let D=Ec(R),q=b(R,D,$).catch(de=>{c||(l.append({type:"task-failed",taskName:R,error:de.message??String(de),timestamp:new Date().toISOString()}),f());}).finally(()=>{u.delete(q);});u.add(q);}}function S(w){let y=i.config.tasks[w].requires??[],v=new Map;for(let[R,$]of Object.entries(i.config.tasks))for(let x of $.provides??[])v.set(x,R);let k={};for(let R of y){let $=v.get(R);$?k[R]=i.state.tasks[$]?.data:k[R]=void 0;}return k}async function b(w,E,y){let v=i.config.tasks[w],k=v.taskHandlers??[],R=S(w);for(let $ of k){let x=d.get($);if(!x)throw new Error(`Handler '${$}' not found in registry (task '${w}')`);let P={nodeId:w,state:R,taskState:i.state.tasks[w],config:v,callbackToken:E,update:y};if(await x(P)==="task-initiate-failure")throw new Error(`Handler '${$}' returned task-initiate-failure (task '${w}')`)}}function j(w){let y=i.config.tasks[w]?.taskHandlers;if(!y||y.length===0)return;l.append({type:"task-started",taskName:w,timestamp:new Date().toISOString()}),f();let v=Ec(w),k=b(w,v).catch(R=>{c||(l.append({type:"task-failed",taskName:w,error:R.message??String(R),timestamp:new Date().toISOString()}),f());}).finally(()=>{u.delete(k);});u.add(k);}return {push(w){c||(w.type==="task-completed"&&w.data&&!w.dataHash&&(w={...w,dataHash:Wo(w.data)}),a.append(w),f());},pushAll(w){if(!c){for(let E of w)E.type==="task-completed"&&E.data&&!E.dataHash?a.append({...E,dataHash:Wo(E.data)}):a.append(E);f();}},resolveCallback(w,E,y){if(c)return;let v=Lh(w);if(!v)return;let{taskName:k}=v;if(i.config.tasks[k]){if(y&&y.length>0)a.append({type:"task-failed",taskName:k,error:y.join("; "),timestamp:new Date().toISOString()});else {let R=E&&Object.keys(E).length>0?Wo(E):void 0;a.append({type:"task-completed",taskName:k,data:E,dataHash:R,timestamp:new Date().toISOString()});}f();}},addNode(w,E){c||(a.append({type:"task-upsert",taskName:w,taskConfig:E,timestamp:new Date().toISOString()}),f());},removeNode(w){c||(a.append({type:"task-removal",taskName:w,timestamp:new Date().toISOString()}),f());},addRequires(w,E){c||(a.append({type:"node-requires-add",nodeName:w,tokens:E,timestamp:new Date().toISOString()}),f());},removeRequires(w,E){c||(a.append({type:"node-requires-remove",nodeName:w,tokens:E,timestamp:new Date().toISOString()}),f());},addProvides(w,E){c||(a.append({type:"node-provides-add",nodeName:w,tokens:E,timestamp:new Date().toISOString()}),f());},removeProvides(w,E){c||(a.append({type:"node-provides-remove",nodeName:w,tokens:E,timestamp:new Date().toISOString()}),f());},registerHandler(w,E){d.set(w,E);},unregisterHandler(w){d.delete(w);},retrigger(w){c||i.config.tasks[w]&&(a.append({type:"task-restart",taskName:w,timestamp:new Date().toISOString()}),f());},retriggerAll(w){if(!c){for(let E of w)i.config.tasks[E]&&a.append({type:"task-restart",taskName:E,timestamp:new Date().toISOString()});f();}},snapshot(){return qr(i)},getState(){return i},getSchedule(){return Fr(i)},async waitForHandlers(){u.size>0&&await Promise.allSettled([...u]);},async dispose(w){w?.wait&&u.size>0&&await Promise.allSettled([...u]),c=true;}}}var Bh=module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('board-live-cards-node.cjs', document.baseURI).href))),Dn=Bh("./jsonata-sync.cjs"),Ic=Dn;function Ac(e,t){if(!t||!e)return;let r=t.split("."),n=e;for(let s=0;s<r.length;s++){if(n==null)return;n=n[r[s]];}return n}function Pc(e,t,r){let n=t.split("."),s=e;for(let o=0;o<n.length-1;o++)(s[n[o]]==null||typeof s[n[o]]!="object")&&(s[n[o]]={}),s=s[n[o]];s[n[n.length-1]]=r;}async function Kh(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 Dn(s.expr).evaluate(n);Pc(e.computed_values,s.bindTo,o),n.computed_values=e.computed_values;}catch{}return e}function Gh(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=Ic(o.expr).evaluate(n);Pc(e.computed_values,o.bindTo,a),n.computed_values=e.computed_values;}catch(a){let i=a instanceof Error?a.message:String(a);s.push({bindTo:o.bindTo,error:i});}return s.length>0?{ok:true,node:e,errors:s}:{ok:true,node:e}}async function Uh(e,t,r){let n={...r??{},card_data:t.card_data??{},requires:t.requires??{},fetched_sources:t._sourcesData??{},computed_values:t.computed_values??{}};return Dn(e).evaluate(n)}function Jh(e,t){return t.startsWith("fetched_sources.")?Ac(e._sourcesData??{},t.slice(16)):Ac(e,t)}var Tc=new Set(["metric","table","editable-table","chart","form","filter","list","notes","todo","alert","narrative","badge","text","markdown","ref","custom","actions"]),zh=new Set(["id","meta","requires","provides","view","card_data","compute","source_defs"]);function Hh(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))zh.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`):Tc.has(s.kind)||t.push(`view.elements[${o}].kind: unknown kind "${s.kind}". Valid: ${[...Tc].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 Wh(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 Dn(a).evaluate(r);}catch{s[o]=void 0;}}return {...n,_projections:s}}))}function Yh(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]=Ic(a).evaluate(r);}catch{s[o]=void 0;}}return {...n,_projections:s}})}var bt={run:Kh,runSync:Gh,eval:Uh,resolve:Jh,validate:Hh,enrichSources:Wh,enrichSourcesSync:Yh};function Xh(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 Xo(e){return JSON.stringify(e)}function Qo(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 Mn(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],h=m&&typeof m=="object"&&!Array.isArray(m)?{...m}:{};u[l]=h,u=h;}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 Ln(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}`)},listSources(r){return e.listKeys(`${r}/`).filter(n=>!n.includes("/.staged/")).map(n=>n.slice(`${r}/`.length))}}}function Fc(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 Dc(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 Mr="v1",_t="board/graph",Mc="board/lastJournalProcessedId";function jc(e){return `cards/${e}/runtime`}function Lc(e){return {readRuntime(t){return e.read(jc(t))??{_sources:{}}},writeRuntime(t,r){e.write(jc(t),r);}}}function Qh(e,t){let r={...e};for(let n of t.deleteKeys)delete r[n];return {...r,...t.shallowMerge}}function Vc(e){return {readSnapshot(t){return e.readValues(t)},commitSnapshot(t,r){if(r.schemaVersion!==Mr)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=Qh(n.values,r);return {ok:true,newVersion:e.writeValues(t,s,r.deleteKeys)}}}}function Zo(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 Qo(r.trim())},writeTaskExecutorRef(r){e.write("task-executor",Xo(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);},readChatStoreRef(){return t("chat-store-ref")},writeChatStoreRef(r){e.write("chat-store-ref",r);},readArtifactsStoreRef(){return t("artifacts-store-ref")},writeArtifactsStoreRef(r){e.write("artifacts-store-ref",r);}}}function Bc(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 Oc(e){return e?{lastRequestedToken:e.lastRequestedToken,lastCompletedToken:e.lastCompletedToken,lastCompletionStatus:e.lastCompletionStatus??(e.lastCompletedToken?"success":"not-started"),queueRequestedToken:e.queueRequestedToken}:{lastCompletionStatus:"not-started"}}function Zh(e){return e?.lastRequestedToken?e.lastCompletedToken!==e.lastRequestedToken:false}function Nc(e,t){return e?.lastRequestedToken?Zh(e)?"in-flight":!e.lastCompletedToken||e.lastCompletedToken<t?"dispatch":"idle":"dispatch"}function ey(e,t){return {...e,lastCompletedToken:t,lastCompletionStatus:"success"}}function qc(e,t){return {...e,lastCompletedToken:t,lastCompletionStatus:"failure"}}function Vn(e,t){let r=t.state.tasks,n=t.config.tasks,s=Object.keys(r),o=Fr(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 b=c.get(S)??[];b.push(f),c.set(S,b);}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 b=S.requires??[],j=S.provides??[],w=Object.keys(p.data??{}).sort(),E=b.filter(x=>t.state.availableOutputs.includes(x)),y=b.filter(x=>!t.state.availableOutputs.includes(x)),v=i.get(f)??y,k=new Set;for(let x of j)for(let P of c.get(x)??[])P!==f&&k.add(P);let R=p.failedAt,$=p.error?{message:p.error,code:"TASK_FAILED",at:R,source:"task-runtime"}:void 0;return {name:f,status:p.status,error:$,requires:b,requires_satisfied:E,requires_missing:y,provides_declared:j,provides_runtime:w,blocked_by:v,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 h=0;for(let[f,p]of Object.entries(n)){let S=(p.requires??[]).length===0,j=(p.provides??[]).some(w=>(c.get(w)??[]).some(E=>E!==f));S&&!j&&(h+=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:h,topology:{edge_count:Array.from(m).length,max_fan_out_card:l.name,max_fan_out:l.fanOut}},cards:u}}function ty(){return new Date().toISOString()}function Kc(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??[],h=m.filter(M=>M.optionalForCompletionGating!==true),f=r.cardRuntimeStore.readRuntime(d),p=false,S=()=>{p&&(r.cardRuntimeStore.writeRuntime(d,f),p=false);},b=M=>Oc(f._sources[M]),j=(M,B)=>{f._sources[M]=Oc(B),p=true;},w=i.taskState?.executionCount??0;if(f._lastExecutionCount!==w&&(f._sources={},f._lastExecutionCount=w,p=true),i.update){let M=i.update,B=M.outputFile;if(B){let te=b(B);if(M.failure){let pe=M.rqt??te.lastRequestedToken??te.queueRequestedToken;pe&&j(B,qc(te,pe));}else {let pe=M.rqt;if(!te.lastCompletedToken||pe>te.lastCompletedToken){let $e=typeof M.deliveryToken=="string"?M.deliveryToken:void 0,tt=false;$e&&(tt=r.fetchedSourcesStore.commitSourceData(d,B,$e)),tt?j(B,ey(te,pe)):j(B,qc(te,pe));}}S();}}let y={};for(let M of m)if(M.outputFile){let B=r.fetchedSourcesStore.readSourceData(d,M.outputFile);B!==null&&(y[M.bindTo]=B);}let v={};for(let[M,B]of Object.entries(i.state??{}))if(B!==null&&typeof B=="object"&&!Array.isArray(B)){let te=B[M];v[M]=te!==void 0?te:B;}else v[M]=B;let k={id:d,card_data:{...l},requires:v,source_defs:m,compute:u.compute};k._sourcesData=y,u.compute&&bt.runSync(k,{sourcesData:y}),(o??r.outputStore.writeComputedValues.bind(r.outputStore))(d,k.computed_values??{});let R={...u},$=bt.enrichSourcesSync(Array.isArray(u.source_defs)?u.source_defs:void 0,{card_data:u.card_data,requires:v}),x=e.value;R.source_defs=Array.isArray($)?$.map(M=>({...M,boardDir:typeof M.boardDir=="string"&&M.boardDir?M.boardDir:x})):$;let P=ty(),D=i.update?void 0:P,q=h.filter(M=>{let B=M.outputFile;if(typeof B!="string"||!B)return true;let te=b(B);D&&(te={...te,queueRequestedToken:D},j(B,te));let pe=te.queueRequestedToken??te.lastRequestedToken??P,$e=Nc(te,pe);return $e==="in-flight"?false:$e==="dispatch"});if(S(),q.length>0){let M=false,B=P;for(let te of q){let pe=te.outputFile;if(typeof pe!="string"||!pe)continue;let $e=b(pe),tt=$e.queueRequestedToken??P;j(pe,{...$e,lastRequestedToken:tt}),B=tt,M=true;}return M&&S(),M&&(c.push({taskKind:"source-fetch",payload:{boardRef:oe(e),enrichedCard:R,callbackToken:i.callbackToken,rqt:B}}),r.executionRequestStore.appendEntries(t,c)),"task-initiated"}if(h.some(M=>{let B=M.outputFile;if(typeof B!="string"||!B)return false;let te=b(B),pe=te.queueRequestedToken??te.lastRequestedToken??P;return Nc(te,pe)==="in-flight"}))return "task-initiated";let fe=u.provides??[],Ce={};for(let{bindTo:M,ref:B}of fe)Ce[M]=bt.resolve(k,B);return (a??r.outputStore.writeDataObjects.bind(r.outputStore))(Ce),m.filter(M=>{if(M.optionalForCompletionGating!==true)return false;let B=b(M.outputFile);return !B.lastRequestedToken||!B.lastCompletedToken?true:B.lastCompletedToken<=B.lastRequestedToken}).length>0&&c.push({taskKind:"source-fetch",payload:{boardRef:oe(e),enrichedCard:R,callbackToken:i.callbackToken,rqt:P}}),n(i.nodeId,Ce),c.length>0&&r.executionRequestStore.appendEntries(t,c),"task-initiated"}}var Bn={settings:{completion:"manual",refreshStrategy:"data-changed"},tasks:{}};function Gc(e){return {[_t]:e.graph,[Mc]:e.lastDrainedJournalId}}function Uc(e){let t=e[_t],r=e[Mc];if(!t||typeof t!="object")throw new Error(`State snapshot is missing required key: ${_t}`);return {graph:t,lastDrainedJournalId:typeof r=="string"?r:""}}function Jc(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 ea(e){function t(o){return {status:"success",data:o}}function r(o){return {status:"fail",error:o}}function n(o){return {status:"error",error:o instanceof Error?o.message:String(o)}}function s(o){if(Array.isArray(o))return o;if(o&&typeof o=="object"){let a=o;return Array.isArray(a.files)?a.files:[o]}return null}return {get(o){try{let a=o.params?.id;if(a){let i=e.readCard(a);return i?t({cards:[i]}):r(`card "${a}" not found`)}return t({cards:e.readAllCards()})}catch(a){return n(a)}},set(o){try{let a=o.body;if(a==null)return r("set requires a body (card object or array of cards)");let i=Array.isArray(a)?a:[a];for(let c of i){if(typeof c.id!="string")return r("each card must have a string `id` field");e.writeCard(c.id,c);}return t({count:i.length})}catch(a){return n(a)}},del(o){try{let a=o.body?.ids??[],i=o.params?.id,c=i?[...a,i]:a;if(c.length===0)return r("del requires body.ids (string[]) or params.id");for(let u of c)e.removeCard(u);return t({count:c.length})}catch(a){return n(a)}},patch(o){try{let a=o.params?.id,i=o.params?.path;if(!a)return r("patch requires params.id");if(!i)return r("patch requires params.path");let c=o.body,u=c&&Object.prototype.hasOwnProperty.call(c,"value")?c.value:o.body;return e.patchCard(a,i,u),t({count:1})}catch(a){return n(a)}},appendFiles(o){try{let a=o.params?.id;if(!a)return r("appendFiles requires params.id");let i=e.readCard(a);if(!i)return r(`card "${a}" not found`);let c=s(o.body);if(!c||c.length===0)return r("appendFiles requires a file metadata object, array, or body.files array");let u=i.card_data&&typeof i.card_data=="object"&&!Array.isArray(i.card_data)?i.card_data:{},d=Array.isArray(u.files)?u.files:[],l=[...d,...c],m=c.map((f,p)=>({idx:d.length+p,entry:f})),h=this.patch({params:{id:a,path:"card_data.files"},body:{value:l}});return h.status!=="success"?h:t({files_added:m})}catch(a){return n(a)}}}}function z(e){return e!==void 0?{status:"success",data:e}:{status:"success"}}function F(e){return {status:"fail",error:e}}function W(e){return {status:"error",error:e instanceof Error?e.message:String(e)}}function ry(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 Hc(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 Kn(e){try{let t=JSON.parse(Hc(e));return typeof t?.t=="string"?{taskName:t.t}:null}catch{return null}}function ny(e){return ry(JSON.stringify(e))}function zc(e){try{let t=JSON.parse(Hc(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 sy(e,t){let r=t.onWarn??(()=>{}),n=oe(e);function s(C){if(C.length!==0)try{let g=t.publishBoardChangeNotifications?.(C);g&&typeof g.catch=="function"&&g.catch(A=>r(`[board-live-cards-public] publishBoardChangeNotifications failed: ${A instanceof Error?A.message:String(A)}`));}catch(g){r(`[board-live-cards-public] publishBoardChangeNotifications failed: ${g instanceof Error?g.message:String(g)}`);}}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 g=t.kvStorageForRef(C);return {readIndex(){return g.read("_index")},writeIndex(A){g.write("_index",A);},readCard(A){return g.read(A)},writeCard(A,N){return g.write(A,N),t.hashFn(N)},removeCard(A){g.delete(A);},cardExists(A){return g.read(A)!==null},defaultCardKey(A){return A}}}let a={readValues(C){let g=t.kvStorage("state-snapshot"),A=g.listKeys().sort();if(A.length===0)return {version:null,values:{}};let N={};for(let H of A)N[H]=g.read(H);return {version:t.hashFn(N),values:N}},writeValues(C,g,A){let N=t.kvStorage("state-snapshot");for(let H of A)N.delete(H);for(let[H,re]of Object.entries(g))N.write(H,re);return t.hashFn(g)}},i=()=>Zo(t.kvStorage("config")),c=()=>Vc(a),u=()=>Fc(t.journalAdapter()),d=()=>Mn(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 Bc(t.kvStorageForRef(C))},m=()=>{let C=i().readArchiveStoreRef();return C?t.archiveFactoryForRef(C):t.archiveFactory()};function h(){return !!c().readSnapshot(e.value).values[_t]}function f(){let C=c().readSnapshot(e.value);if(!C.values[_t])throw new Error(`Board not initialized at ${e.value}`);return Uc(C.values)}function p(C,g){let A=c().commitSnapshot(e.value,{schemaVersion:Mr,expectedVersion:g,commitId:t.genId(),committedAt:ke(),deleteKeys:[],shallowMerge:Gc(C)});if(!A.ok)throw new Error(`Snapshot commit failed (version mismatch): expected=${g??"null"} current=${A.currentVersion??"null"}`)}function S(C){u().appendEvent(C);}async function b(){let C=(I,L)=>{let ae=I.payload,Ke=(ae?.enrichedCard??{}).id??ae?.cardId??"unknown";S({type:"task-failed",taskName:Ke,error:L,timestamp:ke()});},g=Dc(t.kvStorage("execution-requests"),C),A=Lc(t.kvStorage("card-runtime")),N=Ln(t.blobStorage("sources"),I=>t.resolveBlob(I)),H=new Map,re={readRuntime(I){return H.get(I)??A.readRuntime(I)},writeRuntime(I,L){H.set(I,L);}},Ee=[],ce=new Map,je={readSourceData(I,L){let ae=`${I}/${L}`;return ce.has(ae)?ce.get(ae):N.readSourceData(I,L)},ingestSourceDataStaged(I,L,ae,dt){N.ingestSourceDataStaged(I,L,ae,dt);},commitSourceData(I,L,ae){let dt=`${I}/.staged/${ae}/${L}`,Br=t.blobStorage("sources").read(dt);if(Br==null)return false;let Gt=`${I}/${L}`,oa=Br.trim();try{ce.set(Gt,JSON.parse(oa));}catch{ce.set(Gt,oa);}return Ee.push({cardId:I,outputFile:L,deliveryToken:ae}),true},hasSource(I,L){let ae=`${I}/${L}`;return ce.has(ae)?true:N.hasSource(I,L)},listSources(I){let L=N.listSources(I),ae=new Set;for(let Ke of ce.keys())Ke.startsWith(`${I}/`)&&ae.add(Ke.slice(`${I}/`.length));let dt=new Set([...L,...ae]);return Array.from(dt)}},be={cardStore:d(),cardRuntimeStore:re,fetchedSourcesStore:je,outputStore:l(),executionRequestStore:g},Rt=f(),Ct=Fn(Rt.graph),{events:Vt,newCursor:Bt}=u().readEntriesAfterCursor(Rt.lastDrainedJournalId),$t=[],Gn=[],Un=[],Jn=new Map,ra=new Set,ed=(I,L)=>{$t.push({type:"task-completed",taskName:I,data:L,timestamp:ke()});try{m().stream("exec-history").append({taskName:I,status:"completed",completedAt:ke()});}catch{}},na=(I,L)=>{S({type:"task-failed",taskName:I,error:L,timestamp:ke()});try{m().stream("exec-history").append({taskName:I,status:"failed",error:L,completedAt:ke()});}catch{}},Lr=xc(Ct,{handlers:{"card-handler":Kc(e,Bt,be,ed,na,(I,L)=>{Gn.push({cardId:I,values:L});},I=>{Un.push(I);})},onNodeRemoved:I=>{Jn.delete(I),H.delete(I),ra.add(I);}});for($t=Vt;$t.length>0;){let I=$t;$t=[];for(let L of I)if(L.type==="task-restart"){let ae=be.cardStore.readCard(L.taskName);ae&&Jn.set(L.taskName,ae);}Lr.pushAll(I),await Lr.waitForHandlers();}let sa=Lr.getState();await Lr.dispose({wait:true});let td=c().readSnapshot(e.value).version;p({lastDrainedJournalId:Bt,graph:qr(sa)},td);for(let{cardId:I,values:L}of Gn)be.outputStore.writeComputedValues(I,L);for(let I of Un)be.outputStore.writeDataObjects(I);for(let[I,L]of H)A.writeRuntime(I,L);for(let{cardId:I,outputFile:L,deliveryToken:ae}of Ee)N.commitSourceData(I,L,ae);let Vr;try{Vr=Vn(n,sa),be.outputStore.writeStatusSnapshot(Vr);}catch(I){r(`[board-live-cards-public] status publish failed: ${I instanceof Error?I.message:String(I)}`);}let Kt=[];for(let{cardId:I,values:L}of Gn)Kt.push({kind:"computed_values",cardId:I,values:L});for(let I of Un)for(let[L,ae]of Object.entries(I))L&&Kt.push({kind:"data_object",key:L,payload:ae});for(let[I,L]of Jn)Kt.push({kind:"card_refreshed",cardId:I,card:L});for(let I of ra)Kt.push({kind:"card_removed",cardId:I});Vr!==void 0&&Kt.push({kind:"status",status:Vr}),s(Kt);let rd=i().readTaskExecutorRef()??{howToRun:"built-in",whatToRun:oe({kind:"built-in",value:"source-cli-task-executor"})};g.dispatchEntriesForJournalId(Bt,I=>{if(I.taskKind!=="source-fetch"){r(`[process-accumulated-events] unknown taskKind "${I.taskKind}" \u2014 skipping`);return}let L=I.payload,ae=L.enrichedCard?.id??"unknown",dt=L.enrichedCard?.source_defs??[];for(let Ke of dt){if(!Ke.outputFile){r(`[dispatch] source "${Ke.bindTo}" has no outputFile \u2014 skipping`);continue}let Br=ny({cbk:L.callbackToken,rg:e.value,br:oe(e),cid:ae,b:Ke.bindTo,d:Ke.outputFile,cs:void 0,rqt:L.rqt});t.dispatchExecution(rd,{source_def:Ke,base_ref:oe(e),callback:{token:Br,via:t.selfRef}}).catch(Gt=>na(ae,Gt instanceof Error?Gt.message:String(Gt)));}});}async function j(){try{let C=()=>{let A=f(),{events:N}=u().readEntriesAfterCursor(A.lastDrainedJournalId);N.length<=0||(j(),t.requestProcessAccumulated?.());},g=await ia(t.lock,b,C);return z({ran:g!==!1})}catch(C){return W(C)}}function w(){j(),t.requestProcessAccumulated?.();}function E(C){try{let g=C.params?.cardStoreRef;if(!g)return F("init requires params.cardStoreRef \u2014 create a card store with card-store-cli and pass its ref here");if(!h()){let be=qn(Bn);p({lastDrainedJournalId:"",graph:qr(be)},null);}let A=C.params?.outputsStoreRef;if(!A)return F("init requires params.outputsStoreRef \u2014 pass the outputs store ref here");let N=C.params?.scratchStoreRef,H=C.params?.archiveStoreRef,re=C.params?.chatStoreRef,Ee=C.params?.artifactsStoreRef,ce=i();ce.writeCardStoreRef(g),ce.writeOutputsStoreRef(A),N&&ce.writeScratchStoreRef(N),H&&ce.writeArchiveStoreRef(H),re&&ce.writeChatStoreRef(re),Ee&&ce.writeArtifactsStoreRef(Ee);let je=C.body??{};je["task-executor-ref"]&&ce.writeTaskExecutorRef(je["task-executor-ref"]),Object.prototype.hasOwnProperty.call(je,"chat-handler-flow")&&ce.writeChatHandlerFlow(je["chat-handler-flow"]);try{l().writeStatusSnapshot(Vn(n,Fn(f().graph)));}catch{}return z()}catch(g){return W(g)}}function y(C){try{let g=l().readStatusSnapshot();if(!g){g=Vn(n,Fn(f().graph));try{l().writeStatusSnapshot(g);}catch{}}return z(g)}catch(g){return W(g)}}function v(C){try{let g=C.params?.id;return g?(S({type:"task-removal",taskName:g,timestamp:ke()}),w(),z()):F("removeCard requires params.id")}catch(g){return W(g)}}function k(C){try{let g=C.params?.cardId;if(!g)return F("addCardFiles requires params.cardId");let A=ea(d()).appendFiles({params:{id:g},body:C.body});if(A.status!=="success")return A;let N=R({params:{cardId:g}});return N.status!=="success"?N:z({cardId:g,files_added:A.data.files_added,notified:!0})}catch(g){return W(g)}}function R(C){try{let g=C.params?.cardId;if(!g)return F("cardRefreshedNotify requires params.cardId");let A=d().readCard(g);return A?(s([{kind:"card_refreshed",cardId:g,card:A}]),z({cardId:g,notified:!0})):F(`Card "${g}" not found in board at ${e.value}`)}catch(g){return W(g)}}function $(C){try{let g=C.params?.id;return g?(S({type:"task-restart",taskName:g,timestamp:ke()}),w(),z()):F("retrigger requires params.id")}catch(g){return W(g)}}async function x(C){return j()}function P(C){try{let g=C.params?.cardId,A=C.params?.all,N=!!C.params?.restart;if(!g&&!A)return F("upsertCard requires --card-id <id> or --all");let H=A?d().readAllCards().map(re=>re.id):[g];for(let re of H)if(!d().readCard(re))return F(`Card "${re}" not found in board at ${e.value}`);for(let re of H){let Ee=d().readCard(re),ce=Jc(Ee),je=t.hashFn(ce),be=t.kvStorage("card-upsert"),Rt=be.read(re),Ct=Rt?.taskConfigHash!==je;if(!(!Ct&&!N)){if(Ct){let Vt=Rt?.blobRef??d().readCardKey(re)??re;S({type:"task-upsert",taskName:re,taskConfig:ce,timestamp:ke()}),be.write(re,{blobRef:Vt,taskConfigHash:je,updatedAt:ke()});}N&&S({type:"task-restart",taskName:re,timestamp:ke()});}}return w(),z()}catch(g){return W(g)}}function D(C){try{let g=C.params?.token;if(!g)return F("taskFailed requires params.token");let A=C.params?.error??"unknown error",N=Kn(g);if(!N)return F("Invalid callback token");S({type:"task-failed",taskName:N.taskName,error:A,timestamp:ke()});try{m().stream("exec-history").append({taskName:N.taskName,status:"failed",error:A,completedAt:ke()});}catch{}return w(),z()}catch(g){return W(g)}}function q(C){try{let g=C.params?.token;if(!g)return F("taskProgress requires params.token");let N=(C.body??{}).update??{},H=Kn(g);return H?(S({type:"task-progress",taskName:H.taskName,update:N,timestamp:ke()}),w(),z()):F("Invalid callback token")}catch(g){return W(g)}}function de(C){try{let g=C.params?.token,A=C.params?.ref;if(!g)return F("sourceDataFetched requires params.token");if(!A)return F("sourceDataFetched requires params.ref");let N=zc(g);if(!N)return F("Invalid source token");let{cbk:H,cid:re,b:Ee,d:ce,cs:je,rqt:be}=N,Rt=Ln(t.blobStorage("sources"),$t=>t.resolveBlob($t)),Ct=t.genId();Rt.ingestSourceDataStaged(re,ce,Ge(A),Ct);let Vt=Kn(H);if(!Vt)return F("Invalid callback token embedded in source token");let Bt=ke();return S({type:"task-progress",taskName:Vt.taskName,update:{bindTo:Ee,outputFile:ce,fetchedAt:Bt,deliveryToken:Ct,sourceChecksum:je,rqt:be},timestamp:Bt}),w(),z()}catch(g){return W(g)}}function fe(C){try{let g=C.params?.token,A=C.params?.reason??"unknown";if(!g)return F("sourceDataFetchFailure requires params.token");let N=zc(g);if(!N)return F("Invalid source token");let{cbk:H,b:re,d:Ee,cs:ce,rqt:je}=N,be=Kn(H);return be?(S({type:"task-progress",taskName:be.taskName,update:{bindTo:re,outputFile:Ee,failure:!0,reason:A,sourceChecksum:ce,rqt:je},timestamp:ke()}),w(),z()):F("Invalid callback token embedded in source token")}catch(g){return W(g)}}function Ce(C){try{let g=i().readCardStoreRef();return g?z({storeRef:g}):F(`Board at ${e.value} has no card store configured`)}catch(g){return W(g)}}function Ne(C){try{let g=i().readOutputsStoreRef();return g?z({storeRef:g}):F(`Board at ${e.value} has no outputs store configured`)}catch(g){return W(g)}}function M(C){try{let g=i().readScratchStoreRef();return z({storeRef:g})}catch(g){return W(g)}}function B(C){try{let g=i().readArchiveStoreRef();return z({storeRef:g})}catch(g){return W(g)}}function te(C){try{let g=i().readChatStoreRef();return z({storeRef:g})}catch(g){return W(g)}}function pe(C){try{let g=i().readArtifactsStoreRef();return z({storeRef:g})}catch(g){return W(g)}}function $e(C){try{let g=C.params?.key;if(!g)return F("getConfig requires params.key");let A=i(),N;switch(g){case "task-executor":N=A.readTaskExecutorRef()??null;break;case "chat-handler-flow":N=A.readChatHandlerFlow()??null;break;case "card-store-ref":N=A.readCardStoreRef();break;case "outputs-store-ref":N=A.readOutputsStoreRef();break;case "scratch-store-ref":N=A.readScratchStoreRef();break;case "archive-store-ref":N=A.readArchiveStoreRef();break;case "chat-store-ref":N=A.readChatStoreRef();break;case "artifacts-store-ref":N=A.readArtifactsStoreRef();break;default:return F(`getConfig: unknown key "${g}"`)}return z({value:N})}catch(g){return W(g)}}function tt(C){try{let g=C.params?.key;if(!g)return F("getOutputsDataObject requires params.key");let A=l().readDataObject(g);return z(A)}catch(g){return W(g)}}function we(C){try{return z(l().readAllDataObjects())}catch(g){return W(g)}}function qe(C){try{let g=C.params?.key;if(!g)return F("getOutputsComputedValues requires params.key");let A=l().readComputedValues(g);return z(A)}catch(g){return W(g)}}function ut(C){try{return z(l().readAllComputedValues())}catch(g){return W(g)}}function ct(){return Ln(t.blobStorage("sources"),C=>t.resolveBlob(C))}function Mt(C){let g=t.blobStorage("sources").keyRef?.(C);return g?oe(g):C}function Lt(C){try{let g=C.params?.key;if(!g)return F("getOutputsFetchedSources requires params.key");let A=ct().listSources(g),N={};for(let H of A)N[H]=Mt(`${g}/${H}`);return z(N)}catch(g){return W(g)}}function Zc(C){try{let g=ct(),A=new Set;for(let H of t.blobStorage("sources").listKeys()){let re=H.indexOf("/");re>0&&!H.includes("/.staged/")&&A.add(H.slice(0,re));}let N={};for(let H of A){let re=g.listSources(H);if(re.length>0){N[H]={};for(let Ee of re)N[H][Ee]=Mt(`${H}/${Ee}`);}}return z(N)}catch(g){return W(g)}}return {init:E,status:y,getCardStoreRef:Ce,getOutputsStoreRef:Ne,getScratchStoreRef:M,getArchiveStoreRef:B,getChatStoreRef:te,getArtifactsStoreRef:pe,getConfig:$e,getOutputsDataObject:tt,getAllOutputsDataObjects:we,getOutputsComputedValues:qe,getAllOutputsComputedValues:ut,getOutputsFetchedSources:Lt,getAllOutputsFetchedSources:Zc,removeCard:v,addCardFiles:k,cardRefreshedNotify:R,retrigger:$,processAccumulatedEvents:x,upsertCard:P,taskFailed:D,taskProgress:q,sourceDataFetched:de,sourceDataFetchFailure:fe}}function oy(e,t){let r=()=>Zo(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 v=t.kvStorageForRef(y);return {readIndex(){return v.read("_index")},writeIndex(k){v.write("_index",k);},readCard(k){return v.read(k)},writeCard(k,R){return v.write(k,R),t.hashFn(R)},removeCard(k){v.delete(k);},cardExists(k){return v.read(k)!==null},defaultCardKey(k){return k}}}let s=()=>Mn(n(),t.onWarn??(()=>{})),o=()=>{let y=r().readScratchStoreRef();return y?t.scratchStorageForRef(y):t.scratchStorage()};function a(y,v){let k=t.validateSchema(v),R=[],$=r().readTaskExecutorRef();if($&&Array.isArray(v.source_defs))for(let P of v.source_defs){let D=typeof P.bindTo=="string"?P.bindTo:"(unknown)";try{let q;try{q=t.invokeExecutorSync($,"validate-source-def",[],{timeout:t.executorTimeouts?.validationMs??1e4,input:JSON.stringify(P)});}catch(fe){let Ce=fe;if(q=typeof Ce?.stdout=="string"?Ce.stdout:"",!q.trim()){R.push(`source "${D}": executor validate-source-def failed \u2014 ${fe instanceof Error?fe.message:String(fe)}`);continue}}let de=JSON.parse(q.trim());if(!de.ok&&Array.isArray(de.errors))for(let fe of de.errors)R.push(`source "${D}": ${fe}`);}catch(q){R.push(`source "${D}": executor validate-source-def failed \u2014 ${q instanceof Error?q.message:String(q)}`);}}let x=[...k.errors,...R];return z({cardId:y,isValid:x.length===0,issues:x})}function i(y,v){let k=r().readTaskExecutorRef();if(!k)throw new Error("No task-executor registered for this board");let R=typeof y.bindTo=="string"?y.bindTo:"source",$=o(),x={...y,boardDir:e.value,_projections:v},P=$.create(JSON.stringify(x,null,2),`probe-in-${R}`,".json"),D=$.getUniqueKey(`probe-out-${R}`,".json"),q=$.getUniqueKey(`probe-err-${R}`,".txt"),de=oe($.keyRef(P)),fe=oe($.keyRef(D)),Ce=oe($.keyRef(q)),Ne=null;try{if(t.invokeExecutorSync(k,"run-source-fetch",["--in-ref",de,"--out-ref",fe,"--err-ref",Ce],{timeout:y.timeout??t.executorTimeouts?.probeMs??6e4}),Ne=$.read(D),Ne===null)throw new Error("Executor produced no output file")}catch(M){let B=$.read(q)?.trim()??(M instanceof Error?M.message:String(M));throw new Error(`Probe failed: ${B}`)}finally{try{$.remove(P);}catch{}try{$.remove(q);}catch{}}return {bindTo:R,result:Ne}}function c(y,v,k){let R;try{R=i(y,v);}catch($){return F($ instanceof Error?$.message:String($))}if(k){let $=Ge(k);t.absoluteBlob.write($.value,R.result);}return z({bindTo:R.bindTo,resultSizeBytes:R.result.length})}function u(y,v){let k=y.params?.sourceIdx,R=y.params?.outRef;if(k===void 0)return F(`${v} requires params.sourceIdx`);if(!y.body||typeof y.body!="object"||Array.isArray(y.body))return F(`${v} requires card JSON object in body`);let $=y.body,x=$["card-content"]??$,P=$["mock-projections"]??{},D=x.source_defs??[];if(k<0||k>=D.length)return F(`sourceIdx ${k} out of range (card has ${D.length} source(s))`);let q=D[k],de=typeof q.bindTo=="string"?q.bindTo:"source";return {src:q,bindTo:de,outRef:R,mockProjections:P}}function d(y){try{let v=y.params?.cardId,k=y.params?.all;if(!v&&!k)return F("validateCard requires --card-id <id> or --all");let R=k?s().readAllCards().map(x=>x.id):[v],$=[];for(let x of R){let P=s().readCard(x);if(!P){$.push({cardId:x,isValid:!1,issues:[`Card "${x}" not found`]});continue}let D=a(x,P);if(D.status!=="success")return D;$.push(D.data);}return z($)}catch(v){return W(v)}}function l(y){try{if(!y.body||typeof y.body!="object"||Array.isArray(y.body))return F("validateCardPreflight requires card JSON object in body");let v=y.body,k=v["card-content"]??v,R=typeof k.id=="string"?k.id:"(unknown)",$=a(R,k),x=r().readTaskExecutorRef();if(x)try{let P=t.invokeExecutorSync(x,"validate-card-preflight",[],{timeout:t.executorTimeouts?.validationMs??1e4,input:JSON.stringify(k)}),D=JSON.parse(P.trim());if(!D.ok&&Array.isArray(D.errors)&&D.errors.length>0){let q=[...$.status==="success"?$.data.issues:[],...D.errors];return z({cardId:R,isValid:!1,issues:q})}}catch{}return $}catch(v){return W(v)}}function m(y){try{let v=y.params?.cardId,k=y.params?.sourceIdx,R=y.params?.outRef;if(!v)return F("probeSource requires params.cardId");if(k===void 0)return F("probeSource requires params.sourceIdx");let x=(y.body??{})["mock-projections"]??{},P=s().readCard(v);if(!P)return F(`Card "${v}" not found`);let D=P.source_defs??[];return k<0||k>=D.length?F(`sourceIdx ${k} out of range (card has ${D.length} source(s))`):c(D[k],x,R)}catch(v){return W(v)}}function h(y){try{let v=y.params?.outRef,k=y.body;if(!k)return F('probeTmpSource requires body with "source-def" and "mock-projections"');let R=k["source-def"],$=k["mock-projections"]??{};return R?c(R,$,v):F('probeTmpSource body requires "source-def"')}catch(v){return W(v)}}function f(y){try{let v=u(y,"probeSourcePreflight");if("status"in v)return v;let k=r().readTaskExecutorRef();if(!k)return F("No task-executor registered for this board");try{let R={...v.src,_projections:v.mockProjections},$=t.invokeExecutorSync(k,"probe-source-preflight",[],{timeout:v.src.timeout??t.executorTimeouts?.preflightMs??6e4,input:JSON.stringify(R)}),x=JSON.parse($.trim());return x.ok?z({bindTo:v.bindTo,reachable:x.reachable,latencyMs:x.latencyMs,note:x.note}):F(x.error??"Preflight probe failed")}catch{return F("Executor does not support probe-source-preflight")}}catch(v){return W(v)}}function p(y){try{let v=u(y,"runSourcePreflight");if("status"in v)return v;let k=r().readTaskExecutorRef();if(k)try{let P={...v.src,_projections:v.mockProjections},D=t.invokeExecutorSync(k,"run-source-preflight",[],{timeout:v.src.timeout??t.executorTimeouts?.preflightMs??6e4,input:JSON.stringify(P)}),q=JSON.parse(D.trim());return q.ok?z({bindTo:q.bindTo??v.bindTo,reachable:q.reachable,latencyMs:q.latencyMs,kind:q.kind,resultValue:q.resultValue,note:q.note}):F(q.error??"Source preflight failed")}catch{}let R=Date.now(),$=i(v.src,v.mockProjections);if(v.outRef){let P=Ge(v.outRef);t.absoluteBlob.write(P.value,$.result);}let x=$.result;try{x=JSON.parse($.result);}catch{}return z({bindTo:$.bindTo,reachable:!0,latencyMs:Date.now()-R,resultValue:x,note:"Actual fetch preflight passed"})}catch(v){return W(v)}}function S(y){try{let v=r().readTaskExecutorRef();if(!v)return F("No task-executor registered for this board");let k=t.invokeExecutorSync(v,"describe-capabilities",[],{timeout:t.executorTimeouts?.describeMs??1e4});return z(JSON.parse(k.trim()))}catch(v){return W(v)}}function b(y){try{let v=y.body;if(!v||!Array.isArray(v.ops))return F("updatesInCardStore requires body.ops array");let k=v.ops,R=s();for(let $ of k){let x=$.op,P=$.id;if(!P)return F('op is missing "id"');if(x==="update"){let D=$["card-content"];if(!D)return F(`update op for "${P}" is missing "card-content"`);R.writeCard(P,D);}else return F(`Unknown op type: "${x??"(none)"}"`)}return z()}catch(v){return W(v)}}function j(y){try{let v=y.body;if(!v||!Array.isArray(v.ids))return F("readFromCardStore requires body.ids array");let k=v.ids,R=s(),$=k.map(x=>({id:x,"card-content":R.readCard(x)}));return z({cards:$})}catch(v){return W(v)}}function w(y){try{if(!y.body||typeof y.body!="object"||Array.isArray(y.body))return F("evalCardCompute requires a JSON object in body");let v=y.body,k=v["card-content"]??v,R=typeof k.id=="string"?k.id:"(unknown)",$=v["mock-fetched-sources"]??{},x=v["mock-requires"]??{},P=k.compute;if(!P||!Array.isArray(P)||P.length===0)return z({cardId:R,ok:!0,computed_values:{},errors:[]});let D={id:R,card_data:k.card_data??{},requires:x,source_defs:k.source_defs,compute:P},q=bt.runSync(D,{sourcesData:$}),de=q.node.computed_values??{},fe=q.errors??[];return z({cardId:R,ok:fe.length===0,computed_values:de,errors:fe})}catch(v){return W(v)}}function E(y){try{if(!y.body||typeof y.body!="object"||Array.isArray(y.body))return F("simulateCardCycle requires a JSON object in body");let v=y.body,k=v["card-content"]??v,R=typeof k.id=="string"?k.id:"(unknown)",$=v["mock-fetched-sources"]??{},x=v["mock-requires"]??{},P=a(R,k),D=P.status==="success"?{isValid:P.data.isValid,issues:P.data.issues}:{isValid:!1,issues:[P.status==="fail"?P.error:"internal error"]},q=k.source_defs??[],de=k.card_data??{},fe=[],Ce=[];if(q.length>0){fe=bt.enrichSourcesSync(q,{card_data:de,requires:x});for(let we of fe){let qe=we.projections,ut=we._projections;if(qe&&ut){for(let ct of Object.keys(qe))if(ut[ct]===void 0){let Mt=typeof we.bindTo=="string"?we.bindTo:"(unknown)";Ce.push({bindTo:Mt,key:ct,error:`Projection "${ct}" resolved to undefined`});}}}}let Ne=[],M=v["task-executor-ref"],B=(M?.howToRun&&M?.whatToRun?M:void 0)??r().readTaskExecutorRef();for(let we=0;we<fe.length;we++){let qe=fe[we],ut=typeof qe.bindTo=="string"?qe.bindTo:`source_${we}`;if(!B){Ne.push({bindTo:ut,skipped:!0,error:"No task executor configured"});continue}try{let ct={...qe},Mt=t.invokeExecutorSync(B,"run-source-preflight",[],{timeout:qe.timeout??t.executorTimeouts?.preflightMs??6e4,input:JSON.stringify(ct)}),Lt=JSON.parse(Mt.trim());Ne.push({bindTo:ut,reachable:Lt.reachable,latencyMs:Lt.latencyMs,error:Lt.ok?void 0:Lt.error});}catch{Ne.push({bindTo:ut,skipped:!0,error:"Executor does not support run-source-preflight"});}}let te=k.compute,pe={},$e=[];if(te&&Array.isArray(te)&&te.length>0){let we={id:R,card_data:de,requires:x,source_defs:k.source_defs,compute:te},qe=bt.runSync(we,{sourcesData:$});pe=qe.node.computed_values??{},$e=qe.errors??[];}let tt=D.isValid&&Ce.length===0&&$e.length===0&&Ne.every(we=>we.reachable!==!1);return z({cardId:R,ok:tt,validation:D,source_probes:Ne,projection_errors:Ce,computed_values:pe,compute_errors:$e})}catch(v){return W(v)}}return {validateCard:d,validateCardPreflight:l,probeSource:m,probeTmpSource:h,probeSourcePreflight:f,runSourcePreflight:p,evalCardCompute:w,simulateCardCycle:E,describeTaskExecutorCapabilities:S,updatesInCardStore:b,readFromCardStore:j}}function ay(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 Wc(){return new Date().toISOString()}function Yc(e){return new TextEncoder().encode(e).byteLength}function iy(e){return e?{key:e.key,size:e.size,updatedAt:e.updatedAt,contentType:e.contentType}:null}function uy(e){let t=String(e||"").match(/^(\d+)[-_]/);return t?parseInt(t[1],10):0}function cy(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 dy(e){return String(e||"").toLowerCase().replace(/\s+/g,"_").replace(/[^a-z0-9_-]/g,"_").replace(/_+/g,"_").replace(/^_+|_+$/g,"")||"file"}function ly(e){if(!e||e===".")return "";let t=String(e).replace(/^\./,"").toLowerCase().replace(/[^a-z0-9]/g,"");return t?`.${t}`:""}function fy(e){let t=cy(e),r=t.lastIndexOf(".");return r<=0||r===t.length-1?{stem:t,ext:""}:{stem:t.slice(0,r),ext:t.slice(r)}}function py(e){let t=e.lastIndexOf("/");return t>=0?e.slice(t+1):e}function ta(e){function t(r){let n=e.stat?iy(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:Yc(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??Wc(),o.size=o.size??Yc(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??Wc(),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 my(e){function t(s,o){let a=0,i=[];Array.isArray(o)&&i.push(...o);for(let c of e.list(`${s}/`))i.push(py(c.key));for(let c of i){let u=uy(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}=fy(s),d=ly(u),l=dy(c),m=`${String(o).padStart(3,"0")}-`,h=d,f=i-m.length-h.length;f<1&&(h="",f=i-m.length);let p=l.slice(0,Math.max(1,f)),S=`${m}${p}${h}`;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 gy(){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 ck(){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=Je(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 child_process.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=Je(r);}catch{t="";}if(!t)return null;try{let r=child_process.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 vy=".board.lock";function Xc(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 Sy(e,t){return typeof e=="string"?{cliDir:e,opts:t}:{cliDir:void 0,opts:e}}function ky(e,t){return typeof e=="string"?{cliDir:e,opts:t}:{cliDir:void 0,opts:e}}function Qc(e){if(e)return e;let t=pa((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('board-live-cards-node.cjs', document.baseURI).href))),r=[t,xe(t,"..","cli","node"),xe(t,"..","..","cli","node")];for(let n of r)try{return Xn(n),n}catch{}throw new Error(`createFsBoardPlatformAdapter: could not resolve a public CLI directory from module dir ${t}`)}function wy(e,t,r){let{cliDir:n,opts:s}=Sy(t,r),o=Qc(n),a=e.value,c={meta:"board-live-cards",howToRun:"local-node",whatToRun:(s?.suppressSpawn?"":Xn(o))?oe({kind:"yaml-flow-cli",value:"board-live-cards-cli.js"}):"",...s?.notifyChannel?{extra:{notifyChannel:s.notifyChannel}}:{}};return {kvStorage:u=>Qr(xe(a,`.${u}`)),blobStorage:u=>u?Ut(xe(a,u)):Ut(a),scratchStorage:()=>Yr(xe(a,".tmp")),scratchStorageForRef:u=>Yr(Ge(u).value),archiveFactory:()=>Xr(xe(a,"archive")),archiveFactoryForRef:u=>Xr(Ge(u).value),journalAdapter:()=>Ia(a),lock:Pa(xe(a,vy)),selfRef:c,async dispatchExecution(u,d){if(s?.suppressSpawn)return {dispatched:false};try{let l=d.source_def?.bindTo??Hn().slice(0,8),m=Yr(xe(a,".tmp")),h=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(h)),b=oe(m.keyRef(f)),j=oe(m.keyRef(p));return Ea(u,{subcommand:"run-source-fetch",inRef:S,outRef:b,errRef:j},o),{dispatched:!0}}catch(l){let m=l instanceof Error?l.message:String(l);try{let h=Xr(xe(a,"archive")),f=new Date().toISOString().replace(/[:.]/g,"-"),p=d.source_def?.bindTo??"unknown";h.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=la(u.value)?ss().read(u.value):Ut(a).read(u.value);if(d===null)throw new Error(`resolveBlob: blob not found: ::${u.kind}::${u.value}`);return d},hashFn:Ta,genId:()=>fa(`${Date.now()}-${Math.random()}`).slice(0,32),kvStorageForRef:u=>Qr(Ge(u).value),requestProcessAccumulated(){s?.suppressSpawn||ha(o,e,s?.notifyChannel);},publishBoardChangeNotifications(u){if(!s?.notifyChannel||u.length===0)return;let d=u.map(l=>({id:Hn(),ts:new Date().toISOString(),boardRef:oe(e),notification:l}));ya(s.notifyChannel,d,s.onWarn);},onWarn:s?.onWarn}}function dk(e,t,r){let{cliDir:n,opts:s}=ky(t,r),o=Qc(n),a=wy(e,o,s),i=Jr();return {...a,invokeExecutorSync(c,u,d,l){let{command:m,baseArgs:h}=zr(c,o),f=c.extra?["--extra",Buffer.from(JSON.stringify(c.extra)).toString("base64")]:[];return i.executeSync(m,[...h,u,...d,...f],{timeout:l?.timeout??3e4,encoding:"utf-8",input:l?.input})},validateSchema(c){let u=Jo(c);return {ok:u.errors.length===0,errors:u.errors}},absoluteBlob:ss()}}function lk(e,t={}){let r=t.chatsSubdir??"chats",n=t.kvSubdir??".kv",s=n?[n,"chat"]:["chat"],o=r&&!Xc(e,r)?xe(e,r):e,a=Qr(xe(e,...s));return zo(i=>{let u=`${String(i).replace(/[^a-zA-Z0-9_-]/g,"_")}.jsonl`,d=xe(o,u);return os(d)},a)}function fk(e,t={}){let r=t.filesSubdir??"files",n=r&&!Xc(e,r)?xe(e,r):e;return ta(Ut(n))}function pk(e){try{let t=JSON.parse(Buffer.from(e,"base64url").toString());return typeof t.br=="string"?t.br:null}catch{return null}}
|
|
19
|
-
exports.BOARD_GRAPH_KEY=
|
|
18
|
+
`,"utf-8");},generateId(){return crypto.randomUUID()}}}function Pa(e){return {tryAcquire(){try{if(!___namespace.existsSync(e)){___namespace.mkdirSync(X__namespace.dirname(e),{recursive:!0});try{___namespace.writeFileSync(e,"{}",{flag:"wx"});}catch{}}return properLockfile.lockSync(e,{retries:0})}catch{return null}}}}var Oa={$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"},chat:{type:"boolean",description:"Whether this file entry is associated with a chat interaction"}},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 dc=ld(ic());var Rh=module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('board-live-cards-node.cjs', document.baseURI).href))),Ch=Rh("./jsonata-sync.cjs"),qn=null;var uc=/\b(card_data|requires|fetched_sources|computed_values|source_defs)\b/g,$h=/^\s*(card_data|requires|fetched_sources|computed_values|source_defs)(\.|$)/;function Eh(e){let t=new Set,r;for(uc.lastIndex=0;(r=uc.exec(e))!==null;)t.add(r[1]);return t}function lc(e){let t=$h.exec(e);return t?t[1]:null}function cc(e,t,r,n){try{Ch(e);}catch(o){let a=o instanceof Error?o.message:String(o);n.push(`${t}: invalid JSONata expression (${a})`);return}let s=Eh(e);for(let o of s)r.has(o)||n.push(`${t}: disallowed namespace "${o}" in expression`);}function Jo(e,t,r){if(Array.isArray(e)){e.forEach((s,o)=>{Jo(s,`${t}/${o}`,r);});return}if(typeof e=="string"){let s=lc(e);if(!s)return;new Set(["card_data","requires","computed_values"]).has(s)||r.push(`${t}: disallowed namespace "${s}" in view reference`);return}if(!e||typeof e!="object")return;let n=e;for(let[s,o]of Object.entries(n))Jo(o,`${t}/${s}`,r);}function xh(){if(qn)return qn;let e=new dc.default({allErrors:true});return bh__default.default(e),qn=e.compile(Oa),qn}function fc(e){let t=xh(),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 pc(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||cc(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 g=lc(l);g===null?t.push(`/provides/${d}/ref: path "${l}" must start with a valid namespace (${[...s].join(", ")})`):s.has(g)||t.push(`/provides/${d}/ref: disallowed namespace "${g}" in path "${l}" (valid: ${[...s].join(", ")})`);});let a=r.view;a&&typeof a=="object"&&!Array.isArray(a)&&Jo(a,"/view",t);let i=new Set(["card_data","requires"]),c=r.source_defs;return Array.isArray(c)&&c.forEach((u,d)=>{if(!u||typeof u!="object"||Array.isArray(u))return;let l=u.projections;if(!(!l||typeof l!="object"||Array.isArray(l)))for(let[g,h]of Object.entries(l))typeof h!="string"||h.trim().length===0||cc(h,`/source_defs/${d}/projections/${g}`,i,t);}),{ok:t.length===0,errors:t}}function zo(e){let t=fc(e);if(!t.ok)return t;let r=pc(e);return r.ok?{ok:true,errors:[]}:{ok:false,errors:r.errors}}function mc(e){return String(e).replace(/[^a-zA-Z0-9_-]/g,"_")}function gc(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 Ho(e,t){let r=s=>`chats/${mc(s)}/processing`,n=s=>`chats/${mc(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(gc)},readAfter(s,o){let a=e(s).readAfter(o);return {records:a.entries.map(gc),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 Ah(){let e=globalThis.crypto;return typeof e?.randomUUID=="function"?String(e.randomUUID()):`id-${Date.now()}-${Math.random().toString(36).slice(2)}`}function Th(){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:Ah(),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 Rt={RUNNING:"running",COMPLETED:"completed",FAILED:"failed",INACTIVATED:"inactivated"};function qe(e){return e?Array.isArray(e.provides)?e.provides:[]:[]}function Ct(e){return e?Array.isArray(e.requires)?e.requires:[]:[]}function hc(e){return e.tasks??{}}function Wo(e){return e?e.status===Rt.FAILED||e.status===Rt.INACTIVATED:false}function yc(e,t){return e.refreshStrategy??t?.refreshStrategy??"data-changed"}function vc(e){return e.maxExecutions}function Sc(e,t){let r=new Set;for(let[n,s]of Object.entries(t))if(s.status===Rt.COMPLETED){let o=e.tasks[n];o&&qe(o).forEach(i=>r.add(i));}return Array.from(r)}function kc(e,t){let r={};return e.forEach(n=>{let s=t[n];if(!s)return;qe(s).forEach(a=>{r[a]||(r[a]=[]),r[a].push(n);});}),r}function wc(e,t,r){let n=e.tasks[t]??Fn(),s={};if(r){let a=r.tasks[t],i=Ct(a);for(let c of i)for(let[u,d]of Object.entries(r.tasks))if(qe(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 bc(e,t,r,n,s,o){let a=e.tasks[r]??Fn(),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=qe(i);let u=a.startConsumedHashes?{...a.startConsumedHashes}:{...a.lastConsumedHashes};if(!a.startConsumedHashes){let g=i.requires??[];for(let h of g)for(let[f,p]of Object.entries(t.tasks))if(qe(p).includes(h)){let S=e.tasks[f];S?.lastDataHash&&(u[h]=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 _c(e,t,r,n){let s=e.tasks[r]??Fn(),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 Rc(e,t,r,n){let s=e.tasks[t]??Fn(),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 Cc(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 Fn(){return {status:"not-started",executionCount:0,retryCount:0,lastEpoch:0,messages:[],progress:null}}function Dn(e,t){let r=`live-${Date.now()}`,n={};for(let o of Object.keys(e.tasks))n[o]=Ec();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 Ih(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:wc(n,t.taskName,r)};case "task-completed":return {config:r,state:bc(n,r,t.taskName,t.result,t.dataHash,t.data)};case "task-failed":return {config:r,state:_c(n,r,t.taskName,t.error)};case "task-progress":return {config:r,state:Rc(n,t.taskName,t.message,t.progress)};case "task-restart":return {config:r,state:Cc(n,t.taskName)};case "inject-tokens":return {config:r,state:{...n,availableOutputs:[...new Set([...n.availableOutputs,...t.tokens])],lastUpdated:new Date().toISOString()}};case "agent-action":return {config:r,state:Dh(n,t.action)};case "task-upsert":return jh(e,t.taskName,t.taskConfig);case "task-removal":return Ph(e,t.taskName);case "node-requires-add":return Oh(e,t.nodeName,t.tokens);case "node-requires-remove":return Nh(e,t.nodeName,t.tokens);case "node-provides-add":return qh(e,t.nodeName,t.tokens);case "node-provides-remove":return Fh(e,t.nodeName,t.tokens);default:return e}}function $c(e,t){return t.reduce((r,n)=>Ih(r,n),e)}function jh(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]:Ec()},lastUpdated:new Date().toISOString()}}}function Ph(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 Oh(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=Ct(n),o=r.filter(a=>!s.includes(a));return o.length===0?e:{config:{...e.config,tasks:{...e.config.tasks,[t]:{...n,requires:[...s,...o]}}},state:e.state}}function Nh(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=Ct(n),o=s.filter(a=>!r.includes(a));return o.length===s.length?e:{config:{...e.config,tasks:{...e.config.tasks,[t]:{...n,requires:o}}},state:e.state}}function qh(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=qe(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 Fh(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=qe(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 Dr(e){return {version:1,config:e.config,state:e.state,snapshotAt:new Date().toISOString()}}function Mn(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 Ec(){return {status:"not-started",executionCount:0,retryCount:0,lastEpoch:0,messages:[],progress:null}}function Dh(e,t){let r=new Date().toISOString();switch(t){case "stop":return {...e,status:"stopped",lastUpdated:r};case "pause":return {...e,status:"paused",lastUpdated:r};case "resume":return {...e,status:"running",lastUpdated:r};default:return e}}function Mr(e){let{config:t,state:r}=e,n=hc(t);if(Object.keys(n).length===0)return {eligible:[],pending:[],unresolved:[],blocked:[],conflicts:{}};let o=Mh(n),a=Sc(t,r.tasks),i=new Set([...a,...r.availableOutputs]),c=[],u=[],d=[],l=[];for(let[h,f]of Object.entries(n)){let p=r.tasks[h],S=yc(f,t.settings),b=S!=="once";if(p?.status===Rt.RUNNING||Wo(p))continue;let P=vc(f);if(P!==void 0&&p&&p.executionCount>=P||f.circuit_breaker&&p&&p.executionCount>=f.circuit_breaker.max_executions||!b&&p?.status===Rt.COMPLETED)continue;if(b&&p?.status===Rt.COMPLETED){let k=Ct(f),R=false;switch(S){case "data-changed":{k.length>0&&k.some(A=>{for(let[j,D]of Object.entries(n))if(qe(D).includes(A)){let F=r.tasks[j];if(!F)continue;let de=p.lastConsumedHashes?.[A];return F.lastDataHash==null?F.executionCount>p.lastEpoch:F.lastDataHash!==de}return false})||(R=true);break}case "epoch-changed":{k.length>0&&k.some(A=>{for(let[j,D]of Object.entries(n))if(qe(D).includes(A)){let F=r.tasks[j];if(F&&F.executionCount>p.lastEpoch)return true}return false})||(R=true);break}case "time-based":{let $=f.refreshInterval??0;if($<=0){R=true;break}let A=p.completedAt;if(!A){R=true;break}(Date.now()-Date.parse(A))/1e3<$&&(R=true);break}case "manual":R=true;break}if(R)continue}let w=Ct(f);if(w.length===0){c.push(h);continue}let x=[],y=[],v=[];for(let k of w){if(i.has(k))continue;let R=o[k]||[];R.length===0?x.push(k):R.every(A=>Wo(r.tasks[A]))?v.push({token:k,failedProducer:R[0]}):y.push(k);}x.length>0?d.push({taskName:h,missingTokens:x}):v.length>0?l.push({taskName:h,failedTokens:v.map(k=>k.token),failedProducers:[...new Set(v.map(k=>k.failedProducer))]}):y.length>0?u.push({taskName:h,waitingOn:y}):c.push(h);}let g={};if(c.length>1){let h=kc(c,n);for(let[f,p]of Object.entries(h))p.length>1&&(g[f]=p);}return {eligible:c,pending:u,unresolved:d,blocked:l,conflicts:g}}function Mh(e){let t={};for(let[r,n]of Object.entries(e)){for(let s of qe(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 Lr=class{buffer=[];append(t){this.buffer.push(t);}drain(){let t=this.buffer;return this.buffer=[],t}get size(){return this.buffer.length}};function Yo(e){let t=Xo(e);return Lh(t)}function Xo(e){if(e==null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return "["+e.map(Xo).join(",")+"]";let t=e;return "{"+Object.keys(t).sort().map(n=>JSON.stringify(n)+":"+Xo(t[n])).join(",")+"}"}function Lh(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 Vh(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 Bh(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 xc(e){let t=JSON.stringify({t:e,n:Date.now().toString(36)+Math.random().toString(36).slice(2,6)});return Vh(t)}function Kh(e){try{let t=JSON.parse(Bh(e));return typeof t?.t=="string"?{taskName:t.t}:null}catch{return null}}function Ac(e,t,r){let{handlers:n,onNodeRemoved:s,onDrain:o}=t,a=new Lr,i="state"in e&&"config"in e?e:Dn(e),c=false,u=new Set,d=new Map(Object.entries(n)),l=new Lr,g=false,h=false;function f(){if(!c){if(g){h=true;return}g=true;try{do h=!1,p();while(h)}finally{g=false;}}}function p(){let w=l.drain(),x=a.drain(),y=[...w,...x];if(y.length>0&&(i=$c(i,y),s)){for(let k of y)if(k.type==="task-removal")try{s(k.taskName);}catch(R){console.warn("[reactive] onNodeRemoved failed:",R instanceof Error?R.message:String(R));}}let v=Mr(i);y.length>0&&o?.(y,i,v);for(let k of v.eligible)P(k);for(let k of y)if(k.type==="task-progress"){let{taskName:R,update:$}=k;if(!i.config.tasks[R])continue;let j=i.state.tasks[R];if(!j||j.status!=="running")continue;let D=xc(R),F=b(R,D,$).catch(de=>{c||(l.append({type:"task-failed",taskName:R,error:de.message??String(de),timestamp:new Date().toISOString()}),f());}).finally(()=>{u.delete(F);});u.add(F);}}function S(w){let y=i.config.tasks[w].requires??[],v=new Map;for(let[R,$]of Object.entries(i.config.tasks))for(let A of $.provides??[])v.set(A,R);let k={};for(let R of y){let $=v.get(R);$?k[R]=i.state.tasks[$]?.data:k[R]=void 0;}return k}async function b(w,x,y){let v=i.config.tasks[w],k=v.taskHandlers??[],R=S(w);for(let $ of k){let A=d.get($);if(!A)throw new Error(`Handler '${$}' not found in registry (task '${w}')`);let j={nodeId:w,state:R,taskState:i.state.tasks[w],config:v,callbackToken:x,update:y};if(await A(j)==="task-initiate-failure")throw new Error(`Handler '${$}' returned task-initiate-failure (task '${w}')`)}}function P(w){let y=i.config.tasks[w]?.taskHandlers;if(!y||y.length===0)return;l.append({type:"task-started",taskName:w,timestamp:new Date().toISOString()}),f();let v=xc(w),k=b(w,v).catch(R=>{c||(l.append({type:"task-failed",taskName:w,error:R.message??String(R),timestamp:new Date().toISOString()}),f());}).finally(()=>{u.delete(k);});u.add(k);}return {push(w){c||(w.type==="task-completed"&&w.data&&!w.dataHash&&(w={...w,dataHash:Yo(w.data)}),a.append(w),f());},pushAll(w){if(!c){for(let x of w)x.type==="task-completed"&&x.data&&!x.dataHash?a.append({...x,dataHash:Yo(x.data)}):a.append(x);f();}},resolveCallback(w,x,y){if(c)return;let v=Kh(w);if(!v)return;let{taskName:k}=v;if(i.config.tasks[k]){if(y&&y.length>0)a.append({type:"task-failed",taskName:k,error:y.join("; "),timestamp:new Date().toISOString()});else {let R=x&&Object.keys(x).length>0?Yo(x):void 0;a.append({type:"task-completed",taskName:k,data:x,dataHash:R,timestamp:new Date().toISOString()});}f();}},addNode(w,x){c||(a.append({type:"task-upsert",taskName:w,taskConfig:x,timestamp:new Date().toISOString()}),f());},removeNode(w){c||(a.append({type:"task-removal",taskName:w,timestamp:new Date().toISOString()}),f());},addRequires(w,x){c||(a.append({type:"node-requires-add",nodeName:w,tokens:x,timestamp:new Date().toISOString()}),f());},removeRequires(w,x){c||(a.append({type:"node-requires-remove",nodeName:w,tokens:x,timestamp:new Date().toISOString()}),f());},addProvides(w,x){c||(a.append({type:"node-provides-add",nodeName:w,tokens:x,timestamp:new Date().toISOString()}),f());},removeProvides(w,x){c||(a.append({type:"node-provides-remove",nodeName:w,tokens:x,timestamp:new Date().toISOString()}),f());},registerHandler(w,x){d.set(w,x);},unregisterHandler(w){d.delete(w);},retrigger(w){c||i.config.tasks[w]&&(a.append({type:"task-restart",taskName:w,timestamp:new Date().toISOString()}),f());},retriggerAll(w){if(!c){for(let x of w)i.config.tasks[x]&&a.append({type:"task-restart",taskName:x,timestamp:new Date().toISOString()});f();}},snapshot(){return Dr(i)},getState(){return i},getSchedule(){return Mr(i)},async waitForHandlers(){u.size>0&&await Promise.allSettled([...u]);},async dispose(w){w?.wait&&u.size>0&&await Promise.allSettled([...u]),c=true;}}}var Uh=module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('board-live-cards-node.cjs', document.baseURI).href))),Ln=Uh("./jsonata-sync.cjs"),jc=Ln;function Tc(e,t){if(!t||!e)return;let r=t.split("."),n=e;for(let s=0;s<r.length;s++){if(n==null)return;n=n[r[s]];}return n}function Pc(e,t,r){let n=t.split("."),s=e;for(let o=0;o<n.length-1;o++)(s[n[o]]==null||typeof s[n[o]]!="object")&&(s[n[o]]={}),s=s[n[o]];s[n[n.length-1]]=r;}async function 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 Ln(s.expr).evaluate(n);Pc(e.computed_values,s.bindTo,o),n.computed_values=e.computed_values;}catch{}return e}function zh(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=jc(o.expr).evaluate(n);Pc(e.computed_values,o.bindTo,a),n.computed_values=e.computed_values;}catch(a){let i=a instanceof Error?a.message:String(a);s.push({bindTo:o.bindTo,error:i});}return s.length>0?{ok:true,node:e,errors:s}:{ok:true,node:e}}async function Hh(e,t,r){let n={...r??{},card_data:t.card_data??{},requires:t.requires??{},fetched_sources:t._sourcesData??{},computed_values:t.computed_values??{}};return Ln(e).evaluate(n)}function Wh(e,t){return t.startsWith("fetched_sources.")?Tc(e._sourcesData??{},t.slice(16)):Tc(e,t)}var Ic=new Set(["metric","table","editable-table","chart","form","filter","list","notes","todo","alert","narrative","badge","text","markdown","ref","custom","actions"]),Yh=new Set(["id","meta","requires","provides","view","card_data","compute","source_defs"]);function Xh(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))Yh.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`):Ic.has(s.kind)||t.push(`view.elements[${o}].kind: unknown kind "${s.kind}". Valid: ${[...Ic].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 Qh(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 Ln(a).evaluate(r);}catch{s[o]=void 0;}}return {...n,_projections:s}}))}function Zh(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]=jc(a).evaluate(r);}catch{s[o]=void 0;}}return {...n,_projections:s}})}var $t={run:Jh,runSync:zh,eval:Hh,resolve:Wh,validate:Xh,enrichSources:Qh,enrichSourcesSync:Zh};function ey(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:ne({kind:"fs-path",value:e}),...t?{extra:t}:{}}}function Qo(e){return JSON.stringify(e)}function Zo(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 Vn(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],g=u[l],h=g&&typeof g=="object"&&!Array.isArray(g)?{...g}:{};u[l]=h,u=h;}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 Bn(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}`)},listSources(r){return e.listKeys(`${r}/`).filter(n=>!n.includes("/.staged/")).map(n=>n.slice(`${r}/`.length))}}}function Dc(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 Mc(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 Vr="v1",Et="board/graph",Lc="board/lastJournalProcessedId";function Oc(e){return `cards/${e}/runtime`}function Vc(e){return {readRuntime(t){return e.read(Oc(t))??{_sources:{}}},writeRuntime(t,r){e.write(Oc(t),r);}}}function ty(e,t){let r={...e};for(let n of t.deleteKeys)delete r[n];return {...r,...t.shallowMerge}}function Bc(e){return {readSnapshot(t){return e.readValues(t)},commitSnapshot(t,r){if(r.schemaVersion!==Vr)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=ty(n.values,r);return {ok:true,newVersion:e.writeValues(t,s,r.deleteKeys)}}}}function ea(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 Zo(r.trim())},writeTaskExecutorRef(r){e.write("task-executor",Qo(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);},readChatStoreRef(){return t("chat-store-ref")},writeChatStoreRef(r){e.write("chat-store-ref",r);},readArtifactsStoreRef(){return t("artifacts-store-ref")},writeArtifactsStoreRef(r){e.write("artifacts-store-ref",r);}}}function Kc(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 Nc(e){return e?{lastRequestedToken:e.lastRequestedToken,lastCompletedToken:e.lastCompletedToken,lastCompletionStatus:e.lastCompletionStatus??(e.lastCompletedToken?"success":"not-started"),queueRequestedToken:e.queueRequestedToken}:{lastCompletionStatus:"not-started"}}function ry(e){return e?.lastRequestedToken?e.lastCompletedToken!==e.lastRequestedToken:false}function qc(e,t){return e?.lastRequestedToken?ry(e)?"in-flight":!e.lastCompletedToken||e.lastCompletedToken<t?"dispatch":"idle":"dispatch"}function ny(e,t){return {...e,lastCompletedToken:t,lastCompletionStatus:"success"}}function Fc(e,t){return {...e,lastCompletedToken:t,lastCompletionStatus:"failure"}}function Kn(e,t){let r=t.state.tasks,n=t.config.tasks,s=Object.keys(r),o=Mr(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 b=c.get(S)??[];b.push(f),c.set(S,b);}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 b=S.requires??[],P=S.provides??[],w=Object.keys(p.data??{}).sort(),x=b.filter(A=>t.state.availableOutputs.includes(A)),y=b.filter(A=>!t.state.availableOutputs.includes(A)),v=i.get(f)??y,k=new Set;for(let A of P)for(let j of c.get(A)??[])j!==f&&k.add(j);let R=p.failedAt,$=p.error?{message:p.error,code:"TASK_FAILED",at:R,source:"task-runtime"}:void 0;return {name:f,status:p.status,error:$,requires:b,requires_satisfied:x,requires_missing:y,provides_declared:P,provides_runtime:w,blocked_by:v,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},g=new Set;for(let f of Object.values(n))for(let p of f.requires??[])g.add(p);let h=0;for(let[f,p]of Object.entries(n)){let S=(p.requires??[]).length===0,P=(p.provides??[]).some(w=>(c.get(w)??[]).some(x=>x!==f));S&&!P&&(h+=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:h,topology:{edge_count:Array.from(g).length,max_fan_out_card:l.name,max_fan_out:l.fanOut}},cards:u}}function sy(){return new Date().toISOString()}function Gc(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??{},g=u.source_defs??[],h=g.filter(M=>M.optionalForCompletionGating!==true),f=r.cardRuntimeStore.readRuntime(d),p=false,S=()=>{p&&(r.cardRuntimeStore.writeRuntime(d,f),p=false);},b=M=>Nc(f._sources[M]),P=(M,B)=>{f._sources[M]=Nc(B),p=true;},w=i.taskState?.executionCount??0;if(f._lastExecutionCount!==w&&(f._sources={},f._lastExecutionCount=w,p=true),i.update){let M=i.update,B=M.outputFile;if(B){let re=b(B);if(M.failure){let pe=M.rqt??re.lastRequestedToken??re.queueRequestedToken;pe&&P(B,Fc(re,pe));}else {let pe=M.rqt;if(!re.lastCompletedToken||pe>re.lastCompletedToken){let Te=typeof M.deliveryToken=="string"?M.deliveryToken:void 0,st=false;Te&&(st=r.fetchedSourcesStore.commitSourceData(d,B,Te)),st?P(B,ny(re,pe)):P(B,Fc(re,pe));}}S();}}let y={};for(let M of g)if(M.outputFile){let B=r.fetchedSourcesStore.readSourceData(d,M.outputFile);B!==null&&(y[M.bindTo]=B);}let v={};for(let[M,B]of Object.entries(i.state??{}))if(B!==null&&typeof B=="object"&&!Array.isArray(B)){let re=B[M];v[M]=re!==void 0?re:B;}else v[M]=B;let k={id:d,card_data:{...l},requires:v,source_defs:g,compute:u.compute};k._sourcesData=y,u.compute&&$t.runSync(k,{sourcesData:y}),(o??r.outputStore.writeComputedValues.bind(r.outputStore))(d,k.computed_values??{});let R={...u},$=$t.enrichSourcesSync(Array.isArray(u.source_defs)?u.source_defs:void 0,{card_data:u.card_data,requires:v}),A=e.value;R.source_defs=Array.isArray($)?$.map(M=>({...M,boardDir:typeof M.boardDir=="string"&&M.boardDir?M.boardDir:A})):$;let j=sy(),D=i.update?void 0:j,F=h.filter(M=>{let B=M.outputFile;if(typeof B!="string"||!B)return true;let re=b(B);D&&(re={...re,queueRequestedToken:D},P(B,re));let pe=re.queueRequestedToken??re.lastRequestedToken??j,Te=qc(re,pe);return Te==="in-flight"?false:Te==="dispatch"});if(S(),F.length>0){let M=false,B=j;for(let re of F){let pe=re.outputFile;if(typeof pe!="string"||!pe)continue;let Te=b(pe),st=Te.queueRequestedToken??j;P(pe,{...Te,lastRequestedToken:st}),B=st,M=true;}return M&&S(),M&&(c.push({taskKind:"source-fetch",payload:{boardRef:ne(e),enrichedCard:R,callbackToken:i.callbackToken,rqt:B}}),r.executionRequestStore.appendEntries(t,c)),"task-initiated"}if(h.some(M=>{let B=M.outputFile;if(typeof B!="string"||!B)return false;let re=b(B),pe=re.queueRequestedToken??re.lastRequestedToken??j;return qc(re,pe)==="in-flight"}))return "task-initiated";let fe=u.provides??[],Ae={};for(let{bindTo:M,ref:B}of fe)Ae[M]=$t.resolve(k,B);return (a??r.outputStore.writeDataObjects.bind(r.outputStore))(Ae),g.filter(M=>{if(M.optionalForCompletionGating!==true)return false;let B=b(M.outputFile);return !B.lastRequestedToken||!B.lastCompletedToken?true:B.lastCompletedToken<=B.lastRequestedToken}).length>0&&c.push({taskKind:"source-fetch",payload:{boardRef:ne(e),enrichedCard:R,callbackToken:i.callbackToken,rqt:j}}),n(i.nodeId,Ae),c.length>0&&r.executionRequestStore.appendEntries(t,c),"task-initiated"}}var Gn={settings:{completion:"manual",refreshStrategy:"data-changed"},tasks:{}};function Uc(e){return {[Et]:e.graph,[Lc]:e.lastDrainedJournalId}}function Jc(e){let t=e[Et],r=e[Lc];if(!t||typeof t!="object")throw new Error(`State snapshot is missing required key: ${Et}`);return {graph:t,lastDrainedJournalId:typeof r=="string"?r:""}}function zc(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 ta(e){function t(o){return {status:"success",data:o}}function r(o){return {status:"fail",error:o}}function n(o){return {status:"error",error:o instanceof Error?o.message:String(o)}}function s(o){if(Array.isArray(o))return o;if(o&&typeof o=="object"){let a=o;return Array.isArray(a.files)?a.files:[o]}return null}return {get(o){try{let a=o.params?.id;if(a){let i=e.readCard(a);return i?t({cards:[i]}):r(`card "${a}" not found`)}return t({cards:e.readAllCards()})}catch(a){return n(a)}},set(o){try{let a=o.body;if(a==null)return r("set requires a body (card object or array of cards)");let i=Array.isArray(a)?a:[a];for(let c of i){if(typeof c.id!="string")return r("each card must have a string `id` field");e.writeCard(c.id,c);}return t({count:i.length})}catch(a){return n(a)}},del(o){try{let a=o.body?.ids??[],i=o.params?.id,c=i?[...a,i]:a;if(c.length===0)return r("del requires body.ids (string[]) or params.id");for(let u of c)e.removeCard(u);return t({count:c.length})}catch(a){return n(a)}},patch(o){try{let a=o.params?.id,i=o.params?.path;if(!a)return r("patch requires params.id");if(!i)return r("patch requires params.path");let c=o.body,u=c&&Object.prototype.hasOwnProperty.call(c,"value")?c.value:o.body;return e.patchCard(a,i,u),t({count:1})}catch(a){return n(a)}},appendFiles(o){try{let a=o.params?.id;if(!a)return r("appendFiles requires params.id");let i=e.readCard(a);if(!i)return r(`card "${a}" not found`);let c=s(o.body);if(!c||c.length===0)return r("appendFiles requires a file metadata object, array, or body.files array");let u=i.card_data&&typeof i.card_data=="object"&&!Array.isArray(i.card_data)?i.card_data:{},d=Array.isArray(u.files)?u.files:[],l=[...d,...c],g=c.map((f,p)=>({idx:d.length+p,entry:f})),h=this.patch({params:{id:a,path:"card_data.files"},body:{value:l}});return h.status!=="success"?h:t({files_added:g})}catch(a){return n(a)}}}}function J(e){return e!==void 0?{status:"success",data:e}:{status:"success"}}function q(e){return {status:"fail",error:e}}function W(e){return {status:"error",error:e instanceof Error?e.message:String(e)}}function oy(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 Wc(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 Un(e){try{let t=JSON.parse(Wc(e));return typeof t?.t=="string"?{taskName:t.t}:null}catch{return null}}function ay(e){return oy(JSON.stringify(e))}function Hc(e){try{let t=JSON.parse(Wc(e));return typeof t?.cbk=="string"&&typeof t?.cid=="string"&&typeof t?.b=="string"&&typeof t?.d=="string"?t:null}catch{return null}}function Re(){return new Date().toISOString()}function iy(e){return String(e||"").replace(/[^a-zA-Z0-9_-]/g,"_")||"unknown-card"}function uy(e,t){let r=t.onWarn??(()=>{}),n=ne(e);function s(C){if(C.length!==0)try{let m=t.publishBoardChangeNotifications?.(C);m&&typeof m.catch=="function"&&m.catch(E=>r(`[board-live-cards-public] publishBoardChangeNotifications failed: ${E instanceof Error?E.message:String(E)}`));}catch(m){r(`[board-live-cards-public] publishBoardChangeNotifications failed: ${m instanceof Error?m.message:String(m)}`);}}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 m=t.kvStorageForRef(C);return {readIndex(){return m.read("_index")},writeIndex(E){m.write("_index",E);},readCard(E){return m.read(E)},writeCard(E,O){return m.write(E,O),t.hashFn(O)},removeCard(E){m.delete(E);},cardExists(E){return m.read(E)!==null},defaultCardKey(E){return E}}}let a={readValues(C){let m=t.kvStorage("state-snapshot"),E=m.listKeys().sort();if(E.length===0)return {version:null,values:{}};let O={};for(let G of E)O[G]=m.read(G);return {version:t.hashFn(O),values:O}},writeValues(C,m,E){let O=t.kvStorage("state-snapshot");for(let G of E)O.delete(G);for(let[G,te]of Object.entries(m))O.write(G,te);return t.hashFn(m)}},i=()=>ea(t.kvStorage("config")),c=()=>Bc(a),u=()=>Dc(t.journalAdapter()),d=()=>Vn(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 Kc(t.kvStorageForRef(C))},g=()=>{let C=i().readArchiveStoreRef();return C?t.archiveFactoryForRef(C):t.archiveFactory()};function h(){return !!c().readSnapshot(e.value).values[Et]}function f(){let C=c().readSnapshot(e.value);if(!C.values[Et])throw new Error(`Board not initialized at ${e.value}`);return Jc(C.values)}function p(C,m){let E=c().commitSnapshot(e.value,{schemaVersion:Vr,expectedVersion:m,commitId:t.genId(),committedAt:Re(),deleteKeys:[],shallowMerge:Uc(C)});if(!E.ok)throw new Error(`Snapshot commit failed (version mismatch): expected=${m??"null"} current=${E.currentVersion??"null"}`)}function S(C){u().appendEvent(C);}async function b(){let C=(I,L)=>{let ie=I.payload,ze=(ie?.enrichedCard??{}).id??ie?.cardId??"unknown";S({type:"task-failed",taskName:ze,error:L,timestamp:Re()});},m=Mc(t.kvStorage("execution-requests"),C),E=Vc(t.kvStorage("card-runtime")),O=Bn(t.blobStorage("sources"),I=>t.resolveBlob(I)),G=new Map,te={readRuntime(I){return G.get(I)??E.readRuntime(I)},writeRuntime(I,L){G.set(I,L);}},me=[],ae=new Map,ye={readSourceData(I,L){let ie=`${I}/${L}`;return ae.has(ie)?ae.get(ie):O.readSourceData(I,L)},ingestSourceDataStaged(I,L,ie,mt){O.ingestSourceDataStaged(I,L,ie,mt);},commitSourceData(I,L,ie){let mt=`${I}/.staged/${ie}/${L}`,Gr=t.blobStorage("sources").read(mt);if(Gr==null)return false;let Jt=`${I}/${L}`,aa=Gr.trim();try{ae.set(Jt,JSON.parse(aa));}catch{ae.set(Jt,aa);}return me.push({cardId:I,outputFile:L,deliveryToken:ie}),true},hasSource(I,L){let ie=`${I}/${L}`;return ae.has(ie)?true:O.hasSource(I,L)},listSources(I){let L=O.listSources(I),ie=new Set;for(let ze of ae.keys())ze.startsWith(`${I}/`)&&ie.add(ze.slice(`${I}/`.length));let mt=new Set([...L,...ie]);return Array.from(mt)}},he={cardStore:d(),cardRuntimeStore:te,fetchedSourcesStore:ye,outputStore:l(),executionRequestStore:m},ot=f(),at=Mn(ot.graph),{events:ke,newCursor:$e}=u().readEntriesAfterCursor(ot.lastDrainedJournalId),Je=[],Tt=[],Gt=[],Jn=new Map,na=new Set,rd=(I,L)=>{Je.push({type:"task-completed",taskName:I,data:L,timestamp:Re()});try{g().stream("exec-history").append({taskName:I,status:"completed",completedAt:Re()});}catch{}},sa=(I,L)=>{S({type:"task-failed",taskName:I,error:L,timestamp:Re()});try{g().stream("exec-history").append({taskName:I,status:"failed",error:L,completedAt:Re()});}catch{}},Br=Ac(at,{handlers:{"card-handler":Gc(e,$e,he,rd,sa,(I,L)=>{Tt.push({cardId:I,values:L});},I=>{Gt.push(I);})},onNodeRemoved:I=>{Jn.delete(I),G.delete(I),na.add(I);}});for(Je=ke;Je.length>0;){let I=Je;Je=[];for(let L of I)if(L.type==="task-restart"){let ie=he.cardStore.readCard(L.taskName);ie&&Jn.set(L.taskName,ie);}Br.pushAll(I),await Br.waitForHandlers();}let oa=Br.getState();await Br.dispose({wait:true});let nd=c().readSnapshot(e.value).version;p({lastDrainedJournalId:$e,graph:Dr(oa)},nd);for(let{cardId:I,values:L}of Tt)he.outputStore.writeComputedValues(I,L);for(let I of Gt)he.outputStore.writeDataObjects(I);for(let[I,L]of G)E.writeRuntime(I,L);for(let{cardId:I,outputFile:L,deliveryToken:ie}of me)O.commitSourceData(I,L,ie);let Kr;try{Kr=Kn(n,oa),he.outputStore.writeStatusSnapshot(Kr);}catch(I){r(`[board-live-cards-public] status publish failed: ${I instanceof Error?I.message:String(I)}`);}let Ut=[];for(let{cardId:I,values:L}of Tt)Ut.push({kind:"computed_values",cardId:I,values:L});for(let I of Gt)for(let[L,ie]of Object.entries(I))L&&Ut.push({kind:"data_object",key:L,payload:ie});for(let[I,L]of Jn)Ut.push({kind:"card_refreshed",cardId:I,card:L});for(let I of na)Ut.push({kind:"card_removed",cardId:I});Kr!==void 0&&Ut.push({kind:"status",status:Kr}),s(Ut);let sd=i().readTaskExecutorRef()??{howToRun:"built-in",whatToRun:ne({kind:"built-in",value:"source-cli-task-executor"})};m.dispatchEntriesForJournalId($e,I=>{if(I.taskKind!=="source-fetch"){r(`[process-accumulated-events] unknown taskKind "${I.taskKind}" \u2014 skipping`);return}let L=I.payload,ie=L.enrichedCard?.id??"unknown",mt=L.enrichedCard?.source_defs??[];for(let ze of mt){if(!ze.outputFile){r(`[dispatch] source "${ze.bindTo}" has no outputFile \u2014 skipping`);continue}let Gr=ay({cbk:L.callbackToken,rg:e.value,br:ne(e),cid:ie,b:ze.bindTo,d:ze.outputFile,cs:void 0,rqt:L.rqt});t.dispatchExecution(sd,{source_def:ze,base_ref:ne(e),callback:{token:Gr,via:t.selfRef}}).catch(Jt=>sa(ie,Jt instanceof Error?Jt.message:String(Jt)));}});}async function P(){try{let C=()=>{let E=f(),{events:O}=u().readEntriesAfterCursor(E.lastDrainedJournalId);O.length<=0||(P(),t.requestProcessAccumulated?.());},m=await ua(t.lock,b,C);return J({ran:m!==!1})}catch(C){return W(C)}}function w(){P(),t.requestProcessAccumulated?.();}function x(C){try{let m=C.params?.cardStoreRef;if(!m)return q("init requires params.cardStoreRef \u2014 create a card store with card-store-cli and pass its ref here");if(!h()){let he=Dn(Gn);p({lastDrainedJournalId:"",graph:Dr(he)},null);}let E=C.params?.outputsStoreRef;if(!E)return q("init requires params.outputsStoreRef \u2014 pass the outputs store ref here");let O=C.params?.scratchStoreRef,G=C.params?.archiveStoreRef,te=C.params?.chatStoreRef,me=C.params?.artifactsStoreRef,ae=i();ae.writeCardStoreRef(m),ae.writeOutputsStoreRef(E),O&&ae.writeScratchStoreRef(O),G&&ae.writeArchiveStoreRef(G),te&&ae.writeChatStoreRef(te),me&&ae.writeArtifactsStoreRef(me);let ye=C.body??{};ye["task-executor-ref"]&&ae.writeTaskExecutorRef(ye["task-executor-ref"]),Object.prototype.hasOwnProperty.call(ye,"chat-handler-flow")&&ae.writeChatHandlerFlow(ye["chat-handler-flow"]);try{l().writeStatusSnapshot(Kn(n,Mn(f().graph)));}catch{}return J()}catch(m){return W(m)}}function y(C){try{let m=l().readStatusSnapshot();if(!m){m=Kn(n,Mn(f().graph));try{l().writeStatusSnapshot(m);}catch{}}return J(m)}catch(m){return W(m)}}function v(C){try{let m=C.params?.id;return m?(S({type:"task-removal",taskName:m,timestamp:Re()}),w(),J()):q("removeCard requires params.id")}catch(m){return W(m)}}function k(C){try{let m=C.params?.cardId;if(!m)return q("addCardFiles requires params.cardId");let E=ta(d()).appendFiles({params:{id:m},body:C.body});if(E.status!=="success")return E;let O=$({params:{cardId:m}});return O.status!=="success"?O:J({cardId:m,files_added:E.data.files_added,notified:!0})}catch(m){return W(m)}}function R(C){try{let m=C.params?.cardId;if(!m)return q("getAttachmentRef requires params.cardId");let E=d().readCard(m);if(!E)return q(`Card "${m}" not found in board at ${e.value}`);let O=E.card_data&&typeof E.card_data=="object"&&!Array.isArray(E.card_data)?E.card_data:{},G=Array.isArray(O.files)?O.files:[],te=C.params?.fileIdx,me=te===void 0?null:Number(te);if(me!==null&&(!Number.isInteger(me)||me<0))return q("getAttachmentRef requires params.fileIdx to be a non-negative integer");let ae=me===null?G.map((ke,$e)=>$e):[me],ye=[],he=i().readArtifactsStoreRef(),ot=t.blobStorage("files"),at=iy(m);for(let ke of ae){if(ke<0||ke>=G.length)return q(`attachment index ${ke} is out of range for card "${m}"`);let $e=G[ke];if(!$e||typeof $e!="object"||Array.isArray($e))return q(`attachment index ${ke} for card "${m}" is not an object`);let Je=$e.stored_name;if(typeof Je!="string"||!Je)return q(`attachment index ${ke} for card "${m}" has no stored_name`);let Tt=`${at}/${Je}`;if(he){ye.push({idx:ke,ref:zn({storeRef:he,key:Tt}),file:$e});continue}let Gt=ot.keyRef?.(Tt);ye.push({idx:ke,ref:Gt?ne(Gt):Tt,file:$e});}return J({attachments:ye})}catch(m){return W(m)}}function $(C){try{let m=C.params?.cardId;if(!m)return q("cardRefreshedNotify requires params.cardId");let E=d().readCard(m);return E?(s([{kind:"card_refreshed",cardId:m,card:E}]),J({cardId:m,notified:!0})):q(`Card "${m}" not found in board at ${e.value}`)}catch(m){return W(m)}}function A(C){try{let m=C.params?.id;return m?(S({type:"task-restart",taskName:m,timestamp:Re()}),w(),J()):q("retrigger requires params.id")}catch(m){return W(m)}}async function j(C){return P()}function D(C){try{let m=C.params?.cardId,E=C.params?.all,O=!!C.params?.restart;if(!m&&!E)return q("upsertCard requires --card-id <id> or --all");let G=E?d().readAllCards().map(te=>te.id):[m];for(let te of G)if(!d().readCard(te))return q(`Card "${te}" not found in board at ${e.value}`);for(let te of G){let me=d().readCard(te),ae=zc(me),ye=t.hashFn(ae),he=t.kvStorage("card-upsert"),ot=he.read(te),at=ot?.taskConfigHash!==ye;if(!(!at&&!O)){if(at){let ke=ot?.blobRef??d().readCardKey(te)??te;S({type:"task-upsert",taskName:te,taskConfig:ae,timestamp:Re()}),he.write(te,{blobRef:ke,taskConfigHash:ye,updatedAt:Re()});}O&&S({type:"task-restart",taskName:te,timestamp:Re()});}}return w(),J()}catch(m){return W(m)}}function F(C){try{let m=C.params?.token;if(!m)return q("taskFailed requires params.token");let E=C.params?.error??"unknown error",O=Un(m);if(!O)return q("Invalid callback token");S({type:"task-failed",taskName:O.taskName,error:E,timestamp:Re()});try{g().stream("exec-history").append({taskName:O.taskName,status:"failed",error:E,completedAt:Re()});}catch{}return w(),J()}catch(m){return W(m)}}function de(C){try{let m=C.params?.token;if(!m)return q("taskProgress requires params.token");let O=(C.body??{}).update??{},G=Un(m);return G?(S({type:"task-progress",taskName:G.taskName,update:O,timestamp:Re()}),w(),J()):q("Invalid callback token")}catch(m){return W(m)}}function fe(C){try{let m=C.params?.token,E=C.params?.ref;if(!m)return q("sourceDataFetched requires params.token");if(!E)return q("sourceDataFetched requires params.ref");let O=Hc(m);if(!O)return q("Invalid source token");let{cbk:G,cid:te,b:me,d:ae,cs:ye,rqt:he}=O,ot=Bn(t.blobStorage("sources"),Je=>t.resolveBlob(Je)),at=t.genId();ot.ingestSourceDataStaged(te,ae,Me(E),at);let ke=Un(G);if(!ke)return q("Invalid callback token embedded in source token");let $e=Re();return S({type:"task-progress",taskName:ke.taskName,update:{bindTo:me,outputFile:ae,fetchedAt:$e,deliveryToken:at,sourceChecksum:ye,rqt:he},timestamp:$e}),w(),J()}catch(m){return W(m)}}function Ae(C){try{let m=C.params?.token,E=C.params?.reason??"unknown";if(!m)return q("sourceDataFetchFailure requires params.token");let O=Hc(m);if(!O)return q("Invalid source token");let{cbk:G,b:te,d:me,cs:ae,rqt:ye}=O,he=Un(G);return he?(S({type:"task-progress",taskName:he.taskName,update:{bindTo:te,outputFile:me,failure:!0,reason:E,sourceChecksum:ae,rqt:ye},timestamp:Re()}),w(),J()):q("Invalid callback token embedded in source token")}catch(m){return W(m)}}function Fe(C){try{let m=i().readCardStoreRef();return m?J({storeRef:m}):q(`Board at ${e.value} has no card store configured`)}catch(m){return W(m)}}function M(C){try{let m=i().readOutputsStoreRef();return m?J({storeRef:m}):q(`Board at ${e.value} has no outputs store configured`)}catch(m){return W(m)}}function B(C){try{let m=i().readScratchStoreRef();return J({storeRef:m})}catch(m){return W(m)}}function re(C){try{let m=i().readArchiveStoreRef();return J({storeRef:m})}catch(m){return W(m)}}function pe(C){try{let m=i().readChatStoreRef();return J({storeRef:m})}catch(m){return W(m)}}function Te(C){try{let m=i().readArtifactsStoreRef();return J({storeRef:m})}catch(m){return W(m)}}function st(C){try{let m=C.params?.key;if(!m)return q("getConfig requires params.key");let E=i(),O;switch(m){case "task-executor":O=E.readTaskExecutorRef()??null;break;case "chat-handler-flow":O=E.readChatHandlerFlow()??null;break;case "card-store-ref":O=E.readCardStoreRef();break;case "outputs-store-ref":O=E.readOutputsStoreRef();break;case "scratch-store-ref":O=E.readScratchStoreRef();break;case "archive-store-ref":O=E.readArchiveStoreRef();break;case "chat-store-ref":O=E.readChatStoreRef();break;case "artifacts-store-ref":O=E.readArtifactsStoreRef();break;default:return q(`getConfig: unknown key "${m}"`)}return J({value:O})}catch(m){return W(m)}}function Ce(C){try{let m=C.params?.key;if(!m)return q("getOutputsDataObject requires params.key");let E=l().readDataObject(m);return J(E)}catch(m){return W(m)}}function De(C){try{return J(l().readAllDataObjects())}catch(m){return W(m)}}function pt(C){try{let m=C.params?.key;if(!m)return q("getOutputsComputedValues requires params.key");let E=l().readComputedValues(m);return J(E)}catch(m){return W(m)}}function xt(C){try{return J(l().readAllComputedValues())}catch(m){return W(m)}}function Kt(){return Bn(t.blobStorage("sources"),C=>t.resolveBlob(C))}function At(C){let m=t.blobStorage("sources").keyRef?.(C);return m?ne(m):C}function ed(C){try{let m=C.params?.key;if(!m)return q("getOutputsFetchedSources requires params.key");let E=Kt().listSources(m),O={};for(let G of E)O[G]=At(`${m}/${G}`);return J(O)}catch(m){return W(m)}}function td(C){try{let m=Kt(),E=new Set;for(let G of t.blobStorage("sources").listKeys()){let te=G.indexOf("/");te>0&&!G.includes("/.staged/")&&E.add(G.slice(0,te));}let O={};for(let G of E){let te=m.listSources(G);if(te.length>0){O[G]={};for(let me of te)O[G][me]=At(`${G}/${me}`);}}return J(O)}catch(m){return W(m)}}return {init:x,status:y,getCardStoreRef:Fe,getOutputsStoreRef:M,getScratchStoreRef:B,getArchiveStoreRef:re,getChatStoreRef:pe,getArtifactsStoreRef:Te,getConfig:st,getOutputsDataObject:Ce,getAllOutputsDataObjects:De,getOutputsComputedValues:pt,getAllOutputsComputedValues:xt,getOutputsFetchedSources:ed,getAllOutputsFetchedSources:td,removeCard:v,addCardFiles:k,getAttachmentRef:R,cardRefreshedNotify:$,retrigger:A,processAccumulatedEvents:j,upsertCard:D,taskFailed:F,taskProgress:de,sourceDataFetched:fe,sourceDataFetchFailure:Ae}}function cy(e,t){let r=()=>ea(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 v=t.kvStorageForRef(y);return {readIndex(){return v.read("_index")},writeIndex(k){v.write("_index",k);},readCard(k){return v.read(k)},writeCard(k,R){return v.write(k,R),t.hashFn(R)},removeCard(k){v.delete(k);},cardExists(k){return v.read(k)!==null},defaultCardKey(k){return k}}}let s=()=>Vn(n(),t.onWarn??(()=>{})),o=()=>{let y=r().readScratchStoreRef();return y?t.scratchStorageForRef(y):t.scratchStorage()};function a(y,v){let k=t.validateSchema(v),R=[],$=r().readTaskExecutorRef();if($&&Array.isArray(v.source_defs))for(let j of v.source_defs){let D=typeof j.bindTo=="string"?j.bindTo:"(unknown)";try{let F;try{F=t.invokeExecutorSync($,"validate-source-def",[],{timeout:t.executorTimeouts?.validationMs??1e4,input:JSON.stringify(j)});}catch(fe){let Ae=fe;if(F=typeof Ae?.stdout=="string"?Ae.stdout:"",!F.trim()){R.push(`source "${D}": executor validate-source-def failed \u2014 ${fe instanceof Error?fe.message:String(fe)}`);continue}}let de=JSON.parse(F.trim());if(!de.ok&&Array.isArray(de.errors))for(let fe of de.errors)R.push(`source "${D}": ${fe}`);}catch(F){R.push(`source "${D}": executor validate-source-def failed \u2014 ${F instanceof Error?F.message:String(F)}`);}}let A=[...k.errors,...R];return J({cardId:y,isValid:A.length===0,issues:A})}function i(y,v){let k=r().readTaskExecutorRef();if(!k)throw new Error("No task-executor registered for this board");let R=typeof y.bindTo=="string"?y.bindTo:"source",$=o(),A={...y,boardDir:e.value,_projections:v},j=$.create(JSON.stringify(A,null,2),`probe-in-${R}`,".json"),D=$.getUniqueKey(`probe-out-${R}`,".json"),F=$.getUniqueKey(`probe-err-${R}`,".txt"),de=ne($.keyRef(j)),fe=ne($.keyRef(D)),Ae=ne($.keyRef(F)),Fe=null;try{if(t.invokeExecutorSync(k,"run-source-fetch",["--in-ref",de,"--out-ref",fe,"--err-ref",Ae],{timeout:y.timeout??t.executorTimeouts?.probeMs??6e4}),Fe=$.read(D),Fe===null)throw new Error("Executor produced no output file")}catch(M){let B=$.read(F)?.trim()??(M instanceof Error?M.message:String(M));throw new Error(`Probe failed: ${B}`)}finally{try{$.remove(j);}catch{}try{$.remove(F);}catch{}}return {bindTo:R,result:Fe}}function c(y,v,k){let R;try{R=i(y,v);}catch($){return q($ instanceof Error?$.message:String($))}if(k){let $=Me(k);t.absoluteBlob.write($.value,R.result);}return J({bindTo:R.bindTo,resultSizeBytes:R.result.length})}function u(y,v){let k=y.params?.sourceIdx,R=y.params?.outRef;if(k===void 0)return q(`${v} requires params.sourceIdx`);if(!y.body||typeof y.body!="object"||Array.isArray(y.body))return q(`${v} requires card JSON object in body`);let $=y.body,A=$["card-content"]??$,j=$["mock-projections"]??{},D=A.source_defs??[];if(k<0||k>=D.length)return q(`sourceIdx ${k} out of range (card has ${D.length} source(s))`);let F=D[k],de=typeof F.bindTo=="string"?F.bindTo:"source";return {src:F,bindTo:de,outRef:R,mockProjections:j}}function d(y){try{let v=y.params?.cardId,k=y.params?.all;if(!v&&!k)return q("validateCard requires --card-id <id> or --all");let R=k?s().readAllCards().map(A=>A.id):[v],$=[];for(let A of R){let j=s().readCard(A);if(!j){$.push({cardId:A,isValid:!1,issues:[`Card "${A}" not found`]});continue}let D=a(A,j);if(D.status!=="success")return D;$.push(D.data);}return J($)}catch(v){return W(v)}}function l(y){try{if(!y.body||typeof y.body!="object"||Array.isArray(y.body))return q("validateCardPreflight requires card JSON object in body");let v=y.body,k=v["card-content"]??v,R=typeof k.id=="string"?k.id:"(unknown)",$=a(R,k),A=r().readTaskExecutorRef();if(A)try{let j=t.invokeExecutorSync(A,"validate-card-preflight",[],{timeout:t.executorTimeouts?.validationMs??1e4,input:JSON.stringify(k)}),D=JSON.parse(j.trim());if(!D.ok&&Array.isArray(D.errors)&&D.errors.length>0){let F=[...$.status==="success"?$.data.issues:[],...D.errors];return J({cardId:R,isValid:!1,issues:F})}}catch{}return $}catch(v){return W(v)}}function g(y){try{let v=y.params?.cardId,k=y.params?.sourceIdx,R=y.params?.outRef;if(!v)return q("probeSource requires params.cardId");if(k===void 0)return q("probeSource requires params.sourceIdx");let A=(y.body??{})["mock-projections"]??{},j=s().readCard(v);if(!j)return q(`Card "${v}" not found`);let D=j.source_defs??[];return k<0||k>=D.length?q(`sourceIdx ${k} out of range (card has ${D.length} source(s))`):c(D[k],A,R)}catch(v){return W(v)}}function h(y){try{let v=y.params?.outRef,k=y.body;if(!k)return q('probeTmpSource requires body with "source-def" and "mock-projections"');let R=k["source-def"],$=k["mock-projections"]??{};return R?c(R,$,v):q('probeTmpSource body requires "source-def"')}catch(v){return W(v)}}function f(y){try{let v=u(y,"probeSourcePreflight");if("status"in v)return v;let k=r().readTaskExecutorRef();if(!k)return q("No task-executor registered for this board");try{let R={...v.src,_projections:v.mockProjections},$=t.invokeExecutorSync(k,"probe-source-preflight",[],{timeout:v.src.timeout??t.executorTimeouts?.preflightMs??6e4,input:JSON.stringify(R)}),A=JSON.parse($.trim());return A.ok?J({bindTo:v.bindTo,reachable:A.reachable,latencyMs:A.latencyMs,note:A.note}):q(A.error??"Preflight probe failed")}catch{return q("Executor does not support probe-source-preflight")}}catch(v){return W(v)}}function p(y){try{let v=u(y,"runSourcePreflight");if("status"in v)return v;let k=r().readTaskExecutorRef();if(k)try{let j={...v.src,_projections:v.mockProjections},D=t.invokeExecutorSync(k,"run-source-preflight",[],{timeout:v.src.timeout??t.executorTimeouts?.preflightMs??6e4,input:JSON.stringify(j)}),F=JSON.parse(D.trim());return F.ok?J({bindTo:F.bindTo??v.bindTo,reachable:F.reachable,latencyMs:F.latencyMs,kind:F.kind,resultValue:F.resultValue,note:F.note}):q(F.error??"Source preflight failed")}catch{}let R=Date.now(),$=i(v.src,v.mockProjections);if(v.outRef){let j=Me(v.outRef);t.absoluteBlob.write(j.value,$.result);}let A=$.result;try{A=JSON.parse($.result);}catch{}return J({bindTo:$.bindTo,reachable:!0,latencyMs:Date.now()-R,resultValue:A,note:"Actual fetch preflight passed"})}catch(v){return W(v)}}function S(y){try{let v=r().readTaskExecutorRef();if(!v)return q("No task-executor registered for this board");let k=t.invokeExecutorSync(v,"describe-capabilities",[],{timeout:t.executorTimeouts?.describeMs??1e4});return J(JSON.parse(k.trim()))}catch(v){return W(v)}}function b(y){try{let v=y.body;if(!v||!Array.isArray(v.ops))return q("updatesInCardStore requires body.ops array");let k=v.ops,R=s();for(let $ of k){let A=$.op,j=$.id;if(!j)return q('op is missing "id"');if(A==="update"){let D=$["card-content"];if(!D)return q(`update op for "${j}" is missing "card-content"`);R.writeCard(j,D);}else return q(`Unknown op type: "${A??"(none)"}"`)}return J()}catch(v){return W(v)}}function P(y){try{let v=y.body;if(!v||!Array.isArray(v.ids))return q("readFromCardStore requires body.ids array");let k=v.ids,R=s(),$=k.map(A=>({id:A,"card-content":R.readCard(A)}));return J({cards:$})}catch(v){return W(v)}}function w(y){try{if(!y.body||typeof y.body!="object"||Array.isArray(y.body))return q("evalCardCompute requires a JSON object in body");let v=y.body,k=v["card-content"]??v,R=typeof k.id=="string"?k.id:"(unknown)",$=v["mock-fetched-sources"]??{},A=v["mock-requires"]??{},j=k.compute;if(!j||!Array.isArray(j)||j.length===0)return J({cardId:R,ok:!0,computed_values:{},errors:[]});let D={id:R,card_data:k.card_data??{},requires:A,source_defs:k.source_defs,compute:j},F=$t.runSync(D,{sourcesData:$}),de=F.node.computed_values??{},fe=F.errors??[];return J({cardId:R,ok:fe.length===0,computed_values:de,errors:fe})}catch(v){return W(v)}}function x(y){try{if(!y.body||typeof y.body!="object"||Array.isArray(y.body))return q("simulateCardCycle requires a JSON object in body");let v=y.body,k=v["card-content"]??v,R=typeof k.id=="string"?k.id:"(unknown)",$=v["mock-fetched-sources"]??{},A=v["mock-requires"]??{},j=a(R,k),D=j.status==="success"?{isValid:j.data.isValid,issues:j.data.issues}:{isValid:!1,issues:[j.status==="fail"?j.error:"internal error"]},F=k.source_defs??[],de=k.card_data??{},fe=[],Ae=[];if(F.length>0){fe=$t.enrichSourcesSync(F,{card_data:de,requires:A});for(let Ce of fe){let De=Ce.projections,pt=Ce._projections;if(De&&pt){for(let xt of Object.keys(De))if(pt[xt]===void 0){let Kt=typeof Ce.bindTo=="string"?Ce.bindTo:"(unknown)";Ae.push({bindTo:Kt,key:xt,error:`Projection "${xt}" resolved to undefined`});}}}}let Fe=[],M=v["task-executor-ref"],B=(M?.howToRun&&M?.whatToRun?M:void 0)??r().readTaskExecutorRef();for(let Ce=0;Ce<fe.length;Ce++){let De=fe[Ce],pt=typeof De.bindTo=="string"?De.bindTo:`source_${Ce}`;if(!B){Fe.push({bindTo:pt,skipped:!0,error:"No task executor configured"});continue}try{let xt={...De},Kt=t.invokeExecutorSync(B,"run-source-preflight",[],{timeout:De.timeout??t.executorTimeouts?.preflightMs??6e4,input:JSON.stringify(xt)}),At=JSON.parse(Kt.trim());Fe.push({bindTo:pt,reachable:At.reachable,latencyMs:At.latencyMs,error:At.ok?void 0:At.error});}catch{Fe.push({bindTo:pt,skipped:!0,error:"Executor does not support run-source-preflight"});}}let re=k.compute,pe={},Te=[];if(re&&Array.isArray(re)&&re.length>0){let Ce={id:R,card_data:de,requires:A,source_defs:k.source_defs,compute:re},De=$t.runSync(Ce,{sourcesData:$});pe=De.node.computed_values??{},Te=De.errors??[];}let st=D.isValid&&Ae.length===0&&Te.length===0&&Fe.every(Ce=>Ce.reachable!==!1);return J({cardId:R,ok:st,validation:D,source_probes:Fe,projection_errors:Ae,computed_values:pe,compute_errors:Te})}catch(v){return W(v)}}return {validateCard:d,validateCardPreflight:l,probeSource:g,probeTmpSource:h,probeSourcePreflight:f,runSourcePreflight:p,evalCardCompute:w,simulateCardCycle:x,describeTaskExecutorCapabilities:S,updatesInCardStore:b,readFromCardStore:P}}function dy(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 Yc(){return new Date().toISOString()}function Xc(e){return new TextEncoder().encode(e).byteLength}function ly(e){return e?{key:e.key,size:e.size,updatedAt:e.updatedAt,contentType:e.contentType}:null}function fy(e){let t=String(e||"").match(/^(\d+)[-_]/);return t?parseInt(t[1],10):0}function py(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 my(e){return String(e||"").toLowerCase().replace(/\s+/g,"_").replace(/[^a-z0-9_-]/g,"_").replace(/_+/g,"_").replace(/^_+|_+$/g,"")||"file"}function gy(e){if(!e||e===".")return "";let t=String(e).replace(/^\./,"").toLowerCase().replace(/[^a-z0-9]/g,"");return t?`.${t}`:""}function hy(e){let t=py(e),r=t.lastIndexOf(".");return r<=0||r===t.length-1?{stem:t,ext:""}:{stem:t.slice(0,r),ext:t.slice(r)}}function yy(e){let t=e.lastIndexOf("/");return t>=0?e.slice(t+1):e}function ra(e){function t(r){let n=e.stat?ly(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:Xc(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??Yc(),o.size=o.size??Xc(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??Yc(),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 vy(e){function t(s,o){let a=0,i=[];Array.isArray(o)&&i.push(...o);for(let c of e.list(`${s}/`))i.push(yy(c.key));for(let c of i){let u=fy(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}=hy(s),d=gy(u),l=my(c),g=`${String(o).padStart(3,"0")}-`,h=d,f=i-g.length-h.length;f<1&&(h="",f=i-g.length);let p=l.slice(0,Math.max(1,f)),S=`${g}${p}${h}`;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 Sy(){function e(s,o){if(!Array.isArray(s))return [];let a=[];for(let i of s){if(!i||typeof i!="object")continue;let c=i;typeof c.stored_name=="string"&&a.push({name:typeof c.name=="string"?c.name:c.stored_name,stored_name:c.stored_name,size:typeof c.size=="number"&&Number.isFinite(c.size)?c.size:null,mime_type:typeof c.mime_type=="string"?c.mime_type:null,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 pk(){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=We(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 child_process.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=We(r);}catch{t="";}if(!t)return null;try{let r=child_process.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 by=".board.lock";function Qc(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 _y(e,t){return typeof e=="string"?{cliDir:e,opts:t}:{cliDir:void 0,opts:e}}function Ry(e,t){return typeof e=="string"?{cliDir:e,opts:t}:{cliDir:void 0,opts:e}}function Zc(e){if(e)return e;let t=ma((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('board-live-cards-node.cjs', document.baseURI).href))),r=[t,Ie(t,"..","cli","node"),Ie(t,"..","..","cli","node")];for(let n of r)try{return Qn(n),n}catch{}throw new Error(`createFsBoardPlatformAdapter: could not resolve a public CLI directory from module dir ${t}`)}function Cy(e,t,r){let{cliDir:n,opts:s}=_y(t,r),o=Zc(n),a=e.value,c={meta:"board-live-cards",howToRun:"local-node",whatToRun:(s?.suppressSpawn?"":Qn(o))?ne({kind:"yaml-flow-cli",value:"board-live-cards-cli.js"}):"",...s?.notifyChannel?{extra:{notifyChannel:s.notifyChannel}}:{}};return {kvStorage:u=>en(Ie(a,`.${u}`)),blobStorage:u=>u?zt(Ie(a,u)):zt(a),scratchStorage:()=>Qr(Ie(a,".tmp")),scratchStorageForRef:u=>Qr(Me(u).value),archiveFactory:()=>Zr(Ie(a,"archive")),archiveFactoryForRef:u=>Zr(Me(u).value),journalAdapter:()=>ja(a),lock:Pa(Ie(a,by)),selfRef:c,async dispatchExecution(u,d){if(s?.suppressSpawn)return {dispatched:false};try{let l=d.source_def?.bindTo??Wn().slice(0,8),g=Qr(Ie(a,".tmp")),h=g.create(JSON.stringify(d,null,2),`exec-in-${l}`,".json"),f=g.getUniqueKey(`exec-out-${l}`,".json"),p=g.getUniqueKey(`exec-err-${l}`,".txt"),S=ne(g.keyRef(h)),b=ne(g.keyRef(f)),P=ne(g.keyRef(p));return xa(u,{subcommand:"run-source-fetch",inRef:S,outRef:b,errRef:P},o),{dispatched:!0}}catch(l){let g=l instanceof Error?l.message:String(l);try{let h=Zr(Ie(a,"archive")),f=new Date().toISOString().replace(/[:.]/g,"-"),p=d.source_def?.bindTo??"unknown";h.blob("exec-failures").write(`${f}-${p}.json`,JSON.stringify({error:g,args:d,ref:u,at:new Date().toISOString()},null,2));}catch{}return {dispatched:false,error:g}}},resolveBlob(u){let d=fa(u.value)?os().read(u.value):zt(a).read(u.value);if(d===null)throw new Error(`resolveBlob: blob not found: ::${u.kind}::${u.value}`);return d},hashFn:Ia,genId:()=>pa(`${Date.now()}-${Math.random()}`).slice(0,32),kvStorageForRef:u=>en(Me(u).value),requestProcessAccumulated(){s?.suppressSpawn||ya(o,e,s?.notifyChannel);},publishBoardChangeNotifications(u){if(!s?.notifyChannel||u.length===0)return;let d=u.map(l=>({id:Wn(),ts:new Date().toISOString(),boardRef:ne(e),notification:l}));va(s.notifyChannel,d,s.onWarn);},onWarn:s?.onWarn}}function mk(e,t,r){let{cliDir:n,opts:s}=Ry(t,r),o=Zc(n),a=Cy(e,o,s),i=Hr();return {...a,invokeExecutorSync(c,u,d,l){let{command:g,baseArgs:h}=Wr(c,o),f=c.extra?["--extra",Buffer.from(JSON.stringify(c.extra)).toString("base64")]:[];return i.executeSync(g,[...h,u,...d,...f],{timeout:l?.timeout??3e4,encoding:"utf-8",input:l?.input})},validateSchema(c){let u=zo(c);return {ok:u.errors.length===0,errors:u.errors}},absoluteBlob:os()}}function gk(e,t={}){let r=t.chatsSubdir??"chats",n=t.kvSubdir??".kv",s=n?[n,"chat"]:["chat"],o=r&&!Qc(e,r)?Ie(e,r):e,a=en(Ie(e,...s));return Ho(i=>{let u=`${String(i).replace(/[^a-zA-Z0-9_-]/g,"_")}.jsonl`,d=Ie(o,u);return as(d)},a)}function hk(e,t={}){let r=t.filesSubdir??"files",n=r&&!Qc(e,r)?Ie(e,r):e;return ra(zt(n))}function yk(e){try{let t=JSON.parse(Buffer.from(e,"base64url").toString());return typeof t.br=="string"?t.br:null}catch{return null}}
|
|
19
|
+
exports.BOARD_GRAPH_KEY=Et;exports.EMPTY_CONFIG=Gn;exports.SNAPSHOT_SCHEMA_VERSION_V1=Vr;exports.buildLocalBaseSpec=Wr;exports.createArtifactsStore=ra;exports.createArtifactsStorePublic=dy;exports.createBoardLiveCardsNonCorePublic=cy;exports.createBoardLiveCardsPublic=uy;exports.createCardFileMetadataStore=Sy;exports.createCardStore=Vn;exports.createCardStorePublic=ta;exports.createChatStorage=Ho;exports.createExecutionRefInvoker=Fd;exports.createFileArtifactsStore=vy;exports.createFsBoardChatStorage=gk;exports.createFsBoardFileArtifactsStore=hk;exports.createFsBoardNonCorePlatformAdapter=mk;exports.createFsBoardPlatformAdapter=Cy;exports.createInMemoryChatStorage=Th;exports.createNodeSpawnInvocationAdapter=pk;exports.decodeBoardRefFromToken=yk;exports.evaluateArgsMassaging=es;exports.executionRefFromScriptPath=ey;exports.invokeExecutionRef=Ea;exports.invokeExecutionRefSync=ts;exports.invokeRefSync=Dd;exports.parseArtifactsStoreEntryRef=md;exports.parseExecutionRef=Zo;exports.parseRef=Me;exports.resolveWhatToRunValue=We;exports.resolveYamlFlowCliPath=ba;exports.serializeArtifactsStoreEntryRef=zn;exports.serializeExecutionRef=Qo;exports.serializeRef=ne;//# sourceMappingURL=board-live-cards-node.cjs.map
|
|
20
20
|
//# sourceMappingURL=board-live-cards-node.cjs.map
|