yaml-flow 8.4.0 → 8.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,20 +1,20 @@
1
- 'use strict';var child_process=require('child_process'),b=require('fs'),qn=require('os'),J=require('path'),Zo=require('net'),url=require('url'),crypto=require('crypto'),module$1=require('module'),properLockfile=require('proper-lockfile'),ah=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 b__namespace=/*#__PURE__*/_interopNamespace(b);var qn__namespace=/*#__PURE__*/_interopNamespace(qn);var J__namespace=/*#__PURE__*/_interopNamespace(J);var Zo__namespace=/*#__PURE__*/_interopNamespace(Zo);var ah__default=/*#__PURE__*/_interopDefault(ah);var Kc=Object.create;var Wo=Object.defineProperty;var Uc=Object.getOwnPropertyDescriptor;var Jc=Object.getOwnPropertyNames;var zc=Object.getPrototypeOf,Hc=Object.prototype.hasOwnProperty;var x=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Wc=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of Jc(t))!Hc.call(e,s)&&s!==r&&Wo(e,s,{get:()=>t[s],enumerable:!(n=Uc(t,s))||n.enumerable});return e};var Yc=(e,t,r)=>(r=e!=null?Kc(zc(e)):{},Wc(Wo(r,"default",{value:e,enumerable:true}),e));var tr=x(Y=>{Object.defineProperty(Y,"__esModule",{value:true});Y.regexpCode=Y.getEsmExportName=Y.getProperty=Y.safeStringify=Y.stringify=Y.strConcat=Y.addCodeArg=Y.str=Y._=Y.nil=Y._Code=Y.Name=Y.IDENTIFIER=Y._CodeOrName=void 0;var Zt=class{};Y._CodeOrName=Zt;Y.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var wt=class extends Zt{constructor(t){if(super(),!Y.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t;}toString(){return this.str}emptyStr(){return false}get names(){return {[this.str]:1}}};Y.Name=wt;var Oe=class extends Zt{constructor(t){super(),this._items=typeof t=="string"?[t]:t;}toString(){return this.str}emptyStr(){if(this._items.length>1)return false;let t=this._items[0];return t===""||t==='""'}get str(){var t;return (t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var t;return (t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,n)=>(n instanceof wt&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Y._Code=Oe;Y.nil=new Oe("");function _a(e,...t){let r=[e[0]],n=0;for(;n<t.length;)Yn(r,t[n]),r.push(e[++n]);return new Oe(r)}Y._=_a;var Wn=new Oe("+");function Ra(e,...t){let r=[er(e[0])],n=0;for(;n<t.length;)r.push(Wn),Yn(r,t[n]),r.push(Wn,er(e[++n]));return Od(r),new Oe(r)}Y.str=Ra;function Yn(e,t){t instanceof Oe?e.push(...t._items):t instanceof wt?e.push(t):e.push(qd(t));}Y.addCodeArg=Yn;function Od(e){let t=1;for(;t<e.length-1;){if(e[t]===Wn){let r=jd(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+";}t++;}}function jd(e,t){if(t==='""')return e;if(e==='""')return t;if(typeof e=="string")return t instanceof wt||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 wt))return `"${e}${t.slice(1)}`}function Nd(e,t){return t.emptyStr()?e:e.emptyStr()?t:Ra`${e}${t}`}Y.strConcat=Nd;function qd(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:er(Array.isArray(e)?e.join(","):e)}function Fd(e){return new Oe(er(e))}Y.stringify=Fd;function er(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}Y.safeStringify=er;function Dd(e){return typeof e=="string"&&Y.IDENTIFIER.test(e)?new Oe(`.${e}`):_a`[${e}]`}Y.getProperty=Dd;function Md(e){if(typeof e=="string"&&Y.IDENTIFIER.test(e))return new Oe(`${e}`);throw new Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}Y.getEsmExportName=Md;function Ld(e){return new Oe(e.toString())}Y.regexpCode=Ld;});var Zn=x(Ce=>{Object.defineProperty(Ce,"__esModule",{value:true});Ce.ValueScope=Ce.ValueScopeName=Ce.Scope=Ce.varKinds=Ce.UsedValueState=void 0;var Re=tr(),Xn=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value;}},Kr;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed";})(Kr||(Ce.UsedValueState=Kr={}));Ce.varKinds={const:new Re.Name("const"),let:new Re.Name("let"),var:new Re.Name("var")};var Ur=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r;}toName(t){return t instanceof Re.Name?t:this.name(t)}name(t){return new Re.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return `${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};Ce.Scope=Ur;var Jr=class extends Re.Name{constructor(t,r){super(r),this.prefix=t;}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0, Re._)`.${new Re.Name(r)}[${n}]`;}};Ce.ValueScopeName=Jr;var Vd=(0, Re._)`\n`,Qn=class extends Ur{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?Vd:Re.nil};}get(){return this._scope}name(t){return new Jr(t,this._newName(t))}value(t,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(t),{prefix:o}=s,a=(n=r.key)!==null&&n!==void 0?n:r.ref,i=this._values[o];if(i){let d=i.get(a);if(d)return d}else i=this._values[o]=new Map;i.set(a,s);let c=this._scope[o]||(this._scope[o]=[]),u=c.length;return c[u]=r.ref,s.setValue(r,{property:o,itemIndex:u}),s}getValue(t,r){let n=this._values[t];if(n)return n.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return (0, Re._)`${t}${n.scopePath}`})}scopeCode(t=this._values,r,n){return this._reduceValues(t,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(t,r,n={},s){let o=Re.nil;for(let a in t){let i=t[a];if(!i)continue;let c=n[a]=n[a]||new Map;i.forEach(u=>{if(c.has(u))return;c.set(u,Kr.Started);let d=r(u);if(d){let l=this.opts.es5?Ce.varKinds.var:Ce.varKinds.const;o=(0, Re._)`${o}${l} ${u} = ${d};${this.opts._n}`;}else if(d=s?.(u))o=(0, Re._)`${o}${d}${this.opts._n}`;else throw new Xn(u);c.set(u,Kr.Completed);});}return o}};Ce.ValueScope=Qn;});var G=x(V=>{Object.defineProperty(V,"__esModule",{value:true});V.or=V.and=V.not=V.CodeGen=V.operators=V.varKinds=V.ValueScopeName=V.ValueScope=V.Scope=V.Name=V.regexpCode=V.stringify=V.getProperty=V.nil=V.strConcat=V.str=V._=void 0;var U=tr(),Le=Zn(),at=tr();Object.defineProperty(V,"_",{enumerable:true,get:function(){return at._}});Object.defineProperty(V,"str",{enumerable:true,get:function(){return at.str}});Object.defineProperty(V,"strConcat",{enumerable:true,get:function(){return at.strConcat}});Object.defineProperty(V,"nil",{enumerable:true,get:function(){return at.nil}});Object.defineProperty(V,"getProperty",{enumerable:true,get:function(){return at.getProperty}});Object.defineProperty(V,"stringify",{enumerable:true,get:function(){return at.stringify}});Object.defineProperty(V,"regexpCode",{enumerable:true,get:function(){return at.regexpCode}});Object.defineProperty(V,"Name",{enumerable:true,get:function(){return at.Name}});var Yr=Zn();Object.defineProperty(V,"Scope",{enumerable:true,get:function(){return Yr.Scope}});Object.defineProperty(V,"ValueScope",{enumerable:true,get:function(){return Yr.ValueScope}});Object.defineProperty(V,"ValueScopeName",{enumerable:true,get:function(){return Yr.ValueScopeName}});Object.defineProperty(V,"varKinds",{enumerable:true,get:function(){return Yr.varKinds}});V.operators={GT:new U._Code(">"),GTE:new U._Code(">="),LT:new U._Code("<"),LTE:new U._Code("<="),EQ:new U._Code("==="),NEQ:new U._Code("!=="),NOT:new U._Code("!"),OR:new U._Code("||"),AND:new U._Code("&&"),ADD:new U._Code("+")};var Xe=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},es=class extends Xe{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n;}render({es5:t,_n:r}){let n=t?Le.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return `${n} ${this.name}${s};`+r}optimizeNames(t,r){if(t[this.name.str])return this.rhs&&(this.rhs=Dt(this.rhs,t,r)),this}get names(){return this.rhs instanceof U._CodeOrName?this.rhs.names:{}}},zr=class extends Xe{constructor(t,r,n){super(),this.lhs=t,this.rhs=r,this.sideEffects=n;}render({_n:t}){return `${this.lhs} = ${this.rhs};`+t}optimizeNames(t,r){if(!(this.lhs instanceof U.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=Dt(this.rhs,t,r),this}get names(){let t=this.lhs instanceof U.Name?{}:{...this.lhs.names};return Wr(t,this.rhs)}},ts=class extends zr{constructor(t,r,n,s){super(t,n,s),this.op=r;}render({_n:t}){return `${this.lhs} ${this.op}= ${this.rhs};`+t}},rs=class extends Xe{constructor(t){super(),this.label=t,this.names={};}render({_n:t}){return `${this.label}:`+t}},ns=class extends Xe{constructor(t){super(),this.label=t,this.names={};}render({_n:t}){return `break${this.label?` ${this.label}`:""};`+t}},ss=class extends Xe{constructor(t){super(),this.error=t;}render({_n:t}){return `throw ${this.error};`+t}get names(){return this.error.names}},os=class extends Xe{constructor(t){super(),this.code=t;}render({_n:t}){return `${this.code};`+t}optimizeNodes(){return `${this.code}`?this:void 0}optimizeNames(t,r){return this.code=Dt(this.code,t,r),this}get names(){return this.code instanceof U._CodeOrName?this.code.names:{}}},rr=class extends Xe{constructor(t=[]){super(),this.nodes=t;}render(t){return this.nodes.reduce((r,n)=>r+n.render(t),"")}optimizeNodes(){let{nodes:t}=this,r=t.length;for(;r--;){let n=t[r].optimizeNodes();Array.isArray(n)?t.splice(r,1,...n):n?t[r]=n:t.splice(r,1);}return t.length>0?this:void 0}optimizeNames(t,r){let{nodes:n}=this,s=n.length;for(;s--;){let o=n[s];o.optimizeNames(t,r)||(Bd(t,o.names),n.splice(s,1));}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>Rt(t,r.names),{})}},Qe=class extends rr{render(t){return "{"+t._n+super.render(t)+"}"+t._n}},as=class extends rr{},Ft=class extends Qe{};Ft.kind="else";var bt=class e extends Qe{constructor(t,r){super(r),this.condition=t;}render(t){let r=`if(${this.condition})`+super.render(t);return this.else&&(r+="else "+this.else.render(t)),r}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===true)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new Ft(n):n;}if(r)return t===false?r instanceof e?r:r.nodes:this.nodes.length?this:new e(Ca(t),r instanceof e?[r]:r.nodes);if(!(t===false||!this.nodes.length))return this}optimizeNames(t,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(t,r),!!(super.optimizeNames(t,r)||this.else))return this.condition=Dt(this.condition,t,r),this}get names(){let t=super.names;return Wr(t,this.condition),this.else&&Rt(t,this.else.names),t}};bt.kind="if";var _t=class extends Qe{};_t.kind="for";var is=class extends _t{constructor(t){super(),this.iteration=t;}render(t){return `for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=Dt(this.iteration,t,r),this}get names(){return Rt(super.names,this.iteration.names)}},us=class extends _t{constructor(t,r,n,s){super(),this.varKind=t,this.name=r,this.from=n,this.to=s;}render(t){let r=t.es5?Le.varKinds.var:this.varKind,{name:n,from:s,to:o}=this;return `for(${r} ${n}=${s}; ${n}<${o}; ${n}++)`+super.render(t)}get names(){let t=Wr(super.names,this.from);return Wr(t,this.to)}},Hr=class extends _t{constructor(t,r,n,s){super(),this.loop=t,this.varKind=r,this.name=n,this.iterable=s;}render(t){return `for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iterable=Dt(this.iterable,t,r),this}get names(){return Rt(super.names,this.iterable.names)}},nr=class extends Qe{constructor(t,r,n){super(),this.name=t,this.args=r,this.async=n;}render(t){return `${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}};nr.kind="func";var sr=class extends rr{render(t){return "return "+super.render(t)}};sr.kind="return";var cs=class extends Qe{render(t){let r="try"+super.render(t);return this.catch&&(r+=this.catch.render(t)),this.finally&&(r+=this.finally.render(t)),r}optimizeNodes(){var t,r;return super.optimizeNodes(),(t=this.catch)===null||t===void 0||t.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(t,r){var n,s;return super.optimizeNames(t,r),(n=this.catch)===null||n===void 0||n.optimizeNames(t,r),(s=this.finally)===null||s===void 0||s.optimizeNames(t,r),this}get names(){let t=super.names;return this.catch&&Rt(t,this.catch.names),this.finally&&Rt(t,this.finally.names),t}},or=class extends Qe{constructor(t){super(),this.error=t;}render(t){return `catch(${this.error})`+super.render(t)}};or.kind="catch";var ar=class extends Qe{render(t){return "finally"+super.render(t)}};ar.kind="finally";var ds=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
2
- `:""},this._extScope=t,this._scope=new Le.Scope({parent:t}),this._nodes=[new as];}toString(){return this._root.render(this.opts)}name(t){return this._scope.name(t)}scopeName(t){return this._extScope.name(t)}scopeValue(t,r){let n=this._extScope.value(t,r);return (this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(t,r){return this._extScope.getValue(t,r)}scopeRefs(t){return this._extScope.scopeRefs(t,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(t,r,n,s){let o=this._scope.toName(r);return n!==void 0&&s&&(this._constants[o.str]=n),this._leafNode(new es(t,o,n)),o}const(t,r,n){return this._def(Le.varKinds.const,t,r,n)}let(t,r,n){return this._def(Le.varKinds.let,t,r,n)}var(t,r,n){return this._def(Le.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new zr(t,r,n))}add(t,r){return this._leafNode(new ts(t,V.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==U.nil&&this._leafNode(new os(t)),this}object(...t){let r=["{"];for(let[n,s]of t)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0, U.addCodeArg)(r,s));return r.push("}"),new U._Code(r)}if(t,r,n){if(this._blockNode(new bt(t)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(t){return this._elseNode(new bt(t))}else(){return this._elseNode(new Ft)}endIf(){return this._endBlockNode(bt,Ft)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new is(t),r)}forRange(t,r,n,s,o=this.opts.es5?Le.varKinds.var:Le.varKinds.let){let a=this._scope.toName(t);return this._for(new us(o,a,r,n),()=>s(a))}forOf(t,r,n,s=Le.varKinds.const){let o=this._scope.toName(t);if(this.opts.es5){let a=r instanceof U.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0, U._)`${a}.length`,i=>{this.var(o,(0, U._)`${a}[${i}]`),n(o);})}return this._for(new Hr("of",s,o,r),()=>n(o))}forIn(t,r,n,s=this.opts.es5?Le.varKinds.var:Le.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0, U._)`Object.keys(${r})`,n);let o=this._scope.toName(t);return this._for(new Hr("in",s,o,r),()=>n(o))}endFor(){return this._endBlockNode(_t)}label(t){return this._leafNode(new rs(t))}break(t){return this._leafNode(new ns(t))}return(t){let r=new sr;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(sr)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new cs;if(this._blockNode(s),this.code(t),r){let o=this.name("e");this._currNode=s.catch=new or(o),r(o);}return n&&(this._currNode=s.finally=new ar,this.code(n)),this._endBlockNode(or,ar)}throw(t){return this._leafNode(new ss(t))}block(t,r){return this._blockStarts.push(this._nodes.length),t&&this.code(t).endBlock(r),this}endBlock(t){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||t!==void 0&&n!==t)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${t} expected`);return this._nodes.length=r,this}func(t,r=U.nil,n,s){return this._blockNode(new nr(t,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(nr)}optimize(t=1){for(;t-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants);}_leafNode(t){return this._currNode.nodes.push(t),this}_blockNode(t){this._currNode.nodes.push(t),this._nodes.push(t);}_endBlockNode(t,r){let n=this._currNode;if(n instanceof t||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${t.kind}/${r.kind}`:t.kind}"`)}_elseNode(t){let r=this._currNode;if(!(r instanceof bt))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=t,this}get _root(){return this._nodes[0]}get _currNode(){let t=this._nodes;return t[t.length-1]}set _currNode(t){let r=this._nodes;r[r.length-1]=t;}};V.CodeGen=ds;function Rt(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function Wr(e,t){return t instanceof U._CodeOrName?Rt(e,t.names):e}function Dt(e,t,r){if(e instanceof U.Name)return n(e);if(!s(e))return e;return new U._Code(e._items.reduce((o,a)=>(a instanceof U.Name&&(a=n(a)),a instanceof U._Code?o.push(...a._items):o.push(a),o),[]));function n(o){let a=r[o.str];return a===void 0||t[o.str]!==1?o:(delete t[o.str],a)}function s(o){return o instanceof U._Code&&o._items.some(a=>a instanceof U.Name&&t[a.str]===1&&r[a.str]!==void 0)}}function Bd(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0);}function Ca(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0, U._)`!${ls(e)}`}V.not=Ca;var Gd=$a(V.operators.AND);function Kd(...e){return e.reduce(Gd)}V.and=Kd;var Ud=$a(V.operators.OR);function Jd(...e){return e.reduce(Ud)}V.or=Jd;function $a(e){return (t,r)=>t===U.nil?r:r===U.nil?t:(0, U._)`${ls(t)} ${e} ${ls(r)}`}function ls(e){return e instanceof U.Name?e:(0, U._)`(${e})`}});var z=x(K=>{Object.defineProperty(K,"__esModule",{value:true});K.checkStrictMode=K.getErrorPath=K.Type=K.useFunc=K.setEvaluated=K.evaluatedPropsToName=K.mergeEvaluated=K.eachItem=K.unescapeJsonPointer=K.escapeJsonPointer=K.escapeFragment=K.unescapeFragment=K.schemaRefOrVal=K.schemaHasRulesButRef=K.schemaHasRules=K.checkUnknownRules=K.alwaysValidSchema=K.toHash=void 0;var oe=G(),zd=tr();function Hd(e){let t={};for(let r of e)t[r]=true;return t}K.toHash=Hd;function Wd(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?true:(Ta(e,t),!Aa(t,e.self.RULES.all))}K.alwaysValidSchema=Wd;function Ta(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema||typeof t=="boolean")return;let s=n.RULES.keywords;for(let o in t)s[o]||Oa(e,`unknown keyword: "${o}"`);}K.checkUnknownRules=Ta;function Aa(e,t){if(typeof e=="boolean")return !e;for(let r in e)if(t[r])return true;return false}K.schemaHasRules=Aa;function Yd(e,t){if(typeof e=="boolean")return !e;for(let r in e)if(r!=="$ref"&&t.all[r])return true;return false}K.schemaHasRulesButRef=Yd;function Xd({topSchemaRef:e,schemaPath:t},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return (0, oe._)`${r}`}return (0, oe._)`${e}${t}${(0, oe.getProperty)(n)}`}K.schemaRefOrVal=Xd;function Qd(e){return Ia(decodeURIComponent(e))}K.unescapeFragment=Qd;function Zd(e){return encodeURIComponent(ps(e))}K.escapeFragment=Zd;function ps(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}K.escapeJsonPointer=ps;function Ia(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}K.unescapeJsonPointer=Ia;function el(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e);}K.eachItem=el;function Ea({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return (s,o,a,i)=>{let c=a===void 0?o:a instanceof oe.Name?(o instanceof oe.Name?e(s,o,a):t(s,o,a),a):o instanceof oe.Name?(t(s,a,o),o):r(o,a);return i===oe.Name&&!(c instanceof oe.Name)?n(s,c):c}}K.mergeEvaluated={props:Ea({mergeNames:(e,t,r)=>e.if((0, oe._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0, oe._)`${t} === true`,()=>e.assign(r,true),()=>e.assign(r,(0, oe._)`${r} || {}`).code((0, oe._)`Object.assign(${r}, ${t})`));}),mergeToName:(e,t,r)=>e.if((0, oe._)`${r} !== true`,()=>{t===true?e.assign(r,true):(e.assign(r,(0, oe._)`${r} || {}`),ms(e,r,t));}),mergeValues:(e,t)=>e===true?true:{...e,...t},resultToName:Pa}),items:Ea({mergeNames:(e,t,r)=>e.if((0, oe._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0, oe._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0, oe._)`${r} !== true`,()=>e.assign(r,t===true?true:(0, oe._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===true?true:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function Pa(e,t){if(t===true)return e.var("props",true);let r=e.var("props",(0, oe._)`{}`);return t!==void 0&&ms(e,r,t),r}K.evaluatedPropsToName=Pa;function ms(e,t,r){Object.keys(r).forEach(n=>e.assign((0, oe._)`${t}${(0, oe.getProperty)(n)}`,true));}K.setEvaluated=ms;var xa={};function tl(e,t){return e.scopeValue("func",{ref:t,code:xa[t.code]||(xa[t.code]=new zd._Code(t.code))})}K.useFunc=tl;var fs;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str";})(fs||(K.Type=fs={}));function rl(e,t,r){if(e instanceof oe.Name){let n=t===fs.Num;return r?n?(0, oe._)`"[" + ${e} + "]"`:(0, oe._)`"['" + ${e} + "']"`:n?(0, oe._)`"/" + ${e}`:(0, oe._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0, oe.getProperty)(e).toString():"/"+ps(e)}K.getErrorPath=rl;function Oa(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===true)throw new Error(t);e.self.logger.warn(t);}}K.checkStrictMode=Oa;});var Ze=x(gs=>{Object.defineProperty(gs,"__esModule",{value:true});var ge=G(),nl={data:new ge.Name("data"),valCxt:new ge.Name("valCxt"),instancePath:new ge.Name("instancePath"),parentData:new ge.Name("parentData"),parentDataProperty:new ge.Name("parentDataProperty"),rootData:new ge.Name("rootData"),dynamicAnchors:new ge.Name("dynamicAnchors"),vErrors:new ge.Name("vErrors"),errors:new ge.Name("errors"),this:new ge.Name("this"),self:new ge.Name("self"),scope:new ge.Name("scope"),json:new ge.Name("json"),jsonPos:new ge.Name("jsonPos"),jsonLen:new ge.Name("jsonLen"),jsonPart:new ge.Name("jsonPart")};gs.default=nl;});var ir=x(he=>{Object.defineProperty(he,"__esModule",{value:true});he.extendErrors=he.resetErrorsCount=he.reportExtraError=he.reportError=he.keyword$DataError=he.keywordError=void 0;var H=G(),Xr=z(),ke=Ze();he.keywordError={message:({keyword:e})=>(0, H.str)`must pass "${e}" keyword validation`};he.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0, H.str)`"${e}" keyword must be ${t} ($data)`:(0, H.str)`"${e}" keyword is invalid ($data)`};function sl(e,t=he.keywordError,r,n){let{it:s}=e,{gen:o,compositeRule:a,allErrors:i}=s,c=qa(e,t,r);n??(a||i)?ja(o,c):Na(s,(0, H._)`[${c}]`);}he.reportError=sl;function ol(e,t=he.keywordError,r){let{it:n}=e,{gen:s,compositeRule:o,allErrors:a}=n,i=qa(e,t,r);ja(s,i),o||a||Na(n,ke.default.vErrors);}he.reportExtraError=ol;function al(e,t){e.assign(ke.default.errors,t),e.if((0, H._)`${ke.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0, H._)`${ke.default.vErrors}.length`,t),()=>e.assign(ke.default.vErrors,null)));}he.resetErrorsCount=al;function il({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,ke.default.errors,i=>{e.const(a,(0, H._)`${ke.default.vErrors}[${i}]`),e.if((0, H._)`${a}.instancePath === undefined`,()=>e.assign((0, H._)`${a}.instancePath`,(0, H.strConcat)(ke.default.instancePath,o.errorPath))),e.assign((0, H._)`${a}.schemaPath`,(0, H.str)`${o.errSchemaPath}/${t}`),o.opts.verbose&&(e.assign((0, H._)`${a}.schema`,r),e.assign((0, H._)`${a}.data`,n));});}he.extendErrors=il;function ja(e,t){let r=e.const("err",t);e.if((0, H._)`${ke.default.vErrors} === null`,()=>e.assign(ke.default.vErrors,(0, H._)`[${r}]`),(0, H._)`${ke.default.vErrors}.push(${r})`),e.code((0, H._)`${ke.default.errors}++`);}function Na(e,t){let{gen:r,validateName:n,schemaEnv:s}=e;s.$async?r.throw((0, H._)`new ${e.ValidationError}(${t})`):(r.assign((0, H._)`${n}.errors`,t),r.return(false));}var Ct={keyword:new H.Name("keyword"),schemaPath:new H.Name("schemaPath"),params:new H.Name("params"),propertyName:new H.Name("propertyName"),message:new H.Name("message"),schema:new H.Name("schema"),parentSchema:new H.Name("parentSchema")};function qa(e,t,r){let{createErrors:n}=e.it;return n===false?(0, H._)`{}`:ul(e,t,r)}function ul(e,t,r={}){let{gen:n,it:s}=e,o=[cl(s,r),dl(e,r)];return ll(e,t,o),n.object(...o)}function cl({errorPath:e},{instancePath:t}){let r=t?(0, H.str)`${e}${(0, Xr.getErrorPath)(t,Xr.Type.Str)}`:e;return [ke.default.instancePath,(0, H.strConcat)(ke.default.instancePath,r)]}function dl({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let s=n?t:(0, H.str)`${t}/${e}`;return r&&(s=(0, H.str)`${s}${(0, Xr.getErrorPath)(r,Xr.Type.Str)}`),[Ct.schemaPath,s]}function ll(e,{params:t,message:r},n){let{keyword:s,data:o,schemaValue:a,it:i}=e,{opts:c,propertyName:u,topSchemaRef:d,schemaPath:l}=i;n.push([Ct.keyword,s],[Ct.params,typeof t=="function"?t(e):t||(0, H._)`{}`]),c.messages&&n.push([Ct.message,typeof r=="function"?r(e):r]),c.verbose&&n.push([Ct.schema,a],[Ct.parentSchema,(0, H._)`${d}${l}`],[ke.default.data,o]),u&&n.push([Ct.propertyName,u]);}});var Da=x(Mt=>{Object.defineProperty(Mt,"__esModule",{value:true});Mt.boolOrEmptySchema=Mt.topBoolOrEmptySchema=void 0;var fl=ir(),pl=G(),ml=Ze(),gl={message:"boolean schema is false"};function hl(e){let{gen:t,schema:r,validateName:n}=e;r===false?Fa(e,false):typeof r=="object"&&r.$async===true?t.return(ml.default.data):(t.assign((0, pl._)`${n}.errors`,null),t.return(true));}Mt.topBoolOrEmptySchema=hl;function yl(e,t){let{gen:r,schema:n}=e;n===false?(r.var(t,false),Fa(e)):r.var(t,true);}Mt.boolOrEmptySchema=yl;function Fa(e,t){let{gen:r,data:n}=e,s={gen:r,keyword:"false schema",data:n,schema:false,schemaCode:false,schemaValue:false,params:{},it:e};(0, fl.reportError)(s,gl,void 0,t);}});var hs=x(Lt=>{Object.defineProperty(Lt,"__esModule",{value:true});Lt.getRules=Lt.isJSONType=void 0;var vl=["string","number","integer","boolean","null","object","array"],Sl=new Set(vl);function kl(e){return typeof e=="string"&&Sl.has(e)}Lt.isJSONType=kl;function wl(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return {types:{...e,integer:true,boolean:true,null:true},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}Lt.getRules=wl;});var ys=x(it=>{Object.defineProperty(it,"__esModule",{value:true});it.shouldUseRule=it.shouldUseGroup=it.schemaHasRulesForType=void 0;function bl({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==true&&Ma(e,n)}it.schemaHasRulesForType=bl;function Ma(e,t){return t.rules.some(r=>La(e,r))}it.shouldUseGroup=Ma;function La(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(n=>e[n]!==void 0))}it.shouldUseRule=La;});var ur=x(ye=>{Object.defineProperty(ye,"__esModule",{value:true});ye.reportTypeError=ye.checkDataTypes=ye.checkDataType=ye.coerceAndCheckDataType=ye.getJSONTypes=ye.getSchemaTypes=ye.DataType=void 0;var _l=hs(),Rl=ys(),Cl=ir(),L=G(),Va=z(),Vt;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong";})(Vt||(ye.DataType=Vt={}));function $l(e){let t=Ba(e.type);if(t.includes("null")){if(e.nullable===false)throw new Error("type: null contradicts nullable: false")}else {if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===true&&t.push("null");}return t}ye.getSchemaTypes=$l;function Ba(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(_l.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}ye.getJSONTypes=Ba;function El(e,t){let{gen:r,data:n,opts:s}=e,o=xl(t,s.coerceTypes),a=t.length>0&&!(o.length===0&&t.length===1&&(0, Rl.schemaHasRulesForType)(e,t[0]));if(a){let i=Ss(t,n,s.strictNumbers,Vt.Wrong);r.if(i,()=>{o.length?Tl(e,t,o):ks(e);});}return a}ye.coerceAndCheckDataType=El;var Ga=new Set(["string","number","integer","boolean","null"]);function xl(e,t){return t?e.filter(r=>Ga.has(r)||t==="array"&&r==="array"):[]}function Tl(e,t,r){let{gen:n,data:s,opts:o}=e,a=n.let("dataType",(0, L._)`typeof ${s}`),i=n.let("coerced",(0, L._)`undefined`);o.coerceTypes==="array"&&n.if((0, L._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0, L._)`${s}[0]`).assign(a,(0, L._)`typeof ${s}`).if(Ss(t,s,o.strictNumbers),()=>n.assign(i,s))),n.if((0, L._)`${i} !== undefined`);for(let u of r)(Ga.has(u)||u==="array"&&o.coerceTypes==="array")&&c(u);n.else(),ks(e),n.endIf(),n.if((0, L._)`${i} !== undefined`,()=>{n.assign(s,i),Al(e,i);});function c(u){switch(u){case "string":n.elseIf((0, L._)`${a} == "number" || ${a} == "boolean"`).assign(i,(0, L._)`"" + ${s}`).elseIf((0, L._)`${s} === null`).assign(i,(0, L._)`""`);return;case "number":n.elseIf((0, L._)`${a} == "boolean" || ${s} === null
1
+ 'use strict';var child_process=require('child_process'),b=require('fs'),qn=require('os'),J=require('path'),Zo=require('net'),url=require('url'),crypto=require('crypto'),module$1=require('module'),properLockfile=require('proper-lockfile'),ih=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 b__namespace=/*#__PURE__*/_interopNamespace(b);var qn__namespace=/*#__PURE__*/_interopNamespace(qn);var J__namespace=/*#__PURE__*/_interopNamespace(J);var Zo__namespace=/*#__PURE__*/_interopNamespace(Zo);var ih__default=/*#__PURE__*/_interopDefault(ih);var Uc=Object.create;var Wo=Object.defineProperty;var Jc=Object.getOwnPropertyDescriptor;var zc=Object.getOwnPropertyNames;var Hc=Object.getPrototypeOf,Wc=Object.prototype.hasOwnProperty;var x=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Yc=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of zc(t))!Wc.call(e,s)&&s!==r&&Wo(e,s,{get:()=>t[s],enumerable:!(n=Jc(t,s))||n.enumerable});return e};var Xc=(e,t,r)=>(r=e!=null?Uc(Hc(e)):{},Yc(Wo(r,"default",{value:e,enumerable:true}),e));var tr=x(Y=>{Object.defineProperty(Y,"__esModule",{value:true});Y.regexpCode=Y.getEsmExportName=Y.getProperty=Y.safeStringify=Y.stringify=Y.strConcat=Y.addCodeArg=Y.str=Y._=Y.nil=Y._Code=Y.Name=Y.IDENTIFIER=Y._CodeOrName=void 0;var Zt=class{};Y._CodeOrName=Zt;Y.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var kt=class extends Zt{constructor(t){if(super(),!Y.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t;}toString(){return this.str}emptyStr(){return false}get names(){return {[this.str]:1}}};Y.Name=kt;var Pe=class extends Zt{constructor(t){super(),this._items=typeof t=="string"?[t]:t;}toString(){return this.str}emptyStr(){if(this._items.length>1)return false;let t=this._items[0];return t===""||t==='""'}get str(){var t;return (t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var t;return (t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,n)=>(n instanceof kt&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Y._Code=Pe;Y.nil=new Pe("");function _a(e,...t){let r=[e[0]],n=0;for(;n<t.length;)Yn(r,t[n]),r.push(e[++n]);return new Pe(r)}Y._=_a;var Wn=new Pe("+");function Ra(e,...t){let r=[er(e[0])],n=0;for(;n<t.length;)r.push(Wn),Yn(r,t[n]),r.push(Wn,er(e[++n]));return jd(r),new Pe(r)}Y.str=Ra;function Yn(e,t){t instanceof Pe?e.push(...t._items):t instanceof kt?e.push(t):e.push(Fd(t));}Y.addCodeArg=Yn;function jd(e){let t=1;for(;t<e.length-1;){if(e[t]===Wn){let r=Nd(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+";}t++;}}function Nd(e,t){if(t==='""')return e;if(e==='""')return t;if(typeof e=="string")return t instanceof kt||e[e.length-1]!=='"'?void 0:typeof t!="string"?`${e.slice(0,-1)}${t}"`:t[0]==='"'?e.slice(0,-1)+t.slice(1):void 0;if(typeof t=="string"&&t[0]==='"'&&!(e instanceof kt))return `"${e}${t.slice(1)}`}function qd(e,t){return t.emptyStr()?e:e.emptyStr()?t:Ra`${e}${t}`}Y.strConcat=qd;function Fd(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:er(Array.isArray(e)?e.join(","):e)}function Dd(e){return new Pe(er(e))}Y.stringify=Dd;function er(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}Y.safeStringify=er;function Md(e){return typeof e=="string"&&Y.IDENTIFIER.test(e)?new Pe(`.${e}`):_a`[${e}]`}Y.getProperty=Md;function Ld(e){if(typeof e=="string"&&Y.IDENTIFIER.test(e))return new Pe(`${e}`);throw new Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}Y.getEsmExportName=Ld;function Vd(e){return new Pe(e.toString())}Y.regexpCode=Vd;});var Zn=x(Ce=>{Object.defineProperty(Ce,"__esModule",{value:true});Ce.ValueScope=Ce.ValueScopeName=Ce.Scope=Ce.varKinds=Ce.UsedValueState=void 0;var Re=tr(),Xn=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value;}},Kr;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed";})(Kr||(Ce.UsedValueState=Kr={}));Ce.varKinds={const:new Re.Name("const"),let:new Re.Name("let"),var:new Re.Name("var")};var Ur=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r;}toName(t){return t instanceof Re.Name?t:this.name(t)}name(t){return new Re.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return `${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};Ce.Scope=Ur;var Jr=class extends Re.Name{constructor(t,r){super(r),this.prefix=t;}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0, Re._)`.${new Re.Name(r)}[${n}]`;}};Ce.ValueScopeName=Jr;var Bd=(0, Re._)`\n`,Qn=class extends Ur{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?Bd:Re.nil};}get(){return this._scope}name(t){return new Jr(t,this._newName(t))}value(t,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(t),{prefix:o}=s,a=(n=r.key)!==null&&n!==void 0?n:r.ref,i=this._values[o];if(i){let d=i.get(a);if(d)return d}else i=this._values[o]=new Map;i.set(a,s);let c=this._scope[o]||(this._scope[o]=[]),u=c.length;return c[u]=r.ref,s.setValue(r,{property:o,itemIndex:u}),s}getValue(t,r){let n=this._values[t];if(n)return n.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return (0, Re._)`${t}${n.scopePath}`})}scopeCode(t=this._values,r,n){return this._reduceValues(t,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(t,r,n={},s){let o=Re.nil;for(let a in t){let i=t[a];if(!i)continue;let c=n[a]=n[a]||new Map;i.forEach(u=>{if(c.has(u))return;c.set(u,Kr.Started);let d=r(u);if(d){let l=this.opts.es5?Ce.varKinds.var:Ce.varKinds.const;o=(0, Re._)`${o}${l} ${u} = ${d};${this.opts._n}`;}else if(d=s?.(u))o=(0, Re._)`${o}${d}${this.opts._n}`;else throw new Xn(u);c.set(u,Kr.Completed);});}return o}};Ce.ValueScope=Qn;});var G=x(V=>{Object.defineProperty(V,"__esModule",{value:true});V.or=V.and=V.not=V.CodeGen=V.operators=V.varKinds=V.ValueScopeName=V.ValueScope=V.Scope=V.Name=V.regexpCode=V.stringify=V.getProperty=V.nil=V.strConcat=V.str=V._=void 0;var U=tr(),Le=Zn(),at=tr();Object.defineProperty(V,"_",{enumerable:true,get:function(){return at._}});Object.defineProperty(V,"str",{enumerable:true,get:function(){return at.str}});Object.defineProperty(V,"strConcat",{enumerable:true,get:function(){return at.strConcat}});Object.defineProperty(V,"nil",{enumerable:true,get:function(){return at.nil}});Object.defineProperty(V,"getProperty",{enumerable:true,get:function(){return at.getProperty}});Object.defineProperty(V,"stringify",{enumerable:true,get:function(){return at.stringify}});Object.defineProperty(V,"regexpCode",{enumerable:true,get:function(){return at.regexpCode}});Object.defineProperty(V,"Name",{enumerable:true,get:function(){return at.Name}});var Yr=Zn();Object.defineProperty(V,"Scope",{enumerable:true,get:function(){return Yr.Scope}});Object.defineProperty(V,"ValueScope",{enumerable:true,get:function(){return Yr.ValueScope}});Object.defineProperty(V,"ValueScopeName",{enumerable:true,get:function(){return Yr.ValueScopeName}});Object.defineProperty(V,"varKinds",{enumerable:true,get:function(){return Yr.varKinds}});V.operators={GT:new U._Code(">"),GTE:new U._Code(">="),LT:new U._Code("<"),LTE:new U._Code("<="),EQ:new U._Code("==="),NEQ:new U._Code("!=="),NOT:new U._Code("!"),OR:new U._Code("||"),AND:new U._Code("&&"),ADD:new U._Code("+")};var Xe=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},es=class extends Xe{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n;}render({es5:t,_n:r}){let n=t?Le.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return `${n} ${this.name}${s};`+r}optimizeNames(t,r){if(t[this.name.str])return this.rhs&&(this.rhs=Dt(this.rhs,t,r)),this}get names(){return this.rhs instanceof U._CodeOrName?this.rhs.names:{}}},zr=class extends Xe{constructor(t,r,n){super(),this.lhs=t,this.rhs=r,this.sideEffects=n;}render({_n:t}){return `${this.lhs} = ${this.rhs};`+t}optimizeNames(t,r){if(!(this.lhs instanceof U.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=Dt(this.rhs,t,r),this}get names(){let t=this.lhs instanceof U.Name?{}:{...this.lhs.names};return Wr(t,this.rhs)}},ts=class extends zr{constructor(t,r,n,s){super(t,n,s),this.op=r;}render({_n:t}){return `${this.lhs} ${this.op}= ${this.rhs};`+t}},rs=class extends Xe{constructor(t){super(),this.label=t,this.names={};}render({_n:t}){return `${this.label}:`+t}},ns=class extends Xe{constructor(t){super(),this.label=t,this.names={};}render({_n:t}){return `break${this.label?` ${this.label}`:""};`+t}},ss=class extends Xe{constructor(t){super(),this.error=t;}render({_n:t}){return `throw ${this.error};`+t}get names(){return this.error.names}},os=class extends Xe{constructor(t){super(),this.code=t;}render({_n:t}){return `${this.code};`+t}optimizeNodes(){return `${this.code}`?this:void 0}optimizeNames(t,r){return this.code=Dt(this.code,t,r),this}get names(){return this.code instanceof U._CodeOrName?this.code.names:{}}},rr=class extends Xe{constructor(t=[]){super(),this.nodes=t;}render(t){return this.nodes.reduce((r,n)=>r+n.render(t),"")}optimizeNodes(){let{nodes:t}=this,r=t.length;for(;r--;){let n=t[r].optimizeNodes();Array.isArray(n)?t.splice(r,1,...n):n?t[r]=n:t.splice(r,1);}return t.length>0?this:void 0}optimizeNames(t,r){let{nodes:n}=this,s=n.length;for(;s--;){let o=n[s];o.optimizeNames(t,r)||(Gd(t,o.names),n.splice(s,1));}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>Rt(t,r.names),{})}},Qe=class extends rr{render(t){return "{"+t._n+super.render(t)+"}"+t._n}},as=class extends rr{},Ft=class extends Qe{};Ft.kind="else";var bt=class e extends Qe{constructor(t,r){super(r),this.condition=t;}render(t){let r=`if(${this.condition})`+super.render(t);return this.else&&(r+="else "+this.else.render(t)),r}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===true)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new Ft(n):n;}if(r)return t===false?r instanceof e?r:r.nodes:this.nodes.length?this:new e(Ca(t),r instanceof e?[r]:r.nodes);if(!(t===false||!this.nodes.length))return this}optimizeNames(t,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(t,r),!!(super.optimizeNames(t,r)||this.else))return this.condition=Dt(this.condition,t,r),this}get names(){let t=super.names;return Wr(t,this.condition),this.else&&Rt(t,this.else.names),t}};bt.kind="if";var _t=class extends Qe{};_t.kind="for";var is=class extends _t{constructor(t){super(),this.iteration=t;}render(t){return `for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=Dt(this.iteration,t,r),this}get names(){return Rt(super.names,this.iteration.names)}},us=class extends _t{constructor(t,r,n,s){super(),this.varKind=t,this.name=r,this.from=n,this.to=s;}render(t){let r=t.es5?Le.varKinds.var:this.varKind,{name:n,from:s,to:o}=this;return `for(${r} ${n}=${s}; ${n}<${o}; ${n}++)`+super.render(t)}get names(){let t=Wr(super.names,this.from);return Wr(t,this.to)}},Hr=class extends _t{constructor(t,r,n,s){super(),this.loop=t,this.varKind=r,this.name=n,this.iterable=s;}render(t){return `for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iterable=Dt(this.iterable,t,r),this}get names(){return Rt(super.names,this.iterable.names)}},nr=class extends Qe{constructor(t,r,n){super(),this.name=t,this.args=r,this.async=n;}render(t){return `${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}};nr.kind="func";var sr=class extends rr{render(t){return "return "+super.render(t)}};sr.kind="return";var cs=class extends Qe{render(t){let r="try"+super.render(t);return this.catch&&(r+=this.catch.render(t)),this.finally&&(r+=this.finally.render(t)),r}optimizeNodes(){var t,r;return super.optimizeNodes(),(t=this.catch)===null||t===void 0||t.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(t,r){var n,s;return super.optimizeNames(t,r),(n=this.catch)===null||n===void 0||n.optimizeNames(t,r),(s=this.finally)===null||s===void 0||s.optimizeNames(t,r),this}get names(){let t=super.names;return this.catch&&Rt(t,this.catch.names),this.finally&&Rt(t,this.finally.names),t}},or=class extends Qe{constructor(t){super(),this.error=t;}render(t){return `catch(${this.error})`+super.render(t)}};or.kind="catch";var ar=class extends Qe{render(t){return "finally"+super.render(t)}};ar.kind="finally";var ds=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
2
+ `:""},this._extScope=t,this._scope=new Le.Scope({parent:t}),this._nodes=[new as];}toString(){return this._root.render(this.opts)}name(t){return this._scope.name(t)}scopeName(t){return this._extScope.name(t)}scopeValue(t,r){let n=this._extScope.value(t,r);return (this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(t,r){return this._extScope.getValue(t,r)}scopeRefs(t){return this._extScope.scopeRefs(t,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(t,r,n,s){let o=this._scope.toName(r);return n!==void 0&&s&&(this._constants[o.str]=n),this._leafNode(new es(t,o,n)),o}const(t,r,n){return this._def(Le.varKinds.const,t,r,n)}let(t,r,n){return this._def(Le.varKinds.let,t,r,n)}var(t,r,n){return this._def(Le.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new zr(t,r,n))}add(t,r){return this._leafNode(new ts(t,V.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==U.nil&&this._leafNode(new os(t)),this}object(...t){let r=["{"];for(let[n,s]of t)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0, U.addCodeArg)(r,s));return r.push("}"),new U._Code(r)}if(t,r,n){if(this._blockNode(new bt(t)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(t){return this._elseNode(new bt(t))}else(){return this._elseNode(new Ft)}endIf(){return this._endBlockNode(bt,Ft)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new is(t),r)}forRange(t,r,n,s,o=this.opts.es5?Le.varKinds.var:Le.varKinds.let){let a=this._scope.toName(t);return this._for(new us(o,a,r,n),()=>s(a))}forOf(t,r,n,s=Le.varKinds.const){let o=this._scope.toName(t);if(this.opts.es5){let a=r instanceof U.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0, U._)`${a}.length`,i=>{this.var(o,(0, U._)`${a}[${i}]`),n(o);})}return this._for(new Hr("of",s,o,r),()=>n(o))}forIn(t,r,n,s=this.opts.es5?Le.varKinds.var:Le.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0, U._)`Object.keys(${r})`,n);let o=this._scope.toName(t);return this._for(new Hr("in",s,o,r),()=>n(o))}endFor(){return this._endBlockNode(_t)}label(t){return this._leafNode(new rs(t))}break(t){return this._leafNode(new ns(t))}return(t){let r=new sr;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(sr)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new cs;if(this._blockNode(s),this.code(t),r){let o=this.name("e");this._currNode=s.catch=new or(o),r(o);}return n&&(this._currNode=s.finally=new ar,this.code(n)),this._endBlockNode(or,ar)}throw(t){return this._leafNode(new ss(t))}block(t,r){return this._blockStarts.push(this._nodes.length),t&&this.code(t).endBlock(r),this}endBlock(t){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||t!==void 0&&n!==t)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${t} expected`);return this._nodes.length=r,this}func(t,r=U.nil,n,s){return this._blockNode(new nr(t,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(nr)}optimize(t=1){for(;t-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants);}_leafNode(t){return this._currNode.nodes.push(t),this}_blockNode(t){this._currNode.nodes.push(t),this._nodes.push(t);}_endBlockNode(t,r){let n=this._currNode;if(n instanceof t||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${t.kind}/${r.kind}`:t.kind}"`)}_elseNode(t){let r=this._currNode;if(!(r instanceof bt))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=t,this}get _root(){return this._nodes[0]}get _currNode(){let t=this._nodes;return t[t.length-1]}set _currNode(t){let r=this._nodes;r[r.length-1]=t;}};V.CodeGen=ds;function Rt(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function Wr(e,t){return t instanceof U._CodeOrName?Rt(e,t.names):e}function Dt(e,t,r){if(e instanceof U.Name)return n(e);if(!s(e))return e;return new U._Code(e._items.reduce((o,a)=>(a instanceof U.Name&&(a=n(a)),a instanceof U._Code?o.push(...a._items):o.push(a),o),[]));function n(o){let a=r[o.str];return a===void 0||t[o.str]!==1?o:(delete t[o.str],a)}function s(o){return o instanceof U._Code&&o._items.some(a=>a instanceof U.Name&&t[a.str]===1&&r[a.str]!==void 0)}}function Gd(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0);}function Ca(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0, U._)`!${ls(e)}`}V.not=Ca;var Kd=$a(V.operators.AND);function Ud(...e){return e.reduce(Kd)}V.and=Ud;var Jd=$a(V.operators.OR);function zd(...e){return e.reduce(Jd)}V.or=zd;function $a(e){return (t,r)=>t===U.nil?r:r===U.nil?t:(0, U._)`${ls(t)} ${e} ${ls(r)}`}function ls(e){return e instanceof U.Name?e:(0, U._)`(${e})`}});var z=x(K=>{Object.defineProperty(K,"__esModule",{value:true});K.checkStrictMode=K.getErrorPath=K.Type=K.useFunc=K.setEvaluated=K.evaluatedPropsToName=K.mergeEvaluated=K.eachItem=K.unescapeJsonPointer=K.escapeJsonPointer=K.escapeFragment=K.unescapeFragment=K.schemaRefOrVal=K.schemaHasRulesButRef=K.schemaHasRules=K.checkUnknownRules=K.alwaysValidSchema=K.toHash=void 0;var oe=G(),Hd=tr();function Wd(e){let t={};for(let r of e)t[r]=true;return t}K.toHash=Wd;function Yd(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?true:(Ta(e,t),!Aa(t,e.self.RULES.all))}K.alwaysValidSchema=Yd;function Ta(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema||typeof t=="boolean")return;let s=n.RULES.keywords;for(let o in t)s[o]||Pa(e,`unknown keyword: "${o}"`);}K.checkUnknownRules=Ta;function Aa(e,t){if(typeof e=="boolean")return !e;for(let r in e)if(t[r])return true;return false}K.schemaHasRules=Aa;function Xd(e,t){if(typeof e=="boolean")return !e;for(let r in e)if(r!=="$ref"&&t.all[r])return true;return false}K.schemaHasRulesButRef=Xd;function Qd({topSchemaRef:e,schemaPath:t},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return (0, oe._)`${r}`}return (0, oe._)`${e}${t}${(0, oe.getProperty)(n)}`}K.schemaRefOrVal=Qd;function Zd(e){return Ia(decodeURIComponent(e))}K.unescapeFragment=Zd;function el(e){return encodeURIComponent(ps(e))}K.escapeFragment=el;function ps(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}K.escapeJsonPointer=ps;function Ia(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}K.unescapeJsonPointer=Ia;function tl(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e);}K.eachItem=tl;function Ea({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return (s,o,a,i)=>{let c=a===void 0?o:a instanceof oe.Name?(o instanceof oe.Name?e(s,o,a):t(s,o,a),a):o instanceof oe.Name?(t(s,a,o),o):r(o,a);return i===oe.Name&&!(c instanceof oe.Name)?n(s,c):c}}K.mergeEvaluated={props:Ea({mergeNames:(e,t,r)=>e.if((0, oe._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0, oe._)`${t} === true`,()=>e.assign(r,true),()=>e.assign(r,(0, oe._)`${r} || {}`).code((0, oe._)`Object.assign(${r}, ${t})`));}),mergeToName:(e,t,r)=>e.if((0, oe._)`${r} !== true`,()=>{t===true?e.assign(r,true):(e.assign(r,(0, oe._)`${r} || {}`),ms(e,r,t));}),mergeValues:(e,t)=>e===true?true:{...e,...t},resultToName:Oa}),items:Ea({mergeNames:(e,t,r)=>e.if((0, oe._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0, oe._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0, oe._)`${r} !== true`,()=>e.assign(r,t===true?true:(0, oe._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===true?true:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function Oa(e,t){if(t===true)return e.var("props",true);let r=e.var("props",(0, oe._)`{}`);return t!==void 0&&ms(e,r,t),r}K.evaluatedPropsToName=Oa;function ms(e,t,r){Object.keys(r).forEach(n=>e.assign((0, oe._)`${t}${(0, oe.getProperty)(n)}`,true));}K.setEvaluated=ms;var xa={};function rl(e,t){return e.scopeValue("func",{ref:t,code:xa[t.code]||(xa[t.code]=new Hd._Code(t.code))})}K.useFunc=rl;var fs;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str";})(fs||(K.Type=fs={}));function nl(e,t,r){if(e instanceof oe.Name){let n=t===fs.Num;return r?n?(0, oe._)`"[" + ${e} + "]"`:(0, oe._)`"['" + ${e} + "']"`:n?(0, oe._)`"/" + ${e}`:(0, oe._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0, oe.getProperty)(e).toString():"/"+ps(e)}K.getErrorPath=nl;function Pa(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===true)throw new Error(t);e.self.logger.warn(t);}}K.checkStrictMode=Pa;});var Ze=x(gs=>{Object.defineProperty(gs,"__esModule",{value:true});var ge=G(),sl={data:new ge.Name("data"),valCxt:new ge.Name("valCxt"),instancePath:new ge.Name("instancePath"),parentData:new ge.Name("parentData"),parentDataProperty:new ge.Name("parentDataProperty"),rootData:new ge.Name("rootData"),dynamicAnchors:new ge.Name("dynamicAnchors"),vErrors:new ge.Name("vErrors"),errors:new ge.Name("errors"),this:new ge.Name("this"),self:new ge.Name("self"),scope:new ge.Name("scope"),json:new ge.Name("json"),jsonPos:new ge.Name("jsonPos"),jsonLen:new ge.Name("jsonLen"),jsonPart:new ge.Name("jsonPart")};gs.default=sl;});var ir=x(he=>{Object.defineProperty(he,"__esModule",{value:true});he.extendErrors=he.resetErrorsCount=he.reportExtraError=he.reportError=he.keyword$DataError=he.keywordError=void 0;var H=G(),Xr=z(),we=Ze();he.keywordError={message:({keyword:e})=>(0, H.str)`must pass "${e}" keyword validation`};he.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0, H.str)`"${e}" keyword must be ${t} ($data)`:(0, H.str)`"${e}" keyword is invalid ($data)`};function ol(e,t=he.keywordError,r,n){let{it:s}=e,{gen:o,compositeRule:a,allErrors:i}=s,c=qa(e,t,r);n??(a||i)?ja(o,c):Na(s,(0, H._)`[${c}]`);}he.reportError=ol;function al(e,t=he.keywordError,r){let{it:n}=e,{gen:s,compositeRule:o,allErrors:a}=n,i=qa(e,t,r);ja(s,i),o||a||Na(n,we.default.vErrors);}he.reportExtraError=al;function il(e,t){e.assign(we.default.errors,t),e.if((0, H._)`${we.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0, H._)`${we.default.vErrors}.length`,t),()=>e.assign(we.default.vErrors,null)));}he.resetErrorsCount=il;function ul({gen:e,keyword:t,schemaValue:r,data:n,errsCount:s,it:o}){if(s===void 0)throw new Error("ajv implementation error");let a=e.name("err");e.forRange("i",s,we.default.errors,i=>{e.const(a,(0, H._)`${we.default.vErrors}[${i}]`),e.if((0, H._)`${a}.instancePath === undefined`,()=>e.assign((0, H._)`${a}.instancePath`,(0, H.strConcat)(we.default.instancePath,o.errorPath))),e.assign((0, H._)`${a}.schemaPath`,(0, H.str)`${o.errSchemaPath}/${t}`),o.opts.verbose&&(e.assign((0, H._)`${a}.schema`,r),e.assign((0, H._)`${a}.data`,n));});}he.extendErrors=ul;function ja(e,t){let r=e.const("err",t);e.if((0, H._)`${we.default.vErrors} === null`,()=>e.assign(we.default.vErrors,(0, H._)`[${r}]`),(0, H._)`${we.default.vErrors}.push(${r})`),e.code((0, H._)`${we.default.errors}++`);}function Na(e,t){let{gen:r,validateName:n,schemaEnv:s}=e;s.$async?r.throw((0, H._)`new ${e.ValidationError}(${t})`):(r.assign((0, H._)`${n}.errors`,t),r.return(false));}var Ct={keyword:new H.Name("keyword"),schemaPath:new H.Name("schemaPath"),params:new H.Name("params"),propertyName:new H.Name("propertyName"),message:new H.Name("message"),schema:new H.Name("schema"),parentSchema:new H.Name("parentSchema")};function qa(e,t,r){let{createErrors:n}=e.it;return n===false?(0, H._)`{}`:cl(e,t,r)}function cl(e,t,r={}){let{gen:n,it:s}=e,o=[dl(s,r),ll(e,r)];return fl(e,t,o),n.object(...o)}function dl({errorPath:e},{instancePath:t}){let r=t?(0, H.str)`${e}${(0, Xr.getErrorPath)(t,Xr.Type.Str)}`:e;return [we.default.instancePath,(0, H.strConcat)(we.default.instancePath,r)]}function ll({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let s=n?t:(0, H.str)`${t}/${e}`;return r&&(s=(0, H.str)`${s}${(0, Xr.getErrorPath)(r,Xr.Type.Str)}`),[Ct.schemaPath,s]}function fl(e,{params:t,message:r},n){let{keyword:s,data:o,schemaValue:a,it:i}=e,{opts:c,propertyName:u,topSchemaRef:d,schemaPath:l}=i;n.push([Ct.keyword,s],[Ct.params,typeof t=="function"?t(e):t||(0, H._)`{}`]),c.messages&&n.push([Ct.message,typeof r=="function"?r(e):r]),c.verbose&&n.push([Ct.schema,a],[Ct.parentSchema,(0, H._)`${d}${l}`],[we.default.data,o]),u&&n.push([Ct.propertyName,u]);}});var Da=x(Mt=>{Object.defineProperty(Mt,"__esModule",{value:true});Mt.boolOrEmptySchema=Mt.topBoolOrEmptySchema=void 0;var pl=ir(),ml=G(),gl=Ze(),hl={message:"boolean schema is false"};function yl(e){let{gen:t,schema:r,validateName:n}=e;r===false?Fa(e,false):typeof r=="object"&&r.$async===true?t.return(gl.default.data):(t.assign((0, ml._)`${n}.errors`,null),t.return(true));}Mt.topBoolOrEmptySchema=yl;function vl(e,t){let{gen:r,schema:n}=e;n===false?(r.var(t,false),Fa(e)):r.var(t,true);}Mt.boolOrEmptySchema=vl;function Fa(e,t){let{gen:r,data:n}=e,s={gen:r,keyword:"false schema",data:n,schema:false,schemaCode:false,schemaValue:false,params:{},it:e};(0, pl.reportError)(s,hl,void 0,t);}});var hs=x(Lt=>{Object.defineProperty(Lt,"__esModule",{value:true});Lt.getRules=Lt.isJSONType=void 0;var Sl=["string","number","integer","boolean","null","object","array"],wl=new Set(Sl);function kl(e){return typeof e=="string"&&wl.has(e)}Lt.isJSONType=kl;function bl(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return {types:{...e,integer:true,boolean:true,null:true},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}Lt.getRules=bl;});var ys=x(it=>{Object.defineProperty(it,"__esModule",{value:true});it.shouldUseRule=it.shouldUseGroup=it.schemaHasRulesForType=void 0;function _l({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==true&&Ma(e,n)}it.schemaHasRulesForType=_l;function Ma(e,t){return t.rules.some(r=>La(e,r))}it.shouldUseGroup=Ma;function La(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(n=>e[n]!==void 0))}it.shouldUseRule=La;});var ur=x(ye=>{Object.defineProperty(ye,"__esModule",{value:true});ye.reportTypeError=ye.checkDataTypes=ye.checkDataType=ye.coerceAndCheckDataType=ye.getJSONTypes=ye.getSchemaTypes=ye.DataType=void 0;var Rl=hs(),Cl=ys(),$l=ir(),L=G(),Va=z(),Vt;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong";})(Vt||(ye.DataType=Vt={}));function El(e){let t=Ba(e.type);if(t.includes("null")){if(e.nullable===false)throw new Error("type: null contradicts nullable: false")}else {if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===true&&t.push("null");}return t}ye.getSchemaTypes=El;function Ba(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(Rl.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}ye.getJSONTypes=Ba;function xl(e,t){let{gen:r,data:n,opts:s}=e,o=Tl(t,s.coerceTypes),a=t.length>0&&!(o.length===0&&t.length===1&&(0, Cl.schemaHasRulesForType)(e,t[0]));if(a){let i=Ss(t,n,s.strictNumbers,Vt.Wrong);r.if(i,()=>{o.length?Al(e,t,o):ws(e);});}return a}ye.coerceAndCheckDataType=xl;var Ga=new Set(["string","number","integer","boolean","null"]);function Tl(e,t){return t?e.filter(r=>Ga.has(r)||t==="array"&&r==="array"):[]}function Al(e,t,r){let{gen:n,data:s,opts:o}=e,a=n.let("dataType",(0, L._)`typeof ${s}`),i=n.let("coerced",(0, L._)`undefined`);o.coerceTypes==="array"&&n.if((0, L._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0, L._)`${s}[0]`).assign(a,(0, L._)`typeof ${s}`).if(Ss(t,s,o.strictNumbers),()=>n.assign(i,s))),n.if((0, L._)`${i} !== undefined`);for(let u of r)(Ga.has(u)||u==="array"&&o.coerceTypes==="array")&&c(u);n.else(),ws(e),n.endIf(),n.if((0, L._)`${i} !== undefined`,()=>{n.assign(s,i),Il(e,i);});function c(u){switch(u){case "string":n.elseIf((0, L._)`${a} == "number" || ${a} == "boolean"`).assign(i,(0, L._)`"" + ${s}`).elseIf((0, L._)`${s} === null`).assign(i,(0, L._)`""`);return;case "number":n.elseIf((0, L._)`${a} == "boolean" || ${s} === null
3
3
  || (${a} == "string" && ${s} && ${s} == +${s})`).assign(i,(0, L._)`+${s}`);return;case "integer":n.elseIf((0, L._)`${a} === "boolean" || ${s} === null
4
4
  || (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(i,(0, L._)`+${s}`);return;case "boolean":n.elseIf((0, L._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(i,false).elseIf((0, L._)`${s} === "true" || ${s} === 1`).assign(i,true);return;case "null":n.elseIf((0, L._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(i,null);return;case "array":n.elseIf((0, L._)`${a} === "string" || ${a} === "number"
5
- || ${a} === "boolean" || ${s} === null`).assign(i,(0, L._)`[${s}]`);}}}function Al({gen:e,parentData:t,parentDataProperty:r},n){e.if((0, L._)`${t} !== undefined`,()=>e.assign((0, L._)`${t}[${r}]`,n));}function vs(e,t,r,n=Vt.Correct){let s=n===Vt.Correct?L.operators.EQ:L.operators.NEQ,o;switch(e){case "null":return (0, L._)`${t} ${s} null`;case "array":o=(0, L._)`Array.isArray(${t})`;break;case "object":o=(0, L._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case "integer":o=a((0, L._)`!(${t} % 1) && !isNaN(${t})`);break;case "number":o=a();break;default:return (0, L._)`typeof ${t} ${s} ${e}`}return n===Vt.Correct?o:(0, L.not)(o);function a(i=L.nil){return (0, L.and)((0, L._)`typeof ${t} == "number"`,i,r?(0, L._)`isFinite(${t})`:L.nil)}}ye.checkDataType=vs;function Ss(e,t,r,n){if(e.length===1)return vs(e[0],t,r,n);let s,o=(0, Va.toHash)(e);if(o.array&&o.object){let a=(0, L._)`typeof ${t} != "object"`;s=o.null?a:(0, L._)`!${t} || ${a}`,delete o.null,delete o.array,delete o.object;}else s=L.nil;o.number&&delete o.integer;for(let a in o)s=(0, L.and)(s,vs(a,t,r,n));return s}ye.checkDataTypes=Ss;var Il={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0, L._)`{type: ${e}}`:(0, L._)`{type: ${t}}`};function ks(e){let t=Pl(e);(0, Cl.reportError)(t,Il);}ye.reportTypeError=ks;function Pl(e){let{gen:t,data:r,schema:n}=e,s=(0, Va.schemaRefOrVal)(e,n,"type");return {gen:t,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:e}}});var Ua=x(Qr=>{Object.defineProperty(Qr,"__esModule",{value:true});Qr.assignDefaults=void 0;var Bt=G(),Ol=z();function jl(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let s in r)Ka(e,s,r[s].default);else t==="array"&&Array.isArray(n)&&n.forEach((s,o)=>Ka(e,o,s.default));}Qr.assignDefaults=jl;function Ka(e,t,r){let{gen:n,compositeRule:s,data:o,opts:a}=e;if(r===void 0)return;let i=(0, Bt._)`${o}${(0, Bt.getProperty)(t)}`;if(s){(0, Ol.checkStrictMode)(e,`default is ignored for: ${i}`);return}let c=(0, Bt._)`${i} === undefined`;a.useDefaults==="empty"&&(c=(0, Bt._)`${c} || ${i} === null || ${i} === ""`),n.if(c,(0, Bt._)`${i} = ${(0, Bt.stringify)(r)}`);}});var je=x(re=>{Object.defineProperty(re,"__esModule",{value:true});re.validateUnion=re.validateArray=re.usePattern=re.callValidateCode=re.schemaProperties=re.allSchemaProperties=re.noPropertyInData=re.propertyInData=re.isOwnProperty=re.hasPropFunc=re.reportMissingProp=re.checkMissingProp=re.checkReportMissingProp=void 0;var ae=G(),ws=z(),ut=Ze(),Nl=z();function ql(e,t){let{gen:r,data:n,it:s}=e;r.if(_s(r,n,t,s.opts.ownProperties),()=>{e.setParams({missingProperty:(0, ae._)`${t}`},true),e.error();});}re.checkReportMissingProp=ql;function Fl({gen:e,data:t,it:{opts:r}},n,s){return (0, ae.or)(...n.map(o=>(0, ae.and)(_s(e,t,o,r.ownProperties),(0, ae._)`${s} = ${o}`)))}re.checkMissingProp=Fl;function Dl(e,t){e.setParams({missingProperty:t},true),e.error();}re.reportMissingProp=Dl;function Ja(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0, ae._)`Object.prototype.hasOwnProperty`})}re.hasPropFunc=Ja;function bs(e,t,r){return (0, ae._)`${Ja(e)}.call(${t}, ${r})`}re.isOwnProperty=bs;function Ml(e,t,r,n){let s=(0, ae._)`${t}${(0, ae.getProperty)(r)} !== undefined`;return n?(0, ae._)`${s} && ${bs(e,t,r)}`:s}re.propertyInData=Ml;function _s(e,t,r,n){let s=(0, ae._)`${t}${(0, ae.getProperty)(r)} === undefined`;return n?(0, ae.or)(s,(0, ae.not)(bs(e,t,r))):s}re.noPropertyInData=_s;function za(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}re.allSchemaProperties=za;function Ll(e,t){return za(t).filter(r=>!(0, ws.alwaysValidSchema)(e,t[r]))}re.schemaProperties=Ll;function Vl({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:o},it:a},i,c,u){let d=u?(0, ae._)`${e}, ${t}, ${n}${s}`:t,l=[[ut.default.instancePath,(0, ae.strConcat)(ut.default.instancePath,o)],[ut.default.parentData,a.parentData],[ut.default.parentDataProperty,a.parentDataProperty],[ut.default.rootData,ut.default.rootData]];a.opts.dynamicRef&&l.push([ut.default.dynamicAnchors,ut.default.dynamicAnchors]);let h=(0, ae._)`${d}, ${r.object(...l)}`;return c!==ae.nil?(0, ae._)`${i}.call(${c}, ${h})`:(0, ae._)`${i}(${h})`}re.callValidateCode=Vl;var Bl=(0, ae._)`new RegExp`;function Gl({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:s}=t.code,o=s(r,n);return e.scopeValue("pattern",{key:o.toString(),ref:o,code:(0, ae._)`${s.code==="new RegExp"?Bl:(0, Nl.useFunc)(e,s)}(${r}, ${n})`})}re.usePattern=Gl;function Kl(e){let{gen:t,data:r,keyword:n,it:s}=e,o=t.name("valid");if(s.allErrors){let i=t.let("valid",true);return a(()=>t.assign(i,false)),i}return t.var(o,true),a(()=>t.break()),o;function a(i){let c=t.const("len",(0, ae._)`${r}.length`);t.forRange("i",0,c,u=>{e.subschema({keyword:n,dataProp:u,dataPropType:ws.Type.Num},o),t.if((0, ae.not)(o),i);});}}re.validateArray=Kl;function Ul(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, ws.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=t.let("valid",false),i=t.name("_valid");t.block(()=>r.forEach((c,u)=>{let d=e.subschema({keyword:n,schemaProp:u,compositeRule:true},i);t.assign(a,(0, ae._)`${a} || ${i}`),e.mergeValidEvaluated(d,i)||t.if((0, ae.not)(a));})),e.result(a,()=>e.reset(),()=>e.error(true));}re.validateUnion=Ul;});var Ya=x(Ue=>{Object.defineProperty(Ue,"__esModule",{value:true});Ue.validateKeywordUsage=Ue.validSchemaType=Ue.funcKeywordCode=Ue.macroKeywordCode=void 0;var we=G(),$t=Ze(),Jl=je(),zl=ir();function Hl(e,t){let{gen:r,keyword:n,schema:s,parentSchema:o,it:a}=e,i=t.macro.call(a.self,s,o,a),c=Wa(r,n,i);a.opts.validateSchema!==false&&a.self.validateSchema(i,true);let u=r.name("valid");e.subschema({schema:i,schemaPath:we.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:true},u),e.pass(u,()=>e.error(true));}Ue.macroKeywordCode=Hl;function Wl(e,t){var r;let{gen:n,keyword:s,schema:o,parentSchema:a,$data:i,it:c}=e;Xl(c,t);let u=!i&&t.compile?t.compile.call(c.self,o,a,c):t.validate,d=Wa(n,s,u),l=n.let("valid");e.block$data(l,h),e.ok((r=t.valid)!==null&&r!==void 0?r:l);function h(){if(t.errors===false)p(),t.modifying&&Ha(e),v(()=>e.error());else {let _=t.async?y():f();t.modifying&&Ha(e),v(()=>Yl(e,_));}}function y(){let _=n.let("ruleErrs",null);return n.try(()=>p((0, we._)`await `),m=>n.assign(l,false).if((0, we._)`${m} instanceof ${c.ValidationError}`,()=>n.assign(_,(0, we._)`${m}.errors`),()=>n.throw(m))),_}function f(){let _=(0, we._)`${d}.errors`;return n.assign(_,null),p(we.nil),_}function p(_=t.async?(0, we._)`await `:we.nil){let m=c.opts.passContext?$t.default.this:$t.default.self,g=!("compile"in t&&!i||t.schema===false);n.assign(l,(0, we._)`${_}${(0, Jl.callValidateCode)(e,d,m,g)}`,t.modifying);}function v(_){var m;n.if((0, we.not)((m=t.valid)!==null&&m!==void 0?m:l),_);}}Ue.funcKeywordCode=Wl;function Ha(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0, we._)`${n.parentData}[${n.parentDataProperty}]`));}function Yl(e,t){let{gen:r}=e;r.if((0, we._)`Array.isArray(${t})`,()=>{r.assign($t.default.vErrors,(0, we._)`${$t.default.vErrors} === null ? ${t} : ${$t.default.vErrors}.concat(${t})`).assign($t.default.errors,(0, we._)`${$t.default.vErrors}.length`),(0, zl.extendErrors)(e);},()=>e.error());}function Xl({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function Wa(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0, we.stringify)(r)})}function Ql(e,t,r=false){return !t.length||t.some(n=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}Ue.validSchemaType=Ql;function Zl({schema:e,opts:t,self:r,errSchemaPath:n},s,o){if(Array.isArray(s.keyword)?!s.keyword.includes(o):s.keyword!==o)throw new Error("ajv implementation error");let a=s.dependencies;if(a?.some(i=>!Object.prototype.hasOwnProperty.call(e,i)))throw new Error(`parent schema must have dependencies of ${o}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(e[o])){let c=`keyword "${o}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}Ue.validateKeywordUsage=Zl;});var Qa=x(ct=>{Object.defineProperty(ct,"__esModule",{value:true});ct.extendSubschemaMode=ct.extendSubschemaData=ct.getSubschema=void 0;var Je=G(),Xa=z();function ef(e,{keyword:t,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:o,topSchemaRef:a}){if(t!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let i=e.schema[t];return r===void 0?{schema:i,schemaPath:(0, Je._)`${e.schemaPath}${(0, Je.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:i[r],schemaPath:(0, Je._)`${e.schemaPath}${(0, Je.getProperty)(t)}${(0, Je.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0, Xa.escapeFragment)(r)}`}}if(n!==void 0){if(s===void 0||o===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return {schema:n,schemaPath:s,topSchemaRef:a,errSchemaPath:o}}throw new Error('either "keyword" or "schema" must be passed')}ct.getSubschema=ef;function tf(e,t,{dataProp:r,dataPropType:n,data:s,dataTypes:o,propertyName:a}){if(s!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:i}=t;if(r!==void 0){let{errorPath:u,dataPathArr:d,opts:l}=t,h=i.let("data",(0, Je._)`${t.data}${(0, Je.getProperty)(r)}`,true);c(h),e.errorPath=(0, Je.str)`${u}${(0, Xa.getErrorPath)(r,n,l.jsPropertySyntax)}`,e.parentDataProperty=(0, Je._)`${r}`,e.dataPathArr=[...d,e.parentDataProperty];}if(s!==void 0){let u=s instanceof Je.Name?s:i.let("data",s,true);c(u),a!==void 0&&(e.propertyName=a);}o&&(e.dataTypes=o);function c(u){e.data=u,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,u];}}ct.extendSubschemaData=tf;function rf(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:o}){n!==void 0&&(e.compositeRule=n),s!==void 0&&(e.createErrors=s),o!==void 0&&(e.allErrors=o),e.jtdDiscriminator=t,e.jtdMetadata=r;}ct.extendSubschemaMode=rf;});var Rs=x((ev,Za)=>{Za.exports=function e(t,r){if(t===r)return true;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return false;var n,s,o;if(Array.isArray(t)){if(n=t.length,n!=r.length)return false;for(s=n;s--!==0;)if(!e(t[s],r[s]))return false;return true}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(o=Object.keys(t),n=o.length,n!==Object.keys(r).length)return false;for(s=n;s--!==0;)if(!Object.prototype.hasOwnProperty.call(r,o[s]))return false;for(s=n;s--!==0;){var a=o[s];if(!e(t[a],r[a]))return false}return true}return t!==t&&r!==r};});var ti=x((tv,ei)=>{var dt=ei.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};Zr(t,n,s,e,"",e);};dt.keywords={additionalItems:true,items:true,contains:true,additionalProperties:true,propertyNames:true,not:true,if:true,then:true,else:true};dt.arrayKeywords={items:true,allOf:true,anyOf:true,oneOf:true};dt.propsKeywords={$defs:true,definitions:true,properties:true,patternProperties:true,dependencies:true};dt.skipKeywords={default:true,enum:true,const:true,required:true,maximum:true,minimum:true,exclusiveMaximum:true,exclusiveMinimum:true,multipleOf:true,maxLength:true,minLength:true,pattern:true,format:true,maxItems:true,minItems:true,uniqueItems:true,maxProperties:true,minProperties:true};function Zr(e,t,r,n,s,o,a,i,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,s,o,a,i,c,u);for(var d in n){var l=n[d];if(Array.isArray(l)){if(d in dt.arrayKeywords)for(var h=0;h<l.length;h++)Zr(e,t,r,l[h],s+"/"+d+"/"+h,o,s,d,n,h);}else if(d in dt.propsKeywords){if(l&&typeof l=="object")for(var y in l)Zr(e,t,r,l[y],s+"/"+d+"/"+nf(y),o,s,d,n,y);}else (d in dt.keywords||e.allKeys&&!(d in dt.skipKeywords))&&Zr(e,t,r,l,s+"/"+d,o,s,d,n);}r(n,s,o,a,i,c,u);}}function nf(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var cr=x($e=>{Object.defineProperty($e,"__esModule",{value:true});$e.getSchemaRefs=$e.resolveUrl=$e.normalizeId=$e._getFullPath=$e.getFullPath=$e.inlineRef=void 0;var sf=z(),of=Rs(),af=ti(),uf=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?!Cs(e):t?ri(e)<=t:false}$e.inlineRef=cf;var df=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Cs(e){for(let t in e){if(df.has(t))return true;let r=e[t];if(Array.isArray(r)&&r.some(Cs)||typeof r=="object"&&Cs(r))return true}return false}function ri(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!uf.has(r)&&(typeof e[r]=="object"&&(0, sf.eachItem)(e[r],n=>t+=ri(n)),t===1/0))return 1/0}return t}function ni(e,t="",r){r!==false&&(t=Gt(t));let n=e.parse(t);return si(e,n)}$e.getFullPath=ni;function si(e,t){return e.serialize(t).split("#")[0]+"#"}$e._getFullPath=si;var lf=/#\/?$/;function Gt(e){return e?e.replace(lf,""):""}$e.normalizeId=Gt;function ff(e,t,r){return r=Gt(r),e.resolve(t,r)}$e.resolveUrl=ff;var pf=/^[a-z_][-a-z0-9._]*$/i;function mf(e,t){if(typeof e=="boolean")return {};let{schemaId:r,uriResolver:n}=this.opts,s=Gt(e[r]||t),o={"":s},a=ni(n,s,false),i={},c=new Set;return af(e,{allKeys:true},(l,h,y,f)=>{if(f===void 0)return;let p=a+h,v=o[f];typeof l[r]=="string"&&(v=_.call(this,l[r])),m.call(this,l.$anchor),m.call(this,l.$dynamicAnchor),o[h]=v;function _(g){let k=this.opts.uriResolver.resolve;if(g=Gt(v?k(v,g):g),c.has(g))throw d(g);c.add(g);let w=this.refs[g];return typeof w=="string"&&(w=this.refs[w]),typeof w=="object"?u(l,w.schema,g):g!==Gt(p)&&(g[0]==="#"?(u(l,i[g],g),i[g]=l):this.refs[g]=p),g}function m(g){if(typeof g=="string"){if(!pf.test(g))throw new Error(`invalid anchor "${g}"`);_.call(this,`#${g}`);}}}),i;function u(l,h,y){if(h!==void 0&&!of(l,h))throw d(y)}function d(l){return new Error(`reference "${l}" resolves to more than one schema`)}}$e.getSchemaRefs=mf;});var fr=x(lt=>{Object.defineProperty(lt,"__esModule",{value:true});lt.getData=lt.KeywordCxt=lt.validateFunctionCode=void 0;var ci=Da(),oi=ur(),Es=ys(),en=ur(),gf=Ua(),lr=Ya(),$s=Qa(),A=G(),N=Ze(),hf=cr(),et=z(),dr=ir();function yf(e){if(fi(e)&&(pi(e),li(e))){kf(e);return}di(e,()=>(0, ci.topBoolOrEmptySchema)(e));}lt.validateFunctionCode=yf;function di({gen:e,validateName:t,schema:r,schemaEnv:n,opts:s},o){s.code.es5?e.func(t,(0, A._)`${N.default.data}, ${N.default.valCxt}`,n.$async,()=>{e.code((0, A._)`"use strict"; ${ai(r,s)}`),Sf(e,s),e.code(o);}):e.func(t,(0, A._)`${N.default.data}, ${vf(s)}`,n.$async,()=>e.code(ai(r,s)).code(o));}function vf(e){return (0, A._)`{${N.default.instancePath}="", ${N.default.parentData}, ${N.default.parentDataProperty}, ${N.default.rootData}=${N.default.data}${e.dynamicRef?(0, A._)`, ${N.default.dynamicAnchors}={}`:A.nil}}={}`}function Sf(e,t){e.if(N.default.valCxt,()=>{e.var(N.default.instancePath,(0, A._)`${N.default.valCxt}.${N.default.instancePath}`),e.var(N.default.parentData,(0, A._)`${N.default.valCxt}.${N.default.parentData}`),e.var(N.default.parentDataProperty,(0, A._)`${N.default.valCxt}.${N.default.parentDataProperty}`),e.var(N.default.rootData,(0, A._)`${N.default.valCxt}.${N.default.rootData}`),t.dynamicRef&&e.var(N.default.dynamicAnchors,(0, A._)`${N.default.valCxt}.${N.default.dynamicAnchors}`);},()=>{e.var(N.default.instancePath,(0, A._)`""`),e.var(N.default.parentData,(0, A._)`undefined`),e.var(N.default.parentDataProperty,(0, A._)`undefined`),e.var(N.default.rootData,N.default.data),t.dynamicRef&&e.var(N.default.dynamicAnchors,(0, A._)`{}`);});}function kf(e){let{schema:t,opts:r,gen:n}=e;di(e,()=>{r.$comment&&t.$comment&&gi(e),Cf(e),n.let(N.default.vErrors,null),n.let(N.default.errors,0),r.unevaluated&&wf(e),mi(e),xf(e);});}function wf(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0, A._)`${r}.evaluated`),t.if((0, A._)`${e.evaluated}.dynamicProps`,()=>t.assign((0, A._)`${e.evaluated}.props`,(0, A._)`undefined`)),t.if((0, A._)`${e.evaluated}.dynamicItems`,()=>t.assign((0, A._)`${e.evaluated}.items`,(0, A._)`undefined`));}function ai(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0, A._)`/*# sourceURL=${r} */`:A.nil}function bf(e,t){if(fi(e)&&(pi(e),li(e))){_f(e,t);return}(0, ci.boolOrEmptySchema)(e,t);}function li({schema:e,self:t}){if(typeof e=="boolean")return !e;for(let r in e)if(t.RULES.all[r])return true;return false}function fi(e){return typeof e.schema!="boolean"}function _f(e,t){let{schema:r,gen:n,opts:s}=e;s.$comment&&r.$comment&&gi(e),$f(e),Ef(e);let o=n.const("_errs",N.default.errors);mi(e,o),n.var(t,(0, A._)`${o} === ${N.default.errors}`);}function pi(e){(0, et.checkUnknownRules)(e),Rf(e);}function mi(e,t){if(e.opts.jtd)return ii(e,[],false,t);let r=(0, oi.getSchemaTypes)(e.schema),n=(0, oi.coerceAndCheckDataType)(e,r);ii(e,r,!n,t);}function Rf(e){let{schema:t,errSchemaPath:r,opts:n,self:s}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0, et.schemaHasRulesButRef)(t,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`);}function Cf(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0, et.checkStrictMode)(e,"default is ignored in the schema root");}function $f(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0, hf.resolveUrl)(e.opts.uriResolver,e.baseId,t));}function Ef(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function gi({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:s}){let o=r.$comment;if(s.$comment===true)e.code((0, A._)`${N.default.self}.logger.log(${o})`);else if(typeof s.$comment=="function"){let a=(0, A.str)`${n}/$comment`,i=e.scopeValue("root",{ref:t.root});e.code((0, A._)`${N.default.self}.opts.$comment(${o}, ${a}, ${i}.schema)`);}}function xf(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:s,opts:o}=e;r.$async?t.if((0, A._)`${N.default.errors} === 0`,()=>t.return(N.default.data),()=>t.throw((0, A._)`new ${s}(${N.default.vErrors})`)):(t.assign((0, A._)`${n}.errors`,N.default.vErrors),o.unevaluated&&Tf(e),t.return((0, A._)`${N.default.errors} === 0`));}function Tf({gen:e,evaluated:t,props:r,items:n}){r instanceof A.Name&&e.assign((0, A._)`${t}.props`,r),n instanceof A.Name&&e.assign((0, A._)`${t}.items`,n);}function ii(e,t,r,n){let{gen:s,schema:o,data:a,allErrors:i,opts:c,self:u}=e,{RULES:d}=u;if(o.$ref&&(c.ignoreKeywordsWithRef||!(0, et.schemaHasRulesButRef)(o,d))){s.block(()=>yi(e,"$ref",d.all.$ref.definition));return}c.jtd||Af(e,t),s.block(()=>{for(let h of d.rules)l(h);l(d.post);});function l(h){(0, Es.shouldUseGroup)(o,h)&&(h.type?(s.if((0, en.checkDataType)(h.type,a,c.strictNumbers)),ui(e,h),t.length===1&&t[0]===h.type&&r&&(s.else(),(0, en.reportTypeError)(e)),s.endIf()):ui(e,h),i||s.if((0, A._)`${N.default.errors} === ${n||0}`));}}function ui(e,t){let{gen:r,schema:n,opts:{useDefaults:s}}=e;s&&(0, gf.assignDefaults)(e,t.type),r.block(()=>{for(let o of t.rules)(0, Es.shouldUseRule)(n,o)&&yi(e,o.keyword,o.definition,t.type);});}function Af(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(If(e,t),e.opts.allowUnionTypes||Pf(e,t),Of(e,e.dataTypes));}function If(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{hi(e.dataTypes,r)||xs(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`);}),Nf(e,t);}}function Pf(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&xs(e,"use allowUnionTypes to allow union type keyword");}function Of(e,t){let r=e.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0, Es.shouldUseRule)(e.schema,s)){let{type:o}=s.definition;o.length&&!o.some(a=>jf(t,a))&&xs(e,`missing type "${o.join(",")}" for keyword "${n}"`);}}}function jf(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function hi(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function Nf(e,t){let r=[];for(let n of e.dataTypes)hi(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r;}function xs(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0, et.checkStrictMode)(e,t,e.opts.strictTypes);}var tn=class{constructor(t,r,n){if((0, lr.validateKeywordUsage)(t,r,n),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=n,this.data=t.data,this.schema=t.schema[n],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0, et.schemaRefOrVal)(t,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",vi(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0, lr.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==false)&&(this.errsCount=t.gen.const("_errs",N.default.errors));}result(t,r,n){this.failResult((0, A.not)(t),r,n);}failResult(t,r,n){this.gen.if(t),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else();}pass(t,r){this.failResult((0, A.not)(t),void 0,r);}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(false);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else();}fail$data(t){if(!this.$data)return this.fail(t);let{schemaCode:r}=this;this.fail((0, A._)`${r} !== undefined && (${(0, A.or)(this.invalid$data(),t)})`);}error(t,r,n){if(r){this.setParams(r),this._error(t,n),this.setParams({});return}this._error(t,n);}_error(t,r){(t?dr.reportExtraError:dr.reportError)(this,this.def.error,r);}$dataError(){(0, dr.reportError)(this,this.def.$dataError||dr.keyword$DataError);}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0, dr.resetErrorsCount)(this.gen,this.errsCount);}ok(t){this.allErrors||this.gen.if(t);}setParams(t,r){r?Object.assign(this.params,t):this.params=t;}block$data(t,r,n=A.nil){this.gen.block(()=>{this.check$data(t,n),r();});}check$data(t=A.nil,r=A.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:o,def:a}=this;n.if((0, A.or)((0, A._)`${s} === undefined`,r)),t!==A.nil&&n.assign(t,true),(o.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==A.nil&&n.assign(t,false)),n.else();}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:s,it:o}=this;return (0, A.or)(a(),i());function a(){if(n.length){if(!(r instanceof A.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return (0, A._)`${(0, en.checkDataTypes)(c,r,o.opts.strictNumbers,en.DataType.Wrong)}`}return A.nil}function i(){if(s.validateSchema){let c=t.scopeValue("validate$data",{ref:s.validateSchema});return (0, A._)`!${c}(${r})`}return A.nil}}subschema(t,r){let n=(0, $s.getSubschema)(this.it,t);(0, $s.extendSubschemaData)(n,this.it,t),(0, $s.extendSubschemaMode)(n,t);let s={...this.it,...n,items:void 0,props:void 0};return bf(s,r),s}mergeEvaluated(t,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==true&&t.props!==void 0&&(n.props=et.mergeEvaluated.props(s,t.props,n.props,r)),n.items!==true&&t.items!==void 0&&(n.items=et.mergeEvaluated.items(s,t.items,n.items,r)));}mergeValidEvaluated(t,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==true||n.items!==true))return s.if(r,()=>this.mergeEvaluated(t,A.Name)),true}};lt.KeywordCxt=tn;function yi(e,t,r,n){let s=new tn(e,r,t);"code"in r?r.code(s,n):s.$data&&r.validate?(0, lr.funcKeywordCode)(s,r):"macro"in r?(0, lr.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0, lr.funcKeywordCode)(s,r);}var qf=/^\/(?:[^~]|~0|~1)*$/,Ff=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function vi(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let s,o;if(e==="")return N.default.rootData;if(e[0]==="/"){if(!qf.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);s=e,o=N.default.rootData;}else {let u=Ff.exec(e);if(!u)throw new Error(`Invalid JSON-pointer: ${e}`);let d=+u[1];if(s=u[2],s==="#"){if(d>=t)throw new Error(c("property/index",d));return n[t-d]}if(d>t)throw new Error(c("data",d));if(o=r[t-d],!s)return o}let a=o,i=s.split("/");for(let u of i)u&&(o=(0, A._)`${o}${(0, A.getProperty)((0, et.unescapeJsonPointer)(u))}`,a=(0, A._)`${a} && ${o}`);return a;function c(u,d){return `Cannot access ${u} ${d} levels up, current level is ${t}`}}lt.getData=vi;});var rn=x(As=>{Object.defineProperty(As,"__esModule",{value:true});var Ts=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=true;}};As.default=Ts;});var pr=x(Os=>{Object.defineProperty(Os,"__esModule",{value:true});var Is=cr(),Ps=class extends Error{constructor(t,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0, Is.resolveUrl)(t,r,n),this.missingSchema=(0, Is.normalizeId)((0, Is.getFullPath)(t,this.missingRef));}};Os.default=Ps;});var sn=x(Ne=>{Object.defineProperty(Ne,"__esModule",{value:true});Ne.resolveSchema=Ne.getCompilingSchema=Ne.resolveRef=Ne.compileSchema=Ne.SchemaEnv=void 0;var Ve=G(),Df=rn(),Et=Ze(),Be=cr(),Si=z(),Mf=fr(),Kt=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let n;typeof t.schema=="object"&&(n=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0, Be.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={};}};Ne.SchemaEnv=Kt;function Ns(e){let t=ki.call(this,e);if(t)return t;let r=(0, Be.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:o}=this.opts,a=new Ve.CodeGen(this.scope,{es5:n,lines:s,ownProperties:o}),i;e.$async&&(i=a.scopeValue("Error",{ref:Df.default,code:(0, Ve._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");e.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:Et.default.data,parentData:Et.default.parentData,parentDataProperty:Et.default.parentDataProperty,dataNames:[Et.default.data],dataPathArr:[Ve.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===true?{ref:e.schema,code:(0, Ve.stringify)(e.schema)}:{ref:e.schema}),validateName:c,ValidationError:i,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:Ve.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0, Ve._)`""`,opts:this.opts,self:this},d;try{this._compilations.add(e),(0,Mf.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let l=a.toString();d=`${a.scopeRefs(Et.default.scope)}return ${l}`,this.opts.code.process&&(d=this.opts.code.process(d,e));let y=new Function(`${Et.default.self}`,`${Et.default.scope}`,d)(this,this.scope.get());if(this.scope.value(c,{ref:y}),y.errors=null,y.schema=e.schema,y.schemaEnv=e,e.$async&&(y.$async=!0),this.opts.code.source===!0&&(y.source={validateName:c,validateCode:l,scopeValues:a._values}),this.opts.unevaluated){let{props:f,items:p}=u;y.evaluated={props:f instanceof Ve.Name?void 0:f,items:p instanceof Ve.Name?void 0:p,dynamicProps:f instanceof Ve.Name,dynamicItems:p instanceof Ve.Name},y.source&&(y.source.evaluated=(0,Ve.stringify)(y.evaluated));}return e.validate=y,e}catch(l){throw delete e.validate,delete e.validateName,d&&this.logger.error("Error compiling schema, function code:",d),l}finally{this._compilations.delete(e);}}Ne.compileSchema=Ns;function Lf(e,t,r){var n;r=(0, Be.resolveUrl)(this.opts.uriResolver,t,r);let s=e.refs[r];if(s)return s;let o=Gf.call(this,e,r);if(o===void 0){let a=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:i}=this.opts;a&&(o=new Kt({schema:a,schemaId:i,root:e,baseId:t}));}if(o!==void 0)return e.refs[r]=Vf.call(this,o)}Ne.resolveRef=Lf;function Vf(e){return (0, Be.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:Ns.call(this,e)}function ki(e){for(let t of this._compilations)if(Bf(t,e))return t}Ne.getCompilingSchema=ki;function Bf(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function Gf(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||nn.call(this,e,t)}function nn(e,t){let r=this.opts.uriResolver.parse(t),n=(0, Be._getFullPath)(this.opts.uriResolver,r),s=(0, Be.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===s)return js.call(this,r,e);let o=(0, Be.normalizeId)(n),a=this.refs[o]||this.schemas[o];if(typeof a=="string"){let i=nn.call(this,e,a);return typeof i?.schema!="object"?void 0:js.call(this,r,i)}if(typeof a?.schema=="object"){if(a.validate||Ns.call(this,a),o===(0, Be.normalizeId)(t)){let{schema:i}=a,{schemaId:c}=this.opts,u=i[c];return u&&(s=(0, Be.resolveUrl)(this.opts.uriResolver,s,u)),new Kt({schema:i,schemaId:c,root:e,baseId:s})}return js.call(this,r,a)}}Ne.resolveSchema=nn;var Kf=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function js(e,{baseId:t,schema:r,root:n}){var s;if(((s=e.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let i of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0, Si.unescapeFragment)(i)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!Kf.has(i)&&u&&(t=(0, Be.resolveUrl)(this.opts.uriResolver,t,u));}let o;if(typeof r!="boolean"&&r.$ref&&!(0, Si.schemaHasRulesButRef)(r,this.RULES)){let i=(0, Be.resolveUrl)(this.opts.uriResolver,t,r.$ref);o=nn.call(this,n,i);}let{schemaId:a}=this.opts;if(o=o||new Kt({schema:r,schemaId:a,root:n,baseId:t}),o.schema!==o.root.schema)return o}});var wi=x((iv,Uf)=>{Uf.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:false};});var Fs=x((uv,Ci)=>{var Jf=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),_i=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function qs(e){let t="",r=0,n=0;for(n=0;n<e.length;n++)if(r=e[n].charCodeAt(0),r!==48){if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return "";t+=e[n];break}for(n+=1;n<e.length;n++){if(r=e[n].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return "";t+=e[n];}return t}var zf=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function bi(e){return e.length=0,true}function Hf(e,t,r){if(e.length){let n=qs(e);if(n!=="")t.push(n);else return r.error=true,false;e.length=0;}return true}function Wf(e){let t=0,r={error:false,address:"",zone:""},n=[],s=[],o=false,a=false,i=Hf;for(let c=0;c<e.length;c++){let u=e[c];if(!(u==="["||u==="]"))if(u===":"){if(o===true&&(a=true),!i(s,n,r))break;if(++t>7){r.error=true;break}c>0&&e[c-1]===":"&&(o=true),n.push(":");continue}else if(u==="%"){if(!i(s,n,r))break;i=bi;}else {s.push(u);continue}}return s.length&&(i===bi?r.zone=s.join(""):a?n.push(s.join("")):n.push(qs(s))),r.address=n.join(""),r}function Ri(e){if(Yf(e,":")<2)return {host:e,isIPV6:false};let t=Wf(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 Yf(e,t){let r=0;for(let n=0;n<e.length;n++)e[n]===t&&r++;return r}function Xf(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 Qf(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 Zf(e){let t=[];if(e.userinfo!==void 0&&(t.push(e.userinfo),t.push("@")),e.host!==void 0){let r=unescape(e.host);if(!_i(r)){let n=Ri(r);n.isIPV6===true?r=`[${n.escapedHost}]`:r=e.host;}t.push(r);}return (typeof e.port=="number"||typeof e.port=="string")&&(t.push(":"),t.push(String(e.port))),t.length?t.join(""):void 0}Ci.exports={nonSimpleDomain:zf,recomposeAuthority:Zf,normalizeComponentEncoding:Qf,removeDotSegments:Xf,isIPv4:_i,isUUID:Jf,normalizeIPv6:Ri,stringArrayToHexStripped:qs};});var Ai=x((cv,Ti)=>{var{isUUID:ep}=Fs(),tp=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,rp=["http","https","ws","wss","urn","urn:uuid"];function np(e){return rp.indexOf(e)!==-1}function Ds(e){return e.secure===true?true:e.secure===false?false:e.scheme?e.scheme.length===3&&(e.scheme[0]==="w"||e.scheme[0]==="W")&&(e.scheme[1]==="s"||e.scheme[1]==="S")&&(e.scheme[2]==="s"||e.scheme[2]==="S"):false}function $i(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function Ei(e){let t=String(e.scheme).toLowerCase()==="https";return (e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function sp(e){return e.secure=Ds(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function op(e){if((e.port===(Ds(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0;}return e.fragment=void 0,e}function ap(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(tp);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let s=`${n}:${t.nid||e.nid}`,o=Ms(s);e.path=void 0,o&&(e=o.parse(e,t));}else e.error=e.error||"URN can not be parsed.";return e}function ip(e,t){if(e.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),s=`${r}:${t.nid||n}`,o=Ms(s);o&&(e=o.serialize(e,t));let a=e,i=e.nss;return a.path=`${n||t.nid}:${i}`,t.skipEscape=true,a}function up(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!ep(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 xi={scheme:"http",domainHost:true,parse:$i,serialize:Ei},dp={scheme:"https",domainHost:xi.domainHost,parse:$i,serialize:Ei},on={scheme:"ws",domainHost:true,parse:sp,serialize:op},lp={scheme:"wss",domainHost:on.domainHost,parse:on.parse,serialize:on.serialize},fp={scheme:"urn",parse:ap,serialize:ip,skipNormalize:true},pp={scheme:"urn:uuid",parse:up,serialize:cp,skipNormalize:true},an={http:xi,https:dp,ws:on,wss:lp,urn:fp,"urn:uuid":pp};Object.setPrototypeOf(an,null);function Ms(e){return e&&(an[e]||an[e.toLowerCase()])||void 0}Ti.exports={wsIsSecure:Ds,SCHEMES:an,isValidSchemeName:np,getSchemeHandler:Ms};});var Oi=x((dv,cn)=>{var{normalizeIPv6:mp,removeDotSegments:mr,recomposeAuthority:gp,normalizeComponentEncoding:un,isIPv4:hp,nonSimpleDomain:yp}=Fs(),{SCHEMES:vp,getSchemeHandler:Ii}=Ai();function Sp(e,t){return typeof e=="string"?e=ze(tt(e,t),t):typeof e=="object"&&(e=tt(ze(e,t),t)),e}function kp(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=Pi(tt(e,n),tt(t,n),n,true);return n.skipEscape=true,ze(s,n)}function Pi(e,t,r,n){let s={};return n||(e=tt(ze(e,r),r),t=tt(ze(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(s.scheme=t.scheme,s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=mr(t.path||""),s.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=mr(t.path||""),s.query=t.query):(t.path?(t.path[0]==="/"?s.path=mr(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?s.path="/"+t.path:e.path?s.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:s.path=t.path,s.path=mr(s.path)),s.query=t.query):(s.path=e.path,t.query!==void 0?s.query=t.query:s.query=e.query),s.userinfo=e.userinfo,s.host=e.host,s.port=e.port),s.scheme=e.scheme),s.fragment=t.fragment,s}function wp(e,t,r){return typeof e=="string"?(e=unescape(e),e=ze(un(tt(e,r),true),{...r,skipEscape:true})):typeof e=="object"&&(e=ze(un(e,true),{...r,skipEscape:true})),typeof t=="string"?(t=unescape(t),t=ze(un(tt(t,r),true),{...r,skipEscape:true})):typeof t=="object"&&(t=ze(un(t,true),{...r,skipEscape:true})),e.toLowerCase()===t.toLowerCase()}function ze(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),s=[],o=Ii(n.scheme||r.scheme);o&&o.serialize&&o.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&s.push(r.scheme,":");let a=gp(r);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path[0]!=="/"&&s.push("/")),r.path!==void 0){let i=r.path;!n.absolutePath&&(!o||!o.absolutePath)&&(i=mr(i)),a===void 0&&i[0]==="/"&&i[1]==="/"&&(i="/%2F"+i.slice(2)),s.push(i);}return r.query!==void 0&&s.push("?",r.query),r.fragment!==void 0&&s.push("#",r.fragment),s.join("")}var bp=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function tt(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=false;r.reference==="suffix"&&(r.scheme?e=r.scheme+":"+e:e="//"+e);let o=e.match(bp);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(hp(n.host)===false){let c=mp(n.host);n.host=c.host.toLowerCase(),s=c.isIPV6;}else s=true;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=Ii(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===false&&yp(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase());}catch(i){n.error=n.error||"Host's domain name can not be converted to ASCII: "+i;}(!a||a&&!a.skipNormalize)&&(e.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r);}else n.error=n.error||"URI can not be parsed.";return n}var Ls={SCHEMES:vp,normalize:Sp,resolve:kp,resolveComponent:Pi,equal:wp,serialize:ze,parse:tt};cn.exports=Ls;cn.exports.default=Ls;cn.exports.fastUri=Ls;});var Ni=x(Vs=>{Object.defineProperty(Vs,"__esModule",{value:true});var ji=Oi();ji.code='require("ajv/dist/runtime/uri").default';Vs.default=ji;});var Gi=x(fe=>{Object.defineProperty(fe,"__esModule",{value:true});fe.CodeGen=fe.Name=fe.nil=fe.stringify=fe.str=fe._=fe.KeywordCxt=void 0;var _p=fr();Object.defineProperty(fe,"KeywordCxt",{enumerable:true,get:function(){return _p.KeywordCxt}});var Ut=G();Object.defineProperty(fe,"_",{enumerable:true,get:function(){return Ut._}});Object.defineProperty(fe,"str",{enumerable:true,get:function(){return Ut.str}});Object.defineProperty(fe,"stringify",{enumerable:true,get:function(){return Ut.stringify}});Object.defineProperty(fe,"nil",{enumerable:true,get:function(){return Ut.nil}});Object.defineProperty(fe,"Name",{enumerable:true,get:function(){return Ut.Name}});Object.defineProperty(fe,"CodeGen",{enumerable:true,get:function(){return Ut.CodeGen}});var Rp=rn(),Li=pr(),Cp=hs(),gr=sn(),$p=G(),hr=cr(),dn=ur(),Gs=z(),qi=wi(),Ep=Ni(),Vi=(e,t)=>new RegExp(e,t);Vi.code="new RegExp";var xp=["removeAdditional","useDefaults","coerceTypes"],Tp=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),Ap={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."},Ip={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Fi=200;function Pp(e){var t,r,n,s,o,a,i,c,u,d,l,h,y,f,p,v,_,m,g,k,w,$,R,E,I;let O=e.strict,B=(t=e.code)===null||t===void 0?void 0:t.optimize,W=B===true||B===void 0?1:B||0,Z=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Vi,le=(s=e.uriResolver)!==null&&s!==void 0?s:Ep.default;return {strictSchema:(a=(o=e.strictSchema)!==null&&o!==void 0?o:O)!==null&&a!==void 0?a:true,strictNumbers:(c=(i=e.strictNumbers)!==null&&i!==void 0?i:O)!==null&&c!==void 0?c:true,strictTypes:(d=(u=e.strictTypes)!==null&&u!==void 0?u:O)!==null&&d!==void 0?d:"log",strictTuples:(h=(l=e.strictTuples)!==null&&l!==void 0?l:O)!==null&&h!==void 0?h:"log",strictRequired:(f=(y=e.strictRequired)!==null&&y!==void 0?y:O)!==null&&f!==void 0?f:false,code:e.code?{...e.code,optimize:W,regExp:Z}:{optimize:W,regExp:Z},loopRequired:(p=e.loopRequired)!==null&&p!==void 0?p:Fi,loopEnum:(v=e.loopEnum)!==null&&v!==void 0?v:Fi,meta:(_=e.meta)!==null&&_!==void 0?_:true,messages:(m=e.messages)!==null&&m!==void 0?m:true,inlineRefs:(g=e.inlineRefs)!==null&&g!==void 0?g:true,schemaId:(k=e.schemaId)!==null&&k!==void 0?k:"$id",addUsedSchema:(w=e.addUsedSchema)!==null&&w!==void 0?w:true,validateSchema:($=e.validateSchema)!==null&&$!==void 0?$:true,validateFormats:(R=e.validateFormats)!==null&&R!==void 0?R:true,unicodeRegExp:(E=e.unicodeRegExp)!==null&&E!==void 0?E:true,int32range:(I=e.int32range)!==null&&I!==void 0?I:true,uriResolver:le}}var yr=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...Pp(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new $p.ValueScope({scope:{},prefixes:Tp,es5:r,lines:n}),this.logger=Dp(t.logger);let s=t.validateFormats;t.validateFormats=false,this.RULES=(0, Cp.getRules)(),Di.call(this,Ap,t,"NOT SUPPORTED"),Di.call(this,Ip,t,"DEPRECATED","warn"),this._metaOpts=qp.call(this),t.formats&&jp.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&Np.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),Op.call(this),t.validateFormats=s;}_addVocabularies(){this.addKeyword("$async");}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,s=qi;n==="id"&&(s={...qi},s.id=s.$id,delete s.$id),r&&t&&this.addMetaSchema(s,s[n],false);}defaultMeta(){let{meta:t,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof t=="object"?t[r]||t:void 0}validate(t,r){let n;if(typeof t=="string"){if(n=this.getSchema(t),!n)throw new Error(`no schema with key or ref "${t}"`)}else n=this.compile(t);let s=n(r);return "$async"in n||(this.errors=n.errors),s}compile(t,r){let n=this._addSchema(t,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(t,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return s.call(this,t,r);async function s(d,l){await o.call(this,d.$schema);let h=this._addSchema(d,l);return h.validate||a.call(this,h)}async function o(d){d&&!this.getSchema(d)&&await s.call(this,{$ref:d},true);}async function a(d){try{return this._compileSchemaEnv(d)}catch(l){if(!(l instanceof Li.default))throw l;return i.call(this,l),await c.call(this,l.missingSchema),a.call(this,d)}}function i({missingSchema:d,missingRef:l}){if(this.refs[d])throw new Error(`AnySchema ${d} is loaded but ${l} cannot be resolved`)}async function c(d){let l=await u.call(this,d);this.refs[d]||await o.call(this,l.$schema),this.refs[d]||this.addSchema(l,d,r);}async function u(d){let l=this._loading[d];if(l)return l;try{return await(this._loading[d]=n(d))}finally{delete this._loading[d];}}}addSchema(t,r,n,s=this.opts.validateSchema){if(Array.isArray(t)){for(let a of t)this.addSchema(a,void 0,n,s);return this}let o;if(typeof t=="object"){let{schemaId:a}=this.opts;if(o=t[a],o!==void 0&&typeof o!="string")throw new Error(`schema ${a} must be string`)}return r=(0, hr.normalizeId)(r||o),this._checkUnique(r),this.schemas[r]=this._addSchema(t,n,r,s,true),this}addMetaSchema(t,r,n=this.opts.validateSchema){return this.addSchema(t,r,true,n),this}validateSchema(t,r){if(typeof t=="boolean")return true;let n;if(n=t.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,true;let s=this.validate(n,t);if(!s&&r){let o="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(o);else throw new Error(o)}return s}getSchema(t){let r;for(;typeof(r=Mi.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,s=new gr.SchemaEnv({schema:{},schemaId:n});if(r=gr.resolveSchema.call(this,s,t),!r)return;this.refs[t]=r;}return r.validate||this._compileSchemaEnv(r)}removeSchema(t){if(t instanceof RegExp)return this._removeAllSchemas(this.schemas,t),this._removeAllSchemas(this.refs,t),this;switch(typeof t){case "undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case "string":{let r=Mi.call(this,t);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[t],delete this.refs[t],this}case "object":{let r=t;this._cache.delete(r);let n=t[this.opts.schemaId];return n&&(n=(0, hr.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let n;if(typeof t=="string")n=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof t=="object"&&r===void 0){if(r=t,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(Lp.call(this,n,r),!r)return (0, Gs.eachItem)(n,o=>Bs.call(this,o)),this;Bp.call(this,r);let s={...r,type:(0, dn.getJSONTypes)(r.type),schemaType:(0, dn.getJSONTypes)(r.schemaType)};return (0, Gs.eachItem)(n,s.type.length===0?o=>Bs.call(this,o,s):o=>s.type.forEach(a=>Bs.call(this,o,s,a))),this}getKeyword(t){let r=this.RULES.all[t];return typeof r=="object"?r.definition:!!r}removeKeyword(t){let{RULES:r}=this;delete r.keywords[t],delete r.all[t];for(let n of r.rules){let s=n.rules.findIndex(o=>o.keyword===t);s>=0&&n.rules.splice(s,1);}return this}addFormat(t,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[t]=r,this}errorsText(t=this.errors,{separator:r=", ",dataVar:n="data"}={}){return !t||t.length===0?"No errors":t.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,o)=>s+r+o)}$dataMetaSchema(t,r){let n=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let s of r){let o=s.split("/").slice(1),a=t;for(let i of o)a=a[i];for(let i in n){let c=n[i];if(typeof c!="object")continue;let{$data:u}=c.definition,d=a[i];u&&d&&(a[i]=Bi(d));}}return t}_removeAllSchemas(t,r){for(let n in t){let s=t[n];(!r||r.test(n))&&(typeof s=="string"?delete t[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete t[n]));}}_addSchema(t,r,n,s=this.opts.validateSchema,o=this.opts.addUsedSchema){let a,{schemaId:i}=this.opts;if(typeof t=="object")a=t[i];else {if(this.opts.jtd)throw new Error("schema must be object");if(typeof t!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(t);if(c!==void 0)return c;n=(0, hr.normalizeId)(a||n);let u=hr.getSchemaRefs.call(this,t,n);return c=new gr.SchemaEnv({schema:t,schemaId:i,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),o&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),s&&this.validateSchema(t,true),c}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):gr.compileSchema.call(this,t),!t.validate)throw new Error("ajv implementation error");return t.validate}_compileMetaSchema(t){let r=this.opts;this.opts=this._metaOpts;try{gr.compileSchema.call(this,t);}finally{this.opts=r;}}};yr.ValidationError=Rp.default;yr.MissingRefError=Li.default;fe.default=yr;function Di(e,t,r,n="error"){for(let s in e){let o=s;o in t&&this.logger[n](`${r}: option ${s}. ${e[o]}`);}}function Mi(e){return e=(0, hr.normalizeId)(e),this.schemas[e]||this.refs[e]}function Op(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t);}function jp(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t);}}function Np(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 xp)delete e[t];return e}var Fp={log(){},warn(){},error(){}};function Dp(e){if(e===false)return Fp;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 Mp=/^[a-z_$][a-z0-9_$:-]*$/i;function Lp(e,t){let{RULES:r}=this;if((0, Gs.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!Mp.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!t&&t.$data&&!("code"in t||"validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function Bs(e,t,r){var n;let s=t?.post;if(r&&s)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:o}=this,a=s?o.post:o.rules.find(({type:c})=>c===r);if(a||(a={type:r,rules:[]},o.rules.push(a)),o.keywords[e]=true,!t)return;let i={keyword:e,definition:{...t,type:(0, dn.getJSONTypes)(t.type),schemaType:(0, dn.getJSONTypes)(t.schemaType)}};t.before?Vp.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 Vp(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 Bp(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=Bi(t)),e.validateSchema=this.compile(t,true));}var Gp={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Bi(e){return {anyOf:[e,Gp]}}});var Ki=x(Ks=>{Object.defineProperty(Ks,"__esModule",{value:true});var Kp={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Ks.default=Kp;});var Hi=x(xt=>{Object.defineProperty(xt,"__esModule",{value:true});xt.callRef=xt.getValidate=void 0;var Up=pr(),Ui=je(),Ee=G(),Jt=Ze(),Ji=sn(),ln=z(),Jp={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:s,schemaEnv:o,validateName:a,opts:i,self:c}=n,{root:u}=o;if((r==="#"||r==="#/")&&s===u.baseId)return l();let d=Ji.resolveRef.call(c,u,s,r);if(d===void 0)throw new Up.default(n.opts.uriResolver,s,r);if(d instanceof Ji.SchemaEnv)return h(d);return y(d);function l(){if(o===u)return fn(e,a,o,o.$async);let f=t.scopeValue("root",{ref:u});return fn(e,(0, Ee._)`${f}.validate`,u,u.$async)}function h(f){let p=zi(e,f);fn(e,p,f,f.$async);}function y(f){let p=t.scopeValue("schema",i.code.source===true?{ref:f,code:(0, Ee.stringify)(f)}:{ref:f}),v=t.name("valid"),_=e.subschema({schema:f,dataTypes:[],schemaPath:Ee.nil,topSchemaRef:p,errSchemaPath:r},v);e.mergeEvaluated(_),e.ok(v);}}};function zi(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0, Ee._)`${r.scopeValue("wrapper",{ref:t})}.validate`}xt.getValidate=zi;function fn(e,t,r,n){let{gen:s,it:o}=e,{allErrors:a,schemaEnv:i,opts:c}=o,u=c.passContext?Jt.default.this:Ee.nil;n?d():l();function d(){if(!i.$async)throw new Error("async schema referenced by sync schema");let f=s.let("valid");s.try(()=>{s.code((0, Ee._)`await ${(0, Ui.callValidateCode)(e,t,u)}`),y(t),a||s.assign(f,true);},p=>{s.if((0, Ee._)`!(${p} instanceof ${o.ValidationError})`,()=>s.throw(p)),h(p),a||s.assign(f,false);}),e.ok(f);}function l(){e.result((0, Ui.callValidateCode)(e,t,u),()=>y(t),()=>h(t));}function h(f){let p=(0, Ee._)`${f}.errors`;s.assign(Jt.default.vErrors,(0, Ee._)`${Jt.default.vErrors} === null ? ${p} : ${Jt.default.vErrors}.concat(${p})`),s.assign(Jt.default.errors,(0, Ee._)`${Jt.default.vErrors}.length`);}function y(f){var p;if(!o.opts.unevaluated)return;let v=(p=r?.validate)===null||p===void 0?void 0:p.evaluated;if(o.props!==true)if(v&&!v.dynamicProps)v.props!==void 0&&(o.props=ln.mergeEvaluated.props(s,v.props,o.props));else {let _=s.var("props",(0, Ee._)`${f}.evaluated.props`);o.props=ln.mergeEvaluated.props(s,_,o.props,Ee.Name);}if(o.items!==true)if(v&&!v.dynamicItems)v.items!==void 0&&(o.items=ln.mergeEvaluated.items(s,v.items,o.items));else {let _=s.var("items",(0, Ee._)`${f}.evaluated.items`);o.items=ln.mergeEvaluated.items(s,_,o.items,Ee.Name);}}}xt.callRef=fn;xt.default=Jp;});var Wi=x(Us=>{Object.defineProperty(Us,"__esModule",{value:true});var zp=Ki(),Hp=Hi(),Wp=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",zp.default,Hp.default];Us.default=Wp;});var Yi=x(Js=>{Object.defineProperty(Js,"__esModule",{value:true});var pn=G(),ft=pn.operators,mn={maximum:{okStr:"<=",ok:ft.LTE,fail:ft.GT},minimum:{okStr:">=",ok:ft.GTE,fail:ft.LT},exclusiveMaximum:{okStr:"<",ok:ft.LT,fail:ft.GTE},exclusiveMinimum:{okStr:">",ok:ft.GT,fail:ft.LTE}},Yp={message:({keyword:e,schemaCode:t})=>(0, pn.str)`must be ${mn[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0, pn._)`{comparison: ${mn[e].okStr}, limit: ${t}}`},Xp={keyword:Object.keys(mn),type:"number",schemaType:"number",$data:true,error:Yp,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0, pn._)`${r} ${mn[t].fail} ${n} || isNaN(${r})`);}};Js.default=Xp;});var Xi=x(zs=>{Object.defineProperty(zs,"__esModule",{value:true});var vr=G(),Qp={message:({schemaCode:e})=>(0, vr.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0, vr._)`{multipleOf: ${e}}`},Zp={keyword:"multipleOf",type:"number",schemaType:"number",$data:true,error:Qp,code(e){let{gen:t,data:r,schemaCode:n,it:s}=e,o=s.opts.multipleOfPrecision,a=t.let("res"),i=o?(0, vr._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${o}`:(0, vr._)`${a} !== parseInt(${a})`;e.fail$data((0, vr._)`(${n} === 0 || (${a} = ${r}/${n}, ${i}))`);}};zs.default=Zp;});var Zi=x(Hs=>{Object.defineProperty(Hs,"__esModule",{value:true});function Qi(e){let t=e.length,r=0,n=0,s;for(;n<t;)r++,s=e.charCodeAt(n++),s>=55296&&s<=56319&&n<t&&(s=e.charCodeAt(n),(s&64512)===56320&&n++);return r}Hs.default=Qi;Qi.code='require("ajv/dist/runtime/ucs2length").default';});var eu=x(Ws=>{Object.defineProperty(Ws,"__esModule",{value:true});var Tt=G(),em=z(),tm=Zi(),rm={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return (0, Tt.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0, Tt._)`{limit: ${e}}`},nm={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:true,error:rm,code(e){let{keyword:t,data:r,schemaCode:n,it:s}=e,o=t==="maxLength"?Tt.operators.GT:Tt.operators.LT,a=s.opts.unicode===false?(0, Tt._)`${r}.length`:(0, Tt._)`${(0, em.useFunc)(e.gen,tm.default)}(${r})`;e.fail$data((0, Tt._)`${a} ${o} ${n}`);}};Ws.default=nm;});var tu=x(Ys=>{Object.defineProperty(Ys,"__esModule",{value:true});var sm=je(),om=z(),zt=G(),am={message:({schemaCode:e})=>(0, zt.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0, zt._)`{pattern: ${e}}`},im={keyword:"pattern",type:"string",schemaType:"string",$data:true,error:am,code(e){let{gen:t,data:r,$data:n,schema:s,schemaCode:o,it:a}=e,i=a.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=a.opts.code,u=c.code==="new RegExp"?(0, zt._)`new RegExp`:(0, om.useFunc)(t,c),d=t.let("valid");t.try(()=>t.assign(d,(0, zt._)`${u}(${o}, ${i}).test(${r})`),()=>t.assign(d,false)),e.fail$data((0, zt._)`!${d}`);}else {let c=(0, sm.usePattern)(e,s);e.fail$data((0, zt._)`!${c}.test(${r})`);}}};Ys.default=im;});var ru=x(Xs=>{Object.defineProperty(Xs,"__esModule",{value:true});var Sr=G(),um={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return (0, Sr.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0, Sr._)`{limit: ${e}}`},cm={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:true,error:um,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxProperties"?Sr.operators.GT:Sr.operators.LT;e.fail$data((0, Sr._)`Object.keys(${r}).length ${s} ${n}`);}};Xs.default=cm;});var nu=x(Qs=>{Object.defineProperty(Qs,"__esModule",{value:true});var kr=je(),wr=G(),dm=z(),lm={message:({params:{missingProperty:e}})=>(0, wr.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0, wr._)`{missingProperty: ${e}}`},fm={keyword:"required",type:"object",schemaType:"array",$data:true,error:lm,code(e){let{gen:t,schema:r,schemaCode:n,data:s,$data:o,it:a}=e,{opts:i}=a;if(!o&&r.length===0)return;let c=r.length>=i.loopRequired;if(a.allErrors?u():d(),i.strictRequired){let y=e.parentSchema.properties,{definedProperties:f}=e.it;for(let p of r)if(y?.[p]===void 0&&!f.has(p)){let v=a.schemaEnv.baseId+a.errSchemaPath,_=`required property "${p}" is not defined at "${v}" (strictRequired)`;(0, dm.checkStrictMode)(a,_,a.opts.strictRequired);}}function u(){if(c||o)e.block$data(wr.nil,l);else for(let y of r)(0, kr.checkReportMissingProp)(e,y);}function d(){let y=t.let("missing");if(c||o){let f=t.let("valid",true);e.block$data(f,()=>h(y,f)),e.ok(f);}else t.if((0, kr.checkMissingProp)(e,r,y)),(0, kr.reportMissingProp)(e,y),t.else();}function l(){t.forOf("prop",n,y=>{e.setParams({missingProperty:y}),t.if((0, kr.noPropertyInData)(t,s,y,i.ownProperties),()=>e.error());});}function h(y,f){e.setParams({missingProperty:y}),t.forOf(y,n,()=>{t.assign(f,(0, kr.propertyInData)(t,s,y,i.ownProperties)),t.if((0, wr.not)(f),()=>{e.error(),t.break();});},wr.nil);}}};Qs.default=fm;});var su=x(Zs=>{Object.defineProperty(Zs,"__esModule",{value:true});var br=G(),pm={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return (0, br.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0, br._)`{limit: ${e}}`},mm={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:true,error:pm,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxItems"?br.operators.GT:br.operators.LT;e.fail$data((0, br._)`${r}.length ${s} ${n}`);}};Zs.default=mm;});var gn=x(eo=>{Object.defineProperty(eo,"__esModule",{value:true});var ou=Rs();ou.code='require("ajv/dist/runtime/equal").default';eo.default=ou;});var au=x(ro=>{Object.defineProperty(ro,"__esModule",{value:true});var to=ur(),pe=G(),gm=z(),hm=gn(),ym={message:({params:{i:e,j:t}})=>(0, pe.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0, pe._)`{i: ${e}, j: ${t}}`},vm={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:true,error:ym,code(e){let{gen:t,data:r,$data:n,schema:s,parentSchema:o,schemaCode:a,it:i}=e;if(!n&&!s)return;let c=t.let("valid"),u=o.items?(0, to.getSchemaTypes)(o.items):[];e.block$data(c,d,(0, pe._)`${a} === false`),e.ok(c);function d(){let f=t.let("i",(0, pe._)`${r}.length`),p=t.let("j");e.setParams({i:f,j:p}),t.assign(c,true),t.if((0, pe._)`${f} > 1`,()=>(l()?h:y)(f,p));}function l(){return u.length>0&&!u.some(f=>f==="object"||f==="array")}function h(f,p){let v=t.name("item"),_=(0, to.checkDataTypes)(u,v,i.opts.strictNumbers,to.DataType.Wrong),m=t.const("indices",(0, pe._)`{}`);t.for((0, pe._)`;${f}--;`,()=>{t.let(v,(0, pe._)`${r}[${f}]`),t.if(_,(0, pe._)`continue`),u.length>1&&t.if((0, pe._)`typeof ${v} == "string"`,(0, pe._)`${v} += "_"`),t.if((0, pe._)`typeof ${m}[${v}] == "number"`,()=>{t.assign(p,(0, pe._)`${m}[${v}]`),e.error(),t.assign(c,false).break();}).code((0, pe._)`${m}[${v}] = ${f}`);});}function y(f,p){let v=(0, gm.useFunc)(t,hm.default),_=t.name("outer");t.label(_).for((0, pe._)`;${f}--;`,()=>t.for((0, pe._)`${p} = ${f}; ${p}--;`,()=>t.if((0, pe._)`${v}(${r}[${f}], ${r}[${p}])`,()=>{e.error(),t.assign(c,false).break(_);})));}}};ro.default=vm;});var iu=x(so=>{Object.defineProperty(so,"__esModule",{value:true});var no=G(),Sm=z(),km=gn(),wm={message:"must be equal to constant",params:({schemaCode:e})=>(0, no._)`{allowedValue: ${e}}`},bm={keyword:"const",$data:true,error:wm,code(e){let{gen:t,data:r,$data:n,schemaCode:s,schema:o}=e;n||o&&typeof o=="object"?e.fail$data((0, no._)`!${(0, Sm.useFunc)(t,km.default)}(${r}, ${s})`):e.fail((0, no._)`${o} !== ${r}`);}};so.default=bm;});var uu=x(oo=>{Object.defineProperty(oo,"__esModule",{value:true});var _r=G(),_m=z(),Rm=gn(),Cm={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0, _r._)`{allowedValues: ${e}}`},$m={keyword:"enum",schemaType:"array",$data:true,error:Cm,code(e){let{gen:t,data:r,$data:n,schema:s,schemaCode:o,it:a}=e;if(!n&&s.length===0)throw new Error("enum must have non-empty array");let i=s.length>=a.opts.loopEnum,c,u=()=>c??(c=(0, _m.useFunc)(t,Rm.default)),d;if(i||n)d=t.let("valid"),e.block$data(d,l);else {if(!Array.isArray(s))throw new Error("ajv implementation error");let y=t.const("vSchema",o);d=(0, _r.or)(...s.map((f,p)=>h(y,p)));}e.pass(d);function l(){t.assign(d,false),t.forOf("v",o,y=>t.if((0, _r._)`${u()}(${r}, ${y})`,()=>t.assign(d,true).break()));}function h(y,f){let p=s[f];return typeof p=="object"&&p!==null?(0, _r._)`${u()}(${r}, ${y}[${f}])`:(0, _r._)`${r} === ${p}`}}};oo.default=$m;});var cu=x(ao=>{Object.defineProperty(ao,"__esModule",{value:true});var Em=Yi(),xm=Xi(),Tm=eu(),Am=tu(),Im=ru(),Pm=nu(),Om=su(),jm=au(),Nm=iu(),qm=uu(),Fm=[Em.default,xm.default,Tm.default,Am.default,Im.default,Pm.default,Om.default,jm.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},Nm.default,qm.default];ao.default=Fm;});var uo=x(Rr=>{Object.defineProperty(Rr,"__esModule",{value:true});Rr.validateAdditionalItems=void 0;var At=G(),io=z(),Dm={message:({params:{len:e}})=>(0, At.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0, At._)`{limit: ${e}}`},Mm={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:Dm,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0, io.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}du(e,n);}};function du(e,t){let{gen:r,schema:n,data:s,keyword:o,it:a}=e;a.items=true;let i=r.const("len",(0, At._)`${s}.length`);if(n===false)e.setParams({len:t.length}),e.pass((0, At._)`${i} <= ${t.length}`);else if(typeof n=="object"&&!(0, io.alwaysValidSchema)(a,n)){let u=r.var("valid",(0, At._)`${i} <= ${t.length}`);r.if((0, At.not)(u),()=>c(u)),e.ok(u);}function c(u){r.forRange("i",t.length,i,d=>{e.subschema({keyword:o,dataProp:d,dataPropType:io.Type.Num},u),a.allErrors||r.if((0, At.not)(u),()=>r.break());});}}Rr.validateAdditionalItems=du;Rr.default=Mm;});var co=x(Cr=>{Object.defineProperty(Cr,"__esModule",{value:true});Cr.validateTuple=void 0;var lu=G(),hn=z(),Lm=je(),Vm={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return fu(e,"additionalItems",t);r.items=true,!(0, hn.alwaysValidSchema)(r,t)&&e.ok((0, Lm.validateArray)(e));}};function fu(e,t,r=e.schema){let{gen:n,parentSchema:s,data:o,keyword:a,it:i}=e;d(s),i.opts.unevaluated&&r.length&&i.items!==true&&(i.items=hn.mergeEvaluated.items(n,r.length,i.items));let c=n.name("valid"),u=n.const("len",(0, lu._)`${o}.length`);r.forEach((l,h)=>{(0, hn.alwaysValidSchema)(i,l)||(n.if((0, lu._)`${u} > ${h}`,()=>e.subschema({keyword:a,schemaProp:h,dataProp:h},c)),e.ok(c));});function d(l){let{opts:h,errSchemaPath:y}=i,f=r.length,p=f===l.minItems&&(f===l.maxItems||l[t]===false);if(h.strictTuples&&!p){let v=`"${a}" is ${f}-tuple, but minItems or maxItems/${t} are not specified or different at path "${y}"`;(0, hn.checkStrictMode)(i,v,h.strictTuples);}}}Cr.validateTuple=fu;Cr.default=Vm;});var pu=x(lo=>{Object.defineProperty(lo,"__esModule",{value:true});var Bm=co(),Gm={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0, Bm.validateTuple)(e,"items")};lo.default=Gm;});var gu=x(fo=>{Object.defineProperty(fo,"__esModule",{value:true});var mu=G(),Km=z(),Um=je(),Jm=uo(),zm={message:({params:{len:e}})=>(0, mu.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0, mu._)`{limit: ${e}}`},Hm={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:zm,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:s}=r;n.items=true,!(0, Km.alwaysValidSchema)(n,t)&&(s?(0, Jm.validateAdditionalItems)(e,s):e.ok((0, Um.validateArray)(e)));}};fo.default=Hm;});var hu=x(po=>{Object.defineProperty(po,"__esModule",{value:true});var qe=G(),yn=z(),Wm={message:({params:{min:e,max:t}})=>t===void 0?(0, qe.str)`must contain at least ${e} valid item(s)`:(0, qe.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0, qe._)`{minContains: ${e}}`:(0, qe._)`{minContains: ${e}, maxContains: ${t}}`},Ym={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:true,error:Wm,code(e){let{gen:t,schema:r,parentSchema:n,data:s,it:o}=e,a,i,{minContains:c,maxContains:u}=n;o.opts.next?(a=c===void 0?1:c,i=u):a=1;let d=t.const("len",(0, qe._)`${s}.length`);if(e.setParams({min:a,max:i}),i===void 0&&a===0){(0, yn.checkStrictMode)(o,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(i!==void 0&&a>i){(0, yn.checkStrictMode)(o,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0, yn.alwaysValidSchema)(o,r)){let p=(0, qe._)`${d} >= ${a}`;i!==void 0&&(p=(0, qe._)`${p} && ${d} <= ${i}`),e.pass(p);return}o.items=true;let l=t.name("valid");i===void 0&&a===1?y(l,()=>t.if(l,()=>t.break())):a===0?(t.let(l,true),i!==void 0&&t.if((0, qe._)`${s}.length > 0`,h)):(t.let(l,false),h()),e.result(l,()=>e.reset());function h(){let p=t.name("_valid"),v=t.let("count",0);y(p,()=>t.if(p,()=>f(v)));}function y(p,v){t.forRange("i",0,d,_=>{e.subschema({keyword:"contains",dataProp:_,dataPropType:yn.Type.Num,compositeRule:true},p),v();});}function f(p){t.code((0, qe._)`${p}++`),i===void 0?t.if((0, qe._)`${p} >= ${a}`,()=>t.assign(l,true).break()):(t.if((0, qe._)`${p} > ${i}`,()=>t.assign(l,false).break()),a===1?t.assign(l,true):t.if((0, qe._)`${p} >= ${a}`,()=>t.assign(l,true)));}}};po.default=Ym;});var Su=x(He=>{Object.defineProperty(He,"__esModule",{value:true});He.validateSchemaDeps=He.validatePropertyDeps=He.error=void 0;var mo=G(),Xm=z(),$r=je();He.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return (0, mo.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0, mo._)`{property: ${e},
5
+ || ${a} === "boolean" || ${s} === null`).assign(i,(0, L._)`[${s}]`);}}}function Il({gen:e,parentData:t,parentDataProperty:r},n){e.if((0, L._)`${t} !== undefined`,()=>e.assign((0, L._)`${t}[${r}]`,n));}function vs(e,t,r,n=Vt.Correct){let s=n===Vt.Correct?L.operators.EQ:L.operators.NEQ,o;switch(e){case "null":return (0, L._)`${t} ${s} null`;case "array":o=(0, L._)`Array.isArray(${t})`;break;case "object":o=(0, L._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case "integer":o=a((0, L._)`!(${t} % 1) && !isNaN(${t})`);break;case "number":o=a();break;default:return (0, L._)`typeof ${t} ${s} ${e}`}return n===Vt.Correct?o:(0, L.not)(o);function a(i=L.nil){return (0, L.and)((0, L._)`typeof ${t} == "number"`,i,r?(0, L._)`isFinite(${t})`:L.nil)}}ye.checkDataType=vs;function Ss(e,t,r,n){if(e.length===1)return vs(e[0],t,r,n);let s,o=(0, Va.toHash)(e);if(o.array&&o.object){let a=(0, L._)`typeof ${t} != "object"`;s=o.null?a:(0, L._)`!${t} || ${a}`,delete o.null,delete o.array,delete o.object;}else s=L.nil;o.number&&delete o.integer;for(let a in o)s=(0, L.and)(s,vs(a,t,r,n));return s}ye.checkDataTypes=Ss;var Ol={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0, L._)`{type: ${e}}`:(0, L._)`{type: ${t}}`};function ws(e){let t=Pl(e);(0, $l.reportError)(t,Ol);}ye.reportTypeError=ws;function Pl(e){let{gen:t,data:r,schema:n}=e,s=(0, Va.schemaRefOrVal)(e,n,"type");return {gen:t,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:e}}});var Ua=x(Qr=>{Object.defineProperty(Qr,"__esModule",{value:true});Qr.assignDefaults=void 0;var Bt=G(),jl=z();function Nl(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let s in r)Ka(e,s,r[s].default);else t==="array"&&Array.isArray(n)&&n.forEach((s,o)=>Ka(e,o,s.default));}Qr.assignDefaults=Nl;function Ka(e,t,r){let{gen:n,compositeRule:s,data:o,opts:a}=e;if(r===void 0)return;let i=(0, Bt._)`${o}${(0, Bt.getProperty)(t)}`;if(s){(0, jl.checkStrictMode)(e,`default is ignored for: ${i}`);return}let c=(0, Bt._)`${i} === undefined`;a.useDefaults==="empty"&&(c=(0, Bt._)`${c} || ${i} === null || ${i} === ""`),n.if(c,(0, Bt._)`${i} = ${(0, Bt.stringify)(r)}`);}});var je=x(re=>{Object.defineProperty(re,"__esModule",{value:true});re.validateUnion=re.validateArray=re.usePattern=re.callValidateCode=re.schemaProperties=re.allSchemaProperties=re.noPropertyInData=re.propertyInData=re.isOwnProperty=re.hasPropFunc=re.reportMissingProp=re.checkMissingProp=re.checkReportMissingProp=void 0;var ae=G(),ks=z(),ut=Ze(),ql=z();function Fl(e,t){let{gen:r,data:n,it:s}=e;r.if(_s(r,n,t,s.opts.ownProperties),()=>{e.setParams({missingProperty:(0, ae._)`${t}`},true),e.error();});}re.checkReportMissingProp=Fl;function Dl({gen:e,data:t,it:{opts:r}},n,s){return (0, ae.or)(...n.map(o=>(0, ae.and)(_s(e,t,o,r.ownProperties),(0, ae._)`${s} = ${o}`)))}re.checkMissingProp=Dl;function Ml(e,t){e.setParams({missingProperty:t},true),e.error();}re.reportMissingProp=Ml;function Ja(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0, ae._)`Object.prototype.hasOwnProperty`})}re.hasPropFunc=Ja;function bs(e,t,r){return (0, ae._)`${Ja(e)}.call(${t}, ${r})`}re.isOwnProperty=bs;function Ll(e,t,r,n){let s=(0, ae._)`${t}${(0, ae.getProperty)(r)} !== undefined`;return n?(0, ae._)`${s} && ${bs(e,t,r)}`:s}re.propertyInData=Ll;function _s(e,t,r,n){let s=(0, ae._)`${t}${(0, ae.getProperty)(r)} === undefined`;return n?(0, ae.or)(s,(0, ae.not)(bs(e,t,r))):s}re.noPropertyInData=_s;function za(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}re.allSchemaProperties=za;function Vl(e,t){return za(t).filter(r=>!(0, ks.alwaysValidSchema)(e,t[r]))}re.schemaProperties=Vl;function Bl({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:o},it:a},i,c,u){let d=u?(0, ae._)`${e}, ${t}, ${n}${s}`:t,l=[[ut.default.instancePath,(0, ae.strConcat)(ut.default.instancePath,o)],[ut.default.parentData,a.parentData],[ut.default.parentDataProperty,a.parentDataProperty],[ut.default.rootData,ut.default.rootData]];a.opts.dynamicRef&&l.push([ut.default.dynamicAnchors,ut.default.dynamicAnchors]);let h=(0, ae._)`${d}, ${r.object(...l)}`;return c!==ae.nil?(0, ae._)`${i}.call(${c}, ${h})`:(0, ae._)`${i}(${h})`}re.callValidateCode=Bl;var Gl=(0, ae._)`new RegExp`;function Kl({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:s}=t.code,o=s(r,n);return e.scopeValue("pattern",{key:o.toString(),ref:o,code:(0, ae._)`${s.code==="new RegExp"?Gl:(0, ql.useFunc)(e,s)}(${r}, ${n})`})}re.usePattern=Kl;function Ul(e){let{gen:t,data:r,keyword:n,it:s}=e,o=t.name("valid");if(s.allErrors){let i=t.let("valid",true);return a(()=>t.assign(i,false)),i}return t.var(o,true),a(()=>t.break()),o;function a(i){let c=t.const("len",(0, ae._)`${r}.length`);t.forRange("i",0,c,u=>{e.subschema({keyword:n,dataProp:u,dataPropType:ks.Type.Num},o),t.if((0, ae.not)(o),i);});}}re.validateArray=Ul;function Jl(e){let{gen:t,schema:r,keyword:n,it:s}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0, ks.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=t.let("valid",false),i=t.name("_valid");t.block(()=>r.forEach((c,u)=>{let d=e.subschema({keyword:n,schemaProp:u,compositeRule:true},i);t.assign(a,(0, ae._)`${a} || ${i}`),e.mergeValidEvaluated(d,i)||t.if((0, ae.not)(a));})),e.result(a,()=>e.reset(),()=>e.error(true));}re.validateUnion=Jl;});var Ya=x(Ue=>{Object.defineProperty(Ue,"__esModule",{value:true});Ue.validateKeywordUsage=Ue.validSchemaType=Ue.funcKeywordCode=Ue.macroKeywordCode=void 0;var ke=G(),$t=Ze(),zl=je(),Hl=ir();function Wl(e,t){let{gen:r,keyword:n,schema:s,parentSchema:o,it:a}=e,i=t.macro.call(a.self,s,o,a),c=Wa(r,n,i);a.opts.validateSchema!==false&&a.self.validateSchema(i,true);let u=r.name("valid");e.subschema({schema:i,schemaPath:ke.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:true},u),e.pass(u,()=>e.error(true));}Ue.macroKeywordCode=Wl;function Yl(e,t){var r;let{gen:n,keyword:s,schema:o,parentSchema:a,$data:i,it:c}=e;Ql(c,t);let u=!i&&t.compile?t.compile.call(c.self,o,a,c):t.validate,d=Wa(n,s,u),l=n.let("valid");e.block$data(l,h),e.ok((r=t.valid)!==null&&r!==void 0?r:l);function h(){if(t.errors===false)p(),t.modifying&&Ha(e),v(()=>e.error());else {let _=t.async?y():f();t.modifying&&Ha(e),v(()=>Xl(e,_));}}function y(){let _=n.let("ruleErrs",null);return n.try(()=>p((0, ke._)`await `),m=>n.assign(l,false).if((0, ke._)`${m} instanceof ${c.ValidationError}`,()=>n.assign(_,(0, ke._)`${m}.errors`),()=>n.throw(m))),_}function f(){let _=(0, ke._)`${d}.errors`;return n.assign(_,null),p(ke.nil),_}function p(_=t.async?(0, ke._)`await `:ke.nil){let m=c.opts.passContext?$t.default.this:$t.default.self,g=!("compile"in t&&!i||t.schema===false);n.assign(l,(0, ke._)`${_}${(0, zl.callValidateCode)(e,d,m,g)}`,t.modifying);}function v(_){var m;n.if((0, ke.not)((m=t.valid)!==null&&m!==void 0?m:l),_);}}Ue.funcKeywordCode=Yl;function Ha(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0, ke._)`${n.parentData}[${n.parentDataProperty}]`));}function Xl(e,t){let{gen:r}=e;r.if((0, ke._)`Array.isArray(${t})`,()=>{r.assign($t.default.vErrors,(0, ke._)`${$t.default.vErrors} === null ? ${t} : ${$t.default.vErrors}.concat(${t})`).assign($t.default.errors,(0, ke._)`${$t.default.vErrors}.length`),(0, Hl.extendErrors)(e);},()=>e.error());}function Ql({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function Wa(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0, ke.stringify)(r)})}function Zl(e,t,r=false){return !t.length||t.some(n=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}Ue.validSchemaType=Zl;function ef({schema:e,opts:t,self:r,errSchemaPath:n},s,o){if(Array.isArray(s.keyword)?!s.keyword.includes(o):s.keyword!==o)throw new Error("ajv implementation error");let a=s.dependencies;if(a?.some(i=>!Object.prototype.hasOwnProperty.call(e,i)))throw new Error(`parent schema must have dependencies of ${o}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(e[o])){let c=`keyword "${o}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}Ue.validateKeywordUsage=ef;});var Qa=x(ct=>{Object.defineProperty(ct,"__esModule",{value:true});ct.extendSubschemaMode=ct.extendSubschemaData=ct.getSubschema=void 0;var Je=G(),Xa=z();function tf(e,{keyword:t,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:o,topSchemaRef:a}){if(t!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let i=e.schema[t];return r===void 0?{schema:i,schemaPath:(0, Je._)`${e.schemaPath}${(0, Je.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:i[r],schemaPath:(0, Je._)`${e.schemaPath}${(0, Je.getProperty)(t)}${(0, Je.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0, Xa.escapeFragment)(r)}`}}if(n!==void 0){if(s===void 0||o===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return {schema:n,schemaPath:s,topSchemaRef:a,errSchemaPath:o}}throw new Error('either "keyword" or "schema" must be passed')}ct.getSubschema=tf;function rf(e,t,{dataProp:r,dataPropType:n,data:s,dataTypes:o,propertyName:a}){if(s!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:i}=t;if(r!==void 0){let{errorPath:u,dataPathArr:d,opts:l}=t,h=i.let("data",(0, Je._)`${t.data}${(0, Je.getProperty)(r)}`,true);c(h),e.errorPath=(0, Je.str)`${u}${(0, Xa.getErrorPath)(r,n,l.jsPropertySyntax)}`,e.parentDataProperty=(0, Je._)`${r}`,e.dataPathArr=[...d,e.parentDataProperty];}if(s!==void 0){let u=s instanceof Je.Name?s:i.let("data",s,true);c(u),a!==void 0&&(e.propertyName=a);}o&&(e.dataTypes=o);function c(u){e.data=u,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,u];}}ct.extendSubschemaData=rf;function nf(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:o}){n!==void 0&&(e.compositeRule=n),s!==void 0&&(e.createErrors=s),o!==void 0&&(e.allErrors=o),e.jtdDiscriminator=t,e.jtdMetadata=r;}ct.extendSubschemaMode=nf;});var Rs=x((tv,Za)=>{Za.exports=function e(t,r){if(t===r)return true;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return false;var n,s,o;if(Array.isArray(t)){if(n=t.length,n!=r.length)return false;for(s=n;s--!==0;)if(!e(t[s],r[s]))return false;return true}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(o=Object.keys(t),n=o.length,n!==Object.keys(r).length)return false;for(s=n;s--!==0;)if(!Object.prototype.hasOwnProperty.call(r,o[s]))return false;for(s=n;s--!==0;){var a=o[s];if(!e(t[a],r[a]))return false}return true}return t!==t&&r!==r};});var ti=x((rv,ei)=>{var dt=ei.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};Zr(t,n,s,e,"",e);};dt.keywords={additionalItems:true,items:true,contains:true,additionalProperties:true,propertyNames:true,not:true,if:true,then:true,else:true};dt.arrayKeywords={items:true,allOf:true,anyOf:true,oneOf:true};dt.propsKeywords={$defs:true,definitions:true,properties:true,patternProperties:true,dependencies:true};dt.skipKeywords={default:true,enum:true,const:true,required:true,maximum:true,minimum:true,exclusiveMaximum:true,exclusiveMinimum:true,multipleOf:true,maxLength:true,minLength:true,pattern:true,format:true,maxItems:true,minItems:true,uniqueItems:true,maxProperties:true,minProperties:true};function Zr(e,t,r,n,s,o,a,i,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,s,o,a,i,c,u);for(var d in n){var l=n[d];if(Array.isArray(l)){if(d in dt.arrayKeywords)for(var h=0;h<l.length;h++)Zr(e,t,r,l[h],s+"/"+d+"/"+h,o,s,d,n,h);}else if(d in dt.propsKeywords){if(l&&typeof l=="object")for(var y in l)Zr(e,t,r,l[y],s+"/"+d+"/"+sf(y),o,s,d,n,y);}else (d in dt.keywords||e.allKeys&&!(d in dt.skipKeywords))&&Zr(e,t,r,l,s+"/"+d,o,s,d,n);}r(n,s,o,a,i,c,u);}}function sf(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var cr=x($e=>{Object.defineProperty($e,"__esModule",{value:true});$e.getSchemaRefs=$e.resolveUrl=$e.normalizeId=$e._getFullPath=$e.getFullPath=$e.inlineRef=void 0;var of=z(),af=Rs(),uf=ti(),cf=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function df(e,t=true){return typeof e=="boolean"?true:t===true?!Cs(e):t?ri(e)<=t:false}$e.inlineRef=df;var lf=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Cs(e){for(let t in e){if(lf.has(t))return true;let r=e[t];if(Array.isArray(r)&&r.some(Cs)||typeof r=="object"&&Cs(r))return true}return false}function ri(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!cf.has(r)&&(typeof e[r]=="object"&&(0, of.eachItem)(e[r],n=>t+=ri(n)),t===1/0))return 1/0}return t}function ni(e,t="",r){r!==false&&(t=Gt(t));let n=e.parse(t);return si(e,n)}$e.getFullPath=ni;function si(e,t){return e.serialize(t).split("#")[0]+"#"}$e._getFullPath=si;var ff=/#\/?$/;function Gt(e){return e?e.replace(ff,""):""}$e.normalizeId=Gt;function pf(e,t,r){return r=Gt(r),e.resolve(t,r)}$e.resolveUrl=pf;var mf=/^[a-z_][-a-z0-9._]*$/i;function gf(e,t){if(typeof e=="boolean")return {};let{schemaId:r,uriResolver:n}=this.opts,s=Gt(e[r]||t),o={"":s},a=ni(n,s,false),i={},c=new Set;return uf(e,{allKeys:true},(l,h,y,f)=>{if(f===void 0)return;let p=a+h,v=o[f];typeof l[r]=="string"&&(v=_.call(this,l[r])),m.call(this,l.$anchor),m.call(this,l.$dynamicAnchor),o[h]=v;function _(g){let w=this.opts.uriResolver.resolve;if(g=Gt(v?w(v,g):g),c.has(g))throw d(g);c.add(g);let k=this.refs[g];return typeof k=="string"&&(k=this.refs[k]),typeof k=="object"?u(l,k.schema,g):g!==Gt(p)&&(g[0]==="#"?(u(l,i[g],g),i[g]=l):this.refs[g]=p),g}function m(g){if(typeof g=="string"){if(!mf.test(g))throw new Error(`invalid anchor "${g}"`);_.call(this,`#${g}`);}}}),i;function u(l,h,y){if(h!==void 0&&!af(l,h))throw d(y)}function d(l){return new Error(`reference "${l}" resolves to more than one schema`)}}$e.getSchemaRefs=gf;});var fr=x(lt=>{Object.defineProperty(lt,"__esModule",{value:true});lt.getData=lt.KeywordCxt=lt.validateFunctionCode=void 0;var ci=Da(),oi=ur(),Es=ys(),en=ur(),hf=Ua(),lr=Ya(),$s=Qa(),A=G(),N=Ze(),yf=cr(),et=z(),dr=ir();function vf(e){if(fi(e)&&(pi(e),li(e))){kf(e);return}di(e,()=>(0, ci.topBoolOrEmptySchema)(e));}lt.validateFunctionCode=vf;function di({gen:e,validateName:t,schema:r,schemaEnv:n,opts:s},o){s.code.es5?e.func(t,(0, A._)`${N.default.data}, ${N.default.valCxt}`,n.$async,()=>{e.code((0, A._)`"use strict"; ${ai(r,s)}`),wf(e,s),e.code(o);}):e.func(t,(0, A._)`${N.default.data}, ${Sf(s)}`,n.$async,()=>e.code(ai(r,s)).code(o));}function Sf(e){return (0, A._)`{${N.default.instancePath}="", ${N.default.parentData}, ${N.default.parentDataProperty}, ${N.default.rootData}=${N.default.data}${e.dynamicRef?(0, A._)`, ${N.default.dynamicAnchors}={}`:A.nil}}={}`}function wf(e,t){e.if(N.default.valCxt,()=>{e.var(N.default.instancePath,(0, A._)`${N.default.valCxt}.${N.default.instancePath}`),e.var(N.default.parentData,(0, A._)`${N.default.valCxt}.${N.default.parentData}`),e.var(N.default.parentDataProperty,(0, A._)`${N.default.valCxt}.${N.default.parentDataProperty}`),e.var(N.default.rootData,(0, A._)`${N.default.valCxt}.${N.default.rootData}`),t.dynamicRef&&e.var(N.default.dynamicAnchors,(0, A._)`${N.default.valCxt}.${N.default.dynamicAnchors}`);},()=>{e.var(N.default.instancePath,(0, A._)`""`),e.var(N.default.parentData,(0, A._)`undefined`),e.var(N.default.parentDataProperty,(0, A._)`undefined`),e.var(N.default.rootData,N.default.data),t.dynamicRef&&e.var(N.default.dynamicAnchors,(0, A._)`{}`);});}function kf(e){let{schema:t,opts:r,gen:n}=e;di(e,()=>{r.$comment&&t.$comment&&gi(e),$f(e),n.let(N.default.vErrors,null),n.let(N.default.errors,0),r.unevaluated&&bf(e),mi(e),Tf(e);});}function bf(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0, A._)`${r}.evaluated`),t.if((0, A._)`${e.evaluated}.dynamicProps`,()=>t.assign((0, A._)`${e.evaluated}.props`,(0, A._)`undefined`)),t.if((0, A._)`${e.evaluated}.dynamicItems`,()=>t.assign((0, A._)`${e.evaluated}.items`,(0, A._)`undefined`));}function ai(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0, A._)`/*# sourceURL=${r} */`:A.nil}function _f(e,t){if(fi(e)&&(pi(e),li(e))){Rf(e,t);return}(0, ci.boolOrEmptySchema)(e,t);}function li({schema:e,self:t}){if(typeof e=="boolean")return !e;for(let r in e)if(t.RULES.all[r])return true;return false}function fi(e){return typeof e.schema!="boolean"}function Rf(e,t){let{schema:r,gen:n,opts:s}=e;s.$comment&&r.$comment&&gi(e),Ef(e),xf(e);let o=n.const("_errs",N.default.errors);mi(e,o),n.var(t,(0, A._)`${o} === ${N.default.errors}`);}function pi(e){(0, et.checkUnknownRules)(e),Cf(e);}function mi(e,t){if(e.opts.jtd)return ii(e,[],false,t);let r=(0, oi.getSchemaTypes)(e.schema),n=(0, oi.coerceAndCheckDataType)(e,r);ii(e,r,!n,t);}function Cf(e){let{schema:t,errSchemaPath:r,opts:n,self:s}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0, et.schemaHasRulesButRef)(t,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`);}function $f(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0, et.checkStrictMode)(e,"default is ignored in the schema root");}function Ef(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0, yf.resolveUrl)(e.opts.uriResolver,e.baseId,t));}function xf(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function gi({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:s}){let o=r.$comment;if(s.$comment===true)e.code((0, A._)`${N.default.self}.logger.log(${o})`);else if(typeof s.$comment=="function"){let a=(0, A.str)`${n}/$comment`,i=e.scopeValue("root",{ref:t.root});e.code((0, A._)`${N.default.self}.opts.$comment(${o}, ${a}, ${i}.schema)`);}}function Tf(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:s,opts:o}=e;r.$async?t.if((0, A._)`${N.default.errors} === 0`,()=>t.return(N.default.data),()=>t.throw((0, A._)`new ${s}(${N.default.vErrors})`)):(t.assign((0, A._)`${n}.errors`,N.default.vErrors),o.unevaluated&&Af(e),t.return((0, A._)`${N.default.errors} === 0`));}function Af({gen:e,evaluated:t,props:r,items:n}){r instanceof A.Name&&e.assign((0, A._)`${t}.props`,r),n instanceof A.Name&&e.assign((0, A._)`${t}.items`,n);}function ii(e,t,r,n){let{gen:s,schema:o,data:a,allErrors:i,opts:c,self:u}=e,{RULES:d}=u;if(o.$ref&&(c.ignoreKeywordsWithRef||!(0, et.schemaHasRulesButRef)(o,d))){s.block(()=>yi(e,"$ref",d.all.$ref.definition));return}c.jtd||If(e,t),s.block(()=>{for(let h of d.rules)l(h);l(d.post);});function l(h){(0, Es.shouldUseGroup)(o,h)&&(h.type?(s.if((0, en.checkDataType)(h.type,a,c.strictNumbers)),ui(e,h),t.length===1&&t[0]===h.type&&r&&(s.else(),(0, en.reportTypeError)(e)),s.endIf()):ui(e,h),i||s.if((0, A._)`${N.default.errors} === ${n||0}`));}}function ui(e,t){let{gen:r,schema:n,opts:{useDefaults:s}}=e;s&&(0, hf.assignDefaults)(e,t.type),r.block(()=>{for(let o of t.rules)(0, Es.shouldUseRule)(n,o)&&yi(e,o.keyword,o.definition,t.type);});}function If(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(Of(e,t),e.opts.allowUnionTypes||Pf(e,t),jf(e,e.dataTypes));}function Of(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{hi(e.dataTypes,r)||xs(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`);}),qf(e,t);}}function Pf(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&xs(e,"use allowUnionTypes to allow union type keyword");}function jf(e,t){let r=e.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0, Es.shouldUseRule)(e.schema,s)){let{type:o}=s.definition;o.length&&!o.some(a=>Nf(t,a))&&xs(e,`missing type "${o.join(",")}" for keyword "${n}"`);}}}function Nf(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function hi(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function qf(e,t){let r=[];for(let n of e.dataTypes)hi(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r;}function xs(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0, et.checkStrictMode)(e,t,e.opts.strictTypes);}var tn=class{constructor(t,r,n){if((0, lr.validateKeywordUsage)(t,r,n),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=n,this.data=t.data,this.schema=t.schema[n],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0, et.schemaRefOrVal)(t,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",vi(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0, lr.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==false)&&(this.errsCount=t.gen.const("_errs",N.default.errors));}result(t,r,n){this.failResult((0, A.not)(t),r,n);}failResult(t,r,n){this.gen.if(t),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else();}pass(t,r){this.failResult((0, A.not)(t),void 0,r);}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(false);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else();}fail$data(t){if(!this.$data)return this.fail(t);let{schemaCode:r}=this;this.fail((0, A._)`${r} !== undefined && (${(0, A.or)(this.invalid$data(),t)})`);}error(t,r,n){if(r){this.setParams(r),this._error(t,n),this.setParams({});return}this._error(t,n);}_error(t,r){(t?dr.reportExtraError:dr.reportError)(this,this.def.error,r);}$dataError(){(0, dr.reportError)(this,this.def.$dataError||dr.keyword$DataError);}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0, dr.resetErrorsCount)(this.gen,this.errsCount);}ok(t){this.allErrors||this.gen.if(t);}setParams(t,r){r?Object.assign(this.params,t):this.params=t;}block$data(t,r,n=A.nil){this.gen.block(()=>{this.check$data(t,n),r();});}check$data(t=A.nil,r=A.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:o,def:a}=this;n.if((0, A.or)((0, A._)`${s} === undefined`,r)),t!==A.nil&&n.assign(t,true),(o.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==A.nil&&n.assign(t,false)),n.else();}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:s,it:o}=this;return (0, A.or)(a(),i());function a(){if(n.length){if(!(r instanceof A.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return (0, A._)`${(0, en.checkDataTypes)(c,r,o.opts.strictNumbers,en.DataType.Wrong)}`}return A.nil}function i(){if(s.validateSchema){let c=t.scopeValue("validate$data",{ref:s.validateSchema});return (0, A._)`!${c}(${r})`}return A.nil}}subschema(t,r){let n=(0, $s.getSubschema)(this.it,t);(0, $s.extendSubschemaData)(n,this.it,t),(0, $s.extendSubschemaMode)(n,t);let s={...this.it,...n,items:void 0,props:void 0};return _f(s,r),s}mergeEvaluated(t,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==true&&t.props!==void 0&&(n.props=et.mergeEvaluated.props(s,t.props,n.props,r)),n.items!==true&&t.items!==void 0&&(n.items=et.mergeEvaluated.items(s,t.items,n.items,r)));}mergeValidEvaluated(t,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==true||n.items!==true))return s.if(r,()=>this.mergeEvaluated(t,A.Name)),true}};lt.KeywordCxt=tn;function yi(e,t,r,n){let s=new tn(e,r,t);"code"in r?r.code(s,n):s.$data&&r.validate?(0, lr.funcKeywordCode)(s,r):"macro"in r?(0, lr.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0, lr.funcKeywordCode)(s,r);}var Ff=/^\/(?:[^~]|~0|~1)*$/,Df=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function vi(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let s,o;if(e==="")return N.default.rootData;if(e[0]==="/"){if(!Ff.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);s=e,o=N.default.rootData;}else {let u=Df.exec(e);if(!u)throw new Error(`Invalid JSON-pointer: ${e}`);let d=+u[1];if(s=u[2],s==="#"){if(d>=t)throw new Error(c("property/index",d));return n[t-d]}if(d>t)throw new Error(c("data",d));if(o=r[t-d],!s)return o}let a=o,i=s.split("/");for(let u of i)u&&(o=(0, A._)`${o}${(0, A.getProperty)((0, et.unescapeJsonPointer)(u))}`,a=(0, A._)`${a} && ${o}`);return a;function c(u,d){return `Cannot access ${u} ${d} levels up, current level is ${t}`}}lt.getData=vi;});var rn=x(As=>{Object.defineProperty(As,"__esModule",{value:true});var Ts=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=true;}};As.default=Ts;});var pr=x(Ps=>{Object.defineProperty(Ps,"__esModule",{value:true});var Is=cr(),Os=class extends Error{constructor(t,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0, Is.resolveUrl)(t,r,n),this.missingSchema=(0, Is.normalizeId)((0, Is.getFullPath)(t,this.missingRef));}};Ps.default=Os;});var sn=x(Ne=>{Object.defineProperty(Ne,"__esModule",{value:true});Ne.resolveSchema=Ne.getCompilingSchema=Ne.resolveRef=Ne.compileSchema=Ne.SchemaEnv=void 0;var Ve=G(),Mf=rn(),Et=Ze(),Be=cr(),Si=z(),Lf=fr(),Kt=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let n;typeof t.schema=="object"&&(n=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0, Be.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={};}};Ne.SchemaEnv=Kt;function Ns(e){let t=wi.call(this,e);if(t)return t;let r=(0, Be.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:o}=this.opts,a=new Ve.CodeGen(this.scope,{es5:n,lines:s,ownProperties:o}),i;e.$async&&(i=a.scopeValue("Error",{ref:Mf.default,code:(0, Ve._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");e.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:Et.default.data,parentData:Et.default.parentData,parentDataProperty:Et.default.parentDataProperty,dataNames:[Et.default.data],dataPathArr:[Ve.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===true?{ref:e.schema,code:(0, Ve.stringify)(e.schema)}:{ref:e.schema}),validateName:c,ValidationError:i,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:Ve.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0, Ve._)`""`,opts:this.opts,self:this},d;try{this._compilations.add(e),(0,Lf.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let l=a.toString();d=`${a.scopeRefs(Et.default.scope)}return ${l}`,this.opts.code.process&&(d=this.opts.code.process(d,e));let y=new Function(`${Et.default.self}`,`${Et.default.scope}`,d)(this,this.scope.get());if(this.scope.value(c,{ref:y}),y.errors=null,y.schema=e.schema,y.schemaEnv=e,e.$async&&(y.$async=!0),this.opts.code.source===!0&&(y.source={validateName:c,validateCode:l,scopeValues:a._values}),this.opts.unevaluated){let{props:f,items:p}=u;y.evaluated={props:f instanceof Ve.Name?void 0:f,items:p instanceof Ve.Name?void 0:p,dynamicProps:f instanceof Ve.Name,dynamicItems:p instanceof Ve.Name},y.source&&(y.source.evaluated=(0,Ve.stringify)(y.evaluated));}return e.validate=y,e}catch(l){throw delete e.validate,delete e.validateName,d&&this.logger.error("Error compiling schema, function code:",d),l}finally{this._compilations.delete(e);}}Ne.compileSchema=Ns;function Vf(e,t,r){var n;r=(0, Be.resolveUrl)(this.opts.uriResolver,t,r);let s=e.refs[r];if(s)return s;let o=Kf.call(this,e,r);if(o===void 0){let a=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:i}=this.opts;a&&(o=new Kt({schema:a,schemaId:i,root:e,baseId:t}));}if(o!==void 0)return e.refs[r]=Bf.call(this,o)}Ne.resolveRef=Vf;function Bf(e){return (0, Be.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:Ns.call(this,e)}function wi(e){for(let t of this._compilations)if(Gf(t,e))return t}Ne.getCompilingSchema=wi;function Gf(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function Kf(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||nn.call(this,e,t)}function nn(e,t){let r=this.opts.uriResolver.parse(t),n=(0, Be._getFullPath)(this.opts.uriResolver,r),s=(0, Be.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===s)return js.call(this,r,e);let o=(0, Be.normalizeId)(n),a=this.refs[o]||this.schemas[o];if(typeof a=="string"){let i=nn.call(this,e,a);return typeof i?.schema!="object"?void 0:js.call(this,r,i)}if(typeof a?.schema=="object"){if(a.validate||Ns.call(this,a),o===(0, Be.normalizeId)(t)){let{schema:i}=a,{schemaId:c}=this.opts,u=i[c];return u&&(s=(0, Be.resolveUrl)(this.opts.uriResolver,s,u)),new Kt({schema:i,schemaId:c,root:e,baseId:s})}return js.call(this,r,a)}}Ne.resolveSchema=nn;var Uf=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function js(e,{baseId:t,schema:r,root:n}){var s;if(((s=e.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let i of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0, Si.unescapeFragment)(i)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!Uf.has(i)&&u&&(t=(0, Be.resolveUrl)(this.opts.uriResolver,t,u));}let o;if(typeof r!="boolean"&&r.$ref&&!(0, Si.schemaHasRulesButRef)(r,this.RULES)){let i=(0, Be.resolveUrl)(this.opts.uriResolver,t,r.$ref);o=nn.call(this,n,i);}let{schemaId:a}=this.opts;if(o=o||new Kt({schema:r,schemaId:a,root:n,baseId:t}),o.schema!==o.root.schema)return o}});var ki=x((uv,Jf)=>{Jf.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:false};});var Fs=x((cv,Ci)=>{var zf=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),_i=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function qs(e){let t="",r=0,n=0;for(n=0;n<e.length;n++)if(r=e[n].charCodeAt(0),r!==48){if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return "";t+=e[n];break}for(n+=1;n<e.length;n++){if(r=e[n].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return "";t+=e[n];}return t}var Hf=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function bi(e){return e.length=0,true}function Wf(e,t,r){if(e.length){let n=qs(e);if(n!=="")t.push(n);else return r.error=true,false;e.length=0;}return true}function Yf(e){let t=0,r={error:false,address:"",zone:""},n=[],s=[],o=false,a=false,i=Wf;for(let c=0;c<e.length;c++){let u=e[c];if(!(u==="["||u==="]"))if(u===":"){if(o===true&&(a=true),!i(s,n,r))break;if(++t>7){r.error=true;break}c>0&&e[c-1]===":"&&(o=true),n.push(":");continue}else if(u==="%"){if(!i(s,n,r))break;i=bi;}else {s.push(u);continue}}return s.length&&(i===bi?r.zone=s.join(""):a?n.push(s.join("")):n.push(qs(s))),r.address=n.join(""),r}function Ri(e){if(Xf(e,":")<2)return {host:e,isIPV6:false};let t=Yf(e);if(t.error)return {host:e,isIPV6:false};{let r=t.address,n=t.address;return t.zone&&(r+="%"+t.zone,n+="%25"+t.zone),{host:r,isIPV6:true,escapedHost:n}}}function Xf(e,t){let r=0;for(let n=0;n<e.length;n++)e[n]===t&&r++;return r}function Qf(e){let t=e,r=[],n=-1,s=0;for(;s=t.length;){if(s===1){if(t===".")break;if(t==="/"){r.push("/");break}else {r.push(t);break}}else if(s===2){if(t[0]==="."){if(t[1]===".")break;if(t[1]==="/"){t=t.slice(2);continue}}else if(t[0]==="/"&&(t[1]==="."||t[1]==="/")){r.push("/");break}}else if(s===3&&t==="/.."){r.length!==0&&r.pop(),r.push("/");break}if(t[0]==="."){if(t[1]==="."){if(t[2]==="/"){t=t.slice(3);continue}}else if(t[1]==="/"){t=t.slice(2);continue}}else if(t[0]==="/"&&t[1]==="."){if(t[2]==="/"){t=t.slice(2);continue}else if(t[2]==="."&&t[3]==="/"){t=t.slice(3),r.length!==0&&r.pop();continue}}if((n=t.indexOf("/",1))===-1){r.push(t);break}else r.push(t.slice(0,n)),t=t.slice(n);}return r.join("")}function Zf(e,t){let r=t!==true?escape:unescape;return e.scheme!==void 0&&(e.scheme=r(e.scheme)),e.userinfo!==void 0&&(e.userinfo=r(e.userinfo)),e.host!==void 0&&(e.host=r(e.host)),e.path!==void 0&&(e.path=r(e.path)),e.query!==void 0&&(e.query=r(e.query)),e.fragment!==void 0&&(e.fragment=r(e.fragment)),e}function ep(e){let t=[];if(e.userinfo!==void 0&&(t.push(e.userinfo),t.push("@")),e.host!==void 0){let r=unescape(e.host);if(!_i(r)){let n=Ri(r);n.isIPV6===true?r=`[${n.escapedHost}]`:r=e.host;}t.push(r);}return (typeof e.port=="number"||typeof e.port=="string")&&(t.push(":"),t.push(String(e.port))),t.length?t.join(""):void 0}Ci.exports={nonSimpleDomain:Hf,recomposeAuthority:ep,normalizeComponentEncoding:Zf,removeDotSegments:Qf,isIPv4:_i,isUUID:zf,normalizeIPv6:Ri,stringArrayToHexStripped:qs};});var Ai=x((dv,Ti)=>{var{isUUID:tp}=Fs(),rp=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,np=["http","https","ws","wss","urn","urn:uuid"];function sp(e){return np.indexOf(e)!==-1}function Ds(e){return e.secure===true?true:e.secure===false?false:e.scheme?e.scheme.length===3&&(e.scheme[0]==="w"||e.scheme[0]==="W")&&(e.scheme[1]==="s"||e.scheme[1]==="S")&&(e.scheme[2]==="s"||e.scheme[2]==="S"):false}function $i(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function Ei(e){let t=String(e.scheme).toLowerCase()==="https";return (e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function op(e){return e.secure=Ds(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function ap(e){if((e.port===(Ds(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0;}return e.fragment=void 0,e}function ip(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(rp);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let s=`${n}:${t.nid||e.nid}`,o=Ms(s);e.path=void 0,o&&(e=o.parse(e,t));}else e.error=e.error||"URN can not be parsed.";return e}function up(e,t){if(e.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),s=`${r}:${t.nid||n}`,o=Ms(s);o&&(e=o.serialize(e,t));let a=e,i=e.nss;return a.path=`${n||t.nid}:${i}`,t.skipEscape=true,a}function cp(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!tp(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function dp(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var xi={scheme:"http",domainHost:true,parse:$i,serialize:Ei},lp={scheme:"https",domainHost:xi.domainHost,parse:$i,serialize:Ei},on={scheme:"ws",domainHost:true,parse:op,serialize:ap},fp={scheme:"wss",domainHost:on.domainHost,parse:on.parse,serialize:on.serialize},pp={scheme:"urn",parse:ip,serialize:up,skipNormalize:true},mp={scheme:"urn:uuid",parse:cp,serialize:dp,skipNormalize:true},an={http:xi,https:lp,ws:on,wss:fp,urn:pp,"urn:uuid":mp};Object.setPrototypeOf(an,null);function Ms(e){return e&&(an[e]||an[e.toLowerCase()])||void 0}Ti.exports={wsIsSecure:Ds,SCHEMES:an,isValidSchemeName:sp,getSchemeHandler:Ms};});var Pi=x((lv,cn)=>{var{normalizeIPv6:gp,removeDotSegments:mr,recomposeAuthority:hp,normalizeComponentEncoding:un,isIPv4:yp,nonSimpleDomain:vp}=Fs(),{SCHEMES:Sp,getSchemeHandler:Ii}=Ai();function wp(e,t){return typeof e=="string"?e=ze(tt(e,t),t):typeof e=="object"&&(e=tt(ze(e,t),t)),e}function kp(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=Oi(tt(e,n),tt(t,n),n,true);return n.skipEscape=true,ze(s,n)}function Oi(e,t,r,n){let s={};return n||(e=tt(ze(e,r),r),t=tt(ze(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(s.scheme=t.scheme,s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=mr(t.path||""),s.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=mr(t.path||""),s.query=t.query):(t.path?(t.path[0]==="/"?s.path=mr(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?s.path="/"+t.path:e.path?s.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:s.path=t.path,s.path=mr(s.path)),s.query=t.query):(s.path=e.path,t.query!==void 0?s.query=t.query:s.query=e.query),s.userinfo=e.userinfo,s.host=e.host,s.port=e.port),s.scheme=e.scheme),s.fragment=t.fragment,s}function bp(e,t,r){return typeof e=="string"?(e=unescape(e),e=ze(un(tt(e,r),true),{...r,skipEscape:true})):typeof e=="object"&&(e=ze(un(e,true),{...r,skipEscape:true})),typeof t=="string"?(t=unescape(t),t=ze(un(tt(t,r),true),{...r,skipEscape:true})):typeof t=="object"&&(t=ze(un(t,true),{...r,skipEscape:true})),e.toLowerCase()===t.toLowerCase()}function ze(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),s=[],o=Ii(n.scheme||r.scheme);o&&o.serialize&&o.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&s.push(r.scheme,":");let a=hp(r);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path[0]!=="/"&&s.push("/")),r.path!==void 0){let i=r.path;!n.absolutePath&&(!o||!o.absolutePath)&&(i=mr(i)),a===void 0&&i[0]==="/"&&i[1]==="/"&&(i="/%2F"+i.slice(2)),s.push(i);}return r.query!==void 0&&s.push("?",r.query),r.fragment!==void 0&&s.push("#",r.fragment),s.join("")}var _p=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function tt(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=false;r.reference==="suffix"&&(r.scheme?e=r.scheme+":"+e:e="//"+e);let o=e.match(_p);if(o){if(n.scheme=o[1],n.userinfo=o[3],n.host=o[4],n.port=parseInt(o[5],10),n.path=o[6]||"",n.query=o[7],n.fragment=o[8],isNaN(n.port)&&(n.port=o[5]),n.host)if(yp(n.host)===false){let c=gp(n.host);n.host=c.host.toLowerCase(),s=c.isIPV6;}else s=true;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=Ii(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===false&&vp(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase());}catch(i){n.error=n.error||"Host's domain name can not be converted to ASCII: "+i;}(!a||a&&!a.skipNormalize)&&(e.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r);}else n.error=n.error||"URI can not be parsed.";return n}var Ls={SCHEMES:Sp,normalize:wp,resolve:kp,resolveComponent:Oi,equal:bp,serialize:ze,parse:tt};cn.exports=Ls;cn.exports.default=Ls;cn.exports.fastUri=Ls;});var Ni=x(Vs=>{Object.defineProperty(Vs,"__esModule",{value:true});var ji=Pi();ji.code='require("ajv/dist/runtime/uri").default';Vs.default=ji;});var Gi=x(fe=>{Object.defineProperty(fe,"__esModule",{value:true});fe.CodeGen=fe.Name=fe.nil=fe.stringify=fe.str=fe._=fe.KeywordCxt=void 0;var Rp=fr();Object.defineProperty(fe,"KeywordCxt",{enumerable:true,get:function(){return Rp.KeywordCxt}});var Ut=G();Object.defineProperty(fe,"_",{enumerable:true,get:function(){return Ut._}});Object.defineProperty(fe,"str",{enumerable:true,get:function(){return Ut.str}});Object.defineProperty(fe,"stringify",{enumerable:true,get:function(){return Ut.stringify}});Object.defineProperty(fe,"nil",{enumerable:true,get:function(){return Ut.nil}});Object.defineProperty(fe,"Name",{enumerable:true,get:function(){return Ut.Name}});Object.defineProperty(fe,"CodeGen",{enumerable:true,get:function(){return Ut.CodeGen}});var Cp=rn(),Li=pr(),$p=hs(),gr=sn(),Ep=G(),hr=cr(),dn=ur(),Gs=z(),qi=ki(),xp=Ni(),Vi=(e,t)=>new RegExp(e,t);Vi.code="new RegExp";var Tp=["removeAdditional","useDefaults","coerceTypes"],Ap=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),Ip={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},Op={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Fi=200;function Pp(e){var t,r,n,s,o,a,i,c,u,d,l,h,y,f,p,v,_,m,g,w,k,$,R,E,I;let P=e.strict,B=(t=e.code)===null||t===void 0?void 0:t.optimize,W=B===true||B===void 0?1:B||0,Z=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Vi,le=(s=e.uriResolver)!==null&&s!==void 0?s:xp.default;return {strictSchema:(a=(o=e.strictSchema)!==null&&o!==void 0?o:P)!==null&&a!==void 0?a:true,strictNumbers:(c=(i=e.strictNumbers)!==null&&i!==void 0?i:P)!==null&&c!==void 0?c:true,strictTypes:(d=(u=e.strictTypes)!==null&&u!==void 0?u:P)!==null&&d!==void 0?d:"log",strictTuples:(h=(l=e.strictTuples)!==null&&l!==void 0?l:P)!==null&&h!==void 0?h:"log",strictRequired:(f=(y=e.strictRequired)!==null&&y!==void 0?y:P)!==null&&f!==void 0?f:false,code:e.code?{...e.code,optimize:W,regExp:Z}:{optimize:W,regExp:Z},loopRequired:(p=e.loopRequired)!==null&&p!==void 0?p:Fi,loopEnum:(v=e.loopEnum)!==null&&v!==void 0?v:Fi,meta:(_=e.meta)!==null&&_!==void 0?_:true,messages:(m=e.messages)!==null&&m!==void 0?m:true,inlineRefs:(g=e.inlineRefs)!==null&&g!==void 0?g:true,schemaId:(w=e.schemaId)!==null&&w!==void 0?w:"$id",addUsedSchema:(k=e.addUsedSchema)!==null&&k!==void 0?k:true,validateSchema:($=e.validateSchema)!==null&&$!==void 0?$:true,validateFormats:(R=e.validateFormats)!==null&&R!==void 0?R:true,unicodeRegExp:(E=e.unicodeRegExp)!==null&&E!==void 0?E:true,int32range:(I=e.int32range)!==null&&I!==void 0?I:true,uriResolver:le}}var yr=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...Pp(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new Ep.ValueScope({scope:{},prefixes:Ap,es5:r,lines:n}),this.logger=Mp(t.logger);let s=t.validateFormats;t.validateFormats=false,this.RULES=(0, $p.getRules)(),Di.call(this,Ip,t,"NOT SUPPORTED"),Di.call(this,Op,t,"DEPRECATED","warn"),this._metaOpts=Fp.call(this),t.formats&&Np.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&qp.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),jp.call(this),t.validateFormats=s;}_addVocabularies(){this.addKeyword("$async");}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,s=qi;n==="id"&&(s={...qi},s.id=s.$id,delete s.$id),r&&t&&this.addMetaSchema(s,s[n],false);}defaultMeta(){let{meta:t,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof t=="object"?t[r]||t:void 0}validate(t,r){let n;if(typeof t=="string"){if(n=this.getSchema(t),!n)throw new Error(`no schema with key or ref "${t}"`)}else n=this.compile(t);let s=n(r);return "$async"in n||(this.errors=n.errors),s}compile(t,r){let n=this._addSchema(t,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(t,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return s.call(this,t,r);async function s(d,l){await o.call(this,d.$schema);let h=this._addSchema(d,l);return h.validate||a.call(this,h)}async function o(d){d&&!this.getSchema(d)&&await s.call(this,{$ref:d},true);}async function a(d){try{return this._compileSchemaEnv(d)}catch(l){if(!(l instanceof Li.default))throw l;return i.call(this,l),await c.call(this,l.missingSchema),a.call(this,d)}}function i({missingSchema:d,missingRef:l}){if(this.refs[d])throw new Error(`AnySchema ${d} is loaded but ${l} cannot be resolved`)}async function c(d){let l=await u.call(this,d);this.refs[d]||await o.call(this,l.$schema),this.refs[d]||this.addSchema(l,d,r);}async function u(d){let l=this._loading[d];if(l)return l;try{return await(this._loading[d]=n(d))}finally{delete this._loading[d];}}}addSchema(t,r,n,s=this.opts.validateSchema){if(Array.isArray(t)){for(let a of t)this.addSchema(a,void 0,n,s);return this}let o;if(typeof t=="object"){let{schemaId:a}=this.opts;if(o=t[a],o!==void 0&&typeof o!="string")throw new Error(`schema ${a} must be string`)}return r=(0, hr.normalizeId)(r||o),this._checkUnique(r),this.schemas[r]=this._addSchema(t,n,r,s,true),this}addMetaSchema(t,r,n=this.opts.validateSchema){return this.addSchema(t,r,true,n),this}validateSchema(t,r){if(typeof t=="boolean")return true;let n;if(n=t.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,true;let s=this.validate(n,t);if(!s&&r){let o="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(o);else throw new Error(o)}return s}getSchema(t){let r;for(;typeof(r=Mi.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,s=new gr.SchemaEnv({schema:{},schemaId:n});if(r=gr.resolveSchema.call(this,s,t),!r)return;this.refs[t]=r;}return r.validate||this._compileSchemaEnv(r)}removeSchema(t){if(t instanceof RegExp)return this._removeAllSchemas(this.schemas,t),this._removeAllSchemas(this.refs,t),this;switch(typeof t){case "undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case "string":{let r=Mi.call(this,t);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[t],delete this.refs[t],this}case "object":{let r=t;this._cache.delete(r);let n=t[this.opts.schemaId];return n&&(n=(0, hr.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let n;if(typeof t=="string")n=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof t=="object"&&r===void 0){if(r=t,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(Vp.call(this,n,r),!r)return (0, Gs.eachItem)(n,o=>Bs.call(this,o)),this;Gp.call(this,r);let s={...r,type:(0, dn.getJSONTypes)(r.type),schemaType:(0, dn.getJSONTypes)(r.schemaType)};return (0, Gs.eachItem)(n,s.type.length===0?o=>Bs.call(this,o,s):o=>s.type.forEach(a=>Bs.call(this,o,s,a))),this}getKeyword(t){let r=this.RULES.all[t];return typeof r=="object"?r.definition:!!r}removeKeyword(t){let{RULES:r}=this;delete r.keywords[t],delete r.all[t];for(let n of r.rules){let s=n.rules.findIndex(o=>o.keyword===t);s>=0&&n.rules.splice(s,1);}return this}addFormat(t,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[t]=r,this}errorsText(t=this.errors,{separator:r=", ",dataVar:n="data"}={}){return !t||t.length===0?"No errors":t.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,o)=>s+r+o)}$dataMetaSchema(t,r){let n=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let s of r){let o=s.split("/").slice(1),a=t;for(let i of o)a=a[i];for(let i in n){let c=n[i];if(typeof c!="object")continue;let{$data:u}=c.definition,d=a[i];u&&d&&(a[i]=Bi(d));}}return t}_removeAllSchemas(t,r){for(let n in t){let s=t[n];(!r||r.test(n))&&(typeof s=="string"?delete t[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete t[n]));}}_addSchema(t,r,n,s=this.opts.validateSchema,o=this.opts.addUsedSchema){let a,{schemaId:i}=this.opts;if(typeof t=="object")a=t[i];else {if(this.opts.jtd)throw new Error("schema must be object");if(typeof t!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(t);if(c!==void 0)return c;n=(0, hr.normalizeId)(a||n);let u=hr.getSchemaRefs.call(this,t,n);return c=new gr.SchemaEnv({schema:t,schemaId:i,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),o&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),s&&this.validateSchema(t,true),c}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):gr.compileSchema.call(this,t),!t.validate)throw new Error("ajv implementation error");return t.validate}_compileMetaSchema(t){let r=this.opts;this.opts=this._metaOpts;try{gr.compileSchema.call(this,t);}finally{this.opts=r;}}};yr.ValidationError=Cp.default;yr.MissingRefError=Li.default;fe.default=yr;function Di(e,t,r,n="error"){for(let s in e){let o=s;o in t&&this.logger[n](`${r}: option ${s}. ${e[o]}`);}}function Mi(e){return e=(0, hr.normalizeId)(e),this.schemas[e]||this.refs[e]}function jp(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t);}function Np(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t);}}function qp(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r);}}function Fp(){let e={...this.opts};for(let t of Tp)delete e[t];return e}var Dp={log(){},warn(){},error(){}};function Mp(e){if(e===false)return Dp;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw new Error("logger must implement log, warn and error methods")}var Lp=/^[a-z_$][a-z0-9_$:-]*$/i;function Vp(e,t){let{RULES:r}=this;if((0, Gs.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!Lp.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!t&&t.$data&&!("code"in t||"validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function Bs(e,t,r){var n;let s=t?.post;if(r&&s)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:o}=this,a=s?o.post:o.rules.find(({type:c})=>c===r);if(a||(a={type:r,rules:[]},o.rules.push(a)),o.keywords[e]=true,!t)return;let i={keyword:e,definition:{...t,type:(0, dn.getJSONTypes)(t.type),schemaType:(0, dn.getJSONTypes)(t.schemaType)}};t.before?Bp.call(this,a,i,t.before):a.rules.push(i),o.all[e]=i,(n=t.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c));}function Bp(e,t,r){let n=e.rules.findIndex(s=>s.keyword===r);n>=0?e.rules.splice(n,0,t):(e.rules.push(t),this.logger.warn(`rule ${r} is not defined`));}function Gp(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=Bi(t)),e.validateSchema=this.compile(t,true));}var Kp={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Bi(e){return {anyOf:[e,Kp]}}});var Ki=x(Ks=>{Object.defineProperty(Ks,"__esModule",{value:true});var Up={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Ks.default=Up;});var Hi=x(xt=>{Object.defineProperty(xt,"__esModule",{value:true});xt.callRef=xt.getValidate=void 0;var Jp=pr(),Ui=je(),Ee=G(),Jt=Ze(),Ji=sn(),ln=z(),zp={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:s,schemaEnv:o,validateName:a,opts:i,self:c}=n,{root:u}=o;if((r==="#"||r==="#/")&&s===u.baseId)return l();let d=Ji.resolveRef.call(c,u,s,r);if(d===void 0)throw new Jp.default(n.opts.uriResolver,s,r);if(d instanceof Ji.SchemaEnv)return h(d);return y(d);function l(){if(o===u)return fn(e,a,o,o.$async);let f=t.scopeValue("root",{ref:u});return fn(e,(0, Ee._)`${f}.validate`,u,u.$async)}function h(f){let p=zi(e,f);fn(e,p,f,f.$async);}function y(f){let p=t.scopeValue("schema",i.code.source===true?{ref:f,code:(0, Ee.stringify)(f)}:{ref:f}),v=t.name("valid"),_=e.subschema({schema:f,dataTypes:[],schemaPath:Ee.nil,topSchemaRef:p,errSchemaPath:r},v);e.mergeEvaluated(_),e.ok(v);}}};function zi(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0, Ee._)`${r.scopeValue("wrapper",{ref:t})}.validate`}xt.getValidate=zi;function fn(e,t,r,n){let{gen:s,it:o}=e,{allErrors:a,schemaEnv:i,opts:c}=o,u=c.passContext?Jt.default.this:Ee.nil;n?d():l();function d(){if(!i.$async)throw new Error("async schema referenced by sync schema");let f=s.let("valid");s.try(()=>{s.code((0, Ee._)`await ${(0, Ui.callValidateCode)(e,t,u)}`),y(t),a||s.assign(f,true);},p=>{s.if((0, Ee._)`!(${p} instanceof ${o.ValidationError})`,()=>s.throw(p)),h(p),a||s.assign(f,false);}),e.ok(f);}function l(){e.result((0, Ui.callValidateCode)(e,t,u),()=>y(t),()=>h(t));}function h(f){let p=(0, Ee._)`${f}.errors`;s.assign(Jt.default.vErrors,(0, Ee._)`${Jt.default.vErrors} === null ? ${p} : ${Jt.default.vErrors}.concat(${p})`),s.assign(Jt.default.errors,(0, Ee._)`${Jt.default.vErrors}.length`);}function y(f){var p;if(!o.opts.unevaluated)return;let v=(p=r?.validate)===null||p===void 0?void 0:p.evaluated;if(o.props!==true)if(v&&!v.dynamicProps)v.props!==void 0&&(o.props=ln.mergeEvaluated.props(s,v.props,o.props));else {let _=s.var("props",(0, Ee._)`${f}.evaluated.props`);o.props=ln.mergeEvaluated.props(s,_,o.props,Ee.Name);}if(o.items!==true)if(v&&!v.dynamicItems)v.items!==void 0&&(o.items=ln.mergeEvaluated.items(s,v.items,o.items));else {let _=s.var("items",(0, Ee._)`${f}.evaluated.items`);o.items=ln.mergeEvaluated.items(s,_,o.items,Ee.Name);}}}xt.callRef=fn;xt.default=zp;});var Wi=x(Us=>{Object.defineProperty(Us,"__esModule",{value:true});var Hp=Ki(),Wp=Hi(),Yp=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",Hp.default,Wp.default];Us.default=Yp;});var Yi=x(Js=>{Object.defineProperty(Js,"__esModule",{value:true});var pn=G(),ft=pn.operators,mn={maximum:{okStr:"<=",ok:ft.LTE,fail:ft.GT},minimum:{okStr:">=",ok:ft.GTE,fail:ft.LT},exclusiveMaximum:{okStr:"<",ok:ft.LT,fail:ft.GTE},exclusiveMinimum:{okStr:">",ok:ft.GT,fail:ft.LTE}},Xp={message:({keyword:e,schemaCode:t})=>(0, pn.str)`must be ${mn[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0, pn._)`{comparison: ${mn[e].okStr}, limit: ${t}}`},Qp={keyword:Object.keys(mn),type:"number",schemaType:"number",$data:true,error:Xp,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0, pn._)`${r} ${mn[t].fail} ${n} || isNaN(${r})`);}};Js.default=Qp;});var Xi=x(zs=>{Object.defineProperty(zs,"__esModule",{value:true});var vr=G(),Zp={message:({schemaCode:e})=>(0, vr.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0, vr._)`{multipleOf: ${e}}`},em={keyword:"multipleOf",type:"number",schemaType:"number",$data:true,error:Zp,code(e){let{gen:t,data:r,schemaCode:n,it:s}=e,o=s.opts.multipleOfPrecision,a=t.let("res"),i=o?(0, vr._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${o}`:(0, vr._)`${a} !== parseInt(${a})`;e.fail$data((0, vr._)`(${n} === 0 || (${a} = ${r}/${n}, ${i}))`);}};zs.default=em;});var Zi=x(Hs=>{Object.defineProperty(Hs,"__esModule",{value:true});function Qi(e){let t=e.length,r=0,n=0,s;for(;n<t;)r++,s=e.charCodeAt(n++),s>=55296&&s<=56319&&n<t&&(s=e.charCodeAt(n),(s&64512)===56320&&n++);return r}Hs.default=Qi;Qi.code='require("ajv/dist/runtime/ucs2length").default';});var eu=x(Ws=>{Object.defineProperty(Ws,"__esModule",{value:true});var Tt=G(),tm=z(),rm=Zi(),nm={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return (0, Tt.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0, Tt._)`{limit: ${e}}`},sm={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:true,error:nm,code(e){let{keyword:t,data:r,schemaCode:n,it:s}=e,o=t==="maxLength"?Tt.operators.GT:Tt.operators.LT,a=s.opts.unicode===false?(0, Tt._)`${r}.length`:(0, Tt._)`${(0, tm.useFunc)(e.gen,rm.default)}(${r})`;e.fail$data((0, Tt._)`${a} ${o} ${n}`);}};Ws.default=sm;});var tu=x(Ys=>{Object.defineProperty(Ys,"__esModule",{value:true});var om=je(),am=z(),zt=G(),im={message:({schemaCode:e})=>(0, zt.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0, zt._)`{pattern: ${e}}`},um={keyword:"pattern",type:"string",schemaType:"string",$data:true,error:im,code(e){let{gen:t,data:r,$data:n,schema:s,schemaCode:o,it:a}=e,i=a.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=a.opts.code,u=c.code==="new RegExp"?(0, zt._)`new RegExp`:(0, am.useFunc)(t,c),d=t.let("valid");t.try(()=>t.assign(d,(0, zt._)`${u}(${o}, ${i}).test(${r})`),()=>t.assign(d,false)),e.fail$data((0, zt._)`!${d}`);}else {let c=(0, om.usePattern)(e,s);e.fail$data((0, zt._)`!${c}.test(${r})`);}}};Ys.default=um;});var ru=x(Xs=>{Object.defineProperty(Xs,"__esModule",{value:true});var Sr=G(),cm={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return (0, Sr.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0, Sr._)`{limit: ${e}}`},dm={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:true,error:cm,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxProperties"?Sr.operators.GT:Sr.operators.LT;e.fail$data((0, Sr._)`Object.keys(${r}).length ${s} ${n}`);}};Xs.default=dm;});var nu=x(Qs=>{Object.defineProperty(Qs,"__esModule",{value:true});var wr=je(),kr=G(),lm=z(),fm={message:({params:{missingProperty:e}})=>(0, kr.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0, kr._)`{missingProperty: ${e}}`},pm={keyword:"required",type:"object",schemaType:"array",$data:true,error:fm,code(e){let{gen:t,schema:r,schemaCode:n,data:s,$data:o,it:a}=e,{opts:i}=a;if(!o&&r.length===0)return;let c=r.length>=i.loopRequired;if(a.allErrors?u():d(),i.strictRequired){let y=e.parentSchema.properties,{definedProperties:f}=e.it;for(let p of r)if(y?.[p]===void 0&&!f.has(p)){let v=a.schemaEnv.baseId+a.errSchemaPath,_=`required property "${p}" is not defined at "${v}" (strictRequired)`;(0, lm.checkStrictMode)(a,_,a.opts.strictRequired);}}function u(){if(c||o)e.block$data(kr.nil,l);else for(let y of r)(0, wr.checkReportMissingProp)(e,y);}function d(){let y=t.let("missing");if(c||o){let f=t.let("valid",true);e.block$data(f,()=>h(y,f)),e.ok(f);}else t.if((0, wr.checkMissingProp)(e,r,y)),(0, wr.reportMissingProp)(e,y),t.else();}function l(){t.forOf("prop",n,y=>{e.setParams({missingProperty:y}),t.if((0, wr.noPropertyInData)(t,s,y,i.ownProperties),()=>e.error());});}function h(y,f){e.setParams({missingProperty:y}),t.forOf(y,n,()=>{t.assign(f,(0, wr.propertyInData)(t,s,y,i.ownProperties)),t.if((0, kr.not)(f),()=>{e.error(),t.break();});},kr.nil);}}};Qs.default=pm;});var su=x(Zs=>{Object.defineProperty(Zs,"__esModule",{value:true});var br=G(),mm={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return (0, br.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0, br._)`{limit: ${e}}`},gm={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:true,error:mm,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxItems"?br.operators.GT:br.operators.LT;e.fail$data((0, br._)`${r}.length ${s} ${n}`);}};Zs.default=gm;});var gn=x(eo=>{Object.defineProperty(eo,"__esModule",{value:true});var ou=Rs();ou.code='require("ajv/dist/runtime/equal").default';eo.default=ou;});var au=x(ro=>{Object.defineProperty(ro,"__esModule",{value:true});var to=ur(),pe=G(),hm=z(),ym=gn(),vm={message:({params:{i:e,j:t}})=>(0, pe.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0, pe._)`{i: ${e}, j: ${t}}`},Sm={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:true,error:vm,code(e){let{gen:t,data:r,$data:n,schema:s,parentSchema:o,schemaCode:a,it:i}=e;if(!n&&!s)return;let c=t.let("valid"),u=o.items?(0, to.getSchemaTypes)(o.items):[];e.block$data(c,d,(0, pe._)`${a} === false`),e.ok(c);function d(){let f=t.let("i",(0, pe._)`${r}.length`),p=t.let("j");e.setParams({i:f,j:p}),t.assign(c,true),t.if((0, pe._)`${f} > 1`,()=>(l()?h:y)(f,p));}function l(){return u.length>0&&!u.some(f=>f==="object"||f==="array")}function h(f,p){let v=t.name("item"),_=(0, to.checkDataTypes)(u,v,i.opts.strictNumbers,to.DataType.Wrong),m=t.const("indices",(0, pe._)`{}`);t.for((0, pe._)`;${f}--;`,()=>{t.let(v,(0, pe._)`${r}[${f}]`),t.if(_,(0, pe._)`continue`),u.length>1&&t.if((0, pe._)`typeof ${v} == "string"`,(0, pe._)`${v} += "_"`),t.if((0, pe._)`typeof ${m}[${v}] == "number"`,()=>{t.assign(p,(0, pe._)`${m}[${v}]`),e.error(),t.assign(c,false).break();}).code((0, pe._)`${m}[${v}] = ${f}`);});}function y(f,p){let v=(0, hm.useFunc)(t,ym.default),_=t.name("outer");t.label(_).for((0, pe._)`;${f}--;`,()=>t.for((0, pe._)`${p} = ${f}; ${p}--;`,()=>t.if((0, pe._)`${v}(${r}[${f}], ${r}[${p}])`,()=>{e.error(),t.assign(c,false).break(_);})));}}};ro.default=Sm;});var iu=x(so=>{Object.defineProperty(so,"__esModule",{value:true});var no=G(),wm=z(),km=gn(),bm={message:"must be equal to constant",params:({schemaCode:e})=>(0, no._)`{allowedValue: ${e}}`},_m={keyword:"const",$data:true,error:bm,code(e){let{gen:t,data:r,$data:n,schemaCode:s,schema:o}=e;n||o&&typeof o=="object"?e.fail$data((0, no._)`!${(0, wm.useFunc)(t,km.default)}(${r}, ${s})`):e.fail((0, no._)`${o} !== ${r}`);}};so.default=_m;});var uu=x(oo=>{Object.defineProperty(oo,"__esModule",{value:true});var _r=G(),Rm=z(),Cm=gn(),$m={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0, _r._)`{allowedValues: ${e}}`},Em={keyword:"enum",schemaType:"array",$data:true,error:$m,code(e){let{gen:t,data:r,$data:n,schema:s,schemaCode:o,it:a}=e;if(!n&&s.length===0)throw new Error("enum must have non-empty array");let i=s.length>=a.opts.loopEnum,c,u=()=>c??(c=(0, Rm.useFunc)(t,Cm.default)),d;if(i||n)d=t.let("valid"),e.block$data(d,l);else {if(!Array.isArray(s))throw new Error("ajv implementation error");let y=t.const("vSchema",o);d=(0, _r.or)(...s.map((f,p)=>h(y,p)));}e.pass(d);function l(){t.assign(d,false),t.forOf("v",o,y=>t.if((0, _r._)`${u()}(${r}, ${y})`,()=>t.assign(d,true).break()));}function h(y,f){let p=s[f];return typeof p=="object"&&p!==null?(0, _r._)`${u()}(${r}, ${y}[${f}])`:(0, _r._)`${r} === ${p}`}}};oo.default=Em;});var cu=x(ao=>{Object.defineProperty(ao,"__esModule",{value:true});var xm=Yi(),Tm=Xi(),Am=eu(),Im=tu(),Om=ru(),Pm=nu(),jm=su(),Nm=au(),qm=iu(),Fm=uu(),Dm=[xm.default,Tm.default,Am.default,Im.default,Om.default,Pm.default,jm.default,Nm.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},qm.default,Fm.default];ao.default=Dm;});var uo=x(Rr=>{Object.defineProperty(Rr,"__esModule",{value:true});Rr.validateAdditionalItems=void 0;var At=G(),io=z(),Mm={message:({params:{len:e}})=>(0, At.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0, At._)`{limit: ${e}}`},Lm={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:Mm,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0, io.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}du(e,n);}};function du(e,t){let{gen:r,schema:n,data:s,keyword:o,it:a}=e;a.items=true;let i=r.const("len",(0, At._)`${s}.length`);if(n===false)e.setParams({len:t.length}),e.pass((0, At._)`${i} <= ${t.length}`);else if(typeof n=="object"&&!(0, io.alwaysValidSchema)(a,n)){let u=r.var("valid",(0, At._)`${i} <= ${t.length}`);r.if((0, At.not)(u),()=>c(u)),e.ok(u);}function c(u){r.forRange("i",t.length,i,d=>{e.subschema({keyword:o,dataProp:d,dataPropType:io.Type.Num},u),a.allErrors||r.if((0, At.not)(u),()=>r.break());});}}Rr.validateAdditionalItems=du;Rr.default=Lm;});var co=x(Cr=>{Object.defineProperty(Cr,"__esModule",{value:true});Cr.validateTuple=void 0;var lu=G(),hn=z(),Vm=je(),Bm={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return fu(e,"additionalItems",t);r.items=true,!(0, hn.alwaysValidSchema)(r,t)&&e.ok((0, Vm.validateArray)(e));}};function fu(e,t,r=e.schema){let{gen:n,parentSchema:s,data:o,keyword:a,it:i}=e;d(s),i.opts.unevaluated&&r.length&&i.items!==true&&(i.items=hn.mergeEvaluated.items(n,r.length,i.items));let c=n.name("valid"),u=n.const("len",(0, lu._)`${o}.length`);r.forEach((l,h)=>{(0, hn.alwaysValidSchema)(i,l)||(n.if((0, lu._)`${u} > ${h}`,()=>e.subschema({keyword:a,schemaProp:h,dataProp:h},c)),e.ok(c));});function d(l){let{opts:h,errSchemaPath:y}=i,f=r.length,p=f===l.minItems&&(f===l.maxItems||l[t]===false);if(h.strictTuples&&!p){let v=`"${a}" is ${f}-tuple, but minItems or maxItems/${t} are not specified or different at path "${y}"`;(0, hn.checkStrictMode)(i,v,h.strictTuples);}}}Cr.validateTuple=fu;Cr.default=Bm;});var pu=x(lo=>{Object.defineProperty(lo,"__esModule",{value:true});var Gm=co(),Km={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0, Gm.validateTuple)(e,"items")};lo.default=Km;});var gu=x(fo=>{Object.defineProperty(fo,"__esModule",{value:true});var mu=G(),Um=z(),Jm=je(),zm=uo(),Hm={message:({params:{len:e}})=>(0, mu.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0, mu._)`{limit: ${e}}`},Wm={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:Hm,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:s}=r;n.items=true,!(0, Um.alwaysValidSchema)(n,t)&&(s?(0, zm.validateAdditionalItems)(e,s):e.ok((0, Jm.validateArray)(e)));}};fo.default=Wm;});var hu=x(po=>{Object.defineProperty(po,"__esModule",{value:true});var qe=G(),yn=z(),Ym={message:({params:{min:e,max:t}})=>t===void 0?(0, qe.str)`must contain at least ${e} valid item(s)`:(0, qe.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0, qe._)`{minContains: ${e}}`:(0, qe._)`{minContains: ${e}, maxContains: ${t}}`},Xm={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:true,error:Ym,code(e){let{gen:t,schema:r,parentSchema:n,data:s,it:o}=e,a,i,{minContains:c,maxContains:u}=n;o.opts.next?(a=c===void 0?1:c,i=u):a=1;let d=t.const("len",(0, qe._)`${s}.length`);if(e.setParams({min:a,max:i}),i===void 0&&a===0){(0, yn.checkStrictMode)(o,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(i!==void 0&&a>i){(0, yn.checkStrictMode)(o,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0, yn.alwaysValidSchema)(o,r)){let p=(0, qe._)`${d} >= ${a}`;i!==void 0&&(p=(0, qe._)`${p} && ${d} <= ${i}`),e.pass(p);return}o.items=true;let l=t.name("valid");i===void 0&&a===1?y(l,()=>t.if(l,()=>t.break())):a===0?(t.let(l,true),i!==void 0&&t.if((0, qe._)`${s}.length > 0`,h)):(t.let(l,false),h()),e.result(l,()=>e.reset());function h(){let p=t.name("_valid"),v=t.let("count",0);y(p,()=>t.if(p,()=>f(v)));}function y(p,v){t.forRange("i",0,d,_=>{e.subschema({keyword:"contains",dataProp:_,dataPropType:yn.Type.Num,compositeRule:true},p),v();});}function f(p){t.code((0, qe._)`${p}++`),i===void 0?t.if((0, qe._)`${p} >= ${a}`,()=>t.assign(l,true).break()):(t.if((0, qe._)`${p} > ${i}`,()=>t.assign(l,false).break()),a===1?t.assign(l,true):t.if((0, qe._)`${p} >= ${a}`,()=>t.assign(l,true)));}}};po.default=Xm;});var Su=x(He=>{Object.defineProperty(He,"__esModule",{value:true});He.validateSchemaDeps=He.validatePropertyDeps=He.error=void 0;var mo=G(),Qm=z(),$r=je();He.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return (0, mo.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0, mo._)`{property: ${e},
6
6
  missingProperty: ${n},
7
7
  depsCount: ${t},
8
- deps: ${r}}`};var Qm={keyword:"dependencies",type:"object",schemaType:"object",error:He.error,code(e){let[t,r]=Zm(e);yu(e,t),vu(e,r);}};function Zm({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let s=Array.isArray(e[n])?t:r;s[n]=e[n];}return [t,r]}function yu(e,t=e.schema){let{gen:r,data:n,it:s}=e;if(Object.keys(t).length===0)return;let o=r.let("missing");for(let a in t){let i=t[a];if(i.length===0)continue;let c=(0, $r.propertyInData)(r,n,a,s.opts.ownProperties);e.setParams({property:a,depsCount:i.length,deps:i.join(", ")}),s.allErrors?r.if(c,()=>{for(let u of i)(0, $r.checkReportMissingProp)(e,u);}):(r.if((0, mo._)`${c} && (${(0, $r.checkMissingProp)(e,i,o)})`),(0, $r.reportMissingProp)(e,o),r.else());}}He.validatePropertyDeps=yu;function vu(e,t=e.schema){let{gen:r,data:n,keyword:s,it:o}=e,a=r.name("valid");for(let i in t)(0, Xm.alwaysValidSchema)(o,t[i])||(r.if((0, $r.propertyInData)(r,n,i,o.opts.ownProperties),()=>{let c=e.subschema({keyword:s,schemaProp:i},a);e.mergeValidEvaluated(c,a);},()=>r.var(a,true)),e.ok(a));}He.validateSchemaDeps=vu;He.default=Qm;});var wu=x(go=>{Object.defineProperty(go,"__esModule",{value:true});var ku=G(),eg=z(),tg={message:"property name must be valid",params:({params:e})=>(0, ku._)`{propertyName: ${e.propertyName}}`},rg={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:tg,code(e){let{gen:t,schema:r,data:n,it:s}=e;if((0, eg.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, ku.not)(o),()=>{e.error(true),s.allErrors||t.break();});}),e.ok(o);}};go.default=rg;});var yo=x(ho=>{Object.defineProperty(ho,"__esModule",{value:true});var vn=je(),Ge=G(),ng=Ze(),Sn=z(),sg={message:"must NOT have additional properties",params:({params:e})=>(0, Ge._)`{additionalProperty: ${e.additionalProperty}}`},og={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:true,trackErrors:true,error:sg,code(e){let{gen:t,schema:r,parentSchema:n,data:s,errsCount:o,it:a}=e;if(!o)throw new Error("ajv implementation error");let{allErrors:i,opts:c}=a;if(a.props=true,c.removeAdditional!=="all"&&(0, Sn.alwaysValidSchema)(a,r))return;let u=(0, vn.allSchemaProperties)(n.properties),d=(0, vn.allSchemaProperties)(n.patternProperties);l(),e.ok((0, Ge._)`${o} === ${ng.default.errors}`);function l(){t.forIn("key",s,v=>{!u.length&&!d.length?f(v):t.if(h(v),()=>f(v));});}function h(v){let _;if(u.length>8){let m=(0, Sn.schemaRefOrVal)(a,n.properties,"properties");_=(0, vn.isOwnProperty)(t,m,v);}else u.length?_=(0, Ge.or)(...u.map(m=>(0, Ge._)`${v} === ${m}`)):_=Ge.nil;return d.length&&(_=(0, Ge.or)(_,...d.map(m=>(0, Ge._)`${(0, vn.usePattern)(e,m)}.test(${v})`))),(0, Ge.not)(_)}function y(v){t.code((0, Ge._)`delete ${s}[${v}]`);}function f(v){if(c.removeAdditional==="all"||c.removeAdditional&&r===false){y(v);return}if(r===false){e.setParams({additionalProperty:v}),e.error(),i||t.break();return}if(typeof r=="object"&&!(0, Sn.alwaysValidSchema)(a,r)){let _=t.name("valid");c.removeAdditional==="failing"?(p(v,_,false),t.if((0, Ge.not)(_),()=>{e.reset(),y(v);})):(p(v,_),i||t.if((0, Ge.not)(_),()=>t.break()));}}function p(v,_,m){let g={keyword:"additionalProperties",dataProp:v,dataPropType:Sn.Type.Str};m===false&&Object.assign(g,{compositeRule:true,createErrors:false,allErrors:false}),e.subschema(g,_);}}};ho.default=og;});var Ru=x(So=>{Object.defineProperty(So,"__esModule",{value:true});var ag=fr(),bu=je(),vo=z(),_u=yo(),ig={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:s,it:o}=e;o.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&_u.default.code(new ag.KeywordCxt(o,_u.default,"additionalProperties"));let a=(0, bu.allSchemaProperties)(r);for(let l of a)o.definedProperties.add(l);o.opts.unevaluated&&a.length&&o.props!==true&&(o.props=vo.mergeEvaluated.props(t,(0, vo.toHash)(a),o.props));let i=a.filter(l=>!(0, vo.alwaysValidSchema)(o,r[l]));if(i.length===0)return;let c=t.name("valid");for(let l of i)u(l)?d(l):(t.if((0, bu.propertyInData)(t,s,l,o.opts.ownProperties)),d(l),o.allErrors||t.else().var(c,true),t.endIf()),e.it.definedProperties.add(l),e.ok(c);function u(l){return o.opts.useDefaults&&!o.compositeRule&&r[l].default!==void 0}function d(l){e.subschema({keyword:"properties",schemaProp:l,dataProp:l},c);}}};So.default=ig;});var xu=x(ko=>{Object.defineProperty(ko,"__esModule",{value:true});var Cu=je(),kn=G(),$u=z(),Eu=z(),ug={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:s,it:o}=e,{opts:a}=o,i=(0, Cu.allSchemaProperties)(r),c=i.filter(p=>(0, $u.alwaysValidSchema)(o,r[p]));if(i.length===0||c.length===i.length&&(!o.opts.unevaluated||o.props===true))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,d=t.name("valid");o.props!==true&&!(o.props instanceof kn.Name)&&(o.props=(0, Eu.evaluatedPropsToName)(t,o.props));let{props:l}=o;h();function h(){for(let p of i)u&&y(p),o.allErrors?f(p):(t.var(d,true),f(p),t.if(d));}function y(p){for(let v in u)new RegExp(p).test(v)&&(0, $u.checkStrictMode)(o,`property ${v} matches pattern ${p} (use allowMatchingProperties)`);}function f(p){t.forIn("key",n,v=>{t.if((0, kn._)`${(0, Cu.usePattern)(e,p)}.test(${v})`,()=>{let _=c.includes(p);_||e.subschema({keyword:"patternProperties",schemaProp:p,dataProp:v,dataPropType:Eu.Type.Str},d),o.opts.unevaluated&&l!==true?t.assign((0, kn._)`${l}[${v}]`,true):!_&&!o.allErrors&&t.if((0, kn.not)(d),()=>t.break());});});}}};ko.default=ug;});var Tu=x(wo=>{Object.defineProperty(wo,"__esModule",{value:true});var cg=z(),dg={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"}};wo.default=dg;});var Au=x(bo=>{Object.defineProperty(bo,"__esModule",{value:true});var lg=je(),fg={keyword:"anyOf",schemaType:"array",trackErrors:true,code:lg.validateUnion,error:{message:"must match a schema in anyOf"}};bo.default=fg;});var Iu=x(_o=>{Object.defineProperty(_o,"__esModule",{value:true});var wn=G(),pg=z(),mg={message:"must match exactly one schema in oneOf",params:({params:e})=>(0, wn._)`{passingSchemas: ${e.passing}}`},gg={keyword:"oneOf",schemaType:"array",trackErrors:true,error:mg,code(e){let{gen:t,schema:r,parentSchema:n,it:s}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let o=r,a=t.let("valid",false),i=t.let("passing",null),c=t.name("_valid");e.setParams({passing:i}),t.block(u),e.result(a,()=>e.reset(),()=>e.error(true));function u(){o.forEach((d,l)=>{let h;(0, pg.alwaysValidSchema)(s,d)?t.var(c,true):h=e.subschema({keyword:"oneOf",schemaProp:l,compositeRule:true},c),l>0&&t.if((0, wn._)`${c} && ${a}`).assign(a,false).assign(i,(0, wn._)`[${i}, ${l}]`).else(),t.if(c,()=>{t.assign(a,true),t.assign(i,l),h&&e.mergeEvaluated(h,wn.Name);});});}}};_o.default=gg;});var Pu=x(Ro=>{Object.defineProperty(Ro,"__esModule",{value:true});var hg=z(),yg={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, hg.alwaysValidSchema)(n,o))return;let i=e.subschema({keyword:"allOf",schemaProp:a},s);e.ok(s),e.mergeEvaluated(i);});}};Ro.default=yg;});var Nu=x(Co=>{Object.defineProperty(Co,"__esModule",{value:true});var bn=G(),ju=z(),vg={message:({params:e})=>(0, bn.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0, bn._)`{failingKeyword: ${e.ifClause}}`},Sg={keyword:"if",schemaType:["object","boolean"],trackErrors:true,error:vg,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=Ou(n,"then"),o=Ou(n,"else");if(!s&&!o)return;let a=t.let("valid",true),i=t.name("_valid");if(c(),e.reset(),s&&o){let d=t.let("ifClause");e.setParams({ifClause:d}),t.if(i,u("then",d),u("else",d));}else s?t.if(i,u("then")):t.if((0, bn.not)(i),u("else"));e.pass(a,()=>e.error(true));function c(){let d=e.subschema({keyword:"if",compositeRule:true,createErrors:false,allErrors:false},i);e.mergeEvaluated(d);}function u(d,l){return ()=>{let h=e.subschema({keyword:d},i);t.assign(a,i),e.mergeValidEvaluated(h,a),l?t.assign(l,(0, bn._)`${d}`):e.setParams({ifClause:d});}}}};function Ou(e,t){let r=e.schema[t];return r!==void 0&&!(0, ju.alwaysValidSchema)(e,r)}Co.default=Sg;});var qu=x($o=>{Object.defineProperty($o,"__esModule",{value:true});var kg=z(),wg={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0, kg.checkStrictMode)(r,`"${e}" without "if" is ignored`);}};$o.default=wg;});var Fu=x(Eo=>{Object.defineProperty(Eo,"__esModule",{value:true});var bg=uo(),_g=pu(),Rg=co(),Cg=gu(),$g=hu(),Eg=Su(),xg=wu(),Tg=yo(),Ag=Ru(),Ig=xu(),Pg=Tu(),Og=Au(),jg=Iu(),Ng=Pu(),qg=Nu(),Fg=qu();function Dg(e=false){let t=[Pg.default,Og.default,jg.default,Ng.default,qg.default,Fg.default,xg.default,Tg.default,Eg.default,Ag.default,Ig.default];return e?t.push(_g.default,Cg.default):t.push(bg.default,Rg.default),t.push($g.default),t}Eo.default=Dg;});var Du=x(xo=>{Object.defineProperty(xo,"__esModule",{value:true});var de=G(),Mg={message:({schemaCode:e})=>(0, de.str)`must match format "${e}"`,params:({schemaCode:e})=>(0, de._)`{format: ${e}}`},Lg={keyword:"format",type:["number","string"],schemaType:"string",$data:true,error:Mg,code(e,t){let{gen:r,data:n,$data:s,schema:o,schemaCode:a,it:i}=e,{opts:c,errSchemaPath:u,schemaEnv:d,self:l}=i;if(!c.validateFormats)return;s?h():y();function h(){let f=r.scopeValue("formats",{ref:l.formats,code:c.code.formats}),p=r.const("fDef",(0, de._)`${f}[${a}]`),v=r.let("fType"),_=r.let("format");r.if((0, de._)`typeof ${p} == "object" && !(${p} instanceof RegExp)`,()=>r.assign(v,(0, de._)`${p}.type || "string"`).assign(_,(0, de._)`${p}.validate`),()=>r.assign(v,(0, de._)`"string"`).assign(_,p)),e.fail$data((0, de.or)(m(),g()));function m(){return c.strictSchema===false?de.nil:(0, de._)`${a} && !${_}`}function g(){let k=d.$async?(0, de._)`(${p}.async ? await ${_}(${n}) : ${_}(${n}))`:(0, de._)`${_}(${n})`,w=(0, de._)`(typeof ${_} == "function" ? ${k} : ${_}.test(${n}))`;return (0, de._)`${_} && ${_} !== true && ${v} === ${t} && !${w}`}}function y(){let f=l.formats[o];if(!f){m();return}if(f===true)return;let[p,v,_]=g(f);p===t&&e.pass(k());function m(){if(c.strictSchema===false){l.logger.warn(w());return}throw new Error(w());function w(){return `unknown format "${o}" ignored in schema at path "${u}"`}}function g(w){let $=w instanceof RegExp?(0, de.regexpCode)(w):c.code.formats?(0, de._)`${c.code.formats}${(0, de.getProperty)(o)}`:void 0,R=r.scopeValue("formats",{key:o,ref:w,code:$});return typeof w=="object"&&!(w instanceof RegExp)?[w.type||"string",w.validate,(0, de._)`${R}.validate`]:["string",w,R]}function k(){if(typeof f=="object"&&!(f instanceof RegExp)&&f.async){if(!d.$async)throw new Error("async format in sync schema");return (0, de._)`await ${_}(${n})`}return typeof v=="function"?(0, de._)`${_}(${n})`:(0, de._)`${_}.test(${n})`}}}};xo.default=Lg;});var Mu=x(To=>{Object.defineProperty(To,"__esModule",{value:true});var Vg=Du(),Bg=[Vg.default];To.default=Bg;});var Lu=x(Ht=>{Object.defineProperty(Ht,"__esModule",{value:true});Ht.contentVocabulary=Ht.metadataVocabulary=void 0;Ht.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Ht.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"];});var Bu=x(Ao=>{Object.defineProperty(Ao,"__esModule",{value:true});var Gg=Wi(),Kg=cu(),Ug=Fu(),Jg=Mu(),Vu=Lu(),zg=[Gg.default,Kg.default,(0, Ug.default)(),Jg.default,Vu.metadataVocabulary,Vu.contentVocabulary];Ao.default=zg;});var Ku=x(_n=>{Object.defineProperty(_n,"__esModule",{value:true});_n.DiscrError=void 0;var Gu;(function(e){e.Tag="tag",e.Mapping="mapping";})(Gu||(_n.DiscrError=Gu={}));});var Ju=x(Po=>{Object.defineProperty(Po,"__esModule",{value:true});var Wt=G(),Io=Ku(),Uu=sn(),Hg=pr(),Wg=z(),Yg={message:({params:{discrError:e,tagName:t}})=>e===Io.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0, Wt._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},Xg={keyword:"discriminator",type:"object",schemaType:"object",error:Yg,code(e){let{gen:t,data:r,schema:n,parentSchema:s,it:o}=e,{oneOf:a}=s;if(!o.opts.discriminator)throw new Error("discriminator: requires discriminator option");let i=n.propertyName;if(typeof i!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let c=t.let("valid",false),u=t.const("tag",(0, Wt._)`${r}${(0, Wt.getProperty)(i)}`);t.if((0, Wt._)`typeof ${u} == "string"`,()=>d(),()=>e.error(false,{discrError:Io.DiscrError.Tag,tag:u,tagName:i})),e.ok(c);function d(){let y=h();t.if(false);for(let f in y)t.elseIf((0, Wt._)`${u} === ${f}`),t.assign(c,l(y[f]));t.else(),e.error(false,{discrError:Io.DiscrError.Mapping,tag:u,tagName:i}),t.endIf();}function l(y){let f=t.name("valid"),p=e.subschema({keyword:"oneOf",schemaProp:y},f);return e.mergeEvaluated(p,Wt.Name),f}function h(){var y;let f={},p=_(s),v=true;for(let k=0;k<a.length;k++){let w=a[k];if(w?.$ref&&!(0, Wg.schemaHasRulesButRef)(w,o.self.RULES)){let R=w.$ref;if(w=Uu.resolveRef.call(o.self,o.schemaEnv.root,o.baseId,R),w instanceof Uu.SchemaEnv&&(w=w.schema),w===void 0)throw new Hg.default(o.opts.uriResolver,o.baseId,R)}let $=(y=w?.properties)===null||y===void 0?void 0:y[i];if(typeof $!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${i}"`);v=v&&(p||_(w)),m($,k);}if(!v)throw new Error(`discriminator: "${i}" must be required`);return f;function _({required:k}){return Array.isArray(k)&&k.includes(i)}function m(k,w){if(k.const)g(k.const,w);else if(k.enum)for(let $ of k.enum)g($,w);else throw new Error(`discriminator: "properties/${i}" must have "const" or "enum"`)}function g(k,w){if(typeof k!="string"||k in f)throw new Error(`discriminator: "${i}" values must be unique strings`);f[k]=w;}}}};Po.default=Xg;});var zu=x((Qv,Qg)=>{Qg.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:true,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:true,readOnly:{type:"boolean",default:false},examples:{type:"array",items:true},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:true},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:false},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:true,enum:{type:"array",items:true,minItems:1,uniqueItems:true},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:true}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:true};});var Wu=x((ie,Oo)=>{Object.defineProperty(ie,"__esModule",{value:true});ie.MissingRefError=ie.ValidationError=ie.CodeGen=ie.Name=ie.nil=ie.stringify=ie.str=ie._=ie.KeywordCxt=ie.Ajv=void 0;var Zg=Gi(),eh=Bu(),th=Ju(),Hu=zu(),rh=["/properties"],Rn="http://json-schema.org/draft-07/schema",Yt=class extends Zg.default{_addVocabularies(){super._addVocabularies(),eh.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(th.default);}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(Hu,rh):Hu;this.addMetaSchema(t,Rn,false),this.refs["http://json-schema.org/schema"]=Rn;}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Rn)?Rn:void 0)}};ie.Ajv=Yt;Oo.exports=ie=Yt;Oo.exports.Ajv=Yt;Object.defineProperty(ie,"__esModule",{value:true});ie.default=Yt;var nh=fr();Object.defineProperty(ie,"KeywordCxt",{enumerable:true,get:function(){return nh.KeywordCxt}});var Xt=G();Object.defineProperty(ie,"_",{enumerable:true,get:function(){return Xt._}});Object.defineProperty(ie,"str",{enumerable:true,get:function(){return Xt.str}});Object.defineProperty(ie,"stringify",{enumerable:true,get:function(){return Xt.stringify}});Object.defineProperty(ie,"nil",{enumerable:true,get:function(){return Xt.nil}});Object.defineProperty(ie,"Name",{enumerable:true,get:function(){return Xt.Name}});Object.defineProperty(ie,"CodeGen",{enumerable:true,get:function(){return Xt.CodeGen}});var sh=rn();Object.defineProperty(ie,"ValidationError",{enumerable:true,get:function(){return sh.default}});var oh=pr();Object.defineProperty(ie,"MissingRefError",{enumerable:true,get:function(){return oh.default}});});var jr="b64:";function Xc(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 Qc(e){let t=e.replace(/-/g,"+").replace(/_/g,"/")+"=".repeat((4-e.length%4)%4),r=globalThis.Buffer;if(r)return r.from(t,"base64").toString("utf8");if(typeof atob=="function"){let n=atob(t),s=new Uint8Array(n.length);for(let o=0;o<n.length;o+=1)s[o]=n.charCodeAt(o);return new TextDecoder().decode(s)}throw new Error("No base64 decoder available in this runtime")}function ue(e){return `${jr}${Xc(JSON.stringify(e))}`}function Ke(e){if(!e.startsWith(jr))throw new Error(`Invalid ref format (expected ${jr}<base64url(json)>): ${e}`);let t;try{t=JSON.parse(Qc(e.slice(jr.length)));}catch{throw new Error(`Invalid ref format (malformed base64url/json): ${e}`)}if(!t||typeof t!="object")throw new Error(`Invalid ref format (expected object payload): ${e}`);let r=t;if(typeof r.kind!="string"||typeof r.value!="string")throw new Error(`Invalid ref format (payload must contain string kind/value): ${e}`);return {kind:r.kind,value:r.value}}async function Yo(e,t,r){let n=e.tryAcquire();if(!n)return false;try{await t();}finally{n();}return r?.(),true}function _e(...e){return J__namespace.join(...e)}function ea(e){return J__namespace.isAbsolute(e)}function Fn(){return crypto.randomUUID()}function ta(e){return crypto.createHash("sha256").update(e).digest("hex")}function ra(e){return J__namespace.dirname(url.fileURLToPath(e))}function sd(e){if(typeof e=="object"&&e!==null){let{command:r,args:n=[],...s}=e,o=Qo(r,n);return {...s,command:o.command,args:o.args}}let t=na(e);if(t.length===0)throw new Error(`Empty command spec: ${JSON.stringify(e)}`);return Qo(t[0],t.slice(1))}function Qo(e,t){return /^(node|node\.exe)$/i.test(e)?{command:process.execPath,args:t}:/\.m?js$/i.test(e)?{command:process.execPath,args:[e,...t]}:{command:e,args:t}}function na(e){let t=[],r="",n=null;for(let s of e.trim()){if(n){s===n?n=null:r+=s;continue}if(s==='"'||s==="'"){n=s;continue}if(/\s/.test(s)){r&&(t.push(r),r="");continue}r+=s;}if(n)throw new Error(`Unterminated quote in command: ${e}`);return r&&t.push(r),t}function Dn(e){return process.platform==="win32"&&/\.(cmd|bat)$/i.test(e)}function sa(e,t){let{command:r,args:n=[],cwd:s,env:o,timeoutMs:a}=e;return child_process.execFileSync(r,n,{shell:Dn(r),timeout:a,encoding:t?.encoding??"utf-8",cwd:s,windowsHide:true,env:o?{...process.env,...o}:void 0,input:t?.input})}function od(e,t){let{command:r,args:n=[],cwd:s,env:o,timeoutMs:a=3e4}=e;child_process.execFile(r,n,{shell:Dn(r),encoding:"utf8",windowsHide:true,timeout:a,maxBuffer:10*1024*1024,cwd:s,env:o?{...process.env,...o}:void 0},(i,c,u)=>t(i??null,c,u));}J__namespace.join(qn__namespace.tmpdir(),".board-live-cards-git-bash-cache.json");function qr(e){let{command:t,args:r=[]}=e;if(process.platform==="win32"){child_process.spawn(t,r,{detached:true,stdio:"ignore",windowsHide:true,shell:Dn(t)}).unref();return}child_process.spawn(t,r,{detached:true,stdio:"ignore"}).unref();}function Mn(e,t,r){let n=J__namespace.join(e,"board-live-cards-cli.js");if(b__namespace.existsSync(n))return {cmd:process.execPath,args:[n,t,...r]};let s=J__namespace.join(e,"board-live-cards-cli.ts"),o=J__namespace.join(e,"..","..","node_modules","tsx","dist","cli.mjs"),a=J__namespace.join(e,"..","..","node_modules",".bin","tsx"),i=b__namespace.existsSync(o)?o:a;return b__namespace.existsSync(s)&&b__namespace.existsSync(i)?{cmd:process.execPath,args:[i,s,t,...r]}:{cmd:process.platform==="win32"?"npx.cmd":"npx",args:["tsx",s,t,...r]}}function Ln(e){let t=J__namespace.join(e,"..","..","..","dev","board-live-cards-cli.js");if(b__namespace.existsSync(t))return t;let r=J__namespace.join(e,"..","..","dev","board-live-cards-cli.js");if(b__namespace.existsSync(r))return r;let n=J__namespace.join(e,"board-live-cards-cli.js");if(b__namespace.existsSync(n))return n;throw new Error(`resolveBoardCliCallbackTarget: cannot find callback target in ${e} (expected dev/board-live-cards-cli.js wrapper or ${n})`)}function oa(e,t,r){let n=["--base-ref",ue(t)];r&&n.push("--notify-channel",r);let{cmd:s,args:o}=Mn(e,"process-accumulated-events",n);qr({command:s,args:o});}function ad(e){return process.platform==="win32"?`\\\\.\\pipe\\${e}`:J__namespace.join(qn__namespace.tmpdir(),`${e}.sock`)}var Nr=new Map;function aa(e,t,r){if(t.length===0)return;let n=t.map(i=>JSON.stringify(i)).join(`
8
+ deps: ${r}}`};var Zm={keyword:"dependencies",type:"object",schemaType:"object",error:He.error,code(e){let[t,r]=eg(e);yu(e,t),vu(e,r);}};function eg({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let s=Array.isArray(e[n])?t:r;s[n]=e[n];}return [t,r]}function yu(e,t=e.schema){let{gen:r,data:n,it:s}=e;if(Object.keys(t).length===0)return;let o=r.let("missing");for(let a in t){let i=t[a];if(i.length===0)continue;let c=(0, $r.propertyInData)(r,n,a,s.opts.ownProperties);e.setParams({property:a,depsCount:i.length,deps:i.join(", ")}),s.allErrors?r.if(c,()=>{for(let u of i)(0, $r.checkReportMissingProp)(e,u);}):(r.if((0, mo._)`${c} && (${(0, $r.checkMissingProp)(e,i,o)})`),(0, $r.reportMissingProp)(e,o),r.else());}}He.validatePropertyDeps=yu;function vu(e,t=e.schema){let{gen:r,data:n,keyword:s,it:o}=e,a=r.name("valid");for(let i in t)(0, Qm.alwaysValidSchema)(o,t[i])||(r.if((0, $r.propertyInData)(r,n,i,o.opts.ownProperties),()=>{let c=e.subschema({keyword:s,schemaProp:i},a);e.mergeValidEvaluated(c,a);},()=>r.var(a,true)),e.ok(a));}He.validateSchemaDeps=vu;He.default=Zm;});var ku=x(go=>{Object.defineProperty(go,"__esModule",{value:true});var wu=G(),tg=z(),rg={message:"property name must be valid",params:({params:e})=>(0, wu._)`{propertyName: ${e.propertyName}}`},ng={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:rg,code(e){let{gen:t,schema:r,data:n,it:s}=e;if((0, tg.alwaysValidSchema)(s,r))return;let o=t.name("valid");t.forIn("key",n,a=>{e.setParams({propertyName:a}),e.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:true},o),t.if((0, wu.not)(o),()=>{e.error(true),s.allErrors||t.break();});}),e.ok(o);}};go.default=ng;});var yo=x(ho=>{Object.defineProperty(ho,"__esModule",{value:true});var vn=je(),Ge=G(),sg=Ze(),Sn=z(),og={message:"must NOT have additional properties",params:({params:e})=>(0, Ge._)`{additionalProperty: ${e.additionalProperty}}`},ag={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:true,trackErrors:true,error:og,code(e){let{gen:t,schema:r,parentSchema:n,data:s,errsCount:o,it:a}=e;if(!o)throw new Error("ajv implementation error");let{allErrors:i,opts:c}=a;if(a.props=true,c.removeAdditional!=="all"&&(0, Sn.alwaysValidSchema)(a,r))return;let u=(0, vn.allSchemaProperties)(n.properties),d=(0, vn.allSchemaProperties)(n.patternProperties);l(),e.ok((0, Ge._)`${o} === ${sg.default.errors}`);function l(){t.forIn("key",s,v=>{!u.length&&!d.length?f(v):t.if(h(v),()=>f(v));});}function h(v){let _;if(u.length>8){let m=(0, Sn.schemaRefOrVal)(a,n.properties,"properties");_=(0, vn.isOwnProperty)(t,m,v);}else u.length?_=(0, Ge.or)(...u.map(m=>(0, Ge._)`${v} === ${m}`)):_=Ge.nil;return d.length&&(_=(0, Ge.or)(_,...d.map(m=>(0, Ge._)`${(0, vn.usePattern)(e,m)}.test(${v})`))),(0, Ge.not)(_)}function y(v){t.code((0, Ge._)`delete ${s}[${v}]`);}function f(v){if(c.removeAdditional==="all"||c.removeAdditional&&r===false){y(v);return}if(r===false){e.setParams({additionalProperty:v}),e.error(),i||t.break();return}if(typeof r=="object"&&!(0, Sn.alwaysValidSchema)(a,r)){let _=t.name("valid");c.removeAdditional==="failing"?(p(v,_,false),t.if((0, Ge.not)(_),()=>{e.reset(),y(v);})):(p(v,_),i||t.if((0, Ge.not)(_),()=>t.break()));}}function p(v,_,m){let g={keyword:"additionalProperties",dataProp:v,dataPropType:Sn.Type.Str};m===false&&Object.assign(g,{compositeRule:true,createErrors:false,allErrors:false}),e.subschema(g,_);}}};ho.default=ag;});var Ru=x(So=>{Object.defineProperty(So,"__esModule",{value:true});var ig=fr(),bu=je(),vo=z(),_u=yo(),ug={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:s,it:o}=e;o.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&_u.default.code(new ig.KeywordCxt(o,_u.default,"additionalProperties"));let a=(0, bu.allSchemaProperties)(r);for(let l of a)o.definedProperties.add(l);o.opts.unevaluated&&a.length&&o.props!==true&&(o.props=vo.mergeEvaluated.props(t,(0, vo.toHash)(a),o.props));let i=a.filter(l=>!(0, vo.alwaysValidSchema)(o,r[l]));if(i.length===0)return;let c=t.name("valid");for(let l of i)u(l)?d(l):(t.if((0, bu.propertyInData)(t,s,l,o.opts.ownProperties)),d(l),o.allErrors||t.else().var(c,true),t.endIf()),e.it.definedProperties.add(l),e.ok(c);function u(l){return o.opts.useDefaults&&!o.compositeRule&&r[l].default!==void 0}function d(l){e.subschema({keyword:"properties",schemaProp:l,dataProp:l},c);}}};So.default=ug;});var xu=x(wo=>{Object.defineProperty(wo,"__esModule",{value:true});var Cu=je(),wn=G(),$u=z(),Eu=z(),cg={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:s,it:o}=e,{opts:a}=o,i=(0, Cu.allSchemaProperties)(r),c=i.filter(p=>(0, $u.alwaysValidSchema)(o,r[p]));if(i.length===0||c.length===i.length&&(!o.opts.unevaluated||o.props===true))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,d=t.name("valid");o.props!==true&&!(o.props instanceof wn.Name)&&(o.props=(0, Eu.evaluatedPropsToName)(t,o.props));let{props:l}=o;h();function h(){for(let p of i)u&&y(p),o.allErrors?f(p):(t.var(d,true),f(p),t.if(d));}function y(p){for(let v in u)new RegExp(p).test(v)&&(0, $u.checkStrictMode)(o,`property ${v} matches pattern ${p} (use allowMatchingProperties)`);}function f(p){t.forIn("key",n,v=>{t.if((0, wn._)`${(0, Cu.usePattern)(e,p)}.test(${v})`,()=>{let _=c.includes(p);_||e.subschema({keyword:"patternProperties",schemaProp:p,dataProp:v,dataPropType:Eu.Type.Str},d),o.opts.unevaluated&&l!==true?t.assign((0, wn._)`${l}[${v}]`,true):!_&&!o.allErrors&&t.if((0, wn.not)(d),()=>t.break());});});}}};wo.default=cg;});var Tu=x(ko=>{Object.defineProperty(ko,"__esModule",{value:true});var dg=z(),lg={keyword:"not",schemaType:["object","boolean"],trackErrors:true,code(e){let{gen:t,schema:r,it:n}=e;if((0, dg.alwaysValidSchema)(n,r)){e.fail();return}let s=t.name("valid");e.subschema({keyword:"not",compositeRule:true,createErrors:false,allErrors:false},s),e.failResult(s,()=>e.reset(),()=>e.error());},error:{message:"must NOT be valid"}};ko.default=lg;});var Au=x(bo=>{Object.defineProperty(bo,"__esModule",{value:true});var fg=je(),pg={keyword:"anyOf",schemaType:"array",trackErrors:true,code:fg.validateUnion,error:{message:"must match a schema in anyOf"}};bo.default=pg;});var Iu=x(_o=>{Object.defineProperty(_o,"__esModule",{value:true});var kn=G(),mg=z(),gg={message:"must match exactly one schema in oneOf",params:({params:e})=>(0, kn._)`{passingSchemas: ${e.passing}}`},hg={keyword:"oneOf",schemaType:"array",trackErrors:true,error:gg,code(e){let{gen:t,schema:r,parentSchema:n,it:s}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let o=r,a=t.let("valid",false),i=t.let("passing",null),c=t.name("_valid");e.setParams({passing:i}),t.block(u),e.result(a,()=>e.reset(),()=>e.error(true));function u(){o.forEach((d,l)=>{let h;(0, mg.alwaysValidSchema)(s,d)?t.var(c,true):h=e.subschema({keyword:"oneOf",schemaProp:l,compositeRule:true},c),l>0&&t.if((0, kn._)`${c} && ${a}`).assign(a,false).assign(i,(0, kn._)`[${i}, ${l}]`).else(),t.if(c,()=>{t.assign(a,true),t.assign(i,l),h&&e.mergeEvaluated(h,kn.Name);});});}}};_o.default=hg;});var Ou=x(Ro=>{Object.defineProperty(Ro,"__esModule",{value:true});var yg=z(),vg={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=t.name("valid");r.forEach((o,a)=>{if((0, yg.alwaysValidSchema)(n,o))return;let i=e.subschema({keyword:"allOf",schemaProp:a},s);e.ok(s),e.mergeEvaluated(i);});}};Ro.default=vg;});var Nu=x(Co=>{Object.defineProperty(Co,"__esModule",{value:true});var bn=G(),ju=z(),Sg={message:({params:e})=>(0, bn.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0, bn._)`{failingKeyword: ${e.ifClause}}`},wg={keyword:"if",schemaType:["object","boolean"],trackErrors:true,error:Sg,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0, ju.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=Pu(n,"then"),o=Pu(n,"else");if(!s&&!o)return;let a=t.let("valid",true),i=t.name("_valid");if(c(),e.reset(),s&&o){let d=t.let("ifClause");e.setParams({ifClause:d}),t.if(i,u("then",d),u("else",d));}else s?t.if(i,u("then")):t.if((0, bn.not)(i),u("else"));e.pass(a,()=>e.error(true));function c(){let d=e.subschema({keyword:"if",compositeRule:true,createErrors:false,allErrors:false},i);e.mergeEvaluated(d);}function u(d,l){return ()=>{let h=e.subschema({keyword:d},i);t.assign(a,i),e.mergeValidEvaluated(h,a),l?t.assign(l,(0, bn._)`${d}`):e.setParams({ifClause:d});}}}};function Pu(e,t){let r=e.schema[t];return r!==void 0&&!(0, ju.alwaysValidSchema)(e,r)}Co.default=wg;});var qu=x($o=>{Object.defineProperty($o,"__esModule",{value:true});var kg=z(),bg={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0, kg.checkStrictMode)(r,`"${e}" without "if" is ignored`);}};$o.default=bg;});var Fu=x(Eo=>{Object.defineProperty(Eo,"__esModule",{value:true});var _g=uo(),Rg=pu(),Cg=co(),$g=gu(),Eg=hu(),xg=Su(),Tg=ku(),Ag=yo(),Ig=Ru(),Og=xu(),Pg=Tu(),jg=Au(),Ng=Iu(),qg=Ou(),Fg=Nu(),Dg=qu();function Mg(e=false){let t=[Pg.default,jg.default,Ng.default,qg.default,Fg.default,Dg.default,Tg.default,Ag.default,xg.default,Ig.default,Og.default];return e?t.push(Rg.default,$g.default):t.push(_g.default,Cg.default),t.push(Eg.default),t}Eo.default=Mg;});var Du=x(xo=>{Object.defineProperty(xo,"__esModule",{value:true});var de=G(),Lg={message:({schemaCode:e})=>(0, de.str)`must match format "${e}"`,params:({schemaCode:e})=>(0, de._)`{format: ${e}}`},Vg={keyword:"format",type:["number","string"],schemaType:"string",$data:true,error:Lg,code(e,t){let{gen:r,data:n,$data:s,schema:o,schemaCode:a,it:i}=e,{opts:c,errSchemaPath:u,schemaEnv:d,self:l}=i;if(!c.validateFormats)return;s?h():y();function h(){let f=r.scopeValue("formats",{ref:l.formats,code:c.code.formats}),p=r.const("fDef",(0, de._)`${f}[${a}]`),v=r.let("fType"),_=r.let("format");r.if((0, de._)`typeof ${p} == "object" && !(${p} instanceof RegExp)`,()=>r.assign(v,(0, de._)`${p}.type || "string"`).assign(_,(0, de._)`${p}.validate`),()=>r.assign(v,(0, de._)`"string"`).assign(_,p)),e.fail$data((0, de.or)(m(),g()));function m(){return c.strictSchema===false?de.nil:(0, de._)`${a} && !${_}`}function g(){let w=d.$async?(0, de._)`(${p}.async ? await ${_}(${n}) : ${_}(${n}))`:(0, de._)`${_}(${n})`,k=(0, de._)`(typeof ${_} == "function" ? ${w} : ${_}.test(${n}))`;return (0, de._)`${_} && ${_} !== true && ${v} === ${t} && !${k}`}}function y(){let f=l.formats[o];if(!f){m();return}if(f===true)return;let[p,v,_]=g(f);p===t&&e.pass(w());function m(){if(c.strictSchema===false){l.logger.warn(k());return}throw new Error(k());function k(){return `unknown format "${o}" ignored in schema at path "${u}"`}}function g(k){let $=k instanceof RegExp?(0, de.regexpCode)(k):c.code.formats?(0, de._)`${c.code.formats}${(0, de.getProperty)(o)}`:void 0,R=r.scopeValue("formats",{key:o,ref:k,code:$});return typeof k=="object"&&!(k instanceof RegExp)?[k.type||"string",k.validate,(0, de._)`${R}.validate`]:["string",k,R]}function w(){if(typeof f=="object"&&!(f instanceof RegExp)&&f.async){if(!d.$async)throw new Error("async format in sync schema");return (0, de._)`await ${_}(${n})`}return typeof v=="function"?(0, de._)`${_}(${n})`:(0, de._)`${_}.test(${n})`}}}};xo.default=Vg;});var Mu=x(To=>{Object.defineProperty(To,"__esModule",{value:true});var Bg=Du(),Gg=[Bg.default];To.default=Gg;});var Lu=x(Ht=>{Object.defineProperty(Ht,"__esModule",{value:true});Ht.contentVocabulary=Ht.metadataVocabulary=void 0;Ht.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Ht.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"];});var Bu=x(Ao=>{Object.defineProperty(Ao,"__esModule",{value:true});var Kg=Wi(),Ug=cu(),Jg=Fu(),zg=Mu(),Vu=Lu(),Hg=[Kg.default,Ug.default,(0, Jg.default)(),zg.default,Vu.metadataVocabulary,Vu.contentVocabulary];Ao.default=Hg;});var Ku=x(_n=>{Object.defineProperty(_n,"__esModule",{value:true});_n.DiscrError=void 0;var Gu;(function(e){e.Tag="tag",e.Mapping="mapping";})(Gu||(_n.DiscrError=Gu={}));});var Ju=x(Oo=>{Object.defineProperty(Oo,"__esModule",{value:true});var Wt=G(),Io=Ku(),Uu=sn(),Wg=pr(),Yg=z(),Xg={message:({params:{discrError:e,tagName:t}})=>e===Io.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0, Wt._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},Qg={keyword:"discriminator",type:"object",schemaType:"object",error:Xg,code(e){let{gen:t,data:r,schema:n,parentSchema:s,it:o}=e,{oneOf:a}=s;if(!o.opts.discriminator)throw new Error("discriminator: requires discriminator option");let i=n.propertyName;if(typeof i!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let c=t.let("valid",false),u=t.const("tag",(0, Wt._)`${r}${(0, Wt.getProperty)(i)}`);t.if((0, Wt._)`typeof ${u} == "string"`,()=>d(),()=>e.error(false,{discrError:Io.DiscrError.Tag,tag:u,tagName:i})),e.ok(c);function d(){let y=h();t.if(false);for(let f in y)t.elseIf((0, Wt._)`${u} === ${f}`),t.assign(c,l(y[f]));t.else(),e.error(false,{discrError:Io.DiscrError.Mapping,tag:u,tagName:i}),t.endIf();}function l(y){let f=t.name("valid"),p=e.subschema({keyword:"oneOf",schemaProp:y},f);return e.mergeEvaluated(p,Wt.Name),f}function h(){var y;let f={},p=_(s),v=true;for(let w=0;w<a.length;w++){let k=a[w];if(k?.$ref&&!(0, Yg.schemaHasRulesButRef)(k,o.self.RULES)){let R=k.$ref;if(k=Uu.resolveRef.call(o.self,o.schemaEnv.root,o.baseId,R),k instanceof Uu.SchemaEnv&&(k=k.schema),k===void 0)throw new Wg.default(o.opts.uriResolver,o.baseId,R)}let $=(y=k?.properties)===null||y===void 0?void 0:y[i];if(typeof $!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${i}"`);v=v&&(p||_(k)),m($,w);}if(!v)throw new Error(`discriminator: "${i}" must be required`);return f;function _({required:w}){return Array.isArray(w)&&w.includes(i)}function m(w,k){if(w.const)g(w.const,k);else if(w.enum)for(let $ of w.enum)g($,k);else throw new Error(`discriminator: "properties/${i}" must have "const" or "enum"`)}function g(w,k){if(typeof w!="string"||w in f)throw new Error(`discriminator: "${i}" values must be unique strings`);f[w]=k;}}}};Oo.default=Qg;});var zu=x((Zv,Zg)=>{Zg.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:true,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:true,readOnly:{type:"boolean",default:false},examples:{type:"array",items:true},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:true},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:false},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:true,enum:{type:"array",items:true,minItems:1,uniqueItems:true},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:true}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:true};});var Wu=x((ie,Po)=>{Object.defineProperty(ie,"__esModule",{value:true});ie.MissingRefError=ie.ValidationError=ie.CodeGen=ie.Name=ie.nil=ie.stringify=ie.str=ie._=ie.KeywordCxt=ie.Ajv=void 0;var eh=Gi(),th=Bu(),rh=Ju(),Hu=zu(),nh=["/properties"],Rn="http://json-schema.org/draft-07/schema",Yt=class extends eh.default{_addVocabularies(){super._addVocabularies(),th.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(rh.default);}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(Hu,nh):Hu;this.addMetaSchema(t,Rn,false),this.refs["http://json-schema.org/schema"]=Rn;}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Rn)?Rn:void 0)}};ie.Ajv=Yt;Po.exports=ie=Yt;Po.exports.Ajv=Yt;Object.defineProperty(ie,"__esModule",{value:true});ie.default=Yt;var sh=fr();Object.defineProperty(ie,"KeywordCxt",{enumerable:true,get:function(){return sh.KeywordCxt}});var Xt=G();Object.defineProperty(ie,"_",{enumerable:true,get:function(){return Xt._}});Object.defineProperty(ie,"str",{enumerable:true,get:function(){return Xt.str}});Object.defineProperty(ie,"stringify",{enumerable:true,get:function(){return Xt.stringify}});Object.defineProperty(ie,"nil",{enumerable:true,get:function(){return Xt.nil}});Object.defineProperty(ie,"Name",{enumerable:true,get:function(){return Xt.Name}});Object.defineProperty(ie,"CodeGen",{enumerable:true,get:function(){return Xt.CodeGen}});var oh=rn();Object.defineProperty(ie,"ValidationError",{enumerable:true,get:function(){return oh.default}});var ah=pr();Object.defineProperty(ie,"MissingRefError",{enumerable:true,get:function(){return ah.default}});});var jr="b64:";function Qc(e){let t=new TextEncoder().encode(e),r=globalThis.Buffer,n;if(r)n=r.from(t).toString("base64");else if(typeof btoa=="function"){let s="";for(let o of t)s+=String.fromCharCode(o);n=btoa(s);}else throw new Error("No base64 encoder available in this runtime");return n.replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}function Zc(e){let t=e.replace(/-/g,"+").replace(/_/g,"/")+"=".repeat((4-e.length%4)%4),r=globalThis.Buffer;if(r)return r.from(t,"base64").toString("utf8");if(typeof atob=="function"){let n=atob(t),s=new Uint8Array(n.length);for(let o=0;o<n.length;o+=1)s[o]=n.charCodeAt(o);return new TextDecoder().decode(s)}throw new Error("No base64 decoder available in this runtime")}function ue(e){return `${jr}${Qc(JSON.stringify(e))}`}function Ke(e){if(!e.startsWith(jr))throw new Error(`Invalid ref format (expected ${jr}<base64url(json)>): ${e}`);let t;try{t=JSON.parse(Zc(e.slice(jr.length)));}catch{throw new Error(`Invalid ref format (malformed base64url/json): ${e}`)}if(!t||typeof t!="object")throw new Error(`Invalid ref format (expected object payload): ${e}`);let r=t;if(typeof r.kind!="string"||typeof r.value!="string")throw new Error(`Invalid ref format (payload must contain string kind/value): ${e}`);return {kind:r.kind,value:r.value}}async function Yo(e,t,r){let n=e.tryAcquire();if(!n)return false;try{await t();}finally{n();}return r?.(),true}function _e(...e){return J__namespace.join(...e)}function ea(e){return J__namespace.isAbsolute(e)}function Fn(){return crypto.randomUUID()}function ta(e){return crypto.createHash("sha256").update(e).digest("hex")}function ra(e){return J__namespace.dirname(url.fileURLToPath(e))}function od(e){if(typeof e=="object"&&e!==null){let{command:r,args:n=[],...s}=e,o=Qo(r,n);return {...s,command:o.command,args:o.args}}let t=na(e);if(t.length===0)throw new Error(`Empty command spec: ${JSON.stringify(e)}`);return Qo(t[0],t.slice(1))}function Qo(e,t){return /^(node|node\.exe)$/i.test(e)?{command:process.execPath,args:t}:/\.m?js$/i.test(e)?{command:process.execPath,args:[e,...t]}:{command:e,args:t}}function na(e){let t=[],r="",n=null;for(let s of e.trim()){if(n){s===n?n=null:r+=s;continue}if(s==='"'||s==="'"){n=s;continue}if(/\s/.test(s)){r&&(t.push(r),r="");continue}r+=s;}if(n)throw new Error(`Unterminated quote in command: ${e}`);return r&&t.push(r),t}function Dn(e){return process.platform==="win32"&&/\.(cmd|bat)$/i.test(e)}function sa(e,t){let{command:r,args:n=[],cwd:s,env:o,timeoutMs:a}=e;return child_process.execFileSync(r,n,{shell:Dn(r),timeout:a,encoding:t?.encoding??"utf-8",cwd:s,windowsHide:true,env:o?{...process.env,...o}:void 0,input:t?.input})}function ad(e,t){let{command:r,args:n=[],cwd:s,env:o,timeoutMs:a=3e4}=e;child_process.execFile(r,n,{shell:Dn(r),encoding:"utf8",windowsHide:true,timeout:a,maxBuffer:10*1024*1024,cwd:s,env:o?{...process.env,...o}:void 0},(i,c,u)=>t(i??null,c,u));}J__namespace.join(qn__namespace.tmpdir(),".board-live-cards-git-bash-cache.json");function qr(e){let{command:t,args:r=[]}=e;if(process.platform==="win32"){child_process.spawn(t,r,{detached:true,stdio:"ignore",windowsHide:true,shell:Dn(t)}).unref();return}child_process.spawn(t,r,{detached:true,stdio:"ignore"}).unref();}function Mn(e,t,r){let n=J__namespace.join(e,"board-live-cards-cli.js");if(b__namespace.existsSync(n))return {cmd:process.execPath,args:[n,t,...r]};let s=J__namespace.join(e,"board-live-cards-cli.ts"),o=J__namespace.join(e,"..","..","node_modules","tsx","dist","cli.mjs"),a=J__namespace.join(e,"..","..","node_modules",".bin","tsx"),i=b__namespace.existsSync(o)?o:a;return b__namespace.existsSync(s)&&b__namespace.existsSync(i)?{cmd:process.execPath,args:[i,s,t,...r]}:{cmd:process.platform==="win32"?"npx.cmd":"npx",args:["tsx",s,t,...r]}}function Ln(e){let t=J__namespace.join(e,"..","..","..","dev","board-live-cards-cli.js");if(b__namespace.existsSync(t))return t;let r=J__namespace.join(e,"..","..","dev","board-live-cards-cli.js");if(b__namespace.existsSync(r))return r;let n=J__namespace.join(e,"board-live-cards-cli.js");if(b__namespace.existsSync(n))return n;throw new Error(`resolveBoardCliCallbackTarget: cannot find callback target in ${e} (expected dev/board-live-cards-cli.js wrapper or ${n})`)}function oa(e,t,r){let n=["--base-ref",ue(t)];r&&n.push("--notify-channel",r);let{cmd:s,args:o}=Mn(e,"process-accumulated-events",n);qr({command:s,args:o});}function id(e){return process.platform==="win32"?`\\\\.\\pipe\\${e}`:J__namespace.join(qn__namespace.tmpdir(),`${e}.sock`)}var Nr=new Map;function aa(e,t,r){if(t.length===0)return;let n=t.map(i=>JSON.stringify(i)).join(`
9
9
  `)+`
10
- `,s=Nr.get(e);if(s&&!s.socket.destroyed){s.ready?s.socket.write(n):s.queue.push(n);return}let o=ad(e),a=Zo__namespace.createConnection(o);s={socket:a,ready:false,queue:[n]},Nr.set(e,s),a.on("connect",()=>{s.ready=true;for(let i of s.queue)a.write(i);s.queue.length=0;}),a.on("error",i=>{r?.(`[named-pipe publish] ${o}: ${i instanceof Error?i.message:String(i)}`),Nr.delete(e);}),a.on("close",()=>{Nr.delete(e);});}function Fr(){return {executeSync(e,t,r){return sa({command:e,args:t,cwd:r?.cwd,timeoutMs:r?.timeout,env:r?.env},{encoding:r?.encoding,input:r?.input})},executeAsync(e,t,r){od({command:e,args:t},r);},resolveInvocation(e,t){let r=sd({command:e,args:t});return {cmd:r.command,args:r.args??[]}},splitCommand:na,spawnDetached(e,t){qr({command:e,args:t});}}}var ua=J.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)))),ld=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 fd(){let e=J.resolve(ua,"./jsonata-sync.cjs");return b.existsSync(e)?e:J.resolve(ua,"../../card-compute/jsonata-sync.cjs")}var kt=ld(fd());function Vn(e,t,r){if(!e||typeof e!="object")return {};let n={};if(Array.isArray(e.cmdTemplate)){let s=[];for(let o of e.cmdTemplate)try{s.push(String(kt(o).evaluate(t)));}catch(a){let i=a instanceof Error?a.message:String(a);throw new Error(`[${r}] argsMassaging.cmdTemplate failed on "${o}": ${i}`)}n.cmdArgs=s;}if(typeof e.stdinTemplate=="string")try{n.stdin=kt(e.stdinTemplate).evaluate(t);}catch(s){let o=s instanceof Error?s.message:String(s);throw new Error(`[${r}] argsMassaging.stdinTemplate failed: ${o}`)}if(typeof e.urlTemplate=="string")try{n.url=String(kt(e.urlTemplate).evaluate(t));}catch(s){let o=s instanceof Error?s.message:String(s);throw new Error(`[${r}] argsMassaging.urlTemplate failed: ${o}`)}if(typeof e.headerTemplate=="string")try{let s=kt(e.headerTemplate).evaluate(t);if(typeof s!="object"||s===null)throw new Error(`headerTemplate must produce an object, got: ${JSON.stringify(s)}`);n.headers=s;}catch(s){let o=s instanceof Error?s.message:String(s);throw new Error(`[${r}] argsMassaging.headerTemplate failed: ${o}`)}if(typeof e.bodyTemplate=="string")try{n.body=kt(e.bodyTemplate).evaluate(t);}catch(s){let o=s instanceof Error?s.message:String(s);throw new Error(`[${r}] argsMassaging.bodyTemplate failed: ${o}`)}return n}var md=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 gd(e){return typeof e=="object"?e:Ke(e)}function da(e){let t=J__namespace.basename(String(e||"").trim());if(!t)throw new Error(`resolveYamlFlowCliPath: expected non-empty cli file name, got ${JSON.stringify(e)}`);let r=J__namespace.dirname(md.resolve("yaml-flow/package.json")),n=J__namespace.join(r,"cli","node",t);if(!b__namespace.existsSync(n))throw new Error(`resolveYamlFlowCliPath: could not find ${t} under ${J__namespace.join(r,"cli","node")}`);return n}function Me(e){let t=gd(e);return t.kind==="yaml-flow-cli"?da(t.value):t.value}function hd(e,t){let r=Me(e);switch(r){case "source-cli-task-executor":{let n=J__namespace.join(t,"source-cli-task-executor.js");if(b__namespace.existsSync(n))return {command:process.execPath,args:[n]};let s=J__namespace.join(t,"source-cli-task-executor.ts"),o=J__namespace.join(t,"..","..","node_modules","tsx","dist","cli.mjs"),a=J__namespace.join(t,"..","..","node_modules",".bin","tsx"),i=b__namespace.existsSync(o)?o:a;return b__namespace.existsSync(s)&&b__namespace.existsSync(i)?{command:process.execPath,args:[i,s]}:{command:process.execPath,args:[n]}}case "board-live-cards":{let{cmd:n,args:s}=Mn(t,"_",[]);return {command:n,args:s}}default:throw new Error(`resolveBuiltIn: unknown built-in name "${r}". Supported: source-cli-task-executor, board-live-cards`)}}function la(e,t){if(e.howToRun==="built-in"){let{command:n,args:s}=hd(e.whatToRun,t);return {command:n,baseArgs:s}}let r=(typeof e.whatToRun=="object",Me(e.whatToRun));switch(e.howToRun){case "local-node":return {command:process.execPath,baseArgs:[r]};case "local-python":return {command:process.platform==="win32"?"python":"python3",baseArgs:[r]};case "local-process":return {command:r,baseArgs:[]};default:throw new Error(`resolveBaseInvocation: howToRun "${e.howToRun}" is not a local transport`)}}function yd(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 vd(e,t){return {subcommand:e.subcommand,...e.inRef?{inRef:e.inRef}:{},...e.outRef?{outRef:e.outRef}:{},...e.errRef?{errRef:e.errRef}:{},...t?{extra:t}:{}}}function Dr(e,t){return la(e,t)}function fa(e){let t=e.trim();if(!t)throw new Error("empty stdout");try{return JSON.parse(t)}catch{let r=t.split(/\r?\n/).filter(Boolean),n=r[r.length-1];return JSON.parse(n)}}function pa(e,t){return {...t,whatToRun:Me(e.whatToRun),...e.extra?{extra:e.extra}:{}}}function Bn(e,t,r="invokeExecutionRef"){return Vn(e,t,r)}function ma(e){return e&&typeof e=="object"&&!Array.isArray(e)&&typeof e.result=="string"&&e.data&&typeof e.data=="object"&&!Array.isArray(e.data)?e:{result:"success",data:e&&typeof e=="object"&&!Array.isArray(e)?e:{stdout:e}}}function ot(e){return {result:"failure",data:{error:e}}}function st(e,t,r){let n=r?.label??"invokeExecutionRefSync",s=r?.cliDir??r?.cwd??process.cwd(),o;try{o=Bn(e.argsMassaging,pa(e,t),n);}catch(l){let h=l instanceof Error?l.message:String(l);return ot(h)}let a;try{a=Dr(e,s);}catch(l){let h=l instanceof Error?l.message:String(l);return ot(`[${n}] ref resolution failed: ${h}`)}let i=[...a.baseArgs,...o.cmdArgs??[]],c=JSON.stringify(o.stdin??t),u=Fr(),d;try{d=u.executeSync(a.command,i,{timeout:r?.timeoutMs??3e4,encoding:"utf-8",cwd:r?.cwd,input:c});}catch(l){let h=l,y=(h.stderr?String(h.stderr):"").trim(),f=typeof h.status=="number"?h.status:"unknown",p=y||h.message;return ot(`[${n}] ref exited with status ${f}${p?`: ${p}`:""}`)}try{return ma(fa(d))}catch{return {result:"success",data:{stdout:d.trim()}}}}async function ca(e,t,r){let n=r?.label??"invokeExecutionRef",s;try{s=Bn(e.argsMassaging,pa(e,t),n);}catch(u){let d=u instanceof Error?u.message:String(u);return ot(d)}let o=Me(e.whatToRun),a=s.headers?{"Content-Type":"application/json",...s.headers}:{"Content-Type":"application/json"},i=s.url??o,c;if(e.howToRun==="http:get"){let u=s.body&&typeof s.body=="object"&&!Array.isArray(s.body)?s.body:t,d=new URLSearchParams(Object.entries(u).filter(([,l])=>l!=null).map(([l,h])=>[l,String(h)]));d.size>0&&(i=`${i}${i.includes("?")?"&":"?"}${d.toString()}`);}else c=JSON.stringify(s.body??t);try{let u=await fetch(i,{method:e.howToRun==="http:get"?"GET":"POST",headers:a,body:c});if(!u.ok){let l=await u.text().catch(()=>"");return ot(`[${n}] HTTP ${u.status}${l?`: ${l}`:""}`)}let d=await u.text();if(!d.trim())return {result:"success",data:{}};try{return ma(fa(d))}catch{return {result:"success",data:{stdout:d.trim()}}}}catch(u){let d=u instanceof Error?u.message:String(u);return ot(`[${n}] ${d}`)}}var Sd={"local-node":async(e,t,r)=>st(e,t,r),"local-python":async(e,t,r)=>st(e,t,r),"local-process":async(e,t,r)=>st(e,t,r),"built-in":async(e,t,r)=>st(e,t,r),"http:post":ca,"http:get":ca},kd={"local-node":st,"local-python":st,"local-process":st,"built-in":st};async function ga(e,t,r){let n=r?.transports?.[e.howToRun]??Sd[e.howToRun];return n?n(e,t,r):ot(`[${r?.label??"invokeExecutionRef"}] unsupported howToRun: ${e.howToRun}`)}function Gn(e,t,r){let n=r?.syncTransports?.[e.howToRun]??kd[e.howToRun];return n?n(e,t,r):ot(`[${r?.label??"invokeExecutionRefSync"}] unsupported sync howToRun: ${e.howToRun}`)}function wd(e){return {invoke(t,r){return ga(t,r,e)},invokeSync(t,r){return Gn(t,r,e)}}}function bd(e,t,r){return Gn(e,t,r)}async function _d(e,t){let r={...t,whatToRun:Me(e.whatToRun)},n=Vn(e.argsMassaging,r,"_invokeTaskExecutorHttp"),s=n.url??Me(e.whatToRun),o=n.body?n.body:vd(t,e.extra),a={"Content-Type":"application/json"},i=n.headers?{...a,...n.headers}:a,c=await fetch(s,{method:e.howToRun==="http:get"?"GET":"POST",headers:i,body:JSON.stringify(o)});if(!c.ok){let d=await c.text().catch(()=>"");return {status:"error",error:`HTTP ${c.status}: ${d}`}}let u=await c.json().catch(()=>null);return u&&typeof u.status=="string"?u:{status:"success"}}function ha(e,t,r){if(e.howToRun==="http:post"||e.howToRun==="http:get"){_d(e,t).catch(i=>{console.error(`[dispatchTaskExecutorDetached] HTTP dispatch failed: ${i.message}`);});return}let{command:s,baseArgs:o}=la(e,r),a=yd(t,e.extra);qr({command:s,args:[...o,...a]});}function Ye(e,t){if(process.platform!=="win32"){b__namespace.renameSync(e,t);return}let r=[10,20,40,80,160];for(let n=0;n<=r.length;n++)try{b__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 qt(e){function t(s){return J__namespace.join(e,...s.split("/"))}function r(s){return J__namespace.relative(e,s).replace(/\\/g,"/")}function n(s,o){if(b__namespace.existsSync(s))for(let a of b__namespace.readdirSync(s,{withFileTypes:true})){let i=J__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(!b__namespace.existsSync(o))return null;try{return b__namespace.readFileSync(o,"utf-8")}catch{return null}},write(s,o){let a=t(s),i=`${a}.${process.pid}.${crypto.randomUUID()}.tmp`;b__namespace.mkdirSync(J__namespace.dirname(a),{recursive:true}),b__namespace.writeFileSync(i,o,"utf-8"),Ye(i,a);},exists(s){return b__namespace.existsSync(t(s))},remove(s){let o=t(s);try{b__namespace.existsSync(o)&&b__namespace.unlinkSync(o);}catch{}},readBytes(s){let o=t(s);if(!b__namespace.existsSync(o))return null;try{return new Uint8Array(b__namespace.readFileSync(o))}catch{return null}},writeBytes(s,o){let a=t(s),i=`${a}.${process.pid}.${crypto.randomUUID()}.tmp`;b__namespace.mkdirSync(J__namespace.dirname(a),{recursive:true}),b__namespace.writeFileSync(i,Buffer.from(o)),Ye(i,a);},listKeys(s){let o=[];n(e,o);let a=o.sort();return s?a.filter(i=>i.startsWith(s)):a},stat(s){let o=t(s);if(!b__namespace.existsSync(o))return null;try{let a=b__namespace.statSync(o);return {key:s,size:Number(a.size||0),updatedAt:new Date(a.mtimeMs).toISOString()}}catch{return null}}}}function zn(){return {read(e){if(!b__namespace.existsSync(e))return null;try{return b__namespace.readFileSync(e,"utf-8")}catch{return null}},write(e,t){let r=`${e}.${process.pid}.${crypto.randomUUID()}.tmp`;b__namespace.mkdirSync(J__namespace.dirname(e),{recursive:true}),b__namespace.writeFileSync(r,t,"utf-8"),Ye(r,e);},exists(e){return b__namespace.existsSync(e)},remove(e){try{b__namespace.existsSync(e)&&b__namespace.unlinkSync(e);}catch{}},readBytes(e){if(!b__namespace.existsSync(e))return null;try{return new Uint8Array(b__namespace.readFileSync(e))}catch{return null}},writeBytes(e,t){let r=`${e}.${process.pid}.${crypto.randomUUID()}.tmp`;b__namespace.mkdirSync(J__namespace.dirname(e),{recursive:true}),b__namespace.writeFileSync(r,Buffer.from(t)),Ye(r,e);},stat(e){if(!b__namespace.existsSync(e))return null;try{let t=b__namespace.statSync(e);return {key:e,size:Number(t.size||0),updatedAt:new Date(t.mtimeMs).toISOString()}}catch{return null}},listKeys(e){return []}}}var Kn="__scratch-marker",Un="__scratch-config.json",$d=1440*60*1e3,Ed=720*60*1e3,xd=500;function ya(e,t){if(!e)return t;let r=e.replace(/[^A-Za-z0-9._-]/g,"_");return r.length>0?r:t}function Vr(e){b__namespace.mkdirSync(e,{recursive:true});let t=J__namespace.join(e,Kn),r=J__namespace.join(e,Un),n=!b__namespace.existsSync(t);if(n)try{b__namespace.writeFileSync(t,`scratch-store
10
+ `,s=Nr.get(e);if(s&&!s.socket.destroyed){s.ready?s.socket.write(n):s.queue.push(n);return}let o=id(e),a=Zo__namespace.createConnection(o);s={socket:a,ready:false,queue:[n]},Nr.set(e,s),a.on("connect",()=>{s.ready=true;for(let i of s.queue)a.write(i);s.queue.length=0;}),a.on("error",i=>{r?.(`[named-pipe publish] ${o}: ${i instanceof Error?i.message:String(i)}`),Nr.delete(e);}),a.on("close",()=>{Nr.delete(e);});}function Fr(){return {executeSync(e,t,r){return sa({command:e,args:t,cwd:r?.cwd,timeoutMs:r?.timeout,env:r?.env},{encoding:r?.encoding,input:r?.input})},executeAsync(e,t,r){ad({command:e,args:t},r);},resolveInvocation(e,t){let r=od({command:e,args:t});return {cmd:r.command,args:r.args??[]}},splitCommand:na,spawnDetached(e,t){qr({command:e,args:t});}}}var ua=J.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)))),fd=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 pd(){let e=J.resolve(ua,"./jsonata-sync.cjs");return b.existsSync(e)?e:J.resolve(ua,"../../card-compute/jsonata-sync.cjs")}var wt=fd(pd());function Vn(e,t,r){if(!e||typeof e!="object")return {};let n={};if(Array.isArray(e.cmdTemplate)){let s=[];for(let o of e.cmdTemplate)try{s.push(String(wt(o).evaluate(t)));}catch(a){let i=a instanceof Error?a.message:String(a);throw new Error(`[${r}] argsMassaging.cmdTemplate failed on "${o}": ${i}`)}n.cmdArgs=s;}if(typeof e.stdinTemplate=="string")try{n.stdin=wt(e.stdinTemplate).evaluate(t);}catch(s){let o=s instanceof Error?s.message:String(s);throw new Error(`[${r}] argsMassaging.stdinTemplate failed: ${o}`)}if(typeof e.urlTemplate=="string")try{n.url=String(wt(e.urlTemplate).evaluate(t));}catch(s){let o=s instanceof Error?s.message:String(s);throw new Error(`[${r}] argsMassaging.urlTemplate failed: ${o}`)}if(typeof e.headerTemplate=="string")try{let s=wt(e.headerTemplate).evaluate(t);if(typeof s!="object"||s===null)throw new Error(`headerTemplate must produce an object, got: ${JSON.stringify(s)}`);n.headers=s;}catch(s){let o=s instanceof Error?s.message:String(s);throw new Error(`[${r}] argsMassaging.headerTemplate failed: ${o}`)}if(typeof e.bodyTemplate=="string")try{n.body=wt(e.bodyTemplate).evaluate(t);}catch(s){let o=s instanceof Error?s.message:String(s);throw new Error(`[${r}] argsMassaging.bodyTemplate failed: ${o}`)}return n}var gd=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 hd(e){return typeof e=="object"?e:Ke(e)}function da(e){let t=J__namespace.basename(String(e||"").trim());if(!t)throw new Error(`resolveYamlFlowCliPath: expected non-empty cli file name, got ${JSON.stringify(e)}`);let r=J__namespace.dirname(gd.resolve("yaml-flow/package.json")),n=J__namespace.join(r,"cli","node",t);if(!b__namespace.existsSync(n))throw new Error(`resolveYamlFlowCliPath: could not find ${t} under ${J__namespace.join(r,"cli","node")}`);return n}function Me(e){let t=hd(e);return t.kind==="yaml-flow-cli"?da(t.value):t.value}function yd(e,t){let r=Me(e);switch(r){case "source-cli-task-executor":{let n=J__namespace.join(t,"source-cli-task-executor.js");if(b__namespace.existsSync(n))return {command:process.execPath,args:[n]};let s=J__namespace.join(t,"source-cli-task-executor.ts"),o=J__namespace.join(t,"..","..","node_modules","tsx","dist","cli.mjs"),a=J__namespace.join(t,"..","..","node_modules",".bin","tsx"),i=b__namespace.existsSync(o)?o:a;return b__namespace.existsSync(s)&&b__namespace.existsSync(i)?{command:process.execPath,args:[i,s]}:{command:process.execPath,args:[n]}}case "board-live-cards":{let{cmd:n,args:s}=Mn(t,"_",[]);return {command:n,args:s}}default:throw new Error(`resolveBuiltIn: unknown built-in name "${r}". Supported: source-cli-task-executor, board-live-cards`)}}function la(e,t){if(e.howToRun==="built-in"){let{command:n,args:s}=yd(e.whatToRun,t);return {command:n,baseArgs:s}}let r=(typeof e.whatToRun=="object",Me(e.whatToRun));switch(e.howToRun){case "local-node":return {command:process.execPath,baseArgs:[r]};case "local-python":return {command:process.platform==="win32"?"python":"python3",baseArgs:[r]};case "local-process":return {command:r,baseArgs:[]};default:throw new Error(`resolveBaseInvocation: howToRun "${e.howToRun}" is not a local transport`)}}function vd(e,t){let r=[e.subcommand];return e.inRef&&r.push("--in-ref",e.inRef),e.outRef&&r.push("--out-ref",e.outRef),e.errRef&&r.push("--err-ref",e.errRef),t&&r.push("--extra",Buffer.from(JSON.stringify(t)).toString("base64")),r}function Sd(e,t){return {subcommand:e.subcommand,...e.inRef?{inRef:e.inRef}:{},...e.outRef?{outRef:e.outRef}:{},...e.errRef?{errRef:e.errRef}:{},...t?{extra:t}:{}}}function Dr(e,t){return la(e,t)}function fa(e){let t=e.trim();if(!t)throw new Error("empty stdout");try{return JSON.parse(t)}catch{let r=t.split(/\r?\n/).filter(Boolean),n=r[r.length-1];return JSON.parse(n)}}function pa(e,t){return {...t,whatToRun:Me(e.whatToRun),...e.extra?{extra:e.extra}:{}}}function Bn(e,t,r="invokeExecutionRef"){return Vn(e,t,r)}function ma(e){return e&&typeof e=="object"&&!Array.isArray(e)&&typeof e.result=="string"&&e.data&&typeof e.data=="object"&&!Array.isArray(e.data)?e:{result:"success",data:e&&typeof e=="object"&&!Array.isArray(e)?e:{stdout:e}}}function ot(e){return {result:"failure",data:{error:e}}}function st(e,t,r){let n=r?.label??"invokeExecutionRefSync",s=r?.cliDir??r?.cwd??process.cwd(),o;try{o=Bn(e.argsMassaging,pa(e,t),n);}catch(l){let h=l instanceof Error?l.message:String(l);return ot(h)}let a;try{a=Dr(e,s);}catch(l){let h=l instanceof Error?l.message:String(l);return ot(`[${n}] ref resolution failed: ${h}`)}let i=[...a.baseArgs,...o.cmdArgs??[]],c=JSON.stringify(o.stdin??t),u=Fr(),d;try{d=u.executeSync(a.command,i,{timeout:r?.timeoutMs??3e4,encoding:"utf-8",cwd:r?.cwd,input:c});}catch(l){let h=l,y=(h.stderr?String(h.stderr):"").trim(),f=typeof h.status=="number"?h.status:"unknown",p=y||h.message;return ot(`[${n}] ref exited with status ${f}${p?`: ${p}`:""}`)}try{return ma(fa(d))}catch{return {result:"success",data:{stdout:d.trim()}}}}async function ca(e,t,r){let n=r?.label??"invokeExecutionRef",s;try{s=Bn(e.argsMassaging,pa(e,t),n);}catch(u){let d=u instanceof Error?u.message:String(u);return ot(d)}let o=Me(e.whatToRun),a=s.headers?{"Content-Type":"application/json",...s.headers}:{"Content-Type":"application/json"},i=s.url??o,c;if(e.howToRun==="http:get"){let u=s.body&&typeof s.body=="object"&&!Array.isArray(s.body)?s.body:t,d=new URLSearchParams(Object.entries(u).filter(([,l])=>l!=null).map(([l,h])=>[l,String(h)]));d.size>0&&(i=`${i}${i.includes("?")?"&":"?"}${d.toString()}`);}else c=JSON.stringify(s.body??t);try{let u=await fetch(i,{method:e.howToRun==="http:get"?"GET":"POST",headers:a,body:c});if(!u.ok){let l=await u.text().catch(()=>"");return ot(`[${n}] HTTP ${u.status}${l?`: ${l}`:""}`)}let d=await u.text();if(!d.trim())return {result:"success",data:{}};try{return ma(fa(d))}catch{return {result:"success",data:{stdout:d.trim()}}}}catch(u){let d=u instanceof Error?u.message:String(u);return ot(`[${n}] ${d}`)}}var wd={"local-node":async(e,t,r)=>st(e,t,r),"local-python":async(e,t,r)=>st(e,t,r),"local-process":async(e,t,r)=>st(e,t,r),"built-in":async(e,t,r)=>st(e,t,r),"http:post":ca,"http:get":ca},kd={"local-node":st,"local-python":st,"local-process":st,"built-in":st};async function ga(e,t,r){let n=r?.transports?.[e.howToRun]??wd[e.howToRun];return n?n(e,t,r):ot(`[${r?.label??"invokeExecutionRef"}] unsupported howToRun: ${e.howToRun}`)}function Gn(e,t,r){let n=r?.syncTransports?.[e.howToRun]??kd[e.howToRun];return n?n(e,t,r):ot(`[${r?.label??"invokeExecutionRefSync"}] unsupported sync howToRun: ${e.howToRun}`)}function bd(e){return {invoke(t,r){return ga(t,r,e)},invokeSync(t,r){return Gn(t,r,e)}}}function _d(e,t,r){return Gn(e,t,r)}async function Rd(e,t){let r={...t,whatToRun:Me(e.whatToRun)},n=Vn(e.argsMassaging,r,"_invokeTaskExecutorHttp"),s=n.url??Me(e.whatToRun),o=n.body?n.body:Sd(t,e.extra),a={"Content-Type":"application/json"},i=n.headers?{...a,...n.headers}:a,c=await fetch(s,{method:e.howToRun==="http:get"?"GET":"POST",headers:i,body:JSON.stringify(o)});if(!c.ok){let d=await c.text().catch(()=>"");return {status:"error",error:`HTTP ${c.status}: ${d}`}}let u=await c.json().catch(()=>null);return u&&typeof u.status=="string"?u:{status:"success"}}function ha(e,t,r){if(e.howToRun==="http:post"||e.howToRun==="http:get"){Rd(e,t).catch(i=>{console.error(`[dispatchTaskExecutorDetached] HTTP dispatch failed: ${i.message}`);});return}let{command:s,baseArgs:o}=la(e,r),a=vd(t,e.extra);qr({command:s,args:[...o,...a]});}function Ye(e,t){if(process.platform!=="win32"){b__namespace.renameSync(e,t);return}let r=[10,20,40,80,160];for(let n=0;n<=r.length;n++)try{b__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 qt(e){function t(s){return J__namespace.join(e,...s.split("/"))}function r(s){return J__namespace.relative(e,s).replace(/\\/g,"/")}function n(s,o){if(b__namespace.existsSync(s))for(let a of b__namespace.readdirSync(s,{withFileTypes:true})){let i=J__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(!b__namespace.existsSync(o))return null;try{return b__namespace.readFileSync(o,"utf-8")}catch{return null}},write(s,o){let a=t(s),i=`${a}.${process.pid}.${crypto.randomUUID()}.tmp`;b__namespace.mkdirSync(J__namespace.dirname(a),{recursive:true}),b__namespace.writeFileSync(i,o,"utf-8"),Ye(i,a);},exists(s){return b__namespace.existsSync(t(s))},remove(s){let o=t(s);try{b__namespace.existsSync(o)&&b__namespace.unlinkSync(o);}catch{}},readBytes(s){let o=t(s);if(!b__namespace.existsSync(o))return null;try{return new Uint8Array(b__namespace.readFileSync(o))}catch{return null}},writeBytes(s,o){let a=t(s),i=`${a}.${process.pid}.${crypto.randomUUID()}.tmp`;b__namespace.mkdirSync(J__namespace.dirname(a),{recursive:true}),b__namespace.writeFileSync(i,Buffer.from(o)),Ye(i,a);},listKeys(s){let o=[];n(e,o);let a=o.sort();return s?a.filter(i=>i.startsWith(s)):a},stat(s){let o=t(s);if(!b__namespace.existsSync(o))return null;try{let a=b__namespace.statSync(o);return {key:s,size:Number(a.size||0),updatedAt:new Date(a.mtimeMs).toISOString()}}catch{return null}}}}function zn(){return {read(e){if(!b__namespace.existsSync(e))return null;try{return b__namespace.readFileSync(e,"utf-8")}catch{return null}},write(e,t){let r=`${e}.${process.pid}.${crypto.randomUUID()}.tmp`;b__namespace.mkdirSync(J__namespace.dirname(e),{recursive:true}),b__namespace.writeFileSync(r,t,"utf-8"),Ye(r,e);},exists(e){return b__namespace.existsSync(e)},remove(e){try{b__namespace.existsSync(e)&&b__namespace.unlinkSync(e);}catch{}},readBytes(e){if(!b__namespace.existsSync(e))return null;try{return new Uint8Array(b__namespace.readFileSync(e))}catch{return null}},writeBytes(e,t){let r=`${e}.${process.pid}.${crypto.randomUUID()}.tmp`;b__namespace.mkdirSync(J__namespace.dirname(e),{recursive:true}),b__namespace.writeFileSync(r,Buffer.from(t)),Ye(r,e);},stat(e){if(!b__namespace.existsSync(e))return null;try{let t=b__namespace.statSync(e);return {key:e,size:Number(t.size||0),updatedAt:new Date(t.mtimeMs).toISOString()}}catch{return null}},listKeys(e){return []}}}var Kn="__scratch-marker",Un="__scratch-config.json",Ed=1440*60*1e3,xd=720*60*1e3,Td=500;function ya(e,t){if(!e)return t;let r=e.replace(/[^A-Za-z0-9._-]/g,"_");return r.length>0?r:t}function Vr(e){b__namespace.mkdirSync(e,{recursive:true});let t=J__namespace.join(e,Kn),r=J__namespace.join(e,Un),n=!b__namespace.existsSync(t);if(n)try{b__namespace.writeFileSync(t,`scratch-store
11
11
  ${new Date().toISOString()}
12
- `,"utf-8");}catch{}function s(){if(!b__namespace.existsSync(r))return {};try{let u=b__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{b__namespace.writeFileSync(d,JSON.stringify(u,null,2),"utf-8"),Ye(d,r);}catch{}}if(n){let u=s();typeof u["retention.lastSweepAt"]!="number"&&(u["retention.lastSweepAt"]=Date.now(),o(u));}function a(){if(!b__namespace.existsSync(t))return;let u=s(),d=typeof u["retention.maxAgeMs"]=="number"?u["retention.maxAgeMs"]:$d,l=typeof u["retention.sweepIntervalMs"]=="number"?u["retention.sweepIntervalMs"]:Ed;if(d<=0||l<=0)return;let h=typeof u["retention.lastSweepAt"]=="number"?u["retention.lastSweepAt"]:0,y=Date.now();if(y-h<l)return;u["retention.lastSweepAt"]=y,o(u);let f=y;try{let p=b__namespace.readdirSync(e,{withFileTypes:!0});for(let v of p){if(Date.now()-f>xd)break;if(!v.isFile()||v.name===Kn||v.name===Un)continue;let _=J__namespace.join(e,v.name);try{let m=b__namespace.statSync(_);if(y-m.mtimeMs>d)try{b__namespace.unlinkSync(_);}catch{}}catch{}}}catch{}}function i(u,d){let l=ya(u,"scratch"),h=ya(d,".json"),y=h.startsWith(".")?h:`.${h}`,f=`${l}-${Date.now()}-${crypto.randomUUID().slice(0,8)}${y}`;return J__namespace.join(e,f)}function c(u,d){let l=`${u}.${process.pid}.${crypto.randomUUID()}.tmp`;b__namespace.mkdirSync(J__namespace.dirname(u),{recursive:true}),b__namespace.writeFileSync(l,d,"utf-8"),Ye(l,u);}return {read(u){if(!b__namespace.existsSync(u))return null;try{return b__namespace.readFileSync(u,"utf-8")}catch{return null}},write(u,d){c(u,d);try{a();}catch{}},exists(u){return b__namespace.existsSync(u)},remove(u){try{b__namespace.existsSync(u)&&b__namespace.unlinkSync(u);}catch{}},readBytes(u){if(!b__namespace.existsSync(u))return null;try{return new Uint8Array(b__namespace.readFileSync(u))}catch{return null}},writeBytes(u,d){let l=`${u}.${process.pid}.${crypto.randomUUID()}.tmp`;b__namespace.mkdirSync(J__namespace.dirname(u),{recursive:true}),b__namespace.writeFileSync(l,Buffer.from(d)),Ye(l,u);try{a();}catch{}},stat(u){if(!b__namespace.existsSync(u))return null;try{let d=b__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=b__namespace.readdirSync(e,{withFileTypes:!0}),l=[];for(let h of d){if(!h.isFile()||h.name===Kn||h.name===Un)continue;let y=J__namespace.join(e,h.name);(!u||y.startsWith(u))&&l.push(y);}return l.sort()}catch{return []}},getUniqueKey(u,d){return i(u,d)},create(u,d,l){let h=i(d,l);c(h,u);try{a();}catch{}return h},keyRef(u){return {kind:"fs-path",value:u}},config:{get(u){return s()[u]??null},set(u,d){let l=s();d==null?delete l[u]:l[u]=d,o(l);}}}}var Td="__archive-marker",Ad="__archive-config.json",Mr="streams",Lr="blobs",Id=500;function va(e){let t=e.replace(/[^A-Za-z0-9._-]/g,"_");if(!t)throw new Error("Archive segment name cannot be empty after sanitization");return t}function Br(e){b__namespace.mkdirSync(e,{recursive:true}),b__namespace.mkdirSync(J__namespace.join(e,Mr),{recursive:true}),b__namespace.mkdirSync(J__namespace.join(e,Lr),{recursive:true});let t=J__namespace.join(e,Td),r=J__namespace.join(e,Ad);if(!b__namespace.existsSync(t))try{b__namespace.writeFileSync(t,`archive-store
12
+ `,"utf-8");}catch{}function s(){if(!b__namespace.existsSync(r))return {};try{let u=b__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{b__namespace.writeFileSync(d,JSON.stringify(u,null,2),"utf-8"),Ye(d,r);}catch{}}if(n){let u=s();typeof u["retention.lastSweepAt"]!="number"&&(u["retention.lastSweepAt"]=Date.now(),o(u));}function a(){if(!b__namespace.existsSync(t))return;let u=s(),d=typeof u["retention.maxAgeMs"]=="number"?u["retention.maxAgeMs"]:Ed,l=typeof u["retention.sweepIntervalMs"]=="number"?u["retention.sweepIntervalMs"]:xd;if(d<=0||l<=0)return;let h=typeof u["retention.lastSweepAt"]=="number"?u["retention.lastSweepAt"]:0,y=Date.now();if(y-h<l)return;u["retention.lastSweepAt"]=y,o(u);let f=y;try{let p=b__namespace.readdirSync(e,{withFileTypes:!0});for(let v of p){if(Date.now()-f>Td)break;if(!v.isFile()||v.name===Kn||v.name===Un)continue;let _=J__namespace.join(e,v.name);try{let m=b__namespace.statSync(_);if(y-m.mtimeMs>d)try{b__namespace.unlinkSync(_);}catch{}}catch{}}}catch{}}function i(u,d){let l=ya(u,"scratch"),h=ya(d,".json"),y=h.startsWith(".")?h:`.${h}`,f=`${l}-${Date.now()}-${crypto.randomUUID().slice(0,8)}${y}`;return J__namespace.join(e,f)}function c(u,d){let l=`${u}.${process.pid}.${crypto.randomUUID()}.tmp`;b__namespace.mkdirSync(J__namespace.dirname(u),{recursive:true}),b__namespace.writeFileSync(l,d,"utf-8"),Ye(l,u);}return {read(u){if(!b__namespace.existsSync(u))return null;try{return b__namespace.readFileSync(u,"utf-8")}catch{return null}},write(u,d){c(u,d);try{a();}catch{}},exists(u){return b__namespace.existsSync(u)},remove(u){try{b__namespace.existsSync(u)&&b__namespace.unlinkSync(u);}catch{}},readBytes(u){if(!b__namespace.existsSync(u))return null;try{return new Uint8Array(b__namespace.readFileSync(u))}catch{return null}},writeBytes(u,d){let l=`${u}.${process.pid}.${crypto.randomUUID()}.tmp`;b__namespace.mkdirSync(J__namespace.dirname(u),{recursive:true}),b__namespace.writeFileSync(l,Buffer.from(d)),Ye(l,u);try{a();}catch{}},stat(u){if(!b__namespace.existsSync(u))return null;try{let d=b__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=b__namespace.readdirSync(e,{withFileTypes:!0}),l=[];for(let h of d){if(!h.isFile()||h.name===Kn||h.name===Un)continue;let y=J__namespace.join(e,h.name);(!u||y.startsWith(u))&&l.push(y);}return l.sort()}catch{return []}},getUniqueKey(u,d){return i(u,d)},create(u,d,l){let h=i(d,l);c(h,u);try{a();}catch{}return h},keyRef(u){return {kind:"fs-path",value:u}},config:{get(u){return s()[u]??null},set(u,d){let l=s();d==null?delete l[u]:l[u]=d,o(l);}}}}var Ad="__archive-marker",Id="__archive-config.json",Mr="streams",Lr="blobs",Od=500;function va(e){let t=e.replace(/[^A-Za-z0-9._-]/g,"_");if(!t)throw new Error("Archive segment name cannot be empty after sanitization");return t}function Br(e){b__namespace.mkdirSync(e,{recursive:true}),b__namespace.mkdirSync(J__namespace.join(e,Mr),{recursive:true}),b__namespace.mkdirSync(J__namespace.join(e,Lr),{recursive:true});let t=J__namespace.join(e,Ad),r=J__namespace.join(e,Id);if(!b__namespace.existsSync(t))try{b__namespace.writeFileSync(t,`archive-store
13
13
  ${new Date().toISOString()}
14
- `,"utf-8");}catch{}function n(){if(!b__namespace.existsSync(r))return {};try{let a=b__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{b__namespace.writeFileSync(i,JSON.stringify(a,null,2),"utf-8"),Ye(i,r);}catch{}}function o(){if(!b__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,h=y=>{let f;try{f=b__namespace.readdirSync(y,{withFileTypes:!0});}catch{return}for(let p of f){if(Date.now()-l>Id)return;let v=J__namespace.join(y,p.name);if(p.isDirectory()){h(v);continue}if(p.isFile())try{let _=b__namespace.statSync(v);if(d-_.mtimeMs>i)try{b__namespace.unlinkSync(v);}catch{}}catch{}}};h(J__namespace.join(e,Mr)),h(J__namespace.join(e,Lr));}return {stream(a){let i=va(a),c=J__namespace.join(e,Mr,`${i}.jsonl`),u=Hn(c);return {append(d){let l=u.append(d);try{o();}catch{}return l},readAll:()=>u.readAll(),readAfter:d=>u.readAfter(d),clear:()=>{u.clear&&u.clear();}}},blob(a){let i=va(a),c=J__namespace.join(e,Lr,i);b__namespace.mkdirSync(c,{recursive:true});let u=qt(c);return {read:d=>u.read(d),write:(d,l)=>{u.write(d,l);try{o();}catch{}},exists:d=>u.exists(d),remove:d=>u.remove(d),readBytes:u.readBytes?d=>u.readBytes(d):void 0,writeBytes:u.writeBytes?(d,l)=>{u.writeBytes(d,l);try{o();}catch{}}:void 0,listKeys:d=>u.listKeys(d),stat:u.stat?d=>u.stat(d):void 0}},listStreams(a){let i=J__namespace.join(e,Mr);try{return b__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=J__namespace.join(e,Lr);try{return b__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 Gr(e){function t(n){return J__namespace.join(e,...n.split("/"))+".json"}function r(n,s,o,a){if(b__namespace.existsSync(n))for(let i of b__namespace.readdirSync(n,{withFileTypes:true})){let c=s?`${s}/${i.name}`:i.name;if(i.isDirectory()){r(J__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(!b__namespace.existsSync(s))return null;try{return JSON.parse(b__namespace.readFileSync(s,"utf-8"))}catch{return null}},write(n,s){let o=t(n),a=`${o}.${process.pid}.${crypto.randomUUID()}.tmp`;b__namespace.mkdirSync(J__namespace.dirname(o),{recursive:true}),b__namespace.writeFileSync(a,JSON.stringify(s,null,2),"utf-8"),Ye(a,o);},delete(n){let s=t(n);try{b__namespace.existsSync(s)&&b__namespace.unlinkSync(s);}catch{}},listKeys(n){let s=[];return r(e,"",n,s),s.sort()}}}function Hn(e){function t(){if(!b__namespace.existsSync(e))return [];let r=b__namespace.readFileSync(e,"utf-8").trim();return r?r.split(`
14
+ `,"utf-8");}catch{}function n(){if(!b__namespace.existsSync(r))return {};try{let a=b__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{b__namespace.writeFileSync(i,JSON.stringify(a,null,2),"utf-8"),Ye(i,r);}catch{}}function o(){if(!b__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,h=y=>{let f;try{f=b__namespace.readdirSync(y,{withFileTypes:!0});}catch{return}for(let p of f){if(Date.now()-l>Od)return;let v=J__namespace.join(y,p.name);if(p.isDirectory()){h(v);continue}if(p.isFile())try{let _=b__namespace.statSync(v);if(d-_.mtimeMs>i)try{b__namespace.unlinkSync(v);}catch{}}catch{}}};h(J__namespace.join(e,Mr)),h(J__namespace.join(e,Lr));}return {stream(a){let i=va(a),c=J__namespace.join(e,Mr,`${i}.jsonl`),u=Hn(c);return {append(d){let l=u.append(d);try{o();}catch{}return l},readAll:()=>u.readAll(),readAfter:d=>u.readAfter(d),clear:()=>{u.clear&&u.clear();}}},blob(a){let i=va(a),c=J__namespace.join(e,Lr,i);b__namespace.mkdirSync(c,{recursive:true});let u=qt(c);return {read:d=>u.read(d),write:(d,l)=>{u.write(d,l);try{o();}catch{}},exists:d=>u.exists(d),remove:d=>u.remove(d),readBytes:u.readBytes?d=>u.readBytes(d):void 0,writeBytes:u.writeBytes?(d,l)=>{u.writeBytes(d,l);try{o();}catch{}}:void 0,listKeys:d=>u.listKeys(d),stat:u.stat?d=>u.stat(d):void 0}},listStreams(a){let i=J__namespace.join(e,Mr);try{return b__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=J__namespace.join(e,Lr);try{return b__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 Gr(e){function t(n){return J__namespace.join(e,...n.split("/"))+".json"}function r(n,s,o,a){if(b__namespace.existsSync(n))for(let i of b__namespace.readdirSync(n,{withFileTypes:true})){let c=s?`${s}/${i.name}`:i.name;if(i.isDirectory()){r(J__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(!b__namespace.existsSync(s))return null;try{return JSON.parse(b__namespace.readFileSync(s,"utf-8"))}catch{return null}},write(n,s){let o=t(n),a=`${o}.${process.pid}.${crypto.randomUUID()}.tmp`;b__namespace.mkdirSync(J__namespace.dirname(o),{recursive:true}),b__namespace.writeFileSync(a,JSON.stringify(s,null,2),"utf-8"),Ye(a,o);},delete(n){let s=t(n);try{b__namespace.existsSync(s)&&b__namespace.unlinkSync(s);}catch{}},listKeys(n){let s=[];return r(e,"",n,s),s.sort()}}}function Hn(e){function t(){if(!b__namespace.existsSync(e))return [];let r=b__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 b__namespace.mkdirSync(J__namespace.dirname(e),{recursive:true}),b__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(){b__namespace.existsSync(e)&&b__namespace.truncateSync(e,0);}}}function Jn(e){if(e==null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return `[${e.map(Jn).join(",")}]`;let t=e;return `{${Object.keys(t).sort().map(n=>`${JSON.stringify(n)}:${Jn(t[n])}`).join(",")}}`}function Sa(e){return crypto.createHash("sha256").update(Jn(e)).digest("hex")}function ka(e){let t=J__namespace.join(e,"board-journal.jsonl");return {readAllEntries(){if(!b__namespace.existsSync(t))return [];let r=b__namespace.readFileSync(t,"utf-8").trim();return r?r.split(`
16
+ `,"utf-8"),n},readAll(){return t()},readAfter(r){let n=t();if(!r)return {entries:n,newCursor:n.length>0?n[n.length-1].id:null};let s=n.findIndex(a=>a.id===r),o=s===-1?n:n.slice(s+1);return {entries:o,newCursor:o.length>0?o[o.length-1].id:r}},clear(){b__namespace.existsSync(e)&&b__namespace.truncateSync(e,0);}}}function Jn(e){if(e==null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return `[${e.map(Jn).join(",")}]`;let t=e;return `{${Object.keys(t).sort().map(n=>`${JSON.stringify(n)}:${Jn(t[n])}`).join(",")}}`}function Sa(e){return crypto.createHash("sha256").update(Jn(e)).digest("hex")}function wa(e){let t=J__namespace.join(e,"board-journal.jsonl");return {readAllEntries(){if(!b__namespace.existsSync(t))return [];let r=b__namespace.readFileSync(t,"utf-8").trim();return r?r.split(`
17
17
  `).filter(Boolean).map(n=>JSON.parse(n)):[]},appendEntry(r){b__namespace.appendFileSync(t,JSON.stringify(r)+`
18
- `,"utf-8");},generateId(){return crypto.randomUUID()}}}function wa(e){return {tryAcquire(){try{if(!b__namespace.existsSync(e)){b__namespace.mkdirSync(J__namespace.dirname(e),{recursive:!0});try{b__namespace.writeFileSync(e,"{}",{flag:"wx"});}catch{}}return properLockfile.lockSync(e,{retries:0})}catch{return null}}}}var ba={$schema:"http://json-schema.org/draft-07/schema#",$id:"https://nsreehari.github.io/boards/live-cards.schema.json",definitions:{bind_ref:{description:"A card data path reference, e.g. 'card_data.raw_quotes' or 'requires.upstream'",type:"string",pattern:"^(card_data|requires|fetched_sources|computed_values)(\\.|$)"},bind_or_literal:{description:"A literal value or a bind reference object",oneOf:[{type:"string"},{type:"number"},{type:"boolean"},{type:"array"},{type:"object",properties:{bind:{$ref:"#/definitions/bind_ref"}},required:["bind"]}]},compute_expr:{description:"A declarative JSON compute expression",type:"object",required:["fn"],properties:{fn:{type:"string",description:"Function name from the built-in vocabulary",enum:["sum","avg","min","max","count","first","last","add","sub","mul","div","round","abs","mod","gt","gte","lt","lte","eq","neq","if","and","or","not","concat","upper","lower","template","filter","pluck","map","sort","slice","flat","unique","group","get","default","now","diff_days","format_date"]},input:{description:"card_data.path, literal, array of inputs, or nested compute_expr",oneOf:[{type:"string"},{type:"number"},{type:"boolean"},{type:"array"},{$ref:"#/definitions/compute_expr"}]},field:{type:"string",description:"For pluck/sum/group \u2014 the object key to extract"},where:{$ref:"#/definitions/compute_expr",description:"For filter \u2014 predicate expression ($ = current item)"},cond:{$ref:"#/definitions/compute_expr",description:"For if \u2014 condition expression"},then:{description:"For if \u2014 value when cond is truthy"},else:{description:"For if \u2014 value when cond is falsy"},format:{type:"string",description:"For format_date \u2014 date format string"}}},meta:{type:"object",properties:{title:{type:"string"},tags:{type:"array",items:{type:"string"}}}},requires:{type:"array",items:{type:"string"},description:"IDs of upstream nodes this node depends on"},provides:{type:"array",items:{type:"object",required:["bindTo","ref"],properties:{bindTo:{type:"string",description:"Token name published downstream"},ref:{type:"string",description:"Path to read value from (card_data.*, requires.*, fetched_sources.*, computed_values.*)"}}},description:"Explicit bindings exposing computed or card_data values downstream as named tokens"},compute_step:{description:"A single ordered compute step: reads card_data.*/requires.*/computed_values.*, writes to computed_values[bindTo]",type:"object",required:["bindTo","expr"],properties:{bindTo:{type:"string",description:"Key in computed_values to write result"},expr:{type:"string",description:"JSONata expression evaluated against { card_data, requires, fetched_sources, computed_values }"}}},source_def:{description:"One source entry. The engine requires 'bindTo' (compute namespace key) and 'outputFile' (delivery signal path). bindTo and outputFile must be unique across all source_defs in a card. Every other property is yours \u2014 add whatever your task-executor needs: kind, url, headers, mailbox, channel, model, query, etc. The full object is passed verbatim as the --in JSON to the executor.",type:"object",required:["bindTo","outputFile"],additionalProperties:true,properties:{bindTo:{type:"string",description:"Key under fetched_sources.* available in compute expressions"},outputFile:{type:"string",description:"Board-relative path the executor writes its JSON result to. Presence of this file signals delivery."},projections:{type:"object",description:"Named data projections from card_data or requires, evaluated before the executor is called. Each key is a ref name; each value is a JSONata expression rooted at card_data or requires. The resolved values are passed to the executor as _projections. fetched_sources, computed_values, and source_defs are not accessible here \u2014 sources run before those exist.",additionalProperties:{type:"string"}},optionalForCompletionGating:{type:"boolean",default:false,description:"When true this source does not gate card completion. Default false when absent, so source_defs are completion-gating by default."},timeout:{type:"integer",minimum:0,default:12e4,description:"Executor/script timeout in ms. Default: 120 000 (2 min)."},script:{type:"string",description:"Legacy direct-run: shell command executed when no .task-executor is registered. stdout is captured as the result."}}},render_element:{type:"object",required:["kind"],properties:{id:{type:"string",description:"Optional element ID for targeted updates"},kind:{enum:["metric","table","editable-table","chart","form","filter","list","notes","todo","alert","narrative","badge","text","markdown","ref","custom","actions"]},label:{type:"string",description:"Heading above this element"},className:{type:"string",description:"Bootstrap grid class, e.g. 'col-12 col-md-6'"},visible:{type:"string",description:"card_data/requires/fetched_sources/computed_values path \u2014 element shown only if truthy"},data:{type:"object",properties:{bind:{$ref:"#/definitions/bind_ref",description:"card_data/requires/fetched_sources/computed_values path to read data from"},writeTo:{$ref:"#/definitions/bind_ref",description:"card_data path for user input (form, filter, todo, notes)"},columns:{type:"array",items:{type:"string"},description:"table: visible columns"},maxRows:{type:"integer",description:"table/list: max rows to display"},sortable:{type:"boolean",default:true,description:"table: enable click-to-sort"},placeholder:{type:"string",description:"Empty-state message"},chartType:{enum:["bar","line","pie","doughnut"]},chartOptions:{type:"object",description:"Chart.js options passthrough"},fields:{type:"object",description:"JSON Schema for form/filter fields"},thresholds:{type:"object",properties:{green:{type:"string"},amber:{type:"string"}}},colorMap:{type:"object",description:"badge: value \u2192 Bootstrap color"},style:{enum:["heading","muted","default"],description:"text: display style"},upload:{type:"boolean",default:true,description:"file-upload: show drop zone (false = read-only file list)"},accept:{type:"array",items:{type:"string"},description:"file-upload: allowed extensions"},multiple:{type:"boolean",default:true,description:"file-upload: allow multiple files"},fileAttach:{type:"boolean",default:false,description:"chat: enable inline file attachments"},fileAccept:{type:"array",items:{type:"string"},description:"chat: allowed attachment extensions"},buttons:{type:"array",description:"actions: button definitions",items:{type:"object",required:["id","label"],properties:{id:{type:"string"},label:{type:"string"},style:{type:"string",description:"Bootstrap button variant, e.g. 'success', 'outline-danger'"},size:{type:"string",default:"sm"},disabled:{oneOf:[{type:"boolean"},{type:"string",description:"card_data/requires/fetched_sources/computed_values path \u2014 truthy = disabled"}]}}}}}}}},view:{type:"object",required:["elements"],properties:{elements:{type:"array",minItems:1,items:{$ref:"#/definitions/render_element"}},layout:{type:"object",properties:{board:{type:"object",properties:{col:{type:"integer",minimum:1,maximum:12},order:{type:"integer"}}},canvas:{type:"object",properties:{x:{type:"number"},y:{type:"number"},w:{type:"number"},h:{type:"number"}}}}},features:{type:"object",properties:{chat:{type:"boolean",default:false},notes:{type:"boolean",default:false},refresh:{type:"boolean",default:true}}}}}},title:"LiveCard",description:"A unified card node. Behavior depends on which sections are present (source_defs, compute, view, etc.)",type:"object",required:["id"],additionalProperties:false,properties:{id:{type:"string"},requires:{$ref:"#/definitions/requires"},provides:{$ref:"#/definitions/provides"},meta:{$ref:"#/definitions/meta"},view:{$ref:"#/definitions/view"},card_data:{type:"object",description:"Authored card data and runtime metadata. Includes uploaded-file metadata maintained by host handlers and inference evaluation results.",properties:{files:{type:"array",description:"Optional uploaded-file metadata maintained by host handlers. Stored name is normalized and serial-prefixed (for example 001-my_file.pdf).",items:{type:"object",required:["name","stored_name"],properties:{name:{type:"string",minLength:1},stored_name:{type:"string",minLength:5,maxLength:32,pattern:"^[0-9]{3,}-[a-z0-9._-]+$"},size:{oneOf:[{type:"integer",minimum:0},{type:"null"}]},mime_type:{type:"string"},path:{type:"string",pattern:"^[^\\s]+/files/[0-9]{3,}-[a-z0-9._-]+$"},uploaded_at:{type:"string",format:"date-time"}},additionalProperties:false}}},additionalProperties:true},source_defs:{type:"array",description:"Source entries. Each entry is passed verbatim to the board's .task-executor (registered via init --task-executor) as the --in JSON file. The executor fetches/generates the data and writes JSON to --out. If no executor is registered, the built-in executor runs the entry's 'cli' command directly. Sources gate completion by default. Set optionalForCompletionGating: true for enrichment-only source_defs that should not block task-completed.",items:{$ref:"#/definitions/source_def"}},compute:{type:"array",description:"Ordered array of compute steps. Each reads card_data.*/requires.*/fetched_sources.*/computed_values.* and writes to ephemeral computed_values[bindTo].",items:{$ref:"#/definitions/compute_step"}}}};var Qu=Yc(Wu());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))),ch=uh("./jsonata-sync.cjs"),Cn=null;var Yu=/\b(card_data|requires|fetched_sources|computed_values|source_defs)\b/g,dh=/^\s*(card_data|requires|fetched_sources|computed_values|source_defs)(\.|$)/;function lh(e){let t=new Set,r;for(Yu.lastIndex=0;(r=Yu.exec(e))!==null;)t.add(r[1]);return t}function Zu(e){let t=dh.exec(e);return t?t[1]:null}function Xu(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=lh(e);for(let o of s)r.has(o)||n.push(`${t}: disallowed namespace "${o}" in expression`);}function jo(e,t,r){if(Array.isArray(e)){e.forEach((s,o)=>{jo(s,`${t}/${o}`,r);});return}if(typeof e=="string"){let s=Zu(e);if(!s)return;new Set(["card_data","requires","computed_values"]).has(s)||r.push(`${t}: disallowed namespace "${s}" in view reference`);return}if(!e||typeof e!="object")return;let n=e;for(let[s,o]of Object.entries(n))jo(o,`${t}/${s}`,r);}function fh(){if(Cn)return Cn;let e=new Qu.default({allErrors:true});return ah__default.default(e),Cn=e.compile(ba),Cn}function ec(e){let t=fh(),r=t(e),n=(t.errors??[]).map(s=>`${s.instancePath||"/"}: ${s.message??"unknown error"}`);if(e&&typeof e=="object"&&!Array.isArray(e)){let s=e.source_defs;if(Array.isArray(s)){let o=new Set,a=new Set;s.forEach((i,c)=>{if(!i||typeof i!="object"||Array.isArray(i))return;let u=i;typeof u.bindTo=="string"&&u.bindTo&&(o.has(u.bindTo)&&n.push(`/source_defs/${c}/bindTo: bindTo "${u.bindTo}" must be unique across all source_defs`),o.add(u.bindTo)),typeof u.outputFile=="string"&&u.outputFile&&(a.has(u.outputFile)&&n.push(`/source_defs/${c}/outputFile: outputFile "${u.outputFile}" must be unique across all source_defs`),a.add(u.outputFile));});}}return !r||n.length>0?{ok:false,errors:n}:{ok:true,errors:[]}}function tc(e){let t=[];if(!e||typeof e!="object"||Array.isArray(e))return {ok:true,errors:[]};let r=e,n=r.compute;Array.isArray(n)&&n.forEach((u,d)=>{if(!u||typeof u!="object"||Array.isArray(u))return;let l=u.expr;typeof l!="string"||l.trim().length===0||Xu(l,`/compute/${d}/expr`,new Set(["card_data","requires","fetched_sources","computed_values"]),t);});let s=new Set(["card_data","requires","fetched_sources","computed_values"]),o=r.provides;Array.isArray(o)&&o.forEach((u,d)=>{if(!u||typeof u!="object"||Array.isArray(u))return;let l=u.ref;if(typeof l!="string"||l.trim().length===0)return;let h=Zu(l);h===null?t.push(`/provides/${d}/ref: path "${l}" must start with a valid namespace (${[...s].join(", ")})`):s.has(h)||t.push(`/provides/${d}/ref: disallowed namespace "${h}" in path "${l}" (valid: ${[...s].join(", ")})`);});let a=r.view;a&&typeof a=="object"&&!Array.isArray(a)&&jo(a,"/view",t);let i=new Set(["card_data","requires"]),c=r.source_defs;return Array.isArray(c)&&c.forEach((u,d)=>{if(!u||typeof u!="object"||Array.isArray(u))return;let l=u.projections;if(!(!l||typeof l!="object"||Array.isArray(l)))for(let[h,y]of Object.entries(l))typeof y!="string"||y.trim().length===0||Xu(y,`/source_defs/${d}/projections/${h}`,i,t);}),{ok:t.length===0,errors:t}}function No(e){let t=ec(e);if(!t.ok)return t;let r=tc(e);return r.ok?{ok:true,errors:[]}:{ok:false,errors:r.errors}}function rc(e){return String(e).replace(/[^a-zA-Z0-9_-]/g,"_")}function nc(e){let t=e.payload??{};return {id:e.id,role:typeof t.role=="string"?t.role:"system",text:typeof t.text=="string"?t.text:"",files:Array.isArray(t.files)?t.files:[],updated_at:typeof t.updated_at=="string"?t.updated_at:""}}function qo(e,t){let r=s=>`chats/${rc(s)}/processing`,n=s=>`chats/${rc(s)}/config`;return {append(s,o,a,i=[]){return e(s).append({role:o,text:a,files:i,updated_at:new Date().toISOString()}).id},readAll(s){return e(s).readAll().map(nc)},readAfter(s,o){let a=e(s).readAfter(o);return {records:a.entries.map(nc),cursor:a.newCursor}},clear(s){e(s).clear?.();},setProcessing(s,o){o?t.write(r(s),true):t.delete(r(s));},isProcessing(s){return t.read(r(s))===true},getConfig(s){return t.read(n(s))??{}},setConfig(s,o){let a=t.read(n(s))??{};t.write(n(s),{...a,...o});}}}function ph(){let e=globalThis.crypto;return typeof e?.randomUUID=="function"?String(e.randomUUID()):`id-${Date.now()}-${Math.random().toString(36).slice(2)}`}function mh(){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:ph(),role:s,text:o,files:a,updated_at:new Date().toISOString()};return r(n).push(i),i.id},readAll(n){return r(n).slice()},readAfter(n,s){let o=r(n);if(!s)return {records:o.slice(),cursor:o.length>0?o[o.length-1].id:null};let a=o.findIndex(c=>c.id===s),i=a===-1?o.slice():o.slice(a+1);return {records:i,cursor:i.length>0?i[i.length-1].id:s}},clear(n){e.set(n,[]);},setProcessing(n,s){s?t.set(`p:${n}`,true):t.delete(`p:${n}`);},isProcessing(n){return t.get(`p:${n}`)===true},getConfig(n){return t.get(`c:${n}`)??{}},setConfig(n,s){let o=t.get(`c:${n}`)??{};t.set(`c:${n}`,{...o,...s});}}}var pt={RUNNING:"running",COMPLETED:"completed",FAILED:"failed",INACTIVATED:"inactivated"};function Ae(e){return e?Array.isArray(e.provides)?e.provides:[]:[]}function mt(e){return e?Array.isArray(e.requires)?e.requires:[]:[]}function sc(e){return e.tasks??{}}function Fo(e){return e?e.status===pt.FAILED||e.status===pt.INACTIVATED:false}function oc(e,t){return e.refreshStrategy??t?.refreshStrategy??"data-changed"}function ac(e){return e.maxExecutions}function ic(e,t){let r=new Set;for(let[n,s]of Object.entries(t))if(s.status===pt.COMPLETED){let o=e.tasks[n];o&&Ae(o).forEach(i=>r.add(i));}return Array.from(r)}function uc(e,t){let r={};return e.forEach(n=>{let s=t[n];if(!s)return;Ae(s).forEach(a=>{r[a]||(r[a]=[]),r[a].push(n);});}),r}function cc(e,t,r){let n=e.tasks[t]??$n(),s={};if(r){let a=r.tasks[t],i=mt(a);for(let c of i)for(let[u,d]of Object.entries(r.tasks))if(Ae(d).includes(c)){let l=e.tasks[u];l?.lastDataHash&&(s[c]=l.lastDataHash);break}}let o={...n,status:"running",startedAt:new Date().toISOString(),lastUpdated:new Date().toISOString(),progress:0,error:void 0,startConsumedHashes:s};return {...e,tasks:{...e.tasks,[t]:o},lastUpdated:new Date().toISOString()}}function dc(e,t,r,n,s,o){let a=e.tasks[r]??$n(),i=t.tasks[r];if(!i)throw new Error(`Task "${r}" not found in graph`);let c;n&&i.on&&i.on[n]?c=i.on[n]:c=Ae(i);let u=a.startConsumedHashes?{...a.startConsumedHashes}:{...a.lastConsumedHashes};if(!a.startConsumedHashes){let h=i.requires??[];for(let y of h)for(let[f,p]of Object.entries(t.tasks))if(Ae(p).includes(y)){let v=e.tasks[f];v?.lastDataHash&&(u[y]=v.lastDataHash);break}}let d={...a,status:"completed",completedAt:new Date().toISOString(),lastUpdated:new Date().toISOString(),executionCount:a.executionCount+1,lastEpoch:a.executionCount+1,lastDataHash:s,data:o,lastConsumedHashes:u,error:void 0},l=[...new Set([...e.availableOutputs,...c])];return {...e,tasks:{...e.tasks,[r]:d},availableOutputs:l,lastUpdated:new Date().toISOString()}}function lc(e,t,r,n){let s=e.tasks[r]??$n(),o=t.tasks[r];if(o?.retry){let c=s.retryCount+1;if(c<=o.retry.max_attempts){let u={...s,status:"not-started",retryCount:c,lastUpdated:new Date().toISOString(),error:n};return {...e,tasks:{...e.tasks,[r]:u},lastUpdated:new Date().toISOString()}}}let a={...s,status:"failed",failedAt:new Date().toISOString(),lastUpdated:new Date().toISOString(),error:n,executionCount:s.executionCount+1},i=e.availableOutputs;if(o?.on_failure&&o.on_failure.length>0&&(i=[...new Set([...e.availableOutputs,...o.on_failure])]),o?.circuit_breaker&&a.executionCount>=o.circuit_breaker.max_executions){let c=o.circuit_breaker.on_break;i=[...new Set([...i,...c])];}return {...e,tasks:{...e.tasks,[r]:a},availableOutputs:i,lastUpdated:new Date().toISOString()}}function fc(e,t,r,n){let s=e.tasks[t]??$n(),o={...s,progress:typeof n=="number"?n:s.progress,messages:[...s.messages??[],...r?[{message:r,timestamp:new Date().toISOString(),status:s.status}]:[]],lastUpdated:new Date().toISOString()};return {...e,tasks:{...e.tasks,[t]:o},lastUpdated:new Date().toISOString()}}function pc(e,t){let r=e.tasks[t];if(!r)return e;let n={...r,status:"not-started",startedAt:void 0,completedAt:void 0,failedAt:void 0,error:void 0,data:void 0,progress:null,lastUpdated:new Date().toISOString()};return {...e,tasks:{...e.tasks,[t]:n},lastUpdated:new Date().toISOString()}}function $n(){return {status:"not-started",executionCount:0,retryCount:0,lastEpoch:0,messages:[],progress:null}}function En(e,t){let r=`live-${Date.now()}`,n={};for(let o of Object.keys(e.tasks))n[o]=gc();let s={status:"running",tasks:n,availableOutputs:[],stuckDetection:{is_stuck:false,stuck_description:null,outputs_unresolvable:[],tasks_blocked:[]},lastUpdated:new Date().toISOString(),executionId:r,executionConfig:{executionMode:e.settings.execution_mode??"eligibility-mode",conflictStrategy:e.settings.conflict_strategy??"alphabetical",completionStrategy:e.settings.completion}};return {config:e,state:s}}function gh(e,t){let{config:r,state:n}=e;if("executionId"in t&&t.executionId&&t.executionId!==n.executionId)return e;switch(t.type){case "task-started":return {config:r,state:cc(n,t.taskName,r)};case "task-completed":return {config:r,state:dc(n,r,t.taskName,t.result,t.dataHash,t.data)};case "task-failed":return {config:r,state:lc(n,r,t.taskName,t.error)};case "task-progress":return {config:r,state:fc(n,t.taskName,t.message,t.progress)};case "task-restart":return {config:r,state:pc(n,t.taskName)};case "inject-tokens":return {config:r,state:{...n,availableOutputs:[...new Set([...n.availableOutputs,...t.tokens])],lastUpdated:new Date().toISOString()}};case "agent-action":return {config:r,state:bh(n,t.action)};case "task-upsert":return hh(e,t.taskName,t.taskConfig);case "task-removal":return yh(e,t.taskName);case "node-requires-add":return vh(e,t.nodeName,t.tokens);case "node-requires-remove":return Sh(e,t.nodeName,t.tokens);case "node-provides-add":return kh(e,t.nodeName,t.tokens);case "node-provides-remove":return wh(e,t.nodeName,t.tokens);default:return e}}function mc(e,t){return t.reduce((r,n)=>gh(r,n),e)}function hh(e,t,r){let n=!!e.config.tasks[t];return {config:{...e.config,tasks:{...e.config.tasks,[t]:r}},state:{...e.state,tasks:{...e.state.tasks,[t]:n?e.state.tasks[t]:gc()},lastUpdated:new Date().toISOString()}}}function yh(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 vh(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=mt(n),o=r.filter(a=>!s.includes(a));return o.length===0?e:{config:{...e.config,tasks:{...e.config.tasks,[t]:{...n,requires:[...s,...o]}}},state:e.state}}function Sh(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=mt(n),o=s.filter(a=>!r.includes(a));return o.length===s.length?e:{config:{...e.config,tasks:{...e.config.tasks,[t]:{...n,requires:o}}},state:e.state}}function kh(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=Ae(n),o=r.filter(a=>!s.includes(a));return o.length===0?e:{config:{...e.config,tasks:{...e.config.tasks,[t]:{...n,provides:[...s,...o]}}},state:e.state}}function wh(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=Ae(n),o=s.filter(a=>!r.includes(a));return o.length===s.length?e:{config:{...e.config,tasks:{...e.config.tasks,[t]:{...n,provides:o}}},state:e.state}}function Er(e){return {version:1,config:e.config,state:e.state,snapshotAt:new Date().toISOString()}}function xn(e){if(!e||typeof e!="object")throw new Error("Invalid snapshot: expected an object");let t=e;if(!t.config||typeof t.config!="object")throw new Error('Invalid snapshot: missing or invalid "config"');if(!t.state||typeof t.state!="object")throw new Error('Invalid snapshot: missing or invalid "state"');let r=t.config,n=t.state;if(!r.settings||typeof r.settings!="object")throw new Error("Invalid snapshot: config.settings missing");if(!r.tasks||typeof r.tasks!="object")throw new Error("Invalid snapshot: config.tasks missing");if(!n.tasks||typeof n.tasks!="object")throw new Error("Invalid snapshot: state.tasks missing");if(!Array.isArray(n.availableOutputs))throw new Error("Invalid snapshot: state.availableOutputs must be an array");return {config:r,state:n}}function gc(){return {status:"not-started",executionCount:0,retryCount:0,lastEpoch:0,messages:[],progress:null}}function bh(e,t){let r=new Date().toISOString();switch(t){case "stop":return {...e,status:"stopped",lastUpdated:r};case "pause":return {...e,status:"paused",lastUpdated:r};case "resume":return {...e,status:"running",lastUpdated:r};default:return e}}function xr(e){let{config:t,state:r}=e,n=sc(t);if(Object.keys(n).length===0)return {eligible:[],pending:[],unresolved:[],blocked:[],conflicts:{}};let o=_h(n),a=ic(t,r.tasks),i=new Set([...a,...r.availableOutputs]),c=[],u=[],d=[],l=[];for(let[y,f]of Object.entries(n)){let p=r.tasks[y],v=oc(f,t.settings),_=v!=="once";if(p?.status===pt.RUNNING||Fo(p))continue;let m=ac(f);if(m!==void 0&&p&&p.executionCount>=m||f.circuit_breaker&&p&&p.executionCount>=f.circuit_breaker.max_executions||!_&&p?.status===pt.COMPLETED)continue;if(_&&p?.status===pt.COMPLETED){let R=mt(f),E=false;switch(v){case "data-changed":{R.length>0&&R.some(O=>{for(let[B,W]of Object.entries(n))if(Ae(W).includes(O)){let Z=r.tasks[B];if(!Z)continue;let le=p.lastConsumedHashes?.[O];return Z.lastDataHash==null?Z.executionCount>p.lastEpoch:Z.lastDataHash!==le}return false})||(E=true);break}case "epoch-changed":{R.length>0&&R.some(O=>{for(let[B,W]of Object.entries(n))if(Ae(W).includes(O)){let Z=r.tasks[B];if(Z&&Z.executionCount>p.lastEpoch)return true}return false})||(E=true);break}case "time-based":{let I=f.refreshInterval??0;if(I<=0){E=true;break}let O=p.completedAt;if(!O){E=true;break}(Date.now()-Date.parse(O))/1e3<I&&(E=true);break}case "manual":E=true;break}if(E)continue}let g=mt(f);if(g.length===0){c.push(y);continue}let k=[],w=[],$=[];for(let R of g){if(i.has(R))continue;let E=o[R]||[];E.length===0?k.push(R):E.every(O=>Fo(r.tasks[O]))?$.push({token:R,failedProducer:E[0]}):w.push(R);}k.length>0?d.push({taskName:y,missingTokens:k}):$.length>0?l.push({taskName:y,failedTokens:$.map(R=>R.token),failedProducers:[...new Set($.map(R=>R.failedProducer))]}):w.length>0?u.push({taskName:y,waitingOn:w}):c.push(y);}let h={};if(c.length>1){let y=uc(c,n);for(let[f,p]of Object.entries(y))p.length>1&&(h[f]=p);}return {eligible:c,pending:u,unresolved:d,blocked:l,conflicts:h}}function _h(e){let t={};for(let[r,n]of Object.entries(e)){for(let s of Ae(n))t[s]||(t[s]=[]),t[s].push(r);if(n.on)for(let s of Object.values(n.on))for(let o of s)t[o]||(t[o]=[]),t[o].includes(r)||t[o].push(r);if(n.on_failure)for(let s of n.on_failure)t[s]||(t[s]=[]),t[s].includes(r)||t[s].push(r);}return t}var Tr=class{buffer=[];append(t){this.buffer.push(t);}drain(){let t=this.buffer;return this.buffer=[],t}get size(){return this.buffer.length}};function Do(e){let t=Mo(e);return Rh(t)}function Mo(e){if(e==null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return "["+e.map(Mo).join(",")+"]";let t=e;return "{"+Object.keys(t).sort().map(n=>JSON.stringify(n)+":"+Mo(t[n])).join(",")+"}"}function Rh(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 Ch(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 $h(e){if(typeof Buffer<"u")return Buffer.from(e,"base64url").toString("utf8");if(typeof atob=="function"){let t=e.replace(/-/g,"+").replace(/_/g,"/"),r=t+"=".repeat((4-t.length%4)%4),n=atob(r),s=new Uint8Array(n.length);for(let o=0;o<n.length;o++)s[o]=n.charCodeAt(o);return new TextDecoder().decode(s)}throw new Error("No base64 decoder available in this runtime")}function hc(e){let t=JSON.stringify({t:e,n:Date.now().toString(36)+Math.random().toString(36).slice(2,6)});return Ch(t)}function Eh(e){try{let t=JSON.parse($h(e));return typeof t?.t=="string"?{taskName:t.t}:null}catch{return null}}function yc(e,t,r){let{handlers:n,onDrain:s}=t,o=new Tr,a="state"in e&&"config"in e?e:En(e),i=false,c=new Set,u=new Map(Object.entries(n)),d=new Tr,l=false,h=false;function y(){if(!i){if(l){h=true;return}l=true;try{do h=!1,f();while(h)}finally{l=false;}}}function f(){let m=d.drain(),g=o.drain(),k=[...m,...g];k.length>0&&(a=mc(a,k));let w=xr(a);k.length>0&&s?.(k,a,w);for(let $ of w.eligible)_($);for(let $ of k)if($.type==="task-progress"){let{taskName:R,update:E}=$;if(!a.config.tasks[R])continue;let O=a.state.tasks[R];if(!O||O.status!=="running")continue;let B=hc(R),W=v(R,B,E).catch(Z=>{i||(d.append({type:"task-failed",taskName:R,error:Z.message??String(Z),timestamp:new Date().toISOString()}),y());}).finally(()=>{c.delete(W);});c.add(W);}}function p(m){let k=a.config.tasks[m].requires??[],w=new Map;for(let[R,E]of Object.entries(a.config.tasks))for(let I of E.provides??[])w.set(I,R);let $={};for(let R of k){let E=w.get(R);E?$[R]=a.state.tasks[E]?.data:$[R]=void 0;}return $}async function v(m,g,k){let w=a.config.tasks[m],$=w.taskHandlers??[],R=p(m);for(let E of $){let I=u.get(E);if(!I)throw new Error(`Handler '${E}' not found in registry (task '${m}')`);let O={nodeId:m,state:R,taskState:a.state.tasks[m],config:w,callbackToken:g,update:k};if(await I(O)==="task-initiate-failure")throw new Error(`Handler '${E}' returned task-initiate-failure (task '${m}')`)}}function _(m){let k=a.config.tasks[m]?.taskHandlers;if(!k||k.length===0)return;d.append({type:"task-started",taskName:m,timestamp:new Date().toISOString()}),y();let w=hc(m),$=v(m,w).catch(R=>{i||(d.append({type:"task-failed",taskName:m,error:R.message??String(R),timestamp:new Date().toISOString()}),y());}).finally(()=>{c.delete($);});c.add($);}return {push(m){i||(m.type==="task-completed"&&m.data&&!m.dataHash&&(m={...m,dataHash:Do(m.data)}),o.append(m),y());},pushAll(m){if(!i){for(let g of m)g.type==="task-completed"&&g.data&&!g.dataHash?o.append({...g,dataHash:Do(g.data)}):o.append(g);y();}},resolveCallback(m,g,k){if(i)return;let w=Eh(m);if(!w)return;let{taskName:$}=w;if(a.config.tasks[$]){if(k&&k.length>0)o.append({type:"task-failed",taskName:$,error:k.join("; "),timestamp:new Date().toISOString()});else {let R=g&&Object.keys(g).length>0?Do(g):void 0;o.append({type:"task-completed",taskName:$,data:g,dataHash:R,timestamp:new Date().toISOString()});}y();}},addNode(m,g){i||(o.append({type:"task-upsert",taskName:m,taskConfig:g,timestamp:new Date().toISOString()}),y());},removeNode(m){i||(o.append({type:"task-removal",taskName:m,timestamp:new Date().toISOString()}),y());},addRequires(m,g){i||(o.append({type:"node-requires-add",nodeName:m,tokens:g,timestamp:new Date().toISOString()}),y());},removeRequires(m,g){i||(o.append({type:"node-requires-remove",nodeName:m,tokens:g,timestamp:new Date().toISOString()}),y());},addProvides(m,g){i||(o.append({type:"node-provides-add",nodeName:m,tokens:g,timestamp:new Date().toISOString()}),y());},removeProvides(m,g){i||(o.append({type:"node-provides-remove",nodeName:m,tokens:g,timestamp:new Date().toISOString()}),y());},registerHandler(m,g){u.set(m,g);},unregisterHandler(m){u.delete(m);},retrigger(m){i||a.config.tasks[m]&&(o.append({type:"task-restart",taskName:m,timestamp:new Date().toISOString()}),y());},retriggerAll(m){if(!i){for(let g of m)a.config.tasks[g]&&o.append({type:"task-restart",taskName:g,timestamp:new Date().toISOString()});y();}},snapshot(){return Er(a)},getState(){return a},getSchedule(){return xr(a)},async waitForHandlers(){c.size>0&&await Promise.allSettled([...c]);},async dispose(m){m?.wait&&c.size>0&&await Promise.allSettled([...c]),i=true;}}}var Th=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))),Tn=Th("./jsonata-sync.cjs"),kc=Tn;function vc(e,t){if(!t||!e)return;let r=t.split("."),n=e;for(let s=0;s<r.length;s++){if(n==null)return;n=n[r[s]];}return n}function wc(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 Ah(e,t){if(!e?.compute?.length)return e;e.card_data||(e.card_data={}),e.computed_values={},e._sourcesData=t?.sourcesData??{};let r=e.requires??{},n={card_data:e.card_data,requires:r,expects_data:r,fetched_sources:e._sourcesData,data:e.computed_values,computed_values:e.computed_values};for(let s of e.compute)try{let o=await Tn(s.expr).evaluate(n);wc(e.computed_values,s.bindTo,o),n.computed_values=e.computed_values;}catch{}return e}function Ih(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=kc(o.expr).evaluate(n);wc(e.computed_values,o.bindTo,a),n.computed_values=e.computed_values;}catch(a){let i=a instanceof Error?a.message:String(a);s.push({bindTo:o.bindTo,error:i});}return s.length>0?{ok:true,node:e,errors:s}:{ok:true,node:e}}async function Ph(e,t,r){let n={...r??{},card_data:t.card_data??{},requires:t.requires??{},fetched_sources:t._sourcesData??{},computed_values:t.computed_values??{}};return Tn(e).evaluate(n)}function Oh(e,t){return t.startsWith("fetched_sources.")?vc(e._sourcesData??{},t.slice(16)):vc(e,t)}var Sc=new Set(["metric","table","editable-table","chart","form","filter","list","notes","todo","alert","narrative","badge","text","markdown","ref","custom","actions"]),jh=new Set(["id","meta","requires","provides","view","card_data","compute","source_defs"]);function Nh(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))jh.has(n)||t.push(`Unknown top-level key: "${n}"`);if((r.card_data==null||typeof r.card_data!="object"||Array.isArray(r.card_data))&&t.push("card_data: required, must be an object"),r.meta!=null)if(typeof r.meta!="object"||Array.isArray(r.meta))t.push("meta: must be an object");else {let n=r.meta;n.title!=null&&typeof n.title!="string"&&t.push("meta.title: must be a string"),n.tags!=null&&!Array.isArray(n.tags)&&t.push("meta.tags: must be an array");}if(r.requires!=null&&!Array.isArray(r.requires)&&t.push("requires: must be an array of strings"),r.provides!=null&&(Array.isArray(r.provides)?r.provides.forEach((n,s)=>{if(!n||typeof n!="object"||Array.isArray(n))t.push(`provides[${s}]: must be an object with bindTo and ref`);else {let o=n;(typeof o.bindTo!="string"||!o.bindTo)&&t.push(`provides[${s}]: missing required "bindTo" string`),(typeof o.ref!="string"||!o.ref)&&t.push(`provides[${s}]: missing required "ref" string`);}}):t.push("provides: must be an array of { bindTo, ref } bindings")),r.compute!=null&&(Array.isArray(r.compute)?r.compute.forEach((n,s)=>{if(!n||typeof n!="object"||Array.isArray(n))t.push(`compute[${s}]: must be a compute step object`);else {let o=n;(typeof o.bindTo!="string"||!o.bindTo)&&t.push(`compute[${s}]: missing required "bindTo" property`),(typeof o.expr!="string"||!o.expr)&&t.push(`compute[${s}]: missing required "expr" string (JSONata expression)`);}}):t.push("compute: must be an array of compute steps")),r.source_defs!=null)if(!Array.isArray(r.source_defs))t.push("source_defs: must be an array");else {let n=new Set,s=new Set;r.source_defs.forEach((o,a)=>{if(!o||typeof o!="object"||Array.isArray(o))t.push(`source_defs[${a}]: must be an object`);else {let i=o;typeof i.bindTo!="string"||!i.bindTo?t.push(`source_defs[${a}]: missing required "bindTo" property`):(n.has(i.bindTo)&&t.push(`source_defs[${a}]: bindTo "${i.bindTo}" is not unique across source_defs`),n.add(i.bindTo)),typeof i.outputFile!="string"||!i.outputFile?t.push(`source_defs[${a}]: missing required "outputFile" property`):(s.has(i.outputFile)&&t.push(`source_defs[${a}]: outputFile "${i.outputFile}" is not unique across source_defs`),s.add(i.outputFile)),i.optionalForCompletionGating!=null&&typeof i.optionalForCompletionGating!="boolean"&&t.push(`source_defs[${a}]: optionalForCompletionGating must be a boolean`);}});}if(r.view!=null)if(typeof r.view!="object"||Array.isArray(r.view))t.push("view: must be an object");else {let n=r.view;!Array.isArray(n.elements)||n.elements.length===0?t.push("view.elements: required, must be a non-empty array"):n.elements.forEach((s,o)=>{if(!s||typeof s!="object"){t.push(`view.elements[${o}]: must be an object`);return}!s.kind||typeof s.kind!="string"?t.push(`view.elements[${o}].kind: required, must be a string`):Sc.has(s.kind)||t.push(`view.elements[${o}].kind: unknown kind "${s.kind}". Valid: ${[...Sc].join(", ")}`),s.data!=null&&(typeof s.data!="object"||Array.isArray(s.data))&&t.push(`view.elements[${o}].data: must be an object`);}),n.layout!=null&&(typeof n.layout!="object"||Array.isArray(n.layout))&&t.push("view.layout: must be an object"),n.features!=null&&(typeof n.features!="object"||Array.isArray(n.features))&&t.push("view.features: must be an object");}return {ok:t.length===0,errors:t}}async function 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 Tn(a).evaluate(r);}catch{s[o]=void 0;}}return {...n,_projections:s}}))}function Fh(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]=kc(a).evaluate(r);}catch{s[o]=void 0;}}return {...n,_projections:s}})}var gt={run:Ah,runSync:Ih,eval:Ph,resolve:Oh,validate:Nh,enrichSources:qh,enrichSourcesSync:Fh};function Dh(e,t){let r;return /\.m?js$/i.test(e)?r="local-node":/\.py$/i.test(e)?r="local-python":r="local-process",{meta:"task-executor",howToRun:r,whatToRun:ue({kind:"fs-path",value:e}),...t?{extra:t}:{}}}function Lo(e){return JSON.stringify(e)}function Vo(e){let t;try{t=JSON.parse(e);}catch{throw new Error(`parseExecutionRef: invalid JSON \u2014 ${e}`)}if(typeof t!="object"||t===null||typeof t.howToRun!="string"||typeof t.whatToRun!="string")throw new Error(`parseExecutionRef: missing required fields howToRun/whatToRun \u2014 ${e}`);return t}function An(e,t){function r(){return e.readIndex()??{}}function n(s,o,a){let i=String(o||"").split(".").filter(Boolean);if(i.length===0)return a&&typeof a=="object"&&!Array.isArray(a)?a:{value:a};let c={...s},u=c;for(let d=0;d<i.length-1;d++){let l=i[d],h=u[l],y=h&&typeof h=="object"&&!Array.isArray(h)?{...h}:{};u[l]=y,u=y;}return u[i[i.length-1]]=a,c}return {readCard(s){let o=r()[s];return !o||!e.cardExists(o.key)?null:e.readCard(o.key)},readCardKey(s){return r()[s]?.key??null},readAllCards(){let s=[];for(let[o,a]of Object.entries(r())){if(!e.cardExists(a.key))continue;let i=e.readCard(a.key);i?s.push(i):t?.(`[card-store] could not read card "${o}" at key "${a.key}"`);}return s},readChecksumIndex(){let s={};for(let[o,a]of Object.entries(r()))s[o]=a.checksum;return s},changedSince(s){let o=r(),a=[];for(let[i,c]of Object.entries(o))s[i]!==c.checksum&&a.push(i);for(let i of Object.keys(s))o[i]||a.push(i);return a},validateUpsert(s,o){let a=r(),i=a[s],c=Object.entries(a).find(([,u])=>u.key===o);return i&&i.key!==o?{ok:false,error:`Card id "${s}" is already mapped to key "${i.key}", cannot remap to "${o}"`}:c&&c[0]!==s?{ok:false,error:`Key "${o}" is already mapped to card id "${c[0]}", cannot remap to "${s}"`}:{ok:true}},writeCard(s,o,a){let i=r(),c=a??i[s]?.key??e.defaultCardKey(s),u=e.writeCard(c,o);i[s]={key:c,checksum:u,updatedAt:new Date().toISOString()},e.writeIndex(i);},patchCard(s,o,a){let i=r(),c=i[s];if(!c||!e.cardExists(c.key))throw new Error(`card "${s}" not found`);let u=e.readCard(c.key);if(!u||typeof u!="object"||Array.isArray(u))throw new Error(`card "${s}" is not patchable`);let d=n(u,o,a),l=e.writeCard(c.key,d);i[s]={key:c.key,checksum:l,updatedAt:new Date().toISOString()},e.writeIndex(i);},removeCard(s){let o=r();o[s]&&(delete o[s],e.writeIndex(o));},readIndex(){return r()}}}function Bo(e,t){return {readSourceData(r,n){let s=e.read(`${r}/${n}`);if(s==null)return null;let o=s.trim();if(!o)return null;try{return JSON.parse(o)}catch{return o}},ingestSourceDataStaged(r,n,s,o){let a=t(s);e.write(`${r}/.staged/${o}/${n}`,a);},commitSourceData(r,n,s){let o=`${r}/.staged/${s}/${n}`,a=e.read(o);return a==null?false:(e.write(`${r}/${n}`,a),e.remove(o),true)},hasSource(r,n){return e.exists(`${r}/${n}`)}}}function $c(e){function t(r){let n=e.readAllEntries();if(!r)return n;let s=n.findIndex(o=>o.id===r);return s===-1?n:n.slice(s+1)}return {readEntriesAfterCursor(r){let n=t(r);return n.length===0?{events:[],newCursor:r}:{events:n.map(s=>s.event),newCursor:n[n.length-1].id}},pendingCount(r){return t(r).length},appendEvent(r){e.appendEntry({id:e.generateId(),event:r});}}}function Ec(e,t){return {appendEntries(r,n){if(!r||n.length===0)return;let s=e.read(r)??[];e.write(r,[...s,...n]);},dispatchEntriesForJournalId(r,n){if(!r)return;let s=e.read(r);if(!(!s||s.length===0)){for(let o of s)try{n(o);}catch(a){let i=a instanceof Error?a.message:String(a);try{t(o,i);}catch{}}e.delete(r);}}}}var Ar="v1",ht="board/graph",xc="board/lastJournalProcessedId";function bc(e){return `cards/${e}/runtime`}function Tc(e){return {readRuntime(t){return e.read(bc(t))??{_sources:{}}},writeRuntime(t,r){e.write(bc(t),r);}}}function Mh(e,t){let r={...e};for(let n of t.deleteKeys)delete r[n];return {...r,...t.shallowMerge}}function Ac(e){return {readSnapshot(t){return e.readValues(t)},commitSnapshot(t,r){if(r.schemaVersion!==Ar)throw new Error(`Unsupported snapshot schema version: ${r.schemaVersion}`);let n=e.readValues(t);if(n.version!==r.expectedVersion)return {ok:false,reason:"version-mismatch",currentVersion:n.version};let s=Mh(n.values,r);return {ok:true,newVersion:e.writeValues(t,s,r.deleteKeys)}}}}function Go(e){function t(r){let n=e.read(r);return n==null?null:typeof n=="string"?n:JSON.stringify(n)}return {readTaskExecutorRef(){let r=t("task-executor");if(r?.trim())return Vo(r.trim())},writeTaskExecutorRef(r){e.write("task-executor",Lo(r));},readChatHandlerFlow(){return e.read("chat-handler-flow")},writeChatHandlerFlow(r){e.write("chat-handler-flow",r);},readCardStoreRef(){return t("card-store-ref")},writeCardStoreRef(r){e.write("card-store-ref",r);},readOutputsStoreRef(){return t("outputs-store-ref")},writeOutputsStoreRef(r){e.write("outputs-store-ref",r);},readScratchStoreRef(){return t("scratch-store-ref")},writeScratchStoreRef(r){e.write("scratch-store-ref",r);},readArchiveStoreRef(){return t("archive-store-ref")},writeArchiveStoreRef(r){e.write("archive-store-ref",r);}}}function Ic(e){return {writeComputedValues(t,r){e.write(`cards/${t}/computed_values`,r);},readComputedValues(t){return e.read(`cards/${t}/computed_values`)},readAllComputedValues(){let t={};for(let r of e.listKeys("cards/")){let n=r.match(/^cards\/([^/]+)\/computed_values$/);n&&(t[n[1]]=e.read(r));}return t},writeDataObjects(t){for(let[r,n]of Object.entries(t))r&&e.write(`data-objects/${r}`,n);},readDataObject(t){return e.read(`data-objects/${t}`)},readAllDataObjects(){let t={};for(let r of e.listKeys("data-objects/"))t[r.slice(13)]=e.read(r);return t},writeStatusSnapshot(t){e.write("status",t);},readStatusSnapshot(){return e.read("status")}}}function _c(e){return e?{lastRequestedToken:e.lastRequestedToken,lastCompletedToken:e.lastCompletedToken,lastCompletionStatus:e.lastCompletionStatus??(e.lastCompletedToken?"success":"not-started"),queueRequestedToken:e.queueRequestedToken}:{lastCompletionStatus:"not-started"}}function Lh(e){return e?.lastRequestedToken?e.lastCompletedToken!==e.lastRequestedToken:false}function Rc(e,t){return e?.lastRequestedToken?Lh(e)?"in-flight":!e.lastCompletedToken||e.lastCompletedToken<t?"dispatch":"idle":"dispatch"}function Vh(e,t){return {...e,lastCompletedToken:t,lastCompletionStatus:"success"}}function Cc(e,t){return {...e,lastCompletedToken:t,lastCompletionStatus:"failure"}}function In(e,t){let r=t.state.tasks,n=t.config.tasks,s=Object.keys(r),o=xr(t),a={completed:0,failed:0,in_progress:0,pending:0,blocked:0,unresolved:0},i=new Map;for(let f of o.pending)i.set(f.taskName,f.waitingOn);for(let f of o.unresolved)i.set(f.taskName,f.missingTokens);for(let f of o.blocked)i.set(f.taskName,f.failedTokens);let c=new Map;for(let[f,p]of Object.entries(n))for(let v of p.requires??[]){let _=c.get(v)??[];_.push(f),c.set(v,_);}let u=s.sort().map(f=>{let p=r[f],v=n[f]??{requires:[],provides:[]};p.status==="completed"?a.completed+=1:p.status==="failed"?a.failed+=1:p.status==="in-progress"&&(a.in_progress+=1);let _=v.requires??[],m=v.provides??[],g=Object.keys(p.data??{}).sort(),k=_.filter(O=>t.state.availableOutputs.includes(O)),w=_.filter(O=>!t.state.availableOutputs.includes(O)),$=i.get(f)??w,R=new Set;for(let O of m)for(let B of c.get(O)??[])B!==f&&R.add(B);let E=p.failedAt,I=p.error?{message:p.error,code:"TASK_FAILED",at:E,source:"task-runtime"}:void 0;return {name:f,status:p.status,error:I,requires:_,requires_satisfied:k,requires_missing:w,provides_declared:m,provides_runtime:g,blocked_by:$,unblocks:Array.from(R).sort(),runtime:{attempt_count:p.executionCount??0,restart_count:p.retryCount??0,in_progress_since:p.status==="in-progress"?p.startedAt??null:null,last_transition_at:p.lastUpdated??null,last_completed_at:p.completedAt??null,last_restarted_at:p.startedAt??null,status_age_ms:p.lastUpdated?0:null}}});a.pending=o.pending.length,a.blocked=o.blocked.length,a.unresolved=o.unresolved.length;let d=u.map(f=>({name:f.name,fanOut:f.unblocks.length})).sort((f,p)=>p.fanOut-f.fanOut||f.name.localeCompare(p.name)),l=d.length>0?d[0]:{name:null,fanOut:0},h=new Set;for(let f of Object.values(n))for(let p of f.requires??[])h.add(p);let y=0;for(let[f,p]of Object.entries(n)){let v=(p.requires??[]).length===0,m=(p.provides??[]).some(g=>(c.get(g)??[]).some(k=>k!==f));v&&!m&&(y+=1);}return {schema_version:"v1",meta:{board:{path:e}},summary:{card_count:s.length,completed:a.completed,eligible:o.eligible.length,pending:a.pending,blocked:a.blocked,unresolved:a.unresolved,failed:a.failed,in_progress:a.in_progress,orphan_cards:y,topology:{edge_count:Array.from(h).length,max_fan_out_card:l.name,max_fan_out:l.fanOut}},cards:u}}function Bh(){return new Date().toISOString()}function Pc(e,t,r,n,s,o,a){return async i=>{let c=[],u=r.cardStore.readCard(i.nodeId);if(!u)return "task-initiate-failure";let d=u.id,l=u.card_data??{},h=u.source_defs??[],y=h.filter(D=>D.optionalForCompletionGating!==true),f=r.cardRuntimeStore.readRuntime(d),p=false,v=()=>{p&&(r.cardRuntimeStore.writeRuntime(d,f),p=false);},_=D=>_c(f._sources[D]),m=(D,M)=>{f._sources[D]=_c(M),p=true;},g=i.taskState?.executionCount??0;if(f._lastExecutionCount!==g&&(f._sources={},f._lastExecutionCount=g,p=true),i.update){let D=i.update,M=D.outputFile;if(M){let ne=_(M);if(D.failure){let X=D.rqt??ne.lastRequestedToken??ne.queueRequestedToken;X&&m(M,Cc(ne,X));}else {let X=D.rqt;if(!ne.lastCompletedToken||X>ne.lastCompletedToken){let C=typeof D.deliveryToken=="string"?D.deliveryToken:void 0,S=false;C&&(S=r.fetchedSourcesStore.commitSourceData(d,M,C)),S?m(M,Vh(ne,X)):m(M,Cc(ne,X));}}v();}}let w={};for(let D of h)if(D.outputFile){let M=r.fetchedSourcesStore.readSourceData(d,D.outputFile);M!==null&&(w[D.bindTo]=M);}let $={};for(let[D,M]of Object.entries(i.state??{}))if(M!==null&&typeof M=="object"&&!Array.isArray(M)){let ne=M[D];$[D]=ne!==void 0?ne:M;}else $[D]=M;let R={id:d,card_data:{...l},requires:$,source_defs:h,compute:u.compute};R._sourcesData=w,u.compute&&gt.runSync(R,{sourcesData:w}),(o??r.outputStore.writeComputedValues.bind(r.outputStore))(d,R.computed_values??{});let E={...u},I=gt.enrichSourcesSync(Array.isArray(u.source_defs)?u.source_defs:void 0,{card_data:u.card_data,requires:$}),O=e.value;E.source_defs=Array.isArray(I)?I.map(D=>({...D,boardDir:typeof D.boardDir=="string"&&D.boardDir?D.boardDir:O})):I;let B=Bh(),W=i.update?void 0:B,Z=y.filter(D=>{let M=D.outputFile;if(typeof M!="string"||!M)return true;let ne=_(M);W&&(ne={...ne,queueRequestedToken:W},m(M,ne));let X=ne.queueRequestedToken??ne.lastRequestedToken??B,C=Rc(ne,X);return C==="in-flight"?false:C==="dispatch"});if(v(),Z.length>0){let D=false,M=B;for(let ne of Z){let X=ne.outputFile;if(typeof X!="string"||!X)continue;let C=_(X),S=C.queueRequestedToken??B;m(X,{...C,lastRequestedToken:S}),M=S,D=true;}return D&&v(),D&&(c.push({taskKind:"source-fetch",payload:{boardRef:ue(e),enrichedCard:E,callbackToken:i.callbackToken,rqt:M}}),r.executionRequestStore.appendEntries(t,c)),"task-initiated"}if(y.some(D=>{let M=D.outputFile;if(typeof M!="string"||!M)return false;let ne=_(M),X=ne.queueRequestedToken??ne.lastRequestedToken??B;return Rc(ne,X)==="in-flight"}))return "task-initiated";let Ie=u.provides??[],be={};for(let{bindTo:D,ref:M}of Ie)be[D]=gt.resolve(R,M);return (a??r.outputStore.writeDataObjects.bind(r.outputStore))(be),h.filter(D=>{if(D.optionalForCompletionGating!==true)return false;let M=_(D.outputFile);return !M.lastRequestedToken||!M.lastCompletedToken?true:M.lastCompletedToken<=M.lastRequestedToken}).length>0&&c.push({taskKind:"source-fetch",payload:{boardRef:ue(e),enrichedCard:E,callbackToken:i.callbackToken,rqt:B}}),n(i.nodeId,be),c.length>0&&r.executionRequestStore.appendEntries(t,c),"task-initiated"}}var Pn={settings:{completion:"manual",refreshStrategy:"data-changed"},tasks:{}};function Oc(e){return {[ht]:e.graph,[xc]:e.lastDrainedJournalId}}function jc(e){let t=e[ht],r=e[xc];if(!t||typeof t!="object")throw new Error(`State snapshot is missing required key: ${ht}`);return {graph:t,lastDrainedJournalId:typeof r=="string"?r:""}}function Nc(e){let t=e.requires,r=e.provides?.map(n=>n.bindTo)??[];return {requires:t&&t.length>0?t:void 0,provides:r,taskHandlers:["card-handler"],description:e.meta?.title??e.id}}function Q(e){return e!==void 0?{status:"success",data:e}:{status:"success"}}function q(e){return {status:"fail",error:e}}function ee(e){return {status:"error",error:e instanceof Error?e.message:String(e)}}function Gh(e){let t=new TextEncoder().encode(e),r=Array.from(t,n=>String.fromCharCode(n)).join("");return btoa(r).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function Fc(e){let t=e.replace(/-/g,"+").replace(/_/g,"/"),r=t+"=".repeat((4-t.length%4)%4),n=atob(r),s=Uint8Array.from(n,o=>o.charCodeAt(0));return new TextDecoder().decode(s)}function On(e){try{let t=JSON.parse(Fc(e));return typeof t?.t=="string"?{taskName:t.t}:null}catch{return null}}function Kh(e){return Gh(JSON.stringify(e))}function qc(e){try{let t=JSON.parse(Fc(e));return typeof t?.cbk=="string"&&typeof t?.cid=="string"&&typeof t?.b=="string"&&typeof t?.d=="string"?t:null}catch{return null}}function ve(){return new Date().toISOString()}function Uh(e,t){let r=t.onWarn??(()=>{}),n=ue(e);function s(C){if(C.length!==0)try{let S=t.publishBoardChangeNotifications?.(C);S&&typeof S.catch=="function"&&S.catch(T=>r(`[board-live-cards-public] publishBoardChangeNotifications failed: ${T instanceof Error?T.message:String(T)}`));}catch(S){r(`[board-live-cards-public] publishBoardChangeNotifications failed: ${S instanceof Error?S.message:String(S)}`);}}function o(){let C=i().readCardStoreRef();if(!C)throw new Error(`Board at ${e.value} has no card store configured. Run: init --base-ref <ref> --store-ref <b64-ref>`);let S=t.kvStorageForRef(C);return {readIndex(){return S.read("_index")},writeIndex(T){S.write("_index",T);},readCard(T){return S.read(T)},writeCard(T,j){return S.write(T,j),t.hashFn(j)},cardExists(T){return S.read(T)!==null},defaultCardKey(T){return T}}}let a={readValues(C){let S=t.kvStorage("state-snapshot"),T=S.listKeys().sort();if(T.length===0)return {version:null,values:{}};let j={};for(let te of T)j[te]=S.read(te);return {version:t.hashFn(j),values:j}},writeValues(C,S,T){let j=t.kvStorage("state-snapshot");for(let te of T)j.delete(te);for(let[te,se]of Object.entries(S))j.write(te,se);return t.hashFn(S)}},i=()=>Go(t.kvStorage("config")),c=()=>Ac(a),u=()=>$c(t.journalAdapter()),d=()=>An(o(),r),l=()=>{let C=i().readOutputsStoreRef();if(!C)throw new Error(`Board at ${e.value} has no outputs store configured. Run: init --outputs-store-ref <b64-ref>`);return Ic(t.kvStorageForRef(C))},h=()=>{let C=i().readArchiveStoreRef();return C?t.archiveFactoryForRef(C):t.archiveFactory()};function y(){return !!c().readSnapshot(e.value).values[ht]}function f(){let C=c().readSnapshot(e.value);if(!C.values[ht])throw new Error(`Board not initialized at ${e.value}`);return jc(C.values)}function p(C,S){let T=c().commitSnapshot(e.value,{schemaVersion:Ar,expectedVersion:S,commitId:t.genId(),committedAt:ve(),deleteKeys:[],shallowMerge:Oc(C)});if(!T.ok)throw new Error(`Snapshot commit failed (version mismatch): expected=${S??"null"} current=${T.currentVersion??"null"}`)}function v(C){u().appendEvent(C);}async function _(){let C=(P,F)=>{let ce=P.payload,nt=(ce?.enrichedCard??{}).id??ce?.cardId??"unknown";v({type:"task-failed",taskName:nt,error:F,timestamp:ve()});},S=Ec(t.kvStorage("execution-requests"),C),T=Tc(t.kvStorage("card-runtime")),j=Bo(t.blobStorage("sources"),P=>t.resolveBlob(P)),te=new Map,se={readRuntime(P){return te.get(P)??T.readRuntime(P)},writeRuntime(P,F){te.set(P,F);}},xe=[],Se=new Map,rt={readSourceData(P,F){let ce=`${P}/${F}`;return Se.has(ce)?Se.get(ce):j.readSourceData(P,F)},ingestSourceDataStaged(P,F,ce,Ot){j.ingestSourceDataStaged(P,F,ce,Ot);},commitSourceData(P,F,ce){let Ot=`${P}/.staged/${ce}/${F}`,Or=t.blobStorage("sources").read(Ot);if(Or==null)return false;let jt=`${P}/${F}`,Ho=Or.trim();try{Se.set(jt,JSON.parse(Ho));}catch{Se.set(jt,Ho);}return xe.push({cardId:P,outputFile:F,deliveryToken:ce}),true},hasSource(P,F){let ce=`${P}/${F}`;return Se.has(ce)?true:j.hasSource(P,F)}},Te={cardStore:d(),cardRuntimeStore:se,fetchedSourcesStore:rt,outputStore:l(),executionRequestStore:S},yt=f(),vt=xn(yt.graph),{events:It,newCursor:Pt}=u().readEntriesAfterCursor(yt.lastDrainedJournalId),St=[],jn=[],Nn=[],Uo=new Map,Vc=(P,F)=>{St.push({type:"task-completed",taskName:P,data:F,timestamp:ve()});try{h().stream("exec-history").append({taskName:P,status:"completed",completedAt:ve()});}catch{}},Jo=(P,F)=>{v({type:"task-failed",taskName:P,error:F,timestamp:ve()});try{h().stream("exec-history").append({taskName:P,status:"failed",error:F,completedAt:ve()});}catch{}},Ir=yc(vt,{handlers:{"card-handler":Pc(e,Pt,Te,Vc,Jo,(P,F)=>{jn.push({cardId:P,values:F});},P=>{Nn.push(P);})}});for(St=It;St.length>0;){let P=St;St=[];for(let F of P)if(F.type==="task-restart"){let ce=Te.cardStore.readCard(F.taskName);ce&&Uo.set(F.taskName,ce);}Ir.pushAll(P),await Ir.waitForHandlers();}let zo=Ir.getState();await Ir.dispose({wait:true});let Bc=c().readSnapshot(e.value).version;p({lastDrainedJournalId:Pt,graph:Er(zo)},Bc);for(let{cardId:P,values:F}of jn)Te.outputStore.writeComputedValues(P,F);for(let P of Nn)Te.outputStore.writeDataObjects(P);for(let[P,F]of te)T.writeRuntime(P,F);for(let{cardId:P,outputFile:F,deliveryToken:ce}of xe)j.commitSourceData(P,F,ce);let Pr;try{Pr=In(n,zo),Te.outputStore.writeStatusSnapshot(Pr);}catch(P){r(`[board-live-cards-public] status publish failed: ${P instanceof Error?P.message:String(P)}`);}let Qt=[];for(let{cardId:P,values:F}of jn)Qt.push({kind:"computed_values",cardId:P,values:F});for(let P of Nn)for(let[F,ce]of Object.entries(P))F&&Qt.push({kind:"data_object",key:F,payload:ce});for(let[P,F]of Uo)Qt.push({kind:"card_refreshed",cardId:P,card:F});Pr!==void 0&&Qt.push({kind:"status",status:Pr}),s(Qt);let Gc=i().readTaskExecutorRef()??{howToRun:"built-in",whatToRun:ue({kind:"built-in",value:"source-cli-task-executor"})};S.dispatchEntriesForJournalId(Pt,P=>{if(P.taskKind!=="source-fetch"){r(`[process-accumulated-events] unknown taskKind "${P.taskKind}" \u2014 skipping`);return}let F=P.payload,ce=F.enrichedCard?.id??"unknown",Ot=F.enrichedCard?.source_defs??[];for(let nt of Ot){if(!nt.outputFile){r(`[dispatch] source "${nt.bindTo}" has no outputFile \u2014 skipping`);continue}let Or=Kh({cbk:F.callbackToken,rg:e.value,br:ue(e),cid:ce,b:nt.bindTo,d:nt.outputFile,cs:void 0,rqt:F.rqt});t.dispatchExecution(Gc,{source_def:nt,base_ref:ue(e),callback:{token:Or,via:t.selfRef}}).catch(jt=>Jo(ce,jt instanceof Error?jt.message:String(jt)));}});}async function m(){try{let C=()=>{let T=f(),{events:j}=u().readEntriesAfterCursor(T.lastDrainedJournalId);j.length<=0||(m(),t.requestProcessAccumulated?.());},S=await Yo(t.lock,_,C);return Q({ran:S!==!1})}catch(C){return ee(C)}}function g(C){try{let S=C.params?.cardStoreRef;if(!S)return q("init requires params.cardStoreRef \u2014 create a card store with card-store-cli and pass its ref here");if(!y()){let Se=En(Pn);p({lastDrainedJournalId:"",graph:Er(Se)},null);}let T=C.params?.outputsStoreRef;if(!T)return q("init requires params.outputsStoreRef \u2014 pass the outputs store ref here");let j=C.params?.scratchStoreRef,te=C.params?.archiveStoreRef,se=i();se.writeCardStoreRef(S),se.writeOutputsStoreRef(T),j&&se.writeScratchStoreRef(j),te&&se.writeArchiveStoreRef(te);let xe=C.body??{};xe["task-executor-ref"]&&se.writeTaskExecutorRef(xe["task-executor-ref"]),Object.prototype.hasOwnProperty.call(xe,"chat-handler-flow")&&se.writeChatHandlerFlow(xe["chat-handler-flow"]);try{l().writeStatusSnapshot(In(n,xn(f().graph)));}catch{}return Q()}catch(S){return ee(S)}}function k(C){try{let S=l().readStatusSnapshot();if(!S){S=In(n,xn(f().graph));try{l().writeStatusSnapshot(S);}catch{}}return Q(S)}catch(S){return ee(S)}}function w(C){try{let S=C.params?.id;return S?(v({type:"task-removal",taskName:S,timestamp:ve()}),m(),Q()):q("removeCard requires params.id")}catch(S){return ee(S)}}function $(C){try{let S=C.params?.id;return S?(v({type:"task-restart",taskName:S,timestamp:ve()}),m(),Q()):q("retrigger requires params.id")}catch(S){return ee(S)}}async function R(C){return m()}function E(C){try{let S=C.params?.cardId,T=C.params?.all,j=!!C.params?.restart;if(!S&&!T)return q("upsertCard requires --card-id <id> or --all");let te=T?d().readAllCards().map(se=>se.id):[S];for(let se of te)if(!d().readCard(se))return q(`Card "${se}" not found in board at ${e.value}`);for(let se of te){let xe=d().readCard(se),Se=Nc(xe),rt=t.hashFn(Se),Te=t.kvStorage("card-upsert"),yt=Te.read(se),vt=yt?.taskConfigHash!==rt;if(!(!vt&&!j)){if(vt){let It=yt?.blobRef??d().readCardKey(se)??se;v({type:"task-upsert",taskName:se,taskConfig:Se,timestamp:ve()}),Te.write(se,{blobRef:It,taskConfigHash:rt,updatedAt:ve()});}j&&v({type:"task-restart",taskName:se,timestamp:ve()});}}return m(),Q()}catch(S){return ee(S)}}function I(C){try{let S=C.params?.token;if(!S)return q("taskFailed requires params.token");let T=C.params?.error??"unknown error",j=On(S);if(!j)return q("Invalid callback token");v({type:"task-failed",taskName:j.taskName,error:T,timestamp:ve()});try{h().stream("exec-history").append({taskName:j.taskName,status:"failed",error:T,completedAt:ve()});}catch{}return m(),Q()}catch(S){return ee(S)}}function O(C){try{let S=C.params?.token;if(!S)return q("taskProgress requires params.token");let j=(C.body??{}).update??{},te=On(S);return te?(v({type:"task-progress",taskName:te.taskName,update:j,timestamp:ve()}),m(),Q()):q("Invalid callback token")}catch(S){return ee(S)}}function B(C){try{let S=C.params?.token,T=C.params?.ref;if(!S)return q("sourceDataFetched requires params.token");if(!T)return q("sourceDataFetched requires params.ref");let j=qc(S);if(!j)return q("Invalid source token");let{cbk:te,cid:se,b:xe,d:Se,cs:rt,rqt:Te}=j,yt=Bo(t.blobStorage("sources"),St=>t.resolveBlob(St)),vt=t.genId();yt.ingestSourceDataStaged(se,Se,Ke(T),vt);let It=On(te);if(!It)return q("Invalid callback token embedded in source token");let Pt=ve();return v({type:"task-progress",taskName:It.taskName,update:{bindTo:xe,outputFile:Se,fetchedAt:Pt,deliveryToken:vt,sourceChecksum:rt,rqt:Te},timestamp:Pt}),m(),Q()}catch(S){return ee(S)}}function W(C){try{let S=C.params?.token,T=C.params?.reason??"unknown";if(!S)return q("sourceDataFetchFailure requires params.token");let j=qc(S);if(!j)return q("Invalid source token");let{cbk:te,b:se,d:xe,cs:Se,rqt:rt}=j,Te=On(te);return Te?(v({type:"task-progress",taskName:Te.taskName,update:{bindTo:se,outputFile:xe,failure:!0,reason:T,sourceChecksum:Se,rqt:rt},timestamp:ve()}),m(),Q()):q("Invalid callback token embedded in source token")}catch(S){return ee(S)}}function Z(C){try{let S=i().readCardStoreRef();return S?Q({storeRef:S}):q(`Board at ${e.value} has no card store configured`)}catch(S){return ee(S)}}function le(C){try{let S=i().readOutputsStoreRef();return S?Q({storeRef:S}):q(`Board at ${e.value} has no outputs store configured`)}catch(S){return ee(S)}}function Ie(C){try{let S=i().readScratchStoreRef();return Q({storeRef:S})}catch(S){return ee(S)}}function be(C){try{let S=i().readArchiveStoreRef();return Q({storeRef:S})}catch(S){return ee(S)}}function We(C){try{let S=C.params?.key;if(!S)return q("getConfig requires params.key");let T=i(),j;switch(S){case "task-executor":j=T.readTaskExecutorRef()??null;break;case "chat-handler-flow":j=T.readChatHandlerFlow()??null;break;case "card-store-ref":j=T.readCardStoreRef();break;case "outputs-store-ref":j=T.readOutputsStoreRef();break;case "scratch-store-ref":j=T.readScratchStoreRef();break;case "archive-store-ref":j=T.readArchiveStoreRef();break;default:return q(`getConfig: unknown key "${S}"`)}return Q({value:j})}catch(S){return ee(S)}}function D(C){try{let S=C.params?.key;if(!S)return q("getOutputsDataObject requires params.key");let T=l().readDataObject(S);return Q(T)}catch(S){return ee(S)}}function M(C){try{return Q(l().readAllDataObjects())}catch(S){return ee(S)}}function ne(C){try{let S=C.params?.key;if(!S)return q("getOutputsComputedValues requires params.key");let T=l().readComputedValues(S);return Q(T)}catch(S){return ee(S)}}function X(C){try{return Q(l().readAllComputedValues())}catch(S){return ee(S)}}return {init:g,status:k,getCardStoreRef:Z,getOutputsStoreRef:le,getScratchStoreRef:Ie,getArchiveStoreRef:be,getConfig:We,getOutputsDataObject:D,getAllOutputsDataObjects:M,getOutputsComputedValues:ne,getAllOutputsComputedValues:X,removeCard:w,retrigger:$,processAccumulatedEvents:R,upsertCard:E,taskFailed:I,taskProgress:O,sourceDataFetched:B,sourceDataFetchFailure:W}}function Jh(e,t){let r=()=>Go(t.kvStorage("config"));function n(){let m=r().readCardStoreRef();if(!m)throw new Error(`Board at ${e.value} has no card store configured. Run: init --base-ref <ref> --store-ref <b64-ref>`);let g=t.kvStorageForRef(m);return {readIndex(){return g.read("_index")},writeIndex(k){g.write("_index",k);},readCard(k){return g.read(k)},writeCard(k,w){return g.write(k,w),t.hashFn(w)},cardExists(k){return g.read(k)!==null},defaultCardKey(k){return k}}}let s=()=>An(n(),t.onWarn??(()=>{})),o=()=>{let m=r().readScratchStoreRef();return m?t.scratchStorageForRef(m):t.scratchStorage()};function a(m,g){let k=t.validateSchema(g),w=[],$=r().readTaskExecutorRef();if($&&Array.isArray(g.source_defs))for(let E of g.source_defs){let I=typeof E.bindTo=="string"?E.bindTo:"(unknown)";try{let O;try{O=t.invokeExecutorSync($,"validate-source-def",[],{timeout:t.executorTimeouts?.validationMs??1e4,input:JSON.stringify(E)});}catch(W){let Z=W;if(O=typeof Z?.stdout=="string"?Z.stdout:"",!O.trim()){w.push(`source "${I}": executor validate-source-def failed \u2014 ${W instanceof Error?W.message:String(W)}`);continue}}let B=JSON.parse(O.trim());if(!B.ok&&Array.isArray(B.errors))for(let W of B.errors)w.push(`source "${I}": ${W}`);}catch(O){w.push(`source "${I}": executor validate-source-def failed \u2014 ${O instanceof Error?O.message:String(O)}`);}}let R=[...k.errors,...w];return Q({cardId:m,isValid:R.length===0,issues:R})}function i(m,g,k){let w=r().readTaskExecutorRef();if(!w)return q("No task-executor registered for this board");let $=typeof m.bindTo=="string"?m.bindTo:"source",R=o(),E={...m,boardDir:e.value,_projections:g},I=R.create(JSON.stringify(E,null,2),`probe-in-${$}`,".json"),O=R.getUniqueKey(`probe-out-${$}`,".json"),B=R.getUniqueKey(`probe-err-${$}`,".txt"),W=ue(R.keyRef(I)),Z=ue(R.keyRef(O)),le=ue(R.keyRef(B)),Ie=null;try{if(t.invokeExecutorSync(w,"run-source-fetch",["--in-ref",W,"--out-ref",Z,"--err-ref",le],{timeout:m.timeout??t.executorTimeouts?.probeMs??6e4}),Ie=R.read(O),Ie===null)return q("Executor produced no output file")}catch(be){let We=R.read(B)?.trim()??(be instanceof Error?be.message:String(be));return q(`Probe failed: ${We}`)}finally{try{R.remove(I);}catch{}try{R.remove(B);}catch{}}if(k){let be=Ke(k);t.absoluteBlob.write(be.value,Ie);}try{R.remove(O);}catch{}return Q({bindTo:$,resultSizeBytes:Ie.length})}function c(m){try{let g=m.params?.cardId,k=m.params?.all;if(!g&&!k)return q("validateCard requires --card-id <id> or --all");let w=k?s().readAllCards().map(R=>R.id):[g],$=[];for(let R of w){let E=s().readCard(R);if(!E){$.push({cardId:R,isValid:!1,issues:[`Card "${R}" not found`]});continue}let I=a(R,E);if(I.status!=="success")return I;$.push(I.data);}return Q($)}catch(g){return ee(g)}}function u(m){try{if(!m.body||typeof m.body!="object"||Array.isArray(m.body))return q("validateCardPreflight requires card JSON object in body");let g=m.body,k=g["card-content"]??g,w=typeof k.id=="string"?k.id:"(unknown)",$=a(w,k),R=r().readTaskExecutorRef();if(R)try{let E=t.invokeExecutorSync(R,"validate-card-preflight",[],{timeout:t.executorTimeouts?.validationMs??1e4,input:JSON.stringify(k)}),I=JSON.parse(E.trim());if(!I.ok&&Array.isArray(I.errors)&&I.errors.length>0){let O=[...$.status==="success"?$.data.issues:[],...I.errors];return Q({cardId:w,isValid:!1,issues:O})}}catch{}return $}catch(g){return ee(g)}}function d(m){try{let g=m.params?.cardId,k=m.params?.sourceIdx,w=m.params?.outRef;if(!g)return q("probeSource requires params.cardId");if(k===void 0)return q("probeSource requires params.sourceIdx");let R=(m.body??{})["mock-projections"]??{},E=s().readCard(g);if(!E)return q(`Card "${g}" not found`);let I=E.source_defs??[];return k<0||k>=I.length?q(`sourceIdx ${k} out of range (card has ${I.length} source(s))`):i(I[k],R,w)}catch(g){return ee(g)}}function l(m){try{let g=m.params?.outRef,k=m.body;if(!k)return q('probeTmpSource requires body with "source-def" and "mock-projections"');let w=k["source-def"],$=k["mock-projections"]??{};return w?i(w,$,g):q('probeTmpSource body requires "source-def"')}catch(g){return ee(g)}}function h(m){try{let g=m.params?.sourceIdx,k=m.params?.outRef;if(g===void 0)return q("probeSourcePreflight requires params.sourceIdx");if(!m.body||typeof m.body!="object"||Array.isArray(m.body))return q("probeSourcePreflight requires card JSON object in body");let w=m.body,$=w["card-content"]??w,R=w["mock-projections"]??{},E=$.source_defs??[];if(g<0||g>=E.length)return q(`sourceIdx ${g} out of range (card has ${E.length} source(s))`);let I=E[g],O=r().readTaskExecutorRef();if(O){let B=typeof I.bindTo=="string"?I.bindTo:"source";try{let W={...I,_projections:R},Z=t.invokeExecutorSync(O,"probe-source-preflight",[],{timeout:I.timeout??t.executorTimeouts?.preflightMs??6e4,input:JSON.stringify(W)}),le=JSON.parse(Z.trim());return le.ok?Q({bindTo:B,reachable:le.reachable,latencyMs:le.latencyMs,note:le.note}):q(le.error??"Preflight probe failed")}catch{}}return i(I,R,k)}catch(g){return ee(g)}}function y(m){try{let g=r().readTaskExecutorRef();if(!g)return q("No task-executor registered for this board");let k=t.invokeExecutorSync(g,"describe-capabilities",[],{timeout:t.executorTimeouts?.describeMs??1e4});return Q(JSON.parse(k.trim()))}catch(g){return ee(g)}}function f(m){try{let g=m.body;if(!g||!Array.isArray(g.ops))return q("updatesInCardStore requires body.ops array");let k=g.ops,w=s();for(let $ of k){let R=$.op,E=$.id;if(!E)return q('op is missing "id"');if(R==="update"){let I=$["card-content"];if(!I)return q(`update op for "${E}" is missing "card-content"`);w.writeCard(E,I);}else return q(`Unknown op type: "${R??"(none)"}"`)}return Q()}catch(g){return ee(g)}}function p(m){try{let g=m.body;if(!g||!Array.isArray(g.ids))return q("readFromCardStore requires body.ids array");let k=g.ids,w=s(),$=k.map(R=>({id:R,"card-content":w.readCard(R)}));return Q({cards:$})}catch(g){return ee(g)}}function v(m){try{if(!m.body||typeof m.body!="object"||Array.isArray(m.body))return q("evalCardCompute requires a JSON object in body");let g=m.body,k=g["card-content"]??g,w=typeof k.id=="string"?k.id:"(unknown)",$=g["mock-fetched-sources"]??{},R=g["mock-requires"]??{},E=k.compute;if(!E||!Array.isArray(E)||E.length===0)return Q({cardId:w,ok:!0,computed_values:{},errors:[]});let I={id:w,card_data:k.card_data??{},requires:R,source_defs:k.source_defs,compute:E},O=gt.runSync(I,{sourcesData:$}),B=O.node.computed_values??{},W=O.errors??[];return Q({cardId:w,ok:W.length===0,computed_values:B,errors:W})}catch(g){return ee(g)}}function _(m){try{if(!m.body||typeof m.body!="object"||Array.isArray(m.body))return q("simulateCardCycle requires a JSON object in body");let g=m.body,k=g["card-content"]??g,w=typeof k.id=="string"?k.id:"(unknown)",$=g["mock-fetched-sources"]??{},R=g["mock-requires"]??{},E=a(w,k),I=E.status==="success"?{isValid:E.data.isValid,issues:E.data.issues}:{isValid:!1,issues:[E.status==="fail"?E.error:"internal error"]},O=k.source_defs??[],B=k.card_data??{},W=[],Z=[];if(O.length>0){W=gt.enrichSourcesSync(O,{card_data:B,requires:R});for(let X of W){let C=X.projections,S=X._projections;if(C&&S){for(let T of Object.keys(C))if(S[T]===void 0){let j=typeof X.bindTo=="string"?X.bindTo:"(unknown)";Z.push({bindTo:j,key:T,error:`Projection "${T}" resolved to undefined`});}}}}let le=[],Ie=g["task-executor-ref"],be=(Ie?.howToRun&&Ie?.whatToRun?Ie:void 0)??r().readTaskExecutorRef();for(let X=0;X<W.length;X++){let C=W[X],S=typeof C.bindTo=="string"?C.bindTo:`source_${X}`;if(!be){le.push({bindTo:S,skipped:!0,error:"No task executor configured"});continue}try{let T={...C},j=t.invokeExecutorSync(be,"probe-source-preflight",[],{timeout:C.timeout??t.executorTimeouts?.preflightMs??6e4,input:JSON.stringify(T)}),te=JSON.parse(j.trim());le.push({bindTo:S,reachable:te.reachable,latencyMs:te.latencyMs,error:te.ok?void 0:te.error});}catch{le.push({bindTo:S,skipped:!0,error:"Executor does not support probe-source-preflight"});}}let We=k.compute,D={},M=[];if(We&&Array.isArray(We)&&We.length>0){let X={id:w,card_data:B,requires:R,source_defs:k.source_defs,compute:We},C=gt.runSync(X,{sourcesData:$});D=C.node.computed_values??{},M=C.errors??[];}let ne=I.isValid&&Z.length===0&&M.length===0&&le.every(X=>X.reachable!==!1);return Q({cardId:w,ok:ne,validation:I,source_probes:le,projection_errors:Z,computed_values:D,compute_errors:M})}catch(g){return ee(g)}}return {validateCard:c,validateCardPreflight:u,probeSource:d,probeTmpSource:l,probeSourcePreflight:h,evalCardCompute:v,simulateCardCycle:_,describeTaskExecutorCapabilities:y,updatesInCardStore:f,readFromCardStore:p}}function zh(e){function t(s){return {status:"success",data:s}}function r(s){return {status:"fail",error:s}}function n(s){return {status:"error",error:s instanceof Error?s.message:String(s)}}return {get(s){try{let o=s.params?.id;if(o){let a=e.readCard(o);return a?t({cards:[a]}):r(`card "${o}" not found`)}return t({cards:e.readAllCards()})}catch(o){return n(o)}},set(s){try{let o=s.body;if(o==null)return r("set requires a body (card object or array of cards)");let a=Array.isArray(o)?o:[o];for(let i of a){if(typeof i.id!="string")return r("each card must have a string `id` field");e.writeCard(i.id,i);}return t({count:a.length})}catch(o){return n(o)}},del(s){try{let o=s.body?.ids??[],a=s.params?.id,i=a?[...o,a]:o;if(i.length===0)return r("del requires body.ids (string[]) or params.id");for(let c of i)e.removeCard(c);return t({count:i.length})}catch(o){return n(o)}},patch(s){try{let o=s.params?.id,a=s.params?.path;if(!o)return r("patch requires params.id");if(!a)return r("patch requires params.path");let i=s.body,c=i&&Object.prototype.hasOwnProperty.call(i,"value")?i.value:s.body;return e.patchCard(o,a,c),t({count:1})}catch(o){return n(o)}}}}function Hh(e){function t(s){return {status:"success",data:s}}function r(s){return {status:"fail",error:s}}function n(s){return {status:"error",error:s instanceof Error?s.message:String(s)}}return {list(s){try{let o=s.params?.prefix??"";return t({artifacts:e.list(o)})}catch(o){return n(o)}},head(s){try{let o=s.params?.key;return o?t({artifact:e.head(o)}):r("head requires params.key")}catch(o){return n(o)}},put(s){try{let o=s.params?.key,a=s.params?.contentType;if(!o)return r("put requires params.key");let i=s.body;if(typeof i=="string")return t({artifact:e.putText(o,i,a)});if(i&&typeof i=="object"&&typeof i.text=="string")return t({artifact:e.putText(o,i.text,a)});if(i&&typeof i=="object"&&Array.isArray(i.bytes)){let c=i.bytes,u=new Uint8Array(c.map(d=>Math.max(0,Math.min(255,Number(d)||0))));return t({artifact:e.putBytes(o,u,a)})}return r("put requires body as string, {text}, or {bytes:number[]}")}catch(o){return n(o)}},get(s){try{let o=s.params?.key,a=s.params?.as??"base64";if(!o)return r("get requires params.key");let i=e.head(o);if(!i)return r(`artifact "${o}" not found`);if(a==="text"){let u=e.getText(o);return u===null?r(`artifact "${o}" not found`):t({key:o,contentType:i.contentType,size:i.size,text:u})}let c=e.getBytes(o);return c===null?r(`artifact "${o}" not found`):t({key:o,contentType:i.contentType,size:i.size,bytes:[...c]})}catch(o){return n(o)}},del(s){try{let o=s.params?.key;return o?(e.remove(o),t({ok:!0})):r("del requires params.key")}catch(o){return n(o)}}}}function Dc(){return new Date().toISOString()}function Mc(e){return new TextEncoder().encode(e).byteLength}function Wh(e){return e?{key:e.key,size:e.size,updatedAt:e.updatedAt,contentType:e.contentType}:null}function Yh(e){let t=String(e||"").match(/^(\d+)[-_]/);return t?parseInt(t[1],10):0}function Xh(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 Qh(e){return String(e||"").toLowerCase().replace(/\s+/g,"_").replace(/[^a-z0-9_-]/g,"_").replace(/_+/g,"_").replace(/^_+|_+$/g,"")||"file"}function Zh(e){if(!e||e===".")return "";let t=String(e).replace(/^\./,"").toLowerCase().replace(/[^a-z0-9]/g,"");return t?`.${t}`:""}function ey(e){let t=Xh(e),r=t.lastIndexOf(".");return r<=0||r===t.length-1?{stem:t,ext:""}:{stem:t.slice(0,r),ext:t.slice(r)}}function ty(e){let t=e.lastIndexOf("/");return t>=0?e.slice(t+1):e}function Ko(e){function t(r){let n=e.stat?Wh(e.stat(r)):null;if(n)return n;if(!e.exists(r))return null;let s=e.read(r);return s===null?{key:r}:{key:r,size:Mc(s)}}return {exists(r){return e.exists(r)},putText(r,n,s="text/plain; charset=utf-8"){e.write(r,n);let o=t(r)??{key:r};return o.contentType=s,o.updatedAt=o.updatedAt??Dc(),o.size=o.size??Mc(n),o},putBytes(r,n,s="application/octet-stream"){if(e.writeBytes)e.writeBytes(r,n);else {let a=JSON.stringify({__kind:"bytes-array",data:[...n]});e.write(r,a);}let o=t(r)??{key:r};return o.contentType=s,o.updatedAt=o.updatedAt??Dc(),o.size=o.size??n.byteLength,o},getText(r){let n=e.read(r);if(n===null){if(!e.readBytes)return null;let s=e.readBytes(r);return s===null?null:Buffer.from(s).toString("utf-8")}try{let s=JSON.parse(n);if(s&&s.__kind==="bytes-array"&&Array.isArray(s.data))return new TextDecoder("utf-8").decode(new Uint8Array(s.data))}catch{}return n},getBytes(r){if(e.readBytes){let s=e.readBytes(r);if(s!==null)return s}let n=e.read(r);if(n===null)return null;try{let s=JSON.parse(n);if(s&&s.__kind==="bytes-array"&&Array.isArray(s.data))return new Uint8Array(s.data)}catch{}return new TextEncoder().encode(n)},head:t,list(r=""){return e.listKeys(r).map(n=>t(n)??{key:n}).sort((n,s)=>n.key.localeCompare(s.key))},remove(r){e.remove(r);}}}function ry(e){function t(s,o){let a=0,i=[];Array.isArray(o)&&i.push(...o);for(let c of e.list(`${s}/`))i.push(ty(c.key));for(let c of i){let u=Yh(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}=ey(s),d=Zh(u),l=Qh(c),h=`${String(o).padStart(3,"0")}-`,y=d,f=i-h.length-y.length;f<1&&(y="",f=i-h.length);let p=l.slice(0,Math.max(1,f)),v=`${h}${p}${y}`;return v.length>i&&(v=v.slice(0,i).replace(/\.$/,"")),v}function n(s,o,a){let i=t(s,a?.seedNames),c=r(o,i,{maxLen:a?.maxLen});for(;e.exists(`${s}/${c}`);)i+=1,c=r(o,i,{maxLen:a?.maxLen});return c}return {nextSerial:t,buildStoredName:r,allocateStoredName:n}}function ny(){function e(s,o){if(!Array.isArray(s))return [];let a=[];for(let i of s){if(!i||typeof i!="object")continue;let c=i;typeof c.stored_name=="string"&&a.push({name:typeof c.name=="string"?c.name:c.stored_name,stored_name:c.stored_name,size:typeof c.size=="number"&&Number.isFinite(c.size)?c.size:null,mime_type:typeof c.mime_type=="string"?c.mime_type:null,path:typeof c.path=="string"?c.path:null,uploaded_at:typeof c.uploaded_at=="string"?c.uploaded_at:o||null});}return a}function t(s){return !s||typeof s!="object"?[]:e(s.files,void 0)}function r(s,o){let a=t(s);if(o.length===0)return s.files=a,a;let i=new Set(a.map(c=>c.stored_name));for(let c of o)i.has(c.stored_name)||(a.push(c),i.add(c.stored_name));return s.files=a,a}function n(s,o,a){let i=t(s);if(!Number.isInteger(o)||o<0||o>=i.length)return {ok:false,reason:"index_out_of_range"};let c=i[o];return !c||!c.stored_name?{ok:false,reason:"missing_stored_name"}:a&&a!==c.stored_name?{ok:false,reason:"stale_reference"}:{ok:true,file:c}}return {read:t,normalizeIncoming:e,merge:r,resolve:n}}function WS(){return {async invoke(e,t){if(e.howToRun!=="local-node")return {dispatched:false,error:`createNodeSpawnInvocationAdapter: unsupported howToRun "${e.howToRun}"`};let r="";try{let o=e.whatToRun;r=Me(o);}catch{r="";}if(!r)return {dispatched:false,error:"createNodeSpawnInvocationAdapter: could not resolve executable path from whatToRun"};let n={...t},s=Buffer.from(JSON.stringify(n)).toString("base64");try{return 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=Me(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 ay=".board.lock";function iy(e,t){return typeof e=="string"?{cliDir:e,opts:t}:{cliDir:void 0,opts:e}}function uy(e,t){return typeof e=="string"?{cliDir:e,opts:t}:{cliDir:void 0,opts:e}}function Lc(e){if(e)return e;let t=ra((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,_e(t,"..","cli","node"),_e(t,"..","..","cli","node")];for(let n of r)try{return Ln(n),n}catch{}throw new Error(`createFsBoardPlatformAdapter: could not resolve a public CLI directory from module dir ${t}`)}function cy(e,t,r){let{cliDir:n,opts:s}=iy(t,r),o=Lc(n),a=e.value,c={meta:"board-live-cards",howToRun:"local-node",whatToRun:(s?.suppressSpawn?"":Ln(o))?ue({kind:"yaml-flow-cli",value:"board-live-cards-cli.js"}):"",...s?.notifyChannel?{extra:{notifyChannel:s.notifyChannel}}:{}};return {kvStorage:u=>Gr(_e(a,`.${u}`)),blobStorage:u=>u?qt(_e(a,u)):qt(a),scratchStorage:()=>Vr(_e(a,".tmp")),scratchStorageForRef:u=>Vr(Ke(u).value),archiveFactory:()=>Br(_e(a,"archive")),archiveFactoryForRef:u=>Br(Ke(u).value),journalAdapter:()=>ka(a),lock:wa(_e(a,ay)),selfRef:c,async dispatchExecution(u,d){if(s?.suppressSpawn)return {dispatched:false};try{let l=d.source_def?.bindTo??Fn().slice(0,8),h=Vr(_e(a,".tmp")),y=h.create(JSON.stringify(d,null,2),`exec-in-${l}`,".json"),f=h.getUniqueKey(`exec-out-${l}`,".json"),p=h.getUniqueKey(`exec-err-${l}`,".txt"),v=ue(h.keyRef(y)),_=ue(h.keyRef(f)),m=ue(h.keyRef(p));return ha(u,{subcommand:"run-source-fetch",inRef:v,outRef:_,errRef:m},o),{dispatched:!0}}catch(l){let h=l instanceof Error?l.message:String(l);try{let y=Br(_e(a,"archive")),f=new Date().toISOString().replace(/[:.]/g,"-"),p=d.source_def?.bindTo??"unknown";y.blob("exec-failures").write(`${f}-${p}.json`,JSON.stringify({error:h,args:d,ref:u,at:new Date().toISOString()},null,2));}catch{}return {dispatched:false,error:h}}},resolveBlob(u){let d=ea(u.value)?zn().read(u.value):qt(a).read(u.value);if(d===null)throw new Error(`resolveBlob: blob not found: ::${u.kind}::${u.value}`);return d},hashFn:Sa,genId:()=>ta(`${Date.now()}-${Math.random()}`).slice(0,32),kvStorageForRef:u=>Gr(Ke(u).value),requestProcessAccumulated(){s?.suppressSpawn||oa(o,e,s?.notifyChannel);},publishBoardChangeNotifications(u){if(!s?.notifyChannel||u.length===0)return;let d=u.map(l=>({id:Fn(),ts:new Date().toISOString(),boardRef:ue(e),notification:l}));aa(s.notifyChannel,d,s.onWarn);},onWarn:s?.onWarn}}function YS(e,t,r){let{cliDir:n,opts:s}=uy(t,r),o=Lc(n),a=cy(e,o,s),i=Fr();return {...a,invokeExecutorSync(c,u,d,l){let{command:h,baseArgs:y}=Dr(c,o),f=c.extra?["--extra",Buffer.from(JSON.stringify(c.extra)).toString("base64")]:[];return i.executeSync(h,[...y,u,...d,...f],{timeout:l?.timeout??3e4,encoding:"utf-8",input:l?.input})},validateSchema(c){let u=No(c);return {ok:u.errors.length===0,errors:u.errors}},absoluteBlob:zn()}}function XS(e,t={}){let r=t.chatsSubdir??"chats",n=t.kvSubdir??".kv",o=Gr(_e(e,...n?[n,"chat"]:["chat"]));return qo(a=>{let c=`${String(a).replace(/[^a-zA-Z0-9_-]/g,"_")}.jsonl`,u=r?_e(e,r,c):_e(e,c);return Hn(u)},o)}function QS(e,t={}){let r=t.filesSubdir??"files",n=r?_e(e,r):e;return Ko(qt(n))}function ZS(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=ht;exports.EMPTY_CONFIG=Pn;exports.SNAPSHOT_SCHEMA_VERSION_V1=Ar;exports.buildLocalBaseSpec=Dr;exports.createArtifactsStore=Ko;exports.createArtifactsStorePublic=Hh;exports.createBoardLiveCardsNonCorePublic=Jh;exports.createBoardLiveCardsPublic=Uh;exports.createCardFileMetadataStore=ny;exports.createCardStore=An;exports.createCardStorePublic=zh;exports.createChatStorage=qo;exports.createExecutionRefInvoker=wd;exports.createFileArtifactsStore=ry;exports.createFsBoardChatStorage=XS;exports.createFsBoardFileArtifactsStore=QS;exports.createFsBoardNonCorePlatformAdapter=YS;exports.createFsBoardPlatformAdapter=cy;exports.createInMemoryChatStorage=mh;exports.createNodeSpawnInvocationAdapter=WS;exports.decodeBoardRefFromToken=ZS;exports.evaluateArgsMassaging=Bn;exports.executionRefFromScriptPath=Dh;exports.invokeExecutionRef=ga;exports.invokeExecutionRefSync=Gn;exports.invokeRefSync=bd;exports.parseExecutionRef=Vo;exports.parseRef=Ke;exports.resolveWhatToRunValue=Me;exports.resolveYamlFlowCliPath=da;exports.serializeExecutionRef=Lo;exports.serializeRef=ue;//# sourceMappingURL=board-live-cards-node.cjs.map
18
+ `,"utf-8");},generateId(){return crypto.randomUUID()}}}function ka(e){return {tryAcquire(){try{if(!b__namespace.existsSync(e)){b__namespace.mkdirSync(J__namespace.dirname(e),{recursive:!0});try{b__namespace.writeFileSync(e,"{}",{flag:"wx"});}catch{}}return properLockfile.lockSync(e,{retries:0})}catch{return null}}}}var ba={$schema:"http://json-schema.org/draft-07/schema#",$id:"https://nsreehari.github.io/boards/live-cards.schema.json",definitions:{bind_ref:{description:"A card data path reference, e.g. 'card_data.raw_quotes' or 'requires.upstream'",type:"string",pattern:"^(card_data|requires|fetched_sources|computed_values)(\\.|$)"},bind_or_literal:{description:"A literal value or a bind reference object",oneOf:[{type:"string"},{type:"number"},{type:"boolean"},{type:"array"},{type:"object",properties:{bind:{$ref:"#/definitions/bind_ref"}},required:["bind"]}]},compute_expr:{description:"A declarative JSON compute expression",type:"object",required:["fn"],properties:{fn:{type:"string",description:"Function name from the built-in vocabulary",enum:["sum","avg","min","max","count","first","last","add","sub","mul","div","round","abs","mod","gt","gte","lt","lte","eq","neq","if","and","or","not","concat","upper","lower","template","filter","pluck","map","sort","slice","flat","unique","group","get","default","now","diff_days","format_date"]},input:{description:"card_data.path, literal, array of inputs, or nested compute_expr",oneOf:[{type:"string"},{type:"number"},{type:"boolean"},{type:"array"},{$ref:"#/definitions/compute_expr"}]},field:{type:"string",description:"For pluck/sum/group \u2014 the object key to extract"},where:{$ref:"#/definitions/compute_expr",description:"For filter \u2014 predicate expression ($ = current item)"},cond:{$ref:"#/definitions/compute_expr",description:"For if \u2014 condition expression"},then:{description:"For if \u2014 value when cond is truthy"},else:{description:"For if \u2014 value when cond is falsy"},format:{type:"string",description:"For format_date \u2014 date format string"}}},meta:{type:"object",properties:{title:{type:"string"},tags:{type:"array",items:{type:"string"}}}},requires:{type:"array",items:{type:"string"},description:"IDs of upstream nodes this node depends on"},provides:{type:"array",items:{type:"object",required:["bindTo","ref"],properties:{bindTo:{type:"string",description:"Token name published downstream"},ref:{type:"string",description:"Path to read value from (card_data.*, requires.*, fetched_sources.*, computed_values.*)"}}},description:"Explicit bindings exposing computed or card_data values downstream as named tokens"},compute_step:{description:"A single ordered compute step: reads card_data.*/requires.*/computed_values.*, writes to computed_values[bindTo]",type:"object",required:["bindTo","expr"],properties:{bindTo:{type:"string",description:"Key in computed_values to write result"},expr:{type:"string",description:"JSONata expression evaluated against { card_data, requires, fetched_sources, computed_values }"}}},source_def:{description:"One source entry. The engine requires 'bindTo' (compute namespace key) and 'outputFile' (delivery signal path). bindTo and outputFile must be unique across all source_defs in a card. Every other property is yours \u2014 add whatever your task-executor needs: kind, url, headers, mailbox, channel, model, query, etc. The full object is passed verbatim as the --in JSON to the executor.",type:"object",required:["bindTo","outputFile"],additionalProperties:true,properties:{bindTo:{type:"string",description:"Key under fetched_sources.* available in compute expressions"},outputFile:{type:"string",description:"Board-relative path the executor writes its JSON result to. Presence of this file signals delivery."},projections:{type:"object",description:"Named data projections from card_data or requires, evaluated before the executor is called. Each key is a ref name; each value is a JSONata expression rooted at card_data or requires. The resolved values are passed to the executor as _projections. fetched_sources, computed_values, and source_defs are not accessible here \u2014 sources run before those exist.",additionalProperties:{type:"string"}},optionalForCompletionGating:{type:"boolean",default:false,description:"When true this source does not gate card completion. Default false when absent, so source_defs are completion-gating by default."},timeout:{type:"integer",minimum:0,default:12e4,description:"Executor/script timeout in ms. Default: 120 000 (2 min)."},script:{type:"string",description:"Legacy direct-run: shell command executed when no .task-executor is registered. stdout is captured as the result."}}},render_element:{type:"object",required:["kind"],properties:{id:{type:"string",description:"Optional element ID for targeted updates"},kind:{enum:["metric","table","editable-table","chart","form","filter","list","notes","todo","alert","narrative","badge","text","markdown","ref","custom","actions"]},label:{type:"string",description:"Heading above this element"},className:{type:"string",description:"Bootstrap grid class, e.g. 'col-12 col-md-6'"},visible:{type:"string",description:"card_data/requires/fetched_sources/computed_values path \u2014 element shown only if truthy"},data:{type:"object",properties:{bind:{$ref:"#/definitions/bind_ref",description:"card_data/requires/fetched_sources/computed_values path to read data from"},writeTo:{$ref:"#/definitions/bind_ref",description:"card_data path for user input (form, filter, todo, notes)"},columns:{type:"array",items:{type:"string"},description:"table: visible columns"},maxRows:{type:"integer",description:"table/list: max rows to display"},sortable:{type:"boolean",default:true,description:"table: enable click-to-sort"},placeholder:{type:"string",description:"Empty-state message"},chartType:{enum:["bar","line","pie","doughnut"]},chartOptions:{type:"object",description:"Chart.js options passthrough"},fields:{type:"object",description:"JSON Schema for form/filter fields"},thresholds:{type:"object",properties:{green:{type:"string"},amber:{type:"string"}}},colorMap:{type:"object",description:"badge: value \u2192 Bootstrap color"},style:{enum:["heading","muted","default"],description:"text: display style"},upload:{type:"boolean",default:true,description:"file-upload: show drop zone (false = read-only file list)"},accept:{type:"array",items:{type:"string"},description:"file-upload: allowed extensions"},multiple:{type:"boolean",default:true,description:"file-upload: allow multiple files"},fileAttach:{type:"boolean",default:false,description:"chat: enable inline file attachments"},fileAccept:{type:"array",items:{type:"string"},description:"chat: allowed attachment extensions"},buttons:{type:"array",description:"actions: button definitions",items:{type:"object",required:["id","label"],properties:{id:{type:"string"},label:{type:"string"},style:{type:"string",description:"Bootstrap button variant, e.g. 'success', 'outline-danger'"},size:{type:"string",default:"sm"},disabled:{oneOf:[{type:"boolean"},{type:"string",description:"card_data/requires/fetched_sources/computed_values path \u2014 truthy = disabled"}]}}}}}}}},view:{type:"object",required:["elements"],properties:{elements:{type:"array",minItems:1,items:{$ref:"#/definitions/render_element"}},layout:{type:"object",properties:{board:{type:"object",properties:{col:{type:"integer",minimum:1,maximum:12},order:{type:"integer"}}},canvas:{type:"object",properties:{x:{type:"number"},y:{type:"number"},w:{type:"number"},h:{type:"number"}}}}},features:{type:"object",properties:{chat:{type:"boolean",default:false},notes:{type:"boolean",default:false},refresh:{type:"boolean",default:true}}}}}},title:"LiveCard",description:"A unified card node. Behavior depends on which sections are present (source_defs, compute, view, etc.)",type:"object",required:["id"],additionalProperties:false,properties:{id:{type:"string"},requires:{$ref:"#/definitions/requires"},provides:{$ref:"#/definitions/provides"},meta:{$ref:"#/definitions/meta"},view:{$ref:"#/definitions/view"},card_data:{type:"object",description:"Authored card data and runtime metadata. Includes uploaded-file metadata maintained by host handlers and inference evaluation results.",properties:{files:{type:"array",description:"Optional uploaded-file metadata maintained by host handlers. Stored name is normalized and serial-prefixed (for example 001-my_file.pdf).",items:{type:"object",required:["name","stored_name"],properties:{name:{type:"string",minLength:1},stored_name:{type:"string",minLength:5,maxLength:32,pattern:"^[0-9]{3,}-[a-z0-9._-]+$"},size:{oneOf:[{type:"integer",minimum:0},{type:"null"}]},mime_type:{type:"string"},path:{type:"string",pattern:"^[^\\s]+/files/[0-9]{3,}-[a-z0-9._-]+$"},uploaded_at:{type:"string",format:"date-time"}},additionalProperties:false}}},additionalProperties:true},source_defs:{type:"array",description:"Source entries. Each entry is passed verbatim to the board's .task-executor (registered via init --task-executor) as the --in JSON file. The executor fetches/generates the data and writes JSON to --out. If no executor is registered, the built-in executor runs the entry's 'cli' command directly. Sources gate completion by default. Set optionalForCompletionGating: true for enrichment-only source_defs that should not block task-completed.",items:{$ref:"#/definitions/source_def"}},compute:{type:"array",description:"Ordered array of compute steps. Each reads card_data.*/requires.*/fetched_sources.*/computed_values.* and writes to ephemeral computed_values[bindTo].",items:{$ref:"#/definitions/compute_step"}}}};var Qu=Xc(Wu());var ch=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))),dh=ch("./jsonata-sync.cjs"),Cn=null;var Yu=/\b(card_data|requires|fetched_sources|computed_values|source_defs)\b/g,lh=/^\s*(card_data|requires|fetched_sources|computed_values|source_defs)(\.|$)/;function fh(e){let t=new Set,r;for(Yu.lastIndex=0;(r=Yu.exec(e))!==null;)t.add(r[1]);return t}function Zu(e){let t=lh.exec(e);return t?t[1]:null}function Xu(e,t,r,n){try{dh(e);}catch(o){let a=o instanceof Error?o.message:String(o);n.push(`${t}: invalid JSONata expression (${a})`);return}let s=fh(e);for(let o of s)r.has(o)||n.push(`${t}: disallowed namespace "${o}" in expression`);}function jo(e,t,r){if(Array.isArray(e)){e.forEach((s,o)=>{jo(s,`${t}/${o}`,r);});return}if(typeof e=="string"){let s=Zu(e);if(!s)return;new Set(["card_data","requires","computed_values"]).has(s)||r.push(`${t}: disallowed namespace "${s}" in view reference`);return}if(!e||typeof e!="object")return;let n=e;for(let[s,o]of Object.entries(n))jo(o,`${t}/${s}`,r);}function ph(){if(Cn)return Cn;let e=new Qu.default({allErrors:true});return ih__default.default(e),Cn=e.compile(ba),Cn}function ec(e){let t=ph(),r=t(e),n=(t.errors??[]).map(s=>`${s.instancePath||"/"}: ${s.message??"unknown error"}`);if(e&&typeof e=="object"&&!Array.isArray(e)){let s=e.source_defs;if(Array.isArray(s)){let o=new Set,a=new Set;s.forEach((i,c)=>{if(!i||typeof i!="object"||Array.isArray(i))return;let u=i;typeof u.bindTo=="string"&&u.bindTo&&(o.has(u.bindTo)&&n.push(`/source_defs/${c}/bindTo: bindTo "${u.bindTo}" must be unique across all source_defs`),o.add(u.bindTo)),typeof u.outputFile=="string"&&u.outputFile&&(a.has(u.outputFile)&&n.push(`/source_defs/${c}/outputFile: outputFile "${u.outputFile}" must be unique across all source_defs`),a.add(u.outputFile));});}}return !r||n.length>0?{ok:false,errors:n}:{ok:true,errors:[]}}function tc(e){let t=[];if(!e||typeof e!="object"||Array.isArray(e))return {ok:true,errors:[]};let r=e,n=r.compute;Array.isArray(n)&&n.forEach((u,d)=>{if(!u||typeof u!="object"||Array.isArray(u))return;let l=u.expr;typeof l!="string"||l.trim().length===0||Xu(l,`/compute/${d}/expr`,new Set(["card_data","requires","fetched_sources","computed_values"]),t);});let s=new Set(["card_data","requires","fetched_sources","computed_values"]),o=r.provides;Array.isArray(o)&&o.forEach((u,d)=>{if(!u||typeof u!="object"||Array.isArray(u))return;let l=u.ref;if(typeof l!="string"||l.trim().length===0)return;let h=Zu(l);h===null?t.push(`/provides/${d}/ref: path "${l}" must start with a valid namespace (${[...s].join(", ")})`):s.has(h)||t.push(`/provides/${d}/ref: disallowed namespace "${h}" in path "${l}" (valid: ${[...s].join(", ")})`);});let a=r.view;a&&typeof a=="object"&&!Array.isArray(a)&&jo(a,"/view",t);let i=new Set(["card_data","requires"]),c=r.source_defs;return Array.isArray(c)&&c.forEach((u,d)=>{if(!u||typeof u!="object"||Array.isArray(u))return;let l=u.projections;if(!(!l||typeof l!="object"||Array.isArray(l)))for(let[h,y]of Object.entries(l))typeof y!="string"||y.trim().length===0||Xu(y,`/source_defs/${d}/projections/${h}`,i,t);}),{ok:t.length===0,errors:t}}function No(e){let t=ec(e);if(!t.ok)return t;let r=tc(e);return r.ok?{ok:true,errors:[]}:{ok:false,errors:r.errors}}function rc(e){return String(e).replace(/[^a-zA-Z0-9_-]/g,"_")}function nc(e){let t=e.payload??{};return {id:e.id,role:typeof t.role=="string"?t.role:"system",text:typeof t.text=="string"?t.text:"",files:Array.isArray(t.files)?t.files:[],updated_at:typeof t.updated_at=="string"?t.updated_at:""}}function qo(e,t){let r=s=>`chats/${rc(s)}/processing`,n=s=>`chats/${rc(s)}/config`;return {append(s,o,a,i=[]){return e(s).append({role:o,text:a,files:i,updated_at:new Date().toISOString()}).id},readAll(s){return e(s).readAll().map(nc)},readAfter(s,o){let a=e(s).readAfter(o);return {records:a.entries.map(nc),cursor:a.newCursor}},clear(s){e(s).clear?.();},setProcessing(s,o){o?t.write(r(s),true):t.delete(r(s));},isProcessing(s){return t.read(r(s))===true},getConfig(s){return t.read(n(s))??{}},setConfig(s,o){let a=t.read(n(s))??{};t.write(n(s),{...a,...o});}}}function mh(){let e=globalThis.crypto;return typeof e?.randomUUID=="function"?String(e.randomUUID()):`id-${Date.now()}-${Math.random().toString(36).slice(2)}`}function gh(){let e=new Map,t=new Map;function r(n){return e.has(n)||e.set(n,[]),e.get(n)}return {append(n,s,o,a=[]){let i={id:mh(),role:s,text:o,files:a,updated_at:new Date().toISOString()};return r(n).push(i),i.id},readAll(n){return r(n).slice()},readAfter(n,s){let o=r(n);if(!s)return {records:o.slice(),cursor:o.length>0?o[o.length-1].id:null};let a=o.findIndex(c=>c.id===s),i=a===-1?o.slice():o.slice(a+1);return {records:i,cursor:i.length>0?i[i.length-1].id:s}},clear(n){e.set(n,[]);},setProcessing(n,s){s?t.set(`p:${n}`,true):t.delete(`p:${n}`);},isProcessing(n){return t.get(`p:${n}`)===true},getConfig(n){return t.get(`c:${n}`)??{}},setConfig(n,s){let o=t.get(`c:${n}`)??{};t.set(`c:${n}`,{...o,...s});}}}var pt={RUNNING:"running",COMPLETED:"completed",FAILED:"failed",INACTIVATED:"inactivated"};function Ae(e){return e?Array.isArray(e.provides)?e.provides:[]:[]}function mt(e){return e?Array.isArray(e.requires)?e.requires:[]:[]}function sc(e){return e.tasks??{}}function Fo(e){return e?e.status===pt.FAILED||e.status===pt.INACTIVATED:false}function oc(e,t){return e.refreshStrategy??t?.refreshStrategy??"data-changed"}function ac(e){return e.maxExecutions}function ic(e,t){let r=new Set;for(let[n,s]of Object.entries(t))if(s.status===pt.COMPLETED){let o=e.tasks[n];o&&Ae(o).forEach(i=>r.add(i));}return Array.from(r)}function uc(e,t){let r={};return e.forEach(n=>{let s=t[n];if(!s)return;Ae(s).forEach(a=>{r[a]||(r[a]=[]),r[a].push(n);});}),r}function cc(e,t,r){let n=e.tasks[t]??$n(),s={};if(r){let a=r.tasks[t],i=mt(a);for(let c of i)for(let[u,d]of Object.entries(r.tasks))if(Ae(d).includes(c)){let l=e.tasks[u];l?.lastDataHash&&(s[c]=l.lastDataHash);break}}let o={...n,status:"running",startedAt:new Date().toISOString(),lastUpdated:new Date().toISOString(),progress:0,error:void 0,startConsumedHashes:s};return {...e,tasks:{...e.tasks,[t]:o},lastUpdated:new Date().toISOString()}}function dc(e,t,r,n,s,o){let a=e.tasks[r]??$n(),i=t.tasks[r];if(!i)throw new Error(`Task "${r}" not found in graph`);let c;n&&i.on&&i.on[n]?c=i.on[n]:c=Ae(i);let u=a.startConsumedHashes?{...a.startConsumedHashes}:{...a.lastConsumedHashes};if(!a.startConsumedHashes){let h=i.requires??[];for(let y of h)for(let[f,p]of Object.entries(t.tasks))if(Ae(p).includes(y)){let v=e.tasks[f];v?.lastDataHash&&(u[y]=v.lastDataHash);break}}let d={...a,status:"completed",completedAt:new Date().toISOString(),lastUpdated:new Date().toISOString(),executionCount:a.executionCount+1,lastEpoch:a.executionCount+1,lastDataHash:s,data:o,lastConsumedHashes:u,error:void 0},l=[...new Set([...e.availableOutputs,...c])];return {...e,tasks:{...e.tasks,[r]:d},availableOutputs:l,lastUpdated:new Date().toISOString()}}function lc(e,t,r,n){let s=e.tasks[r]??$n(),o=t.tasks[r];if(o?.retry){let c=s.retryCount+1;if(c<=o.retry.max_attempts){let u={...s,status:"not-started",retryCount:c,lastUpdated:new Date().toISOString(),error:n};return {...e,tasks:{...e.tasks,[r]:u},lastUpdated:new Date().toISOString()}}}let a={...s,status:"failed",failedAt:new Date().toISOString(),lastUpdated:new Date().toISOString(),error:n,executionCount:s.executionCount+1},i=e.availableOutputs;if(o?.on_failure&&o.on_failure.length>0&&(i=[...new Set([...e.availableOutputs,...o.on_failure])]),o?.circuit_breaker&&a.executionCount>=o.circuit_breaker.max_executions){let c=o.circuit_breaker.on_break;i=[...new Set([...i,...c])];}return {...e,tasks:{...e.tasks,[r]:a},availableOutputs:i,lastUpdated:new Date().toISOString()}}function fc(e,t,r,n){let s=e.tasks[t]??$n(),o={...s,progress:typeof n=="number"?n:s.progress,messages:[...s.messages??[],...r?[{message:r,timestamp:new Date().toISOString(),status:s.status}]:[]],lastUpdated:new Date().toISOString()};return {...e,tasks:{...e.tasks,[t]:o},lastUpdated:new Date().toISOString()}}function pc(e,t){let r=e.tasks[t];if(!r)return e;let n={...r,status:"not-started",startedAt:void 0,completedAt:void 0,failedAt:void 0,error:void 0,data:void 0,progress:null,lastUpdated:new Date().toISOString()};return {...e,tasks:{...e.tasks,[t]:n},lastUpdated:new Date().toISOString()}}function $n(){return {status:"not-started",executionCount:0,retryCount:0,lastEpoch:0,messages:[],progress:null}}function En(e,t){let r=`live-${Date.now()}`,n={};for(let o of Object.keys(e.tasks))n[o]=gc();let s={status:"running",tasks:n,availableOutputs:[],stuckDetection:{is_stuck:false,stuck_description:null,outputs_unresolvable:[],tasks_blocked:[]},lastUpdated:new Date().toISOString(),executionId:r,executionConfig:{executionMode:e.settings.execution_mode??"eligibility-mode",conflictStrategy:e.settings.conflict_strategy??"alphabetical",completionStrategy:e.settings.completion}};return {config:e,state:s}}function hh(e,t){let{config:r,state:n}=e;if("executionId"in t&&t.executionId&&t.executionId!==n.executionId)return e;switch(t.type){case "task-started":return {config:r,state:cc(n,t.taskName,r)};case "task-completed":return {config:r,state:dc(n,r,t.taskName,t.result,t.dataHash,t.data)};case "task-failed":return {config:r,state:lc(n,r,t.taskName,t.error)};case "task-progress":return {config:r,state:fc(n,t.taskName,t.message,t.progress)};case "task-restart":return {config:r,state:pc(n,t.taskName)};case "inject-tokens":return {config:r,state:{...n,availableOutputs:[...new Set([...n.availableOutputs,...t.tokens])],lastUpdated:new Date().toISOString()}};case "agent-action":return {config:r,state:_h(n,t.action)};case "task-upsert":return yh(e,t.taskName,t.taskConfig);case "task-removal":return vh(e,t.taskName);case "node-requires-add":return Sh(e,t.nodeName,t.tokens);case "node-requires-remove":return wh(e,t.nodeName,t.tokens);case "node-provides-add":return kh(e,t.nodeName,t.tokens);case "node-provides-remove":return bh(e,t.nodeName,t.tokens);default:return e}}function mc(e,t){return t.reduce((r,n)=>hh(r,n),e)}function yh(e,t,r){let n=!!e.config.tasks[t];return {config:{...e.config,tasks:{...e.config.tasks,[t]:r}},state:{...e.state,tasks:{...e.state.tasks,[t]:n?e.state.tasks[t]:gc()},lastUpdated:new Date().toISOString()}}}function vh(e,t){if(!e.config.tasks[t])return e;let{[t]:r,...n}=e.config.tasks,{[t]:s,...o}=e.state.tasks;return {config:{...e.config,tasks:n},state:{...e.state,tasks:o,lastUpdated:new Date().toISOString()}}}function Sh(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=mt(n),o=r.filter(a=>!s.includes(a));return o.length===0?e:{config:{...e.config,tasks:{...e.config.tasks,[t]:{...n,requires:[...s,...o]}}},state:e.state}}function wh(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=mt(n),o=s.filter(a=>!r.includes(a));return o.length===s.length?e:{config:{...e.config,tasks:{...e.config.tasks,[t]:{...n,requires:o}}},state:e.state}}function kh(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=Ae(n),o=r.filter(a=>!s.includes(a));return o.length===0?e:{config:{...e.config,tasks:{...e.config.tasks,[t]:{...n,provides:[...s,...o]}}},state:e.state}}function bh(e,t,r){let n=e.config.tasks[t];if(!n)return e;let s=Ae(n),o=s.filter(a=>!r.includes(a));return o.length===s.length?e:{config:{...e.config,tasks:{...e.config.tasks,[t]:{...n,provides:o}}},state:e.state}}function Er(e){return {version:1,config:e.config,state:e.state,snapshotAt:new Date().toISOString()}}function xn(e){if(!e||typeof e!="object")throw new Error("Invalid snapshot: expected an object");let t=e;if(!t.config||typeof t.config!="object")throw new Error('Invalid snapshot: missing or invalid "config"');if(!t.state||typeof t.state!="object")throw new Error('Invalid snapshot: missing or invalid "state"');let r=t.config,n=t.state;if(!r.settings||typeof r.settings!="object")throw new Error("Invalid snapshot: config.settings missing");if(!r.tasks||typeof r.tasks!="object")throw new Error("Invalid snapshot: config.tasks missing");if(!n.tasks||typeof n.tasks!="object")throw new Error("Invalid snapshot: state.tasks missing");if(!Array.isArray(n.availableOutputs))throw new Error("Invalid snapshot: state.availableOutputs must be an array");return {config:r,state:n}}function gc(){return {status:"not-started",executionCount:0,retryCount:0,lastEpoch:0,messages:[],progress:null}}function _h(e,t){let r=new Date().toISOString();switch(t){case "stop":return {...e,status:"stopped",lastUpdated:r};case "pause":return {...e,status:"paused",lastUpdated:r};case "resume":return {...e,status:"running",lastUpdated:r};default:return e}}function xr(e){let{config:t,state:r}=e,n=sc(t);if(Object.keys(n).length===0)return {eligible:[],pending:[],unresolved:[],blocked:[],conflicts:{}};let o=Rh(n),a=ic(t,r.tasks),i=new Set([...a,...r.availableOutputs]),c=[],u=[],d=[],l=[];for(let[y,f]of Object.entries(n)){let p=r.tasks[y],v=oc(f,t.settings),_=v!=="once";if(p?.status===pt.RUNNING||Fo(p))continue;let m=ac(f);if(m!==void 0&&p&&p.executionCount>=m||f.circuit_breaker&&p&&p.executionCount>=f.circuit_breaker.max_executions||!_&&p?.status===pt.COMPLETED)continue;if(_&&p?.status===pt.COMPLETED){let R=mt(f),E=false;switch(v){case "data-changed":{R.length>0&&R.some(P=>{for(let[B,W]of Object.entries(n))if(Ae(W).includes(P)){let Z=r.tasks[B];if(!Z)continue;let le=p.lastConsumedHashes?.[P];return Z.lastDataHash==null?Z.executionCount>p.lastEpoch:Z.lastDataHash!==le}return false})||(E=true);break}case "epoch-changed":{R.length>0&&R.some(P=>{for(let[B,W]of Object.entries(n))if(Ae(W).includes(P)){let Z=r.tasks[B];if(Z&&Z.executionCount>p.lastEpoch)return true}return false})||(E=true);break}case "time-based":{let I=f.refreshInterval??0;if(I<=0){E=true;break}let P=p.completedAt;if(!P){E=true;break}(Date.now()-Date.parse(P))/1e3<I&&(E=true);break}case "manual":E=true;break}if(E)continue}let g=mt(f);if(g.length===0){c.push(y);continue}let w=[],k=[],$=[];for(let R of g){if(i.has(R))continue;let E=o[R]||[];E.length===0?w.push(R):E.every(P=>Fo(r.tasks[P]))?$.push({token:R,failedProducer:E[0]}):k.push(R);}w.length>0?d.push({taskName:y,missingTokens:w}):$.length>0?l.push({taskName:y,failedTokens:$.map(R=>R.token),failedProducers:[...new Set($.map(R=>R.failedProducer))]}):k.length>0?u.push({taskName:y,waitingOn:k}):c.push(y);}let h={};if(c.length>1){let y=uc(c,n);for(let[f,p]of Object.entries(y))p.length>1&&(h[f]=p);}return {eligible:c,pending:u,unresolved:d,blocked:l,conflicts:h}}function Rh(e){let t={};for(let[r,n]of Object.entries(e)){for(let s of Ae(n))t[s]||(t[s]=[]),t[s].push(r);if(n.on)for(let s of Object.values(n.on))for(let o of s)t[o]||(t[o]=[]),t[o].includes(r)||t[o].push(r);if(n.on_failure)for(let s of n.on_failure)t[s]||(t[s]=[]),t[s].includes(r)||t[s].push(r);}return t}var Tr=class{buffer=[];append(t){this.buffer.push(t);}drain(){let t=this.buffer;return this.buffer=[],t}get size(){return this.buffer.length}};function Do(e){let t=Mo(e);return Ch(t)}function Mo(e){if(e==null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return "["+e.map(Mo).join(",")+"]";let t=e;return "{"+Object.keys(t).sort().map(n=>JSON.stringify(n)+":"+Mo(t[n])).join(",")+"}"}function Ch(e){let t=0xcbf29ce484222325n,r=0x100000001b3n,n=0xffffffffffffffffn;for(let s=0;s<e.length;s++)t^=BigInt(e.charCodeAt(s)),t=t*r&n;return t.toString(16).padStart(16,"0")}function $h(e){if(typeof Buffer<"u")return Buffer.from(e,"utf8").toString("base64url");if(typeof btoa=="function"){let t=new TextEncoder().encode(e),r="";for(let n of t)r+=String.fromCharCode(n);return btoa(r).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}throw new Error("No base64 encoder available in this runtime")}function Eh(e){if(typeof Buffer<"u")return Buffer.from(e,"base64url").toString("utf8");if(typeof atob=="function"){let t=e.replace(/-/g,"+").replace(/_/g,"/"),r=t+"=".repeat((4-t.length%4)%4),n=atob(r),s=new Uint8Array(n.length);for(let o=0;o<n.length;o++)s[o]=n.charCodeAt(o);return new TextDecoder().decode(s)}throw new Error("No base64 decoder available in this runtime")}function hc(e){let t=JSON.stringify({t:e,n:Date.now().toString(36)+Math.random().toString(36).slice(2,6)});return $h(t)}function xh(e){try{let t=JSON.parse(Eh(e));return typeof t?.t=="string"?{taskName:t.t}:null}catch{return null}}function yc(e,t,r){let{handlers:n,onDrain:s}=t,o=new Tr,a="state"in e&&"config"in e?e:En(e),i=false,c=new Set,u=new Map(Object.entries(n)),d=new Tr,l=false,h=false;function y(){if(!i){if(l){h=true;return}l=true;try{do h=!1,f();while(h)}finally{l=false;}}}function f(){let m=d.drain(),g=o.drain(),w=[...m,...g];w.length>0&&(a=mc(a,w));let k=xr(a);w.length>0&&s?.(w,a,k);for(let $ of k.eligible)_($);for(let $ of w)if($.type==="task-progress"){let{taskName:R,update:E}=$;if(!a.config.tasks[R])continue;let P=a.state.tasks[R];if(!P||P.status!=="running")continue;let B=hc(R),W=v(R,B,E).catch(Z=>{i||(d.append({type:"task-failed",taskName:R,error:Z.message??String(Z),timestamp:new Date().toISOString()}),y());}).finally(()=>{c.delete(W);});c.add(W);}}function p(m){let w=a.config.tasks[m].requires??[],k=new Map;for(let[R,E]of Object.entries(a.config.tasks))for(let I of E.provides??[])k.set(I,R);let $={};for(let R of w){let E=k.get(R);E?$[R]=a.state.tasks[E]?.data:$[R]=void 0;}return $}async function v(m,g,w){let k=a.config.tasks[m],$=k.taskHandlers??[],R=p(m);for(let E of $){let I=u.get(E);if(!I)throw new Error(`Handler '${E}' not found in registry (task '${m}')`);let P={nodeId:m,state:R,taskState:a.state.tasks[m],config:k,callbackToken:g,update:w};if(await I(P)==="task-initiate-failure")throw new Error(`Handler '${E}' returned task-initiate-failure (task '${m}')`)}}function _(m){let w=a.config.tasks[m]?.taskHandlers;if(!w||w.length===0)return;d.append({type:"task-started",taskName:m,timestamp:new Date().toISOString()}),y();let k=hc(m),$=v(m,k).catch(R=>{i||(d.append({type:"task-failed",taskName:m,error:R.message??String(R),timestamp:new Date().toISOString()}),y());}).finally(()=>{c.delete($);});c.add($);}return {push(m){i||(m.type==="task-completed"&&m.data&&!m.dataHash&&(m={...m,dataHash:Do(m.data)}),o.append(m),y());},pushAll(m){if(!i){for(let g of m)g.type==="task-completed"&&g.data&&!g.dataHash?o.append({...g,dataHash:Do(g.data)}):o.append(g);y();}},resolveCallback(m,g,w){if(i)return;let k=xh(m);if(!k)return;let{taskName:$}=k;if(a.config.tasks[$]){if(w&&w.length>0)o.append({type:"task-failed",taskName:$,error:w.join("; "),timestamp:new Date().toISOString()});else {let R=g&&Object.keys(g).length>0?Do(g):void 0;o.append({type:"task-completed",taskName:$,data:g,dataHash:R,timestamp:new Date().toISOString()});}y();}},addNode(m,g){i||(o.append({type:"task-upsert",taskName:m,taskConfig:g,timestamp:new Date().toISOString()}),y());},removeNode(m){i||(o.append({type:"task-removal",taskName:m,timestamp:new Date().toISOString()}),y());},addRequires(m,g){i||(o.append({type:"node-requires-add",nodeName:m,tokens:g,timestamp:new Date().toISOString()}),y());},removeRequires(m,g){i||(o.append({type:"node-requires-remove",nodeName:m,tokens:g,timestamp:new Date().toISOString()}),y());},addProvides(m,g){i||(o.append({type:"node-provides-add",nodeName:m,tokens:g,timestamp:new Date().toISOString()}),y());},removeProvides(m,g){i||(o.append({type:"node-provides-remove",nodeName:m,tokens:g,timestamp:new Date().toISOString()}),y());},registerHandler(m,g){u.set(m,g);},unregisterHandler(m){u.delete(m);},retrigger(m){i||a.config.tasks[m]&&(o.append({type:"task-restart",taskName:m,timestamp:new Date().toISOString()}),y());},retriggerAll(m){if(!i){for(let g of m)a.config.tasks[g]&&o.append({type:"task-restart",taskName:g,timestamp:new Date().toISOString()});y();}},snapshot(){return Er(a)},getState(){return a},getSchedule(){return xr(a)},async waitForHandlers(){c.size>0&&await Promise.allSettled([...c]);},async dispose(m){m?.wait&&c.size>0&&await Promise.allSettled([...c]),i=true;}}}var Ah=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))),Tn=Ah("./jsonata-sync.cjs"),wc=Tn;function vc(e,t){if(!t||!e)return;let r=t.split("."),n=e;for(let s=0;s<r.length;s++){if(n==null)return;n=n[r[s]];}return n}function kc(e,t,r){let n=t.split("."),s=e;for(let o=0;o<n.length-1;o++)(s[n[o]]==null||typeof s[n[o]]!="object")&&(s[n[o]]={}),s=s[n[o]];s[n[n.length-1]]=r;}async function Ih(e,t){if(!e?.compute?.length)return e;e.card_data||(e.card_data={}),e.computed_values={},e._sourcesData=t?.sourcesData??{};let r=e.requires??{},n={card_data:e.card_data,requires:r,expects_data:r,fetched_sources:e._sourcesData,data:e.computed_values,computed_values:e.computed_values};for(let s of e.compute)try{let o=await Tn(s.expr).evaluate(n);kc(e.computed_values,s.bindTo,o),n.computed_values=e.computed_values;}catch{}return e}function Oh(e,t){if(!e?.compute?.length)return {ok:true,node:e};e.card_data||(e.card_data={}),e.computed_values={},e._sourcesData=t?.sourcesData??{};let r=e.requires??{},n={card_data:e.card_data,requires:r,expects_data:r,fetched_sources:e._sourcesData,data:e.computed_values,computed_values:e.computed_values},s=[];for(let o of e.compute)try{let a=wc(o.expr).evaluate(n);kc(e.computed_values,o.bindTo,a),n.computed_values=e.computed_values;}catch(a){let i=a instanceof Error?a.message:String(a);s.push({bindTo:o.bindTo,error:i});}return s.length>0?{ok:true,node:e,errors:s}:{ok:true,node:e}}async function Ph(e,t,r){let n={...r??{},card_data:t.card_data??{},requires:t.requires??{},fetched_sources:t._sourcesData??{},computed_values:t.computed_values??{}};return Tn(e).evaluate(n)}function jh(e,t){return t.startsWith("fetched_sources.")?vc(e._sourcesData??{},t.slice(16)):vc(e,t)}var Sc=new Set(["metric","table","editable-table","chart","form","filter","list","notes","todo","alert","narrative","badge","text","markdown","ref","custom","actions"]),Nh=new Set(["id","meta","requires","provides","view","card_data","compute","source_defs"]);function qh(e){let t=[];if(!e||typeof e!="object"||Array.isArray(e))return {ok:false,errors:["Node must be a non-null object"]};let r=e;(typeof r.id!="string"||!r.id)&&t.push("id: required, must be a non-empty string");for(let n of Object.keys(r))Nh.has(n)||t.push(`Unknown top-level key: "${n}"`);if((r.card_data==null||typeof r.card_data!="object"||Array.isArray(r.card_data))&&t.push("card_data: required, must be an object"),r.meta!=null)if(typeof r.meta!="object"||Array.isArray(r.meta))t.push("meta: must be an object");else {let n=r.meta;n.title!=null&&typeof n.title!="string"&&t.push("meta.title: must be a string"),n.tags!=null&&!Array.isArray(n.tags)&&t.push("meta.tags: must be an array");}if(r.requires!=null&&!Array.isArray(r.requires)&&t.push("requires: must be an array of strings"),r.provides!=null&&(Array.isArray(r.provides)?r.provides.forEach((n,s)=>{if(!n||typeof n!="object"||Array.isArray(n))t.push(`provides[${s}]: must be an object with bindTo and ref`);else {let o=n;(typeof o.bindTo!="string"||!o.bindTo)&&t.push(`provides[${s}]: missing required "bindTo" string`),(typeof o.ref!="string"||!o.ref)&&t.push(`provides[${s}]: missing required "ref" string`);}}):t.push("provides: must be an array of { bindTo, ref } bindings")),r.compute!=null&&(Array.isArray(r.compute)?r.compute.forEach((n,s)=>{if(!n||typeof n!="object"||Array.isArray(n))t.push(`compute[${s}]: must be a compute step object`);else {let o=n;(typeof o.bindTo!="string"||!o.bindTo)&&t.push(`compute[${s}]: missing required "bindTo" property`),(typeof o.expr!="string"||!o.expr)&&t.push(`compute[${s}]: missing required "expr" string (JSONata expression)`);}}):t.push("compute: must be an array of compute steps")),r.source_defs!=null)if(!Array.isArray(r.source_defs))t.push("source_defs: must be an array");else {let n=new Set,s=new Set;r.source_defs.forEach((o,a)=>{if(!o||typeof o!="object"||Array.isArray(o))t.push(`source_defs[${a}]: must be an object`);else {let i=o;typeof i.bindTo!="string"||!i.bindTo?t.push(`source_defs[${a}]: missing required "bindTo" property`):(n.has(i.bindTo)&&t.push(`source_defs[${a}]: bindTo "${i.bindTo}" is not unique across source_defs`),n.add(i.bindTo)),typeof i.outputFile!="string"||!i.outputFile?t.push(`source_defs[${a}]: missing required "outputFile" property`):(s.has(i.outputFile)&&t.push(`source_defs[${a}]: outputFile "${i.outputFile}" is not unique across source_defs`),s.add(i.outputFile)),i.optionalForCompletionGating!=null&&typeof i.optionalForCompletionGating!="boolean"&&t.push(`source_defs[${a}]: optionalForCompletionGating must be a boolean`);}});}if(r.view!=null)if(typeof r.view!="object"||Array.isArray(r.view))t.push("view: must be an object");else {let n=r.view;!Array.isArray(n.elements)||n.elements.length===0?t.push("view.elements: required, must be a non-empty array"):n.elements.forEach((s,o)=>{if(!s||typeof s!="object"){t.push(`view.elements[${o}]: must be an object`);return}!s.kind||typeof s.kind!="string"?t.push(`view.elements[${o}].kind: required, must be a string`):Sc.has(s.kind)||t.push(`view.elements[${o}].kind: unknown kind "${s.kind}". Valid: ${[...Sc].join(", ")}`),s.data!=null&&(typeof s.data!="object"||Array.isArray(s.data))&&t.push(`view.elements[${o}].data: must be an object`);}),n.layout!=null&&(typeof n.layout!="object"||Array.isArray(n.layout))&&t.push("view.layout: must be an object"),n.features!=null&&(typeof n.features!="object"||Array.isArray(n.features))&&t.push("view.features: must be an object");}return {ok:t.length===0,errors:t}}async function Fh(e,t){if(!e||e.length===0)return [];let r={card_data:t.card_data??{},requires:t.requires??{}};return Promise.all(e.map(async n=>{let s={};if(n.projections&&typeof n.projections=="object"&&!Array.isArray(n.projections)){for(let[o,a]of Object.entries(n.projections))if(typeof a=="string"&&a.trim().length>0)try{s[o]=await Tn(a).evaluate(r);}catch{s[o]=void 0;}}return {...n,_projections:s}}))}function Dh(e,t){if(!e||e.length===0)return [];let r={card_data:t.card_data??{},requires:t.requires??{}};return e.map(n=>{let s={};if(n.projections&&typeof n.projections=="object"&&!Array.isArray(n.projections)){for(let[o,a]of Object.entries(n.projections))if(typeof a=="string"&&a.trim().length>0)try{s[o]=wc(a).evaluate(r);}catch{s[o]=void 0;}}return {...n,_projections:s}})}var gt={run:Ih,runSync:Oh,eval:Ph,resolve:jh,validate:qh,enrichSources:Fh,enrichSourcesSync:Dh};function Mh(e,t){let r;return /\.m?js$/i.test(e)?r="local-node":/\.py$/i.test(e)?r="local-python":r="local-process",{meta:"task-executor",howToRun:r,whatToRun:ue({kind:"fs-path",value:e}),...t?{extra:t}:{}}}function Lo(e){return JSON.stringify(e)}function Vo(e){let t;try{t=JSON.parse(e);}catch{throw new Error(`parseExecutionRef: invalid JSON \u2014 ${e}`)}if(typeof t!="object"||t===null||typeof t.howToRun!="string"||typeof t.whatToRun!="string")throw new Error(`parseExecutionRef: missing required fields howToRun/whatToRun \u2014 ${e}`);return t}function An(e,t){function r(){return e.readIndex()??{}}function n(s,o,a){let i=String(o||"").split(".").filter(Boolean);if(i.length===0)return a&&typeof a=="object"&&!Array.isArray(a)?a:{value:a};let c={...s},u=c;for(let d=0;d<i.length-1;d++){let l=i[d],h=u[l],y=h&&typeof h=="object"&&!Array.isArray(h)?{...h}:{};u[l]=y,u=y;}return u[i[i.length-1]]=a,c}return {readCard(s){let o=r()[s];return !o||!e.cardExists(o.key)?null:e.readCard(o.key)},readCardKey(s){return r()[s]?.key??null},readAllCards(){let s=[];for(let[o,a]of Object.entries(r())){if(!e.cardExists(a.key))continue;let i=e.readCard(a.key);i?s.push(i):t?.(`[card-store] could not read card "${o}" at key "${a.key}"`);}return s},readChecksumIndex(){let s={};for(let[o,a]of Object.entries(r()))s[o]=a.checksum;return s},changedSince(s){let o=r(),a=[];for(let[i,c]of Object.entries(o))s[i]!==c.checksum&&a.push(i);for(let i of Object.keys(s))o[i]||a.push(i);return a},validateUpsert(s,o){let a=r(),i=a[s],c=Object.entries(a).find(([,u])=>u.key===o);return i&&i.key!==o?{ok:false,error:`Card id "${s}" is already mapped to key "${i.key}", cannot remap to "${o}"`}:c&&c[0]!==s?{ok:false,error:`Key "${o}" is already mapped to card id "${c[0]}", cannot remap to "${s}"`}:{ok:true}},writeCard(s,o,a){let i=r(),c=a??i[s]?.key??e.defaultCardKey(s),u=e.writeCard(c,o);i[s]={key:c,checksum:u,updatedAt:new Date().toISOString()},e.writeIndex(i);},patchCard(s,o,a){let i=r(),c=i[s];if(!c||!e.cardExists(c.key))throw new Error(`card "${s}" not found`);let u=e.readCard(c.key);if(!u||typeof u!="object"||Array.isArray(u))throw new Error(`card "${s}" is not patchable`);let d=n(u,o,a),l=e.writeCard(c.key,d);i[s]={key:c.key,checksum:l,updatedAt:new Date().toISOString()},e.writeIndex(i);},removeCard(s){let o=r();o[s]&&(delete o[s],e.writeIndex(o));},readIndex(){return r()}}}function Bo(e,t){return {readSourceData(r,n){let s=e.read(`${r}/${n}`);if(s==null)return null;let o=s.trim();if(!o)return null;try{return JSON.parse(o)}catch{return o}},ingestSourceDataStaged(r,n,s,o){let a=t(s);e.write(`${r}/.staged/${o}/${n}`,a);},commitSourceData(r,n,s){let o=`${r}/.staged/${s}/${n}`,a=e.read(o);return a==null?false:(e.write(`${r}/${n}`,a),e.remove(o),true)},hasSource(r,n){return e.exists(`${r}/${n}`)}}}function $c(e){function t(r){let n=e.readAllEntries();if(!r)return n;let s=n.findIndex(o=>o.id===r);return s===-1?n:n.slice(s+1)}return {readEntriesAfterCursor(r){let n=t(r);return n.length===0?{events:[],newCursor:r}:{events:n.map(s=>s.event),newCursor:n[n.length-1].id}},pendingCount(r){return t(r).length},appendEvent(r){e.appendEntry({id:e.generateId(),event:r});}}}function Ec(e,t){return {appendEntries(r,n){if(!r||n.length===0)return;let s=e.read(r)??[];e.write(r,[...s,...n]);},dispatchEntriesForJournalId(r,n){if(!r)return;let s=e.read(r);if(!(!s||s.length===0)){for(let o of s)try{n(o);}catch(a){let i=a instanceof Error?a.message:String(a);try{t(o,i);}catch{}}e.delete(r);}}}}var Ar="v1",ht="board/graph",xc="board/lastJournalProcessedId";function bc(e){return `cards/${e}/runtime`}function Tc(e){return {readRuntime(t){return e.read(bc(t))??{_sources:{}}},writeRuntime(t,r){e.write(bc(t),r);}}}function Lh(e,t){let r={...e};for(let n of t.deleteKeys)delete r[n];return {...r,...t.shallowMerge}}function Ac(e){return {readSnapshot(t){return e.readValues(t)},commitSnapshot(t,r){if(r.schemaVersion!==Ar)throw new Error(`Unsupported snapshot schema version: ${r.schemaVersion}`);let n=e.readValues(t);if(n.version!==r.expectedVersion)return {ok:false,reason:"version-mismatch",currentVersion:n.version};let s=Lh(n.values,r);return {ok:true,newVersion:e.writeValues(t,s,r.deleteKeys)}}}}function Go(e){function t(r){let n=e.read(r);return n==null?null:typeof n=="string"?n:JSON.stringify(n)}return {readTaskExecutorRef(){let r=t("task-executor");if(r?.trim())return Vo(r.trim())},writeTaskExecutorRef(r){e.write("task-executor",Lo(r));},readChatHandlerFlow(){return e.read("chat-handler-flow")},writeChatHandlerFlow(r){e.write("chat-handler-flow",r);},readCardStoreRef(){return t("card-store-ref")},writeCardStoreRef(r){e.write("card-store-ref",r);},readOutputsStoreRef(){return t("outputs-store-ref")},writeOutputsStoreRef(r){e.write("outputs-store-ref",r);},readScratchStoreRef(){return t("scratch-store-ref")},writeScratchStoreRef(r){e.write("scratch-store-ref",r);},readArchiveStoreRef(){return t("archive-store-ref")},writeArchiveStoreRef(r){e.write("archive-store-ref",r);}}}function Ic(e){return {writeComputedValues(t,r){e.write(`cards/${t}/computed_values`,r);},readComputedValues(t){return e.read(`cards/${t}/computed_values`)},readAllComputedValues(){let t={};for(let r of e.listKeys("cards/")){let n=r.match(/^cards\/([^/]+)\/computed_values$/);n&&(t[n[1]]=e.read(r));}return t},writeDataObjects(t){for(let[r,n]of Object.entries(t))r&&e.write(`data-objects/${r}`,n);},readDataObject(t){return e.read(`data-objects/${t}`)},readAllDataObjects(){let t={};for(let r of e.listKeys("data-objects/"))t[r.slice(13)]=e.read(r);return t},writeStatusSnapshot(t){e.write("status",t);},readStatusSnapshot(){return e.read("status")}}}function _c(e){return e?{lastRequestedToken:e.lastRequestedToken,lastCompletedToken:e.lastCompletedToken,lastCompletionStatus:e.lastCompletionStatus??(e.lastCompletedToken?"success":"not-started"),queueRequestedToken:e.queueRequestedToken}:{lastCompletionStatus:"not-started"}}function Vh(e){return e?.lastRequestedToken?e.lastCompletedToken!==e.lastRequestedToken:false}function Rc(e,t){return e?.lastRequestedToken?Vh(e)?"in-flight":!e.lastCompletedToken||e.lastCompletedToken<t?"dispatch":"idle":"dispatch"}function Bh(e,t){return {...e,lastCompletedToken:t,lastCompletionStatus:"success"}}function Cc(e,t){return {...e,lastCompletedToken:t,lastCompletionStatus:"failure"}}function In(e,t){let r=t.state.tasks,n=t.config.tasks,s=Object.keys(r),o=xr(t),a={completed:0,failed:0,in_progress:0,pending:0,blocked:0,unresolved:0},i=new Map;for(let f of o.pending)i.set(f.taskName,f.waitingOn);for(let f of o.unresolved)i.set(f.taskName,f.missingTokens);for(let f of o.blocked)i.set(f.taskName,f.failedTokens);let c=new Map;for(let[f,p]of Object.entries(n))for(let v of p.requires??[]){let _=c.get(v)??[];_.push(f),c.set(v,_);}let u=s.sort().map(f=>{let p=r[f],v=n[f]??{requires:[],provides:[]};p.status==="completed"?a.completed+=1:p.status==="failed"?a.failed+=1:p.status==="in-progress"&&(a.in_progress+=1);let _=v.requires??[],m=v.provides??[],g=Object.keys(p.data??{}).sort(),w=_.filter(P=>t.state.availableOutputs.includes(P)),k=_.filter(P=>!t.state.availableOutputs.includes(P)),$=i.get(f)??k,R=new Set;for(let P of m)for(let B of c.get(P)??[])B!==f&&R.add(B);let E=p.failedAt,I=p.error?{message:p.error,code:"TASK_FAILED",at:E,source:"task-runtime"}:void 0;return {name:f,status:p.status,error:I,requires:_,requires_satisfied:w,requires_missing:k,provides_declared:m,provides_runtime:g,blocked_by:$,unblocks:Array.from(R).sort(),runtime:{attempt_count:p.executionCount??0,restart_count:p.retryCount??0,in_progress_since:p.status==="in-progress"?p.startedAt??null:null,last_transition_at:p.lastUpdated??null,last_completed_at:p.completedAt??null,last_restarted_at:p.startedAt??null,status_age_ms:p.lastUpdated?0:null}}});a.pending=o.pending.length,a.blocked=o.blocked.length,a.unresolved=o.unresolved.length;let d=u.map(f=>({name:f.name,fanOut:f.unblocks.length})).sort((f,p)=>p.fanOut-f.fanOut||f.name.localeCompare(p.name)),l=d.length>0?d[0]:{name:null,fanOut:0},h=new Set;for(let f of Object.values(n))for(let p of f.requires??[])h.add(p);let y=0;for(let[f,p]of Object.entries(n)){let v=(p.requires??[]).length===0,m=(p.provides??[]).some(g=>(c.get(g)??[]).some(w=>w!==f));v&&!m&&(y+=1);}return {schema_version:"v1",meta:{board:{path:e}},summary:{card_count:s.length,completed:a.completed,eligible:o.eligible.length,pending:a.pending,blocked:a.blocked,unresolved:a.unresolved,failed:a.failed,in_progress:a.in_progress,orphan_cards:y,topology:{edge_count:Array.from(h).length,max_fan_out_card:l.name,max_fan_out:l.fanOut}},cards:u}}function Gh(){return new Date().toISOString()}function Oc(e,t,r,n,s,o,a){return async i=>{let c=[],u=r.cardStore.readCard(i.nodeId);if(!u)return "task-initiate-failure";let d=u.id,l=u.card_data??{},h=u.source_defs??[],y=h.filter(D=>D.optionalForCompletionGating!==true),f=r.cardRuntimeStore.readRuntime(d),p=false,v=()=>{p&&(r.cardRuntimeStore.writeRuntime(d,f),p=false);},_=D=>_c(f._sources[D]),m=(D,M)=>{f._sources[D]=_c(M),p=true;},g=i.taskState?.executionCount??0;if(f._lastExecutionCount!==g&&(f._sources={},f._lastExecutionCount=g,p=true),i.update){let D=i.update,M=D.outputFile;if(M){let ne=_(M);if(D.failure){let X=D.rqt??ne.lastRequestedToken??ne.queueRequestedToken;X&&m(M,Cc(ne,X));}else {let X=D.rqt;if(!ne.lastCompletedToken||X>ne.lastCompletedToken){let C=typeof D.deliveryToken=="string"?D.deliveryToken:void 0,S=false;C&&(S=r.fetchedSourcesStore.commitSourceData(d,M,C)),S?m(M,Bh(ne,X)):m(M,Cc(ne,X));}}v();}}let k={};for(let D of h)if(D.outputFile){let M=r.fetchedSourcesStore.readSourceData(d,D.outputFile);M!==null&&(k[D.bindTo]=M);}let $={};for(let[D,M]of Object.entries(i.state??{}))if(M!==null&&typeof M=="object"&&!Array.isArray(M)){let ne=M[D];$[D]=ne!==void 0?ne:M;}else $[D]=M;let R={id:d,card_data:{...l},requires:$,source_defs:h,compute:u.compute};R._sourcesData=k,u.compute&&gt.runSync(R,{sourcesData:k}),(o??r.outputStore.writeComputedValues.bind(r.outputStore))(d,R.computed_values??{});let E={...u},I=gt.enrichSourcesSync(Array.isArray(u.source_defs)?u.source_defs:void 0,{card_data:u.card_data,requires:$}),P=e.value;E.source_defs=Array.isArray(I)?I.map(D=>({...D,boardDir:typeof D.boardDir=="string"&&D.boardDir?D.boardDir:P})):I;let B=Gh(),W=i.update?void 0:B,Z=y.filter(D=>{let M=D.outputFile;if(typeof M!="string"||!M)return true;let ne=_(M);W&&(ne={...ne,queueRequestedToken:W},m(M,ne));let X=ne.queueRequestedToken??ne.lastRequestedToken??B,C=Rc(ne,X);return C==="in-flight"?false:C==="dispatch"});if(v(),Z.length>0){let D=false,M=B;for(let ne of Z){let X=ne.outputFile;if(typeof X!="string"||!X)continue;let C=_(X),S=C.queueRequestedToken??B;m(X,{...C,lastRequestedToken:S}),M=S,D=true;}return D&&v(),D&&(c.push({taskKind:"source-fetch",payload:{boardRef:ue(e),enrichedCard:E,callbackToken:i.callbackToken,rqt:M}}),r.executionRequestStore.appendEntries(t,c)),"task-initiated"}if(y.some(D=>{let M=D.outputFile;if(typeof M!="string"||!M)return false;let ne=_(M),X=ne.queueRequestedToken??ne.lastRequestedToken??B;return Rc(ne,X)==="in-flight"}))return "task-initiated";let Ie=u.provides??[],be={};for(let{bindTo:D,ref:M}of Ie)be[D]=gt.resolve(R,M);return (a??r.outputStore.writeDataObjects.bind(r.outputStore))(be),h.filter(D=>{if(D.optionalForCompletionGating!==true)return false;let M=_(D.outputFile);return !M.lastRequestedToken||!M.lastCompletedToken?true:M.lastCompletedToken<=M.lastRequestedToken}).length>0&&c.push({taskKind:"source-fetch",payload:{boardRef:ue(e),enrichedCard:E,callbackToken:i.callbackToken,rqt:B}}),n(i.nodeId,be),c.length>0&&r.executionRequestStore.appendEntries(t,c),"task-initiated"}}var On={settings:{completion:"manual",refreshStrategy:"data-changed"},tasks:{}};function Pc(e){return {[ht]:e.graph,[xc]:e.lastDrainedJournalId}}function jc(e){let t=e[ht],r=e[xc];if(!t||typeof t!="object")throw new Error(`State snapshot is missing required key: ${ht}`);return {graph:t,lastDrainedJournalId:typeof r=="string"?r:""}}function Nc(e){let t=e.requires,r=e.provides?.map(n=>n.bindTo)??[];return {requires:t&&t.length>0?t:void 0,provides:r,taskHandlers:["card-handler"],description:e.meta?.title??e.id}}function Q(e){return e!==void 0?{status:"success",data:e}:{status:"success"}}function q(e){return {status:"fail",error:e}}function ee(e){return {status:"error",error:e instanceof Error?e.message:String(e)}}function Kh(e){let t=new TextEncoder().encode(e),r=Array.from(t,n=>String.fromCharCode(n)).join("");return btoa(r).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function Fc(e){let t=e.replace(/-/g,"+").replace(/_/g,"/"),r=t+"=".repeat((4-t.length%4)%4),n=atob(r),s=Uint8Array.from(n,o=>o.charCodeAt(0));return new TextDecoder().decode(s)}function Pn(e){try{let t=JSON.parse(Fc(e));return typeof t?.t=="string"?{taskName:t.t}:null}catch{return null}}function Uh(e){return Kh(JSON.stringify(e))}function qc(e){try{let t=JSON.parse(Fc(e));return typeof t?.cbk=="string"&&typeof t?.cid=="string"&&typeof t?.b=="string"&&typeof t?.d=="string"?t:null}catch{return null}}function ve(){return new Date().toISOString()}function Jh(e,t){let r=t.onWarn??(()=>{}),n=ue(e);function s(C){if(C.length!==0)try{let S=t.publishBoardChangeNotifications?.(C);S&&typeof S.catch=="function"&&S.catch(T=>r(`[board-live-cards-public] publishBoardChangeNotifications failed: ${T instanceof Error?T.message:String(T)}`));}catch(S){r(`[board-live-cards-public] publishBoardChangeNotifications failed: ${S instanceof Error?S.message:String(S)}`);}}function o(){let C=i().readCardStoreRef();if(!C)throw new Error(`Board at ${e.value} has no card store configured. Run: init --base-ref <ref> --store-ref <b64-ref>`);let S=t.kvStorageForRef(C);return {readIndex(){return S.read("_index")},writeIndex(T){S.write("_index",T);},readCard(T){return S.read(T)},writeCard(T,j){return S.write(T,j),t.hashFn(j)},cardExists(T){return S.read(T)!==null},defaultCardKey(T){return T}}}let a={readValues(C){let S=t.kvStorage("state-snapshot"),T=S.listKeys().sort();if(T.length===0)return {version:null,values:{}};let j={};for(let te of T)j[te]=S.read(te);return {version:t.hashFn(j),values:j}},writeValues(C,S,T){let j=t.kvStorage("state-snapshot");for(let te of T)j.delete(te);for(let[te,se]of Object.entries(S))j.write(te,se);return t.hashFn(S)}},i=()=>Go(t.kvStorage("config")),c=()=>Ac(a),u=()=>$c(t.journalAdapter()),d=()=>An(o(),r),l=()=>{let C=i().readOutputsStoreRef();if(!C)throw new Error(`Board at ${e.value} has no outputs store configured. Run: init --outputs-store-ref <b64-ref>`);return Ic(t.kvStorageForRef(C))},h=()=>{let C=i().readArchiveStoreRef();return C?t.archiveFactoryForRef(C):t.archiveFactory()};function y(){return !!c().readSnapshot(e.value).values[ht]}function f(){let C=c().readSnapshot(e.value);if(!C.values[ht])throw new Error(`Board not initialized at ${e.value}`);return jc(C.values)}function p(C,S){let T=c().commitSnapshot(e.value,{schemaVersion:Ar,expectedVersion:S,commitId:t.genId(),committedAt:ve(),deleteKeys:[],shallowMerge:Pc(C)});if(!T.ok)throw new Error(`Snapshot commit failed (version mismatch): expected=${S??"null"} current=${T.currentVersion??"null"}`)}function v(C){u().appendEvent(C);}async function _(){let C=(O,F)=>{let ce=O.payload,nt=(ce?.enrichedCard??{}).id??ce?.cardId??"unknown";v({type:"task-failed",taskName:nt,error:F,timestamp:ve()});},S=Ec(t.kvStorage("execution-requests"),C),T=Tc(t.kvStorage("card-runtime")),j=Bo(t.blobStorage("sources"),O=>t.resolveBlob(O)),te=new Map,se={readRuntime(O){return te.get(O)??T.readRuntime(O)},writeRuntime(O,F){te.set(O,F);}},xe=[],Se=new Map,rt={readSourceData(O,F){let ce=`${O}/${F}`;return Se.has(ce)?Se.get(ce):j.readSourceData(O,F)},ingestSourceDataStaged(O,F,ce,Pt){j.ingestSourceDataStaged(O,F,ce,Pt);},commitSourceData(O,F,ce){let Pt=`${O}/.staged/${ce}/${F}`,Pr=t.blobStorage("sources").read(Pt);if(Pr==null)return false;let jt=`${O}/${F}`,Ho=Pr.trim();try{Se.set(jt,JSON.parse(Ho));}catch{Se.set(jt,Ho);}return xe.push({cardId:O,outputFile:F,deliveryToken:ce}),true},hasSource(O,F){let ce=`${O}/${F}`;return Se.has(ce)?true:j.hasSource(O,F)}},Te={cardStore:d(),cardRuntimeStore:se,fetchedSourcesStore:rt,outputStore:l(),executionRequestStore:S},yt=f(),vt=xn(yt.graph),{events:It,newCursor:Ot}=u().readEntriesAfterCursor(yt.lastDrainedJournalId),St=[],jn=[],Nn=[],Uo=new Map,Bc=(O,F)=>{St.push({type:"task-completed",taskName:O,data:F,timestamp:ve()});try{h().stream("exec-history").append({taskName:O,status:"completed",completedAt:ve()});}catch{}},Jo=(O,F)=>{v({type:"task-failed",taskName:O,error:F,timestamp:ve()});try{h().stream("exec-history").append({taskName:O,status:"failed",error:F,completedAt:ve()});}catch{}},Ir=yc(vt,{handlers:{"card-handler":Oc(e,Ot,Te,Bc,Jo,(O,F)=>{jn.push({cardId:O,values:F});},O=>{Nn.push(O);})}});for(St=It;St.length>0;){let O=St;St=[];for(let F of O)if(F.type==="task-restart"){let ce=Te.cardStore.readCard(F.taskName);ce&&Uo.set(F.taskName,ce);}Ir.pushAll(O),await Ir.waitForHandlers();}let zo=Ir.getState();await Ir.dispose({wait:true});let Gc=c().readSnapshot(e.value).version;p({lastDrainedJournalId:Ot,graph:Er(zo)},Gc);for(let{cardId:O,values:F}of jn)Te.outputStore.writeComputedValues(O,F);for(let O of Nn)Te.outputStore.writeDataObjects(O);for(let[O,F]of te)T.writeRuntime(O,F);for(let{cardId:O,outputFile:F,deliveryToken:ce}of xe)j.commitSourceData(O,F,ce);let Or;try{Or=In(n,zo),Te.outputStore.writeStatusSnapshot(Or);}catch(O){r(`[board-live-cards-public] status publish failed: ${O instanceof Error?O.message:String(O)}`);}let Qt=[];for(let{cardId:O,values:F}of jn)Qt.push({kind:"computed_values",cardId:O,values:F});for(let O of Nn)for(let[F,ce]of Object.entries(O))F&&Qt.push({kind:"data_object",key:F,payload:ce});for(let[O,F]of Uo)Qt.push({kind:"card_refreshed",cardId:O,card:F});Or!==void 0&&Qt.push({kind:"status",status:Or}),s(Qt);let Kc=i().readTaskExecutorRef()??{howToRun:"built-in",whatToRun:ue({kind:"built-in",value:"source-cli-task-executor"})};S.dispatchEntriesForJournalId(Ot,O=>{if(O.taskKind!=="source-fetch"){r(`[process-accumulated-events] unknown taskKind "${O.taskKind}" \u2014 skipping`);return}let F=O.payload,ce=F.enrichedCard?.id??"unknown",Pt=F.enrichedCard?.source_defs??[];for(let nt of Pt){if(!nt.outputFile){r(`[dispatch] source "${nt.bindTo}" has no outputFile \u2014 skipping`);continue}let Pr=Uh({cbk:F.callbackToken,rg:e.value,br:ue(e),cid:ce,b:nt.bindTo,d:nt.outputFile,cs:void 0,rqt:F.rqt});t.dispatchExecution(Kc,{source_def:nt,base_ref:ue(e),callback:{token:Pr,via:t.selfRef}}).catch(jt=>Jo(ce,jt instanceof Error?jt.message:String(jt)));}});}async function m(){try{let C=()=>{let T=f(),{events:j}=u().readEntriesAfterCursor(T.lastDrainedJournalId);j.length<=0||(m(),t.requestProcessAccumulated?.());},S=await Yo(t.lock,_,C);return Q({ran:S!==!1})}catch(C){return ee(C)}}function g(C){try{let S=C.params?.cardStoreRef;if(!S)return q("init requires params.cardStoreRef \u2014 create a card store with card-store-cli and pass its ref here");if(!y()){let Se=En(On);p({lastDrainedJournalId:"",graph:Er(Se)},null);}let T=C.params?.outputsStoreRef;if(!T)return q("init requires params.outputsStoreRef \u2014 pass the outputs store ref here");let j=C.params?.scratchStoreRef,te=C.params?.archiveStoreRef,se=i();se.writeCardStoreRef(S),se.writeOutputsStoreRef(T),j&&se.writeScratchStoreRef(j),te&&se.writeArchiveStoreRef(te);let xe=C.body??{};xe["task-executor-ref"]&&se.writeTaskExecutorRef(xe["task-executor-ref"]),Object.prototype.hasOwnProperty.call(xe,"chat-handler-flow")&&se.writeChatHandlerFlow(xe["chat-handler-flow"]);try{l().writeStatusSnapshot(In(n,xn(f().graph)));}catch{}return Q()}catch(S){return ee(S)}}function w(C){try{let S=l().readStatusSnapshot();if(!S){S=In(n,xn(f().graph));try{l().writeStatusSnapshot(S);}catch{}}return Q(S)}catch(S){return ee(S)}}function k(C){try{let S=C.params?.id;return S?(v({type:"task-removal",taskName:S,timestamp:ve()}),m(),Q()):q("removeCard requires params.id")}catch(S){return ee(S)}}function $(C){try{let S=C.params?.id;return S?(v({type:"task-restart",taskName:S,timestamp:ve()}),m(),Q()):q("retrigger requires params.id")}catch(S){return ee(S)}}async function R(C){return m()}function E(C){try{let S=C.params?.cardId,T=C.params?.all,j=!!C.params?.restart;if(!S&&!T)return q("upsertCard requires --card-id <id> or --all");let te=T?d().readAllCards().map(se=>se.id):[S];for(let se of te)if(!d().readCard(se))return q(`Card "${se}" not found in board at ${e.value}`);for(let se of te){let xe=d().readCard(se),Se=Nc(xe),rt=t.hashFn(Se),Te=t.kvStorage("card-upsert"),yt=Te.read(se),vt=yt?.taskConfigHash!==rt;if(!(!vt&&!j)){if(vt){let It=yt?.blobRef??d().readCardKey(se)??se;v({type:"task-upsert",taskName:se,taskConfig:Se,timestamp:ve()}),Te.write(se,{blobRef:It,taskConfigHash:rt,updatedAt:ve()});}j&&v({type:"task-restart",taskName:se,timestamp:ve()});}}return m(),Q()}catch(S){return ee(S)}}function I(C){try{let S=C.params?.token;if(!S)return q("taskFailed requires params.token");let T=C.params?.error??"unknown error",j=Pn(S);if(!j)return q("Invalid callback token");v({type:"task-failed",taskName:j.taskName,error:T,timestamp:ve()});try{h().stream("exec-history").append({taskName:j.taskName,status:"failed",error:T,completedAt:ve()});}catch{}return m(),Q()}catch(S){return ee(S)}}function P(C){try{let S=C.params?.token;if(!S)return q("taskProgress requires params.token");let j=(C.body??{}).update??{},te=Pn(S);return te?(v({type:"task-progress",taskName:te.taskName,update:j,timestamp:ve()}),m(),Q()):q("Invalid callback token")}catch(S){return ee(S)}}function B(C){try{let S=C.params?.token,T=C.params?.ref;if(!S)return q("sourceDataFetched requires params.token");if(!T)return q("sourceDataFetched requires params.ref");let j=qc(S);if(!j)return q("Invalid source token");let{cbk:te,cid:se,b:xe,d:Se,cs:rt,rqt:Te}=j,yt=Bo(t.blobStorage("sources"),St=>t.resolveBlob(St)),vt=t.genId();yt.ingestSourceDataStaged(se,Se,Ke(T),vt);let It=Pn(te);if(!It)return q("Invalid callback token embedded in source token");let Ot=ve();return v({type:"task-progress",taskName:It.taskName,update:{bindTo:xe,outputFile:Se,fetchedAt:Ot,deliveryToken:vt,sourceChecksum:rt,rqt:Te},timestamp:Ot}),m(),Q()}catch(S){return ee(S)}}function W(C){try{let S=C.params?.token,T=C.params?.reason??"unknown";if(!S)return q("sourceDataFetchFailure requires params.token");let j=qc(S);if(!j)return q("Invalid source token");let{cbk:te,b:se,d:xe,cs:Se,rqt:rt}=j,Te=Pn(te);return Te?(v({type:"task-progress",taskName:Te.taskName,update:{bindTo:se,outputFile:xe,failure:!0,reason:T,sourceChecksum:Se,rqt:rt},timestamp:ve()}),m(),Q()):q("Invalid callback token embedded in source token")}catch(S){return ee(S)}}function Z(C){try{let S=i().readCardStoreRef();return S?Q({storeRef:S}):q(`Board at ${e.value} has no card store configured`)}catch(S){return ee(S)}}function le(C){try{let S=i().readOutputsStoreRef();return S?Q({storeRef:S}):q(`Board at ${e.value} has no outputs store configured`)}catch(S){return ee(S)}}function Ie(C){try{let S=i().readScratchStoreRef();return Q({storeRef:S})}catch(S){return ee(S)}}function be(C){try{let S=i().readArchiveStoreRef();return Q({storeRef:S})}catch(S){return ee(S)}}function We(C){try{let S=C.params?.key;if(!S)return q("getConfig requires params.key");let T=i(),j;switch(S){case "task-executor":j=T.readTaskExecutorRef()??null;break;case "chat-handler-flow":j=T.readChatHandlerFlow()??null;break;case "card-store-ref":j=T.readCardStoreRef();break;case "outputs-store-ref":j=T.readOutputsStoreRef();break;case "scratch-store-ref":j=T.readScratchStoreRef();break;case "archive-store-ref":j=T.readArchiveStoreRef();break;default:return q(`getConfig: unknown key "${S}"`)}return Q({value:j})}catch(S){return ee(S)}}function D(C){try{let S=C.params?.key;if(!S)return q("getOutputsDataObject requires params.key");let T=l().readDataObject(S);return Q(T)}catch(S){return ee(S)}}function M(C){try{return Q(l().readAllDataObjects())}catch(S){return ee(S)}}function ne(C){try{let S=C.params?.key;if(!S)return q("getOutputsComputedValues requires params.key");let T=l().readComputedValues(S);return Q(T)}catch(S){return ee(S)}}function X(C){try{return Q(l().readAllComputedValues())}catch(S){return ee(S)}}return {init:g,status:w,getCardStoreRef:Z,getOutputsStoreRef:le,getScratchStoreRef:Ie,getArchiveStoreRef:be,getConfig:We,getOutputsDataObject:D,getAllOutputsDataObjects:M,getOutputsComputedValues:ne,getAllOutputsComputedValues:X,removeCard:k,retrigger:$,processAccumulatedEvents:R,upsertCard:E,taskFailed:I,taskProgress:P,sourceDataFetched:B,sourceDataFetchFailure:W}}function zh(e,t){let r=()=>Go(t.kvStorage("config"));function n(){let m=r().readCardStoreRef();if(!m)throw new Error(`Board at ${e.value} has no card store configured. Run: init --base-ref <ref> --store-ref <b64-ref>`);let g=t.kvStorageForRef(m);return {readIndex(){return g.read("_index")},writeIndex(w){g.write("_index",w);},readCard(w){return g.read(w)},writeCard(w,k){return g.write(w,k),t.hashFn(k)},cardExists(w){return g.read(w)!==null},defaultCardKey(w){return w}}}let s=()=>An(n(),t.onWarn??(()=>{})),o=()=>{let m=r().readScratchStoreRef();return m?t.scratchStorageForRef(m):t.scratchStorage()};function a(m,g){let w=t.validateSchema(g),k=[],$=r().readTaskExecutorRef();if($&&Array.isArray(g.source_defs))for(let E of g.source_defs){let I=typeof E.bindTo=="string"?E.bindTo:"(unknown)";try{let P;try{P=t.invokeExecutorSync($,"validate-source-def",[],{timeout:t.executorTimeouts?.validationMs??1e4,input:JSON.stringify(E)});}catch(W){let Z=W;if(P=typeof Z?.stdout=="string"?Z.stdout:"",!P.trim()){k.push(`source "${I}": executor validate-source-def failed \u2014 ${W instanceof Error?W.message:String(W)}`);continue}}let B=JSON.parse(P.trim());if(!B.ok&&Array.isArray(B.errors))for(let W of B.errors)k.push(`source "${I}": ${W}`);}catch(P){k.push(`source "${I}": executor validate-source-def failed \u2014 ${P instanceof Error?P.message:String(P)}`);}}let R=[...w.errors,...k];return Q({cardId:m,isValid:R.length===0,issues:R})}function i(m,g,w){let k=r().readTaskExecutorRef();if(!k)return q("No task-executor registered for this board");let $=typeof m.bindTo=="string"?m.bindTo:"source",R=o(),E={...m,boardDir:e.value,_projections:g},I=R.create(JSON.stringify(E,null,2),`probe-in-${$}`,".json"),P=R.getUniqueKey(`probe-out-${$}`,".json"),B=R.getUniqueKey(`probe-err-${$}`,".txt"),W=ue(R.keyRef(I)),Z=ue(R.keyRef(P)),le=ue(R.keyRef(B)),Ie=null;try{if(t.invokeExecutorSync(k,"run-source-fetch",["--in-ref",W,"--out-ref",Z,"--err-ref",le],{timeout:m.timeout??t.executorTimeouts?.probeMs??6e4}),Ie=R.read(P),Ie===null)return q("Executor produced no output file")}catch(be){let We=R.read(B)?.trim()??(be instanceof Error?be.message:String(be));return q(`Probe failed: ${We}`)}finally{try{R.remove(I);}catch{}try{R.remove(B);}catch{}}if(w){let be=Ke(w);t.absoluteBlob.write(be.value,Ie);}try{R.remove(P);}catch{}return Q({bindTo:$,resultSizeBytes:Ie.length})}function c(m){try{let g=m.params?.cardId,w=m.params?.all;if(!g&&!w)return q("validateCard requires --card-id <id> or --all");let k=w?s().readAllCards().map(R=>R.id):[g],$=[];for(let R of k){let E=s().readCard(R);if(!E){$.push({cardId:R,isValid:!1,issues:[`Card "${R}" not found`]});continue}let I=a(R,E);if(I.status!=="success")return I;$.push(I.data);}return Q($)}catch(g){return ee(g)}}function u(m){try{if(!m.body||typeof m.body!="object"||Array.isArray(m.body))return q("validateCardPreflight requires card JSON object in body");let g=m.body,w=g["card-content"]??g,k=typeof w.id=="string"?w.id:"(unknown)",$=a(k,w),R=r().readTaskExecutorRef();if(R)try{let E=t.invokeExecutorSync(R,"validate-card-preflight",[],{timeout:t.executorTimeouts?.validationMs??1e4,input:JSON.stringify(w)}),I=JSON.parse(E.trim());if(!I.ok&&Array.isArray(I.errors)&&I.errors.length>0){let P=[...$.status==="success"?$.data.issues:[],...I.errors];return Q({cardId:k,isValid:!1,issues:P})}}catch{}return $}catch(g){return ee(g)}}function d(m){try{let g=m.params?.cardId,w=m.params?.sourceIdx,k=m.params?.outRef;if(!g)return q("probeSource requires params.cardId");if(w===void 0)return q("probeSource requires params.sourceIdx");let R=(m.body??{})["mock-projections"]??{},E=s().readCard(g);if(!E)return q(`Card "${g}" not found`);let I=E.source_defs??[];return w<0||w>=I.length?q(`sourceIdx ${w} out of range (card has ${I.length} source(s))`):i(I[w],R,k)}catch(g){return ee(g)}}function l(m){try{let g=m.params?.outRef,w=m.body;if(!w)return q('probeTmpSource requires body with "source-def" and "mock-projections"');let k=w["source-def"],$=w["mock-projections"]??{};return k?i(k,$,g):q('probeTmpSource body requires "source-def"')}catch(g){return ee(g)}}function h(m){try{let g=m.params?.sourceIdx,w=m.params?.outRef;if(g===void 0)return q("probeSourcePreflight requires params.sourceIdx");if(!m.body||typeof m.body!="object"||Array.isArray(m.body))return q("probeSourcePreflight requires card JSON object in body");let k=m.body,$=k["card-content"]??k,R=k["mock-projections"]??{},E=$.source_defs??[];if(g<0||g>=E.length)return q(`sourceIdx ${g} out of range (card has ${E.length} source(s))`);let I=E[g],P=r().readTaskExecutorRef();if(P){let B=typeof I.bindTo=="string"?I.bindTo:"source";try{let W={...I,_projections:R},Z=t.invokeExecutorSync(P,"probe-source-preflight",[],{timeout:I.timeout??t.executorTimeouts?.preflightMs??6e4,input:JSON.stringify(W)}),le=JSON.parse(Z.trim());return le.ok?Q({bindTo:B,reachable:le.reachable,latencyMs:le.latencyMs,note:le.note}):q(le.error??"Preflight probe failed")}catch{}}return i(I,R,w)}catch(g){return ee(g)}}function y(m){try{let g=r().readTaskExecutorRef();if(!g)return q("No task-executor registered for this board");let w=t.invokeExecutorSync(g,"describe-capabilities",[],{timeout:t.executorTimeouts?.describeMs??1e4});return Q(JSON.parse(w.trim()))}catch(g){return ee(g)}}function f(m){try{let g=m.body;if(!g||!Array.isArray(g.ops))return q("updatesInCardStore requires body.ops array");let w=g.ops,k=s();for(let $ of w){let R=$.op,E=$.id;if(!E)return q('op is missing "id"');if(R==="update"){let I=$["card-content"];if(!I)return q(`update op for "${E}" is missing "card-content"`);k.writeCard(E,I);}else return q(`Unknown op type: "${R??"(none)"}"`)}return Q()}catch(g){return ee(g)}}function p(m){try{let g=m.body;if(!g||!Array.isArray(g.ids))return q("readFromCardStore requires body.ids array");let w=g.ids,k=s(),$=w.map(R=>({id:R,"card-content":k.readCard(R)}));return Q({cards:$})}catch(g){return ee(g)}}function v(m){try{if(!m.body||typeof m.body!="object"||Array.isArray(m.body))return q("evalCardCompute requires a JSON object in body");let g=m.body,w=g["card-content"]??g,k=typeof w.id=="string"?w.id:"(unknown)",$=g["mock-fetched-sources"]??{},R=g["mock-requires"]??{},E=w.compute;if(!E||!Array.isArray(E)||E.length===0)return Q({cardId:k,ok:!0,computed_values:{},errors:[]});let I={id:k,card_data:w.card_data??{},requires:R,source_defs:w.source_defs,compute:E},P=gt.runSync(I,{sourcesData:$}),B=P.node.computed_values??{},W=P.errors??[];return Q({cardId:k,ok:W.length===0,computed_values:B,errors:W})}catch(g){return ee(g)}}function _(m){try{if(!m.body||typeof m.body!="object"||Array.isArray(m.body))return q("simulateCardCycle requires a JSON object in body");let g=m.body,w=g["card-content"]??g,k=typeof w.id=="string"?w.id:"(unknown)",$=g["mock-fetched-sources"]??{},R=g["mock-requires"]??{},E=a(k,w),I=E.status==="success"?{isValid:E.data.isValid,issues:E.data.issues}:{isValid:!1,issues:[E.status==="fail"?E.error:"internal error"]},P=w.source_defs??[],B=w.card_data??{},W=[],Z=[];if(P.length>0){W=gt.enrichSourcesSync(P,{card_data:B,requires:R});for(let X of W){let C=X.projections,S=X._projections;if(C&&S){for(let T of Object.keys(C))if(S[T]===void 0){let j=typeof X.bindTo=="string"?X.bindTo:"(unknown)";Z.push({bindTo:j,key:T,error:`Projection "${T}" resolved to undefined`});}}}}let le=[],Ie=g["task-executor-ref"],be=(Ie?.howToRun&&Ie?.whatToRun?Ie:void 0)??r().readTaskExecutorRef();for(let X=0;X<W.length;X++){let C=W[X],S=typeof C.bindTo=="string"?C.bindTo:`source_${X}`;if(!be){le.push({bindTo:S,skipped:!0,error:"No task executor configured"});continue}try{let T={...C},j=t.invokeExecutorSync(be,"probe-source-preflight",[],{timeout:C.timeout??t.executorTimeouts?.preflightMs??6e4,input:JSON.stringify(T)}),te=JSON.parse(j.trim());le.push({bindTo:S,reachable:te.reachable,latencyMs:te.latencyMs,error:te.ok?void 0:te.error});}catch{le.push({bindTo:S,skipped:!0,error:"Executor does not support probe-source-preflight"});}}let We=w.compute,D={},M=[];if(We&&Array.isArray(We)&&We.length>0){let X={id:k,card_data:B,requires:R,source_defs:w.source_defs,compute:We},C=gt.runSync(X,{sourcesData:$});D=C.node.computed_values??{},M=C.errors??[];}let ne=I.isValid&&Z.length===0&&M.length===0&&le.every(X=>X.reachable!==!1);return Q({cardId:k,ok:ne,validation:I,source_probes:le,projection_errors:Z,computed_values:D,compute_errors:M})}catch(g){return ee(g)}}return {validateCard:c,validateCardPreflight:u,probeSource:d,probeTmpSource:l,probeSourcePreflight:h,evalCardCompute:v,simulateCardCycle:_,describeTaskExecutorCapabilities:y,updatesInCardStore:f,readFromCardStore:p}}function Hh(e){function t(s){return {status:"success",data:s}}function r(s){return {status:"fail",error:s}}function n(s){return {status:"error",error:s instanceof Error?s.message:String(s)}}return {get(s){try{let o=s.params?.id;if(o){let a=e.readCard(o);return a?t({cards:[a]}):r(`card "${o}" not found`)}return t({cards:e.readAllCards()})}catch(o){return n(o)}},set(s){try{let o=s.body;if(o==null)return r("set requires a body (card object or array of cards)");let a=Array.isArray(o)?o:[o];for(let i of a){if(typeof i.id!="string")return r("each card must have a string `id` field");e.writeCard(i.id,i);}return t({count:a.length})}catch(o){return n(o)}},del(s){try{let o=s.body?.ids??[],a=s.params?.id,i=a?[...o,a]:o;if(i.length===0)return r("del requires body.ids (string[]) or params.id");for(let c of i)e.removeCard(c);return t({count:i.length})}catch(o){return n(o)}},patch(s){try{let o=s.params?.id,a=s.params?.path;if(!o)return r("patch requires params.id");if(!a)return r("patch requires params.path");let i=s.body,c=i&&Object.prototype.hasOwnProperty.call(i,"value")?i.value:s.body;return e.patchCard(o,a,c),t({count:1})}catch(o){return n(o)}}}}function Wh(e){function t(s){return {status:"success",data:s}}function r(s){return {status:"fail",error:s}}function n(s){return {status:"error",error:s instanceof Error?s.message:String(s)}}return {list(s){try{let o=s.params?.prefix??"";return t({artifacts:e.list(o)})}catch(o){return n(o)}},head(s){try{let o=s.params?.key;return o?t({artifact:e.head(o)}):r("head requires params.key")}catch(o){return n(o)}},put(s){try{let o=s.params?.key,a=s.params?.contentType;if(!o)return r("put requires params.key");let i=s.body;if(typeof i=="string")return t({artifact:e.putText(o,i,a)});if(i&&typeof i=="object"&&typeof i.text=="string")return t({artifact:e.putText(o,i.text,a)});if(i&&typeof i=="object"&&Array.isArray(i.bytes)){let c=i.bytes,u=new Uint8Array(c.map(d=>Math.max(0,Math.min(255,Number(d)||0))));return t({artifact:e.putBytes(o,u,a)})}return r("put requires body as string, {text}, or {bytes:number[]}")}catch(o){return n(o)}},get(s){try{let o=s.params?.key,a=s.params?.as??"base64";if(!o)return r("get requires params.key");let i=e.head(o);if(!i)return r(`artifact "${o}" not found`);if(a==="text"){let u=e.getText(o);return u===null?r(`artifact "${o}" not found`):t({key:o,contentType:i.contentType,size:i.size,text:u})}let c=e.getBytes(o);return c===null?r(`artifact "${o}" not found`):t({key:o,contentType:i.contentType,size:i.size,bytes:[...c]})}catch(o){return n(o)}},del(s){try{let o=s.params?.key;return o?(e.remove(o),t({ok:!0})):r("del requires params.key")}catch(o){return n(o)}}}}function Dc(){return new Date().toISOString()}function Mc(e){return new TextEncoder().encode(e).byteLength}function Yh(e){return e?{key:e.key,size:e.size,updatedAt:e.updatedAt,contentType:e.contentType}:null}function Xh(e){let t=String(e||"").match(/^(\d+)[-_]/);return t?parseInt(t[1],10):0}function Qh(e){let t=String(e||"").trim();if(!t)return "upload.bin";let r=Math.max(t.lastIndexOf("/"),t.lastIndexOf("\\"));return (r>=0?t.slice(r+1):t)||"upload.bin"}function Zh(e){return String(e||"").toLowerCase().replace(/\s+/g,"_").replace(/[^a-z0-9_-]/g,"_").replace(/_+/g,"_").replace(/^_+|_+$/g,"")||"file"}function ey(e){if(!e||e===".")return "";let t=String(e).replace(/^\./,"").toLowerCase().replace(/[^a-z0-9]/g,"");return t?`.${t}`:""}function ty(e){let t=Qh(e),r=t.lastIndexOf(".");return r<=0||r===t.length-1?{stem:t,ext:""}:{stem:t.slice(0,r),ext:t.slice(r)}}function ry(e){let t=e.lastIndexOf("/");return t>=0?e.slice(t+1):e}function Ko(e){function t(r){let n=e.stat?Yh(e.stat(r)):null;if(n)return n;if(!e.exists(r))return null;let s=e.read(r);return s===null?{key:r}:{key:r,size:Mc(s)}}return {exists(r){return e.exists(r)},putText(r,n,s="text/plain; charset=utf-8"){e.write(r,n);let o=t(r)??{key:r};return o.contentType=s,o.updatedAt=o.updatedAt??Dc(),o.size=o.size??Mc(n),o},putBytes(r,n,s="application/octet-stream"){if(e.writeBytes)e.writeBytes(r,n);else {let a=JSON.stringify({__kind:"bytes-array",data:[...n]});e.write(r,a);}let o=t(r)??{key:r};return o.contentType=s,o.updatedAt=o.updatedAt??Dc(),o.size=o.size??n.byteLength,o},getText(r){let n=e.read(r);if(n===null){if(!e.readBytes)return null;let s=e.readBytes(r);return s===null?null:Buffer.from(s).toString("utf-8")}try{let s=JSON.parse(n);if(s&&s.__kind==="bytes-array"&&Array.isArray(s.data))return new TextDecoder("utf-8").decode(new Uint8Array(s.data))}catch{}return n},getBytes(r){if(e.readBytes){let s=e.readBytes(r);if(s!==null)return s}let n=e.read(r);if(n===null)return null;try{let s=JSON.parse(n);if(s&&s.__kind==="bytes-array"&&Array.isArray(s.data))return new Uint8Array(s.data)}catch{}return new TextEncoder().encode(n)},head:t,list(r=""){return e.listKeys(r).map(n=>t(n)??{key:n}).sort((n,s)=>n.key.localeCompare(s.key))},remove(r){e.remove(r);}}}function ny(e){function t(s,o){let a=0,i=[];Array.isArray(o)&&i.push(...o);for(let c of e.list(`${s}/`))i.push(ry(c.key));for(let c of i){let u=Xh(c);Number.isFinite(u)&&u>a&&(a=u);}return a+1}function r(s,o,a){let i=Number(a?.maxLen||32),{stem:c,ext:u}=ty(s),d=ey(u),l=Zh(c),h=`${String(o).padStart(3,"0")}-`,y=d,f=i-h.length-y.length;f<1&&(y="",f=i-h.length);let p=l.slice(0,Math.max(1,f)),v=`${h}${p}${y}`;return v.length>i&&(v=v.slice(0,i).replace(/\.$/,"")),v}function n(s,o,a){let i=t(s,a?.seedNames),c=r(o,i,{maxLen:a?.maxLen});for(;e.exists(`${s}/${c}`);)i+=1,c=r(o,i,{maxLen:a?.maxLen});return c}return {nextSerial:t,buildStoredName:r,allocateStoredName:n}}function sy(){function e(s,o){if(!Array.isArray(s))return [];let a=[];for(let i of s){if(!i||typeof i!="object")continue;let c=i;typeof c.stored_name=="string"&&a.push({name:typeof c.name=="string"?c.name:c.stored_name,stored_name:c.stored_name,size:typeof c.size=="number"&&Number.isFinite(c.size)?c.size:null,mime_type:typeof c.mime_type=="string"?c.mime_type:null,path:typeof c.path=="string"?c.path:null,uploaded_at:typeof c.uploaded_at=="string"?c.uploaded_at:o||null});}return a}function t(s){return !s||typeof s!="object"?[]:e(s.files,void 0)}function r(s,o){let a=t(s);if(o.length===0)return s.files=a,a;let i=new Set(a.map(c=>c.stored_name));for(let c of o)i.has(c.stored_name)||(a.push(c),i.add(c.stored_name));return s.files=a,a}function n(s,o,a){let i=t(s);if(!Number.isInteger(o)||o<0||o>=i.length)return {ok:false,reason:"index_out_of_range"};let c=i[o];return !c||!c.stored_name?{ok:false,reason:"missing_stored_name"}:a&&a!==c.stored_name?{ok:false,reason:"stale_reference"}:{ok:true,file:c}}return {read:t,normalizeIncoming:e,merge:r,resolve:n}}function YS(){return {async invoke(e,t){if(e.howToRun!=="local-node")return {dispatched:false,error:`createNodeSpawnInvocationAdapter: unsupported howToRun "${e.howToRun}"`};let r="";try{let o=e.whatToRun;r=Me(o);}catch{r="";}if(!r)return {dispatched:false,error:"createNodeSpawnInvocationAdapter: could not resolve executable path from whatToRun"};let n={...t},s=Buffer.from(JSON.stringify(n)).toString("base64");try{return 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=Me(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 iy=".board.lock";function Lc(e,t){if(!e||!t)return false;let r=String(e).replace(/[\\/]+$/,"").split(/[\\/]+/).filter(Boolean);return r.length>0&&r[r.length-1]===t}function uy(e,t){return typeof e=="string"?{cliDir:e,opts:t}:{cliDir:void 0,opts:e}}function cy(e,t){return typeof e=="string"?{cliDir:e,opts:t}:{cliDir:void 0,opts:e}}function Vc(e){if(e)return e;let t=ra((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,_e(t,"..","cli","node"),_e(t,"..","..","cli","node")];for(let n of r)try{return Ln(n),n}catch{}throw new Error(`createFsBoardPlatformAdapter: could not resolve a public CLI directory from module dir ${t}`)}function dy(e,t,r){let{cliDir:n,opts:s}=uy(t,r),o=Vc(n),a=e.value,c={meta:"board-live-cards",howToRun:"local-node",whatToRun:(s?.suppressSpawn?"":Ln(o))?ue({kind:"yaml-flow-cli",value:"board-live-cards-cli.js"}):"",...s?.notifyChannel?{extra:{notifyChannel:s.notifyChannel}}:{}};return {kvStorage:u=>Gr(_e(a,`.${u}`)),blobStorage:u=>u?qt(_e(a,u)):qt(a),scratchStorage:()=>Vr(_e(a,".tmp")),scratchStorageForRef:u=>Vr(Ke(u).value),archiveFactory:()=>Br(_e(a,"archive")),archiveFactoryForRef:u=>Br(Ke(u).value),journalAdapter:()=>wa(a),lock:ka(_e(a,iy)),selfRef:c,async dispatchExecution(u,d){if(s?.suppressSpawn)return {dispatched:false};try{let l=d.source_def?.bindTo??Fn().slice(0,8),h=Vr(_e(a,".tmp")),y=h.create(JSON.stringify(d,null,2),`exec-in-${l}`,".json"),f=h.getUniqueKey(`exec-out-${l}`,".json"),p=h.getUniqueKey(`exec-err-${l}`,".txt"),v=ue(h.keyRef(y)),_=ue(h.keyRef(f)),m=ue(h.keyRef(p));return ha(u,{subcommand:"run-source-fetch",inRef:v,outRef:_,errRef:m},o),{dispatched:!0}}catch(l){let h=l instanceof Error?l.message:String(l);try{let y=Br(_e(a,"archive")),f=new Date().toISOString().replace(/[:.]/g,"-"),p=d.source_def?.bindTo??"unknown";y.blob("exec-failures").write(`${f}-${p}.json`,JSON.stringify({error:h,args:d,ref:u,at:new Date().toISOString()},null,2));}catch{}return {dispatched:false,error:h}}},resolveBlob(u){let d=ea(u.value)?zn().read(u.value):qt(a).read(u.value);if(d===null)throw new Error(`resolveBlob: blob not found: ::${u.kind}::${u.value}`);return d},hashFn:Sa,genId:()=>ta(`${Date.now()}-${Math.random()}`).slice(0,32),kvStorageForRef:u=>Gr(Ke(u).value),requestProcessAccumulated(){s?.suppressSpawn||oa(o,e,s?.notifyChannel);},publishBoardChangeNotifications(u){if(!s?.notifyChannel||u.length===0)return;let d=u.map(l=>({id:Fn(),ts:new Date().toISOString(),boardRef:ue(e),notification:l}));aa(s.notifyChannel,d,s.onWarn);},onWarn:s?.onWarn}}function XS(e,t,r){let{cliDir:n,opts:s}=cy(t,r),o=Vc(n),a=dy(e,o,s),i=Fr();return {...a,invokeExecutorSync(c,u,d,l){let{command:h,baseArgs:y}=Dr(c,o),f=c.extra?["--extra",Buffer.from(JSON.stringify(c.extra)).toString("base64")]:[];return i.executeSync(h,[...y,u,...d,...f],{timeout:l?.timeout??3e4,encoding:"utf-8",input:l?.input})},validateSchema(c){let u=No(c);return {ok:u.errors.length===0,errors:u.errors}},absoluteBlob:zn()}}function QS(e,t={}){let r=t.chatsSubdir??"chats",n=t.kvSubdir??".kv",s=n?[n,"chat"]:["chat"],o=r&&!Lc(e,r)?_e(e,r):e,a=Gr(_e(e,...s));return qo(i=>{let u=`${String(i).replace(/[^a-zA-Z0-9_-]/g,"_")}.jsonl`,d=_e(o,u);return Hn(d)},a)}function ZS(e,t={}){let r=t.filesSubdir??"files",n=r&&!Lc(e,r)?_e(e,r):e;return Ko(qt(n))}function ew(e){try{let t=JSON.parse(Buffer.from(e,"base64url").toString());return typeof t.br=="string"?t.br:null}catch{return null}}
19
+ exports.BOARD_GRAPH_KEY=ht;exports.EMPTY_CONFIG=On;exports.SNAPSHOT_SCHEMA_VERSION_V1=Ar;exports.buildLocalBaseSpec=Dr;exports.createArtifactsStore=Ko;exports.createArtifactsStorePublic=Wh;exports.createBoardLiveCardsNonCorePublic=zh;exports.createBoardLiveCardsPublic=Jh;exports.createCardFileMetadataStore=sy;exports.createCardStore=An;exports.createCardStorePublic=Hh;exports.createChatStorage=qo;exports.createExecutionRefInvoker=bd;exports.createFileArtifactsStore=ny;exports.createFsBoardChatStorage=QS;exports.createFsBoardFileArtifactsStore=ZS;exports.createFsBoardNonCorePlatformAdapter=XS;exports.createFsBoardPlatformAdapter=dy;exports.createInMemoryChatStorage=gh;exports.createNodeSpawnInvocationAdapter=YS;exports.decodeBoardRefFromToken=ew;exports.evaluateArgsMassaging=Bn;exports.executionRefFromScriptPath=Mh;exports.invokeExecutionRef=ga;exports.invokeExecutionRefSync=Gn;exports.invokeRefSync=_d;exports.parseExecutionRef=Vo;exports.parseRef=Ke;exports.resolveWhatToRunValue=Me;exports.resolveYamlFlowCliPath=da;exports.serializeExecutionRef=Lo;exports.serializeRef=ue;//# sourceMappingURL=board-live-cards-node.cjs.map
20
20
  //# sourceMappingURL=board-live-cards-node.cjs.map