UNPKG

eve

Version:

Filesystem-first framework for durable backend AI agents that run anywhere.

3 lines 557 B
function parseNdjsonStream(e,t=e=>e){let n=new TextDecoder,r=``,i,a=!1;return new ReadableStream({async start(o){i=e().getReader();try{for(;;){let{value:e,done:a}=await i.read();if(a)break;r+=n.decode(e,{stream:!0});for(let e=r.indexOf(` `);e!==-1;e=r.indexOf(` `)){let n=r.slice(0,e).trim();r=r.slice(e+1),n.length>0&&o.enqueue(t(JSON.parse(n)))}}if(a)return;r+=n.decode();let e=r.trim();e.length>0&&o.enqueue(t(JSON.parse(e))),o.close()}catch(e){a||o.error(e)}finally{i.releaseLock()}},async cancel(e){a=!0,await i?.cancel(e)}})}export{parseNdjsonStream};