brass-runtime 1.12.0 → 1.13.2

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.js CHANGED
@@ -1 +1 @@
1
- 'use strict';var chunk5PIZGM6Q_js=require('./chunk-5PIZGM6Q.js');function ze(){let t=false,e=new Set;return {isCancelled:()=>t,onCancel:r=>{if(t){try{r();}catch{}return ()=>{}}return e.add(r),()=>{e.delete(r);}},cancel:()=>{t||(t=true,e.forEach(r=>r()),e.clear());}}}function De(t,e){return t.onCancel(()=>e.abort())}var v=class{head=null;tail=null;len=0;get length(){return this.len}isEmpty(){return this.len===0}push(e){let n={value:e,next:null,prev:this.tail,removed:false};return this.tail?this.tail.next=n:this.head=n,this.tail=n,this.len++,n}shift(){let e=this.head;if(e)return this.unlink(e),e.value}remove(e){e.removed||this.unlink(e);}unlink(e){e.removed=true;let{prev:n,next:r}=e;n?n.next=r:this.head=r,r?r.prev=n:this.tail=n,e.next=null,e.prev=null,this.len--;}};function Z(t,e="backpressure"){return chunk5PIZGM6Q_js.h(()=>I(t,e))}function I(t,e){let n=new chunk5PIZGM6Q_js.F(t),r=false,s={_tag:"QueueClosed"},o=new v,a=new v,l=()=>{for(;a.length>0&&n.length>0;){let u=a.shift(),f=n.shift();u({_tag:"Success",value:f});}for(;o.length>0&&n.length<t&&a.length===0;){let u=o.shift();n.push(u.a),u.cb(true);}for(;a.length>0&&o.length>0;){let u=a.shift(),f=o.shift();f.cb(true),u({_tag:"Success",value:f.a});}};return {size:()=>n.length,shutdown:()=>{if(!r){for(r=true;a.length>0;)a.shift()({_tag:"Failure",cause:{_tag:"Fail",error:s}});for(;o.length>0;)o.shift().cb(false);n.clear();}},offer:u=>chunk5PIZGM6Q_js.j((f,i)=>{if(r){i({_tag:"Success",value:false});return}if(a.length>0){a.shift()({_tag:"Success",value:u}),i({_tag:"Success",value:true});return}if(n.length<t){n.push(u),i({_tag:"Success",value:true}),l();return}if(e==="dropping"){i({_tag:"Success",value:false});return}if(e==="sliding"){n.shift(),n.push(u),i({_tag:"Success",value:true}),l();return}let m=o.push({a:u,cb:A=>i({_tag:"Success",value:A})});return ()=>{o.remove(m);}}),take:()=>chunk5PIZGM6Q_js.j((u,f)=>{if(n.length>0){let A=n.shift();f({_tag:"Success",value:A}),l();return}if(o.length>0){let A=o.shift();A.cb(true),f({_tag:"Success",value:A.a});return}if(r){f({_tag:"Failure",cause:{_tag:"Fail",error:s}});return}let i=A=>f(A),m=a.push(i);return ()=>{a.remove(m);}})}}function M(t,e,n="backpressure"){let r=false,s=null,o=null,a=t,l=()=>chunk5PIZGM6Q_js.b(chunk5PIZGM6Q_js.ha(a),i=>chunk5PIZGM6Q_js.f(i._tag==="None"?{_tag:"End"}:{_tag:"Fail",error:i.value}),([i,m])=>chunk5PIZGM6Q_js.h(()=>(a=m,{_tag:"Elem",value:i}))),p=i=>chunk5PIZGM6Q_js.l(Z(e,n),m=>{s=m;let S=()=>chunk5PIZGM6Q_js.l(l(),A=>chunk5PIZGM6Q_js.l(s.offer(A),()=>A._tag==="End"||A._tag==="Fail"?chunk5PIZGM6Q_js.f(void 0):S()));return o=chunk5PIZGM6Q_js.N(S(),i),r=true,chunk5PIZGM6Q_js.f(void 0)}),u={_tag:"Async",register:(i,m)=>{(()=>{if(!r){chunk5PIZGM6Q_js.K().fork(p(i)).join(()=>{f(i,m);});return}f(i,m);})();}};function f(i,m){let S=s.take();chunk5PIZGM6Q_js.K().fork(S).join(A=>{if(A._tag!=="Success")return;let w=A.value;switch(w._tag){case "Elem":m({_tag:"Success",value:[w.value,chunk5PIZGM6Q_js._(u)]});return;case "End":o?.interrupt?.(),m({_tag:"Failure",cause:{_tag:"Fail",error:chunk5PIZGM6Q_js.r}});return;case "Fail":o?.interrupt?.(),m({_tag:"Failure",cause:{_tag:"Fail",error:chunk5PIZGM6Q_js.s(w.error)}});return}});}return chunk5PIZGM6Q_js._(u)}var N=t=>t==="BackPressure"?"backpressure":t==="Dropping"?"dropping":"sliding";function z(t,e="BackPressure"){let n=new Set,r=false,s=p=>{if(r)return chunk5PIZGM6Q_js.f(false);let u=Array.from(n),f=chunk5PIZGM6Q_js.f(true);return u.forEach(i=>{f=chunk5PIZGM6Q_js.l(f,m=>chunk5PIZGM6Q_js.l(i.offer(p),S=>chunk5PIZGM6Q_js.f(m&&S)));}),f};return {publish:s,publishAll:p=>{let u=chunk5PIZGM6Q_js.f(true),f=p[Symbol.iterator]();for(;;){let i=f.next();if(i.done)break;let m=i.value;u=chunk5PIZGM6Q_js.l(u,S=>chunk5PIZGM6Q_js.l(s(m),A=>chunk5PIZGM6Q_js.f(S&&A)));}return u},subscribe:()=>r?chunk5PIZGM6Q_js.i(()=>{throw {_tag:"HubClosed"}}):chunk5PIZGM6Q_js.l(Z(t,N(e)),p=>chunk5PIZGM6Q_js.h(()=>(n.add(p),{...p,unsubscribe:()=>{n.has(p)&&(n.delete(p),p.shutdown());}}))),shutdown:()=>chunk5PIZGM6Q_js.h(()=>{r||(r=true,Array.from(n).forEach(p=>p.shutdown()),n.clear());})}}var dn=z;function Rn(t,e){return chunk5PIZGM6Q_js.ma(t,n=>chunk5PIZGM6Q_js.l(e.publish(n),()=>chunk5PIZGM6Q_js.f(void 0)))}function Sn(t){return chunk5PIZGM6Q_js.aa(chunk5PIZGM6Q_js.l(t.subscribe(),e=>{let n=chunk5PIZGM6Q_js._(chunk5PIZGM6Q_js.l(chunk5PIZGM6Q_js.d(e.take(),r=>chunk5PIZGM6Q_js.r),r=>chunk5PIZGM6Q_js.f([r,n])));return chunk5PIZGM6Q_js.f({stream:n,release:r=>chunk5PIZGM6Q_js.h(()=>e.unsubscribe())})}))}function Cn(t,e){return e(t)}function D(t,e){return(n=>e(t(n)))}function On(t,e){return D(e,t)}function Pn(){return(t=>t)}function Bn(t){return(e=>{let n=r=>chunk5PIZGM6Q_js._(chunk5PIZGM6Q_js.b(chunk5PIZGM6Q_js.ha(r),s=>chunk5PIZGM6Q_js.g(s),([s,o])=>chunk5PIZGM6Q_js.f([t(s),n(o)])));return n(e)})}function Tn(t){return(e=>{let n=s=>chunk5PIZGM6Q_js.b(chunk5PIZGM6Q_js.ha(s),o=>chunk5PIZGM6Q_js.g(o),([o,a])=>t(o)?chunk5PIZGM6Q_js.f([o,r(a)]):n(a)),r=s=>chunk5PIZGM6Q_js._(n(s));return r(e)})}function Fn(t){return(e=>{let n=s=>chunk5PIZGM6Q_js.b(chunk5PIZGM6Q_js.ha(s),o=>chunk5PIZGM6Q_js.g(o),([o,a])=>{let l=t(o);return l._tag==="Some"?chunk5PIZGM6Q_js.f([l.value,r(a)]):n(a)}),r=s=>chunk5PIZGM6Q_js._(n(s));return r(e)})}function Hn(t){let e=Math.max(0,t|0);return(n=>{let r=(s,o)=>o<=0?chunk5PIZGM6Q_js.ca():chunk5PIZGM6Q_js._(chunk5PIZGM6Q_js.b(chunk5PIZGM6Q_js.ha(s),a=>chunk5PIZGM6Q_js.g(a),([a,l])=>chunk5PIZGM6Q_js.f([a,r(l,o-1)])));return r(n,e)})}function Qn(t){let e=Math.max(0,t|0);return(n=>{let r=(s,o)=>o<=0?s:chunk5PIZGM6Q_js._(chunk5PIZGM6Q_js.b(chunk5PIZGM6Q_js.ha(s),a=>chunk5PIZGM6Q_js.g(a),([a,l])=>chunk5PIZGM6Q_js.ha(r(l,o-1))));return r(n,e)})}function W(t){return(e=>{let n=s=>chunk5PIZGM6Q_js.d(s,o=>chunk5PIZGM6Q_js.s(o)),r=s=>chunk5PIZGM6Q_js._(chunk5PIZGM6Q_js.b(chunk5PIZGM6Q_js.d(chunk5PIZGM6Q_js.ha(s),o=>chunk5PIZGM6Q_js.Z(o)),o=>chunk5PIZGM6Q_js.g(o),([o,a])=>chunk5PIZGM6Q_js.b(n(t(o)),l=>chunk5PIZGM6Q_js.g(l),l=>chunk5PIZGM6Q_js.f([l,r(a)]))));return r(e)})}function Mn(t){return W(e=>chunk5PIZGM6Q_js.l(t(e),()=>chunk5PIZGM6Q_js.f(e)))}function In(t,e="backpressure"){return(n=>M(n,t,e))}function Nn(t){let e=Math.max(1,t|0);return(n=>{let r=(o,a,l)=>a<=0?chunk5PIZGM6Q_js.f({chunk:l,rest:o}):chunk5PIZGM6Q_js.b(chunk5PIZGM6Q_js.ha(o),p=>p._tag==="None"?chunk5PIZGM6Q_js.f({chunk:l,rest:chunk5PIZGM6Q_js.ca()}):chunk5PIZGM6Q_js.g(p),([p,u])=>r(u,a-1,[...l,p])),s=o=>chunk5PIZGM6Q_js._(chunk5PIZGM6Q_js.b(chunk5PIZGM6Q_js.ha(o),a=>chunk5PIZGM6Q_js.g(a),([a,l])=>chunk5PIZGM6Q_js.l(r(l,e-1,[a]),({chunk:p,rest:u})=>chunk5PIZGM6Q_js.f([p,s(u)]))));return s(n)})}Object.defineProperty(exports,"Async",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.a}});Object.defineProperty(exports,"Cause",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.t}});Object.defineProperty(exports,"Exit",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.u}});Object.defineProperty(exports,"PushStatus",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.E}});Object.defineProperty(exports,"RingBuffer",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.F}});Object.defineProperty(exports,"Runtime",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.M}});Object.defineProperty(exports,"RuntimeFiber",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.I}});Object.defineProperty(exports,"Scheduler",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.G}});Object.defineProperty(exports,"Scope",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.S}});Object.defineProperty(exports,"acquireRelease",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.m}});Object.defineProperty(exports,"assertNever",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.ia}});Object.defineProperty(exports,"async",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.j}});Object.defineProperty(exports,"asyncCatchAll",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.c}});Object.defineProperty(exports,"asyncFail",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.g}});Object.defineProperty(exports,"asyncFlatMap",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.l}});Object.defineProperty(exports,"asyncFold",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.b}});Object.defineProperty(exports,"asyncInterruptible",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.n}});Object.defineProperty(exports,"asyncMap",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.k}});Object.defineProperty(exports,"asyncMapError",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.d}});Object.defineProperty(exports,"asyncSucceed",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.f}});Object.defineProperty(exports,"asyncSync",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.h}});Object.defineProperty(exports,"asyncTotal",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.i}});Object.defineProperty(exports,"catchAll",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.B}});Object.defineProperty(exports,"collectAllPar",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.X}});Object.defineProperty(exports,"collectStream",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.oa}});Object.defineProperty(exports,"concatStream",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.ea}});Object.defineProperty(exports,"emitStream",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.da}});Object.defineProperty(exports,"emptyStream",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.ca}});Object.defineProperty(exports,"end",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.D}});Object.defineProperty(exports,"fail",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.w}});Object.defineProperty(exports,"flatMap",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.z}});Object.defineProperty(exports,"flattenStream",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.fa}});Object.defineProperty(exports,"foreachStream",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.ma}});Object.defineProperty(exports,"fork",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.N}});Object.defineProperty(exports,"fromArray",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.na}});Object.defineProperty(exports,"fromPromiseAbortable",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.Q}});Object.defineProperty(exports,"fromPull",{enumerable:true,get:function(){return chunk5PIZGM6Q_js._}});Object.defineProperty(exports,"getCurrentFiber",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.J}});Object.defineProperty(exports,"globalScheduler",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.H}});Object.defineProperty(exports,"managedStream",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.aa}});Object.defineProperty(exports,"map",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.y}});Object.defineProperty(exports,"mapAsync",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.p}});Object.defineProperty(exports,"mapError",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.A}});Object.defineProperty(exports,"mapStream",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.ja}});Object.defineProperty(exports,"mapTryAsync",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.q}});Object.defineProperty(exports,"merge",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.ga}});Object.defineProperty(exports,"mergeStream",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.ba}});Object.defineProperty(exports,"none",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.r}});Object.defineProperty(exports,"orElseOptional",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.C}});Object.defineProperty(exports,"race",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.V}});Object.defineProperty(exports,"raceWith",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.Y}});Object.defineProperty(exports,"rangeStream",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.ka}});Object.defineProperty(exports,"some",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.s}});Object.defineProperty(exports,"streamFromReadableStream",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.pa}});Object.defineProperty(exports,"succeed",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.v}});Object.defineProperty(exports,"sync",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.x}});Object.defineProperty(exports,"toPromise",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.P}});Object.defineProperty(exports,"uncons",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.ha}});Object.defineProperty(exports,"unit",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.e}});Object.defineProperty(exports,"unsafeGetCurrentRuntime",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.K}});Object.defineProperty(exports,"unsafeRunAsync",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.O}});Object.defineProperty(exports,"unsafeRunFoldWithEnv",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.R}});Object.defineProperty(exports,"unwrapScoped",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.$}});Object.defineProperty(exports,"widenOpt",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.Z}});Object.defineProperty(exports,"withAsyncPromise",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.o}});Object.defineProperty(exports,"withCurrentFiber",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.L}});Object.defineProperty(exports,"withScope",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.U}});Object.defineProperty(exports,"withScopeAsync",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.T}});Object.defineProperty(exports,"zip",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.la}});Object.defineProperty(exports,"zipPar",{enumerable:true,get:function(){return chunk5PIZGM6Q_js.W}});exports.LinkedQueue=v;exports.andThen=D;exports.bounded=Z;exports.broadcast=dn;exports.broadcastToHub=Rn;exports.buffer=M;exports.bufferP=In;exports.compose=On;exports.dropP=Qn;exports.filterMapP=Fn;exports.filterP=Tn;exports.fromHub=Sn;exports.groupedP=Nn;exports.identity=Pn;exports.linkAbortController=De;exports.makeCancelToken=ze;exports.makeHub=z;exports.mapEffectP=W;exports.mapP=Bn;exports.takeP=Hn;exports.tapEffectP=Mn;exports.via=Cn;
1
+ import {b,p,d,k,a,f as f$1}from'./chunk-JAQUSSUV.js';export{l as assertNever,r as collectStream,h as concatStream,g as emitStream,f as emptyStream,i as flattenStream,p as foreachStream,q as fromArray,b as fromPull,d as managedStream,m as mapStream,j as merge,e as mergeStream,n as rangeStream,s as streamFromReadableStream,k as uncons,c as unwrapScoped,a as widenOpt,o as zip}from'./chunk-JAQUSSUV.js';import {h,H,j,i,l,f,d as d$1,r,O,s,b as b$1,g,G as G$1,aa}from'./chunk-LTHJNW5A.js';export{a as Async,t as Cause,Q as DefaultHostExecutor,U as EngineFiberHandle,u as Exit,S as HostRegistry,R as JsFiberEngine,_ as NoopHooks,T as ProgramBuilder,E as PushStatus,V as ReferenceWasmBridge,F as RingBuffer,$ as Runtime,M as RuntimeFiber,I as Scheduler,fa as Scope,Y as WasmFiberEngine,X as WasmFiberRegistryBridge,W as WasmPackFiberBridge,m as acquireRelease,j as async,c as asyncCatchAll,g as asyncFail,l as asyncFlatMap,b as asyncFold,n as asyncInterruptible,k as asyncMap,d as asyncMapError,f as asyncSucceed,h as asyncSync,i as asyncTotal,B as catchAll,ka as collectAllPar,D as end,w as fail,z as flatMap,aa as fork,da as fromPromiseAbortable,L as getBenchmarkBudget,N as getCurrentFiber,J as globalScheduler,H as makeBoundedRingBuffer,y as map,p as mapAsync,A as mapError,q as mapTryAsync,r as none,C as orElseOptional,ia as race,la as raceWith,Z as runtimeCapabilities,K as setBenchmarkBudget,s as some,v as succeed,x as sync,ca as toPromise,e as unit,O as unsafeGetCurrentRuntime,ba as unsafeRunAsync,ea as unsafeRunFoldWithEnv,o as withAsyncPromise,P as withCurrentFiber,ha as withScope,ga as withScopeAsync,ja as zipPar}from'./chunk-LTHJNW5A.js';function En(){let n=false,e=new Set;return {isCancelled:()=>n,onCancel:r=>{if(n){try{r();}catch{}return ()=>{}}return e.add(r),()=>{e.delete(r);}},cancel:()=>{n||(n=true,e.forEach(r=>r()),e.clear());}}}function An(n,e){return n.onCancel(()=>e.abort())}var C=class{head=null;tail=null;len=0;get length(){return this.len}isEmpty(){return this.len===0}push(e){let t={value:e,next:null,prev:this.tail,removed:false};return this.tail?this.tail.next=t:this.head=t,this.tail=t,this.len++,t}shift(){let e=this.head;if(e)return this.unlink(e),e.value}remove(e){e.removed||this.unlink(e);}unlink(e){e.removed=true;let{prev:t,next:r}=e;t?t.next=r:this.head=r,r?r.prev=t:this.tail=t,e.next=null,e.prev=null,this.len--;}};function B(n,e="backpressure",t={}){return h(()=>X(n,e,t))}function X(n,e,t){let r=H(n,n,t),i=false,a={_tag:"QueueClosed"},o=new C,s=new C;return {size:()=>r.length,shutdown:()=>{if(!i){for(i=true;s.length>0;)s.shift()({_tag:"Failure",cause:{_tag:"Fail",error:a}});for(;o.length>0;)o.shift().cb(false);r.clear();}},offer:l=>j((f,y)=>{if(i){y({_tag:"Success",value:false});return}if(s.length>0){s.shift()({_tag:"Success",value:l}),y({_tag:"Success",value:true});return}if(r.length<n){r.push(l),y({_tag:"Success",value:true});return}if(e==="dropping"){y({_tag:"Success",value:false});return}if(e==="sliding"){r.shift(),r.push(l),y({_tag:"Success",value:true});return}let R=o.push({a:l,cb:E=>y({_tag:"Success",value:E})});return ()=>{o.remove(R);}}),take:()=>j((l,f)=>{if(r.length>0){let c=r.shift();if(f({_tag:"Success",value:c}),o.length>0&&r.length<n){let E=o.shift();r.push(E.a),E.cb(true);}return}if(o.length>0){let c=o.shift();c.cb(true),f({_tag:"Success",value:c.a});return}if(i){f({_tag:"Failure",cause:{_tag:"Fail",error:a}});return}let y=s.push(f);return ()=>{s.remove(y);}})}}var Y={_tag:"End"};function q(n,e,t="backpressure"){let r$1=false,i=null,a=null,o=n,s$1=c=>f(c._tag==="None"?Y:{_tag:"Fail",error:c.value}),u=([c,E])=>h(()=>(o=E,{_tag:"Elem",value:c})),l$1=()=>b$1(k(o),s$1,u),f$1=c=>l(B(e,t),E=>{i=E;let x,Z=()=>x._tag!=="Elem"?f(void 0):Q(),v=z=>(x=z,l(i.offer(z),Z)),Q=()=>l(l$1(),v);return a=aa(Q(),c),f(void 0)}),y={_tag:"Async",register:(c,E)=>{(()=>{if(!r$1){r$1=true,O().fork(f$1(c)).join(()=>{R(c,E);});return}R(c,E);})();}};function R(c,E){let x=i.take();O().fork(x).join(Z=>{if(Z._tag!=="Success")return;let v=Z.value;switch(v._tag){case "Elem":E({_tag:"Success",value:[v.value,b(y)]});return;case "End":a?.interrupt?.(),E({_tag:"Failure",cause:{_tag:"Fail",error:r}});return;case "Fail":a?.interrupt?.(),E({_tag:"Failure",cause:{_tag:"Fail",error:s(v.error)}});return}});}return b(y)}var $=n=>n==="BackPressure"?"backpressure":n==="Dropping"?"dropping":"sliding";function ee(n,e="BackPressure"){let t=new Set,r=false,i$1=u=>{if(r)return f(false);let l$1=t.size;if(l$1===0)return f(true);if(l$1===1)return t.values().next().value.offer(u);let f$1=f(true);for(let y of t)f$1=l(f$1,R=>l(y.offer(u),c=>f(R&&c)));return f$1};return {publish:i$1,publishAll:u=>{let l$1=f(true),f$1=u[Symbol.iterator]();for(;;){let y=f$1.next();if(y.done)break;let R=y.value;l$1=l(l$1,c=>l(i$1(R),E=>f(c&&E)));}return l$1},subscribe:()=>r?i(()=>{throw {_tag:"HubClosed"}}):l(B(n,$(e)),u=>h(()=>(t.add(u),{...u,unsubscribe:()=>{t.has(u)&&(t.delete(u),u.shutdown());}}))),shutdown:()=>h(()=>{if(!r){r=true;for(let u of t)u.shutdown();t.clear();}})}}var $n=ee;function et(n,e){return p(n,t=>l(e.publish(t),()=>f(void 0)))}function nt(n){return d(l(n.subscribe(),e=>{let t=b(l(d$1(e.take(),r$1=>r),r=>f([r,t])));return f({stream:t,release:r=>h(()=>e.unsubscribe())})}))}var _;function G(){return _!==void 0||(_=G$1()?.BrassWasmChunkBuffer??null),_}var P=class{constructor(e,t=false){this.maxChunkSize=e;this.fallbackUsed=t;}maxChunkSize;fallbackUsed;engine="js";values=[];emittedChunks=0;emittedItems=0;flushes=0;get length(){return this.values.length}push(e){return this.values.length>=this.maxChunkSize?false:(this.values.push(e),true)}isFull(){return this.values.length>=this.maxChunkSize}isEmpty(){return this.values.length===0}takeChunk(){this.flushes+=1;let e=this.values;return this.values=[],e.length>0&&(this.emittedChunks+=1,this.emittedItems+=e.length),e}clear(){this.values=[];}stats(){return {engine:"js",fallbackUsed:this.fallbackUsed,data:{len:this.values.length,maxChunkSize:this.maxChunkSize,emittedChunks:this.emittedChunks,emittedItems:this.emittedItems,flushes:this.flushes}}}},T=class{engine="wasm";fallbackUsed=false;inner;constructor(e){let t=G();if(!t)throw new Error("brass-runtime wasm chunk buffer is not available. Run npm run build:wasm first.");this.inner=new t(e);}get length(){return this.inner.len()}get maxChunkSize(){return this.inner.max_chunk_size()}push(e){return this.inner.push(e)}isFull(){return this.inner.is_full()}isEmpty(){return this.inner.is_empty()}takeChunk(){return Array.from(this.inner.take_chunk())}clear(){this.inner.clear();}stats(){return {engine:"wasm",fallbackUsed:false,data:JSON.parse(this.inner.stats_json())}}};function ne(n,e={}){let t=Math.max(1,n|0),r=e.engine??"auto";return r==="js"?new P(t,false):r==="wasm"?new T(t):G()?new T(t):new P(t,true)}function F(n,e,t={}){let r$1=Math.max(1,e|0),i=o=>b(a(o,ne(r$1,t))),a=(o,s)=>b$1(k(o),u=>u._tag==="None"&&!s.isEmpty()?f([s.takeChunk(),b(g(r))]):g(u),([u,l])=>(s.push(u),s.isFull()?f([s.takeChunk(),i(l)]):a(l,s)));return i(n)}function pt(n,e,t,r={}){let i=(a,o)=>{if(a.length>0){let[s,...u]=a;return b(f([s,i(u,o)]))}return b(b$1(k(o),s=>g(s),([s,u])=>{let l=t(s);return k(i(l,u))}))};return i([],F(n,e,r))}function L(n,e,t={}){return(r=>{let i=F(r,n,t),a$1=(o,s)=>{if(o.length>0){let[u,...l]=o;return b(f([u,a$1(l,s)]))}return b(b$1(d$1(k(s),u=>a(u)),u=>g(u),([u,l])=>b$1(d$1(e(u),f=>({_tag:"Some",value:f})),f=>g(f),f=>k(a$1(f,l)))))};return a$1([],i)})}function kt(n,e){return e(n)}function te(n,e){return(t=>e(n(t)))}function bt(n,e){return te(e,n)}function xt(){return(n=>n)}function vt(n){return(e=>{let t=a=>g(a),r=([a,o])=>f([n(a),i(o)]),i=a=>b(b$1(k(a),t,r));return i(e)})}function Ct(n){return(e=>{let t=o=>g(o),r=([o,s])=>n(o)?f([o,a(s)]):i(s),i=o=>b$1(k(o),t,r),a=o=>b(i(o));return a(e)})}function Zt(n){return(e=>{let t=a=>g(a),r=a=>b$1(k(a),t,([o,s])=>{let u=n(o);return u._tag==="Some"?f([u.value,i(s)]):r(s)}),i=a=>b(r(a));return i(e)})}function wt(n){let e=Math.max(0,n|0);return(t=>{let r=(i,a)=>a<=0?f$1():b(b$1(k(i),o=>g(o),([o,s])=>f([o,r(s,a-1)])));return r(t,e)})}function Ot(n){let e=Math.max(0,n|0);return(t=>{let r=(i,a)=>a<=0?i:b(b$1(k(i),o=>g(o),([o,s])=>k(r(s,a-1))));return r(t,e)})}function re(n){return(e=>{let t=i=>d$1(i,a=>s(a)),r=i=>b(b$1(d$1(k(i),a$1=>a(a$1)),a=>g(a),([a,o])=>b$1(t(n(a)),s=>g(s),s=>f([s,r(o)]))));return r(e)})}function Bt(n){return re(e=>l(n(e),()=>f(e)))}function _t(n,e={}){return(t=>F(t,n,e))}function Pt(n,e,t={}){return L(n,e,t)}function Tt(n,e="backpressure"){return(t=>q(t,n,e))}function Ft(n){let e=Math.max(1,n|0);return(t=>{let r=(a,o,s)=>o<=0?f({chunk:s,rest:a}):b$1(k(a),u=>u._tag==="None"?f({chunk:s,rest:f$1()}):g(u),([u,l])=>r(l,o-1,[...s,u])),i=a=>b(b$1(k(a),o=>g(o),([o,s])=>l(r(s,e-1,[o]),({chunk:u,rest:l})=>f([u,i(l)]))));return i(t)})}function It(n,e,t=false){return {engine:n,data:e,fallbackUsed:t}}function Ht(n,e,t){return {requested:n,engine:e,data:t,fallbackUsed:n==="auto"&&e!=="wasm"}}export{te as andThen,B as bounded,$n as broadcast,et as broadcastToHub,q as buffer,Tt as bufferP,F as chunks,_t as chunksP,bt as compose,Ot as dropP,It as engineStats,Zt as filterMapP,Ct as filterP,nt as fromHub,Ft as groupedP,xt as identity,An as linkAbortController,En as makeCancelToken,ee as makeHub,ne as makeStreamChunker,pt as mapChunks,L as mapChunksEffect,Pt as mapChunksEffectP,re as mapEffectP,vt as mapP,Ht as selectedEngineStats,wt as takeP,Bt as tapEffectP,kt as via};
@@ -0,0 +1,66 @@
1
+ import { Z as ZIO, O as Option, E as Exit, A as Async } from './effect-ISvXPLgc.js';
2
+
3
+ type Empty<R, E, A> = {
4
+ readonly _tag: "Empty";
5
+ };
6
+ type Emit<R, E, A> = {
7
+ readonly _tag: "Emit";
8
+ readonly value: ZIO<R, E, A>;
9
+ };
10
+ type Concat<R, E, A> = {
11
+ readonly _tag: "Concat";
12
+ readonly left: ZStream<R, E, A>;
13
+ readonly right: ZStream<R, E, A>;
14
+ };
15
+ type Flatten<R, E, A> = {
16
+ readonly _tag: "Flatten";
17
+ readonly stream: ZStream<R, E, ZStream<R, E, A>>;
18
+ };
19
+ type FromPull<R, E, A> = {
20
+ readonly _tag: "FromPull";
21
+ readonly pull: ZIO<R, Option<E>, [A, ZStream<R, E, A>]>;
22
+ };
23
+ type Merge<R, E, A> = {
24
+ readonly _tag: "Merge";
25
+ readonly left: ZStream<R, E, A>;
26
+ readonly right: ZStream<R, E, A>;
27
+ readonly flip: boolean;
28
+ };
29
+ type Scoped<R, E, A> = {
30
+ readonly _tag: "Scoped";
31
+ readonly acquire: ZIO<R, E, ZStream<R, E, A>>;
32
+ readonly release: (exit: Exit<any, any>) => Async<R, any, void>;
33
+ };
34
+ type Managed<R, E, A> = {
35
+ readonly _tag: "Managed";
36
+ readonly acquire: ZIO<R, E, {
37
+ stream: ZStream<R, E, A>;
38
+ release: (exit: Exit<any, any>) => Async<R, any, void>;
39
+ }>;
40
+ };
41
+ type ZStream<R, E, A> = Empty<R, E, A> | Emit<R, E, A> | Concat<R, E, A> | FromPull<R, E, A> | Flatten<R, E, A> | Merge<R, E, A> | Scoped<R, E, A> | Managed<R, E, A>;
42
+ type Normalize<E> = (u: unknown) => E;
43
+ declare const widenOpt: <E1, E2>(opt: Option<E1>) => Option<E1 | E2>;
44
+ declare const fromPull: <R, E, A>(pull: ZIO<R, Option<E>, [A, ZStream<R, E, A>]>) => ZStream<R, E, A>;
45
+ declare const unwrapScoped: <R, E, A>(acquire: ZIO<R, E, ZStream<R, E, A>>, release: (exit: Exit<any, any>) => Async<R, any, void>) => ZStream<R, E, A>;
46
+ declare const managedStream: <R, E, A>(acquire: ZIO<R, E, {
47
+ stream: ZStream<R, E, A>;
48
+ release: (exit: Exit<any, any>) => Async<R, any, void>;
49
+ }>) => ZStream<R, E, A>;
50
+ declare const mergeStream: <R, E, A>(left: ZStream<R, E, A>, right: ZStream<R, E, A>, flip?: boolean) => ZStream<R, E, A>;
51
+ declare const emptyStream: <R, E, A>() => ZStream<R, E, A>;
52
+ declare const emitStream: <R, E, A>(value: ZIO<R, E, A>) => ZStream<R, E, A>;
53
+ declare const concatStream: <R, E, A>(left: ZStream<R, E, A>, right: ZStream<R, E, A>) => ZStream<R, E, A>;
54
+ declare const flattenStream: <R, E, A>(stream: ZStream<R, E, ZStream<R, E, A>>) => ZStream<R, E, A>;
55
+ declare function merge<R, E, A>(left: ZStream<R, E, A>, right: ZStream<R, E, A>): ZStream<R, E, A>;
56
+ declare function uncons<R, E, A>(self: ZStream<R, E, A>): ZIO<R, Option<E>, [A, ZStream<R, E, A>]>;
57
+ declare function assertNever(x: never, msg?: string): never;
58
+ declare function mapStream<R, E, A, B>(self: ZStream<R, E, A>, f: (a: A) => B): ZStream<R, E, B>;
59
+ declare function rangeStream(start: number, end: number): ZStream<unknown, never, number>;
60
+ declare function zip<R, E1, A, E2, B>(left: ZStream<R, E1, A>, right: ZStream<R, E2, B>): ZStream<R, E1 | E2, [A, B]>;
61
+ declare function foreachStream<R, E, A, R2, E2>(stream: ZStream<R, E, A>, f: (a: A) => Async<R2, E2, void>): Async<R & R2, E | E2, void>;
62
+ declare function fromArray<A>(values: readonly A[]): ZStream<unknown, never, A>;
63
+ declare function collectStream<R, E, A>(stream: ZStream<R, E, A>): ZIO<R, E, A[]>;
64
+ declare function streamFromReadableStream<E>(body: ReadableStream<Uint8Array> | null | undefined, normalizeError: Normalize<E>): ZStream<unknown, E, Uint8Array>;
65
+
66
+ export { type Concat as C, type Emit as E, type Flatten as F, type Managed as M, type Normalize as N, type Scoped as S, type ZStream as Z, type Empty as a, type FromPull as b, type Merge as c, assertNever as d, collectStream as e, concatStream as f, emitStream as g, emptyStream as h, flattenStream as i, foreachStream as j, fromArray as k, fromPull as l, managedStream as m, mapStream as n, merge as o, mergeStream as p, unwrapScoped as q, rangeStream as r, streamFromReadableStream as s, uncons as u, widenOpt as w, zip as z };
@@ -0,0 +1,66 @@
1
+ import { Z as ZIO, O as Option, E as Exit, A as Async } from './effect-ISvXPLgc.mjs';
2
+
3
+ type Empty<R, E, A> = {
4
+ readonly _tag: "Empty";
5
+ };
6
+ type Emit<R, E, A> = {
7
+ readonly _tag: "Emit";
8
+ readonly value: ZIO<R, E, A>;
9
+ };
10
+ type Concat<R, E, A> = {
11
+ readonly _tag: "Concat";
12
+ readonly left: ZStream<R, E, A>;
13
+ readonly right: ZStream<R, E, A>;
14
+ };
15
+ type Flatten<R, E, A> = {
16
+ readonly _tag: "Flatten";
17
+ readonly stream: ZStream<R, E, ZStream<R, E, A>>;
18
+ };
19
+ type FromPull<R, E, A> = {
20
+ readonly _tag: "FromPull";
21
+ readonly pull: ZIO<R, Option<E>, [A, ZStream<R, E, A>]>;
22
+ };
23
+ type Merge<R, E, A> = {
24
+ readonly _tag: "Merge";
25
+ readonly left: ZStream<R, E, A>;
26
+ readonly right: ZStream<R, E, A>;
27
+ readonly flip: boolean;
28
+ };
29
+ type Scoped<R, E, A> = {
30
+ readonly _tag: "Scoped";
31
+ readonly acquire: ZIO<R, E, ZStream<R, E, A>>;
32
+ readonly release: (exit: Exit<any, any>) => Async<R, any, void>;
33
+ };
34
+ type Managed<R, E, A> = {
35
+ readonly _tag: "Managed";
36
+ readonly acquire: ZIO<R, E, {
37
+ stream: ZStream<R, E, A>;
38
+ release: (exit: Exit<any, any>) => Async<R, any, void>;
39
+ }>;
40
+ };
41
+ type ZStream<R, E, A> = Empty<R, E, A> | Emit<R, E, A> | Concat<R, E, A> | FromPull<R, E, A> | Flatten<R, E, A> | Merge<R, E, A> | Scoped<R, E, A> | Managed<R, E, A>;
42
+ type Normalize<E> = (u: unknown) => E;
43
+ declare const widenOpt: <E1, E2>(opt: Option<E1>) => Option<E1 | E2>;
44
+ declare const fromPull: <R, E, A>(pull: ZIO<R, Option<E>, [A, ZStream<R, E, A>]>) => ZStream<R, E, A>;
45
+ declare const unwrapScoped: <R, E, A>(acquire: ZIO<R, E, ZStream<R, E, A>>, release: (exit: Exit<any, any>) => Async<R, any, void>) => ZStream<R, E, A>;
46
+ declare const managedStream: <R, E, A>(acquire: ZIO<R, E, {
47
+ stream: ZStream<R, E, A>;
48
+ release: (exit: Exit<any, any>) => Async<R, any, void>;
49
+ }>) => ZStream<R, E, A>;
50
+ declare const mergeStream: <R, E, A>(left: ZStream<R, E, A>, right: ZStream<R, E, A>, flip?: boolean) => ZStream<R, E, A>;
51
+ declare const emptyStream: <R, E, A>() => ZStream<R, E, A>;
52
+ declare const emitStream: <R, E, A>(value: ZIO<R, E, A>) => ZStream<R, E, A>;
53
+ declare const concatStream: <R, E, A>(left: ZStream<R, E, A>, right: ZStream<R, E, A>) => ZStream<R, E, A>;
54
+ declare const flattenStream: <R, E, A>(stream: ZStream<R, E, ZStream<R, E, A>>) => ZStream<R, E, A>;
55
+ declare function merge<R, E, A>(left: ZStream<R, E, A>, right: ZStream<R, E, A>): ZStream<R, E, A>;
56
+ declare function uncons<R, E, A>(self: ZStream<R, E, A>): ZIO<R, Option<E>, [A, ZStream<R, E, A>]>;
57
+ declare function assertNever(x: never, msg?: string): never;
58
+ declare function mapStream<R, E, A, B>(self: ZStream<R, E, A>, f: (a: A) => B): ZStream<R, E, B>;
59
+ declare function rangeStream(start: number, end: number): ZStream<unknown, never, number>;
60
+ declare function zip<R, E1, A, E2, B>(left: ZStream<R, E1, A>, right: ZStream<R, E2, B>): ZStream<R, E1 | E2, [A, B]>;
61
+ declare function foreachStream<R, E, A, R2, E2>(stream: ZStream<R, E, A>, f: (a: A) => Async<R2, E2, void>): Async<R & R2, E | E2, void>;
62
+ declare function fromArray<A>(values: readonly A[]): ZStream<unknown, never, A>;
63
+ declare function collectStream<R, E, A>(stream: ZStream<R, E, A>): ZIO<R, E, A[]>;
64
+ declare function streamFromReadableStream<E>(body: ReadableStream<Uint8Array> | null | undefined, normalizeError: Normalize<E>): ZStream<unknown, E, Uint8Array>;
65
+
66
+ export { type Concat as C, type Emit as E, type Flatten as F, type Managed as M, type Normalize as N, type Scoped as S, type ZStream as Z, type Empty as a, type FromPull as b, type Merge as c, assertNever as d, collectStream as e, concatStream as f, emitStream as g, emptyStream as h, flattenStream as i, foreachStream as j, fromArray as k, fromPull as l, managedStream as m, mapStream as n, merge as o, mergeStream as p, unwrapScoped as q, rangeStream as r, streamFromReadableStream as s, uncons as u, widenOpt as w, zip as z };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "brass-runtime",
3
- "version": "1.12.0",
3
+ "version": "1.13.2",
4
4
  "description": "Effect runtime utilities for TypeScript",
5
5
  "license": "MIT",
6
6
  "author": "Augusto Vivaldelli",
@@ -18,10 +18,21 @@
18
18
  "import": "./dist/http/index.js",
19
19
  "require": "./dist/http/index.cjs"
20
20
  },
21
- "./package.json": "./package.json"
21
+ "./agent": {
22
+ "types": "./dist/agent/index.d.ts",
23
+ "import": "./dist/agent/index.js",
24
+ "require": "./dist/agent/index.cjs"
25
+ },
26
+ "./package.json": "./package.json",
27
+ "./wasm/pkg/brass_runtime_wasm_engine.js": "./wasm/pkg/brass_runtime_wasm_engine.js",
28
+ "./wasm/pkg/brass_runtime_wasm_engine_bg.wasm": "./wasm/pkg/brass_runtime_wasm_engine_bg.wasm"
22
29
  },
23
30
  "files": [
24
31
  "dist",
32
+ "wasm/pkg/brass_runtime_wasm_engine.js",
33
+ "wasm/pkg/brass_runtime_wasm_engine_bg.wasm",
34
+ "wasm/pkg/package.json",
35
+ "wasm/pkg/*.d.ts",
25
36
  "README.md",
26
37
  "LICENSE",
27
38
  "package.json"
@@ -45,27 +56,51 @@
45
56
  "scripts": {
46
57
  "dev": "tsx src/examples/index.ts",
47
58
  "clean": "rimraf dist",
59
+ "test": "vitest run",
60
+ "test:watch": "vitest",
61
+ "test:coverage": "vitest run --coverage",
62
+ "test:types": "tsc -p tsconfig.json --noEmit",
63
+ "check": "npm run test:types && npm run test && npm run test:coverage",
64
+ "check:full": "npm run clean && npm run build && npm run test",
48
65
  "build": "tsup",
49
66
  "build:legacy": "npm run clean && npm run build:types && npm run build:esm && npm run build:cjs",
50
67
  "build:types": "tsc -p tsconfig.types.json",
51
68
  "build:esm": "tsc -p tsconfig.esm.json",
52
69
  "build:cjs": "tsc -p tsconfig.cjs.json",
53
- "prepublishOnly": "npm run build"
70
+ "prepublishOnly": "npm run build:wasm && npm run build",
71
+ "agent:dev": "tsx src/agent/cli/main.ts",
72
+ "agent:doctor": "tsx src/agent/cli/main.ts --doctor",
73
+ "agent:vscode:package": "node scripts/install-vscode-extension.mjs --no-code-install --no-settings",
74
+ "agent:vscode:install": "node scripts/install-vscode-extension.mjs",
75
+ "agent:vscode:uninstall": "node scripts/clean-vscode-extension.mjs --yes --no-vsix --no-settings --no-global-storage",
76
+ "agent:vscode:clean": "node scripts/clean-vscode-extension.mjs --yes",
77
+ "agent:vscode:reinstall": "npm run agent:vscode:clean && npm run agent:vscode:install",
78
+ "agent:local-install": "npm run agent:vscode:install",
79
+ "agent:init": "tsx src/agent/cli/main.ts --init",
80
+ "agent:init:dry-run": "tsx src/agent/cli/main.ts --init --init-dry-run",
81
+ "agent:test:smoke": "node scripts/agent-local-smoke.mjs",
82
+ "agent:test:local": "npm run build && npm run agent:test:smoke",
83
+ "agent:link": "npm run build && npm link",
84
+ "agent:unlink": "node scripts/unlink-agent-cli.mjs",
85
+ "agent:vscode:install:global": "npm run agent:link && node scripts/install-vscode-extension.mjs --use-global-command --no-root-build",
86
+ "agent:vscode:bundle": "npm run build && node scripts/prepare-vscode-bundle.mjs",
87
+ "agent:vscode:uninstall:global": "npm run agent:vscode:clean && npm run agent:unlink",
88
+ "agent:vscode:reinstall:global": "npm run agent:vscode:uninstall:global && npm run agent:vscode:install:global",
89
+ "benchmark": "tsx src/benchmarks/runner.ts",
90
+ "benchmark:json": "tsx src/benchmarks/runner.ts --json",
91
+ "test:coverage:html": "vitest run --coverage --reporter=default",
92
+ "build:wasm": "cd crates/brass-runtime-wasm-engine && wasm-pack build --target nodejs --out-dir ../../wasm/pkg"
54
93
  },
55
94
  "devDependencies": {
56
- "@semantic-release/changelog": "^6.0.0",
57
- "@semantic-release/commit-analyzer": "^13.0.0",
58
- "@semantic-release/git": "^10.0.0",
59
- "@semantic-release/github": "^11.0.0",
60
- "@semantic-release/npm": "^13.1.3",
61
- "@semantic-release/release-notes-generator": "^14.0.0",
62
- "conventional-changelog-conventionalcommits": "^7.x.x",
95
+ "@types/node": "^22.15.0",
96
+ "@vitest/coverage-v8": "^4.1.5",
97
+ "conventional-changelog-conventionalcommits": "^9.3.1",
98
+ "fast-check": "^4.7.0",
63
99
  "rimraf": "^6.1.2",
64
- "semantic-release": "^25.0.2",
65
- "ts-node-dev": "^2.0.0",
66
100
  "tsup": "^8.5.1",
67
101
  "tsx": "^4.21.0",
68
- "typescript": "^5.9.3"
102
+ "typescript": "^5.9.3",
103
+ "vitest": "^4.1.5"
69
104
  },
70
105
  "repository": {
71
106
  "type": "git",
@@ -74,5 +109,8 @@
74
109
  "bugs": {
75
110
  "url": "https://github.com/BaldrVivaldelli/brass-runtime/issues"
76
111
  },
77
- "homepage": "https://github.com/BaldrVivaldelli/brass-runtime#readme"
112
+ "homepage": "https://github.com/BaldrVivaldelli/brass-runtime#readme",
113
+ "bin": {
114
+ "brass-agent": "dist/agent/cli/main.cjs"
115
+ }
78
116
  }
@@ -1 +0,0 @@
1
- 'use strict';var W={succeed:t=>({_tag:"Succeed",value:t}),fail:t=>({_tag:"Fail",error:t}),sync:t=>({_tag:"Sync",thunk:t}),async:t=>({_tag:"Async",register:t})};function m(t,e,n){return {_tag:"Fold",first:t,onFailure:e,onSuccess:n}}function Oe(t,e){return m(t,n=>e(n),n=>A(n))}function O(t,e){return m(t,n=>S(e(n)),n=>A(n))}var k=()=>A(void 0),A=t=>({_tag:"Succeed",value:t}),S=t=>({_tag:"Fail",error:t}),N=t=>({_tag:"Sync",thunk:t}),Ce=t=>N(()=>t()),d=t=>({_tag:"Async",register:t});function Y(t,e){return h(t,n=>A(e(n)))}function h(t,e){return {_tag:"FlatMap",first:t,andThen:e}}function we(t,e,n){return h(t,r=>(n.addFinalizer(a=>e(r,a)),A(r)))}function Ze(t){return d(t)}var Ne=t=>e=>{let n=e;return n.toPromise||(n.toPromise=r=>t(e,r),n.unsafeRunPromise=()=>t(e,{})),n},Be=(t,e)=>h(t,n=>A(e(n))),Te=(t,e)=>h(t,n=>N(()=>e(n)));var C={_tag:"None"},w=t=>({_tag:"Some",value:t});var g={fail:t=>({_tag:"Fail",error:t}),interrupt:()=>({_tag:"Interrupt"}),die:t=>({_tag:"Die",defect:t})},R={succeed:t=>({_tag:"Success",value:t}),failCause:t=>({_tag:"Failure",cause:t})},G=t=>A(t),U=t=>S(t),ee=t=>N(e=>t(e)),I=(t,e)=>Y(t,e),te=(t,e)=>h(t,n=>e(n)),L=(t,e)=>O(t,e),ze=(t,e)=>m(t,n=>e(n),n=>A(n));function J(t,e){return m(t,n=>n._tag==="Some"?S(n):e(),n=>A(n))}var je=()=>U(C);var de=(r=>(r[r.Ok=0]="Ok",r[r.Grew=1]="Grew",r[r.Dropped=2]="Dropped",r))(de||{}),M=class{buf;head=0;tail=0;size_=0;maxCap;constructor(e=1024,n=e){let r=Math.max(2,this.nextPow2(e)),a=Math.max(r,this.nextPow2(n));this.buf=new Array(r),this.maxCap=a;}get length(){return this.size_}get capacity(){return this.buf.length}isEmpty(){return this.size_===0}push(e){return this.size_===this.buf.length?this.buf.length>=this.maxCap?2:(this.grow(),this.buf[this.tail]=e,this.tail=this.tail+1&this.buf.length-1,this.size_++,1):(this.buf[this.tail]=e,this.tail=this.tail+1&this.buf.length-1,this.size_++,0)}shift(){if(this.size_===0)return;let e=this.buf[this.head];return this.buf[this.head]=void 0,this.head=this.head+1&this.buf.length-1,this.size_--,e}clear(){this.buf.fill(void 0),this.head=0,this.tail=0,this.size_=0;}grow(){let e=this.buf,n=Math.min(e.length*2,this.maxCap),r=new Array(n);for(let a=0;a<this.size_;a++)r[a]=e[this.head+a&e.length-1];this.buf=r,this.head=0,this.tail=this.size_;}nextPow2(e){let n=1;for(;n<e;)n<<=1;return n}};var ne=2048,re=4096,pe=(()=>{if(typeof globalThis.setImmediate=="function")return t=>globalThis.setImmediate(t);if(typeof globalThis.MessageChannel=="function"){let t=new globalThis.MessageChannel,e=null;return t.port1.onmessage=()=>{let n=e;e=null,n?.();},n=>{e=n,t.port2.postMessage(0);}}return t=>setTimeout(t,0)})(),$=class{queue=new M(1024);flushing=false;scheduled=false;schedule(e,n="anonymous"){if(typeof e=="function"&&(this.queue.push({tag:n,task:e}),!this.flushing&&!this.scheduled)){this.scheduled=true;let r=this.queue.length>re?"macro":"micro";this.requestFlush(r);}}requestFlush(e){e==="micro"?queueMicrotask(()=>this.flush()):pe(()=>this.flush());}flush(){if(this.flushing)return;this.flushing=true,this.scheduled=false;let e=0;try{for(;e<ne;){let n=this.queue.shift();if(!n)break;e++;try{n.task();}catch(r){console.error(`[Scheduler] task threw (tag=${n.tag})`,r);}}}finally{if(this.flushing=false,this.queue.length>0&&!this.scheduled){this.scheduled=true;let n=e>=ne||this.queue.length>re?"macro":"micro";this.requestFlush(n);}}}},T=new $;var ae={parent:null,patch:Object.create(null)};function se(t,e){let n=Ae(t);return {initChild(r,a,s){let i=a?.fiberContext,o=Re(n,i?.trace??null);r.fiberContext={log:i?.log??ae,trace:o},r.parentFiberId=a?.id,r.name=n.childName(a?.name),s!==void 0&&(r.scopeId=s),e.emit({type:"fiber.start",fiberId:r.id,parentFiberId:a?.id,scopeId:r.scopeId,name:r.name},{fiberId:a?.id,traceId:i?.trace?.traceId,spanId:i?.trace?.spanId});}}}function Ae(t){let e={newTraceId:()=>crypto.randomUUID(),newSpanId:()=>crypto.randomUUID()},n=t?.brass,r=n?.tracer??e,a=n?.traceSeed,s=n?.childName??(i=>i?`${i}/child`:void 0);return {tracer:r,seed:a,childName:s}}function Re(t,e){return e?{traceId:e.traceId,spanId:t.tracer.newSpanId(),parentSpanId:e.spanId,sampled:e.sampled}:t.seed?{...t.seed}:{traceId:t.tracer.newTraceId(),spanId:t.tracer.newSpanId(),sampled:true}}var fe={emit(){}},P=class t{env;scheduler;hooks;forkPolicy;registry;constructor(e){this.env=e.env,this.scheduler=e.scheduler??T,this.hooks=e.hooks??fe,this.forkPolicy=se(this.env,this.hooks);}provide(e){return new t({env:Object.assign({},this.env,e),scheduler:this.scheduler,hooks:this.hooks})}emit(e){let n=b(),r={fiberId:n?.id,scopeId:n?.scopeId,traceId:n?.fiberContext?.trace?.traceId,spanId:n?.fiberContext?.trace?.spanId};this.hooks.emit(e,r);}fork(e,n){let r=b(),a=new z(this,e);return n!==void 0&&(a.scopeId=n),this.forkPolicy.initChild(a,r,n),a.schedule("initial-step"),a}unsafeRunAsync(e,n){this.fork(e).join(n);}toPromise(e){return new Promise((n,r)=>{this.fork(e).join(s=>{if(s._tag==="Success")n(s.value);else {let i=s.cause;i?._tag==="Fail"?r(i.error):r(new Error("Interrupted"));}});})}unsafeRun(e){this.unsafeRunAsync(e,()=>{});}delay(e,n){return d((r,a)=>{let s=setTimeout(()=>{this.unsafeRunAsync(n,a);},e);return ()=>clearTimeout(s)})}static make(e,n=T){return new t({env:e,scheduler:n})}log(e,n,r){this.emit({type:"log",level:e,message:n,fields:r});}};function rt(t,e){return P.make(e??{}).fork(t)}function Q(t,e,n){P.make(e??{}).unsafeRunAsync(t,n);}function at(t,e){return P.make(e??{}).toPromise(t)}function st(t,e){return {_tag:"Async",register:(n,r)=>{let a=new AbortController,s=false;return t(a.signal,n).then(i=>{s||(s=true,r(R.succeed(i)));}).catch(i=>{s||(s=true,r(R.failCause(g.fail(e(i)))));}),()=>{s||(s=true,a.abort(),r(R.failCause(g.interrupt())));}}}}function ie(t,e,n,r){Q(t,e,a=>{a._tag==="Failure"?n(a.cause):r(a.value);});}var j=null,v={CONTINUE:"Continue",SUSPEND:"Suspend",DONE:"Done"},F={QUEUED:"Queued",RUNNING:"Running",SUSPENDED:"Suspended",DONE:"Done"},he=1,oe=1024;function me(t){let e=t;for(;e._tag==="FlatMap"&&e.first?._tag==="FlatMap";){let n=e.first,r=e.andThen;e={_tag:"FlatMap",first:n.first,andThen:a=>({_tag:"FlatMap",first:n.andThen(a),andThen:r})};}return e}var z=class{id;runtime;closing=null;finishing=false;runState=F.RUNNING;interrupted=false;result=null;joiners=[];current;stack=[];fiberFinalizers=[];finalizersDrained=false;fiberContext;name;scopeId;constructor(e,n){this.id=he++,this.runtime=e,this.current=n;}get env(){return this.runtime.env}get scheduler(){return this.runtime.scheduler??T}emit(e){this.runtime.hooks.emit(e,{fiberId:this.id,scopeId:this.scopeId,traceId:this.fiberContext?.trace?.traceId,spanId:this.fiberContext?.trace?.spanId});}addFinalizer(e){this.fiberFinalizers.push(e);}status(){return this.result==null?"Running":this.result._tag==="Failure"&&this.result.cause._tag==="Interrupt"?"Interrupted":"Done"}join(e){this.result!=null?e(this.result):this.joiners.push(e);}interrupt(){this.result==null&&(this.interrupted||(this.interrupted=true,this.schedule("interrupt-step")));}schedule(e="step"){this.runState===F.DONE||this.runState===F.QUEUED||(this.runState===F.SUSPENDED&&this.emit({type:"fiber.resume",fiberId:this.id}),this.runState=F.QUEUED,this.scheduler.schedule(()=>{ge(this,()=>{if(this.runState===F.DONE)return;switch(this.runState=F.RUNNING,this.step()){case v.CONTINUE:this.schedule("continue");return;case v.SUSPEND:this.runState=F.SUSPENDED,this.emit({type:"fiber.suspend",fiberId:this.id});return;case v.DONE:this.runState=F.DONE;return}});},`fiber#${this.id}.${e}`));}runFinalizersOnce(e){if(!this.finalizersDrained)for(this.finalizersDrained=true;this.fiberFinalizers.length>0;){let n=this.fiberFinalizers.pop();try{let r=n(e);r&&typeof r=="object"&&"_tag"in r&&Q(r,this.env,()=>{});}catch{}}}notify(e){if(this.result!=null||this.closing!=null)return;this.finishing=true,this.closing=e,this.runFinalizersOnce(e),this.result=e;let n=e._tag==="Success"?"success":e.cause._tag==="Interrupt"?"interrupted":"failure";this.emit({type:"fiber.end",fiberId:this.id,status:n,error:e._tag==="Failure"?e.cause:void 0});for(let r of this.joiners)r(e);this.joiners.length=0;}onSuccess(e){let n=this.stack.pop();if(!n){this.notify(R.succeed(e));return}if(n._tag==="SuccessCont"){try{this.current=n.k(e);}catch(r){this.notify(R.failCause(g.die(r)));}return}try{this.current=n.onSuccess(e);}catch(r){this.notify(R.failCause(g.die(r)));}}onFailure(e){for(;this.stack.length>0;){let n=this.stack.pop();if(n._tag==="FoldCont")try{this.current=n.onFailure(e);return}catch(r){e=r;continue}}this.notify(R.failCause(g.fail(e)));}budget=oe;step(){if(this.result!=null)return v.DONE;if(this.interrupted)return this.notify(R.failCause(g.interrupt())),v.DONE;for(this.budget=oe;this.budget-- >0;){this.current=me(this.current);let e=this.current;switch(e._tag){case "Succeed":{this.onSuccess(e.value);break}case "Fail":{this.onFailure(e.error);break}case "FlatMap":{this.stack.push({_tag:"SuccessCont",k:e.andThen}),this.current=e.first;break}case "Fold":{this.stack.push({_tag:"FoldCont",onFailure:e.onFailure,onSuccess:e.onSuccess}),this.current=e.first;break}case "Async":{if(this.finishing)return this.result!=null?v.DONE:v.CONTINUE;let n=false,r=s=>{if(n||(n=true,this.result!=null||this.closing!=null))return;if(s._tag==="Success"){this.current=W.succeed(s.value),this.schedule("async-resume");return}let i=s.cause;if(i._tag==="Interrupt"){this.notify(R.failCause(g.interrupt()));return}if(i._tag==="Fail"){this.current=W.fail(i.error),this.schedule("async-resume");return}this.notify(R.failCause(g.die(i.defect)));},a=e.register(this.env,r);return typeof a=="function"&&this.addFinalizer(()=>{n=true;try{a();}catch{}}),v.SUSPEND}case "Fork":{let n=this.runtime.fork(e.effect,e.scopeId);this.onSuccess(n);break}case "Sync":{try{let n=e.thunk(this.env);this.onSuccess(n);}catch(n){this.onFailure(n);}break}default:return this.onFailure(new Error(`Unknown opcode: ${e._tag}`)),v.CONTINUE}if(this.result!=null)return v.DONE}return v.CONTINUE}};function b(){return j}function B(){let t=b();if(!t?.runtime)throw new Error("unsafeGetCurrentRuntime: no current fiber/runtime");return t.runtime}function ge(t,e){let n=j;j=t;try{return e()}finally{j=n;}}var Se=1;function ve(t){return d((e,n)=>{let r=t.length;if(r===0){n({_tag:"Success",value:void 0});return}for(let a of t)a.join(()=>{r-=1,r===0&&n({_tag:"Success",value:void 0});});})}var Z=class t{constructor(e,n){this.runtime=e;this.parentScopeId=n;this.id=Se++;let r=this.parentScopeId??b()?.scopeId;this.runtime.emit({type:"scope.open",scopeId:this.id,parentScopeId:r});}id;closed=false;children=new Set;subScopes=new Set;finalizers=[];addFinalizer(e){if(this.closed)throw new Error("Trying to add finalizer to closed scope");this.finalizers.push(e);}subScope(){if(this.closed)throw new Error("Scope closed");let e=new t(this.runtime,this.id);return this.subScopes.add(e),e}fork(e){if(this.closed)throw new Error("Scope closed");let n=this.runtime.fork(e,this.id);return this.children.add(n),n.join(()=>this.children.delete(n)),n}close(e={_tag:"Success",value:void 0}){this.runtime.fork(this.closeAsync(e));}closeAsync(e={_tag:"Success",value:void 0},n={awaitChildren:true}){return h(k(),()=>d((r,a)=>{if(this.closed){a({_tag:"Success",value:void 0});return}this.closed=true;let s=Array.from(this.children),o=Array.from(this.subScopes).reduceRight((y,u)=>h(y,()=>u.closeAsync(e,n)),k()),c=this.finalizers.reduceRight((y,u)=>h(y,()=>m(u(e),()=>k(),()=>k())),k()),l=n.awaitChildren?ve(s):k(),E=h(o,()=>h(l,()=>c));this.runtime.fork(E).join(()=>{let y=e._tag==="Success"?"success":e.cause._tag==="Interrupt"?"interrupted":"failure";this.runtime.emit({type:"scope.close",scopeId:this.id,status:y,error:e._tag==="Failure"&&e.cause._tag==="Fail"?e.cause.error:void 0}),a({_tag:"Success",value:void 0});});}))}};function xe(t,e){return d((n,r)=>{let a=new Z(t);t.fork(e(a)).join(s=>{t.fork(a.closeAsync(s)),r(s);});})}function ht(t,e){return xe(t,n=>{let r=e(n);return r&&typeof r=="object"&&"_tag"in r?r:k()})}function vt(t,e,n){return d((r,a)=>{let s=n.subScope(),i=false,o=E=>{i||(i=true,s.close(E),a(E));},c=s.fork(t),l=s.fork(e);c.join(o),l.join(o);})}function xt(t,e,n){return d((r,a)=>{let s=n.subScope(),i=null,o=null,c=false,l=()=>{if(!i||!o||c)return;if(c=true,i._tag==="Success"&&o._tag==="Success"){s.close({_tag:"Success",value:void 0}),a({_tag:"Success",value:[i.value,o.value]});return}let u;if(i._tag==="Failure")u=i.cause;else if(o._tag==="Failure")u=o.cause;else throw new Error("zipPar: unreachable state (no Failure exit)");let p={_tag:"Failure",cause:u};s.close(p),a(p);},E=s.fork(t),y=s.fork(e);E.join(u=>{i=u,l();}),y.join(u=>{o=u,l();});})}function bt(t,e){return d((n,r)=>{let a=e.subScope(),s=new Array(t.length),i=0,o=false;t.forEach((c,l)=>{a.fork(c).join(y=>{if(!o){if(y._tag==="Failure"){o=true;let u={_tag:"Failure",cause:y.cause};a.close(u),r(u);return}if(s[l]=y.value,i++,i===t.length){o=true;let u={_tag:"Success",value:s};a.close({_tag:"Success",value:void 0}),r(u);}}});});})}function ce(t,e,n,r,a){return d((s,i)=>{let o=n.subScope(),c=false,l=o.fork(t),E=o.fork(e),y=u=>{o.fork(u).join(p=>{o.close(p),i(p);});};l.join(u=>{c||(c=true,y(r(u,E,o)));}),E.join(u=>{c||(c=true,y(a(u,l,o)));});})}var K=t=>t._tag==="None"?C:w(t.value),x=t=>({_tag:"FromPull",pull:t}),le=(t,e)=>({_tag:"Scoped",acquire:t,release:e}),be=t=>({_tag:"Managed",acquire:t}),Fe=(t,e,n=true)=>({_tag:"Merge",left:t,right:e,flip:n}),V=()=>({_tag:"Empty"}),Ee=t=>({_tag:"Emit",value:t}),q=(t,e)=>({_tag:"Concat",left:t,right:e}),X=t=>({_tag:"Flatten",stream:t});function ue(t,e,n,r,a){return (s,i,o)=>{if(s._tag,s._tag,s._tag==="Success"){let[l,E]=s.value;i.interrupt();let y=x(t==="L"?H(E,n):H(e,E));return A([l,y])}if(s.cause._tag==="Interrupt")return d((l,E)=>{E(R.failCause(g.interrupt()));});let c=s.cause.error;return c._tag==="None"?f(t==="L"?n:e):S(c)}}function H(t,e,n,r){return d((a,s)=>{let o=B(),c=new Z(o),l=f(t),E=f(e),y=ue("L",t,e),u=ue("R",t,e),p=ce(l,E,c,y,u);c.fork(p).join(D=>{c.close(D),s(D);});})}function Dt(t,e){return x(H(t,e))}function f(t){switch(t._tag){case "Empty":return U(C);case "Emit":return I(L(t.value,e=>w(e)),e=>[e,V()]);case "FromPull":return t.pull;case "Concat":return J(I(f(t.left),([e,n])=>[e,q(n,t.right)]),()=>f(t.right));case "Flatten":return te(f(t.stream),([e,n])=>J(I(f(e),([r,a])=>[r,q(a,X(n))]),()=>f(X(n))));case "Merge":return H(t.left,t.right,t.flip);case "Scoped":return d((e,n)=>{let r=B(),a=new Z(r);b()?.addFinalizer(c=>{try{a.close(c);}catch{}});let i=c=>{if(c._tag==="Failure"){let l=c.cause.error;if(l&&typeof l=="object"&&l._tag==="None"){a.close({_tag:"Success",value:void 0});return}}a.close(c);},o=c=>x(d((l,E)=>{let y=f(c);ie(y,l,u=>{let p=R.failCause(u);i(p),E(p);},([u,p])=>{E(R.succeed([u,o(p)]));});}));a.fork(t.acquire).join(c=>{if(c._tag==="Failure"){i(c),n({_tag:"Failure",cause:{_tag:"Fail",error:w(c.cause.error)}});return}a.addFinalizer(E=>t.release(E));let l=c.value;B().fork(f(o(l))).join(n);});});case "Managed":return d((e,n)=>{let r=B(),a=new Z(r);b()?.addFinalizer(i=>{try{a.close(i);}catch{}});let s=i=>{if(i._tag==="Failure"){let o=i.cause.error;if(o&&typeof o=="object"&&o._tag==="None"){a.close({_tag:"Success",value:void 0});return}}a.close(i);};a.fork(t.acquire).join(i=>{if(i._tag==="Failure"){a.close(i),n({_tag:"Failure",cause:{_tag:"Fail",error:w(i.cause.error)}});return}let{stream:o,release:c}=i.value;a.addFinalizer(E=>c(E));let l=E=>x(d((y,u)=>{f(E)(y,p=>{if(p._tag==="Failure"){s(p),u(p);return}let[D,ye]=p.value;u(R.succeed([D,l(ye)]));});}));B().fork(f(l(o))).join(n);});})}}function _e(t,e){throw new Error(e??`Unexpected value: ${String(t)}`)}function _(t,e){switch(t._tag){case "Empty":return V();case "Emit":return Ee(I(t.value,e));case "FromPull":return x(I(t.pull,([n,r])=>[e(n),_(r,e)]));case "Concat":return q(_(t.left,e),_(t.right,e));case "Flatten":{let n=_(t.stream,r=>_(r,e));return X(n)}case "Merge":return Fe(_(t.left,e),_(t.right,e),t.flip);case "Scoped":return le(I(t.acquire,n=>_(n,e)),t.release);case "Managed":return be(I(t.acquire,({stream:n,release:r})=>({stream:_(n,e),release:r})));default:return _e(t)}}function Ut(t,e){let n=r=>x(r>e?S(C):A([r,n(r+1)]));return n(t)}function ke(t,e){let n=m(O(f(t),r=>K(r)),r=>S(r),([r,a])=>m(O(f(e),s=>K(s)),s=>S(s),([s,i])=>A([[r,s],ke(a,i)])));return x(n)}function Mt(t,e){let n=r=>m(O(f(r),a=>K(a)),a=>a._tag==="None"?A(void 0):S(a),([a,s])=>h(O(e(a),i=>w(i)),()=>n(s)));return m(n(t),r=>r._tag==="None"?A(void 0):S(r.value),()=>A(void 0))}function zt(t){let e=V();for(let n=t.length-1;n>=0;n--){let r=Ee(G(t[n]));e=q(r,e);}return e}function jt(t){let e=(n,r)=>m(f(n),a=>a._tag==="None"?G(r):U(a),([a,s])=>e(s,[...r,a]));return L(e(t,[]),n=>{if(n._tag==="Some")return n.value;throw new Error("unreachable: stream end handled as success")})}function Ie(t,e){let n=d((r,a)=>{t.read().then(({done:s,value:i})=>{if(s){a({_tag:"Failure",cause:{_tag:"Fail",error:C}});return}a({_tag:"Success",value:[i,x(n)]});}).catch(s=>{a({_tag:"Failure",cause:{_tag:"Fail",error:w(e(s))}});});});return x(n)}function qt(t,e){if(!t)return V();let n;return le(ee(()=>(n=t.getReader(),Ie(n,e))),()=>N(()=>{try{n?.cancel();}catch{}}))}exports.$=le;exports.A=L;exports.B=ze;exports.C=J;exports.D=je;exports.E=de;exports.F=M;exports.G=$;exports.H=T;exports.I=z;exports.J=b;exports.K=B;exports.L=ge;exports.M=P;exports.N=rt;exports.O=Q;exports.P=at;exports.Q=st;exports.R=ie;exports.S=Z;exports.T=xe;exports.U=ht;exports.V=vt;exports.W=xt;exports.X=bt;exports.Y=ce;exports.Z=K;exports._=x;exports.a=W;exports.aa=be;exports.b=m;exports.ba=Fe;exports.c=Oe;exports.ca=V;exports.d=O;exports.da=Ee;exports.e=k;exports.ea=q;exports.f=A;exports.fa=X;exports.g=S;exports.ga=Dt;exports.h=N;exports.ha=f;exports.i=Ce;exports.ia=_e;exports.j=d;exports.ja=_;exports.k=Y;exports.ka=Ut;exports.l=h;exports.la=ke;exports.m=we;exports.ma=Mt;exports.n=Ze;exports.na=zt;exports.o=Ne;exports.oa=jt;exports.p=Be;exports.pa=qt;exports.q=Te;exports.r=C;exports.s=w;exports.t=g;exports.u=R;exports.v=G;exports.w=U;exports.x=ee;exports.y=I;exports.z=te;
@@ -1 +0,0 @@
1
- var W={succeed:t=>({_tag:"Succeed",value:t}),fail:t=>({_tag:"Fail",error:t}),sync:t=>({_tag:"Sync",thunk:t}),async:t=>({_tag:"Async",register:t})};function m(t,e,n){return {_tag:"Fold",first:t,onFailure:e,onSuccess:n}}function Oe(t,e){return m(t,n=>e(n),n=>A(n))}function O(t,e){return m(t,n=>S(e(n)),n=>A(n))}var k=()=>A(void 0),A=t=>({_tag:"Succeed",value:t}),S=t=>({_tag:"Fail",error:t}),N=t=>({_tag:"Sync",thunk:t}),Ce=t=>N(()=>t()),d=t=>({_tag:"Async",register:t});function Y(t,e){return h(t,n=>A(e(n)))}function h(t,e){return {_tag:"FlatMap",first:t,andThen:e}}function we(t,e,n){return h(t,r=>(n.addFinalizer(a=>e(r,a)),A(r)))}function Ze(t){return d(t)}var Ne=t=>e=>{let n=e;return n.toPromise||(n.toPromise=r=>t(e,r),n.unsafeRunPromise=()=>t(e,{})),n},Be=(t,e)=>h(t,n=>A(e(n))),Te=(t,e)=>h(t,n=>N(()=>e(n)));var C={_tag:"None"},w=t=>({_tag:"Some",value:t});var g={fail:t=>({_tag:"Fail",error:t}),interrupt:()=>({_tag:"Interrupt"}),die:t=>({_tag:"Die",defect:t})},R={succeed:t=>({_tag:"Success",value:t}),failCause:t=>({_tag:"Failure",cause:t})},G=t=>A(t),U=t=>S(t),ee=t=>N(e=>t(e)),I=(t,e)=>Y(t,e),te=(t,e)=>h(t,n=>e(n)),L=(t,e)=>O(t,e),ze=(t,e)=>m(t,n=>e(n),n=>A(n));function J(t,e){return m(t,n=>n._tag==="Some"?S(n):e(),n=>A(n))}var je=()=>U(C);var de=(r=>(r[r.Ok=0]="Ok",r[r.Grew=1]="Grew",r[r.Dropped=2]="Dropped",r))(de||{}),M=class{buf;head=0;tail=0;size_=0;maxCap;constructor(e=1024,n=e){let r=Math.max(2,this.nextPow2(e)),a=Math.max(r,this.nextPow2(n));this.buf=new Array(r),this.maxCap=a;}get length(){return this.size_}get capacity(){return this.buf.length}isEmpty(){return this.size_===0}push(e){return this.size_===this.buf.length?this.buf.length>=this.maxCap?2:(this.grow(),this.buf[this.tail]=e,this.tail=this.tail+1&this.buf.length-1,this.size_++,1):(this.buf[this.tail]=e,this.tail=this.tail+1&this.buf.length-1,this.size_++,0)}shift(){if(this.size_===0)return;let e=this.buf[this.head];return this.buf[this.head]=void 0,this.head=this.head+1&this.buf.length-1,this.size_--,e}clear(){this.buf.fill(void 0),this.head=0,this.tail=0,this.size_=0;}grow(){let e=this.buf,n=Math.min(e.length*2,this.maxCap),r=new Array(n);for(let a=0;a<this.size_;a++)r[a]=e[this.head+a&e.length-1];this.buf=r,this.head=0,this.tail=this.size_;}nextPow2(e){let n=1;for(;n<e;)n<<=1;return n}};var ne=2048,re=4096,pe=(()=>{if(typeof globalThis.setImmediate=="function")return t=>globalThis.setImmediate(t);if(typeof globalThis.MessageChannel=="function"){let t=new globalThis.MessageChannel,e=null;return t.port1.onmessage=()=>{let n=e;e=null,n?.();},n=>{e=n,t.port2.postMessage(0);}}return t=>setTimeout(t,0)})(),$=class{queue=new M(1024);flushing=false;scheduled=false;schedule(e,n="anonymous"){if(typeof e=="function"&&(this.queue.push({tag:n,task:e}),!this.flushing&&!this.scheduled)){this.scheduled=true;let r=this.queue.length>re?"macro":"micro";this.requestFlush(r);}}requestFlush(e){e==="micro"?queueMicrotask(()=>this.flush()):pe(()=>this.flush());}flush(){if(this.flushing)return;this.flushing=true,this.scheduled=false;let e=0;try{for(;e<ne;){let n=this.queue.shift();if(!n)break;e++;try{n.task();}catch(r){console.error(`[Scheduler] task threw (tag=${n.tag})`,r);}}}finally{if(this.flushing=false,this.queue.length>0&&!this.scheduled){this.scheduled=true;let n=e>=ne||this.queue.length>re?"macro":"micro";this.requestFlush(n);}}}},T=new $;var ae={parent:null,patch:Object.create(null)};function se(t,e){let n=Ae(t);return {initChild(r,a,s){let i=a?.fiberContext,o=Re(n,i?.trace??null);r.fiberContext={log:i?.log??ae,trace:o},r.parentFiberId=a?.id,r.name=n.childName(a?.name),s!==void 0&&(r.scopeId=s),e.emit({type:"fiber.start",fiberId:r.id,parentFiberId:a?.id,scopeId:r.scopeId,name:r.name},{fiberId:a?.id,traceId:i?.trace?.traceId,spanId:i?.trace?.spanId});}}}function Ae(t){let e={newTraceId:()=>crypto.randomUUID(),newSpanId:()=>crypto.randomUUID()},n=t?.brass,r=n?.tracer??e,a=n?.traceSeed,s=n?.childName??(i=>i?`${i}/child`:void 0);return {tracer:r,seed:a,childName:s}}function Re(t,e){return e?{traceId:e.traceId,spanId:t.tracer.newSpanId(),parentSpanId:e.spanId,sampled:e.sampled}:t.seed?{...t.seed}:{traceId:t.tracer.newTraceId(),spanId:t.tracer.newSpanId(),sampled:true}}var fe={emit(){}},P=class t{env;scheduler;hooks;forkPolicy;registry;constructor(e){this.env=e.env,this.scheduler=e.scheduler??T,this.hooks=e.hooks??fe,this.forkPolicy=se(this.env,this.hooks);}provide(e){return new t({env:Object.assign({},this.env,e),scheduler:this.scheduler,hooks:this.hooks})}emit(e){let n=b(),r={fiberId:n?.id,scopeId:n?.scopeId,traceId:n?.fiberContext?.trace?.traceId,spanId:n?.fiberContext?.trace?.spanId};this.hooks.emit(e,r);}fork(e,n){let r=b(),a=new z(this,e);return n!==void 0&&(a.scopeId=n),this.forkPolicy.initChild(a,r,n),a.schedule("initial-step"),a}unsafeRunAsync(e,n){this.fork(e).join(n);}toPromise(e){return new Promise((n,r)=>{this.fork(e).join(s=>{if(s._tag==="Success")n(s.value);else {let i=s.cause;i?._tag==="Fail"?r(i.error):r(new Error("Interrupted"));}});})}unsafeRun(e){this.unsafeRunAsync(e,()=>{});}delay(e,n){return d((r,a)=>{let s=setTimeout(()=>{this.unsafeRunAsync(n,a);},e);return ()=>clearTimeout(s)})}static make(e,n=T){return new t({env:e,scheduler:n})}log(e,n,r){this.emit({type:"log",level:e,message:n,fields:r});}};function rt(t,e){return P.make(e??{}).fork(t)}function Q(t,e,n){P.make(e??{}).unsafeRunAsync(t,n);}function at(t,e){return P.make(e??{}).toPromise(t)}function st(t,e){return {_tag:"Async",register:(n,r)=>{let a=new AbortController,s=false;return t(a.signal,n).then(i=>{s||(s=true,r(R.succeed(i)));}).catch(i=>{s||(s=true,r(R.failCause(g.fail(e(i)))));}),()=>{s||(s=true,a.abort(),r(R.failCause(g.interrupt())));}}}}function ie(t,e,n,r){Q(t,e,a=>{a._tag==="Failure"?n(a.cause):r(a.value);});}var j=null,v={CONTINUE:"Continue",SUSPEND:"Suspend",DONE:"Done"},F={QUEUED:"Queued",RUNNING:"Running",SUSPENDED:"Suspended",DONE:"Done"},he=1,oe=1024;function me(t){let e=t;for(;e._tag==="FlatMap"&&e.first?._tag==="FlatMap";){let n=e.first,r=e.andThen;e={_tag:"FlatMap",first:n.first,andThen:a=>({_tag:"FlatMap",first:n.andThen(a),andThen:r})};}return e}var z=class{id;runtime;closing=null;finishing=false;runState=F.RUNNING;interrupted=false;result=null;joiners=[];current;stack=[];fiberFinalizers=[];finalizersDrained=false;fiberContext;name;scopeId;constructor(e,n){this.id=he++,this.runtime=e,this.current=n;}get env(){return this.runtime.env}get scheduler(){return this.runtime.scheduler??T}emit(e){this.runtime.hooks.emit(e,{fiberId:this.id,scopeId:this.scopeId,traceId:this.fiberContext?.trace?.traceId,spanId:this.fiberContext?.trace?.spanId});}addFinalizer(e){this.fiberFinalizers.push(e);}status(){return this.result==null?"Running":this.result._tag==="Failure"&&this.result.cause._tag==="Interrupt"?"Interrupted":"Done"}join(e){this.result!=null?e(this.result):this.joiners.push(e);}interrupt(){this.result==null&&(this.interrupted||(this.interrupted=true,this.schedule("interrupt-step")));}schedule(e="step"){this.runState===F.DONE||this.runState===F.QUEUED||(this.runState===F.SUSPENDED&&this.emit({type:"fiber.resume",fiberId:this.id}),this.runState=F.QUEUED,this.scheduler.schedule(()=>{ge(this,()=>{if(this.runState===F.DONE)return;switch(this.runState=F.RUNNING,this.step()){case v.CONTINUE:this.schedule("continue");return;case v.SUSPEND:this.runState=F.SUSPENDED,this.emit({type:"fiber.suspend",fiberId:this.id});return;case v.DONE:this.runState=F.DONE;return}});},`fiber#${this.id}.${e}`));}runFinalizersOnce(e){if(!this.finalizersDrained)for(this.finalizersDrained=true;this.fiberFinalizers.length>0;){let n=this.fiberFinalizers.pop();try{let r=n(e);r&&typeof r=="object"&&"_tag"in r&&Q(r,this.env,()=>{});}catch{}}}notify(e){if(this.result!=null||this.closing!=null)return;this.finishing=true,this.closing=e,this.runFinalizersOnce(e),this.result=e;let n=e._tag==="Success"?"success":e.cause._tag==="Interrupt"?"interrupted":"failure";this.emit({type:"fiber.end",fiberId:this.id,status:n,error:e._tag==="Failure"?e.cause:void 0});for(let r of this.joiners)r(e);this.joiners.length=0;}onSuccess(e){let n=this.stack.pop();if(!n){this.notify(R.succeed(e));return}if(n._tag==="SuccessCont"){try{this.current=n.k(e);}catch(r){this.notify(R.failCause(g.die(r)));}return}try{this.current=n.onSuccess(e);}catch(r){this.notify(R.failCause(g.die(r)));}}onFailure(e){for(;this.stack.length>0;){let n=this.stack.pop();if(n._tag==="FoldCont")try{this.current=n.onFailure(e);return}catch(r){e=r;continue}}this.notify(R.failCause(g.fail(e)));}budget=oe;step(){if(this.result!=null)return v.DONE;if(this.interrupted)return this.notify(R.failCause(g.interrupt())),v.DONE;for(this.budget=oe;this.budget-- >0;){this.current=me(this.current);let e=this.current;switch(e._tag){case "Succeed":{this.onSuccess(e.value);break}case "Fail":{this.onFailure(e.error);break}case "FlatMap":{this.stack.push({_tag:"SuccessCont",k:e.andThen}),this.current=e.first;break}case "Fold":{this.stack.push({_tag:"FoldCont",onFailure:e.onFailure,onSuccess:e.onSuccess}),this.current=e.first;break}case "Async":{if(this.finishing)return this.result!=null?v.DONE:v.CONTINUE;let n=false,r=s=>{if(n||(n=true,this.result!=null||this.closing!=null))return;if(s._tag==="Success"){this.current=W.succeed(s.value),this.schedule("async-resume");return}let i=s.cause;if(i._tag==="Interrupt"){this.notify(R.failCause(g.interrupt()));return}if(i._tag==="Fail"){this.current=W.fail(i.error),this.schedule("async-resume");return}this.notify(R.failCause(g.die(i.defect)));},a=e.register(this.env,r);return typeof a=="function"&&this.addFinalizer(()=>{n=true;try{a();}catch{}}),v.SUSPEND}case "Fork":{let n=this.runtime.fork(e.effect,e.scopeId);this.onSuccess(n);break}case "Sync":{try{let n=e.thunk(this.env);this.onSuccess(n);}catch(n){this.onFailure(n);}break}default:return this.onFailure(new Error(`Unknown opcode: ${e._tag}`)),v.CONTINUE}if(this.result!=null)return v.DONE}return v.CONTINUE}};function b(){return j}function B(){let t=b();if(!t?.runtime)throw new Error("unsafeGetCurrentRuntime: no current fiber/runtime");return t.runtime}function ge(t,e){let n=j;j=t;try{return e()}finally{j=n;}}var Se=1;function ve(t){return d((e,n)=>{let r=t.length;if(r===0){n({_tag:"Success",value:void 0});return}for(let a of t)a.join(()=>{r-=1,r===0&&n({_tag:"Success",value:void 0});});})}var Z=class t{constructor(e,n){this.runtime=e;this.parentScopeId=n;this.id=Se++;let r=this.parentScopeId??b()?.scopeId;this.runtime.emit({type:"scope.open",scopeId:this.id,parentScopeId:r});}id;closed=false;children=new Set;subScopes=new Set;finalizers=[];addFinalizer(e){if(this.closed)throw new Error("Trying to add finalizer to closed scope");this.finalizers.push(e);}subScope(){if(this.closed)throw new Error("Scope closed");let e=new t(this.runtime,this.id);return this.subScopes.add(e),e}fork(e){if(this.closed)throw new Error("Scope closed");let n=this.runtime.fork(e,this.id);return this.children.add(n),n.join(()=>this.children.delete(n)),n}close(e={_tag:"Success",value:void 0}){this.runtime.fork(this.closeAsync(e));}closeAsync(e={_tag:"Success",value:void 0},n={awaitChildren:true}){return h(k(),()=>d((r,a)=>{if(this.closed){a({_tag:"Success",value:void 0});return}this.closed=true;let s=Array.from(this.children),o=Array.from(this.subScopes).reduceRight((y,u)=>h(y,()=>u.closeAsync(e,n)),k()),c=this.finalizers.reduceRight((y,u)=>h(y,()=>m(u(e),()=>k(),()=>k())),k()),l=n.awaitChildren?ve(s):k(),E=h(o,()=>h(l,()=>c));this.runtime.fork(E).join(()=>{let y=e._tag==="Success"?"success":e.cause._tag==="Interrupt"?"interrupted":"failure";this.runtime.emit({type:"scope.close",scopeId:this.id,status:y,error:e._tag==="Failure"&&e.cause._tag==="Fail"?e.cause.error:void 0}),a({_tag:"Success",value:void 0});});}))}};function xe(t,e){return d((n,r)=>{let a=new Z(t);t.fork(e(a)).join(s=>{t.fork(a.closeAsync(s)),r(s);});})}function ht(t,e){return xe(t,n=>{let r=e(n);return r&&typeof r=="object"&&"_tag"in r?r:k()})}function vt(t,e,n){return d((r,a)=>{let s=n.subScope(),i=false,o=E=>{i||(i=true,s.close(E),a(E));},c=s.fork(t),l=s.fork(e);c.join(o),l.join(o);})}function xt(t,e,n){return d((r,a)=>{let s=n.subScope(),i=null,o=null,c=false,l=()=>{if(!i||!o||c)return;if(c=true,i._tag==="Success"&&o._tag==="Success"){s.close({_tag:"Success",value:void 0}),a({_tag:"Success",value:[i.value,o.value]});return}let u;if(i._tag==="Failure")u=i.cause;else if(o._tag==="Failure")u=o.cause;else throw new Error("zipPar: unreachable state (no Failure exit)");let p={_tag:"Failure",cause:u};s.close(p),a(p);},E=s.fork(t),y=s.fork(e);E.join(u=>{i=u,l();}),y.join(u=>{o=u,l();});})}function bt(t,e){return d((n,r)=>{let a=e.subScope(),s=new Array(t.length),i=0,o=false;t.forEach((c,l)=>{a.fork(c).join(y=>{if(!o){if(y._tag==="Failure"){o=true;let u={_tag:"Failure",cause:y.cause};a.close(u),r(u);return}if(s[l]=y.value,i++,i===t.length){o=true;let u={_tag:"Success",value:s};a.close({_tag:"Success",value:void 0}),r(u);}}});});})}function ce(t,e,n,r,a){return d((s,i)=>{let o=n.subScope(),c=false,l=o.fork(t),E=o.fork(e),y=u=>{o.fork(u).join(p=>{o.close(p),i(p);});};l.join(u=>{c||(c=true,y(r(u,E,o)));}),E.join(u=>{c||(c=true,y(a(u,l,o)));});})}var K=t=>t._tag==="None"?C:w(t.value),x=t=>({_tag:"FromPull",pull:t}),le=(t,e)=>({_tag:"Scoped",acquire:t,release:e}),be=t=>({_tag:"Managed",acquire:t}),Fe=(t,e,n=true)=>({_tag:"Merge",left:t,right:e,flip:n}),V=()=>({_tag:"Empty"}),Ee=t=>({_tag:"Emit",value:t}),q=(t,e)=>({_tag:"Concat",left:t,right:e}),X=t=>({_tag:"Flatten",stream:t});function ue(t,e,n,r,a){return (s,i,o)=>{if(s._tag,s._tag,s._tag==="Success"){let[l,E]=s.value;i.interrupt();let y=x(t==="L"?H(E,n):H(e,E));return A([l,y])}if(s.cause._tag==="Interrupt")return d((l,E)=>{E(R.failCause(g.interrupt()));});let c=s.cause.error;return c._tag==="None"?f(t==="L"?n:e):S(c)}}function H(t,e,n,r){return d((a,s)=>{let o=B(),c=new Z(o),l=f(t),E=f(e),y=ue("L",t,e),u=ue("R",t,e),p=ce(l,E,c,y,u);c.fork(p).join(D=>{c.close(D),s(D);});})}function Dt(t,e){return x(H(t,e))}function f(t){switch(t._tag){case "Empty":return U(C);case "Emit":return I(L(t.value,e=>w(e)),e=>[e,V()]);case "FromPull":return t.pull;case "Concat":return J(I(f(t.left),([e,n])=>[e,q(n,t.right)]),()=>f(t.right));case "Flatten":return te(f(t.stream),([e,n])=>J(I(f(e),([r,a])=>[r,q(a,X(n))]),()=>f(X(n))));case "Merge":return H(t.left,t.right,t.flip);case "Scoped":return d((e,n)=>{let r=B(),a=new Z(r);b()?.addFinalizer(c=>{try{a.close(c);}catch{}});let i=c=>{if(c._tag==="Failure"){let l=c.cause.error;if(l&&typeof l=="object"&&l._tag==="None"){a.close({_tag:"Success",value:void 0});return}}a.close(c);},o=c=>x(d((l,E)=>{let y=f(c);ie(y,l,u=>{let p=R.failCause(u);i(p),E(p);},([u,p])=>{E(R.succeed([u,o(p)]));});}));a.fork(t.acquire).join(c=>{if(c._tag==="Failure"){i(c),n({_tag:"Failure",cause:{_tag:"Fail",error:w(c.cause.error)}});return}a.addFinalizer(E=>t.release(E));let l=c.value;B().fork(f(o(l))).join(n);});});case "Managed":return d((e,n)=>{let r=B(),a=new Z(r);b()?.addFinalizer(i=>{try{a.close(i);}catch{}});let s=i=>{if(i._tag==="Failure"){let o=i.cause.error;if(o&&typeof o=="object"&&o._tag==="None"){a.close({_tag:"Success",value:void 0});return}}a.close(i);};a.fork(t.acquire).join(i=>{if(i._tag==="Failure"){a.close(i),n({_tag:"Failure",cause:{_tag:"Fail",error:w(i.cause.error)}});return}let{stream:o,release:c}=i.value;a.addFinalizer(E=>c(E));let l=E=>x(d((y,u)=>{f(E)(y,p=>{if(p._tag==="Failure"){s(p),u(p);return}let[D,ye]=p.value;u(R.succeed([D,l(ye)]));});}));B().fork(f(l(o))).join(n);});})}}function _e(t,e){throw new Error(e??`Unexpected value: ${String(t)}`)}function _(t,e){switch(t._tag){case "Empty":return V();case "Emit":return Ee(I(t.value,e));case "FromPull":return x(I(t.pull,([n,r])=>[e(n),_(r,e)]));case "Concat":return q(_(t.left,e),_(t.right,e));case "Flatten":{let n=_(t.stream,r=>_(r,e));return X(n)}case "Merge":return Fe(_(t.left,e),_(t.right,e),t.flip);case "Scoped":return le(I(t.acquire,n=>_(n,e)),t.release);case "Managed":return be(I(t.acquire,({stream:n,release:r})=>({stream:_(n,e),release:r})));default:return _e(t)}}function Ut(t,e){let n=r=>x(r>e?S(C):A([r,n(r+1)]));return n(t)}function ke(t,e){let n=m(O(f(t),r=>K(r)),r=>S(r),([r,a])=>m(O(f(e),s=>K(s)),s=>S(s),([s,i])=>A([[r,s],ke(a,i)])));return x(n)}function Mt(t,e){let n=r=>m(O(f(r),a=>K(a)),a=>a._tag==="None"?A(void 0):S(a),([a,s])=>h(O(e(a),i=>w(i)),()=>n(s)));return m(n(t),r=>r._tag==="None"?A(void 0):S(r.value),()=>A(void 0))}function zt(t){let e=V();for(let n=t.length-1;n>=0;n--){let r=Ee(G(t[n]));e=q(r,e);}return e}function jt(t){let e=(n,r)=>m(f(n),a=>a._tag==="None"?G(r):U(a),([a,s])=>e(s,[...r,a]));return L(e(t,[]),n=>{if(n._tag==="Some")return n.value;throw new Error("unreachable: stream end handled as success")})}function Ie(t,e){let n=d((r,a)=>{t.read().then(({done:s,value:i})=>{if(s){a({_tag:"Failure",cause:{_tag:"Fail",error:C}});return}a({_tag:"Success",value:[i,x(n)]});}).catch(s=>{a({_tag:"Failure",cause:{_tag:"Fail",error:w(e(s))}});});});return x(n)}function qt(t,e){if(!t)return V();let n;return le(ee(()=>(n=t.getReader(),Ie(n,e))),()=>N(()=>{try{n?.cancel();}catch{}}))}export{le as $,L as A,ze as B,J as C,je as D,de as E,M as F,$ as G,T as H,z as I,b as J,B as K,ge as L,P as M,rt as N,Q as O,at as P,st as Q,ie as R,Z as S,xe as T,ht as U,vt as V,xt as W,bt as X,ce as Y,K as Z,x as _,W as a,be as aa,m as b,Fe as ba,Oe as c,V as ca,O as d,Ee as da,k as e,q as ea,A as f,X as fa,S as g,Dt as ga,N as h,f as ha,Ce as i,_e as ia,d as j,_ as ja,Y as k,Ut as ka,h as l,ke as la,we as m,Mt as ma,Ze as n,zt as na,Ne as o,jt as oa,Be as p,qt as pa,Te as q,C as r,w as s,g as t,R as u,G as v,U as w,ee as x,I as y,te as z};
@@ -1 +0,0 @@
1
- import {Q as Q$1,pa,b as b$1,q,o,g as g$1,l,f,P}from'../chunk-CNA5AQHG.mjs';var b={make(t,e){return {get:t,set:e}},over(t,e){return r=>t.set(e(t.get(r)))(r)},compose(t,e){return b.make(r=>t.get(e.get(r)),r=>n=>e.set(t.set(r)(e.get(n)))(n))}};var A={headers:b.make(t=>t.headers??{},t=>e=>({...e,headers:t}))};var I=t=>e=>b.over(A.headers,r=>({...r,...t}))(e),C=t=>e=>b.over(A.headers,r=>({...t,...r}))(e),g=(t,e)=>r=>b.over(A.headers,n=>n[t]?n:{...n,[t]:e})(r);var v=t=>typeof t=="object"&&t!==null&&"_tag"in t,J=t=>v(t)?t:typeof t=="object"&&t!==null&&t.name==="AbortError"?{_tag:"Abort"}:{_tag:"FetchError",message:String(t)},M=t=>Q$1(e=>new Promise((r,n)=>{if(e.aborted)return n({_tag:"Abort"});let u=setTimeout(r,t),p=()=>{clearTimeout(u),n({_tag:"Abort"});};e.addEventListener("abort",p,{once:true});}),J);var lt=t=>e=>T(t(e)),T=t=>Object.assign((e=>t(e)),{with:e=>T(e(t))}),O=t=>t instanceof DOMException&&t.name==="AbortError"?{_tag:"Abort"}:typeof t=="object"&&t&&"_tag"in t?t:{_tag:"FetchError",message:String(t)},k=t=>{if(t){if(typeof Headers<"u"&&t instanceof Headers){let e={};return t.forEach((r,n)=>e[n]=r),e}if(Array.isArray(t))return Object.fromEntries(t);if(typeof t=="object")return {...t}}},D=t=>e=>{let r=Object.keys(t).length?C(t)(e):e,n=k(e.init?.headers);return n&&Object.keys(n).length&&(r=C(n)(r)),r};function N(t={}){let e=t.baseUrl??"",r=t.headers??{},n=D(r);return u=>Q$1(async p=>{let y=n(u),i;try{i=new URL(y.url,e);}catch{throw {_tag:"BadUrl",message:`URL inv\xE1lida: ${y.url}`}}let a=performance.now(),s=await fetch(i,{...y.init??{},method:y.method,headers:A.headers.get(y),body:y.body,signal:p}),c={};s.headers.forEach((d,m)=>c[m]=d);let o=pa(s.body,O);return {status:s.status,statusText:s.statusText,headers:c,body:o,ms:Math.round(performance.now()-a)}},O)}function _(t={}){let e=t.baseUrl??"",r=t.headers??{},n=D(r);return T(p=>Q$1(async y=>{let i=n(p),a;try{a=new URL(i.url,e);}catch{throw {_tag:"BadUrl",message:`URL inv\xE1lida: ${i.url}`}}let s=performance.now(),c=await fetch(a,{...i.init??{},method:i.method,headers:A.headers.get(i),body:i.body,signal:y}),o=await c.text(),d={};return c.headers.forEach((m,H)=>d[H]=m),{status:c.status,statusText:c.statusText,headers:d,bodyText:o,ms:Math.round(performance.now()-s)}},O))}var G=(t,e,r)=>Math.max(e,Math.min(r,t)),z=t=>t._tag==="FetchError",Z=t=>t===408||t===429||t===500||t===502||t===503||t===504,F=(t,e,r)=>{let n=e*Math.pow(2,t),u=G(n,0,r);return Math.floor(Math.random()*u)},$=t=>{let e=Object.keys(t).find(p=>p.toLowerCase()==="retry-after");if(!e)return;let r=t[e]?.trim();if(!r)return;let n=Number(r);if(Number.isFinite(n))return Math.max(0,Math.floor(n*1e3));let u=Date.parse(r);if(Number.isFinite(u))return Math.max(0,u-Date.now())},U=t=>e=>(r=>{let n=u=>b$1(e(r),p=>{if(p._tag==="Abort"||p._tag==="BadUrl")return g$1(p);if(!(u<t.maxRetries&&(t.retryOnError??z)(p)))return g$1(p);let i=F(u,t.baseDelayMs,t.maxDelayMs);return l(M(i),()=>n(u+1))},p=>{if(!(u<t.maxRetries&&(t.retryOnStatus??Z)(p.status)))return f(p);let a=$(p.headers)??F(u,t.baseDelayMs,t.maxDelayMs);return l(M(a),()=>n(u+1))});return n(0)});var K=["GET","HEAD","OPTIONS"],Q=t=>t===408||t===429||t===500||t===502||t===503||t===504,V=t=>t._tag==="FetchError";var X=(t,e,r)=>Math.max(e,Math.min(r,t)),L=(t,e,r)=>{let n=Math.max(0,e),u=Math.max(0,r),p=n*Math.pow(2,t),y=X(p,0,u);return Math.floor(Math.random()*y)},Y=(t,e)=>{let r=Object.keys(t).find(n=>n.toLowerCase()===e.toLowerCase());return r?t[r]:void 0},tt=t=>{let e=Y(t,"retry-after")?.trim();if(!e)return;let r=Number(e);if(Number.isFinite(r))return Math.max(0,Math.floor(r*1e3));let n=Date.parse(e);if(Number.isFinite(n))return Math.max(0,n-Date.now())},j=t=>e=>{let r=t.retryOnMethods??K,n=t.retryOnStatus??Q,u=t.retryOnError??V,p=i=>r.includes(i.method),y=(i,a)=>p(i)?b$1(e(i),s=>{if(s._tag==="Abort"||s._tag==="BadUrl")return g$1(s);if(!(a<t.maxRetries&&u(s)))return g$1(s);let o=L(a,t.baseDelayMs,t.maxDelayMs);return l(M(o),()=>y(i,a+1))},s=>{if(!(a<t.maxRetries&&n(s.status)))return f(s);let d=tt(s.headers)??L(a,t.baseDelayMs,t.maxDelayMs);return l(M(d),()=>y(i,a+1))}):e(i);return i=>y(i,0)};var et=(t,e)=>{try{return new URL(e,t??"").toString()}catch{return (t??"")+e}},B=(t={})=>{let e=_(t),r=a=>o((s,c)=>P(s,c))(a),n=a=>e(a),u=a=>{let{headers:s,...c}=a??{};return {headers:k(s),init:c}},p=a=>s=>a?I(a)(s):s;return {cfg:t,wire:e,withPromise:r,requestRaw:n,splitInit:u,applyInitHeaders:p,buildReq:(a,s,c,o)=>{let d=u(c),m={method:a,url:s,...o&&o.length>0?{body:o}:{},init:d.init};return p(d.headers)(m)},toResponse:(a,s)=>({status:a.status,statusText:a.statusText,headers:a.headers,body:s})}};function _t(t={}){let e=B(t),r=n=>{let u=o=>n(o),p=o=>e.withPromise(u(o));return {request:p,get:(o,d)=>p(e.buildReq("GET",o,d)),post:(o,d,m)=>p(e.buildReq("POST",o,m,d)),getText:(o,d)=>{let m=e.buildReq("GET",o,d);return e.withPromise(q(u(m),H=>e.toResponse(H,H.bodyText)))},getJson:(o,d)=>{let m=e.buildReq("GET",o,d),H=g("accept","application/json")(m);return e.withPromise(q(u(H),l=>e.toResponse(l,JSON.parse(l.bodyText))))},postJson:(o,d,m)=>{let H=e.buildReq("POST",o,m,JSON.stringify(d??{})),l=g("content-type","application/json")(g("accept","application/json")(H));return e.withPromise(q(u(l),P=>e.toResponse(P,JSON.parse(P.bodyText))))},with:o=>r(n.with(o)),withRetry:o=>r(n.with(j(o))),wire:n}};return r(e.wire)}function Ut(t={}){let e=B(t),r=(s,c,o)=>({request:s,urlFinal:et(e.cfg.baseUrl,s.url),startedAt:o,durationMs:c.ms}),n=s=>{let c=Date.now();return e.withPromise(q(e.requestRaw(s),o=>({wire:o,meta:r(s,o,c)})))};return {request:n,get:(s,c)=>{let o=e.buildReq("GET",s,c);return n(o)},getText:(s,c)=>{let o=e.buildReq("GET",s,c),d=Date.now();return e.withPromise(q(e.requestRaw(o),m=>({wire:m,response:e.toResponse(m,m.bodyText),meta:r(o,m,d)})))},getJson:(s,c)=>{let o=e.buildReq("GET",s,c),d=g("accept","application/json")(o),m=Date.now();return e.withPromise(q(e.requestRaw(d),H=>({wire:H,response:e.toResponse(H,JSON.parse(H.bodyText)),meta:r(d,H,m)})))},post:(s,c,o)=>{let d=e.buildReq("POST",s,o,c);return n(d)},postJson:(s,c,o)=>{let d=e.buildReq("POST",s,o,JSON.stringify(c??{})),m=g("content-type","application/json")(g("accept","application/json")(d)),H=Date.now();return e.withPromise(q(e.requestRaw(m),l=>({wire:l,response:e.toResponse(l,JSON.parse(l.bodyText)),meta:r(m,l,H)})))}}}function Lt(t={}){let e=N(t),r=n=>{let u=i=>o((a,s)=>P(a,s))(i),p=i=>u(n(i)),y=(i,a)=>{let s={method:"GET",url:i,init:a},c=g("accept","*/*")(s);return p(c)};return {request:p,getStream:y,get:y,with:i=>r(i(n)),withRetry:i=>r(U(i)(n)),wire:n}};return r(e)}export{T as decorate,_t as httpClient,Lt as httpClientStream,Ut as httpClientWithMeta,_ as makeHttp,N as makeHttpStream,k as normalizeHeadersInit,lt as withMiddleware,U as withRetryStream};
package/dist/index.mjs DELETED
@@ -1 +0,0 @@
1
- import {h,F,j,_,i,l,f,ma,aa,d,r,ca,K,s,b,ha,g,Z as Z$1,N as N$1}from'./chunk-CNA5AQHG.mjs';export{a as Async,t as Cause,u as Exit,E as PushStatus,F as RingBuffer,M as Runtime,I as RuntimeFiber,G as Scheduler,S as Scope,m as acquireRelease,ia as assertNever,j as async,c as asyncCatchAll,g as asyncFail,l as asyncFlatMap,b as asyncFold,n as asyncInterruptible,k as asyncMap,d as asyncMapError,f as asyncSucceed,h as asyncSync,i as asyncTotal,B as catchAll,X as collectAllPar,oa as collectStream,ea as concatStream,da as emitStream,ca as emptyStream,D as end,w as fail,z as flatMap,fa as flattenStream,ma as foreachStream,N as fork,na as fromArray,Q as fromPromiseAbortable,_ as fromPull,J as getCurrentFiber,H as globalScheduler,aa as managedStream,y as map,p as mapAsync,A as mapError,ja as mapStream,q as mapTryAsync,ga as merge,ba as mergeStream,r as none,C as orElseOptional,V as race,Y as raceWith,ka as rangeStream,s as some,pa as streamFromReadableStream,v as succeed,x as sync,P as toPromise,ha as uncons,e as unit,K as unsafeGetCurrentRuntime,O as unsafeRunAsync,R as unsafeRunFoldWithEnv,$ as unwrapScoped,Z as widenOpt,o as withAsyncPromise,L as withCurrentFiber,U as withScope,T as withScopeAsync,la as zip,W as zipPar}from'./chunk-CNA5AQHG.mjs';function ze(){let t=false,e=new Set;return {isCancelled:()=>t,onCancel:r=>{if(t){try{r();}catch{}return ()=>{}}return e.add(r),()=>{e.delete(r);}},cancel:()=>{t||(t=true,e.forEach(r=>r()),e.clear());}}}function De(t,e){return t.onCancel(()=>e.abort())}var v=class{head=null;tail=null;len=0;get length(){return this.len}isEmpty(){return this.len===0}push(e){let n={value:e,next:null,prev:this.tail,removed:false};return this.tail?this.tail.next=n:this.head=n,this.tail=n,this.len++,n}shift(){let e=this.head;if(e)return this.unlink(e),e.value}remove(e){e.removed||this.unlink(e);}unlink(e){e.removed=true;let{prev:n,next:r}=e;n?n.next=r:this.head=r,r?r.prev=n:this.tail=n,e.next=null,e.prev=null,this.len--;}};function Z(t,e="backpressure"){return h(()=>I(t,e))}function I(t,e){let n=new F(t),r=false,s={_tag:"QueueClosed"},o=new v,a=new v,l=()=>{for(;a.length>0&&n.length>0;){let u=a.shift(),f=n.shift();u({_tag:"Success",value:f});}for(;o.length>0&&n.length<t&&a.length===0;){let u=o.shift();n.push(u.a),u.cb(true);}for(;a.length>0&&o.length>0;){let u=a.shift(),f=o.shift();f.cb(true),u({_tag:"Success",value:f.a});}};return {size:()=>n.length,shutdown:()=>{if(!r){for(r=true;a.length>0;)a.shift()({_tag:"Failure",cause:{_tag:"Fail",error:s}});for(;o.length>0;)o.shift().cb(false);n.clear();}},offer:u=>j((f,i)=>{if(r){i({_tag:"Success",value:false});return}if(a.length>0){a.shift()({_tag:"Success",value:u}),i({_tag:"Success",value:true});return}if(n.length<t){n.push(u),i({_tag:"Success",value:true}),l();return}if(e==="dropping"){i({_tag:"Success",value:false});return}if(e==="sliding"){n.shift(),n.push(u),i({_tag:"Success",value:true}),l();return}let m=o.push({a:u,cb:A=>i({_tag:"Success",value:A})});return ()=>{o.remove(m);}}),take:()=>j((u,f)=>{if(n.length>0){let A=n.shift();f({_tag:"Success",value:A}),l();return}if(o.length>0){let A=o.shift();A.cb(true),f({_tag:"Success",value:A.a});return}if(r){f({_tag:"Failure",cause:{_tag:"Fail",error:s}});return}let i=A=>f(A),m=a.push(i);return ()=>{a.remove(m);}})}}function M(t,e,n="backpressure"){let r$1=false,s$1=null,o=null,a=t,l$1=()=>b(ha(a),i=>f(i._tag==="None"?{_tag:"End"}:{_tag:"Fail",error:i.value}),([i,m])=>h(()=>(a=m,{_tag:"Elem",value:i}))),p=i=>l(Z(e,n),m=>{s$1=m;let S=()=>l(l$1(),A=>l(s$1.offer(A),()=>A._tag==="End"||A._tag==="Fail"?f(void 0):S()));return o=N$1(S(),i),r$1=true,f(void 0)}),u={_tag:"Async",register:(i,m)=>{(()=>{if(!r$1){K().fork(p(i)).join(()=>{f$1(i,m);});return}f$1(i,m);})();}};function f$1(i,m){let S=s$1.take();K().fork(S).join(A=>{if(A._tag!=="Success")return;let w=A.value;switch(w._tag){case "Elem":m({_tag:"Success",value:[w.value,_(u)]});return;case "End":o?.interrupt?.(),m({_tag:"Failure",cause:{_tag:"Fail",error:r}});return;case "Fail":o?.interrupt?.(),m({_tag:"Failure",cause:{_tag:"Fail",error:s(w.error)}});return}});}return _(u)}var N=t=>t==="BackPressure"?"backpressure":t==="Dropping"?"dropping":"sliding";function z(t,e="BackPressure"){let n=new Set,r=false,s=p=>{if(r)return f(false);let u=Array.from(n),f$1=f(true);return u.forEach(i=>{f$1=l(f$1,m=>l(i.offer(p),S=>f(m&&S)));}),f$1};return {publish:s,publishAll:p=>{let u=f(true),f$1=p[Symbol.iterator]();for(;;){let i=f$1.next();if(i.done)break;let m=i.value;u=l(u,S=>l(s(m),A=>f(S&&A)));}return u},subscribe:()=>r?i(()=>{throw {_tag:"HubClosed"}}):l(Z(t,N(e)),p=>h(()=>(n.add(p),{...p,unsubscribe:()=>{n.has(p)&&(n.delete(p),p.shutdown());}}))),shutdown:()=>h(()=>{r||(r=true,Array.from(n).forEach(p=>p.shutdown()),n.clear());})}}var dn=z;function Rn(t,e){return ma(t,n=>l(e.publish(n),()=>f(void 0)))}function Sn(t){return aa(l(t.subscribe(),e=>{let n=_(l(d(e.take(),r$1=>r),r=>f([r,n])));return f({stream:n,release:r=>h(()=>e.unsubscribe())})}))}function Cn(t,e){return e(t)}function D(t,e){return(n=>e(t(n)))}function On(t,e){return D(e,t)}function Pn(){return(t=>t)}function Bn(t){return(e=>{let n=r=>_(b(ha(r),s=>g(s),([s,o])=>f([t(s),n(o)])));return n(e)})}function Tn(t){return(e=>{let n=s=>b(ha(s),o=>g(o),([o,a])=>t(o)?f([o,r(a)]):n(a)),r=s=>_(n(s));return r(e)})}function Fn(t){return(e=>{let n=s=>b(ha(s),o=>g(o),([o,a])=>{let l=t(o);return l._tag==="Some"?f([l.value,r(a)]):n(a)}),r=s=>_(n(s));return r(e)})}function Hn(t){let e=Math.max(0,t|0);return(n=>{let r=(s,o)=>o<=0?ca():_(b(ha(s),a=>g(a),([a,l])=>f([a,r(l,o-1)])));return r(n,e)})}function Qn(t){let e=Math.max(0,t|0);return(n=>{let r=(s,o)=>o<=0?s:_(b(ha(s),a=>g(a),([a,l])=>ha(r(l,o-1))));return r(n,e)})}function W(t){return(e=>{let n=s$1=>d(s$1,o=>s(o)),r=s=>_(b(d(ha(s),o=>Z$1(o)),o=>g(o),([o,a])=>b(n(t(o)),l=>g(l),l=>f([l,r(a)]))));return r(e)})}function Mn(t){return W(e=>l(t(e),()=>f(e)))}function In(t,e="backpressure"){return(n=>M(n,t,e))}function Nn(t){let e=Math.max(1,t|0);return(n=>{let r=(o,a,l)=>a<=0?f({chunk:l,rest:o}):b(ha(o),p=>p._tag==="None"?f({chunk:l,rest:ca()}):g(p),([p,u])=>r(u,a-1,[...l,p])),s=o=>_(b(ha(o),a=>g(a),([a,l$1])=>l(r(l$1,e-1,[a]),({chunk:p,rest:u})=>f([p,s(u)]))));return s(n)})}export{v as LinkedQueue,D as andThen,Z as bounded,dn as broadcast,Rn as broadcastToHub,M as buffer,In as bufferP,On as compose,Qn as dropP,Fn as filterMapP,Tn as filterP,Sn as fromHub,Nn as groupedP,Pn as identity,De as linkAbortController,ze as makeCancelToken,z as makeHub,W as mapEffectP,Bn as mapP,Hn as takeP,Mn as tapEffectP,Cn as via};