brass-runtime 1.9.2 → 1.9.4

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.
@@ -0,0 +1 @@
1
+ function R(t,e,n){return {_tag:"Fold",first:t,onFailure:e,onSuccess:n}}function Ae(t,e){return R(t,n=>e(n),n=>E(n))}function x(t,e){return R(t,n=>h(e(n)),n=>E(n))}var k=()=>E(void 0),E=t=>({_tag:"Succeed",value:t}),h=t=>({_tag:"Fail",error:t}),F=t=>({_tag:"Sync",thunk:t}),Ee=t=>F(()=>t()),A=t=>({_tag:"Async",register:t});function W(t,e){return p(t,n=>E(e(n)))}function p(t,e){return {_tag:"FlatMap",first:t,andThen:e}}function pe(t,e,n){return p(t,r=>(n.addFinalizer(a=>e(r,a)),E(r)))}function ye(t){return A(t)}var de=t=>e=>{let n=e;return n.toPromise||(n.toPromise=r=>t(e,r),n.unsafeRunPromise=()=>t(e,{})),n},Re=(t,e)=>p(t,n=>E(e(n))),fe=(t,e)=>p(t,n=>F(()=>e(n)));var b={_tag:"None"},I=t=>({_tag:"Some",value:t});var z=t=>E(t),B=t=>h(t),H=t=>F(e=>t(e)),Z=(t,e)=>W(t,e),G=(t,e)=>p(t,n=>e(n)),M=(t,e)=>x(t,e),ve=(t,e)=>R(t,n=>e(n),n=>E(n));function U(t,e){return R(t,n=>n._tag==="Some"?h(n):e(),n=>E(n))}var xe=()=>B(b);var P=class{buf;head=0;tail=0;size_=0;constructor(e=1024){let n=Math.max(2,this.nextPow2(e));this.buf=new Array(n);}get length(){return this.size_}get capacity(){return this.buf.length}isEmpty(){return this.size_===0}push(e){this.size_===this.buf.length&&this.grow(),this.buf[this.tail]=e,this.tail=this.tail+1&this.buf.length-1,this.size_++;}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=new Array(e.length*2);for(let r=0;r<this.size_;r++)n[r]=e[this.head+r&e.length-1];this.buf=n,this.head=0,this.tail=this.size_;}nextPow2(e){let n=1;for(;n<e;)n<<=1;return n}};var Q=2048,$=4096,Y=(()=>{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)})(),j=class{queue=new P(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>$?"macro":"micro";this.requestFlush(r);}}requestFlush(e){e==="micro"?queueMicrotask(()=>this.flush()):Y(()=>this.flush());}flush(){if(this.flushing)return;this.flushing=true,this.scheduled=false;let e=0;try{for(;e<Q;){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>=Q||this.queue.length>$?"macro":"micro";this.requestFlush(n);}}}},J=new j;var m={CONTINUE:"Continue",SUSPEND:"Suspend",DONE:"Done"},g={QUEUED:"Queued",RUNNING:"Running",SUSPENDED:"Suspended",DONE:"Done"},ee=1,te=1024;function ne(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 N=class{constructor(e,n,r){this.scheduler=r;this.id=ee++,this.current=e,this.env=n;}id;closing=null;finishing=false;runState=g.RUNNING;interrupted=false;result=null;joiners=[];current;env;stack=[];fiberFinalizers=[];finalizersDrained=false;addFinalizer(e){this.fiberFinalizers.push(e);}status(){return this.result==null?"Running":this.interrupted?"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===g.DONE||this.runState===g.QUEUED||(this.runState=g.QUEUED,this.scheduler.schedule(()=>{if(this.runState===g.DONE)return;switch(this.runState=g.RUNNING,this.step()){case m.CONTINUE:this.schedule("continue");return;case m.SUSPEND:this.runState=g.SUSPENDED;return;case m.DONE:this.runState=g.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{n(e);}catch{}}}notify(e){if(this.result==null&&this.closing==null){this.finishing=true,this.closing=e,this.runFinalizersOnce(e),this.result=e;for(let n of this.joiners)n(e);this.joiners.length=0;}}onSuccess(e){let n=this.stack.pop();if(!n){this.notify({_tag:"Success",value:e});return}this.current=n._tag==="SuccessCont"?n.k(e):n.onSuccess(e);}onFailure(e){for(;this.stack.length>0;){let n=this.stack.pop();if(n._tag==="FoldCont"){this.current=n.onFailure(e);return}}this.notify({_tag:"Failure",error:e});}step(){let e=te;for(;e-- >0;){if(this.result!=null)return m.DONE;if(this.interrupted&&this.closing==null)return this.notify({_tag:"Failure",error:{_tag:"Interrupted"}}),m.DONE;let n=ne(this.current);switch(n._tag){case "Succeed":{this.onSuccess(n.value);break}case "Fail":{this.onFailure(n.error);break}case "Sync":{try{let r=n.thunk(this.env);this.onSuccess(r);}catch(r){this.onFailure(r);}break}case "FlatMap":{this.stack.push({_tag:"SuccessCont",k:n.andThen}),this.current=n.first;break}case "Fold":{this.stack.push({_tag:"FoldCont",onFailure:n.onFailure,onSuccess:n.onSuccess}),this.current=n.first;break}case "Async":{if(this.finishing)return this.result!=null?m.DONE:m.CONTINUE;let r=false,a=i=>{r||(r=true,!(this.result!=null||this.closing!=null)&&(this.current=i._tag==="Success"?{_tag:"Succeed",value:i.value}:{_tag:"Fail",error:i.error},this.schedule("async-resume")));},o=n.register(this.env,a);return typeof o=="function"&&this.addFinalizer(()=>{r=true;try{o();}catch{}}),m.SUSPEND}}}return this.result!=null?m.DONE:m.CONTINUE}};function De(t){return A((e,n)=>{let r=false,a=s=>{r||(r=true,n(s));},o=s=>a({_tag:"Failure",error:s instanceof Error?s:new Error(String(s))}),i=s=>a({_tag:"Success",value:s});try{typeof t=="function"&&t.length>=1?t((s,c)=>s?o(s):i(c)):t().then(i,o);}catch(s){o(s);}})}function w(t,e,n=J){let r=new N(t,e,n);return r.schedule("initial-step"),r}function Te(t,e,n){w(t,e).join(n);}function ze(t,e){return new Promise((n,r)=>{w(t,e).join(o=>{let i=o;i._tag==="Success"?n(i.value):r(i.error);});})}function Me(t,e){return A((n,r)=>{t(n).then(a=>r({_tag:"Success",value:a})).catch(a=>r({_tag:"Failure",error:e(a)}));})}function Ue(t){return A((e,n)=>{let r=false,a=o=>{r||(r=true,n(o));};try{t((o,i)=>{a(o?{_tag:"Failure",error:o}:{_tag:"Success",value:i});});}catch(o){a({_tag:"Failure",error:o instanceof Error?o:new Error(String(o))});}})}function je(t){return re((n,r)=>t.length===1?t(r):t(n,r),n=>ae(n)?{_tag:"Abort"}:{_tag:"PromiseRejected",reason:n})}function re(t,e){return A((n,r)=>{let a=new AbortController,o=false,i=s=>{o||(o=true,r(s));};try{(t.length===1?t(a.signal):t(n,a.signal)).then(c=>i({_tag:"Success",value:c})).catch(c=>i({_tag:"Failure",error:e(c)}));}catch(s){i({_tag:"Failure",error:e(s)});}return ()=>{o=true,a.abort();}})}var ae=t=>typeof t=="object"&&t!==null&&"name"in t&&t.name==="AbortError";var oe=1;function se(t){return A((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});});})}function ie(t){return R(t,()=>k(),()=>k())}var _=class t{constructor(e){this.env=e;this.id=oe++;}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.env);return this.subScopes.add(e),e}fork(e,n){if(this.closed)throw new Error("Scope closed");let r=w(e,n);return this.children.add(r),r.join(()=>{this.children.delete(r);}),r}close(e={_tag:"Success",value:void 0}){w(this.closeAsync(e),this.env);}closeAsync(e={_tag:"Success",value:void 0},n={}){return A((r,a)=>{if(this.closed){a({_tag:"Success",value:void 0});return}this.closed=true;let o=Array.from(this.children),i=Array.from(this.subScopes);this.children.clear(),this.subScopes.clear();for(let l of o)try{l.interrupt();}catch{}let s=k();for(let l of i)s=p(s,()=>l.closeAsync(e,n));for(;this.finalizers.length>0;){let l=this.finalizers.pop();s=p(s,()=>ie(l(e)));}n.awaitChildren&&(s=p(s,()=>se(o))),w(s,this.env).join(()=>a({_tag:"Success",value:void 0}));})}};function Ge(t){let e=new _({});try{return t(e)}finally{e.close();}}function Qe(t){return A((e,n)=>{let r=new _(e);r.fork(t(r),e).join(o=>{try{r.close(o);}catch(i){n({_tag:"Failure",error:i});return}n(o);});})}function Ve(t,e,n){return A((r,a)=>{let o=n.subScope(),i=false,s=f=>{i||(i=true,o.close(f),a(f));},c=o.fork(t,r),l=o.fork(e,r);c.join(s),l.join(s);})}function Xe(t,e,n){return A((r,a)=>{let o=n.subScope(),i=null,s=null,c=false,l=()=>{if(!i||!s||c)return;if(c=true,i._tag==="Success"&&s._tag==="Success"){o.close({_tag:"Success",value:void 0}),a({_tag:"Success",value:[i.value,s.value]});return}let u;if(i._tag==="Failure")u=i.error;else if(s._tag==="Failure")u=s.error;else throw new Error("zipPar: unreachable state (no Failure exit)");let S={_tag:"Failure",error:u};o.close(S),a(S);},f=o.fork(t,r),d=o.fork(e,r);f.join(u=>{i=u,l();}),d.join(u=>{s=u,l();});})}function Ye(t,e){return A((n,r)=>{let a=e.subScope(),o=new Array(t.length),i=0,s=false;t.forEach((c,l)=>{a.fork(c,n).join(d=>{if(!s){if(d._tag==="Failure"){s=true;let u={_tag:"Failure",error:d.error};a.close(u),r(u);return}if(o[l]=d.value,i++,i===t.length){s=true;let u={_tag:"Success",value:o};a.close({_tag:"Success",value:void 0}),r(u);}}});});})}function K(t,e,n,r,a){return A((o,i)=>{let s=n.subScope(),c=false,l=s.fork(t,o),f=s.fork(e,o),d=u=>{s.fork(u,o).join(S=>{s.close(S),i(S);});};l.join(u=>{c||(c=true,d(r(u,f,s)));}),f.join(u=>{c||(c=true,d(a(u,l,s)));});})}var q=t=>t._tag==="None"?b:I(t.value),v=t=>({_tag:"FromPull",pull:t}),ce=(t,e)=>({_tag:"Scoped",acquire:t,release:e}),At=t=>({_tag:"Scoped",acquire:p(t,e=>E(e.stream)),release:e=>p(t,n=>n.release(e))}),Et=(t,e,n=true)=>({_tag:"Merge",left:t,right:e,flip:n}),T=()=>({_tag:"Empty"}),X=t=>({_tag:"Emit",value:t}),C=(t,e)=>({_tag:"Concat",left:t,right:e}),L=t=>({_tag:"Flatten",stream:t});function V(t,e,n,r,a){return (o,i,s)=>{if(o._tag,o._tag,o._tag==="Success"){let[f,d]=o.value;i.interrupt();let u=v(t==="L"?D(d,n):D(e,d));return E([f,u])}let c=o.error;if(typeof c=="object"&&c!==null&&c._tag==="Interrupted")return h(c);let l=c;return l._tag==="None"?y(t==="L"?n:e):h(l)}}function D(t,e,n,r){return A((a,o)=>{let s=new _(a),c=y(t),l=y(e),f=V("L",t,e),d=V("R",t,e),u=K(c,l,s,f,d);s.fork(u,a).join(S=>{s.close(S),o(S);});})}function pt(t,e){return v(D(t,e))}function y(t){switch(t._tag){case "Empty":return B(b);case "Emit":return Z(M(t.value,e=>I(e)),e=>[e,T()]);case "FromPull":return t.pull;case "Concat":return U(Z(y(t.left),([e,n])=>[e,C(n,t.right)]),()=>y(t.right));case "Flatten":return G(y(t.stream),([e,n])=>U(Z(y(e),([r,a])=>[r,C(a,L(n))]),()=>y(L(n))));case "Merge":return D(t.left,t.right,t.flip);case "Scoped":return A((e,n)=>{let r=new _(e);r.addFinalizer(a=>t.release(a)),r.fork(t.acquire,e).join(a=>{if(a._tag==="Failure"){r.close(a),n({_tag:"Failure",error:I(a.error)});return}let o=a.value;y(o)(e,s=>{r.close(s),n(s);});});})}}function O(t,e){switch(t._tag){case "Empty":return T();case "Emit":return X(Z(t.value,e));case "FromPull":return v(Z(t.pull,([n,r])=>[e(n),O(r,e)]));case "Concat":return C(O(t.left,e),O(t.right,e));case "Flatten":{let n=O(t.stream,r=>O(r,e));return L(n)}}}function yt(t,e){let n=r=>v(r>e?h(b):E([r,n(r+1)]));return n(t)}function ue(t,e){let n=R(x(y(t),r=>q(r)),r=>h(r),([r,a])=>R(x(y(e),o=>q(o)),o=>h(o),([o,i])=>E([[r,o],ue(a,i)])));return v(n)}function dt(t,e){let n=r=>R(x(y(r),a=>q(a)),a=>a._tag==="None"?E(void 0):h(a),([a,o])=>p(x(e(a),i=>I(i)),()=>n(o)));return R(n(t),r=>r._tag==="None"?E(void 0):h(r.value),()=>E(void 0))}function Rt(t){let e=T();for(let n=t.length-1;n>=0;n--){let r=X(z(t[n]));e=C(r,e);}return e}function ft(t){let e=(n,r)=>R(y(n),a=>a._tag==="None"?z(r):B(a),([a,o])=>e(o,[...r,a]));return M(e(t,[]),n=>{if(n._tag==="Some")return n.value;throw new Error("unreachable: stream end handled as success")})}function le(t,e){let n=A((r,a)=>{t.read().then(({done:o,value:i})=>{if(o){a({_tag:"Failure",error:b});return}a({_tag:"Success",value:[i,v(n)]});}).catch(o=>{a({_tag:"Failure",error:I(e(o))});});});return v(n)}function ht(t,e){if(!t)return T();let n;return ce(H(()=>(n=t.getReader(),le(n,e))),()=>F(()=>{try{n?.cancel();}catch{}}))}export{C as $,xe as A,P as B,j as C,J as D,N as E,De as F,w as G,Te as H,ze as I,Me as J,Ue as K,je as L,re as M,_ as N,Ge as O,Qe as P,Ve as Q,Xe as R,Ye as S,K as T,q as U,v as V,ce as W,At as X,Et as Y,T as Z,X as _,R as a,L as aa,Ae as b,pt as ba,x as c,y as ca,k as d,O as da,E as e,yt as ea,h as f,ue as fa,F as g,dt as ga,Ee as h,Rt as ha,A as i,ft as ia,W as j,ht as ja,p as k,pe as l,ye as m,de as n,Re as o,fe as p,b as q,I as r,z as s,B as t,H as u,Z as v,G as w,M as x,ve as y,U as z};
@@ -0,0 +1 @@
1
+ 'use strict';function R(t,e,n){return {_tag:"Fold",first:t,onFailure:e,onSuccess:n}}function Ae(t,e){return R(t,n=>e(n),n=>E(n))}function x(t,e){return R(t,n=>h(e(n)),n=>E(n))}var k=()=>E(void 0),E=t=>({_tag:"Succeed",value:t}),h=t=>({_tag:"Fail",error:t}),F=t=>({_tag:"Sync",thunk:t}),Ee=t=>F(()=>t()),A=t=>({_tag:"Async",register:t});function W(t,e){return p(t,n=>E(e(n)))}function p(t,e){return {_tag:"FlatMap",first:t,andThen:e}}function pe(t,e,n){return p(t,r=>(n.addFinalizer(a=>e(r,a)),E(r)))}function ye(t){return A(t)}var de=t=>e=>{let n=e;return n.toPromise||(n.toPromise=r=>t(e,r),n.unsafeRunPromise=()=>t(e,{})),n},Re=(t,e)=>p(t,n=>E(e(n))),fe=(t,e)=>p(t,n=>F(()=>e(n)));var b={_tag:"None"},I=t=>({_tag:"Some",value:t});var z=t=>E(t),B=t=>h(t),H=t=>F(e=>t(e)),Z=(t,e)=>W(t,e),G=(t,e)=>p(t,n=>e(n)),M=(t,e)=>x(t,e),ve=(t,e)=>R(t,n=>e(n),n=>E(n));function U(t,e){return R(t,n=>n._tag==="Some"?h(n):e(),n=>E(n))}var xe=()=>B(b);var P=class{buf;head=0;tail=0;size_=0;constructor(e=1024){let n=Math.max(2,this.nextPow2(e));this.buf=new Array(n);}get length(){return this.size_}get capacity(){return this.buf.length}isEmpty(){return this.size_===0}push(e){this.size_===this.buf.length&&this.grow(),this.buf[this.tail]=e,this.tail=this.tail+1&this.buf.length-1,this.size_++;}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=new Array(e.length*2);for(let r=0;r<this.size_;r++)n[r]=e[this.head+r&e.length-1];this.buf=n,this.head=0,this.tail=this.size_;}nextPow2(e){let n=1;for(;n<e;)n<<=1;return n}};var Q=2048,$=4096,Y=(()=>{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)})(),j=class{queue=new P(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>$?"macro":"micro";this.requestFlush(r);}}requestFlush(e){e==="micro"?queueMicrotask(()=>this.flush()):Y(()=>this.flush());}flush(){if(this.flushing)return;this.flushing=true,this.scheduled=false;let e=0;try{for(;e<Q;){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>=Q||this.queue.length>$?"macro":"micro";this.requestFlush(n);}}}},J=new j;var m={CONTINUE:"Continue",SUSPEND:"Suspend",DONE:"Done"},g={QUEUED:"Queued",RUNNING:"Running",SUSPENDED:"Suspended",DONE:"Done"},ee=1,te=1024;function ne(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 N=class{constructor(e,n,r){this.scheduler=r;this.id=ee++,this.current=e,this.env=n;}id;closing=null;finishing=false;runState=g.RUNNING;interrupted=false;result=null;joiners=[];current;env;stack=[];fiberFinalizers=[];finalizersDrained=false;addFinalizer(e){this.fiberFinalizers.push(e);}status(){return this.result==null?"Running":this.interrupted?"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===g.DONE||this.runState===g.QUEUED||(this.runState=g.QUEUED,this.scheduler.schedule(()=>{if(this.runState===g.DONE)return;switch(this.runState=g.RUNNING,this.step()){case m.CONTINUE:this.schedule("continue");return;case m.SUSPEND:this.runState=g.SUSPENDED;return;case m.DONE:this.runState=g.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{n(e);}catch{}}}notify(e){if(this.result==null&&this.closing==null){this.finishing=true,this.closing=e,this.runFinalizersOnce(e),this.result=e;for(let n of this.joiners)n(e);this.joiners.length=0;}}onSuccess(e){let n=this.stack.pop();if(!n){this.notify({_tag:"Success",value:e});return}this.current=n._tag==="SuccessCont"?n.k(e):n.onSuccess(e);}onFailure(e){for(;this.stack.length>0;){let n=this.stack.pop();if(n._tag==="FoldCont"){this.current=n.onFailure(e);return}}this.notify({_tag:"Failure",error:e});}step(){let e=te;for(;e-- >0;){if(this.result!=null)return m.DONE;if(this.interrupted&&this.closing==null)return this.notify({_tag:"Failure",error:{_tag:"Interrupted"}}),m.DONE;let n=ne(this.current);switch(n._tag){case "Succeed":{this.onSuccess(n.value);break}case "Fail":{this.onFailure(n.error);break}case "Sync":{try{let r=n.thunk(this.env);this.onSuccess(r);}catch(r){this.onFailure(r);}break}case "FlatMap":{this.stack.push({_tag:"SuccessCont",k:n.andThen}),this.current=n.first;break}case "Fold":{this.stack.push({_tag:"FoldCont",onFailure:n.onFailure,onSuccess:n.onSuccess}),this.current=n.first;break}case "Async":{if(this.finishing)return this.result!=null?m.DONE:m.CONTINUE;let r=false,a=i=>{r||(r=true,!(this.result!=null||this.closing!=null)&&(this.current=i._tag==="Success"?{_tag:"Succeed",value:i.value}:{_tag:"Fail",error:i.error},this.schedule("async-resume")));},o=n.register(this.env,a);return typeof o=="function"&&this.addFinalizer(()=>{r=true;try{o();}catch{}}),m.SUSPEND}}}return this.result!=null?m.DONE:m.CONTINUE}};function De(t){return A((e,n)=>{let r=false,a=s=>{r||(r=true,n(s));},o=s=>a({_tag:"Failure",error:s instanceof Error?s:new Error(String(s))}),i=s=>a({_tag:"Success",value:s});try{typeof t=="function"&&t.length>=1?t((s,c)=>s?o(s):i(c)):t().then(i,o);}catch(s){o(s);}})}function w(t,e,n=J){let r=new N(t,e,n);return r.schedule("initial-step"),r}function Te(t,e,n){w(t,e).join(n);}function ze(t,e){return new Promise((n,r)=>{w(t,e).join(o=>{let i=o;i._tag==="Success"?n(i.value):r(i.error);});})}function Me(t,e){return A((n,r)=>{t(n).then(a=>r({_tag:"Success",value:a})).catch(a=>r({_tag:"Failure",error:e(a)}));})}function Ue(t){return A((e,n)=>{let r=false,a=o=>{r||(r=true,n(o));};try{t((o,i)=>{a(o?{_tag:"Failure",error:o}:{_tag:"Success",value:i});});}catch(o){a({_tag:"Failure",error:o instanceof Error?o:new Error(String(o))});}})}function je(t){return re((n,r)=>t.length===1?t(r):t(n,r),n=>ae(n)?{_tag:"Abort"}:{_tag:"PromiseRejected",reason:n})}function re(t,e){return A((n,r)=>{let a=new AbortController,o=false,i=s=>{o||(o=true,r(s));};try{(t.length===1?t(a.signal):t(n,a.signal)).then(c=>i({_tag:"Success",value:c})).catch(c=>i({_tag:"Failure",error:e(c)}));}catch(s){i({_tag:"Failure",error:e(s)});}return ()=>{o=true,a.abort();}})}var ae=t=>typeof t=="object"&&t!==null&&"name"in t&&t.name==="AbortError";var oe=1;function se(t){return A((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});});})}function ie(t){return R(t,()=>k(),()=>k())}var _=class t{constructor(e){this.env=e;this.id=oe++;}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.env);return this.subScopes.add(e),e}fork(e,n){if(this.closed)throw new Error("Scope closed");let r=w(e,n);return this.children.add(r),r.join(()=>{this.children.delete(r);}),r}close(e={_tag:"Success",value:void 0}){w(this.closeAsync(e),this.env);}closeAsync(e={_tag:"Success",value:void 0},n={}){return A((r,a)=>{if(this.closed){a({_tag:"Success",value:void 0});return}this.closed=true;let o=Array.from(this.children),i=Array.from(this.subScopes);this.children.clear(),this.subScopes.clear();for(let l of o)try{l.interrupt();}catch{}let s=k();for(let l of i)s=p(s,()=>l.closeAsync(e,n));for(;this.finalizers.length>0;){let l=this.finalizers.pop();s=p(s,()=>ie(l(e)));}n.awaitChildren&&(s=p(s,()=>se(o))),w(s,this.env).join(()=>a({_tag:"Success",value:void 0}));})}};function Ge(t){let e=new _({});try{return t(e)}finally{e.close();}}function Qe(t){return A((e,n)=>{let r=new _(e);r.fork(t(r),e).join(o=>{try{r.close(o);}catch(i){n({_tag:"Failure",error:i});return}n(o);});})}function Ve(t,e,n){return A((r,a)=>{let o=n.subScope(),i=false,s=f=>{i||(i=true,o.close(f),a(f));},c=o.fork(t,r),l=o.fork(e,r);c.join(s),l.join(s);})}function Xe(t,e,n){return A((r,a)=>{let o=n.subScope(),i=null,s=null,c=false,l=()=>{if(!i||!s||c)return;if(c=true,i._tag==="Success"&&s._tag==="Success"){o.close({_tag:"Success",value:void 0}),a({_tag:"Success",value:[i.value,s.value]});return}let u;if(i._tag==="Failure")u=i.error;else if(s._tag==="Failure")u=s.error;else throw new Error("zipPar: unreachable state (no Failure exit)");let S={_tag:"Failure",error:u};o.close(S),a(S);},f=o.fork(t,r),d=o.fork(e,r);f.join(u=>{i=u,l();}),d.join(u=>{s=u,l();});})}function Ye(t,e){return A((n,r)=>{let a=e.subScope(),o=new Array(t.length),i=0,s=false;t.forEach((c,l)=>{a.fork(c,n).join(d=>{if(!s){if(d._tag==="Failure"){s=true;let u={_tag:"Failure",error:d.error};a.close(u),r(u);return}if(o[l]=d.value,i++,i===t.length){s=true;let u={_tag:"Success",value:o};a.close({_tag:"Success",value:void 0}),r(u);}}});});})}function K(t,e,n,r,a){return A((o,i)=>{let s=n.subScope(),c=false,l=s.fork(t,o),f=s.fork(e,o),d=u=>{s.fork(u,o).join(S=>{s.close(S),i(S);});};l.join(u=>{c||(c=true,d(r(u,f,s)));}),f.join(u=>{c||(c=true,d(a(u,l,s)));});})}var q=t=>t._tag==="None"?b:I(t.value),v=t=>({_tag:"FromPull",pull:t}),ce=(t,e)=>({_tag:"Scoped",acquire:t,release:e}),At=t=>({_tag:"Scoped",acquire:p(t,e=>E(e.stream)),release:e=>p(t,n=>n.release(e))}),Et=(t,e,n=true)=>({_tag:"Merge",left:t,right:e,flip:n}),T=()=>({_tag:"Empty"}),X=t=>({_tag:"Emit",value:t}),C=(t,e)=>({_tag:"Concat",left:t,right:e}),L=t=>({_tag:"Flatten",stream:t});function V(t,e,n,r,a){return (o,i,s)=>{if(o._tag,o._tag,o._tag==="Success"){let[f,d]=o.value;i.interrupt();let u=v(t==="L"?D(d,n):D(e,d));return E([f,u])}let c=o.error;if(typeof c=="object"&&c!==null&&c._tag==="Interrupted")return h(c);let l=c;return l._tag==="None"?y(t==="L"?n:e):h(l)}}function D(t,e,n,r){return A((a,o)=>{let s=new _(a),c=y(t),l=y(e),f=V("L",t,e),d=V("R",t,e),u=K(c,l,s,f,d);s.fork(u,a).join(S=>{s.close(S),o(S);});})}function pt(t,e){return v(D(t,e))}function y(t){switch(t._tag){case "Empty":return B(b);case "Emit":return Z(M(t.value,e=>I(e)),e=>[e,T()]);case "FromPull":return t.pull;case "Concat":return U(Z(y(t.left),([e,n])=>[e,C(n,t.right)]),()=>y(t.right));case "Flatten":return G(y(t.stream),([e,n])=>U(Z(y(e),([r,a])=>[r,C(a,L(n))]),()=>y(L(n))));case "Merge":return D(t.left,t.right,t.flip);case "Scoped":return A((e,n)=>{let r=new _(e);r.addFinalizer(a=>t.release(a)),r.fork(t.acquire,e).join(a=>{if(a._tag==="Failure"){r.close(a),n({_tag:"Failure",error:I(a.error)});return}let o=a.value;y(o)(e,s=>{r.close(s),n(s);});});})}}function O(t,e){switch(t._tag){case "Empty":return T();case "Emit":return X(Z(t.value,e));case "FromPull":return v(Z(t.pull,([n,r])=>[e(n),O(r,e)]));case "Concat":return C(O(t.left,e),O(t.right,e));case "Flatten":{let n=O(t.stream,r=>O(r,e));return L(n)}}}function yt(t,e){let n=r=>v(r>e?h(b):E([r,n(r+1)]));return n(t)}function ue(t,e){let n=R(x(y(t),r=>q(r)),r=>h(r),([r,a])=>R(x(y(e),o=>q(o)),o=>h(o),([o,i])=>E([[r,o],ue(a,i)])));return v(n)}function dt(t,e){let n=r=>R(x(y(r),a=>q(a)),a=>a._tag==="None"?E(void 0):h(a),([a,o])=>p(x(e(a),i=>I(i)),()=>n(o)));return R(n(t),r=>r._tag==="None"?E(void 0):h(r.value),()=>E(void 0))}function Rt(t){let e=T();for(let n=t.length-1;n>=0;n--){let r=X(z(t[n]));e=C(r,e);}return e}function ft(t){let e=(n,r)=>R(y(n),a=>a._tag==="None"?z(r):B(a),([a,o])=>e(o,[...r,a]));return M(e(t,[]),n=>{if(n._tag==="Some")return n.value;throw new Error("unreachable: stream end handled as success")})}function le(t,e){let n=A((r,a)=>{t.read().then(({done:o,value:i})=>{if(o){a({_tag:"Failure",error:b});return}a({_tag:"Success",value:[i,v(n)]});}).catch(o=>{a({_tag:"Failure",error:I(e(o))});});});return v(n)}function ht(t,e){if(!t)return T();let n;return ce(H(()=>(n=t.getReader(),le(n,e))),()=>F(()=>{try{n?.cancel();}catch{}}))}exports.$=C;exports.A=xe;exports.B=P;exports.C=j;exports.D=J;exports.E=N;exports.F=De;exports.G=w;exports.H=Te;exports.I=ze;exports.J=Me;exports.K=Ue;exports.L=je;exports.M=re;exports.N=_;exports.O=Ge;exports.P=Qe;exports.Q=Ve;exports.R=Xe;exports.S=Ye;exports.T=K;exports.U=q;exports.V=v;exports.W=ce;exports.X=At;exports.Y=Et;exports.Z=T;exports._=X;exports.a=R;exports.aa=L;exports.b=Ae;exports.ba=pt;exports.c=x;exports.ca=y;exports.d=k;exports.da=O;exports.e=E;exports.ea=yt;exports.f=h;exports.fa=ue;exports.g=F;exports.ga=dt;exports.h=Ee;exports.ha=Rt;exports.i=A;exports.ia=ft;exports.j=W;exports.ja=ht;exports.k=p;exports.l=pe;exports.m=ye;exports.n=de;exports.o=Re;exports.p=fe;exports.q=b;exports.r=I;exports.s=z;exports.t=B;exports.u=H;exports.v=Z;exports.w=G;exports.x=M;exports.y=ve;exports.z=U;
@@ -1,4 +1,4 @@
1
- import { Z as ZStream, A as Async, y as AsyncWithPromise } from '../stream-CPScJVP0.mjs';
1
+ import { Z as ZStream, A as Async, y as AsyncWithPromise } from '../stream-FmXbwFl9.mjs';
2
2
 
3
3
  type RetryPolicy = {
4
4
  maxRetries: number;
@@ -80,13 +80,16 @@ type HttpResponseWithMeta<A> = {
80
80
  response: HttpResponse<A>;
81
81
  meta: HttpMeta;
82
82
  };
83
+ type AnyInitWithHeaders = {
84
+ headers?: any;
85
+ } & Record<string, any>;
83
86
  type Dx = {
84
- request: (req: HttpRequest) => any;
85
- get: (url: string, init?: any) => any;
86
- post: (url: string, body?: string, init?: any) => any;
87
- getText: (url: string, init?: any) => any;
88
- getJson: <A>(url: string, init?: any) => any;
89
- postJson: <A>(url: string, body?: any, init?: any) => any;
87
+ request: (req: HttpRequest) => AsyncWithPromise<unknown, HttpError, HttpWireResponse>;
88
+ get: (url: string, init?: AnyInitWithHeaders) => AsyncWithPromise<unknown, HttpError, HttpWireResponse>;
89
+ post: (url: string, body?: string, init?: AnyInitWithHeaders) => AsyncWithPromise<unknown, HttpError, HttpWireResponse>;
90
+ getText: (url: string, init?: InitNoMethodBody) => AsyncWithPromise<unknown, HttpError, HttpResponse<string>>;
91
+ getJson: <A>(url: string, init?: InitNoMethodBody) => AsyncWithPromise<unknown, HttpError, HttpResponse<A>>;
92
+ postJson: <A>(url: string, bodyObj: unknown, init?: AnyInitWithHeaders) => AsyncWithPromise<unknown, HttpError, HttpResponse<A>>;
90
93
  with: (mw: HttpMiddleware) => Dx;
91
94
  withRetry: (p: RetryPolicy) => Dx;
92
95
  wire: HttpClient;
@@ -125,10 +128,16 @@ declare function httpClientWithMeta(cfg?: MakeHttpConfig): {
125
128
  wire: HttpWireResponse;
126
129
  meta: HttpMeta;
127
130
  }>;
128
- postJson: <A>(url: string, bodyObj: A, init?: HttpInit & {
131
+ postJson: <A>(url: string, bodyObj: unknown, init?: HttpInit & {
129
132
  headers?: Record<string, string>;
130
133
  }) => AsyncWithPromise<unknown, HttpError, {
131
134
  wire: HttpWireResponse;
135
+ response: {
136
+ status: number;
137
+ statusText: string;
138
+ headers: Record<string, string>;
139
+ body: A;
140
+ };
132
141
  meta: HttpMeta;
133
142
  }>;
134
143
  };
@@ -1,4 +1,4 @@
1
- import { Z as ZStream, A as Async, y as AsyncWithPromise } from '../stream-CPScJVP0.js';
1
+ import { Z as ZStream, A as Async, y as AsyncWithPromise } from '../stream-FmXbwFl9.js';
2
2
 
3
3
  type RetryPolicy = {
4
4
  maxRetries: number;
@@ -80,13 +80,16 @@ type HttpResponseWithMeta<A> = {
80
80
  response: HttpResponse<A>;
81
81
  meta: HttpMeta;
82
82
  };
83
+ type AnyInitWithHeaders = {
84
+ headers?: any;
85
+ } & Record<string, any>;
83
86
  type Dx = {
84
- request: (req: HttpRequest) => any;
85
- get: (url: string, init?: any) => any;
86
- post: (url: string, body?: string, init?: any) => any;
87
- getText: (url: string, init?: any) => any;
88
- getJson: <A>(url: string, init?: any) => any;
89
- postJson: <A>(url: string, body?: any, init?: any) => any;
87
+ request: (req: HttpRequest) => AsyncWithPromise<unknown, HttpError, HttpWireResponse>;
88
+ get: (url: string, init?: AnyInitWithHeaders) => AsyncWithPromise<unknown, HttpError, HttpWireResponse>;
89
+ post: (url: string, body?: string, init?: AnyInitWithHeaders) => AsyncWithPromise<unknown, HttpError, HttpWireResponse>;
90
+ getText: (url: string, init?: InitNoMethodBody) => AsyncWithPromise<unknown, HttpError, HttpResponse<string>>;
91
+ getJson: <A>(url: string, init?: InitNoMethodBody) => AsyncWithPromise<unknown, HttpError, HttpResponse<A>>;
92
+ postJson: <A>(url: string, bodyObj: unknown, init?: AnyInitWithHeaders) => AsyncWithPromise<unknown, HttpError, HttpResponse<A>>;
90
93
  with: (mw: HttpMiddleware) => Dx;
91
94
  withRetry: (p: RetryPolicy) => Dx;
92
95
  wire: HttpClient;
@@ -125,10 +128,16 @@ declare function httpClientWithMeta(cfg?: MakeHttpConfig): {
125
128
  wire: HttpWireResponse;
126
129
  meta: HttpMeta;
127
130
  }>;
128
- postJson: <A>(url: string, bodyObj: A, init?: HttpInit & {
131
+ postJson: <A>(url: string, bodyObj: unknown, init?: HttpInit & {
129
132
  headers?: Record<string, string>;
130
133
  }) => AsyncWithPromise<unknown, HttpError, {
131
134
  wire: HttpWireResponse;
135
+ response: {
136
+ status: number;
137
+ statusText: string;
138
+ headers: Record<string, string>;
139
+ body: A;
140
+ };
132
141
  meta: HttpMeta;
133
142
  }>;
134
143
  };
@@ -1 +1 @@
1
- 'use strict';var chunk2NVQIUW5_js=require('../chunk-2NVQIUW5.js');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 f={headers:b.make(t=>t.headers??{},t=>e=>({...e,headers:t}))};var k=t=>e=>b.over(f.headers,r=>({...r,...t}))(e),w=t=>e=>b.over(f.headers,r=>({...t,...r}))(e),M=(t,e)=>r=>b.over(f.headers,n=>n[t]?n:{...n,[t]:e})(r);var dt=t=>e=>T(t(e)),T=t=>Object.assign((e=>t(e)),{with:e=>T(e(t))}),S=t=>t instanceof DOMException&&t.name==="AbortError"?{_tag:"Abort"}:typeof t=="object"&&t&&"_tag"in t?t:{_tag:"FetchError",message:String(t)},C=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}}},I=t=>e=>{let r=Object.keys(t).length?w(t)(e):e,n=C(e.init?.headers);return n&&Object.keys(n).length&&(r=w(n)(r)),r};function W(t={}){let e=t.baseUrl??"",r=t.headers??{},n=I(r);return c=>chunk2NVQIUW5_js.M(async a=>{let y=n(c),i;try{i=new URL(y.url,e);}catch{throw {_tag:"BadUrl",message:`URL inv\xE1lida: ${y.url}`}}let p=performance.now(),s=await fetch(i,{...y.init??{},method:y.method,headers:f.headers.get(y),body:y.body,signal:a}),u={};s.headers.forEach((d,m)=>u[m]=d);let o=chunk2NVQIUW5_js.ia(s.body,S);return {status:s.status,statusText:s.statusText,headers:u,body:o,ms:Math.round(performance.now()-p)}},S)}function U(t={}){let e=t.baseUrl??"",r=t.headers??{},n=I(r);return T(a=>chunk2NVQIUW5_js.M(async y=>{let i=n(a),p;try{p=new URL(i.url,e);}catch{throw {_tag:"BadUrl",message:`URL inv\xE1lida: ${i.url}`}}let s=performance.now(),u=await fetch(p,{...i.init??{},method:i.method,headers:f.headers.get(i),body:i.body,signal:y}),o=await u.text(),d={};return u.headers.forEach((m,H)=>d[H]=m),{status:u.status,statusText:u.statusText,headers:d,bodyText:o,ms:Math.round(performance.now()-s)}},S))}var j=(t,e,r)=>Math.max(e,Math.min(r,t)),J=t=>t._tag==="FetchError",G=t=>t===408||t===429||t===500||t===502||t===503||t===504,F=(t,e,r)=>{let n=e*Math.pow(2,t),c=j(n,0,r);return Math.floor(Math.random()*c)},D=t=>chunk2NVQIUW5_js.M(e=>new Promise((r,n)=>{if(e.aborted)return n({_tag:"Abort"});let c=setTimeout(r,t);e.addEventListener("abort",()=>{clearTimeout(c),n({_tag:"Abort"});},{once:true});}),e=>typeof e=="object"&&e&&"_tag"in e?e:{_tag:"FetchError",message:String(e)}),z=t=>{let e=Object.keys(t).find(a=>a.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 c=Date.parse(r);if(Number.isFinite(c))return Math.max(0,c-Date.now())},_=t=>e=>(r=>{let n=c=>chunk2NVQIUW5_js.a(e(r),a=>{if(a._tag==="Abort"||a._tag==="BadUrl")return chunk2NVQIUW5_js.f(a);if(!(c<t.maxRetries&&(t.retryOnError??J)(a)))return chunk2NVQIUW5_js.f(a);let i=F(c,t.baseDelayMs,t.maxDelayMs);return chunk2NVQIUW5_js.k(D(i),()=>n(c+1))},a=>{if(!(c<t.maxRetries&&(t.retryOnStatus??G)(a.status)))return chunk2NVQIUW5_js.e(a);let p=z(a.headers)??F(c,t.baseDelayMs,t.maxDelayMs);return chunk2NVQIUW5_js.k(D(p),()=>n(c+1))});return n(0)});var Z=["GET","HEAD","OPTIONS"],$=t=>t===408||t===429||t===500||t===502||t===503||t===504,K=t=>t._tag==="FetchError",Q=t=>typeof t=="object"&&t!==null&&"name"in t&&t.name==="AbortError"?{_tag:"Abort"}:typeof t=="object"&&t&&"_tag"in t?t:{_tag:"FetchError",message:String(t)},L=t=>chunk2NVQIUW5_js.M(e=>new Promise((r,n)=>{let c=setTimeout(r,t),a=()=>{clearTimeout(c);let y=typeof globalThis.DOMException=="function"?new globalThis.DOMException("Aborted","AbortError"):{name:"AbortError"};n(y);};if(e.aborted)return a();e.addEventListener("abort",a,{once:true});}),Q),V=(t,e,r)=>Math.max(e,Math.min(r,t)),N=(t,e,r)=>{let n=Math.max(0,e),c=Math.max(0,r),a=n*Math.pow(2,t),y=V(a,0,c);return Math.floor(Math.random()*y)},X=(t,e)=>{let r=Object.keys(t).find(n=>n.toLowerCase()===e.toLowerCase());return r?t[r]:void 0},Y=t=>{let e=X(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())},v=t=>e=>{let r=t.retryOnMethods??Z,n=t.retryOnStatus??$,c=t.retryOnError??K,a=i=>r.includes(i.method),y=(i,p)=>a(i)?chunk2NVQIUW5_js.a(e(i),s=>{if(s._tag==="Abort"||s._tag==="BadUrl")return chunk2NVQIUW5_js.f(s);if(!(p<t.maxRetries&&c(s)))return chunk2NVQIUW5_js.f(s);let o=N(p,t.baseDelayMs,t.maxDelayMs);return chunk2NVQIUW5_js.k(L(o),()=>y(i,p+1))},s=>{if(!(p<t.maxRetries&&n(s.status)))return chunk2NVQIUW5_js.e(s);let d=Y(s.headers)??N(p,t.baseDelayMs,t.maxDelayMs);return chunk2NVQIUW5_js.k(L(d),()=>y(i,p+1))}):e(i);return i=>y(i,0)};var tt=(t,e)=>{try{return new URL(e,t??"").toString()}catch{return (t??"")+e}},B=(t={})=>{let e=U(t),r=p=>chunk2NVQIUW5_js.n((s,u)=>chunk2NVQIUW5_js.I(s,u))(p),n=p=>e(p),c=p=>{let{headers:s,...u}=p??{};return {headers:C(s),init:u}},a=p=>s=>p?k(p)(s):s;return {cfg:t,wire:e,withPromise:r,requestRaw:n,splitInit:c,applyInitHeaders:a,buildReq:(p,s,u,o)=>{let d=c(u),m={method:p,url:s,...o&&o.length>0?{body:o}:{},init:d.init};return a(d.headers)(m)},toResponse:(p,s)=>({status:p.status,statusText:p.statusText,headers:p.headers,body:s})}};function Ft(t={}){let e=B(t),r=n=>{let c=o=>n(o),a=o=>e.withPromise(c(o));return {request:a,get:(o,d)=>a(e.buildReq("GET",o,d)),post:(o,d,m)=>a(e.buildReq("POST",o,m,d)),getText:(o,d)=>{let m=e.buildReq("GET",o,d);return e.withPromise(chunk2NVQIUW5_js.p(c(m),H=>e.toResponse(H,H.bodyText)))},getJson:(o,d)=>{let m=e.buildReq("GET",o,d),H=M("accept","application/json")(m);return e.withPromise(chunk2NVQIUW5_js.p(c(H),O=>e.toResponse(O,JSON.parse(O.bodyText))))},postJson:(o,d,m)=>a(e.buildReq("POST",o,m,JSON.stringify(d??{}))),with:o=>r(n.with(o)),withRetry:o=>r(n.with(v(o))),wire:n}};return r(e.wire)}function Dt(t={}){let e=B(t),r=(s,u,o)=>({request:s,urlFinal:tt(e.cfg.baseUrl,s.url),startedAt:o,durationMs:u.ms}),n=s=>{let u=Date.now();return e.withPromise(chunk2NVQIUW5_js.p(e.requestRaw(s),o=>({wire:o,meta:r(s,o,u)})))};return {request:n,get:(s,u)=>{let o=e.buildReq("GET",s,u);return n(o)},getText:(s,u)=>{let o=e.buildReq("GET",s,u),d=Date.now();return e.withPromise(chunk2NVQIUW5_js.p(e.requestRaw(o),m=>({wire:m,response:e.toResponse(m,m.bodyText),meta:r(o,m,d)})))},getJson:(s,u)=>{let o=e.buildReq("GET",s,u),d=M("accept","application/json")(o),m=Date.now();return e.withPromise(chunk2NVQIUW5_js.p(e.requestRaw(d),H=>({wire:H,response:e.toResponse(H,JSON.parse(H.bodyText)),meta:r(d,H,m)})))},post:(s,u,o)=>{let d=e.buildReq("POST",s,o,u);return n(d)},postJson:(s,u,o)=>{let d=e.buildReq("POST",s,o,JSON.stringify(u)),m=M("content-type","application/json")(M("accept","application/json")(d));return n(m)}}}function It(t={}){let e=W(t),r=n=>{let c=i=>chunk2NVQIUW5_js.n((p,s)=>chunk2NVQIUW5_js.I(p,s))(i),a=i=>c(n(i)),y=(i,p)=>{let s={method:"GET",url:i,init:p},u=M("accept","*/*")(s);return a(u)};return {request:a,getStream:y,get:y,with:i=>r(i(n)),withRetry:i=>r(_(i)(n)),wire:n}};return r(e)}exports.decorate=T;exports.httpClient=Ft;exports.httpClientStream=It;exports.httpClientWithMeta=Dt;exports.makeHttp=U;exports.makeHttpStream=W;exports.normalizeHeadersInit=C;exports.withMiddleware=dt;exports.withRetryStream=_;
1
+ 'use strict';var chunkKMTKZ4PS_js=require('../chunk-KMTKZ4PS.js');var A={make(t,e){return {get:t,set:e}},over(t,e){return r=>t.set(e(t.get(r)))(r)},compose(t,e){return A.make(r=>t.get(e.get(r)),r=>n=>e.set(t.set(r)(e.get(n)))(n))}};var M={headers:A.make(t=>t.headers??{},t=>e=>({...e,headers:t}))};var W=t=>e=>A.over(M.headers,r=>({...r,...t}))(e),S=t=>e=>A.over(M.headers,r=>({...t,...r}))(e),g=(t,e)=>r=>A.over(M.headers,n=>n[t]?n:{...n,[t]:e})(r);var mt=t=>e=>C(t(e)),C=t=>Object.assign((e=>t(e)),{with:e=>C(e(t))}),T=t=>t instanceof DOMException&&t.name==="AbortError"?{_tag:"Abort"}:typeof t=="object"&&t&&"_tag"in t?t:{_tag:"FetchError",message:String(t)},O=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}}},F=t=>e=>{let r=Object.keys(t).length?S(t)(e):e,n=O(e.init?.headers);return n&&Object.keys(n).length&&(r=S(n)(r)),r};function N(t={}){let e=t.baseUrl??"",r=t.headers??{},n=F(r);return p=>chunkKMTKZ4PS_js.M(async c=>{let m=n(p),i;try{i=new URL(m.url,e);}catch{throw {_tag:"BadUrl",message:`URL inv\xE1lida: ${m.url}`}}let a=performance.now(),s=await fetch(i,{...m.init??{},method:m.method,headers:M.headers.get(m),body:m.body,signal:c}),u={};s.headers.forEach((d,y)=>u[y]=d);let o=chunkKMTKZ4PS_js.ja(s.body,T);return {status:s.status,statusText:s.statusText,headers:u,body:o,ms:Math.round(performance.now()-a)}},T)}function U(t={}){let e=t.baseUrl??"",r=t.headers??{},n=F(r);return C(c=>chunkKMTKZ4PS_js.M(async m=>{let i=n(c),a;try{a=new URL(i.url,e);}catch{throw {_tag:"BadUrl",message:`URL inv\xE1lida: ${i.url}`}}let s=performance.now(),u=await fetch(a,{...i.init??{},method:i.method,headers:M.headers.get(i),body:i.body,signal:m}),o=await u.text(),d={};return u.headers.forEach((y,H)=>d[H]=y),{status:u.status,statusText:u.statusText,headers:d,bodyText:o,ms:Math.round(performance.now()-s)}},T))}var J=(t,e,r)=>Math.max(e,Math.min(r,t)),G=t=>t._tag==="FetchError",z=t=>t===408||t===429||t===500||t===502||t===503||t===504,I=(t,e,r)=>{let n=e*Math.pow(2,t),p=J(n,0,r);return Math.floor(Math.random()*p)},D=t=>chunkKMTKZ4PS_js.M(e=>new Promise((r,n)=>{if(e.aborted)return n({_tag:"Abort"});let p=setTimeout(r,t);e.addEventListener("abort",()=>{clearTimeout(p),n({_tag:"Abort"});},{once:true});}),e=>typeof e=="object"&&e&&"_tag"in e?e:{_tag:"FetchError",message:String(e)}),Z=t=>{let e=Object.keys(t).find(c=>c.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 p=Date.parse(r);if(Number.isFinite(p))return Math.max(0,p-Date.now())},_=t=>e=>(r=>{let n=p=>chunkKMTKZ4PS_js.a(e(r),c=>{if(c._tag==="Abort"||c._tag==="BadUrl")return chunkKMTKZ4PS_js.f(c);if(!(p<t.maxRetries&&(t.retryOnError??G)(c)))return chunkKMTKZ4PS_js.f(c);let i=I(p,t.baseDelayMs,t.maxDelayMs);return chunkKMTKZ4PS_js.k(D(i),()=>n(p+1))},c=>{if(!(p<t.maxRetries&&(t.retryOnStatus??z)(c.status)))return chunkKMTKZ4PS_js.e(c);let a=Z(c.headers)??I(p,t.baseDelayMs,t.maxDelayMs);return chunkKMTKZ4PS_js.k(D(a),()=>n(p+1))});return n(0)});var $=["GET","HEAD","OPTIONS"],K=t=>t===408||t===429||t===500||t===502||t===503||t===504,Q=t=>t._tag==="FetchError",V=t=>typeof t=="object"&&t!==null&&"name"in t&&t.name==="AbortError"?{_tag:"Abort"}:typeof t=="object"&&t&&"_tag"in t?t:{_tag:"FetchError",message:String(t)},L=t=>chunkKMTKZ4PS_js.M(e=>new Promise((r,n)=>{let p=setTimeout(r,t),c=()=>{clearTimeout(p);let m=typeof globalThis.DOMException=="function"?new globalThis.DOMException("Aborted","AbortError"):{name:"AbortError"};n(m);};if(e.aborted)return c();e.addEventListener("abort",c,{once:true});}),V),X=(t,e,r)=>Math.max(e,Math.min(r,t)),v=(t,e,r)=>{let n=Math.max(0,e),p=Math.max(0,r),c=n*Math.pow(2,t),m=X(c,0,p);return Math.floor(Math.random()*m)},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())},B=t=>e=>{let r=t.retryOnMethods??$,n=t.retryOnStatus??K,p=t.retryOnError??Q,c=i=>r.includes(i.method),m=(i,a)=>c(i)?chunkKMTKZ4PS_js.a(e(i),s=>{if(s._tag==="Abort"||s._tag==="BadUrl")return chunkKMTKZ4PS_js.f(s);if(!(a<t.maxRetries&&p(s)))return chunkKMTKZ4PS_js.f(s);let o=v(a,t.baseDelayMs,t.maxDelayMs);return chunkKMTKZ4PS_js.k(L(o),()=>m(i,a+1))},s=>{if(!(a<t.maxRetries&&n(s.status)))return chunkKMTKZ4PS_js.e(s);let d=tt(s.headers)??v(a,t.baseDelayMs,t.maxDelayMs);return chunkKMTKZ4PS_js.k(L(d),()=>m(i,a+1))}):e(i);return i=>m(i,0)};var et=(t,e)=>{try{return new URL(e,t??"").toString()}catch{return (t??"")+e}},j=(t={})=>{let e=U(t),r=a=>chunkKMTKZ4PS_js.n((s,u)=>chunkKMTKZ4PS_js.I(s,u))(a),n=a=>e(a),p=a=>{let{headers:s,...u}=a??{};return {headers:O(s),init:u}},c=a=>s=>a?W(a)(s):s;return {cfg:t,wire:e,withPromise:r,requestRaw:n,splitInit:p,applyInitHeaders:c,buildReq:(a,s,u,o)=>{let d=p(u),y={method:a,url:s,...o&&o.length>0?{body:o}:{},init:d.init};return c(d.headers)(y)},toResponse:(a,s)=>({status:a.status,statusText:a.statusText,headers:a.headers,body:s})}};function Dt(t={}){let e=j(t),r=n=>{let p=o=>n(o),c=o=>e.withPromise(p(o));return {request:c,get:(o,d)=>c(e.buildReq("GET",o,d)),post:(o,d,y)=>c(e.buildReq("POST",o,y,d)),getText:(o,d)=>{let y=e.buildReq("GET",o,d);return e.withPromise(chunkKMTKZ4PS_js.p(p(y),H=>e.toResponse(H,H.bodyText)))},getJson:(o,d)=>{let y=e.buildReq("GET",o,d),H=g("accept","application/json")(y);return e.withPromise(chunkKMTKZ4PS_js.p(p(H),l=>e.toResponse(l,JSON.parse(l.bodyText))))},postJson:(o,d,y)=>{let H=e.buildReq("POST",o,y,JSON.stringify(d??{})),l=g("content-type","application/json")(g("accept","application/json")(H));return e.withPromise(chunkKMTKZ4PS_js.p(p(l),P=>e.toResponse(P,JSON.parse(P.bodyText))))},with:o=>r(n.with(o)),withRetry:o=>r(n.with(B(o))),wire:n}};return r(e.wire)}function Ft(t={}){let e=j(t),r=(s,u,o)=>({request:s,urlFinal:et(e.cfg.baseUrl,s.url),startedAt:o,durationMs:u.ms}),n=s=>{let u=Date.now();return e.withPromise(chunkKMTKZ4PS_js.p(e.requestRaw(s),o=>({wire:o,meta:r(s,o,u)})))};return {request:n,get:(s,u)=>{let o=e.buildReq("GET",s,u);return n(o)},getText:(s,u)=>{let o=e.buildReq("GET",s,u),d=Date.now();return e.withPromise(chunkKMTKZ4PS_js.p(e.requestRaw(o),y=>({wire:y,response:e.toResponse(y,y.bodyText),meta:r(o,y,d)})))},getJson:(s,u)=>{let o=e.buildReq("GET",s,u),d=g("accept","application/json")(o),y=Date.now();return e.withPromise(chunkKMTKZ4PS_js.p(e.requestRaw(d),H=>({wire:H,response:e.toResponse(H,JSON.parse(H.bodyText)),meta:r(d,H,y)})))},post:(s,u,o)=>{let d=e.buildReq("POST",s,o,u);return n(d)},postJson:(s,u,o)=>{let d=e.buildReq("POST",s,o,JSON.stringify(u??{})),y=g("content-type","application/json")(g("accept","application/json")(d)),H=Date.now();return e.withPromise(chunkKMTKZ4PS_js.p(e.requestRaw(y),l=>({wire:l,response:e.toResponse(l,JSON.parse(l.bodyText)),meta:r(y,l,H)})))}}}function Nt(t={}){let e=N(t),r=n=>{let p=i=>chunkKMTKZ4PS_js.n((a,s)=>chunkKMTKZ4PS_js.I(a,s))(i),c=i=>p(n(i)),m=(i,a)=>{let s={method:"GET",url:i,init:a},u=g("accept","*/*")(s);return c(u)};return {request:c,getStream:m,get:m,with:i=>r(i(n)),withRetry:i=>r(_(i)(n)),wire:n}};return r(e)}exports.decorate=C;exports.httpClient=Dt;exports.httpClientStream=Nt;exports.httpClientWithMeta=Ft;exports.makeHttp=U;exports.makeHttpStream=N;exports.normalizeHeadersInit=O;exports.withMiddleware=mt;exports.withRetryStream=_;
@@ -1 +1 @@
1
- import {M as M$1,ia,a,p,n,f as f$1,k as k$1,e,I as I$1}from'../chunk-JTRM4ZSS.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 f={headers:b.make(t=>t.headers??{},t=>e=>({...e,headers:t}))};var k=t=>e=>b.over(f.headers,r=>({...r,...t}))(e),w=t=>e=>b.over(f.headers,r=>({...t,...r}))(e),M=(t,e)=>r=>b.over(f.headers,n=>n[t]?n:{...n,[t]:e})(r);var dt=t=>e=>T(t(e)),T=t=>Object.assign((e=>t(e)),{with:e=>T(e(t))}),S=t=>t instanceof DOMException&&t.name==="AbortError"?{_tag:"Abort"}:typeof t=="object"&&t&&"_tag"in t?t:{_tag:"FetchError",message:String(t)},C=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}}},I=t=>e=>{let r=Object.keys(t).length?w(t)(e):e,n=C(e.init?.headers);return n&&Object.keys(n).length&&(r=w(n)(r)),r};function W(t={}){let e=t.baseUrl??"",r=t.headers??{},n=I(r);return c=>M$1(async a=>{let y=n(c),i;try{i=new URL(y.url,e);}catch{throw {_tag:"BadUrl",message:`URL inv\xE1lida: ${y.url}`}}let p=performance.now(),s=await fetch(i,{...y.init??{},method:y.method,headers:f.headers.get(y),body:y.body,signal:a}),u={};s.headers.forEach((d,m)=>u[m]=d);let o=ia(s.body,S);return {status:s.status,statusText:s.statusText,headers:u,body:o,ms:Math.round(performance.now()-p)}},S)}function U(t={}){let e=t.baseUrl??"",r=t.headers??{},n=I(r);return T(a=>M$1(async y=>{let i=n(a),p;try{p=new URL(i.url,e);}catch{throw {_tag:"BadUrl",message:`URL inv\xE1lida: ${i.url}`}}let s=performance.now(),u=await fetch(p,{...i.init??{},method:i.method,headers:f.headers.get(i),body:i.body,signal:y}),o=await u.text(),d={};return u.headers.forEach((m,H)=>d[H]=m),{status:u.status,statusText:u.statusText,headers:d,bodyText:o,ms:Math.round(performance.now()-s)}},S))}var j=(t,e,r)=>Math.max(e,Math.min(r,t)),J=t=>t._tag==="FetchError",G=t=>t===408||t===429||t===500||t===502||t===503||t===504,F=(t,e,r)=>{let n=e*Math.pow(2,t),c=j(n,0,r);return Math.floor(Math.random()*c)},D=t=>M$1(e=>new Promise((r,n)=>{if(e.aborted)return n({_tag:"Abort"});let c=setTimeout(r,t);e.addEventListener("abort",()=>{clearTimeout(c),n({_tag:"Abort"});},{once:true});}),e=>typeof e=="object"&&e&&"_tag"in e?e:{_tag:"FetchError",message:String(e)}),z=t=>{let e=Object.keys(t).find(a=>a.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 c=Date.parse(r);if(Number.isFinite(c))return Math.max(0,c-Date.now())},_=t=>e$1=>(r=>{let n=c=>a(e$1(r),a=>{if(a._tag==="Abort"||a._tag==="BadUrl")return f$1(a);if(!(c<t.maxRetries&&(t.retryOnError??J)(a)))return f$1(a);let i=F(c,t.baseDelayMs,t.maxDelayMs);return k$1(D(i),()=>n(c+1))},a=>{if(!(c<t.maxRetries&&(t.retryOnStatus??G)(a.status)))return e(a);let p=z(a.headers)??F(c,t.baseDelayMs,t.maxDelayMs);return k$1(D(p),()=>n(c+1))});return n(0)});var Z=["GET","HEAD","OPTIONS"],$=t=>t===408||t===429||t===500||t===502||t===503||t===504,K=t=>t._tag==="FetchError",Q=t=>typeof t=="object"&&t!==null&&"name"in t&&t.name==="AbortError"?{_tag:"Abort"}:typeof t=="object"&&t&&"_tag"in t?t:{_tag:"FetchError",message:String(t)},L=t=>M$1(e=>new Promise((r,n)=>{let c=setTimeout(r,t),a=()=>{clearTimeout(c);let y=typeof globalThis.DOMException=="function"?new globalThis.DOMException("Aborted","AbortError"):{name:"AbortError"};n(y);};if(e.aborted)return a();e.addEventListener("abort",a,{once:true});}),Q),V=(t,e,r)=>Math.max(e,Math.min(r,t)),N=(t,e,r)=>{let n=Math.max(0,e),c=Math.max(0,r),a=n*Math.pow(2,t),y=V(a,0,c);return Math.floor(Math.random()*y)},X=(t,e)=>{let r=Object.keys(t).find(n=>n.toLowerCase()===e.toLowerCase());return r?t[r]:void 0},Y=t=>{let e=X(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())},v=t=>e$1=>{let r=t.retryOnMethods??Z,n=t.retryOnStatus??$,c=t.retryOnError??K,a$1=i=>r.includes(i.method),y=(i,p)=>a$1(i)?a(e$1(i),s=>{if(s._tag==="Abort"||s._tag==="BadUrl")return f$1(s);if(!(p<t.maxRetries&&c(s)))return f$1(s);let o=N(p,t.baseDelayMs,t.maxDelayMs);return k$1(L(o),()=>y(i,p+1))},s=>{if(!(p<t.maxRetries&&n(s.status)))return e(s);let d=Y(s.headers)??N(p,t.baseDelayMs,t.maxDelayMs);return k$1(L(d),()=>y(i,p+1))}):e$1(i);return i=>y(i,0)};var tt=(t,e)=>{try{return new URL(e,t??"").toString()}catch{return (t??"")+e}},B=(t={})=>{let e=U(t),r=p=>n((s,u)=>I$1(s,u))(p),n$1=p=>e(p),c=p=>{let{headers:s,...u}=p??{};return {headers:C(s),init:u}},a=p=>s=>p?k(p)(s):s;return {cfg:t,wire:e,withPromise:r,requestRaw:n$1,splitInit:c,applyInitHeaders:a,buildReq:(p,s,u,o)=>{let d=c(u),m={method:p,url:s,...o&&o.length>0?{body:o}:{},init:d.init};return a(d.headers)(m)},toResponse:(p,s)=>({status:p.status,statusText:p.statusText,headers:p.headers,body:s})}};function Ft(t={}){let e=B(t),r=n=>{let c=o=>n(o),a=o=>e.withPromise(c(o));return {request:a,get:(o,d)=>a(e.buildReq("GET",o,d)),post:(o,d,m)=>a(e.buildReq("POST",o,m,d)),getText:(o,d)=>{let m=e.buildReq("GET",o,d);return e.withPromise(p(c(m),H=>e.toResponse(H,H.bodyText)))},getJson:(o,d)=>{let m=e.buildReq("GET",o,d),H=M("accept","application/json")(m);return e.withPromise(p(c(H),O=>e.toResponse(O,JSON.parse(O.bodyText))))},postJson:(o,d,m)=>a(e.buildReq("POST",o,m,JSON.stringify(d??{}))),with:o=>r(n.with(o)),withRetry:o=>r(n.with(v(o))),wire:n}};return r(e.wire)}function Dt(t={}){let e=B(t),r=(s,u,o)=>({request:s,urlFinal:tt(e.cfg.baseUrl,s.url),startedAt:o,durationMs:u.ms}),n=s=>{let u=Date.now();return e.withPromise(p(e.requestRaw(s),o=>({wire:o,meta:r(s,o,u)})))};return {request:n,get:(s,u)=>{let o=e.buildReq("GET",s,u);return n(o)},getText:(s,u)=>{let o=e.buildReq("GET",s,u),d=Date.now();return e.withPromise(p(e.requestRaw(o),m=>({wire:m,response:e.toResponse(m,m.bodyText),meta:r(o,m,d)})))},getJson:(s,u)=>{let o=e.buildReq("GET",s,u),d=M("accept","application/json")(o),m=Date.now();return e.withPromise(p(e.requestRaw(d),H=>({wire:H,response:e.toResponse(H,JSON.parse(H.bodyText)),meta:r(d,H,m)})))},post:(s,u,o)=>{let d=e.buildReq("POST",s,o,u);return n(d)},postJson:(s,u,o)=>{let d=e.buildReq("POST",s,o,JSON.stringify(u)),m=M("content-type","application/json")(M("accept","application/json")(d));return n(m)}}}function It(t={}){let e=W(t),r=n$1=>{let c=i=>n((p,s)=>I$1(p,s))(i),a=i=>c(n$1(i)),y=(i,p)=>{let s={method:"GET",url:i,init:p},u=M("accept","*/*")(s);return a(u)};return {request:a,getStream:y,get:y,with:i=>r(i(n$1)),withRetry:i=>r(_(i)(n$1)),wire:n$1}};return r(e)}export{T as decorate,Ft as httpClient,It as httpClientStream,Dt as httpClientWithMeta,U as makeHttp,W as makeHttpStream,C as normalizeHeadersInit,dt as withMiddleware,_ as withRetryStream};
1
+ import {M as M$1,ja,a,p,n,f,k,e,I as I$1}from'../chunk-5UEH74EX.mjs';var A={make(t,e){return {get:t,set:e}},over(t,e){return r=>t.set(e(t.get(r)))(r)},compose(t,e){return A.make(r=>t.get(e.get(r)),r=>n=>e.set(t.set(r)(e.get(n)))(n))}};var M={headers:A.make(t=>t.headers??{},t=>e=>({...e,headers:t}))};var W=t=>e=>A.over(M.headers,r=>({...r,...t}))(e),S=t=>e=>A.over(M.headers,r=>({...t,...r}))(e),g=(t,e)=>r=>A.over(M.headers,n=>n[t]?n:{...n,[t]:e})(r);var mt=t=>e=>C(t(e)),C=t=>Object.assign((e=>t(e)),{with:e=>C(e(t))}),T=t=>t instanceof DOMException&&t.name==="AbortError"?{_tag:"Abort"}:typeof t=="object"&&t&&"_tag"in t?t:{_tag:"FetchError",message:String(t)},O=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}}},F=t=>e=>{let r=Object.keys(t).length?S(t)(e):e,n=O(e.init?.headers);return n&&Object.keys(n).length&&(r=S(n)(r)),r};function N(t={}){let e=t.baseUrl??"",r=t.headers??{},n=F(r);return p=>M$1(async c=>{let m=n(p),i;try{i=new URL(m.url,e);}catch{throw {_tag:"BadUrl",message:`URL inv\xE1lida: ${m.url}`}}let a=performance.now(),s=await fetch(i,{...m.init??{},method:m.method,headers:M.headers.get(m),body:m.body,signal:c}),u={};s.headers.forEach((d,y)=>u[y]=d);let o=ja(s.body,T);return {status:s.status,statusText:s.statusText,headers:u,body:o,ms:Math.round(performance.now()-a)}},T)}function U(t={}){let e=t.baseUrl??"",r=t.headers??{},n=F(r);return C(c=>M$1(async m=>{let i=n(c),a;try{a=new URL(i.url,e);}catch{throw {_tag:"BadUrl",message:`URL inv\xE1lida: ${i.url}`}}let s=performance.now(),u=await fetch(a,{...i.init??{},method:i.method,headers:M.headers.get(i),body:i.body,signal:m}),o=await u.text(),d={};return u.headers.forEach((y,H)=>d[H]=y),{status:u.status,statusText:u.statusText,headers:d,bodyText:o,ms:Math.round(performance.now()-s)}},T))}var J=(t,e,r)=>Math.max(e,Math.min(r,t)),G=t=>t._tag==="FetchError",z=t=>t===408||t===429||t===500||t===502||t===503||t===504,I=(t,e,r)=>{let n=e*Math.pow(2,t),p=J(n,0,r);return Math.floor(Math.random()*p)},D=t=>M$1(e=>new Promise((r,n)=>{if(e.aborted)return n({_tag:"Abort"});let p=setTimeout(r,t);e.addEventListener("abort",()=>{clearTimeout(p),n({_tag:"Abort"});},{once:true});}),e=>typeof e=="object"&&e&&"_tag"in e?e:{_tag:"FetchError",message:String(e)}),Z=t=>{let e=Object.keys(t).find(c=>c.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 p=Date.parse(r);if(Number.isFinite(p))return Math.max(0,p-Date.now())},_=t=>e$1=>(r=>{let n=p=>a(e$1(r),c=>{if(c._tag==="Abort"||c._tag==="BadUrl")return f(c);if(!(p<t.maxRetries&&(t.retryOnError??G)(c)))return f(c);let i=I(p,t.baseDelayMs,t.maxDelayMs);return k(D(i),()=>n(p+1))},c=>{if(!(p<t.maxRetries&&(t.retryOnStatus??z)(c.status)))return e(c);let a=Z(c.headers)??I(p,t.baseDelayMs,t.maxDelayMs);return k(D(a),()=>n(p+1))});return n(0)});var $=["GET","HEAD","OPTIONS"],K=t=>t===408||t===429||t===500||t===502||t===503||t===504,Q=t=>t._tag==="FetchError",V=t=>typeof t=="object"&&t!==null&&"name"in t&&t.name==="AbortError"?{_tag:"Abort"}:typeof t=="object"&&t&&"_tag"in t?t:{_tag:"FetchError",message:String(t)},L=t=>M$1(e=>new Promise((r,n)=>{let p=setTimeout(r,t),c=()=>{clearTimeout(p);let m=typeof globalThis.DOMException=="function"?new globalThis.DOMException("Aborted","AbortError"):{name:"AbortError"};n(m);};if(e.aborted)return c();e.addEventListener("abort",c,{once:true});}),V),X=(t,e,r)=>Math.max(e,Math.min(r,t)),v=(t,e,r)=>{let n=Math.max(0,e),p=Math.max(0,r),c=n*Math.pow(2,t),m=X(c,0,p);return Math.floor(Math.random()*m)},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())},B=t=>e$1=>{let r=t.retryOnMethods??$,n=t.retryOnStatus??K,p=t.retryOnError??Q,c=i=>r.includes(i.method),m=(i,a$1)=>c(i)?a(e$1(i),s=>{if(s._tag==="Abort"||s._tag==="BadUrl")return f(s);if(!(a$1<t.maxRetries&&p(s)))return f(s);let o=v(a$1,t.baseDelayMs,t.maxDelayMs);return k(L(o),()=>m(i,a$1+1))},s=>{if(!(a$1<t.maxRetries&&n(s.status)))return e(s);let d=tt(s.headers)??v(a$1,t.baseDelayMs,t.maxDelayMs);return k(L(d),()=>m(i,a$1+1))}):e$1(i);return i=>m(i,0)};var et=(t,e)=>{try{return new URL(e,t??"").toString()}catch{return (t??"")+e}},j=(t={})=>{let e=U(t),r=a=>n((s,u)=>I$1(s,u))(a),n$1=a=>e(a),p=a=>{let{headers:s,...u}=a??{};return {headers:O(s),init:u}},c=a=>s=>a?W(a)(s):s;return {cfg:t,wire:e,withPromise:r,requestRaw:n$1,splitInit:p,applyInitHeaders:c,buildReq:(a,s,u,o)=>{let d=p(u),y={method:a,url:s,...o&&o.length>0?{body:o}:{},init:d.init};return c(d.headers)(y)},toResponse:(a,s)=>({status:a.status,statusText:a.statusText,headers:a.headers,body:s})}};function Dt(t={}){let e=j(t),r=n=>{let p$1=o=>n(o),c=o=>e.withPromise(p$1(o));return {request:c,get:(o,d)=>c(e.buildReq("GET",o,d)),post:(o,d,y)=>c(e.buildReq("POST",o,y,d)),getText:(o,d)=>{let y=e.buildReq("GET",o,d);return e.withPromise(p(p$1(y),H=>e.toResponse(H,H.bodyText)))},getJson:(o,d)=>{let y=e.buildReq("GET",o,d),H=g("accept","application/json")(y);return e.withPromise(p(p$1(H),l=>e.toResponse(l,JSON.parse(l.bodyText))))},postJson:(o,d,y)=>{let H=e.buildReq("POST",o,y,JSON.stringify(d??{})),l=g("content-type","application/json")(g("accept","application/json")(H));return e.withPromise(p(p$1(l),P=>e.toResponse(P,JSON.parse(P.bodyText))))},with:o=>r(n.with(o)),withRetry:o=>r(n.with(B(o))),wire:n}};return r(e.wire)}function Ft(t={}){let e=j(t),r=(s,u,o)=>({request:s,urlFinal:et(e.cfg.baseUrl,s.url),startedAt:o,durationMs:u.ms}),n=s=>{let u=Date.now();return e.withPromise(p(e.requestRaw(s),o=>({wire:o,meta:r(s,o,u)})))};return {request:n,get:(s,u)=>{let o=e.buildReq("GET",s,u);return n(o)},getText:(s,u)=>{let o=e.buildReq("GET",s,u),d=Date.now();return e.withPromise(p(e.requestRaw(o),y=>({wire:y,response:e.toResponse(y,y.bodyText),meta:r(o,y,d)})))},getJson:(s,u)=>{let o=e.buildReq("GET",s,u),d=g("accept","application/json")(o),y=Date.now();return e.withPromise(p(e.requestRaw(d),H=>({wire:H,response:e.toResponse(H,JSON.parse(H.bodyText)),meta:r(d,H,y)})))},post:(s,u,o)=>{let d=e.buildReq("POST",s,o,u);return n(d)},postJson:(s,u,o)=>{let d=e.buildReq("POST",s,o,JSON.stringify(u??{})),y=g("content-type","application/json")(g("accept","application/json")(d)),H=Date.now();return e.withPromise(p(e.requestRaw(y),l=>({wire:l,response:e.toResponse(l,JSON.parse(l.bodyText)),meta:r(y,l,H)})))}}}function Nt(t={}){let e=N(t),r=n$1=>{let p=i=>n((a,s)=>I$1(a,s))(i),c=i=>p(n$1(i)),m=(i,a)=>{let s={method:"GET",url:i,init:a},u=g("accept","*/*")(s);return c(u)};return {request:c,getStream:m,get:m,with:i=>r(i(n$1)),withRetry:i=>r(_(i)(n$1)),wire:n$1}};return r(e)}export{C as decorate,Dt as httpClient,Nt as httpClientStream,Ft as httpClientWithMeta,U as makeHttp,N as makeHttpStream,O as normalizeHeadersInit,mt as withMiddleware,_ as withRetryStream};
package/dist/index.d.mts CHANGED
@@ -1,5 +1,5 @@
1
- import { A as Async, S as Scheduler, F as Fiber, E as Exit, I as Interrupted, Z as ZStream, a as Scope, O as Option } from './stream-CPScJVP0.mjs';
2
- export { y as AsyncWithPromise, K as CancelToken, J as Canceler, _ as Concat, Y as Emit, X as Empty, P as FiberId, Q as FiberStatus, $ as Flatten, a0 as FromPull, a1 as Merge, N as None, a3 as Normalize, R as RuntimeFiber, T as ScopeId, a2 as Scoped, D as Some, V as Task, b as ZIO, w as acquireRelease, r as async, j as asyncCatchAll, n as asyncFail, v as asyncFlatMap, i as asyncFold, x as asyncInterruptible, t as asyncMap, k as asyncMapError, l as asyncSucceed, p as asyncSync, q as asyncTotal, g as catchAll, ak as collectStream, ab as concatStream, aa as emitStream, a9 as emptyStream, h as end, f as fail, d as flatMap, ac as flattenStream, ai as foreachStream, aj as fromArray, a5 as fromPull, W as globalScheduler, M as linkAbortController, L as makeCancelToken, a7 as managedStream, m as map, B as mapAsync, e as mapError, af as mapStream, C as mapTryAsync, ad as merge, a8 as mergeStream, G as none, o as orElseOptional, ag as rangeStream, H as some, al as streamFromReadableStream, s as succeed, c as sync, ae as uncons, u as unit, a6 as unwrapScoped, a4 as widenOpt, z as withAsyncPromise, U as withScope, ah as zip } from './stream-CPScJVP0.mjs';
1
+ import { A as Async, S as Scheduler, F as Fiber, E as Exit, I as Interrupted, Z as ZStream, a as Scope, O as Option } from './stream-FmXbwFl9.mjs';
2
+ export { y as AsyncWithPromise, K as CancelToken, J as Canceler, $ as Concat, _ as Emit, Y as Empty, P as FiberId, Q as FiberStatus, a0 as Flatten, a1 as FromPull, a2 as Merge, N as None, a4 as Normalize, R as RuntimeFiber, T as ScopeId, a3 as Scoped, D as Some, W as Task, b as ZIO, w as acquireRelease, r as async, j as asyncCatchAll, n as asyncFail, v as asyncFlatMap, i as asyncFold, x as asyncInterruptible, t as asyncMap, k as asyncMapError, l as asyncSucceed, p as asyncSync, q as asyncTotal, g as catchAll, al as collectStream, ac as concatStream, ab as emitStream, aa as emptyStream, h as end, f as fail, d as flatMap, ad as flattenStream, aj as foreachStream, ak as fromArray, a6 as fromPull, X as globalScheduler, M as linkAbortController, L as makeCancelToken, a8 as managedStream, m as map, B as mapAsync, e as mapError, ag as mapStream, C as mapTryAsync, ae as merge, a9 as mergeStream, G as none, o as orElseOptional, ah as rangeStream, H as some, am as streamFromReadableStream, s as succeed, c as sync, af as uncons, u as unit, a7 as unwrapScoped, a5 as widenOpt, z as withAsyncPromise, U as withScope, V as withScopeAsync, ai as zip } from './stream-FmXbwFl9.mjs';
3
3
 
4
4
  type NodeCallback<A> = (err: Error | null, result: A) => void;
5
5
  declare function from<A>(f: (cb: NodeCallback<A>) => void): Async<{}, Error, A>;
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { A as Async, S as Scheduler, F as Fiber, E as Exit, I as Interrupted, Z as ZStream, a as Scope, O as Option } from './stream-CPScJVP0.js';
2
- export { y as AsyncWithPromise, K as CancelToken, J as Canceler, _ as Concat, Y as Emit, X as Empty, P as FiberId, Q as FiberStatus, $ as Flatten, a0 as FromPull, a1 as Merge, N as None, a3 as Normalize, R as RuntimeFiber, T as ScopeId, a2 as Scoped, D as Some, V as Task, b as ZIO, w as acquireRelease, r as async, j as asyncCatchAll, n as asyncFail, v as asyncFlatMap, i as asyncFold, x as asyncInterruptible, t as asyncMap, k as asyncMapError, l as asyncSucceed, p as asyncSync, q as asyncTotal, g as catchAll, ak as collectStream, ab as concatStream, aa as emitStream, a9 as emptyStream, h as end, f as fail, d as flatMap, ac as flattenStream, ai as foreachStream, aj as fromArray, a5 as fromPull, W as globalScheduler, M as linkAbortController, L as makeCancelToken, a7 as managedStream, m as map, B as mapAsync, e as mapError, af as mapStream, C as mapTryAsync, ad as merge, a8 as mergeStream, G as none, o as orElseOptional, ag as rangeStream, H as some, al as streamFromReadableStream, s as succeed, c as sync, ae as uncons, u as unit, a6 as unwrapScoped, a4 as widenOpt, z as withAsyncPromise, U as withScope, ah as zip } from './stream-CPScJVP0.js';
1
+ import { A as Async, S as Scheduler, F as Fiber, E as Exit, I as Interrupted, Z as ZStream, a as Scope, O as Option } from './stream-FmXbwFl9.js';
2
+ export { y as AsyncWithPromise, K as CancelToken, J as Canceler, $ as Concat, _ as Emit, Y as Empty, P as FiberId, Q as FiberStatus, a0 as Flatten, a1 as FromPull, a2 as Merge, N as None, a4 as Normalize, R as RuntimeFiber, T as ScopeId, a3 as Scoped, D as Some, W as Task, b as ZIO, w as acquireRelease, r as async, j as asyncCatchAll, n as asyncFail, v as asyncFlatMap, i as asyncFold, x as asyncInterruptible, t as asyncMap, k as asyncMapError, l as asyncSucceed, p as asyncSync, q as asyncTotal, g as catchAll, al as collectStream, ac as concatStream, ab as emitStream, aa as emptyStream, h as end, f as fail, d as flatMap, ad as flattenStream, aj as foreachStream, ak as fromArray, a6 as fromPull, X as globalScheduler, M as linkAbortController, L as makeCancelToken, a8 as managedStream, m as map, B as mapAsync, e as mapError, ag as mapStream, C as mapTryAsync, ae as merge, a9 as mergeStream, G as none, o as orElseOptional, ah as rangeStream, H as some, am as streamFromReadableStream, s as succeed, c as sync, af as uncons, u as unit, a7 as unwrapScoped, a5 as widenOpt, z as withAsyncPromise, U as withScope, V as withScopeAsync, ai as zip } from './stream-FmXbwFl9.js';
3
3
 
4
4
  type NodeCallback<A> = (err: Error | null, result: A) => void;
5
5
  declare function from<A>(f: (cb: NodeCallback<A>) => void): Async<{}, Error, A>;
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- 'use strict';var chunk2NVQIUW5_js=require('./chunk-2NVQIUW5.js');function Be(){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 He(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 w(t,e="backpressure"){return chunk2NVQIUW5_js.g(()=>M(t,e))}function M(t,e){let n=new chunk2NVQIUW5_js.B(t),r=false,s={_tag:"QueueClosed"},a=new v,o=new v,p=()=>{for(;o.length>0&&n.length>0;){let u=o.shift(),f=n.shift();u({_tag:"Success",value:f});}for(;a.length>0&&n.length<t&&o.length===0;){let u=a.shift();n.push(u.a),u.cb(true);}for(;o.length>0&&a.length>0;){let u=o.shift(),f=a.shift();f.cb(true),u({_tag:"Success",value:f.a});}};return {size:()=>n.length,shutdown:()=>{if(!r){for(r=true;o.length>0;)o.shift()({_tag:"Failure",error:s});for(;a.length>0;)a.shift().cb(false);n.clear();}},offer:u=>chunk2NVQIUW5_js.i((f,i)=>{if(r){i({_tag:"Success",value:false});return}if(o.length>0){o.shift()({_tag:"Success",value:u}),i({_tag:"Success",value:true});return}if(n.length<t){n.push(u),i({_tag:"Success",value:true}),p();return}if(e==="dropping"){i({_tag:"Success",value:false});return}if(e==="sliding"){n.shift(),n.push(u),i({_tag:"Success",value:true}),p();return}let m=a.push({a:u,cb:A=>i({_tag:"Success",value:A})});return ()=>{a.remove(m);}}),take:()=>chunk2NVQIUW5_js.i((u,f)=>{if(n.length>0){let A=n.shift();f({_tag:"Success",value:A}),p();return}if(a.length>0){let A=a.shift();A.cb(true),f({_tag:"Success",value:A.a});return}if(r){f({_tag:"Failure",error:s});return}let i=A=>f(A),m=o.push(i);return ()=>{o.remove(m);}})}}function F(t,e,n="backpressure"){let r=false,s=null,a=null,o=t,p=()=>chunk2NVQIUW5_js.a(chunk2NVQIUW5_js.ba(o),i=>chunk2NVQIUW5_js.e(i._tag==="None"?{_tag:"End"}:{_tag:"Fail",error:i.value}),([i,m])=>chunk2NVQIUW5_js.g(()=>(o=m,{_tag:"Elem",value:i}))),c=i=>chunk2NVQIUW5_js.k(w(e,n),m=>{s=m;let S=()=>chunk2NVQIUW5_js.k(p(),A=>chunk2NVQIUW5_js.k(s.offer(A),()=>A._tag==="End"||A._tag==="Fail"?chunk2NVQIUW5_js.e(void 0):S()));return a=chunk2NVQIUW5_js.G(S(),i),r=true,chunk2NVQIUW5_js.e(void 0)}),u={_tag:"Async",register:(i,m)=>{(()=>{if(!r){chunk2NVQIUW5_js.G(c(i),i).join(()=>{f(i,m);});return}f(i,m);})();}};function f(i,m){let S=s.take();chunk2NVQIUW5_js.G(S,i).join(A=>{if(A._tag!=="Success")return;let _=A.value;switch(_._tag){case "Elem":m({_tag:"Success",value:[_.value,chunk2NVQIUW5_js.U(u)]});return;case "End":a?.interrupt?.(),m({_tag:"Failure",error:chunk2NVQIUW5_js.q});return;case "Fail":a?.interrupt?.(),m({_tag:"Failure",error:chunk2NVQIUW5_js.r(_.error)});return}});}return chunk2NVQIUW5_js.U(u)}var I=t=>t==="BackPressure"?"backpressure":t==="Dropping"?"dropping":"sliding";function N(t,e="BackPressure"){let n=new Set,r=false,s=c=>{if(r)return chunk2NVQIUW5_js.e(false);let u=Array.from(n),f=chunk2NVQIUW5_js.e(true);return u.forEach(i=>{f=chunk2NVQIUW5_js.k(f,m=>chunk2NVQIUW5_js.k(i.offer(c),S=>chunk2NVQIUW5_js.e(m&&S)));}),f};return {publish:s,publishAll:c=>{let u=chunk2NVQIUW5_js.e(true),f=c[Symbol.iterator]();for(;;){let i=f.next();if(i.done)break;let m=i.value;u=chunk2NVQIUW5_js.k(u,S=>chunk2NVQIUW5_js.k(s(m),A=>chunk2NVQIUW5_js.e(S&&A)));}return u},subscribe:()=>r?chunk2NVQIUW5_js.h(()=>{throw {_tag:"HubClosed"}}):chunk2NVQIUW5_js.k(w(t,I(e)),c=>chunk2NVQIUW5_js.g(()=>(n.add(c),{...c,unsubscribe:()=>{n.has(c)&&(n.delete(c),c.shutdown());}}))),shutdown:()=>chunk2NVQIUW5_js.g(()=>{r||(r=true,Array.from(n).forEach(c=>c.shutdown()),n.clear());})}}var ln=N;function cn(t,e){return chunk2NVQIUW5_js.fa(t,n=>chunk2NVQIUW5_js.k(e.publish(n),()=>chunk2NVQIUW5_js.e(void 0)))}function pn(t){return chunk2NVQIUW5_js.W(chunk2NVQIUW5_js.k(t.subscribe(),e=>{let n=chunk2NVQIUW5_js.U(chunk2NVQIUW5_js.k(chunk2NVQIUW5_js.c(e.take(),r=>chunk2NVQIUW5_js.q),r=>chunk2NVQIUW5_js.e([r,n])));return chunk2NVQIUW5_js.e({stream:n,release:r=>chunk2NVQIUW5_js.g(()=>e.unsubscribe())})}))}function bn(t,e){return e(t)}function z(t,e){return(n=>e(t(n)))}function gn(t,e){return z(e,t)}function vn(){return(t=>t)}function xn(t){return(e=>{let n=r=>chunk2NVQIUW5_js.U(chunk2NVQIUW5_js.a(chunk2NVQIUW5_js.ba(r),s=>chunk2NVQIUW5_js.f(s),([s,a])=>chunk2NVQIUW5_js.e([t(s),n(a)])));return n(e)})}function kn(t){return(e=>{let n=s=>chunk2NVQIUW5_js.a(chunk2NVQIUW5_js.ba(s),a=>chunk2NVQIUW5_js.f(a),([a,o])=>t(a)?chunk2NVQIUW5_js.e([a,r(o)]):n(o)),r=s=>chunk2NVQIUW5_js.U(n(s));return r(e)})}function Zn(t){return(e=>{let n=s=>chunk2NVQIUW5_js.a(chunk2NVQIUW5_js.ba(s),a=>chunk2NVQIUW5_js.f(a),([a,o])=>{let p=t(a);return p._tag==="Some"?chunk2NVQIUW5_js.e([p.value,r(o)]):n(o)}),r=s=>chunk2NVQIUW5_js.U(n(s));return r(e)})}function wn(t){let e=Math.max(0,t|0);return(n=>{let r=(s,a)=>a<=0?chunk2NVQIUW5_js.Y():chunk2NVQIUW5_js.U(chunk2NVQIUW5_js.a(chunk2NVQIUW5_js.ba(s),o=>chunk2NVQIUW5_js.f(o),([o,p])=>chunk2NVQIUW5_js.e([o,r(p,a-1)])));return r(n,e)})}function _n(t){let e=Math.max(0,t|0);return(n=>{let r=(s,a)=>a<=0?s:chunk2NVQIUW5_js.U(chunk2NVQIUW5_js.a(chunk2NVQIUW5_js.ba(s),o=>chunk2NVQIUW5_js.f(o),([o,p])=>chunk2NVQIUW5_js.ba(r(p,a-1))));return r(n,e)})}function D(t){return(e=>{let n=r=>chunk2NVQIUW5_js.U(chunk2NVQIUW5_js.a(chunk2NVQIUW5_js.c(chunk2NVQIUW5_js.ba(r),s=>chunk2NVQIUW5_js.T(s)),s=>chunk2NVQIUW5_js.f(s),([s,a])=>chunk2NVQIUW5_js.a(chunk2NVQIUW5_js.c(t(s),o=>chunk2NVQIUW5_js.r(o)),o=>chunk2NVQIUW5_js.f(o),o=>chunk2NVQIUW5_js.e([o,n(a)]))));return n(e)})}function Cn(t){return D(e=>chunk2NVQIUW5_js.k(t(e),()=>chunk2NVQIUW5_js.e(e)))}function Pn(t,e="backpressure"){return(n=>F(n,t,e))}function On(t){let e=Math.max(1,t|0);return(n=>{let r=(a,o,p)=>o<=0?chunk2NVQIUW5_js.e({chunk:p,rest:a}):chunk2NVQIUW5_js.a(chunk2NVQIUW5_js.ba(a),c=>c._tag==="None"?chunk2NVQIUW5_js.e({chunk:p,rest:chunk2NVQIUW5_js.Y()}):chunk2NVQIUW5_js.f(c),([c,u])=>r(u,o-1,[...p,c])),s=a=>chunk2NVQIUW5_js.U(chunk2NVQIUW5_js.a(chunk2NVQIUW5_js.ba(a),o=>chunk2NVQIUW5_js.f(o),([o,p])=>chunk2NVQIUW5_js.k(r(p,e-1,[o]),({chunk:c,rest:u})=>chunk2NVQIUW5_js.e([c,s(u)]))));return s(n)})}Object.defineProperty(exports,"RingBuffer",{enumerable:true,get:function(){return chunk2NVQIUW5_js.B}});Object.defineProperty(exports,"RuntimeFiber",{enumerable:true,get:function(){return chunk2NVQIUW5_js.E}});Object.defineProperty(exports,"Scheduler",{enumerable:true,get:function(){return chunk2NVQIUW5_js.C}});Object.defineProperty(exports,"Scope",{enumerable:true,get:function(){return chunk2NVQIUW5_js.N}});Object.defineProperty(exports,"acquireRelease",{enumerable:true,get:function(){return chunk2NVQIUW5_js.l}});Object.defineProperty(exports,"async",{enumerable:true,get:function(){return chunk2NVQIUW5_js.i}});Object.defineProperty(exports,"asyncCatchAll",{enumerable:true,get:function(){return chunk2NVQIUW5_js.b}});Object.defineProperty(exports,"asyncFail",{enumerable:true,get:function(){return chunk2NVQIUW5_js.f}});Object.defineProperty(exports,"asyncFlatMap",{enumerable:true,get:function(){return chunk2NVQIUW5_js.k}});Object.defineProperty(exports,"asyncFold",{enumerable:true,get:function(){return chunk2NVQIUW5_js.a}});Object.defineProperty(exports,"asyncInterruptible",{enumerable:true,get:function(){return chunk2NVQIUW5_js.m}});Object.defineProperty(exports,"asyncMap",{enumerable:true,get:function(){return chunk2NVQIUW5_js.j}});Object.defineProperty(exports,"asyncMapError",{enumerable:true,get:function(){return chunk2NVQIUW5_js.c}});Object.defineProperty(exports,"asyncSucceed",{enumerable:true,get:function(){return chunk2NVQIUW5_js.e}});Object.defineProperty(exports,"asyncSync",{enumerable:true,get:function(){return chunk2NVQIUW5_js.g}});Object.defineProperty(exports,"asyncTotal",{enumerable:true,get:function(){return chunk2NVQIUW5_js.h}});Object.defineProperty(exports,"catchAll",{enumerable:true,get:function(){return chunk2NVQIUW5_js.y}});Object.defineProperty(exports,"collectAllPar",{enumerable:true,get:function(){return chunk2NVQIUW5_js.R}});Object.defineProperty(exports,"collectStream",{enumerable:true,get:function(){return chunk2NVQIUW5_js.ha}});Object.defineProperty(exports,"concatStream",{enumerable:true,get:function(){return chunk2NVQIUW5_js._}});Object.defineProperty(exports,"emitStream",{enumerable:true,get:function(){return chunk2NVQIUW5_js.Z}});Object.defineProperty(exports,"emptyStream",{enumerable:true,get:function(){return chunk2NVQIUW5_js.Y}});Object.defineProperty(exports,"end",{enumerable:true,get:function(){return chunk2NVQIUW5_js.A}});Object.defineProperty(exports,"fail",{enumerable:true,get:function(){return chunk2NVQIUW5_js.t}});Object.defineProperty(exports,"flatMap",{enumerable:true,get:function(){return chunk2NVQIUW5_js.w}});Object.defineProperty(exports,"flattenStream",{enumerable:true,get:function(){return chunk2NVQIUW5_js.$}});Object.defineProperty(exports,"foreachStream",{enumerable:true,get:function(){return chunk2NVQIUW5_js.fa}});Object.defineProperty(exports,"fork",{enumerable:true,get:function(){return chunk2NVQIUW5_js.G}});Object.defineProperty(exports,"from",{enumerable:true,get:function(){return chunk2NVQIUW5_js.F}});Object.defineProperty(exports,"fromArray",{enumerable:true,get:function(){return chunk2NVQIUW5_js.ga}});Object.defineProperty(exports,"fromCallback",{enumerable:true,get:function(){return chunk2NVQIUW5_js.K}});Object.defineProperty(exports,"fromPromise",{enumerable:true,get:function(){return chunk2NVQIUW5_js.J}});Object.defineProperty(exports,"fromPromiseAbortable",{enumerable:true,get:function(){return chunk2NVQIUW5_js.M}});Object.defineProperty(exports,"fromPull",{enumerable:true,get:function(){return chunk2NVQIUW5_js.U}});Object.defineProperty(exports,"globalScheduler",{enumerable:true,get:function(){return chunk2NVQIUW5_js.D}});Object.defineProperty(exports,"managedStream",{enumerable:true,get:function(){return chunk2NVQIUW5_js.W}});Object.defineProperty(exports,"map",{enumerable:true,get:function(){return chunk2NVQIUW5_js.v}});Object.defineProperty(exports,"mapAsync",{enumerable:true,get:function(){return chunk2NVQIUW5_js.o}});Object.defineProperty(exports,"mapError",{enumerable:true,get:function(){return chunk2NVQIUW5_js.x}});Object.defineProperty(exports,"mapStream",{enumerable:true,get:function(){return chunk2NVQIUW5_js.ca}});Object.defineProperty(exports,"mapTryAsync",{enumerable:true,get:function(){return chunk2NVQIUW5_js.p}});Object.defineProperty(exports,"merge",{enumerable:true,get:function(){return chunk2NVQIUW5_js.aa}});Object.defineProperty(exports,"mergeStream",{enumerable:true,get:function(){return chunk2NVQIUW5_js.X}});Object.defineProperty(exports,"none",{enumerable:true,get:function(){return chunk2NVQIUW5_js.q}});Object.defineProperty(exports,"orElseOptional",{enumerable:true,get:function(){return chunk2NVQIUW5_js.z}});Object.defineProperty(exports,"race",{enumerable:true,get:function(){return chunk2NVQIUW5_js.P}});Object.defineProperty(exports,"raceWith",{enumerable:true,get:function(){return chunk2NVQIUW5_js.S}});Object.defineProperty(exports,"rangeStream",{enumerable:true,get:function(){return chunk2NVQIUW5_js.da}});Object.defineProperty(exports,"some",{enumerable:true,get:function(){return chunk2NVQIUW5_js.r}});Object.defineProperty(exports,"streamFromReadableStream",{enumerable:true,get:function(){return chunk2NVQIUW5_js.ia}});Object.defineProperty(exports,"succeed",{enumerable:true,get:function(){return chunk2NVQIUW5_js.s}});Object.defineProperty(exports,"sync",{enumerable:true,get:function(){return chunk2NVQIUW5_js.u}});Object.defineProperty(exports,"toPromise",{enumerable:true,get:function(){return chunk2NVQIUW5_js.I}});Object.defineProperty(exports,"tryPromiseAbortable",{enumerable:true,get:function(){return chunk2NVQIUW5_js.L}});Object.defineProperty(exports,"uncons",{enumerable:true,get:function(){return chunk2NVQIUW5_js.ba}});Object.defineProperty(exports,"unit",{enumerable:true,get:function(){return chunk2NVQIUW5_js.d}});Object.defineProperty(exports,"unsafeRunAsync",{enumerable:true,get:function(){return chunk2NVQIUW5_js.H}});Object.defineProperty(exports,"unwrapScoped",{enumerable:true,get:function(){return chunk2NVQIUW5_js.V}});Object.defineProperty(exports,"widenOpt",{enumerable:true,get:function(){return chunk2NVQIUW5_js.T}});Object.defineProperty(exports,"withAsyncPromise",{enumerable:true,get:function(){return chunk2NVQIUW5_js.n}});Object.defineProperty(exports,"withScope",{enumerable:true,get:function(){return chunk2NVQIUW5_js.O}});Object.defineProperty(exports,"zip",{enumerable:true,get:function(){return chunk2NVQIUW5_js.ea}});Object.defineProperty(exports,"zipPar",{enumerable:true,get:function(){return chunk2NVQIUW5_js.Q}});exports.LinkedQueue=v;exports.andThen=z;exports.bounded=w;exports.broadcast=ln;exports.broadcastToHub=cn;exports.buffer=F;exports.bufferP=Pn;exports.compose=gn;exports.dropP=_n;exports.filterMapP=Zn;exports.filterP=kn;exports.fromHub=pn;exports.groupedP=On;exports.identity=vn;exports.linkAbortController=He;exports.makeCancelToken=Be;exports.makeHub=N;exports.mapEffectP=D;exports.mapP=xn;exports.takeP=wn;exports.tapEffectP=Cn;exports.via=bn;
1
+ 'use strict';var chunkKMTKZ4PS_js=require('./chunk-KMTKZ4PS.js');function He(){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 Qe(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 w(t,e="backpressure"){return chunkKMTKZ4PS_js.g(()=>M(t,e))}function M(t,e){let n=new chunkKMTKZ4PS_js.B(t),r=false,s={_tag:"QueueClosed"},a=new v,o=new v,p=()=>{for(;o.length>0&&n.length>0;){let u=o.shift(),f=n.shift();u({_tag:"Success",value:f});}for(;a.length>0&&n.length<t&&o.length===0;){let u=a.shift();n.push(u.a),u.cb(true);}for(;o.length>0&&a.length>0;){let u=o.shift(),f=a.shift();f.cb(true),u({_tag:"Success",value:f.a});}};return {size:()=>n.length,shutdown:()=>{if(!r){for(r=true;o.length>0;)o.shift()({_tag:"Failure",error:s});for(;a.length>0;)a.shift().cb(false);n.clear();}},offer:u=>chunkKMTKZ4PS_js.i((f,i)=>{if(r){i({_tag:"Success",value:false});return}if(o.length>0){o.shift()({_tag:"Success",value:u}),i({_tag:"Success",value:true});return}if(n.length<t){n.push(u),i({_tag:"Success",value:true}),p();return}if(e==="dropping"){i({_tag:"Success",value:false});return}if(e==="sliding"){n.shift(),n.push(u),i({_tag:"Success",value:true}),p();return}let m=a.push({a:u,cb:A=>i({_tag:"Success",value:A})});return ()=>{a.remove(m);}}),take:()=>chunkKMTKZ4PS_js.i((u,f)=>{if(n.length>0){let A=n.shift();f({_tag:"Success",value:A}),p();return}if(a.length>0){let A=a.shift();A.cb(true),f({_tag:"Success",value:A.a});return}if(r){f({_tag:"Failure",error:s});return}let i=A=>f(A),m=o.push(i);return ()=>{o.remove(m);}})}}function F(t,e,n="backpressure"){let r=false,s=null,a=null,o=t,p=()=>chunkKMTKZ4PS_js.a(chunkKMTKZ4PS_js.ca(o),i=>chunkKMTKZ4PS_js.e(i._tag==="None"?{_tag:"End"}:{_tag:"Fail",error:i.value}),([i,m])=>chunkKMTKZ4PS_js.g(()=>(o=m,{_tag:"Elem",value:i}))),c=i=>chunkKMTKZ4PS_js.k(w(e,n),m=>{s=m;let S=()=>chunkKMTKZ4PS_js.k(p(),A=>chunkKMTKZ4PS_js.k(s.offer(A),()=>A._tag==="End"||A._tag==="Fail"?chunkKMTKZ4PS_js.e(void 0):S()));return a=chunkKMTKZ4PS_js.G(S(),i),r=true,chunkKMTKZ4PS_js.e(void 0)}),u={_tag:"Async",register:(i,m)=>{(()=>{if(!r){chunkKMTKZ4PS_js.G(c(i),i).join(()=>{f(i,m);});return}f(i,m);})();}};function f(i,m){let S=s.take();chunkKMTKZ4PS_js.G(S,i).join(A=>{if(A._tag!=="Success")return;let _=A.value;switch(_._tag){case "Elem":m({_tag:"Success",value:[_.value,chunkKMTKZ4PS_js.V(u)]});return;case "End":a?.interrupt?.(),m({_tag:"Failure",error:chunkKMTKZ4PS_js.q});return;case "Fail":a?.interrupt?.(),m({_tag:"Failure",error:chunkKMTKZ4PS_js.r(_.error)});return}});}return chunkKMTKZ4PS_js.V(u)}var I=t=>t==="BackPressure"?"backpressure":t==="Dropping"?"dropping":"sliding";function N(t,e="BackPressure"){let n=new Set,r=false,s=c=>{if(r)return chunkKMTKZ4PS_js.e(false);let u=Array.from(n),f=chunkKMTKZ4PS_js.e(true);return u.forEach(i=>{f=chunkKMTKZ4PS_js.k(f,m=>chunkKMTKZ4PS_js.k(i.offer(c),S=>chunkKMTKZ4PS_js.e(m&&S)));}),f};return {publish:s,publishAll:c=>{let u=chunkKMTKZ4PS_js.e(true),f=c[Symbol.iterator]();for(;;){let i=f.next();if(i.done)break;let m=i.value;u=chunkKMTKZ4PS_js.k(u,S=>chunkKMTKZ4PS_js.k(s(m),A=>chunkKMTKZ4PS_js.e(S&&A)));}return u},subscribe:()=>r?chunkKMTKZ4PS_js.h(()=>{throw {_tag:"HubClosed"}}):chunkKMTKZ4PS_js.k(w(t,I(e)),c=>chunkKMTKZ4PS_js.g(()=>(n.add(c),{...c,unsubscribe:()=>{n.has(c)&&(n.delete(c),c.shutdown());}}))),shutdown:()=>chunkKMTKZ4PS_js.g(()=>{r||(r=true,Array.from(n).forEach(c=>c.shutdown()),n.clear());})}}var cn=N;function pn(t,e){return chunkKMTKZ4PS_js.ga(t,n=>chunkKMTKZ4PS_js.k(e.publish(n),()=>chunkKMTKZ4PS_js.e(void 0)))}function fn(t){return chunkKMTKZ4PS_js.X(chunkKMTKZ4PS_js.k(t.subscribe(),e=>{let n=chunkKMTKZ4PS_js.V(chunkKMTKZ4PS_js.k(chunkKMTKZ4PS_js.c(e.take(),r=>chunkKMTKZ4PS_js.q),r=>chunkKMTKZ4PS_js.e([r,n])));return chunkKMTKZ4PS_js.e({stream:n,release:r=>chunkKMTKZ4PS_js.g(()=>e.unsubscribe())})}))}function gn(t,e){return e(t)}function z(t,e){return(n=>e(t(n)))}function vn(t,e){return z(e,t)}function xn(){return(t=>t)}function kn(t){return(e=>{let n=r=>chunkKMTKZ4PS_js.V(chunkKMTKZ4PS_js.a(chunkKMTKZ4PS_js.ca(r),s=>chunkKMTKZ4PS_js.f(s),([s,a])=>chunkKMTKZ4PS_js.e([t(s),n(a)])));return n(e)})}function Zn(t){return(e=>{let n=s=>chunkKMTKZ4PS_js.a(chunkKMTKZ4PS_js.ca(s),a=>chunkKMTKZ4PS_js.f(a),([a,o])=>t(a)?chunkKMTKZ4PS_js.e([a,r(o)]):n(o)),r=s=>chunkKMTKZ4PS_js.V(n(s));return r(e)})}function wn(t){return(e=>{let n=s=>chunkKMTKZ4PS_js.a(chunkKMTKZ4PS_js.ca(s),a=>chunkKMTKZ4PS_js.f(a),([a,o])=>{let p=t(a);return p._tag==="Some"?chunkKMTKZ4PS_js.e([p.value,r(o)]):n(o)}),r=s=>chunkKMTKZ4PS_js.V(n(s));return r(e)})}function _n(t){let e=Math.max(0,t|0);return(n=>{let r=(s,a)=>a<=0?chunkKMTKZ4PS_js.Z():chunkKMTKZ4PS_js.V(chunkKMTKZ4PS_js.a(chunkKMTKZ4PS_js.ca(s),o=>chunkKMTKZ4PS_js.f(o),([o,p])=>chunkKMTKZ4PS_js.e([o,r(p,a-1)])));return r(n,e)})}function Cn(t){let e=Math.max(0,t|0);return(n=>{let r=(s,a)=>a<=0?s:chunkKMTKZ4PS_js.V(chunkKMTKZ4PS_js.a(chunkKMTKZ4PS_js.ca(s),o=>chunkKMTKZ4PS_js.f(o),([o,p])=>chunkKMTKZ4PS_js.ca(r(p,a-1))));return r(n,e)})}function D(t){return(e=>{let n=r=>chunkKMTKZ4PS_js.V(chunkKMTKZ4PS_js.a(chunkKMTKZ4PS_js.c(chunkKMTKZ4PS_js.ca(r),s=>chunkKMTKZ4PS_js.U(s)),s=>chunkKMTKZ4PS_js.f(s),([s,a])=>chunkKMTKZ4PS_js.a(chunkKMTKZ4PS_js.c(t(s),o=>chunkKMTKZ4PS_js.r(o)),o=>chunkKMTKZ4PS_js.f(o),o=>chunkKMTKZ4PS_js.e([o,n(a)]))));return n(e)})}function Pn(t){return D(e=>chunkKMTKZ4PS_js.k(t(e),()=>chunkKMTKZ4PS_js.e(e)))}function On(t,e="backpressure"){return(n=>F(n,t,e))}function Tn(t){let e=Math.max(1,t|0);return(n=>{let r=(a,o,p)=>o<=0?chunkKMTKZ4PS_js.e({chunk:p,rest:a}):chunkKMTKZ4PS_js.a(chunkKMTKZ4PS_js.ca(a),c=>c._tag==="None"?chunkKMTKZ4PS_js.e({chunk:p,rest:chunkKMTKZ4PS_js.Z()}):chunkKMTKZ4PS_js.f(c),([c,u])=>r(u,o-1,[...p,c])),s=a=>chunkKMTKZ4PS_js.V(chunkKMTKZ4PS_js.a(chunkKMTKZ4PS_js.ca(a),o=>chunkKMTKZ4PS_js.f(o),([o,p])=>chunkKMTKZ4PS_js.k(r(p,e-1,[o]),({chunk:c,rest:u})=>chunkKMTKZ4PS_js.e([c,s(u)]))));return s(n)})}Object.defineProperty(exports,"RingBuffer",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.B}});Object.defineProperty(exports,"RuntimeFiber",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.E}});Object.defineProperty(exports,"Scheduler",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.C}});Object.defineProperty(exports,"Scope",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.N}});Object.defineProperty(exports,"acquireRelease",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.l}});Object.defineProperty(exports,"async",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.i}});Object.defineProperty(exports,"asyncCatchAll",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.b}});Object.defineProperty(exports,"asyncFail",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.f}});Object.defineProperty(exports,"asyncFlatMap",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.k}});Object.defineProperty(exports,"asyncFold",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.a}});Object.defineProperty(exports,"asyncInterruptible",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.m}});Object.defineProperty(exports,"asyncMap",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.j}});Object.defineProperty(exports,"asyncMapError",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.c}});Object.defineProperty(exports,"asyncSucceed",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.e}});Object.defineProperty(exports,"asyncSync",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.g}});Object.defineProperty(exports,"asyncTotal",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.h}});Object.defineProperty(exports,"catchAll",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.y}});Object.defineProperty(exports,"collectAllPar",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.S}});Object.defineProperty(exports,"collectStream",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.ia}});Object.defineProperty(exports,"concatStream",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.$}});Object.defineProperty(exports,"emitStream",{enumerable:true,get:function(){return chunkKMTKZ4PS_js._}});Object.defineProperty(exports,"emptyStream",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.Z}});Object.defineProperty(exports,"end",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.A}});Object.defineProperty(exports,"fail",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.t}});Object.defineProperty(exports,"flatMap",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.w}});Object.defineProperty(exports,"flattenStream",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.aa}});Object.defineProperty(exports,"foreachStream",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.ga}});Object.defineProperty(exports,"fork",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.G}});Object.defineProperty(exports,"from",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.F}});Object.defineProperty(exports,"fromArray",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.ha}});Object.defineProperty(exports,"fromCallback",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.K}});Object.defineProperty(exports,"fromPromise",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.J}});Object.defineProperty(exports,"fromPromiseAbortable",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.M}});Object.defineProperty(exports,"fromPull",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.V}});Object.defineProperty(exports,"globalScheduler",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.D}});Object.defineProperty(exports,"managedStream",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.X}});Object.defineProperty(exports,"map",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.v}});Object.defineProperty(exports,"mapAsync",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.o}});Object.defineProperty(exports,"mapError",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.x}});Object.defineProperty(exports,"mapStream",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.da}});Object.defineProperty(exports,"mapTryAsync",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.p}});Object.defineProperty(exports,"merge",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.ba}});Object.defineProperty(exports,"mergeStream",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.Y}});Object.defineProperty(exports,"none",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.q}});Object.defineProperty(exports,"orElseOptional",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.z}});Object.defineProperty(exports,"race",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.Q}});Object.defineProperty(exports,"raceWith",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.T}});Object.defineProperty(exports,"rangeStream",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.ea}});Object.defineProperty(exports,"some",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.r}});Object.defineProperty(exports,"streamFromReadableStream",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.ja}});Object.defineProperty(exports,"succeed",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.s}});Object.defineProperty(exports,"sync",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.u}});Object.defineProperty(exports,"toPromise",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.I}});Object.defineProperty(exports,"tryPromiseAbortable",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.L}});Object.defineProperty(exports,"uncons",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.ca}});Object.defineProperty(exports,"unit",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.d}});Object.defineProperty(exports,"unsafeRunAsync",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.H}});Object.defineProperty(exports,"unwrapScoped",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.W}});Object.defineProperty(exports,"widenOpt",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.U}});Object.defineProperty(exports,"withAsyncPromise",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.n}});Object.defineProperty(exports,"withScope",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.O}});Object.defineProperty(exports,"withScopeAsync",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.P}});Object.defineProperty(exports,"zip",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.fa}});Object.defineProperty(exports,"zipPar",{enumerable:true,get:function(){return chunkKMTKZ4PS_js.R}});exports.LinkedQueue=v;exports.andThen=z;exports.bounded=w;exports.broadcast=cn;exports.broadcastToHub=pn;exports.buffer=F;exports.bufferP=On;exports.compose=vn;exports.dropP=Cn;exports.filterMapP=wn;exports.filterP=Zn;exports.fromHub=fn;exports.groupedP=Tn;exports.identity=xn;exports.linkAbortController=Qe;exports.makeCancelToken=He;exports.makeHub=N;exports.mapEffectP=D;exports.mapP=kn;exports.takeP=_n;exports.tapEffectP=Pn;exports.via=gn;
package/dist/index.mjs CHANGED
@@ -1 +1 @@
1
- import {g,B,i,U,h,k,e,fa,W,c,q,Y,G,r,a,ba,f,T}from'./chunk-JTRM4ZSS.mjs';export{B as RingBuffer,E as RuntimeFiber,C as Scheduler,N as Scope,l as acquireRelease,i as async,b as asyncCatchAll,f as asyncFail,k as asyncFlatMap,a as asyncFold,m as asyncInterruptible,j as asyncMap,c as asyncMapError,e as asyncSucceed,g as asyncSync,h as asyncTotal,y as catchAll,R as collectAllPar,ha as collectStream,_ as concatStream,Z as emitStream,Y as emptyStream,A as end,t as fail,w as flatMap,$ as flattenStream,fa as foreachStream,G as fork,F as from,ga as fromArray,K as fromCallback,J as fromPromise,M as fromPromiseAbortable,U as fromPull,D as globalScheduler,W as managedStream,v as map,o as mapAsync,x as mapError,ca as mapStream,p as mapTryAsync,aa as merge,X as mergeStream,q as none,z as orElseOptional,P as race,S as raceWith,da as rangeStream,r as some,ia as streamFromReadableStream,s as succeed,u as sync,I as toPromise,L as tryPromiseAbortable,ba as uncons,d as unit,H as unsafeRunAsync,V as unwrapScoped,T as widenOpt,n as withAsyncPromise,O as withScope,ea as zip,Q as zipPar}from'./chunk-JTRM4ZSS.mjs';function Be(){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 He(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 w(t,e="backpressure"){return g(()=>M(t,e))}function M(t,e){let n=new B(t),r=false,s={_tag:"QueueClosed"},a=new v,o=new v,p=()=>{for(;o.length>0&&n.length>0;){let u=o.shift(),f=n.shift();u({_tag:"Success",value:f});}for(;a.length>0&&n.length<t&&o.length===0;){let u=a.shift();n.push(u.a),u.cb(true);}for(;o.length>0&&a.length>0;){let u=o.shift(),f=a.shift();f.cb(true),u({_tag:"Success",value:f.a});}};return {size:()=>n.length,shutdown:()=>{if(!r){for(r=true;o.length>0;)o.shift()({_tag:"Failure",error:s});for(;a.length>0;)a.shift().cb(false);n.clear();}},offer:u=>i((f,i)=>{if(r){i({_tag:"Success",value:false});return}if(o.length>0){o.shift()({_tag:"Success",value:u}),i({_tag:"Success",value:true});return}if(n.length<t){n.push(u),i({_tag:"Success",value:true}),p();return}if(e==="dropping"){i({_tag:"Success",value:false});return}if(e==="sliding"){n.shift(),n.push(u),i({_tag:"Success",value:true}),p();return}let m=a.push({a:u,cb:A=>i({_tag:"Success",value:A})});return ()=>{a.remove(m);}}),take:()=>i((u,f)=>{if(n.length>0){let A=n.shift();f({_tag:"Success",value:A}),p();return}if(a.length>0){let A=a.shift();A.cb(true),f({_tag:"Success",value:A.a});return}if(r){f({_tag:"Failure",error:s});return}let i=A=>f(A),m=o.push(i);return ()=>{o.remove(m);}})}}function F(t,e$1,n="backpressure"){let r$1=false,s=null,a$1=null,o=t,p=()=>a(ba(o),i=>e(i._tag==="None"?{_tag:"End"}:{_tag:"Fail",error:i.value}),([i,m])=>g(()=>(o=m,{_tag:"Elem",value:i}))),c=i=>k(w(e$1,n),m=>{s=m;let S=()=>k(p(),A=>k(s.offer(A),()=>A._tag==="End"||A._tag==="Fail"?e(void 0):S()));return a$1=G(S(),i),r$1=true,e(void 0)}),u={_tag:"Async",register:(i,m)=>{(()=>{if(!r$1){G(c(i),i).join(()=>{f(i,m);});return}f(i,m);})();}};function f(i,m){let S=s.take();G(S,i).join(A=>{if(A._tag!=="Success")return;let _=A.value;switch(_._tag){case "Elem":m({_tag:"Success",value:[_.value,U(u)]});return;case "End":a$1?.interrupt?.(),m({_tag:"Failure",error:q});return;case "Fail":a$1?.interrupt?.(),m({_tag:"Failure",error:r(_.error)});return}});}return U(u)}var I=t=>t==="BackPressure"?"backpressure":t==="Dropping"?"dropping":"sliding";function N(t,e$1="BackPressure"){let n=new Set,r=false,s=c=>{if(r)return e(false);let u=Array.from(n),f=e(true);return u.forEach(i=>{f=k(f,m=>k(i.offer(c),S=>e(m&&S)));}),f};return {publish:s,publishAll:c=>{let u=e(true),f=c[Symbol.iterator]();for(;;){let i=f.next();if(i.done)break;let m=i.value;u=k(u,S=>k(s(m),A=>e(S&&A)));}return u},subscribe:()=>r?h(()=>{throw {_tag:"HubClosed"}}):k(w(t,I(e$1)),c=>g(()=>(n.add(c),{...c,unsubscribe:()=>{n.has(c)&&(n.delete(c),c.shutdown());}}))),shutdown:()=>g(()=>{r||(r=true,Array.from(n).forEach(c=>c.shutdown()),n.clear());})}}var ln=N;function cn(t,e$1){return fa(t,n=>k(e$1.publish(n),()=>e(void 0)))}function pn(t){return W(k(t.subscribe(),e$1=>{let n=U(k(c(e$1.take(),r=>q),r=>e([r,n])));return e({stream:n,release:r=>g(()=>e$1.unsubscribe())})}))}function bn(t,e){return e(t)}function z(t,e){return(n=>e(t(n)))}function gn(t,e){return z(e,t)}function vn(){return(t=>t)}function xn(t){return(e$1=>{let n=r=>U(a(ba(r),s=>f(s),([s,a])=>e([t(s),n(a)])));return n(e$1)})}function kn(t){return(e$1=>{let n=s=>a(ba(s),a=>f(a),([a,o])=>t(a)?e([a,r(o)]):n(o)),r=s=>U(n(s));return r(e$1)})}function Zn(t){return(e$1=>{let n=s=>a(ba(s),a=>f(a),([a,o])=>{let p=t(a);return p._tag==="Some"?e([p.value,r(o)]):n(o)}),r=s=>U(n(s));return r(e$1)})}function wn(t){let e$1=Math.max(0,t|0);return(n=>{let r=(s,a$1)=>a$1<=0?Y():U(a(ba(s),o=>f(o),([o,p])=>e([o,r(p,a$1-1)])));return r(n,e$1)})}function _n(t){let e=Math.max(0,t|0);return(n=>{let r=(s,a$1)=>a$1<=0?s:U(a(ba(s),o=>f(o),([o,p])=>ba(r(p,a$1-1))));return r(n,e)})}function D(t){return(e$1=>{let n=r$1=>U(a(c(ba(r$1),s=>T(s)),s=>f(s),([s,a$1])=>a(c(t(s),o=>r(o)),o=>f(o),o=>e([o,n(a$1)]))));return n(e$1)})}function Cn(t){return D(e$1=>k(t(e$1),()=>e(e$1)))}function Pn(t,e="backpressure"){return(n=>F(n,t,e))}function On(t){let e$1=Math.max(1,t|0);return(n=>{let r=(a$1,o,p)=>o<=0?e({chunk:p,rest:a$1}):a(ba(a$1),c=>c._tag==="None"?e({chunk:p,rest:Y()}):f(c),([c,u])=>r(u,o-1,[...p,c])),s=a$1=>U(a(ba(a$1),o=>f(o),([o,p])=>k(r(p,e$1-1,[o]),({chunk:c,rest:u})=>e([c,s(u)]))));return s(n)})}export{v as LinkedQueue,z as andThen,w as bounded,ln as broadcast,cn as broadcastToHub,F as buffer,Pn as bufferP,gn as compose,_n as dropP,Zn as filterMapP,kn as filterP,pn as fromHub,On as groupedP,vn as identity,He as linkAbortController,Be as makeCancelToken,N as makeHub,D as mapEffectP,xn as mapP,wn as takeP,Cn as tapEffectP,bn as via};
1
+ import {g,B,i,V,h,k,e,ga,X,c,q,Z,G,r,a,ca,f,U}from'./chunk-5UEH74EX.mjs';export{B as RingBuffer,E as RuntimeFiber,C as Scheduler,N as Scope,l as acquireRelease,i as async,b as asyncCatchAll,f as asyncFail,k as asyncFlatMap,a as asyncFold,m as asyncInterruptible,j as asyncMap,c as asyncMapError,e as asyncSucceed,g as asyncSync,h as asyncTotal,y as catchAll,S as collectAllPar,ia as collectStream,$ as concatStream,_ as emitStream,Z as emptyStream,A as end,t as fail,w as flatMap,aa as flattenStream,ga as foreachStream,G as fork,F as from,ha as fromArray,K as fromCallback,J as fromPromise,M as fromPromiseAbortable,V as fromPull,D as globalScheduler,X as managedStream,v as map,o as mapAsync,x as mapError,da as mapStream,p as mapTryAsync,ba as merge,Y as mergeStream,q as none,z as orElseOptional,Q as race,T as raceWith,ea as rangeStream,r as some,ja as streamFromReadableStream,s as succeed,u as sync,I as toPromise,L as tryPromiseAbortable,ca as uncons,d as unit,H as unsafeRunAsync,W as unwrapScoped,U as widenOpt,n as withAsyncPromise,O as withScope,P as withScopeAsync,fa as zip,R as zipPar}from'./chunk-5UEH74EX.mjs';function He(){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 Qe(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 w(t,e="backpressure"){return g(()=>M(t,e))}function M(t,e){let n=new B(t),r=false,s={_tag:"QueueClosed"},a=new v,o=new v,p=()=>{for(;o.length>0&&n.length>0;){let u=o.shift(),f=n.shift();u({_tag:"Success",value:f});}for(;a.length>0&&n.length<t&&o.length===0;){let u=a.shift();n.push(u.a),u.cb(true);}for(;o.length>0&&a.length>0;){let u=o.shift(),f=a.shift();f.cb(true),u({_tag:"Success",value:f.a});}};return {size:()=>n.length,shutdown:()=>{if(!r){for(r=true;o.length>0;)o.shift()({_tag:"Failure",error:s});for(;a.length>0;)a.shift().cb(false);n.clear();}},offer:u=>i((f,i)=>{if(r){i({_tag:"Success",value:false});return}if(o.length>0){o.shift()({_tag:"Success",value:u}),i({_tag:"Success",value:true});return}if(n.length<t){n.push(u),i({_tag:"Success",value:true}),p();return}if(e==="dropping"){i({_tag:"Success",value:false});return}if(e==="sliding"){n.shift(),n.push(u),i({_tag:"Success",value:true}),p();return}let m=a.push({a:u,cb:A=>i({_tag:"Success",value:A})});return ()=>{a.remove(m);}}),take:()=>i((u,f)=>{if(n.length>0){let A=n.shift();f({_tag:"Success",value:A}),p();return}if(a.length>0){let A=a.shift();A.cb(true),f({_tag:"Success",value:A.a});return}if(r){f({_tag:"Failure",error:s});return}let i=A=>f(A),m=o.push(i);return ()=>{o.remove(m);}})}}function F(t,e$1,n="backpressure"){let r$1=false,s=null,a$1=null,o=t,p=()=>a(ca(o),i=>e(i._tag==="None"?{_tag:"End"}:{_tag:"Fail",error:i.value}),([i,m])=>g(()=>(o=m,{_tag:"Elem",value:i}))),c=i=>k(w(e$1,n),m=>{s=m;let S=()=>k(p(),A=>k(s.offer(A),()=>A._tag==="End"||A._tag==="Fail"?e(void 0):S()));return a$1=G(S(),i),r$1=true,e(void 0)}),u={_tag:"Async",register:(i,m)=>{(()=>{if(!r$1){G(c(i),i).join(()=>{f(i,m);});return}f(i,m);})();}};function f(i,m){let S=s.take();G(S,i).join(A=>{if(A._tag!=="Success")return;let _=A.value;switch(_._tag){case "Elem":m({_tag:"Success",value:[_.value,V(u)]});return;case "End":a$1?.interrupt?.(),m({_tag:"Failure",error:q});return;case "Fail":a$1?.interrupt?.(),m({_tag:"Failure",error:r(_.error)});return}});}return V(u)}var I=t=>t==="BackPressure"?"backpressure":t==="Dropping"?"dropping":"sliding";function N(t,e$1="BackPressure"){let n=new Set,r=false,s=c=>{if(r)return e(false);let u=Array.from(n),f=e(true);return u.forEach(i=>{f=k(f,m=>k(i.offer(c),S=>e(m&&S)));}),f};return {publish:s,publishAll:c=>{let u=e(true),f=c[Symbol.iterator]();for(;;){let i=f.next();if(i.done)break;let m=i.value;u=k(u,S=>k(s(m),A=>e(S&&A)));}return u},subscribe:()=>r?h(()=>{throw {_tag:"HubClosed"}}):k(w(t,I(e$1)),c=>g(()=>(n.add(c),{...c,unsubscribe:()=>{n.has(c)&&(n.delete(c),c.shutdown());}}))),shutdown:()=>g(()=>{r||(r=true,Array.from(n).forEach(c=>c.shutdown()),n.clear());})}}var cn=N;function pn(t,e$1){return ga(t,n=>k(e$1.publish(n),()=>e(void 0)))}function fn(t){return X(k(t.subscribe(),e$1=>{let n=V(k(c(e$1.take(),r=>q),r=>e([r,n])));return e({stream:n,release:r=>g(()=>e$1.unsubscribe())})}))}function gn(t,e){return e(t)}function z(t,e){return(n=>e(t(n)))}function vn(t,e){return z(e,t)}function xn(){return(t=>t)}function kn(t){return(e$1=>{let n=r=>V(a(ca(r),s=>f(s),([s,a])=>e([t(s),n(a)])));return n(e$1)})}function Zn(t){return(e$1=>{let n=s=>a(ca(s),a=>f(a),([a,o])=>t(a)?e([a,r(o)]):n(o)),r=s=>V(n(s));return r(e$1)})}function wn(t){return(e$1=>{let n=s=>a(ca(s),a=>f(a),([a,o])=>{let p=t(a);return p._tag==="Some"?e([p.value,r(o)]):n(o)}),r=s=>V(n(s));return r(e$1)})}function _n(t){let e$1=Math.max(0,t|0);return(n=>{let r=(s,a$1)=>a$1<=0?Z():V(a(ca(s),o=>f(o),([o,p])=>e([o,r(p,a$1-1)])));return r(n,e$1)})}function Cn(t){let e=Math.max(0,t|0);return(n=>{let r=(s,a$1)=>a$1<=0?s:V(a(ca(s),o=>f(o),([o,p])=>ca(r(p,a$1-1))));return r(n,e)})}function D(t){return(e$1=>{let n=r$1=>V(a(c(ca(r$1),s=>U(s)),s=>f(s),([s,a$1])=>a(c(t(s),o=>r(o)),o=>f(o),o=>e([o,n(a$1)]))));return n(e$1)})}function Pn(t){return D(e$1=>k(t(e$1),()=>e(e$1)))}function On(t,e="backpressure"){return(n=>F(n,t,e))}function Tn(t){let e$1=Math.max(1,t|0);return(n=>{let r=(a$1,o,p)=>o<=0?e({chunk:p,rest:a$1}):a(ca(a$1),c=>c._tag==="None"?e({chunk:p,rest:Z()}):f(c),([c,u])=>r(u,o-1,[...p,c])),s=a$1=>V(a(ca(a$1),o=>f(o),([o,p])=>k(r(p,e$1-1,[o]),({chunk:c,rest:u})=>e([c,s(u)]))));return s(n)})}export{v as LinkedQueue,z as andThen,w as bounded,cn as broadcast,pn as broadcastToHub,F as buffer,On as bufferP,vn as compose,Cn as dropP,wn as filterMapP,Zn as filterP,fn as fromHub,Tn as groupedP,xn as identity,Qe as linkAbortController,He as makeCancelToken,N as makeHub,D as mapEffectP,kn as mapP,_n as takeP,Pn as tapEffectP,gn as via};
@@ -96,6 +96,7 @@ declare class Scope<R> {
96
96
  * Al final (éxito o error), se cierra el scope garantizando cleanup.
97
97
  */
98
98
  declare function withScope<R, A>(body: (scope: Scope<R>) => A): A;
99
+ declare function withScopeAsync<R, E, A>(use: (scope: Scope<R>) => Async<R, E, A>): Async<R, E | Interrupted, A>;
99
100
 
100
101
  type Async<R, E, A> = {
101
102
  _tag: "Succeed";
@@ -224,4 +225,4 @@ declare function fromArray<A>(values: readonly A[]): ZStream<unknown, never, A>;
224
225
  declare function collectStream<R, E, A>(stream: ZStream<R, E, A>): ZIO<R, E, A[]>;
225
226
  declare function streamFromReadableStream<E>(body: ReadableStream<Uint8Array> | null | undefined, normalizeError: Normalize<E>): ZStream<unknown, E, Uint8Array>;
226
227
 
227
- export { type Flatten as $, type Async as A, mapAsync as B, mapTryAsync as C, type Some as D, type Exit as E, type Fiber as F, none as G, some as H, type Interrupted as I, type Canceler as J, type CancelToken as K, makeCancelToken as L, linkAbortController as M, type None as N, type Option as O, type FiberId as P, type FiberStatus as Q, RuntimeFiber as R, Scheduler as S, type ScopeId as T, withScope as U, type Task as V, globalScheduler as W, type Empty as X, type Emit as Y, type ZStream as Z, type Concat as _, Scope as a, type FromPull as a0, type Merge as a1, type Scoped as a2, type Normalize as a3, widenOpt as a4, fromPull as a5, unwrapScoped as a6, managedStream as a7, mergeStream as a8, emptyStream as a9, emitStream as aa, concatStream as ab, flattenStream as ac, merge as ad, uncons as ae, mapStream as af, rangeStream as ag, zip as ah, foreachStream as ai, fromArray as aj, collectStream as ak, streamFromReadableStream as al, type ZIO as b, sync as c, flatMap as d, mapError as e, fail as f, catchAll as g, end as h, asyncFold as i, asyncCatchAll as j, asyncMapError as k, asyncSucceed as l, map as m, asyncFail as n, orElseOptional as o, asyncSync as p, asyncTotal as q, async as r, succeed as s, asyncMap as t, unit as u, asyncFlatMap as v, acquireRelease as w, asyncInterruptible as x, type AsyncWithPromise as y, withAsyncPromise as z };
228
+ export { type Concat as $, type Async as A, mapAsync as B, mapTryAsync as C, type Some as D, type Exit as E, type Fiber as F, none as G, some as H, type Interrupted as I, type Canceler as J, type CancelToken as K, makeCancelToken as L, linkAbortController as M, type None as N, type Option as O, type FiberId as P, type FiberStatus as Q, RuntimeFiber as R, Scheduler as S, type ScopeId as T, withScope as U, withScopeAsync as V, type Task as W, globalScheduler as X, type Empty as Y, type ZStream as Z, type Emit as _, Scope as a, type Flatten as a0, type FromPull as a1, type Merge as a2, type Scoped as a3, type Normalize as a4, widenOpt as a5, fromPull as a6, unwrapScoped as a7, managedStream as a8, mergeStream as a9, emptyStream as aa, emitStream as ab, concatStream as ac, flattenStream as ad, merge as ae, uncons as af, mapStream as ag, rangeStream as ah, zip as ai, foreachStream as aj, fromArray as ak, collectStream as al, streamFromReadableStream as am, type ZIO as b, sync as c, flatMap as d, mapError as e, fail as f, catchAll as g, end as h, asyncFold as i, asyncCatchAll as j, asyncMapError as k, asyncSucceed as l, map as m, asyncFail as n, orElseOptional as o, asyncSync as p, asyncTotal as q, async as r, succeed as s, asyncMap as t, unit as u, asyncFlatMap as v, acquireRelease as w, asyncInterruptible as x, type AsyncWithPromise as y, withAsyncPromise as z };
@@ -96,6 +96,7 @@ declare class Scope<R> {
96
96
  * Al final (éxito o error), se cierra el scope garantizando cleanup.
97
97
  */
98
98
  declare function withScope<R, A>(body: (scope: Scope<R>) => A): A;
99
+ declare function withScopeAsync<R, E, A>(use: (scope: Scope<R>) => Async<R, E, A>): Async<R, E | Interrupted, A>;
99
100
 
100
101
  type Async<R, E, A> = {
101
102
  _tag: "Succeed";
@@ -224,4 +225,4 @@ declare function fromArray<A>(values: readonly A[]): ZStream<unknown, never, A>;
224
225
  declare function collectStream<R, E, A>(stream: ZStream<R, E, A>): ZIO<R, E, A[]>;
225
226
  declare function streamFromReadableStream<E>(body: ReadableStream<Uint8Array> | null | undefined, normalizeError: Normalize<E>): ZStream<unknown, E, Uint8Array>;
226
227
 
227
- export { type Flatten as $, type Async as A, mapAsync as B, mapTryAsync as C, type Some as D, type Exit as E, type Fiber as F, none as G, some as H, type Interrupted as I, type Canceler as J, type CancelToken as K, makeCancelToken as L, linkAbortController as M, type None as N, type Option as O, type FiberId as P, type FiberStatus as Q, RuntimeFiber as R, Scheduler as S, type ScopeId as T, withScope as U, type Task as V, globalScheduler as W, type Empty as X, type Emit as Y, type ZStream as Z, type Concat as _, Scope as a, type FromPull as a0, type Merge as a1, type Scoped as a2, type Normalize as a3, widenOpt as a4, fromPull as a5, unwrapScoped as a6, managedStream as a7, mergeStream as a8, emptyStream as a9, emitStream as aa, concatStream as ab, flattenStream as ac, merge as ad, uncons as ae, mapStream as af, rangeStream as ag, zip as ah, foreachStream as ai, fromArray as aj, collectStream as ak, streamFromReadableStream as al, type ZIO as b, sync as c, flatMap as d, mapError as e, fail as f, catchAll as g, end as h, asyncFold as i, asyncCatchAll as j, asyncMapError as k, asyncSucceed as l, map as m, asyncFail as n, orElseOptional as o, asyncSync as p, asyncTotal as q, async as r, succeed as s, asyncMap as t, unit as u, asyncFlatMap as v, acquireRelease as w, asyncInterruptible as x, type AsyncWithPromise as y, withAsyncPromise as z };
228
+ export { type Concat as $, type Async as A, mapAsync as B, mapTryAsync as C, type Some as D, type Exit as E, type Fiber as F, none as G, some as H, type Interrupted as I, type Canceler as J, type CancelToken as K, makeCancelToken as L, linkAbortController as M, type None as N, type Option as O, type FiberId as P, type FiberStatus as Q, RuntimeFiber as R, Scheduler as S, type ScopeId as T, withScope as U, withScopeAsync as V, type Task as W, globalScheduler as X, type Empty as Y, type ZStream as Z, type Emit as _, Scope as a, type Flatten as a0, type FromPull as a1, type Merge as a2, type Scoped as a3, type Normalize as a4, widenOpt as a5, fromPull as a6, unwrapScoped as a7, managedStream as a8, mergeStream as a9, emptyStream as aa, emitStream as ab, concatStream as ac, flattenStream as ad, merge as ae, uncons as af, mapStream as ag, rangeStream as ah, zip as ai, foreachStream as aj, fromArray as ak, collectStream as al, streamFromReadableStream as am, type ZIO as b, sync as c, flatMap as d, mapError as e, fail as f, catchAll as g, end as h, asyncFold as i, asyncCatchAll as j, asyncMapError as k, asyncSucceed as l, map as m, asyncFail as n, orElseOptional as o, asyncSync as p, asyncTotal as q, async as r, succeed as s, asyncMap as t, unit as u, asyncFlatMap as v, acquireRelease as w, asyncInterruptible as x, type AsyncWithPromise as y, withAsyncPromise as z };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "brass-runtime",
3
- "version": "1.9.2",
3
+ "version": "1.9.4",
4
4
  "description": "Effect runtime utilities for TypeScript",
5
5
  "license": "ISC",
6
6
  "author": "",
@@ -1 +0,0 @@
1
- 'use strict';function R(t,e,n){return {_tag:"Fold",first:t,onFailure:e,onSuccess:n}}function Ae(t,e){return R(t,n=>e(n),n=>A(n))}function x(t,e){return R(t,n=>h(e(n)),n=>A(n))}var w=()=>A(void 0),A=t=>({_tag:"Succeed",value:t}),h=t=>({_tag:"Fail",error:t}),_=t=>({_tag:"Sync",thunk:t}),Ee=t=>_(()=>t()),E=t=>({_tag:"Async",register:t});function W(t,e){return p(t,n=>A(e(n)))}function p(t,e){return {_tag:"FlatMap",first:t,andThen:e}}function pe(t,e,n){return p(t,r=>(n.addFinalizer(a=>e(r,a)),A(r)))}function ye(t){return E(t)}var de=t=>e=>{let n=e;return n.toPromise||(n.toPromise=r=>t(e,r),n.unsafeRunPromise=()=>t(e,{})),n},Re=(t,e)=>p(t,n=>A(e(n))),fe=(t,e)=>p(t,n=>_(()=>e(n)));var b={_tag:"None"},F=t=>({_tag:"Some",value:t});var z=t=>A(t),B=t=>h(t),H=t=>_(e=>t(e)),I=(t,e)=>W(t,e),G=(t,e)=>p(t,n=>e(n)),M=(t,e)=>x(t,e),ve=(t,e)=>R(t,n=>e(n),n=>A(n));function U(t,e){return R(t,n=>n._tag==="Some"?h(n):e(),n=>A(n))}var xe=()=>B(b);var P=class{buf;head=0;tail=0;size_=0;constructor(e=1024){let n=Math.max(2,this.nextPow2(e));this.buf=new Array(n);}get length(){return this.size_}get capacity(){return this.buf.length}isEmpty(){return this.size_===0}push(e){this.size_===this.buf.length&&this.grow(),this.buf[this.tail]=e,this.tail=this.tail+1&this.buf.length-1,this.size_++;}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=new Array(e.length*2);for(let r=0;r<this.size_;r++)n[r]=e[this.head+r&e.length-1];this.buf=n,this.head=0,this.tail=this.size_;}nextPow2(e){let n=1;for(;n<e;)n<<=1;return n}};var Q=2048,$=4096,Y=(()=>{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)})(),j=class{queue=new P(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>$?"macro":"micro";this.requestFlush(r);}}requestFlush(e){e==="micro"?queueMicrotask(()=>this.flush()):Y(()=>this.flush());}flush(){if(this.flushing)return;this.flushing=true,this.scheduled=false;let e=0;try{for(;e<Q;){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>=Q||this.queue.length>$?"macro":"micro";this.requestFlush(n);}}}},J=new j;var m={CONTINUE:"Continue",SUSPEND:"Suspend",DONE:"Done"},S={QUEUED:"Queued",RUNNING:"Running",SUSPENDED:"Suspended",DONE:"Done"},ee=1,te=1024;function ne(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 N=class{constructor(e,n,r){this.scheduler=r;this.id=ee++,this.current=e,this.env=n;}id;closing=null;finishing=false;runState=S.RUNNING;interrupted=false;result=null;joiners=[];current;env;stack=[];fiberFinalizers=[];finalizersDrained=false;addFinalizer(e){this.fiberFinalizers.push(e);}status(){return this.result==null?"Running":this.interrupted?"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===S.DONE||this.runState===S.QUEUED||(this.runState=S.QUEUED,this.scheduler.schedule(()=>{if(this.runState===S.DONE)return;switch(this.runState=S.RUNNING,this.step()){case m.CONTINUE:this.schedule("continue");return;case m.SUSPEND:this.runState=S.SUSPENDED;return;case m.DONE:this.runState=S.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{n(e);}catch{}}}notify(e){if(this.result==null&&this.closing==null){this.finishing=true,this.closing=e,this.runFinalizersOnce(e),this.result=e;for(let n of this.joiners)n(e);this.joiners.length=0;}}onSuccess(e){let n=this.stack.pop();if(!n){this.notify({_tag:"Success",value:e});return}this.current=n._tag==="SuccessCont"?n.k(e):n.onSuccess(e);}onFailure(e){for(;this.stack.length>0;){let n=this.stack.pop();if(n._tag==="FoldCont"){this.current=n.onFailure(e);return}}this.notify({_tag:"Failure",error:e});}step(){let e=te;for(;e-- >0;){if(this.result!=null)return m.DONE;if(this.interrupted&&this.closing==null)return this.notify({_tag:"Failure",error:{_tag:"Interrupted"}}),m.DONE;let n=ne(this.current);switch(n._tag){case "Succeed":{this.onSuccess(n.value);break}case "Fail":{this.onFailure(n.error);break}case "Sync":{try{let r=n.thunk(this.env);this.onSuccess(r);}catch(r){this.onFailure(r);}break}case "FlatMap":{this.stack.push({_tag:"SuccessCont",k:n.andThen}),this.current=n.first;break}case "Fold":{this.stack.push({_tag:"FoldCont",onFailure:n.onFailure,onSuccess:n.onSuccess}),this.current=n.first;break}case "Async":{if(this.finishing)return this.result!=null?m.DONE:m.CONTINUE;let r=false,a=i=>{r||(r=true,!(this.result!=null||this.closing!=null)&&(this.current=i._tag==="Success"?{_tag:"Succeed",value:i.value}:{_tag:"Fail",error:i.error},this.schedule("async-resume")));},o=n.register(this.env,a);return typeof o=="function"&&this.addFinalizer(()=>{r=true;try{o();}catch{}}),m.SUSPEND}}}return this.result!=null?m.DONE:m.CONTINUE}};function De(t){return E((e,n)=>{let r=false,a=s=>{r||(r=true,n(s));},o=s=>a({_tag:"Failure",error:s instanceof Error?s:new Error(String(s))}),i=s=>a({_tag:"Success",value:s});try{typeof t=="function"&&t.length>=1?t((s,c)=>s?o(s):i(c)):t().then(i,o);}catch(s){o(s);}})}function Z(t,e,n=J){let r=new N(t,e,n);return r.schedule("initial-step"),r}function Te(t,e,n){Z(t,e).join(n);}function ze(t,e){return new Promise((n,r)=>{Z(t,e).join(o=>{let i=o;i._tag==="Success"?n(i.value):r(i.error);});})}function Me(t,e){return E((n,r)=>{t(n).then(a=>r({_tag:"Success",value:a})).catch(a=>r({_tag:"Failure",error:e(a)}));})}function Ue(t){return E((e,n)=>{let r=false,a=o=>{r||(r=true,n(o));};try{t((o,i)=>{a(o?{_tag:"Failure",error:o}:{_tag:"Success",value:i});});}catch(o){a({_tag:"Failure",error:o instanceof Error?o:new Error(String(o))});}})}function je(t){return re((n,r)=>t.length===1?t(r):t(n,r),n=>ae(n)?{_tag:"Abort"}:{_tag:"PromiseRejected",reason:n})}function re(t,e){return E((n,r)=>{let a=new AbortController,o=false,i=s=>{o||(o=true,r(s));};try{(t.length===1?t(a.signal):t(n,a.signal)).then(c=>i({_tag:"Success",value:c})).catch(c=>i({_tag:"Failure",error:e(c)}));}catch(s){i({_tag:"Failure",error:e(s)});}return ()=>{o=true,a.abort();}})}var ae=t=>typeof t=="object"&&t!==null&&"name"in t&&t.name==="AbortError";var oe=1;function se(t){return E((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});});})}function ie(t){return R(t,()=>w(),()=>w())}var O=class t{constructor(e){this.env=e;this.id=oe++;}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.env);return this.subScopes.add(e),e}fork(e,n){if(this.closed)throw new Error("Scope closed");let r=Z(e,n);return this.children.add(r),r.join(()=>{this.children.delete(r);}),r}close(e={_tag:"Success",value:void 0}){Z(this.closeAsync(e),this.env);}closeAsync(e={_tag:"Success",value:void 0},n={}){return E((r,a)=>{if(this.closed){a({_tag:"Success",value:void 0});return}this.closed=true;let o=Array.from(this.children),i=Array.from(this.subScopes);this.children.clear(),this.subScopes.clear();for(let l of o)try{l.interrupt();}catch{}let s=w();for(let l of i)s=p(s,()=>l.closeAsync(e,n));for(;this.finalizers.length>0;){let l=this.finalizers.pop();s=p(s,()=>ie(l(e)));}n.awaitChildren&&(s=p(s,()=>se(o))),Z(s,this.env).join(()=>a({_tag:"Success",value:void 0}));})}};function Ge(t){let e=new O({});try{return t(e)}finally{e.close();}}function Ke(t,e,n){return E((r,a)=>{let o=n.subScope(),i=false,s=f=>{i||(i=true,o.close(f),a(f));},c=o.fork(t,r),l=o.fork(e,r);c.join(s),l.join(s);})}function Ve(t,e,n){return E((r,a)=>{let o=n.subScope(),i=null,s=null,c=false,l=()=>{if(!i||!s||c)return;if(c=true,i._tag==="Success"&&s._tag==="Success"){o.close({_tag:"Success",value:void 0}),a({_tag:"Success",value:[i.value,s.value]});return}let u;if(i._tag==="Failure")u=i.error;else if(s._tag==="Failure")u=s.error;else throw new Error("zipPar: unreachable state (no Failure exit)");let g={_tag:"Failure",error:u};o.close(g),a(g);},f=o.fork(t,r),d=o.fork(e,r);f.join(u=>{i=u,l();}),d.join(u=>{s=u,l();});})}function Xe(t,e){return E((n,r)=>{let a=e.subScope(),o=new Array(t.length),i=0,s=false;t.forEach((c,l)=>{a.fork(c,n).join(d=>{if(!s){if(d._tag==="Failure"){s=true;let u={_tag:"Failure",error:d.error};a.close(u),r(u);return}if(o[l]=d.value,i++,i===t.length){s=true;let u={_tag:"Success",value:o};a.close({_tag:"Success",value:void 0}),r(u);}}});});})}function K(t,e,n,r,a){return E((o,i)=>{let s=n.subScope(),c=false,l=s.fork(t,o),f=s.fork(e,o),d=u=>{s.fork(u,o).join(g=>{s.close(g),i(g);});};l.join(u=>{c||(c=true,d(r(u,f,s)));}),f.join(u=>{c||(c=true,d(a(u,l,s)));});})}var q=t=>t._tag==="None"?b:F(t.value),v=t=>({_tag:"FromPull",pull:t}),ce=(t,e)=>({_tag:"Scoped",acquire:t,release:e}),lt=t=>({_tag:"Scoped",acquire:p(t,e=>A(e.stream)),release:e=>p(t,n=>n.release(e))}),At=(t,e,n=true)=>({_tag:"Merge",left:t,right:e,flip:n}),T=()=>({_tag:"Empty"}),X=t=>({_tag:"Emit",value:t}),C=(t,e)=>({_tag:"Concat",left:t,right:e}),L=t=>({_tag:"Flatten",stream:t});function V(t,e,n,r,a){return (o,i,s)=>{if(o._tag,o._tag,o._tag==="Success"){let[f,d]=o.value;i.interrupt();let u=v(t==="L"?D(d,n):D(e,d));return A([f,u])}let c=o.error;if(typeof c=="object"&&c!==null&&c._tag==="Interrupted")return h(c);let l=c;return l._tag==="None"?y(t==="L"?n:e):h(l)}}function D(t,e,n,r){return E((a,o)=>{let s=new O(a),c=y(t),l=y(e),f=V("L",t,e),d=V("R",t,e),u=K(c,l,s,f,d);s.fork(u,a).join(g=>{s.close(g),o(g);});})}function Et(t,e){return v(D(t,e))}function y(t){switch(t._tag){case "Empty":return B(b);case "Emit":return I(M(t.value,e=>F(e)),e=>[e,T()]);case "FromPull":return t.pull;case "Concat":return U(I(y(t.left),([e,n])=>[e,C(n,t.right)]),()=>y(t.right));case "Flatten":return G(y(t.stream),([e,n])=>U(I(y(e),([r,a])=>[r,C(a,L(n))]),()=>y(L(n))));case "Merge":return D(t.left,t.right,t.flip);case "Scoped":return E((e,n)=>{let r=new O(e);r.addFinalizer(a=>t.release(a)),r.fork(t.acquire,e).join(a=>{if(a._tag==="Failure"){r.close(a),n({_tag:"Failure",error:F(a.error)});return}let o=a.value;y(o)(e,s=>{r.close(s),n(s);});});})}}function k(t,e){switch(t._tag){case "Empty":return T();case "Emit":return X(I(t.value,e));case "FromPull":return v(I(t.pull,([n,r])=>[e(n),k(r,e)]));case "Concat":return C(k(t.left,e),k(t.right,e));case "Flatten":{let n=k(t.stream,r=>k(r,e));return L(n)}}}function pt(t,e){let n=r=>v(r>e?h(b):A([r,n(r+1)]));return n(t)}function ue(t,e){let n=R(x(y(t),r=>q(r)),r=>h(r),([r,a])=>R(x(y(e),o=>q(o)),o=>h(o),([o,i])=>A([[r,o],ue(a,i)])));return v(n)}function yt(t,e){let n=r=>R(x(y(r),a=>q(a)),a=>a._tag==="None"?A(void 0):h(a),([a,o])=>p(x(e(a),i=>F(i)),()=>n(o)));return R(n(t),r=>r._tag==="None"?A(void 0):h(r.value),()=>A(void 0))}function dt(t){let e=T();for(let n=t.length-1;n>=0;n--){let r=X(z(t[n]));e=C(r,e);}return e}function Rt(t){let e=(n,r)=>R(y(n),a=>a._tag==="None"?z(r):B(a),([a,o])=>e(o,[...r,a]));return M(e(t,[]),n=>{if(n._tag==="Some")return n.value;throw new Error("unreachable: stream end handled as success")})}function le(t,e){let n=E((r,a)=>{t.read().then(({done:o,value:i})=>{if(o){a({_tag:"Failure",error:b});return}a({_tag:"Success",value:[i,v(n)]});}).catch(o=>{a({_tag:"Failure",error:F(e(o))});});});return v(n)}function ft(t,e){if(!t)return T();let n;return ce(H(()=>(n=t.getReader(),le(n,e))),()=>_(()=>{try{n?.cancel();}catch{}}))}exports.$=L;exports.A=xe;exports.B=P;exports.C=j;exports.D=J;exports.E=N;exports.F=De;exports.G=Z;exports.H=Te;exports.I=ze;exports.J=Me;exports.K=Ue;exports.L=je;exports.M=re;exports.N=O;exports.O=Ge;exports.P=Ke;exports.Q=Ve;exports.R=Xe;exports.S=K;exports.T=q;exports.U=v;exports.V=ce;exports.W=lt;exports.X=At;exports.Y=T;exports.Z=X;exports._=C;exports.a=R;exports.aa=Et;exports.b=Ae;exports.ba=y;exports.c=x;exports.ca=k;exports.d=w;exports.da=pt;exports.e=A;exports.ea=ue;exports.f=h;exports.fa=yt;exports.g=_;exports.ga=dt;exports.h=Ee;exports.ha=Rt;exports.i=E;exports.ia=ft;exports.j=W;exports.k=p;exports.l=pe;exports.m=ye;exports.n=de;exports.o=Re;exports.p=fe;exports.q=b;exports.r=F;exports.s=z;exports.t=B;exports.u=H;exports.v=I;exports.w=G;exports.x=M;exports.y=ve;exports.z=U;
@@ -1 +0,0 @@
1
- function R(t,e,n){return {_tag:"Fold",first:t,onFailure:e,onSuccess:n}}function Ae(t,e){return R(t,n=>e(n),n=>A(n))}function x(t,e){return R(t,n=>h(e(n)),n=>A(n))}var w=()=>A(void 0),A=t=>({_tag:"Succeed",value:t}),h=t=>({_tag:"Fail",error:t}),_=t=>({_tag:"Sync",thunk:t}),Ee=t=>_(()=>t()),E=t=>({_tag:"Async",register:t});function W(t,e){return p(t,n=>A(e(n)))}function p(t,e){return {_tag:"FlatMap",first:t,andThen:e}}function pe(t,e,n){return p(t,r=>(n.addFinalizer(a=>e(r,a)),A(r)))}function ye(t){return E(t)}var de=t=>e=>{let n=e;return n.toPromise||(n.toPromise=r=>t(e,r),n.unsafeRunPromise=()=>t(e,{})),n},Re=(t,e)=>p(t,n=>A(e(n))),fe=(t,e)=>p(t,n=>_(()=>e(n)));var b={_tag:"None"},F=t=>({_tag:"Some",value:t});var z=t=>A(t),B=t=>h(t),H=t=>_(e=>t(e)),I=(t,e)=>W(t,e),G=(t,e)=>p(t,n=>e(n)),M=(t,e)=>x(t,e),ve=(t,e)=>R(t,n=>e(n),n=>A(n));function U(t,e){return R(t,n=>n._tag==="Some"?h(n):e(),n=>A(n))}var xe=()=>B(b);var P=class{buf;head=0;tail=0;size_=0;constructor(e=1024){let n=Math.max(2,this.nextPow2(e));this.buf=new Array(n);}get length(){return this.size_}get capacity(){return this.buf.length}isEmpty(){return this.size_===0}push(e){this.size_===this.buf.length&&this.grow(),this.buf[this.tail]=e,this.tail=this.tail+1&this.buf.length-1,this.size_++;}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=new Array(e.length*2);for(let r=0;r<this.size_;r++)n[r]=e[this.head+r&e.length-1];this.buf=n,this.head=0,this.tail=this.size_;}nextPow2(e){let n=1;for(;n<e;)n<<=1;return n}};var Q=2048,$=4096,Y=(()=>{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)})(),j=class{queue=new P(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>$?"macro":"micro";this.requestFlush(r);}}requestFlush(e){e==="micro"?queueMicrotask(()=>this.flush()):Y(()=>this.flush());}flush(){if(this.flushing)return;this.flushing=true,this.scheduled=false;let e=0;try{for(;e<Q;){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>=Q||this.queue.length>$?"macro":"micro";this.requestFlush(n);}}}},J=new j;var m={CONTINUE:"Continue",SUSPEND:"Suspend",DONE:"Done"},S={QUEUED:"Queued",RUNNING:"Running",SUSPENDED:"Suspended",DONE:"Done"},ee=1,te=1024;function ne(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 N=class{constructor(e,n,r){this.scheduler=r;this.id=ee++,this.current=e,this.env=n;}id;closing=null;finishing=false;runState=S.RUNNING;interrupted=false;result=null;joiners=[];current;env;stack=[];fiberFinalizers=[];finalizersDrained=false;addFinalizer(e){this.fiberFinalizers.push(e);}status(){return this.result==null?"Running":this.interrupted?"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===S.DONE||this.runState===S.QUEUED||(this.runState=S.QUEUED,this.scheduler.schedule(()=>{if(this.runState===S.DONE)return;switch(this.runState=S.RUNNING,this.step()){case m.CONTINUE:this.schedule("continue");return;case m.SUSPEND:this.runState=S.SUSPENDED;return;case m.DONE:this.runState=S.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{n(e);}catch{}}}notify(e){if(this.result==null&&this.closing==null){this.finishing=true,this.closing=e,this.runFinalizersOnce(e),this.result=e;for(let n of this.joiners)n(e);this.joiners.length=0;}}onSuccess(e){let n=this.stack.pop();if(!n){this.notify({_tag:"Success",value:e});return}this.current=n._tag==="SuccessCont"?n.k(e):n.onSuccess(e);}onFailure(e){for(;this.stack.length>0;){let n=this.stack.pop();if(n._tag==="FoldCont"){this.current=n.onFailure(e);return}}this.notify({_tag:"Failure",error:e});}step(){let e=te;for(;e-- >0;){if(this.result!=null)return m.DONE;if(this.interrupted&&this.closing==null)return this.notify({_tag:"Failure",error:{_tag:"Interrupted"}}),m.DONE;let n=ne(this.current);switch(n._tag){case "Succeed":{this.onSuccess(n.value);break}case "Fail":{this.onFailure(n.error);break}case "Sync":{try{let r=n.thunk(this.env);this.onSuccess(r);}catch(r){this.onFailure(r);}break}case "FlatMap":{this.stack.push({_tag:"SuccessCont",k:n.andThen}),this.current=n.first;break}case "Fold":{this.stack.push({_tag:"FoldCont",onFailure:n.onFailure,onSuccess:n.onSuccess}),this.current=n.first;break}case "Async":{if(this.finishing)return this.result!=null?m.DONE:m.CONTINUE;let r=false,a=i=>{r||(r=true,!(this.result!=null||this.closing!=null)&&(this.current=i._tag==="Success"?{_tag:"Succeed",value:i.value}:{_tag:"Fail",error:i.error},this.schedule("async-resume")));},o=n.register(this.env,a);return typeof o=="function"&&this.addFinalizer(()=>{r=true;try{o();}catch{}}),m.SUSPEND}}}return this.result!=null?m.DONE:m.CONTINUE}};function De(t){return E((e,n)=>{let r=false,a=s=>{r||(r=true,n(s));},o=s=>a({_tag:"Failure",error:s instanceof Error?s:new Error(String(s))}),i=s=>a({_tag:"Success",value:s});try{typeof t=="function"&&t.length>=1?t((s,c)=>s?o(s):i(c)):t().then(i,o);}catch(s){o(s);}})}function Z(t,e,n=J){let r=new N(t,e,n);return r.schedule("initial-step"),r}function Te(t,e,n){Z(t,e).join(n);}function ze(t,e){return new Promise((n,r)=>{Z(t,e).join(o=>{let i=o;i._tag==="Success"?n(i.value):r(i.error);});})}function Me(t,e){return E((n,r)=>{t(n).then(a=>r({_tag:"Success",value:a})).catch(a=>r({_tag:"Failure",error:e(a)}));})}function Ue(t){return E((e,n)=>{let r=false,a=o=>{r||(r=true,n(o));};try{t((o,i)=>{a(o?{_tag:"Failure",error:o}:{_tag:"Success",value:i});});}catch(o){a({_tag:"Failure",error:o instanceof Error?o:new Error(String(o))});}})}function je(t){return re((n,r)=>t.length===1?t(r):t(n,r),n=>ae(n)?{_tag:"Abort"}:{_tag:"PromiseRejected",reason:n})}function re(t,e){return E((n,r)=>{let a=new AbortController,o=false,i=s=>{o||(o=true,r(s));};try{(t.length===1?t(a.signal):t(n,a.signal)).then(c=>i({_tag:"Success",value:c})).catch(c=>i({_tag:"Failure",error:e(c)}));}catch(s){i({_tag:"Failure",error:e(s)});}return ()=>{o=true,a.abort();}})}var ae=t=>typeof t=="object"&&t!==null&&"name"in t&&t.name==="AbortError";var oe=1;function se(t){return E((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});});})}function ie(t){return R(t,()=>w(),()=>w())}var O=class t{constructor(e){this.env=e;this.id=oe++;}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.env);return this.subScopes.add(e),e}fork(e,n){if(this.closed)throw new Error("Scope closed");let r=Z(e,n);return this.children.add(r),r.join(()=>{this.children.delete(r);}),r}close(e={_tag:"Success",value:void 0}){Z(this.closeAsync(e),this.env);}closeAsync(e={_tag:"Success",value:void 0},n={}){return E((r,a)=>{if(this.closed){a({_tag:"Success",value:void 0});return}this.closed=true;let o=Array.from(this.children),i=Array.from(this.subScopes);this.children.clear(),this.subScopes.clear();for(let l of o)try{l.interrupt();}catch{}let s=w();for(let l of i)s=p(s,()=>l.closeAsync(e,n));for(;this.finalizers.length>0;){let l=this.finalizers.pop();s=p(s,()=>ie(l(e)));}n.awaitChildren&&(s=p(s,()=>se(o))),Z(s,this.env).join(()=>a({_tag:"Success",value:void 0}));})}};function Ge(t){let e=new O({});try{return t(e)}finally{e.close();}}function Ke(t,e,n){return E((r,a)=>{let o=n.subScope(),i=false,s=f=>{i||(i=true,o.close(f),a(f));},c=o.fork(t,r),l=o.fork(e,r);c.join(s),l.join(s);})}function Ve(t,e,n){return E((r,a)=>{let o=n.subScope(),i=null,s=null,c=false,l=()=>{if(!i||!s||c)return;if(c=true,i._tag==="Success"&&s._tag==="Success"){o.close({_tag:"Success",value:void 0}),a({_tag:"Success",value:[i.value,s.value]});return}let u;if(i._tag==="Failure")u=i.error;else if(s._tag==="Failure")u=s.error;else throw new Error("zipPar: unreachable state (no Failure exit)");let g={_tag:"Failure",error:u};o.close(g),a(g);},f=o.fork(t,r),d=o.fork(e,r);f.join(u=>{i=u,l();}),d.join(u=>{s=u,l();});})}function Xe(t,e){return E((n,r)=>{let a=e.subScope(),o=new Array(t.length),i=0,s=false;t.forEach((c,l)=>{a.fork(c,n).join(d=>{if(!s){if(d._tag==="Failure"){s=true;let u={_tag:"Failure",error:d.error};a.close(u),r(u);return}if(o[l]=d.value,i++,i===t.length){s=true;let u={_tag:"Success",value:o};a.close({_tag:"Success",value:void 0}),r(u);}}});});})}function K(t,e,n,r,a){return E((o,i)=>{let s=n.subScope(),c=false,l=s.fork(t,o),f=s.fork(e,o),d=u=>{s.fork(u,o).join(g=>{s.close(g),i(g);});};l.join(u=>{c||(c=true,d(r(u,f,s)));}),f.join(u=>{c||(c=true,d(a(u,l,s)));});})}var q=t=>t._tag==="None"?b:F(t.value),v=t=>({_tag:"FromPull",pull:t}),ce=(t,e)=>({_tag:"Scoped",acquire:t,release:e}),lt=t=>({_tag:"Scoped",acquire:p(t,e=>A(e.stream)),release:e=>p(t,n=>n.release(e))}),At=(t,e,n=true)=>({_tag:"Merge",left:t,right:e,flip:n}),T=()=>({_tag:"Empty"}),X=t=>({_tag:"Emit",value:t}),C=(t,e)=>({_tag:"Concat",left:t,right:e}),L=t=>({_tag:"Flatten",stream:t});function V(t,e,n,r,a){return (o,i,s)=>{if(o._tag,o._tag,o._tag==="Success"){let[f,d]=o.value;i.interrupt();let u=v(t==="L"?D(d,n):D(e,d));return A([f,u])}let c=o.error;if(typeof c=="object"&&c!==null&&c._tag==="Interrupted")return h(c);let l=c;return l._tag==="None"?y(t==="L"?n:e):h(l)}}function D(t,e,n,r){return E((a,o)=>{let s=new O(a),c=y(t),l=y(e),f=V("L",t,e),d=V("R",t,e),u=K(c,l,s,f,d);s.fork(u,a).join(g=>{s.close(g),o(g);});})}function Et(t,e){return v(D(t,e))}function y(t){switch(t._tag){case "Empty":return B(b);case "Emit":return I(M(t.value,e=>F(e)),e=>[e,T()]);case "FromPull":return t.pull;case "Concat":return U(I(y(t.left),([e,n])=>[e,C(n,t.right)]),()=>y(t.right));case "Flatten":return G(y(t.stream),([e,n])=>U(I(y(e),([r,a])=>[r,C(a,L(n))]),()=>y(L(n))));case "Merge":return D(t.left,t.right,t.flip);case "Scoped":return E((e,n)=>{let r=new O(e);r.addFinalizer(a=>t.release(a)),r.fork(t.acquire,e).join(a=>{if(a._tag==="Failure"){r.close(a),n({_tag:"Failure",error:F(a.error)});return}let o=a.value;y(o)(e,s=>{r.close(s),n(s);});});})}}function k(t,e){switch(t._tag){case "Empty":return T();case "Emit":return X(I(t.value,e));case "FromPull":return v(I(t.pull,([n,r])=>[e(n),k(r,e)]));case "Concat":return C(k(t.left,e),k(t.right,e));case "Flatten":{let n=k(t.stream,r=>k(r,e));return L(n)}}}function pt(t,e){let n=r=>v(r>e?h(b):A([r,n(r+1)]));return n(t)}function ue(t,e){let n=R(x(y(t),r=>q(r)),r=>h(r),([r,a])=>R(x(y(e),o=>q(o)),o=>h(o),([o,i])=>A([[r,o],ue(a,i)])));return v(n)}function yt(t,e){let n=r=>R(x(y(r),a=>q(a)),a=>a._tag==="None"?A(void 0):h(a),([a,o])=>p(x(e(a),i=>F(i)),()=>n(o)));return R(n(t),r=>r._tag==="None"?A(void 0):h(r.value),()=>A(void 0))}function dt(t){let e=T();for(let n=t.length-1;n>=0;n--){let r=X(z(t[n]));e=C(r,e);}return e}function Rt(t){let e=(n,r)=>R(y(n),a=>a._tag==="None"?z(r):B(a),([a,o])=>e(o,[...r,a]));return M(e(t,[]),n=>{if(n._tag==="Some")return n.value;throw new Error("unreachable: stream end handled as success")})}function le(t,e){let n=E((r,a)=>{t.read().then(({done:o,value:i})=>{if(o){a({_tag:"Failure",error:b});return}a({_tag:"Success",value:[i,v(n)]});}).catch(o=>{a({_tag:"Failure",error:F(e(o))});});});return v(n)}function ft(t,e){if(!t)return T();let n;return ce(H(()=>(n=t.getReader(),le(n,e))),()=>_(()=>{try{n?.cancel();}catch{}}))}export{L as $,xe as A,P as B,j as C,J as D,N as E,De as F,Z as G,Te as H,ze as I,Me as J,Ue as K,je as L,re as M,O as N,Ge as O,Ke as P,Ve as Q,Xe as R,K as S,q as T,v as U,ce as V,lt as W,At as X,T as Y,X as Z,C as _,R as a,Et as aa,Ae as b,y as ba,x as c,k as ca,w as d,pt as da,A as e,ue as ea,h as f,yt as fa,_ as g,dt as ga,Ee as h,Rt as ha,E as i,ft as ia,W as j,p as k,pe as l,ye as m,de as n,Re as o,fe as p,b as q,F as r,z as s,B as t,H as u,I as v,G as w,M as x,ve as y,U as z};