UNPKG

@aptos-labs/ts-sdk

Version:
2 lines 1.11 kB
import{a as i}from"./chunk-3JPVQHOR.mjs";import{spawn as n}from"child_process";import l from"tree-kill";import{platform as p}from"os";var c=class{constructor(){this.MAXIMUM_WAIT_TIME_SEC=75;this.READINESS_ENDPOINT="http://127.0.0.1:8070/";this.process=null}stop(){this.process?.pid&&l(this.process.pid)}async run(){await this.checkIfProcessIsUp()||(this.start(),await this.waitUntilProcessIsUp())}start(){let t="npx",s=["aptos","node","run-local-testnet","--force-restart","--assume-yes","--with-indexer-api"],e=p(),r;e==="win32"?r=n(t,s,{shell:!0}):r=n(t,s),this.process=r,r.stderr?.on("data",o=>{let a=o.toString();console.log(a)}),r.stdout?.on("data",o=>{let a=o.toString();console.log(a)})}async waitUntilProcessIsUp(){let t=await this.checkIfProcessIsUp(),s=Date.now()/1e3,e=s;for(;!t&&s+this.MAXIMUM_WAIT_TIME_SEC>e;)await i(1e3),t=await this.checkIfProcessIsUp(),e=Date.now()/1e3;if(!t)throw new Error("Process failed to start");return!0}async checkIfProcessIsUp(){try{return(await fetch(this.READINESS_ENDPOINT)).status===200}catch{return!1}}};export{c as a}; //# sourceMappingURL=chunk-ISIUQQMV.mjs.map