@statedelta-axiom/sandbox 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +1 -0
- package/dist/index.d.cts +741 -0
- package/dist/index.d.ts +741 -0
- package/dist/index.js +1 -0
- package/package.json +50 -0
package/dist/index.cjs
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
'use strict';var realmSystem=require('@statedelta-axiom/realm-system');var v=class extends Error{code;data;constructor(e){super(e.message??`Sandbox boot error: ${e.code}`),this.name="SandboxBootError",this.code=e.code,this.data=e.data;}};function F(t,e){if(t===void 0)return {ok:true,value:e??{}};if(e===void 0)return {ok:true,value:t};let n=[];for(let o of ["enableEvents","enableViews","imperatives"]){let r=t[o],a=e[o];r===false&&a===true&&n.push({flag:o,parent:r,child:a,kind:"boolean_restrictive"});}if(t.deterministic===true&&e.deterministic===false&&n.push({flag:"deterministic",parent:true,child:false,kind:"boolean_deterministic"}),t.mode==="runtime"&&e.mode==="dev"&&n.push({flag:"mode",parent:"runtime",child:"dev",kind:"enum_tier"}),t.maxEventPasses!==void 0&&e.maxEventPasses!==void 0&&e.maxEventPasses>t.maxEventPasses&&n.push({flag:"maxEventPasses",parent:t.maxEventPasses,child:e.maxEventPasses,kind:"numeric"}),t.limits&&e.limits)for(let o of Object.keys(e.limits)){let r=t.limits[o],a=e.limits[o];r!==void 0&&a!==void 0&&a>r&&n.push({flag:`limits.${String(o)}`,parent:r,child:a,kind:"numeric"});}if(t.allowedDirectives&&e.allowedDirectives){let o=new Set(t.allowedDirectives.map(B));e.allowedDirectives.map(B).filter(a=>!o.has(a)).length>0&&n.push({flag:"allowedDirectives",parent:t.allowedDirectives,child:e.allowedDirectives,kind:"list_permissive"});}return n.length>0?{ok:false,violations:n}:{ok:true,value:De(t,e)}}function De(t,e){return {enableEvents:e.enableEvents??t.enableEvents,enableViews:e.enableViews??t.enableViews,imperatives:e.imperatives??t.imperatives,deterministic:e.deterministic??t.deterministic,mode:e.mode??t.mode,allowedDirectives:e.allowedDirectives??t.allowedDirectives,blockedDirectives:Pe(t.blockedDirectives,e.blockedDirectives),limits:ke(t.limits,e.limits),maxEventPasses:e.maxEventPasses??t.maxEventPasses}}function Pe(t,e){if(!t&&!e)return;if(!t)return e;if(!e)return t;let n=new Set,o=[];for(let r of [...t,...e]){let a=B(r);n.has(a)||(n.add(a),o.push(r));}return o}function ke(t,e){if(!(!t&&!e))return {...t,...e}}function B(t){return typeof t=="string"?t:t.pattern}function H(t){let e={};return t?.enableEvents!==void 0&&(e.enableEvents=t.enableEvents),t?.enableViews!==void 0&&(e.enableViews=t.enableViews),t?.imperatives!==void 0&&(e.imperatives=t.imperatives),t?.deterministic!==void 0&&(e.deterministic=t.deterministic),t?.allowedDirectives!==void 0&&(e.allowedDirectives=t.allowedDirectives),t?.blockedDirectives!==void 0&&(e.blockedDirectives=t.blockedDirectives),t?.limits!==void 0&&(e.limits=t.limits),t?.maxEventPasses!==void 0&&(e.maxEventPasses=t.maxEventPasses),e}function V(t,e){let n={};return t?.mode!==void 0&&(n.mode=t.mode),e?.schemaValidator!==void 0&&(n.schemaValidator=e.schemaValidator),e?.handlers!==void 0&&(n.handlers=e.handlers),e?.analyzer!==void 0&&(n.analyzer=e.analyzer),e?.trace!==void 0&&(n.trace=e.trace),e?.compilationMode!==void 0&&(n.compilationMode=e.compilationMode),e?.autoJitThreshold!==void 0&&(n.autoJitThreshold=e.autoJitThreshold),e?.debug!==void 0&&(n.debug=e.debug),e?.async!==void 0&&(n.async=e.async),e?.providers!==void 0&&(n.providers=e.providers),e?.providerBuffer!==void 0&&(n.providerBuffer=e.providerBuffer),n}function K(t,e){if(t===void 0)return {ok:true,value:e};if(e===void 0)return {ok:true,value:t};let n=[];for(let o of ["definitions","effects"])t[o]===true&&e[o]===false&&n.push({flag:o,parent:true,child:false});return n.length>0?{ok:false,violations:n}:{ok:true,value:{...t.definitions!==void 0||e.definitions!==void 0?{definitions:e.definitions??t.definitions}:{},...t.effects!==void 0||e.effects!==void 0?{effects:e.effects??t.effects}:{}}}}function $(t,e){let n=false,o,r=e?.ttl,a;r!==void 0&&(a=t.on("step:complete",()=>{o!==void 0||n||(r=r-1,r<=0&&c("ttl"));}));function c(i){if(n)return {ok:false,error:{code:"SANDBOX_DISPOSED"}};if(o!==void 0)return {ok:false,error:{code:"SANDBOX_FINISH_PHASE_INVALID",message:"Sandbox already finished",data:{phase:"finished"}}};let d=t.getPhase();if(d!=="running")return {ok:false,error:{code:"SANDBOX_FINISH_PHASE_INVALID",message:'finish() requires phase "running"',data:{phase:d}}};try{let u=t.getTick();return t.finish(),o={phase:"finished",reason:i,finishedAt:u},a?.(),a=void 0,{ok:!0}}catch(u){return {ok:false,error:{code:"SANDBOX_FINISH_PHASE_INVALID",message:u instanceof Error?u.message:String(u)}}}}return {finish:()=>c("manual"),dispose(){return n?{ok:false,error:{code:"SANDBOX_DISPOSED"}}:(n=true,a?.(),a=void 0,{ok:true})},isDisposed:()=>n,getResult:()=>o}}function _(t){return t instanceof Error?t.message:String(t)}function E(t){return {ok:false,error:"SANDBOX_NOT_FOUND",data:{code:"SANDBOX_NOT_FOUND",id:t}}}function P(t){return {ok:false,error:"SANDBOX_DISPOSED",data:{code:"SANDBOX_DISPOSED",id:t}}}function q(t,e,n){return {ok:false,error:"INVALID_ACTION_FOR_MODE",data:{code:"INVALID_ACTION_FOR_MODE",id:t,action:e,mode:n,message:`action "${e}" requires governed mode (sandbox "${t}" is "${n}")`}}}function I(t,e){return {ok:false,error:t,data:{message:_(e)}}}function G(t){let{id:e,mode:n,rs:o,capabilities:r,isDisposed:a,getExports:c,getBootSourceKey:i,crossRealmGet:d,watch:u,recordEffect:S}=t,f=s=>{if(a())throw new Error(`Sandbox "${e}" is disposed; "${s}" rejected.`)},x=(s,l)=>{if(n!=="closed")return false;let b=c?.();if(!b)return false;let p=s.indexOf(":"),O=p===-1?s:s.slice(0,p);return l==="state"?!b.states.has(O):!b.accessible.has(O)};return {step:()=>(f("step"),o.step()),stepAsync:()=>(f("stepAsync"),o.stepAsync()),get:(s,l)=>{if(f("get"),typeof s=="string"&&s.indexOf("/")!==-1)return d?d(s,l):void 0;if(x(s,"any"))return;if(l!==void 0)return o.get(s,l);let b=s.indexOf(":");return b===-1?o.get(s):o.get(s.slice(0,b),s.slice(b+1))},applyEffect:(s,l)=>{f("applyEffect"),o.applyEffect(s,l),S?.(s,l);},snapshot:()=>{if(a())return ee();try{let s=o.snapshot(),l={id:e,mode:n,capabilities:r,realm:s},b=o.getPhysics().persist.definitions,p=i?.();return b&&p!==void 0?{ok:!0,value:{...l,persistence:{bootSourceKey:p}}}:{ok:!0,value:l}}catch(s){return {ok:false,error:{code:"SNAPSHOT_PHASE_INVALID",message:_(s),data:{phase:o.getPhase()}}}}},restore:s=>{if(a())return ee();if(s.id!==e)return {ok:false,error:{code:"SNAPSHOT_ID_MISMATCH",message:"Sandbox snapshot id mismatch",data:{expected:e,got:s.id}}};if(s.mode!==n)return {ok:false,error:{code:"SNAPSHOT_MODE_MISMATCH",message:"Sandbox snapshot mode mismatch",data:{expected:n,got:s.mode}}};if(s.capabilities!==void 0&&!Oe(s.capabilities,r))return {ok:false,error:{code:"SNAPSHOT_CAPABILITIES_MISMATCH",message:"Sandbox snapshot capabilities mismatch",data:{expected:r,got:s.capabilities}}};try{return o.restore(s.realm),{ok:!0}}catch(l){return {ok:false,error:{code:"RESTORE_PHASE_INVALID",message:_(l),data:{phase:o.getPhase()}}}}},on:(s,l)=>(f("on"),o.on(s,l)),watch:s=>(f("watch"),u?u(s):()=>{}),getPhase:()=>(f("getPhase"),o.getPhase()),getTick:()=>(f("getTick"),o.getTick()),isIdle:()=>(f("isIdle"),o.isIdle()),isAsync:()=>(f("isAsync"),o.isAsync()),hasState:s=>(f("hasState"),x(s,"state")?false:o.hasState(s)),getStateIds:()=>{f("getStateIds");let s=o.getStateIds();if(n!=="closed")return s;let l=c?.();return l?s.filter(b=>l.states.has(b)):s},getPhysics:()=>(f("getPhysics"),o.getPhysics())}}function X(t,e){let{id:n,rs:o,isDisposed:r}=t,a=c=>{if(r())throw new Error(`Sandbox "${n}" is disposed; "${c}" rejected.`)};return {...e,invoke:(c,i)=>(a("invoke"),o.invoke(c,i)),invokeAsync:(c,i)=>(a("invokeAsync"),o.invokeAsync(c,i)),dispatch:(c,i,d)=>(a("dispatch"),o.dispatch(c,i,d)),emit:(c,i)=>{a("emit"),o.emit(c,i);},processEvents:()=>(a("processEvents"),o.processEvents()),processEventsAsync:()=>(a("processEventsAsync"),o.processEventsAsync()),getActionIds:()=>(a("getActionIds"),o.getActionIds()),hasAction:c=>(a("hasAction"),o.hasAction(c)),getRuleCount:()=>(a("getRuleCount"),o.getRuleCount()),hasRule:c=>(a("hasRule"),o.hasRule(c))}}function ee(){return {ok:false,error:{code:"SANDBOX_DISPOSED"}}}function Oe(t,e){return JSON.stringify(t)===JSON.stringify(e)}function te(t,e){let n=new Set,o=[],r=[],a=[],c,i=[],d=false;function u(){i.length>0||(i.push(t.on("step:complete",({tick:s,result:l})=>{if(l.executed&&!l.error&&!(l.thrown&&e)){let p={tick:s,...o.length>0&&{effects:o},...c!==void 0&&{lifecycle:c},...r.length>0&&{notify:r},...a.length>0&&{requests:a}};f(p);}x();})),i.push(t.on("notify",({event:s,data:l})=>{r.push({event:s,data:l});})),i.push(t.on("request",({id:s})=>{a.push({id:s});})),i.push(t.on("booted",()=>{f({tick:t.getTick(),lifecycle:"booted"});})),i.push(t.on("finished",({tick:s})=>{f({tick:s,lifecycle:"finished"});})));}function S(){for(let s of i)s();i=[],x();}function f(s){for(let l of [...n])l(s);}function x(){o=[],r=[],a=[],c=void 0;}return {watch(s){if(d)return ()=>{};n.add(s),n.size===1&&u();let l=false;return ()=>{l||(l=true,n.delete(s),n.size===0&&S());}},recordEffect(s,l){n.size!==0&&o.push({id:s,data:l});},dispose(){d||(d=true,S(),n.clear());}}}function z(t){let{id:e,mode:n="closed",environment:o,capabilities:r,lifecycle:a,parent:c,lookup:i,childFactory:d,physics:u,systemConfig:S}=t;if(!e)throw new Error("Sandbox requires a non-empty id.");if(e.includes("/"))throw new Error(`Sandbox id "${e}" cannot contain "/".`);let f=c?.getEffectiveCapabilities(),x=F(f,r);if(!x.ok)throw new v({code:"CASCADE_VIOLATION",message:`Sandbox "${e}": child capabilities exceed parent`,data:{violations:x.violations}});let s=x.value,l={...H(s),...u},b=c!==void 0?c.app.getPhysics().persist:void 0,p=K(b,l.persist);if(!p.ok)throw new v({code:"PERSIST_CASCADE_VIOLATION",message:`Sandbox "${e}": child persist reduces parent rigor`,data:{violations:p.violations}});let O=p.value!==void 0?{...l,persist:p.value}:l,L=realmSystem.resolveRealmPhysics(O);if(L.persist.definitions&&o?.compilation===void 0)throw new v({code:"ENVIRONMENT_INSUFFICIENT",message:`Sandbox "${e}": physics.persist.definitions=true requires environment.compilation`,data:{required:"compilation",reason:"physics.persist.definitions"}});let J=i?m=>{let y=m.indexOf("/");if(y===-1)return;let h=m.slice(0,y),R=m.slice(y+1),g=i(h);if(g)return g.app.get(R)}:void 0,w=(m,y)=>({success:false,error:y,data:{sandboxId:m}}),N=m=>{let y=i(m);return y?y.system?{ok:true,system:y.system}:{ok:false,code:"SANDBOX_NOT_GOVERNED"}:{ok:false,code:"SANDBOX_NOT_FOUND"}},ve=i?(m,y,h,R)=>{if(y.includes("/"))return w(m,"CROSS_REALM_DEPTH_UNSUPPORTED");let g=N(m);return g.ok?g.system.dispatch(y,h,R):w(m,g.code)}:void 0,Ee=i?(m,y,h)=>{if(y.includes("/"))return w(m,"CROSS_REALM_DEPTH_UNSUPPORTED");let R=N(m);if(!R.ok)return w(m,R.code);let g=R.system.invoke(y,h);return {success:g.success,data:g.data,error:g.aborted?g.abortedBy??"ABORTED":void 0}}:void 0,Ie=i?(m,y,h)=>{if(y.includes("/"))return;let R=N(m);R.ok&&R.system.emit(y,h);}:void 0,Ce={...V(s,o),crossRealmGet:J,crossRealmDispatch:ve,crossRealmInvoke:Ee,crossRealmEmit:Ie,childFactory:d,...S},D=realmSystem.createRealmSystem(L,Ce),A=$(D,a),W,Q,T=te(D,L.deterministic),Y={id:e,mode:n,rs:D,capabilities:s,isDisposed:A.isDisposed,getExports:()=>W,getBootSourceKey:()=>Q,crossRealmGet:J,watch:T.watch,recordEffect:T.recordEffect},Z=G(Y),Ae=n==="governed"?X(Y,Z):void 0;return {id:e,mode:n,app:Z,system:Ae,boot(m,y){if(A.isDisposed())throw new Error(`Sandbox "${e}" is disposed; "boot" rejected.`);y?.bootSourceKey!==void 0&&(Q=y.bootSourceKey);let h=D.boot(m,y);return h.success&&m.exports&&(W=Me(m.exports)),h},getPhase(){return D.getPhase()},getEffectiveCapabilities(){return s},finish:A.finish,dispose:()=>{let m=A.dispose();return m.ok&&T.dispose(),m},isDisposed:A.isDisposed,getResult:A.getResult}}function Me(t){let e=new Set(t.states??[]),n=new Set(t.views??[]),o=new Set(t.actions??[]),r=new Set;for(let a of e)r.add(a);for(let a of n)r.add(a);return {states:e,views:n,actions:o,accessible:r}}function C(t,e,n){let o=t.getSandbox(e);return o?o.isDisposed()?P(e):n(o):E(e)}async function ne(t,e,n){let o=t.getSandbox(e);return o?o.isDisposed()?P(e):n(o):E(e)}function oe(t,e,n,o){let r=t.getSandbox(e);return r?r.isDisposed()?P(e):r.system?o(r,r.system):q(e,n,r.mode):E(e)}async function re(t,e,n,o){let r=t.getSandbox(e);return r?r.isDisposed()?P(e):r.system?o(r,r.system):q(e,n,r.mode):E(e)}function ie(t,e,n,o){let r=n.definitions,a=n.bootSourceKey;if(n.bootResolve!==void 0){if(!t.compilation)return {ok:false,error:"BOOT_COMPILE_UNAVAILABLE",data:{message:"sandbox create with boot expression requires environment.compilation"}};let i;try{i=n.bootResolve(o.ctx,o.scope);}catch(d){return {ok:false,error:"BOOT_RESOLVE_FAILED",data:{message:d instanceof Error?d.message:String(d)}}}if(i===null||typeof i!="object")return {ok:false,error:"BOOT_RESOLVE_INVALID",data:{message:"bootResolve returned a non-object value",received:typeof i}};try{let d=t.compilation.compile(i);r=d.artifact,a=d.sourceKey;}catch(d){return {ok:false,error:"BOOT_COMPILE_FAILED",data:{message:d instanceof Error?d.message:String(d)}}}}let c=M(t,e,{id:n.id,mode:n.mode,capabilities:n.capabilities,definitions:r,bootSourceKey:a,bootOptions:n.bootOptions});return c.success?{ok:true,data:{id:n.id}}:{ok:false,error:c.errors[0]?.code??"CHILD_CREATE_FAILED",data:{errors:c.errors}}}function se(t,e){return C(t,e,n=>{let o=n.finish();return o.ok?{ok:true}:{ok:false,error:o.error.code,data:o.error}})}function ae(t,e){if(!t.getSandbox(e))return E(e);let o=t.dispose(e);return o.ok?{ok:true}:{ok:false,error:o.error.code,data:o.error}}function de(t,e){return C(t,e,n=>{try{return {ok:!0,data:n.app.step()}}catch(o){return I("STEP_FAILED",o)}})}function ce(t,e){return ne(t,e,async n=>{try{return {ok:!0,data:await n.app.stepAsync()}}catch(o){return I("STEP_FAILED",o)}})}function le(t,e,n){return C(t,e,o=>{if(typeof n.effectId!="string")return {ok:false,error:"INVALID_ARGS",data:{message:"applyEffect requires 'effectId' field (string)"}};try{return o.app.applyEffect(n.effectId,n.data),{ok:!0}}catch(r){return I("APPLY_EFFECT_FAILED",r)}})}function ue(t,e){return C(t,e,n=>{let o=n.app.snapshot();return o.ok?{ok:true,data:o.value}:{ok:false,error:o.error.code,data:o.error}})}function fe(t,e,n){return C(t,e,o=>{if(!n.snapshot||typeof n.snapshot!="object")return {ok:false,error:"INVALID_ARGS",data:{message:"restore requires 'snapshot' field (SandboxSnapshot)"}};let r=o.app.restore(n.snapshot);return r.ok?{ok:true}:{ok:false,error:r.error.code,data:r.error}})}function pe(t,e){return oe(t,e,"processEvents",(n,o)=>{try{return {ok:!0,data:o.processEvents()}}catch(r){return I("PROCESS_EVENTS_FAILED",r)}})}function me(t,e){return re(t,e,"processEvents",async(n,o)=>{try{return {ok:!0,data:await o.processEventsAsync()}}catch(r){return I("PROCESS_EVENTS_FAILED",r)}})}var k=t=>(e,n,o,r)=>t(e,o.id),ye=t=>(e,n,o,r)=>t(e,o.id),Se=t=>(e,n,o,r)=>t(e,o.id,o),be={create:{sync:(t,e,n,o)=>ie(t,e,n,o)},finish:{sync:k(se)},dispose:{sync:k(ae)},step:{sync:k(de),async:ye(ce)},applyEffect:{sync:Se(le)},snapshot:{sync:k(ue)},restore:{sync:Se(fe)},processEvents:{sync:k(pe),async:ye(me)}},xe=t=>({ok:false,error:"INVALID_OP",data:{op:t}});function ge(t,e,n,o){let r=be[n.op];return r?r.sync(t,e,n,o):xe(n.op)}async function he(t,e,n,o){let r=be[n.op];return r?r.async?r.async(t,e,n,o):r.sync(t,e,n,o):xe(n.op)}var Le=new Set(["create","step","applyEffect","snapshot","restore","finish","dispose","processEvents"]);function U(t,e,n){let o=n?.async===true,r=c=>{if(typeof c.op!="string")return {valid:false,error:"sandbox directive requires 'op' field (string)"};if(!Le.has(c.op))return {valid:false,error:`unknown sandbox op: "${c.op}"`};if(typeof c.id!="string"||!c.id)return {valid:false,error:"sandbox directive requires 'id' field (string)"}},a=()=>({capabilities:["sandbox"],dependencies:[]});return o?{validate:r,async:true,async execute(c,i){return he(t,e,c,i)},analyze:a}:{validate:r,execute(c,i){return ge(t,e,c,i)},analyze:a}}function j(t,e,n){return {resource:"sandbox",id:t,code:e,message:n}}var Re=t=>t instanceof Error?t.message:String(t);function M(t,e,n){let o;try{o=t.createSandbox({id:n.id,mode:n.mode,capabilities:n.capabilities,parentId:e});}catch(r){return {success:false,errors:[j(n.id,"CHILD_CREATE_FAILED",Re(r))]}}if(n.definitions!==void 0){if(o.app.getPhysics().persist.definitions&&n.bootSourceKey===void 0)return t.dispose(n.id),{success:false,errors:[{resource:"physics",id:n.id,code:"DEFINITIONS_REQUIRE_DSL",message:`child sandbox "${n.id}": persist.definitions=true requires bootSourceKey (use boot:<DSL> on the directive instead of definitions:<JS>)`}]};let a=n.bootSourceKey!==void 0?{...n.bootOptions,bootSourceKey:n.bootSourceKey}:n.bootOptions,c;try{c=o.boot(n.definitions,a);}catch(i){return t.dispose(n.id),{success:false,errors:[j(n.id,"CHILD_BOOT_THREW",Re(i))]}}if(!c.success)return t.dispose(n.id),{success:false,errors:c.errors.length>0?c.errors:[j(n.id,"CHILD_BOOT_FAILED",`child sandbox "${n.id}" boot failed`)]}}return {success:true,errors:[]}}function Ne(t){let e=t?.environment,n=new Map,o=new Map,r=new Map,a;function c(i){let d=n.get(i);if(!d)return {ok:false,error:{code:"SANDBOX_NOT_FOUND",message:`Sandbox "${i}" not found in manager`,data:{id:i}}};let u=r.get(i);if(u)for(let f of [...u])c(f);let S=o.get(i);return S!==void 0&&(r.get(S)?.delete(i),o.delete(i)),n.delete(i),r.delete(i),d.dispose(),{ok:true}}return a={createSandbox(i){if(n.has(i.id))throw new Error(`SandboxManager: id "${i.id}" already registered`);let d;if(i.parentId!==void 0&&(d=n.get(i.parentId),!d))throw new Error(`SandboxManager: parent "${i.parentId}" not found`);let u=e??i.environment,S=u?.async===true,f=U(a,i.id,{async:S}),x={...u?.handlers,sandbox:f},s={...u,handlers:x},b=z({...i,environment:s,parent:d,lookup:p=>n.get(p),childFactory:p=>M(a,i.id,{id:p.id,mode:p.mode,capabilities:p.capabilities,definitions:p.boot,bootSourceKey:p.bootSourceKey})});if(n.set(i.id,b),i.parentId!==void 0){o.set(i.id,i.parentId);let p=r.get(i.parentId);p||(p=new Set,r.set(i.parentId,p)),p.add(i.id);}return b},getSandbox(i){return n.get(i)},getParent(i){let d=o.get(i);return d!==void 0?n.get(d):void 0},getChildren(i){let d=r.get(i);if(!d)return [];let u=[];for(let S of d){let f=n.get(S);f&&u.push(f);}return u},getAncestors(i){let d=[],u=o.get(i);for(;u!==void 0;){let S=n.get(u);S&&d.push(S),u=o.get(u);}return d},getDescendants(i){let d=[],u=[...r.get(i)??[]];for(;u.length>0;){let S=u.shift(),f=n.get(S);f&&d.push(f);let x=r.get(S);x&&u.push(...x);}return d},getDepth(i){let d=0,u=o.get(i);for(;u!==void 0;)d++,u=o.get(u);return d},has(i){return n.has(i)},ids(){return [...n.keys()]},get size(){return n.size},dispose(i){return c(i)},clear(){let i=[];for(let d of n.keys())o.has(d)||i.push(d);for(let d of i)c(d);},get compilation(){return e?.compilation}},a}exports.SandboxBootError=v;exports.buildAppPort=G;exports.buildSystemPort=X;exports.capabilitiesToPhysics=H;exports.capabilitiesToSystemConfig=V;exports.createAndBootChild=M;exports.createLifecycle=$;exports.createSandbox=z;exports.createSandboxDirectiveHandler=U;exports.createSandboxManager=Ne;exports.resolveCascade=F;exports.resolvePersistCascade=K;
|