eve
Version:
Filesystem-first framework for durable backend AI agents that run anywhere.
1 lines • 661 B
JavaScript
import{detectProjectIdentity}from"#setup/project-resolution.js";function createVercelStatusTracker(t){let n=t.detectIdentity??detectProjectIdentity,r,i=!1,a=0,o=!1,snapshot=()=>{let e={pendingDeploy:i};return r!==void 0&&(e.identity=r),e},emit=()=>{o||t.onChange(snapshot())},refreshIdentity=()=>{a+=1;let e=a;(async()=>{let i;try{i=await n(t.appRoot)}catch{return}o||e!==a||(r=i,emit())})()};return{refreshIdentity,applyEffect(e){switch(e.kind){case`channels-added`:i=!0,emit();return;case`deployed`:i=!1,emit(),refreshIdentity();return;case`refresh-identity`:refreshIdentity();return}},current:snapshot,dispose(){o=!0,a+=1}}}export{createVercelStatusTracker};