@enfyra/kernel 1.1.40 → 1.1.41

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,4 +1,4 @@
1
- "use strict";var W=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var G=W((Ue,z)=>{"use strict";var{fork:fe}=require("child_process"),de=require("path");function _e({workerDir:t,activeTaskContexts:e}){let s=new Map,r=new Map,a=new Map,o=null,l=0;function y(u){return Math.max(1,Math.trunc(Number(u)||3e4))}function f(u){for(let n of r.values())clearTimeout(n.timer),n.reject(u);r.clear()}function d(u){let n=typeof u=="string"?JSON.parse(u):u;if(n?.error)throw new Error(n.error);return n?.value}async function k(u){let n=e.get(u.taskId);if(!n)throw new Error(`Package callback context not found: ${u.taskId}`);let i=JSON.stringify(u.callbackId),_=JSON.stringify(u.argsJson||"[]"),p=await n.evalClosure(`return __invokeRuntimeCallback(${i}, ${_});`,[],{arguments:{copy:!0},result:{promise:!0,copy:!0}});return d(p)}function w(){if(o&&o.connected)return o;let u=de.join(t,"package-runtime.child.js"),n=fe(u,[],{stdio:["ignore","ignore","ignore","ipc"],env:{PATH:process.env.PATH||"",HOME:process.env.HOME||"",NODE_ENV:process.env.NODE_ENV||"production",TMPDIR:process.env.TMPDIR||"",LANG:process.env.LANG||""}});return o=n,n.on("message",i=>{if(!i||!i.id)return;if(i.type==="pkgStreamChunk"){let p=a.get(i.id);if(!p)return;p.onChunk(Buffer.from(i.chunk||"","base64")).then(()=>{try{n.send({type:"pkgStreamAck",ackId:i.ackId})}catch{}}).catch(v=>{try{n.send({type:"pkgStreamError",ackId:i.ackId,error:{message:v.message,stack:v.stack}})}catch{}});return}if(i.type==="pkgCallbackCall"){k(i).then(p=>{try{n.send({type:"pkgCallbackResult",id:i.id,value:p})}catch{}}).catch(p=>{try{n.send({type:"pkgCallbackError",id:i.id,error:{message:p.message,stack:p.stack}})}catch{}});return}let _=r.get(i.id);if(_)if(clearTimeout(_.timer),r.delete(i.id),a.delete(i.id),i.ok)_.resolve(i.value);else{let p=new Error(i.error?.message||"Package runtime call failed");p.stack=i.error?.stack||p.stack,_.reject(p)}}),n.on("exit",(i,_)=>{o===n&&(o=null),f(new Error(`Package runtime exited${_?` with signal ${_}`:` with code ${i}`}`))}),n.on("error",i=>{o===n&&(o=null),f(i)}),n}function c(u){return new Promise((n,i)=>{let _=w(),p=`pkg_${++l}`,v=y(u.timeoutMs),x=setTimeout(()=>{r.delete(p),a.delete(p);try{_.kill()}catch{}i(new Error(`Package runtime call timed out after ${v}ms`))},v);r.set(p,{resolve:n,reject:i,timer:x});try{_.send({...u,id:p},C=>{C&&(clearTimeout(x),r.delete(p),i(C))})}catch(C){clearTimeout(x),r.delete(p),i(C)}})}function g(u,n,i,_=[],p=3e4){return new Promise((v,x)=>{let C=w(),b=`pkg_${++l}`,F=y(p),q=setTimeout(()=>{r.delete(b),a.delete(b);try{C.kill()}catch{}x(new Error(`Package runtime stream timed out after ${F}ms`))},F);r.set(b,{resolve:v,reject:x,timer:q}),a.set(b,{onChunk:i});try{C.send({op:"streamHandle",taskId:u,handleId:n,path:_,id:b,timeoutMs:F},L=>{L&&(clearTimeout(q),r.delete(b),a.delete(b),x(L))})}catch(L){clearTimeout(q),r.delete(b),a.delete(b),x(L)}})}function P(u){try{if(!o||!o.connected)return;o.send({...u,id:`pkg_${++l}`,fire:!0})}catch{}}function m(u){try{let n=w();if(!n.connected)return;n.send({op:"cancelTask",taskId:u,id:`pkg_${++l}`,fire:!0})}catch{}}async function S(u,n){let i=s.get(u);if(!i)throw new Error("Package context is not available");if(n.handleId)return c({op:n.kind==="get"?"handleGet":"handleCall",taskId:u,handleId:n.handleId,path:n.path||[],argsJson:n.argsJson||"[]",timeoutMs:n.timeoutMs});let _=i.get(n.packageName);if(!_)throw new Error(`Package "${n.packageName}" is not available`);return c({op:n.kind==="construct"?"construct":"call",taskId:u,packageName:n.packageName,package:{name:_.name,fileUrl:_.fileUrl},path:n.path||[],argsJson:n.argsJson||"[]",timeoutMs:n.timeoutMs})}function E(u,n){s.set(u,n)}function I(u){s.delete(u),P({op:"releaseTask",taskId:u})}function h(){if(o){try{o.kill()}catch{}o=null}}return{cleanupTaskPackages:I,cancelTask:m,executePackageRuntimeCall:S,setTaskPackages:E,streamPackageHandle:g,shutdownPackageRuntime:h}}z.exports={createPackageRuntimeBridge:_e}});var Z=W((Le,X)=>{"use strict";var pe=`
1
+ "use strict";var W=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var G=W((Ue,z)=>{"use strict";var{fork:fe}=require("child_process"),de=require("path");function pe({workerDir:t,activeTaskContexts:e}){let s=new Map,r=new Map,a=new Map,o=null,c=0;function y(u){return Math.max(1,Math.trunc(Number(u)||3e4))}function f(u){for(let n of r.values())clearTimeout(n.timer),n.reject(u);r.clear()}function d(u){let n=typeof u=="string"?JSON.parse(u):u;if(n?.error)throw new Error(n.error);return n?.value}async function k(u){let n=e.get(u.taskId);if(!n)throw new Error(`Package callback context not found: ${u.taskId}`);let i=JSON.stringify(u.callbackId),p=JSON.stringify(u.argsJson||"[]"),_=await n.evalClosure(`return __invokeRuntimeCallback(${i}, ${p});`,[],{arguments:{copy:!0},result:{promise:!0,copy:!0}});return d(_)}function w(){if(o&&o.connected)return o;let u=de.join(t,"package-runtime.child.js"),n=fe(u,[],{stdio:["ignore","ignore","ignore","ipc"],env:{PATH:process.env.PATH||"",HOME:process.env.HOME||"",NODE_ENV:process.env.NODE_ENV||"production",TMPDIR:process.env.TMPDIR||"",LANG:process.env.LANG||""}});return o=n,n.on("message",i=>{if(!i||!i.id)return;if(i.type==="pkgStreamChunk"){let _=a.get(i.id);if(!_)return;_.onChunk(Buffer.from(i.chunk||"","base64")).then(()=>{try{n.send({type:"pkgStreamAck",ackId:i.ackId})}catch{}}).catch(v=>{try{n.send({type:"pkgStreamError",ackId:i.ackId,error:{message:v.message,stack:v.stack}})}catch{}});return}if(i.type==="pkgCallbackCall"){k(i).then(_=>{try{n.send({type:"pkgCallbackResult",id:i.id,value:_})}catch{}}).catch(_=>{try{n.send({type:"pkgCallbackError",id:i.id,error:{message:_.message,stack:_.stack}})}catch{}});return}let p=r.get(i.id);if(p)if(clearTimeout(p.timer),r.delete(i.id),a.delete(i.id),i.ok)p.resolve(i.value);else{let _=new Error(i.error?.message||"Package runtime call failed");_.stack=i.error?.stack||_.stack,p.reject(_)}}),n.on("exit",(i,p)=>{o===n&&(o=null),f(new Error(`Package runtime exited${p?` with signal ${p}`:` with code ${i}`}`))}),n.on("error",i=>{o===n&&(o=null),f(i)}),n}function l(u){return new Promise((n,i)=>{let p=w(),_=`pkg_${++c}`,v=y(u.timeoutMs),x=setTimeout(()=>{r.delete(_),a.delete(_);try{p.kill()}catch{}i(new Error(`Package runtime call timed out after ${v}ms`))},v);r.set(_,{resolve:n,reject:i,timer:x});try{p.send({...u,id:_},C=>{C&&(clearTimeout(x),r.delete(_),i(C))})}catch(C){clearTimeout(x),r.delete(_),i(C)}})}function g(u,n,i,p=[],_=3e4){return new Promise((v,x)=>{let C=w(),b=`pkg_${++c}`,F=y(_),q=setTimeout(()=>{r.delete(b),a.delete(b);try{C.kill()}catch{}x(new Error(`Package runtime stream timed out after ${F}ms`))},F);r.set(b,{resolve:v,reject:x,timer:q}),a.set(b,{onChunk:i});try{C.send({op:"streamHandle",taskId:u,handleId:n,path:p,id:b,timeoutMs:F},L=>{L&&(clearTimeout(q),r.delete(b),a.delete(b),x(L))})}catch(L){clearTimeout(q),r.delete(b),a.delete(b),x(L)}})}function P(u){try{if(!o||!o.connected)return;o.send({...u,id:`pkg_${++c}`,fire:!0})}catch{}}function m(u){try{let n=w();if(!n.connected)return;n.send({op:"cancelTask",taskId:u,id:`pkg_${++c}`,fire:!0})}catch{}}async function S(u,n){let i=s.get(u);if(!i)throw new Error("Package context is not available");if(n.handleId)return l({op:n.kind==="get"?"handleGet":"handleCall",taskId:u,handleId:n.handleId,path:n.path||[],argsJson:n.argsJson||"[]",timeoutMs:n.timeoutMs});let p=i.get(n.packageName);if(!p)throw new Error(`Package "${n.packageName}" is not available`);return l({op:n.kind==="construct"?"construct":"call",taskId:u,packageName:n.packageName,package:{name:p.name,fileUrl:p.fileUrl},path:n.path||[],argsJson:n.argsJson||"[]",timeoutMs:n.timeoutMs})}function E(u,n){s.set(u,n)}function j(u){s.delete(u),P({op:"releaseTask",taskId:u})}function h(){if(o){try{o.kill()}catch{}o=null}}return{cleanupTaskPackages:j,cancelTask:m,executePackageRuntimeCall:S,setTaskPackages:E,streamPackageHandle:g,shutdownPackageRuntime:h}}z.exports={createPackageRuntimeBridge:pe}});var Z=W((Le,X)=>{"use strict";var _e=`
2
2
  "use strict";
3
3
  let $ctx = {};
4
4
  let $pkgs = {};
@@ -916,16 +916,16 @@ function __cleanupTask() {
916
916
  __pendingRuntimeTasks = [];
917
917
  return true;
918
918
  }
919
- `;function ge(t){return pe.replace("%%PKG_SETUP%%",t)}X.exports={buildSetupCode:ge}});var{parentPort:M}=require("worker_threads"),Q=require("fs"),{fileURLToPath:ye}=require("url"),{createPackageRuntimeBridge:he}=G(),{buildSetupCode:me}=Z(),U;try{U=require("isolated-vm")}catch(t){M.postMessage({type:"error",message:"isolated-vm not available: "+t.message}),process.exit(1)}var D=new Map,ne=0,O=new Map,T=new Map,J=he({workerDir:__dirname,activeTaskContexts:O}),ke=500,ve=5e3,we=32,Y=new WeakMap,ae=new WeakMap,se=new WeakMap,j={created:0,reused:0,released:0,evicted:0,scrubFailed:0};function H(t){let e=T.get(t);return Math.max(1,Math.ceil((e??Date.now()+3e4)-Date.now()))}var $=null,Pe=0,ee=0,te=0;async function be(){let t=Date.now();if(t-ee<ve)return te;if(ee=t,!$)return 0;let e=0;for(let s of $){let r=s?.isolate;if(!(!r||r.isDisposed))try{let a=await r.getHeapStatistics(),o=a.heap_size_limit||1,l=a.used_heap_size/o;l>e&&(e=l)}catch{}}return te=e,e}async function A(t){t.heapRatio=await be(),t.contextStats=xe(),M.postMessage(t)}function xe(){let t=0;if($)for(let e of $)t+=e?.idleContexts?.length||0;return{...j,idle:t}}function oe(t,e){if(!$){let a=Math.max(1,Math.trunc(Number(e)||8));$=new Array(a).fill(null)}let s=Pe++%$.length,r=$[s];return(!r||!r.isolate||r.isolate.isDisposed)&&(r={isolate:new U.Isolate({memoryLimit:t}),idleContexts:[]},$[s]=r),r}async function R(t,e,s){let r=Y.get(t);r||(r=new Map,Y.set(t,r));let a=r.get(e);if(a)return a;let o=await t.compileScript(e,{filename:s});if(r.set(e,o),r.size>ke){let l=r.keys().next().value;r.delete(l)}return o}M.on("message",async t=>{if(t.type==="execute")je(t).catch(async e=>{await A({type:"result",id:t.id,success:!1,error:{message:e.message,stack:e.stack}})});else if(t.type==="executeBatch")He(t).catch(async e=>{await A({type:"result",id:t.id,success:!1,error:{message:e.message,stack:e.stack}})});else if(t.type==="invokeRuntimeCallback")Se(t).catch(e=>{M.postMessage({type:"runtimeCallbackResult",callId:t.callId,error:e?.message||String(e)})});else if(t.type==="callResult"){let e=D.get(t.callId);e&&(D.delete(t.callId),e.resolve(t.result))}else if(t.type==="callError"){let e=D.get(t.callId);e&&(D.delete(t.callId),e.reject(new Error(t.error)))}else t.type==="cancelTask"&&J.cancelTask(t.id)});async function Se(t){let e=O.get(t.id);if(!e){M.postMessage({type:"runtimeCallbackResult",callId:t.callId,error:`Runtime callback context not found: ${t.id}`});return}let s=await e.evalClosure(`return __invokeRuntimeCallback(${JSON.stringify(t.callbackId)}, ${JSON.stringify(t.argsJson||"[]")});`,[],{arguments:{copy:!0},result:{promise:!0,copy:!0}}),r=JSON.parse(s);M.postMessage({type:"runtimeCallbackResult",callId:t.callId,...r})}function N(t,e,s){return new Promise((r,a)=>{let o=`cb_${++ne}`;D.set(o,{resolve:r,reject:a}),M.postMessage({type:e,id:t,callId:o,...s})})}function Ce(t,e,s){M.postMessage({type:e,id:t,callId:`f_${++ne}`,...s})}async function $e(t,e){if(e?.method!=="stream")return N(t,"resCall",e);let s=JSON.parse(e.argsJson||"[]"),r=s[0],a=s[1]||{},o=r?.__pkgHandleArg;if(!o)return N(t,"resCall",e);let l=a.observer&&typeof a.observer=="object"?a.observer.__fnRef:null;delete a.observer;let y={...a};await N(t,"resCall",{method:"streamStart",argsJson:JSON.stringify([null,y])});let f=async(d,k)=>{if(!l)return;let w=O.get(t);if(!w)return;let c;try{c=Buffer.from(d).toString("utf8")}catch{c=""}try{await w.evalClosure(`return __invokeRuntimeCallback(${JSON.stringify(l)}, ${JSON.stringify(JSON.stringify([c,k]))});`,[],{arguments:{copy:!0},result:{promise:!0,copy:!0}})}catch{}};try{await J.streamPackageHandle(t,o,async d=>{await f(d,"chunk"),await N(t,"resCall",{method:"streamChunk",chunk:Buffer.from(d).toString("base64")})},[],H(t)),await N(t,"resCall",{method:"streamEnd"}),await f("","end")}catch(d){try{await N(t,"resCall",{method:"streamError",error:{message:d.message,stack:d.stack}})}catch{}throw await f("","error"),d}return JSON.stringify({__e:"u"})}function Re(t){if(typeof t.sourceCode=="string"&&t.sourceCode.length>0)return t.sourceCode;let e=t.filePath;return!e&&typeof t.fileUrl=="string"&&t.fileUrl.startsWith("file://")&&(e=ye(t.fileUrl)),!e||!Q.existsSync(e)?null:Q.readFileSync(e,"utf8")}async function Me(t,e,s){try{let r=Re(s);if(!r)return null;let a=await t.compileModule(r,{filename:`pkg:${s.safeName}`});await a.instantiate(e,l=>{throw new Error(`Unresolved import in package ${s.safeName}: ${l}`)}),await a.evaluate({timeout:1e4});let o=await a.namespace.get("default");return o!==void 0&&o.typeof!=="undefined"?o.derefInto({release:!1}):a.namespace.derefInto({release:!1})}catch{return null}}function ie(t,e){let s=a=>{let o=2166136261;for(let l=0;l<a.length;l++)o^=a.charCodeAt(l),o=Math.imul(o,16777619);return(o>>>0).toString(36)},r=new Set(e||[]);return t.map(a=>{let o=a.cacheKey||`${a.filePath||""}:${a.fileUrl||""}:${a.mtimeMs||""}:${a.size||""}:${s(a.sourceCode||"")}`,l=r.has(a.name)?"isolate":"proxy";return`${a.name}:${a.version||""}:${o}:${l}`}).join("|")}function ce(t,e){let s=new Set(e.map(f=>f.name)),r=new Set,a=String(t||""),o=/\b(?:\$ctx\.)?\$pkgs\s*\[\s*(['"`])([^'"`]+)\1\s*\]/g,l=/\brequire\s*\(\s*(['"`])([^'"`]+)\1\s*\)/g,y=/\b(?:\$ctx\.)?\$pkgs\.([A-Za-z_$][\w$]*)/g;for(let f of[o,l])for(let d of a.matchAll(f)){let k=d[2];s.has(k)&&r.add(k)}for(let f of a.matchAll(y)){let d=f[1];s.has(d)&&r.add(d)}return r}async function Ne(t,e,s,r){let a=await t.createContext(),o=a.global;await o.set("global",o.derefInto());let l=[],y=[],f=new Map;for(let c of s){f.set(c.name,c);let g=r.has(c.name)?await Me(t,a,c):null;g!==null?(await o.set(`__pkg_${c.safeName}`,g),l.push(c)):y.push(c)}J.setTaskPackages(e,f),await o.set("__callRef",new U.Reference(async(c,g,P)=>{let m=JSON.parse(P);return g==="pkgCall"?JSON.stringify(await J.executePackageRuntimeCall(c,m)):g==="resCall"?$e(c,m):N(c,g,m)})),await o.set("__fireRef",new U.Reference((c,g,P)=>{let m=JSON.parse(P);Ce(c,g,m)}));let d=l.map(c=>`$pkgs[${JSON.stringify(c.name)}] = __pkg_${c.safeName};`).concat(y.map(c=>`$pkgs[${JSON.stringify(c.name)}] = __createPkgProxy(${JSON.stringify(c.name)}, []);`)).join(`
920
- `),k=me(d);return await(await R(t,k,"setup.js")).run(a,{timeout:H(e)}),ae.set(a,ie(s,r)),se.set(a,f),a}async function le(t,e,s,r,a,o,l){let y=t.isolate,f=ie(s,a),d=null;for(let c=t.idleContexts.length-1;c>=0;c--){let g=t.idleContexts[c];if(t.idleContexts.splice(c,1),ae.get(g)===f){d=g,j.reused++;break}try{g.release()}catch{}}d||(d=await Ne(y,e,s,a),j.created++),J.setTaskPackages(e,se.get(d)||new Map);let k=d.global;return await k.set("__snapshot",new U.ExternalCopy(r).copyInto()),await k.set("__nextTaskId",e),await k.set("__nextTaskTimeoutMs",o),await k.set("__nextTaskDeadlineMs",l),await(await R(y,"__resetTask(__snapshot, __nextTaskId, __nextTaskTimeoutMs, __nextTaskDeadlineMs);","reset-task.js")).run(d,{timeout:H(e)}),d}async function ue(t,e){if(!(!e||t.isolate.isDisposed)){try{await(await R(t.isolate,"__cleanupTask();","cleanup-task.js")).run(e,{timeout:5e3})}catch{j.scrubFailed++;try{e.release()}catch{}return}if(t.idleContexts.length>=we){try{e.release()}catch{}j.evicted++;return}t.idleContexts.push(e),j.released++}}function Te(t){try{let e=JSON.parse(t.message);if(e&&e.__userThrow)return{...e,message:e.message??t.message}}catch{}return null}var Ae=3,Oe=["setup.js","extract.js","extract-error-ctx.js","set-status.js","populate-error.js"];function Je(t){if(!t)return null;let e=t.split(`
921
- `);for(let s of e){let r=s.match(/at\s+(.+\.js):(\d+):(\d+)/);if(!r)continue;let a=r[1].trim();if(Oe.includes(a))continue;let l=parseInt(r[2])-Ae;if(!(l<=0))return{line:l,column:parseInt(r[3]),phase:a.replace(".js","")}}return null}function Ee(t,e,s){if(!t||!e)return;let r=String(t).split(/\r?\n/),a=Math.max(1,e-1),o=Math.min(r.length,e+1),l=String(o).length,y=[];for(let f=a;f<=o;f++){let d=f===e?">":" ";y.push(`${d} ${String(f).padStart(l," ")}. ${r[f-1]??""}`),f===e&&s&&s>0&&y.push(` ${" ".repeat(l)} ${" ".repeat(Math.max(0,s-1))}^`)}return y.join(`
922
- `)}function Ie(t,e){if(!(!t||!e)){if(e[t.phase])return e[t.phase];if(t.phase?.startsWith("preHook"))return e.preHook;if(t.phase?.startsWith("postHook"))return e.postHook}}function V(t,e){let s=Te(t);if(s)return{message:s.message,statusCode:s.statusCode,errorPath:s.errorPath,details:s.details};let r=Je(t.stack),a=t.message||"Unknown error",o=r?`${a} (${r.phase}, line ${r.line})`:a,l=Ie(r,e),y=r?Ee(l,r.line,r.column):void 0;return{message:o,statusCode:t.statusCode||null,details:{errorName:t.name||null,...r?{...r,codeFrame:y}:{}}}}async function K(t,e,s){let r=V(e,s);await A({type:"result",id:t,success:!1,error:{...r,stack:e.stack,code:e.code}})}async function je(t){let{id:e,code:s,pkgSources:r,snapshot:a,memoryLimitMb:o,isolatePoolSize:l}=t,y={handler:t.sourceCode||s||""},f=r||[],d=Math.max(1,Math.trunc(Number(t.timeoutMs)||3e4)),k=Date.now()+d;T.set(e,k);let w=ce(s,f),c=oe(o,l),g=c.isolate,P;try{P=await le(c,e,f,a,w,d,k)}catch(m){T.delete(e),B(e),await K(e,m,y);return}O.set(e,P);try{let m=`
919
+ `;function ge(t){return _e.replace("%%PKG_SETUP%%",t)}X.exports={buildSetupCode:ge}});var{parentPort:M}=require("worker_threads"),Q=require("fs"),{fileURLToPath:ye}=require("url"),{createPackageRuntimeBridge:he}=G(),{buildSetupCode:me}=Z(),U;try{U=require("isolated-vm")}catch(t){M.postMessage({type:"error",message:"isolated-vm not available: "+t.message}),process.exit(1)}var D=new Map,ne=0,O=new Map,T=new Map,J=he({workerDir:__dirname,activeTaskContexts:O}),ke=500,ve=5e3,we=32,Y=new WeakMap,ae=new WeakMap,se=new WeakMap,I={created:0,reused:0,released:0,evicted:0,scrubFailed:0};function H(t){let e=T.get(t);return Math.max(1,Math.ceil((e??Date.now()+3e4)-Date.now()))}var $=null,Pe=0,ee=0,te=0;async function be(){let t=Date.now();if(t-ee<ve)return te;if(ee=t,!$)return 0;let e=0;for(let s of $){let r=s?.isolate;if(!(!r||r.isDisposed))try{let a=await r.getHeapStatistics(),o=a.heap_size_limit||1,c=a.used_heap_size/o;c>e&&(e=c)}catch{}}return te=e,e}async function A(t){t.heapRatio=await be(),t.contextStats=xe(),M.postMessage(t)}function xe(){let t=0;if($)for(let e of $)t+=e?.idleContexts?.length||0;return{...I,idle:t}}function oe(t,e){if(!$){let a=Math.max(1,Math.trunc(Number(e)||8));$=new Array(a).fill(null)}let s=Pe++%$.length,r=$[s];return(!r||!r.isolate||r.isolate.isDisposed)&&(r={isolate:new U.Isolate({memoryLimit:t}),idleContexts:[]},$[s]=r),r}async function R(t,e,s){let r=Y.get(t);r||(r=new Map,Y.set(t,r));let a=r.get(e);if(a)return a;let o;try{o=await t.compileScript(e,{filename:s})}catch(c){throw c&&typeof c=="object"&&(c.executionStage="compile"),c}if(r.set(e,o),r.size>ke){let c=r.keys().next().value;r.delete(c)}return o}M.on("message",async t=>{if(t.type==="execute")Ie(t).catch(async e=>{await A({type:"result",id:t.id,success:!1,error:{message:e.message,stack:e.stack}})});else if(t.type==="executeBatch")He(t).catch(async e=>{await A({type:"result",id:t.id,success:!1,error:{message:e.message,stack:e.stack}})});else if(t.type==="invokeRuntimeCallback")Se(t).catch(e=>{M.postMessage({type:"runtimeCallbackResult",callId:t.callId,error:e?.message||String(e)})});else if(t.type==="callResult"){let e=D.get(t.callId);e&&(D.delete(t.callId),e.resolve(t.result))}else if(t.type==="callError"){let e=D.get(t.callId);e&&(D.delete(t.callId),e.reject(new Error(t.error)))}else t.type==="cancelTask"&&J.cancelTask(t.id)});async function Se(t){let e=O.get(t.id);if(!e){M.postMessage({type:"runtimeCallbackResult",callId:t.callId,error:`Runtime callback context not found: ${t.id}`});return}let s=await e.evalClosure(`return __invokeRuntimeCallback(${JSON.stringify(t.callbackId)}, ${JSON.stringify(t.argsJson||"[]")});`,[],{arguments:{copy:!0},result:{promise:!0,copy:!0}}),r=JSON.parse(s);M.postMessage({type:"runtimeCallbackResult",callId:t.callId,...r})}function N(t,e,s){return new Promise((r,a)=>{let o=`cb_${++ne}`;D.set(o,{resolve:r,reject:a}),M.postMessage({type:e,id:t,callId:o,...s})})}function Ce(t,e,s){M.postMessage({type:e,id:t,callId:`f_${++ne}`,...s})}async function $e(t,e){if(e?.method!=="stream")return N(t,"resCall",e);let s=JSON.parse(e.argsJson||"[]"),r=s[0],a=s[1]||{},o=r?.__pkgHandleArg;if(!o)return N(t,"resCall",e);let c=a.observer&&typeof a.observer=="object"?a.observer.__fnRef:null;delete a.observer;let y={...a};await N(t,"resCall",{method:"streamStart",argsJson:JSON.stringify([null,y])});let f=async(d,k)=>{if(!c)return;let w=O.get(t);if(!w)return;let l;try{l=Buffer.from(d).toString("utf8")}catch{l=""}try{await w.evalClosure(`return __invokeRuntimeCallback(${JSON.stringify(c)}, ${JSON.stringify(JSON.stringify([l,k]))});`,[],{arguments:{copy:!0},result:{promise:!0,copy:!0}})}catch{}};try{await J.streamPackageHandle(t,o,async d=>{await f(d,"chunk"),await N(t,"resCall",{method:"streamChunk",chunk:Buffer.from(d).toString("base64")})},[],H(t)),await N(t,"resCall",{method:"streamEnd"}),await f("","end")}catch(d){try{await N(t,"resCall",{method:"streamError",error:{message:d.message,stack:d.stack}})}catch{}throw await f("","error"),d}return JSON.stringify({__e:"u"})}function Re(t){if(typeof t.sourceCode=="string"&&t.sourceCode.length>0)return t.sourceCode;let e=t.filePath;return!e&&typeof t.fileUrl=="string"&&t.fileUrl.startsWith("file://")&&(e=ye(t.fileUrl)),!e||!Q.existsSync(e)?null:Q.readFileSync(e,"utf8")}async function Me(t,e,s){try{let r=Re(s);if(!r)return null;let a=await t.compileModule(r,{filename:`pkg:${s.safeName}`});await a.instantiate(e,c=>{throw new Error(`Unresolved import in package ${s.safeName}: ${c}`)}),await a.evaluate({timeout:1e4});let o=await a.namespace.get("default");return o!==void 0&&o.typeof!=="undefined"?o.derefInto({release:!1}):a.namespace.derefInto({release:!1})}catch{return null}}function ie(t,e){let s=a=>{let o=2166136261;for(let c=0;c<a.length;c++)o^=a.charCodeAt(c),o=Math.imul(o,16777619);return(o>>>0).toString(36)},r=new Set(e||[]);return t.map(a=>{let o=a.cacheKey||`${a.filePath||""}:${a.fileUrl||""}:${a.mtimeMs||""}:${a.size||""}:${s(a.sourceCode||"")}`,c=r.has(a.name)?"isolate":"proxy";return`${a.name}:${a.version||""}:${o}:${c}`}).join("|")}function ce(t,e){let s=new Set(e.map(f=>f.name)),r=new Set,a=String(t||""),o=/\b(?:\$ctx\.)?\$pkgs\s*\[\s*(['"`])([^'"`]+)\1\s*\]/g,c=/\brequire\s*\(\s*(['"`])([^'"`]+)\1\s*\)/g,y=/\b(?:\$ctx\.)?\$pkgs\.([A-Za-z_$][\w$]*)/g;for(let f of[o,c])for(let d of a.matchAll(f)){let k=d[2];s.has(k)&&r.add(k)}for(let f of a.matchAll(y)){let d=f[1];s.has(d)&&r.add(d)}return r}async function Ne(t,e,s,r){let a=await t.createContext(),o=a.global;await o.set("global",o.derefInto());let c=[],y=[],f=new Map;for(let l of s){f.set(l.name,l);let g=r.has(l.name)?await Me(t,a,l):null;g!==null?(await o.set(`__pkg_${l.safeName}`,g),c.push(l)):y.push(l)}J.setTaskPackages(e,f),await o.set("__callRef",new U.Reference(async(l,g,P)=>{let m=JSON.parse(P);return g==="pkgCall"?JSON.stringify(await J.executePackageRuntimeCall(l,m)):g==="resCall"?$e(l,m):N(l,g,m)})),await o.set("__fireRef",new U.Reference((l,g,P)=>{let m=JSON.parse(P);Ce(l,g,m)}));let d=c.map(l=>`$pkgs[${JSON.stringify(l.name)}] = __pkg_${l.safeName};`).concat(y.map(l=>`$pkgs[${JSON.stringify(l.name)}] = __createPkgProxy(${JSON.stringify(l.name)}, []);`)).join(`
920
+ `),k=me(d);return await(await R(t,k,"setup.js")).run(a,{timeout:H(e)}),ae.set(a,ie(s,r)),se.set(a,f),a}async function le(t,e,s,r,a,o,c){let y=t.isolate,f=ie(s,a),d=null;for(let l=t.idleContexts.length-1;l>=0;l--){let g=t.idleContexts[l];if(t.idleContexts.splice(l,1),ae.get(g)===f){d=g,I.reused++;break}try{g.release()}catch{}}d||(d=await Ne(y,e,s,a),I.created++),J.setTaskPackages(e,se.get(d)||new Map);let k=d.global;return await k.set("__snapshot",new U.ExternalCopy(r).copyInto()),await k.set("__nextTaskId",e),await k.set("__nextTaskTimeoutMs",o),await k.set("__nextTaskDeadlineMs",c),await(await R(y,"__resetTask(__snapshot, __nextTaskId, __nextTaskTimeoutMs, __nextTaskDeadlineMs);","reset-task.js")).run(d,{timeout:H(e)}),d}async function ue(t,e){if(!(!e||t.isolate.isDisposed)){try{await(await R(t.isolate,"__cleanupTask();","cleanup-task.js")).run(e,{timeout:5e3})}catch{I.scrubFailed++;try{e.release()}catch{}return}if(t.idleContexts.length>=we){try{e.release()}catch{}I.evicted++;return}t.idleContexts.push(e),I.released++}}function Te(t){try{let e=JSON.parse(t.message);if(e&&e.__userThrow)return{...e,message:e.message??t.message}}catch{}return null}var Ae=3,Oe=["setup.js","extract.js","extract-error-ctx.js","set-status.js","populate-error.js"];function Je(t){if(!t)return null;let e=t.split(`
921
+ `);for(let s of e){let r=s.match(/at\s+(.+\.js):(\d+):(\d+)/);if(!r)continue;let a=r[1].trim();if(Oe.includes(a))continue;let c=parseInt(r[2])-Ae;if(!(c<=0))return{line:c,column:parseInt(r[3]),phase:a.replace(".js","")}}return null}function Ee(t,e,s){if(!t||!e)return;let r=String(t).split(/\r?\n/),a=Math.max(1,e-1),o=Math.min(r.length,e+1),c=String(o).length,y=[];for(let f=a;f<=o;f++){let d=f===e?">":" ";y.push(`${d} ${String(f).padStart(c," ")}. ${r[f-1]??""}`),f===e&&s&&s>0&&y.push(` ${" ".repeat(c)} ${" ".repeat(Math.max(0,s-1))}^`)}return y.join(`
922
+ `)}function je(t,e){if(!(!t||!e)){if(e[t.phase])return e[t.phase];if(t.phase?.startsWith("preHook"))return e.preHook;if(t.phase?.startsWith("postHook"))return e.postHook}}function V(t,e){let s=Te(t);if(s)return{message:s.message,statusCode:s.statusCode,errorPath:s.errorPath,details:s.details};let r=Je(t.stack),a=t.message||"Unknown error",o=r?`${a} (${r.phase}, line ${r.line})`:a,c=je(r,e),y=r?Ee(c,r.line,r.column):void 0;return{message:o,statusCode:t.statusCode||null,details:{errorName:t.name||null,executionStage:t.executionStage||"runtime",...r?{...r,codeFrame:y}:{}}}}async function K(t,e,s){let r=V(e,s);await A({type:"result",id:t,success:!1,error:{...r,stack:e.stack,code:e.code}})}async function Ie(t){let{id:e,code:s,pkgSources:r,snapshot:a,memoryLimitMb:o,isolatePoolSize:c}=t,y={handler:t.sourceCode||s||""},f=r||[],d=Math.max(1,Math.trunc(Number(t.timeoutMs)||3e4)),k=Date.now()+d;T.set(e,k);let w=ce(s,f),l=oe(o,c),g=l.isolate,P;try{P=await le(l,e,f,a,w,d,k)}catch(m){T.delete(e),B(e),await K(e,m,y);return}O.set(e,P);try{let m=`
923
923
  (async () => {
924
924
  "use strict";
925
925
  ${s}
926
926
  })().then((__result) => __extractResult(__result, __result === undefined));
927
- `,E=await(await R(g,m,"handler.js")).run(P,{timeout:H(e),promise:!0}),I=JSON.parse(E);await A({type:"result",id:e,success:!0,...I})}catch(m){await K(e,m,y)}finally{O.delete(e),T.delete(e),await ue(c,P),B(e)}}async function He(t){let{id:e,codeBlocks:s,pkgSources:r,snapshot:a,memoryLimitMb:o,isolatePoolSize:l}=t,y=r||[],f=Math.max(1,Math.trunc(Number(t.timeoutMs)||3e4)),d=Date.now()+f;T.set(e,d);let k=ce((s||[]).map(h=>h.code||"").join(`
928
- `),y),w=oe(o,l),c=w.isolate,g;try{g=await le(w,e,y,a,k,f,d)}catch(h){T.delete(e),B(e),await K(e,h);return}O.set(e,g);let P=[],m=[],S={},E=0,I=0;for(let h of s){let u=h.type||"handler",n=h.sourceCode||h.code||"";u==="postHook"?(I++,S[`postHook #${I}`]=n,S.postHook=n,m.push(h)):(u==="handler"?S.handler=n:(E++,S[`${u} #${E}`]=n,S.preHook=n),P.push(h))}try{let h=null;for(let n=0;n<P.length;n++){let i=P[n],_=i.type||"handler",p=_==="handler"?"handler":`${_} #${n+1}`,v;_==="preHook"?v=`
927
+ `,E=await(await R(g,m,"handler.js")).run(P,{timeout:H(e),promise:!0}),j=JSON.parse(E);await A({type:"result",id:e,success:!0,...j})}catch(m){await K(e,m,y)}finally{O.delete(e),T.delete(e),await ue(l,P),B(e)}}async function He(t){let{id:e,codeBlocks:s,pkgSources:r,snapshot:a,memoryLimitMb:o,isolatePoolSize:c}=t,y=r||[],f=Math.max(1,Math.trunc(Number(t.timeoutMs)||3e4)),d=Date.now()+f;T.set(e,d);let k=ce((s||[]).map(h=>h.code||"").join(`
928
+ `),y),w=oe(o,c),l=w.isolate,g;try{g=await le(w,e,y,a,k,f,d)}catch(h){T.delete(e),B(e),await K(e,h);return}O.set(e,g);let P=[],m=[],S={},E=0,j=0;for(let h of s){let u=h.type||"handler",n=h.sourceCode||h.code||"";u==="postHook"?(j++,S[`postHook #${j}`]=n,S.postHook=n,m.push(h)):(u==="handler"?S.handler=n:(E++,S[`${u} #${E}`]=n,S.preHook=n),P.push(h))}try{let h=null;for(let n=0;n<P.length;n++){let i=P[n],p=i.type||"handler",_=p==="handler"?"handler":`${p} #${n+1}`,v;p==="preHook"?v=`
929
929
  (async () => {
930
930
  "use strict";
931
931
  ${i.code}
@@ -939,7 +939,7 @@ function __cleanupTask() {
939
939
  })().then((__r) => {
940
940
  $ctx.$data = __r;
941
941
  return "__handler_done__";
942
- });`;try{let C=await(await R(c,v,`${p}.js`)).run(g,{timeout:H(e),promise:!0});if(_==="preHook"&&typeof C=="string"){let b=JSON.parse(C);if(b.__shortCircuit){let F=await re(c,g,b.value);await A({type:"result",id:e,success:!0,...F,shortCircuit:!0});return}}}catch(x){h=x;break}}if(!h&&m.length>0&&await(await R(c,'$ctx.$statusCode = 200; "__status_set__";',"set-status.js")).run(g,{timeout:5e3}),h&&m.length>0){let n=V(h,S),i={message:n.message||"Unknown error",name:h.constructor?.name||"Error",stack:h.stack||"",statusCode:n.statusCode||500,details:n.details||{},timestamp:new Date().toISOString()},_=`
942
+ });`;try{let C=await(await R(l,v,`${_}.js`)).run(g,{timeout:H(e),promise:!0});if(p==="preHook"&&typeof C=="string"){let b=JSON.parse(C);if(b.__shortCircuit){let F=await re(l,g,b.value);await A({type:"result",id:e,success:!0,...F,shortCircuit:!0});return}}}catch(x){h=x;break}}if(!h&&m.length>0&&await(await R(l,'$ctx.$statusCode = 200; "__status_set__";',"set-status.js")).run(g,{timeout:5e3}),h&&m.length>0){let n=V(h,S),i={message:n.message||"Unknown error",name:h.constructor?.name||"Error",stack:h.stack||"",statusCode:n.statusCode||500,details:n.details||{},timestamp:new Date().toISOString()},p=`
943
943
  $ctx.$error = ${JSON.stringify(i)};
944
944
  $ctx.$data = null;
945
945
  $ctx.$statusCode = ${i.statusCode};
@@ -953,11 +953,11 @@ if ($ctx.$api) {
953
953
  timestamp: ${JSON.stringify(i.timestamp)},
954
954
  };
955
955
  }
956
- "__error_populated__";`;await(await c.compileScript(_,{filename:"populate-error.js"})).run(g,{timeout:5e3})}for(let n=0;n<m.length;n++){let i=m[n],_=`postHook #${n+1}`,p=`
956
+ "__error_populated__";`;await(await l.compileScript(p,{filename:"populate-error.js"})).run(g,{timeout:5e3})}for(let n=0;n<m.length;n++){let i=m[n],p=`postHook #${n+1}`,_=`
957
957
  (async () => {
958
958
  "use strict";
959
959
  ${i.code}
960
960
  })().then((__r) => {
961
961
  if (__r !== undefined) $ctx.$data = __r;
962
962
  return "__posthook_done__";
963
- });`;try{await(await R(c,p,`${_}.js`)).run(g,{timeout:H(e),promise:!0})}catch{}}if(h){let n=V(h,S),i;try{let v=await(await R(c,"(async () => JSON.stringify(await __extractCtxChanges()))()","extract-error-ctx.js")).run(g,{timeout:5e3,promise:!0});i=JSON.parse(v)}catch{}await A({type:"result",id:e,success:!1,error:{message:n.message,statusCode:n.statusCode,errorPath:n.errorPath,stack:h.stack,code:h.code,details:n.details},ctxChanges:i});return}let u=await re(c,g);await A({type:"result",id:e,success:!0,...u})}catch(h){await K(e,h)}finally{O.delete(e),T.delete(e),await ue(w,g),B(e)}}function B(t){J.cleanupTaskPackages(t)}function Fe(){J.shutdownPackageRuntime()}process.on("exit",Fe);async function re(t,e,s){if(s!==void 0){let l=`__extractResult(${JSON.stringify(s)}, false)`,f=await(await t.compileScript(l,{filename:"extract.js"})).run(e,{timeout:5e3,promise:!0});return JSON.parse(f)}let o=await(await R(t,"__extractResult($ctx.$data, $ctx.$data === undefined)","extract.js")).run(e,{timeout:5e3,promise:!0});return JSON.parse(o)}
963
+ });`;try{await(await R(l,_,`${p}.js`)).run(g,{timeout:H(e),promise:!0})}catch{}}if(h){let n=V(h,S),i;try{let v=await(await R(l,"(async () => JSON.stringify(await __extractCtxChanges()))()","extract-error-ctx.js")).run(g,{timeout:5e3,promise:!0});i=JSON.parse(v)}catch{}await A({type:"result",id:e,success:!1,error:{message:n.message,statusCode:n.statusCode,errorPath:n.errorPath,stack:h.stack,code:h.code,details:n.details},ctxChanges:i});return}let u=await re(l,g);await A({type:"result",id:e,success:!0,...u})}catch(h){await K(e,h)}finally{O.delete(e),T.delete(e),await ue(w,g),B(e)}}function B(t){J.cleanupTaskPackages(t)}function Fe(){J.shutdownPackageRuntime()}process.on("exit",Fe);async function re(t,e,s){if(s!==void 0){let c=`__extractResult(${JSON.stringify(s)}, false)`,f=await(await t.compileScript(c,{filename:"extract.js"})).run(e,{timeout:5e3,promise:!0});return JSON.parse(f)}let o=await(await R(t,"__extractResult($ctx.$data, $ctx.$data === undefined)","extract.js")).run(e,{timeout:5e3,promise:!0});return JSON.parse(o)}