@vielzeug/courier 1.1.3 → 1.1.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.
package/dist/courier.cjs CHANGED
@@ -1,7 +1,7 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require("@vielzeug/arsenal");var t=class e extends Error{constructor(e,t){super(e,t),this.name=new.target.name,Object.setPrototypeOf(this,new.target.prototype)}static is(t){return t instanceof e}},n=class e extends t{url;method;status;data;headers;constructor(e){super(e.message),this.url=e.url,this.method=e.method,this.status=e.status,this.data=e.data,this.headers=e.headers}static fromResponse(t,n,r,i){return new e({data:n,headers:t.headers,message:t.statusText||`HTTP ${t.status}`,method:r,status:t.status,url:i})}static is(t,n){return t instanceof e&&(n===void 0||t.status===n)}},r=class extends t{url;method;constructor(e){super(e.message,{cause:e.cause}),this.url=e.url,this.method=e.method}},i=class extends t{url;method;constructor(e){super(e.message,{cause:e.cause}),this.url=e.url,this.method=e.method}},a=class extends t{url;method;constructor(e){super(e.message,{cause:e.cause}),this.url=e.url,this.method=e.method}},o=class extends t{data;constructor(e,t){super(e instanceof Error?e.message:String(e),{cause:e}),this.data=t}},s=class extends t{},c=class extends t{constructor(e){super(`[courier] ${e} disposed`)}},l=class extends t{};function u(e,t,n,o){let s=e instanceof Error?e.message:String(e),c=o?.reason;return c instanceof Error&&c.name===`TimeoutError`?new i({cause:e,message:s,method:t,url:n}):e instanceof DOMException?e.name===`TimeoutError`?new i({cause:e,message:s,method:t,url:n}):new a({cause:e,message:s,method:t,url:n}):e instanceof Error&&e.name===`AbortError`||o?.aborted?new a({cause:e,message:s,method:t,url:n}):new r({cause:e,message:s,method:t,url:n})}async function d(e,t=`auto`){if(t===`raw`)return e;if(e.status===204||e.status===205||e.status===304)return;if(t===`json`)return e.json();if(t===`text`)return e.text();if(t===`blob`)return e.blob();if(t===`arrayBuffer`)return e.arrayBuffer();let n=e.headers.get(`content-type`)??``;return n.includes(`application/json`)||n.includes(`+json`)?e.json():n.startsWith(`text/`)?e.text():n.startsWith(`image/`)||n.startsWith(`audio/`)||n.startsWith(`video/`)?e.blob():e.text()}function f(e,t,n,r,i){return n!==void 0&&!p(n)?{...i,body:JSON.stringify(n),headers:{"content-type":`application/json`,...t},method:e.toUpperCase(),signal:r}:{...i,...n!==void 0&&{body:n},headers:t,method:e.toUpperCase(),signal:r}}function p(e){return e instanceof FormData||e instanceof Blob||e instanceof URLSearchParams||typeof e==`string`||e instanceof ArrayBuffer||ArrayBuffer.isView(e)||typeof ReadableStream<`u`&&e instanceof ReadableStream}function m(e,t,n){return{headers:t,init:n,url:e,withHeaders(r){let i={...t};for(let[e,t]of Object.entries(r))i[e.toLowerCase()]=t;return m(e,i,n)}}}function h(...e){let t=e.filter(e=>e!=null);if(t.length!==0)return t.length===1?t[0]:AbortSignal.any(t)}var g=3e4;function _(e){if((e<=0||!Number.isFinite(e))&&e!==1/0)throw new t(`[courier] timeout must be a positive number or Infinity`)}function v(e,t){return e===1/0?t??void 0:h(AbortSignal.timeout(e),t)}function y(e={}){let{baseUrl:t=``,fetch:n=globalThis.fetch,headers:r={},timeout:i=g}=e;_(i);let a=Object.fromEntries(Object.entries(r).map(([e,t])=>[e.toLowerCase(),t])),o=new Set,s=new AbortController,c=[],l=null,u=!1;function d(){if(l)return l;let e=e=>n(e.url,{...e.init,headers:e.headers});return l=c.length===0?e:c.reduceRight((e,t)=>n=>t(n,e),e),l}function f(e){return c.push(e),l=null,()=>{let t=c.indexOf(e);t!==-1&&(c.splice(t,1),l=null)}}function p(e){for(let[t,n]of Object.entries(e)){let e=t.toLowerCase();n===void 0?delete a[e]:a[e]=n}}function h(){return{...a}}function v(e,t){let n=e?Object.fromEntries(Object.entries(e).map(([e,t])=>[e.toLowerCase(),t])):void 0;return{...a,...n,...t}}function y(e){return o.add(e),()=>o.delete(e)}function b(e){return d()(m(e.url,e.headers,e.init))}function x(){for(let e of[...o])e.abort();o.clear()}function S(){if(!u){u=!0,s.abort();for(let e of o)e.abort();o.clear(),c.length=0,l=null}}return{baseUrl:t,cancelAll:x,dispatch:b,get disposalSignal(){return s.signal},dispose:S,get disposed(){return u},getHeaders:h,getTimeout(){return i},headers:p,mergeHeaders:v,track:y,use:f}}function b(e,t,n,r){let i=e.replace(/\/+$/,``),a=t.replace(/^\/+/,``);a=a.replace(/\{([^}]+)\}/g,(e,r)=>{let i=n?.[r];if(i==null)throw new l(`unresolved path param {${r}} in '${t}'`);return encodeURIComponent(String(i))});let o=i&&a?`${i}/${a}`:i||a;if(!r)return o;let s=new URLSearchParams;for(let[e,t]of Object.entries(r))if(t!==void 0){if(Array.isArray(t)){for(let n of t)n!==void 0&&s.append(e,n===null?``:String(n));continue}s.append(e,t===null?``:String(t))}let c=s.toString();return c?`${o}${o.includes(`?`)?`&`:`?`}${c}`:o}var x=new Set([`GET`,`HEAD`,`OPTIONS`]);function S(t,n,r,i){if(x.has(t))return`${t}:${n}:${r}`;if(i!==void 0)return`${t}:${n}:${(0,e.hash)(i)}`}function C(e){let{transport:t,...r}=e??{},i=t??y(r),a=!t,s=new Map;async function l(e,t,r,a,s,c){let l=t.signal,f;try{f=await i.dispatch({headers:e,init:t,url:r})}catch(e){throw u(e,a,r,l)}if(!f.ok){let e;try{e=await d(f,s??`auto`)}catch{e=await f.text().catch(()=>``)}throw n.fromResponse(f,e,a,r)}let p;try{p=await d(f,s??`auto`)}catch(e){throw u(e,a,r,l)}if(c)try{return c.parse(p)}catch(e){throw new o(e,p)}return p}async function p(e,t,n={}){if(i.disposed)throw new c(`ApiClient`);let r=e.toUpperCase(),a;try{a=b(i.baseUrl,t,n.params,n.query)}catch(e){throw u(e,r,t)}let{body:o,dedupe:d=!0,dedupeKey:p,fetchInit:m,headers:g,responseType:y,schema:x,signal:C,timeout:w}=n;w!==void 0&&_(w);let T=i.mergeHeaders(g),E=d?S(r,a,y??`auto`,p):void 0;if(E){let e=s.get(E);if(e)return e}let D=new AbortController,O=i.track(D),k=h(C,D.signal)??D.signal,{headers:A,...j}=f(r,T,o,v(w??i.getTimeout(),k),m??{}),M=l(A,j,a,r,y,x);E&&s.set(E,M);try{return await M}finally{E&&s.delete(E),O()}}return{cancelAll(){i.cancelAll(),s.clear()},delete:(e,t)=>p(`DELETE`,e,t),get disposalSignal(){return i.disposalSignal},dispose(){s.clear(),a&&i.dispose()},get disposed(){return i.disposed},get:(e,t)=>p(`GET`,e,t),getHeaders:i.getHeaders,headers:i.headers,patch:(e,t)=>p(`PATCH`,e,t),post:(e,t)=>p(`POST`,e,t),put:(e,t)=>p(`PUT`,e,t),request:p,[Symbol.dispose](){this.dispose()},use:i.use}}function w(e){let{maxSize:t=25,resolve:n,resolveSettled:r,window:i=0}=e,a=[],o=new AbortController,l=!1,u=null,d=!1;function f(){if(a.length===0)return;let e=a.splice(0,t);a.length>0&&p();let i=e.map(e=>e.key);try{r?r(i).then(t=>{if(t.length!==e.length){let n=new s(`Batcher: resolveSettled() returned ${t.length} results for ${e.length} keys`);for(let t of e)t.reject(n);return}e.forEach((e,n)=>{let r=t[n];r.status===`fulfilled`?e.resolve(r.value):e.reject(r.reason)})}).catch(t=>{for(let n of e)n.reject(t)}):n(i).then(t=>{if(t.length!==e.length){let n=new s(`Batcher: resolve() returned ${t.length} results for ${e.length} keys`);for(let t of e)t.reject(n);return}e.forEach((e,n)=>e.resolve(t[n]))}).catch(t=>{for(let n of e)n.reject(t)})}catch(t){for(let n of e)n.reject(t)}}function p(){l||(l=!0,i===0?queueMicrotask(()=>{l=!1,f()}):u=setTimeout(()=>{u=null,l=!1,f()},i))}return{get disposalSignal(){return o.signal},dispose(){if(d)return;d=!0,u!==null&&(clearTimeout(u),u=null);let e=new c(`Batcher`);for(let t of a.splice(0))t.reject(e);l=!1,o.abort()},get disposed(){return d},load(e){return d?Promise.reject(new c(`Batcher`)):new Promise((n,r)=>{a.push({key:e,reject:r,resolve:n}),a.length>=t?(u!==null&&(clearTimeout(u),u=null),l=!1,f()):p()})},[Symbol.dispose](){this.dispose()}}}function T(t){return Math.random()*(0,e.backoff)(t)}function E(e,t){if(typeof t==`function`){let n=t(e);return Number.isFinite(n)?Math.max(0,n):0}return typeof t==`number`?Number.isFinite(t)?Math.max(0,t):0:T(e)}var D=Object.freeze({data:void 0,error:null,isFetching:!1,isLoading:!0,status:`loading`,updatedAt:void 0});function O(t,n){let r=D,i=0,a=null,o=new Set,s=!1,l=null;function u(){o.forEach(e=>e())}async function d(e){try{await e?.()}catch(e){if(n?.onCallbackError)try{n.onCallbackError(e instanceof Error?e:Error(String(e)))}catch{}}}return{async cancel(){let e=a;e&&(e.controller.abort(),await e.promise.catch(()=>{}))},dispose(){s||(s=!0,a?.controller.abort(),a=null,o.clear())},get disposed(){return s},async mutate(o,l){if(s)throw new c(`Mutation`);let f=new AbortController,p=l?.signal?h(l.signal,f.signal):f.signal,m=++i;r={data:void 0,error:null,isFetching:!0,isLoading:!0,status:`loading`,updatedAt:void 0},u();let g={controller:f,promise:null};a=g;let _=(async()=>{try{let a=await(0,e.retry)(()=>t(o,p),{delay:e=>E(e,n?.delay),shouldRetry:n?.shouldRetry,signal:p,times:n?.times??1});return m===i&&(r={data:a,error:null,isFetching:!1,isLoading:!1,status:`success`,updatedAt:Date.now()},u()),await d(()=>n?.onSuccess?.(a,o)),await d(()=>n?.onFinally?.(o)),await d(()=>n?.onSettled?.({data:a,status:`success`,variables:o})),a}catch(t){let a=t instanceof Error?t:Error(String(t)),s=p.aborted||(0,e.isAbortError)(a);throw m===i&&(r=s?D:{data:void 0,error:a,isFetching:!1,isLoading:!1,status:`error`,updatedAt:Date.now()},u()),s||await d(()=>n?.onError?.(a,o)),await d(()=>n?.onFinally?.(o)),await d(()=>n?.onSettled?.(s?{status:`aborted`,variables:o}:{error:a,status:`error`,variables:o})),a}finally{a?.controller===f&&(a=null)}})();return g.promise=_,_},peek(){return r},reset(){r=D,u()},get store(){return l??={peek:()=>r,subscribe:e=>s?()=>{}:(o.add(e),()=>o.delete(e))}},subscribe(e){return s?()=>{}:(o.add(e),()=>o.delete(e))},[Symbol.dispose](){this.dispose()}}}function k(e){return typeof e==`function`?e():e}function A(t){return(0,e.hash)(t)}function j(t){return(0,e.hash)(t)}function M(t,n){let r=(0,e.hash)(n),i=t.entries.get(r);return i||(i={data:void 0,error:null,hash:r,inflight:null,isFetching:!1,key:n,lastConfig:void 0,observers:new Set,segmentHashes:n.map(t=>(0,e.hash)(t)),status:`loading`,updatedAt:void 0},t.entries.set(r,i)),i}function N(e,t){let n=e.gcTimers.get(t);n&&(clearTimeout(n),e.gcTimers.delete(t))}function P(e,t,n){if(e.disposed||(N(e,t.hash),t.observers.size>0))return;if(n===0){e.entries.delete(t.hash);return}let r=setTimeout(()=>{let n=e.entries.get(t.hash);!n||n.observers.size>0||n.isFetching||(e.entries.delete(t.hash),e.gcTimers.delete(t.hash))},n);e.gcTimers.set(t.hash,r)}function F(e,t){t.inflight?.controller.abort(),N(e,t.hash),e.entries.delete(t.hash)}function I(e,t){return t.length>e.segmentHashes.length?!1:t.every((t,n)=>t===e.segmentHashes[n])}function L(e,t){t.isFetching=!0,t.status=`loading`,t.error=null,e.notify(t)}function R(e,t,n,r){t.data=n,t.error=null,t.status=`success`,t.updatedAt=Date.now(),t.isFetching=!1,t.inflight=null,P(e,t,r),e.notify(t)}function z(e,t,n,r){t.error=n,t.status=`error`,t.updatedAt=Date.now(),t.isFetching=!1,t.inflight=null,P(e,t,r),e.notify(t)}function B(e,t,n,r){if(t.data=n.data,t.error=n.error,t.status=n.status,t.updatedAt=n.updatedAt,t.isFetching=!1,t.inflight=null,t.observers.size===0&&t.status===`loading`&&t.data===void 0){F(e,t);return}P(e,t,r),e.notify(t)}function V(e,t){if(t.inflight?.controller.abort(),t.observers.size>0){t.inflight=null,t.isFetching=!1,t.status=`loading`,t.data=void 0,t.error=null,t.updatedAt=void 0,e.notify(t);return}F(e,t)}function H(t,n,r){if(n.inflight)return n.inflight.promise;let{delay:i,fn:a,gcTime:o,shouldRetry:s,times:c}=r,l=new AbortController,u={data:n.data,error:n.error,status:n.status,updatedAt:n.updatedAt},d=(async()=>{try{let r=await(0,e.retry)(()=>a({key:n.key,signal:l.signal}),{delay:e=>E(e,i),shouldRetry:s,signal:l.signal,times:c});return R(t,n,r,o),r}catch(r){let i=r instanceof Error?r:Error(String(r));throw l.signal.aborted||(0,e.isAbortError)(i)?B(t,n,u,o):z(t,n,i,o),i}})();return n.inflight={controller:l,promise:d},L(t,n),d}function U(e,t){return{delay:t.delay??e.delayDefault,fn:t.fn,gcTime:t.gcTime??e.gcTimeDefault,shouldRetry:t.shouldRetry??e.shouldRetryDefault,staleTime:t.staleTime??e.staleTimeDefault,times:t.times??e.timesDefault}}function W(e,t,n,r){return{delayDefault:e.delay,disposed:!1,entries:t,gcTimeDefault:e.gcTime??3e5,gcTimers:n,notify:r,shouldRetryDefault:e.shouldRetry,staleTimeDefault:e.staleTime??0,timesDefault:e.times??1}}var ee=Object.freeze({data:void 0,error:null,isFetching:!1,isLoading:!0,status:`loading`,updatedAt:void 0});function G(e){return e.status===`loading`?{data:void 0,error:null,isFetching:e.isFetching,isLoading:!0,status:`loading`,updatedAt:void 0}:e.status===`success`?{data:e.data,error:null,isFetching:e.isFetching,isLoading:!1,status:`success`,updatedAt:e.updatedAt}:{data:e.data,error:e.error,isFetching:e.isFetching,isLoading:!1,status:`error`,updatedAt:e.updatedAt}}function K(e,t){let n=G(e);if(n.status===`loading`){let e=k(t.placeholderData);return{...n,data:e}}let r=t.select?t.select(n.data):n.data;return{...n,data:r}}function q(e){for(let t of e.observers){let n=t,r=K(e,n),i=n.previous,a=Object.is(i?.data,r.data),o=!!i&&i.status===r.status&&i.isFetching===r.isFetching&&Object.is(i.error,r.error);(n.select?o&&a:o&&i?.updatedAt===r.updatedAt&&a)||(n.previous=r,n.listener())}}function J(e,t,n){let r={listener:()=>{},...n};return{peek(){let n=e.entries.get(A(t));return n?K(n,r):ee},subscribe(i){if(e.disposed)return()=>{};let a=M(e,t);N(e,a.hash);let o={...n,listener:i,previous:K(a,r)};return a.observers.add(o),()=>{a.observers.delete(o),a.observers.size===0&&P(e,a,a.lastConfig?.gcTime??e.gcTimeDefault)}}}}function Y(e){let t=!1,n=new AbortController,r=new Map,i=new Map,a=W({delay:e?.delay,gcTime:e?.gcTime,shouldRetry:e?.shouldRetry,staleTime:e?.staleTime,times:e?.times},r,i,q);async function o(e){if(t)throw new c(`QueryClient`);let{enabled:n=!0,fn:i,gcTime:o,initialData:s,key:l,staleTime:u,...d}=e;if(!n){let e=A(l);return r.get(e)?.data??void 0}let f=M(a,l),p=U(a,{fn:i,gcTime:o,staleTime:u,...d});if(s!==void 0&&f.status===`loading`&&f.data===void 0){let e=k(s);e!==void 0&&(f.data=e,f.error=null,f.status=`success`,f.updatedAt=Date.now())}return f.status===`success`&&f.updatedAt!==void 0&&Date.now()-f.updatedAt<p.staleTime&&!f.isFetching?(f.lastConfig=p,f.data):(f.lastConfig=p,f.inflight?f.inflight.promise:H(a,f,p))}function s(e){if(!e.lastConfig){V(a,e);return}e.isFetching||H(a,e,e.lastConfig).catch(()=>{})}function l(e){let t=e.map(e=>j(e));for(let e of[...r.values()])if(I(e,t)){if(e.observers.size>0){s(e);continue}V(a,e)}}function u(e,t,n){let r=M(a,e),i=n?.gcTime??r.lastConfig?.gcTime??a.gcTimeDefault;r.data=typeof t==`function`?t(r.data):t,r.error=null,r.status=`success`,r.updatedAt=n?.updatedAt??Date.now(),r.isFetching=!1,r.inflight=null,q(r),P(a,r,i)}function d(e){return e.observers.size===0||!e.lastConfig||e.isFetching?!1:e.status===`success`&&e.updatedAt!==void 0||e.status===`error`&&e.data!==void 0&&e.updatedAt!==void 0?Date.now()-e.updatedAt>=e.lastConfig.staleTime:!1}function f(e){let{fetch:t=!0,key:n,placeholderData:r,select:i}=e,s=J(a,n,{placeholderData:r,select:i});return t&&e.fn&&o({...e}).catch(()=>{}),s}return{cancel(e){let t=r.get(A(e));t?.inflight&&t.inflight.controller.abort()},cancelAll(){for(let e of r.values())e.inflight?.controller.abort()},clear(){for(let e of[...r.values()])V(a,e)},get disposalSignal(){return n.signal},dispose(){if(!t){t=!0,a.disposed=!0,n.abort();for(let[,e]of r)e.observers.clear(),e.inflight?.controller.abort();for(let[,e]of i)clearTimeout(e);i.clear(),r.clear()}},get disposed(){return t},fetch:o,fetchMany(e){return Promise.all(e.map(e=>o(e)))},get(e){let t=r.get(A(e));return t?t.data:void 0},getState(e){let t=r.get(A(e));return t?G(t):null},invalidate:l,keys(){return[...r.values()].map(e=>e.key)},observe:f,observeMany(e){let t=e.map(e=>J(a,e));return{peek(){return t.map(e=>e.peek())},subscribe(e){let n=t.map(t=>t.subscribe(e));return()=>{for(let e of n)e()}}}},refetchStale(){for(let e of[...r.values()])d(e)&&H(a,e,e.lastConfig).catch(()=>{})},remove(e){let t=r.get(A(e));t&&V(a,t)},set:u,get size(){return r.size},[Symbol.dispose](){this.dispose()}}}function X(e){try{return JSON.parse(e)}catch{return e}}async function Z(e,t,r,i,a){let o=i.method.toUpperCase(),s=b(e.baseUrl,t,i.params,i.query),c=h(i.extSignal,r.signal)??r.signal,d=v(i.timeout??1/0,c),{headers:p,...m}=f(o,e.mergeHeaders(i.headers,a),i.body,d,i.fetchInit??{}),g;try{g=await e.dispatch({headers:p,init:m,url:s})}catch(e){throw u(e,o,s,d??c)}if(!g.ok){let e=await g.text().catch(()=>``);throw n.fromResponse(g,e,o,s)}if(!g.body)throw new l(`Response has no body`);return g}function Q(t){let{transport:n,...r}=t??{},i=!n,a=n??y(r);function o(t,n={}){if(a.disposed)throw new c(`StreamClient`);let{body:r,fetchInit:i,headers:o,method:s=r===void 0?`GET`:`POST`,onError:l,params:u,query:d,reconnect:f=!1,signal:p,timeout:m}=n;m!==void 0&&_(m);let h=new Map,g=new AbortController,v=a.track(g),y=!1,b=`connecting`,x=``,S=f===!0?{}:f===!1?{times:0}:f,C=S.times??(f?5:0),w=S.delay??T;function E(e,t){let n=h.get(e);if(!n?.size)return;let r=X(t);for(let e of n)e(r)}async function D(){let e=(await Z(a,t,g,{body:r,extSignal:p,fetchInit:i,headers:o,method:s,params:u,query:d,timeout:m},{accept:`text/event-stream`,"cache-control":`no-cache`,...x?{"last-event-id":x}:{}})).body.getReader(),n=new TextDecoder,c=``,l=`message`,f=``,h=``;try{for(;;){let{done:t,value:r}=await e.read();if(t)break;c+=n.decode(r,{stream:!0}).replace(/\r\n/g,`
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require("@vielzeug/arsenal");var t=class e extends Error{constructor(e,t){super(e,t),this.name=new.target.name,Object.setPrototypeOf(this,new.target.prototype)}static is(t){return t instanceof e}},n=class e extends t{url;method;status;data;headers;constructor(e){super(e.message),this.url=e.url,this.method=e.method,this.status=e.status,this.data=e.data,this.headers=e.headers}static fromResponse(t,n,r,i){return new e({data:n,headers:t.headers,message:t.statusText||`HTTP ${t.status}`,method:r,status:t.status,url:i})}static is(t,n){return t instanceof e&&(n===void 0||t.status===n)}},r=class extends t{url;method;constructor(e){super(e.message,{cause:e.cause}),this.url=e.url,this.method=e.method}},i=class extends t{url;method;constructor(e){super(e.message,{cause:e.cause}),this.url=e.url,this.method=e.method}},a=class extends t{url;method;constructor(e){super(e.message,{cause:e.cause}),this.url=e.url,this.method=e.method}},o=class extends t{data;constructor(e,t){super(e instanceof Error?e.message:String(e),{cause:e}),this.data=t}},s=class extends t{},c=class extends t{constructor(e){super(`[courier] ${e} disposed`)}},l=class extends t{};function u(e,t,n,o){let s=e instanceof Error?e.message:String(e),c=o?.reason;return c instanceof Error&&c.name===`TimeoutError`?new i({cause:e,message:s,method:t,url:n}):e instanceof DOMException?e.name===`TimeoutError`?new i({cause:e,message:s,method:t,url:n}):new a({cause:e,message:s,method:t,url:n}):e instanceof Error&&e.name===`AbortError`||o?.aborted?new a({cause:e,message:s,method:t,url:n}):new r({cause:e,message:s,method:t,url:n})}async function d(e,t=`auto`){if(t===`raw`)return e;if(e.status===204||e.status===205||e.status===304)return;if(t===`json`)return e.json();if(t===`text`)return e.text();if(t===`blob`)return e.blob();if(t===`arrayBuffer`)return e.arrayBuffer();let n=e.headers.get(`content-type`)??``;return n.includes(`application/json`)||n.includes(`+json`)?e.json():n.startsWith(`text/`)?e.text():n.startsWith(`image/`)||n.startsWith(`audio/`)||n.startsWith(`video/`)?e.blob():e.text()}function f(e,t,n,r,i){return n!==void 0&&!p(n)?{...i,body:JSON.stringify(n),headers:{"content-type":`application/json`,...t},method:e.toUpperCase(),signal:r}:{...i,...n!==void 0&&{body:n},headers:t,method:e.toUpperCase(),signal:r}}function p(e){return e instanceof FormData||e instanceof Blob||e instanceof URLSearchParams||typeof e==`string`||e instanceof ArrayBuffer||ArrayBuffer.isView(e)||typeof ReadableStream<`u`&&e instanceof ReadableStream}function m(e,t,n){return{headers:t,init:n,url:e,withHeaders(r){let i={...t};for(let[e,t]of Object.entries(r))i[e.toLowerCase()]=t;return m(e,i,n)}}}function h(...e){let t=e.filter(e=>e!=null);if(t.length!==0)return t.length===1?t[0]:AbortSignal.any(t)}var g=3e4;function _(e){if((e<=0||!Number.isFinite(e))&&e!==1/0)throw new t(`[courier] timeout must be a positive number or Infinity`)}function v(e,t){return e===1/0?t??void 0:h(AbortSignal.timeout(e),t)}function y(e={}){let{baseUrl:t=``,fetch:n=globalThis.fetch,headers:r={},timeout:i=g}=e;_(i);let a=Object.fromEntries(Object.entries(r).map(([e,t])=>[e.toLowerCase(),t])),o=new Set,s=new AbortController,c=[],l=null,u=!1;function d(){if(l)return l;let e=e=>n(e.url,{...e.init,headers:e.headers});return l=c.length===0?e:c.reduceRight((e,t)=>n=>t(n,e),e),l}function f(e){return c.push(e),l=null,()=>{let t=c.indexOf(e);t!==-1&&(c.splice(t,1),l=null)}}function p(e){for(let[t,n]of Object.entries(e)){let e=t.toLowerCase();n===void 0?delete a[e]:a[e]=n}}function h(){return{...a}}function v(e,t){let n=e?Object.fromEntries(Object.entries(e).map(([e,t])=>[e.toLowerCase(),t])):void 0;return{...a,...n,...t}}function y(e){return o.add(e),()=>o.delete(e)}function b(e){return d()(m(e.url,e.headers,e.init))}function x(){for(let e of[...o])e.abort();o.clear()}function S(){if(!u){u=!0,s.abort();for(let e of o)e.abort();o.clear(),c.length=0,l=null}}return{baseUrl:t,cancelAll:x,dispatch:b,get disposalSignal(){return s.signal},dispose:S,get disposed(){return u},getHeaders:h,getTimeout(){return i},headers:p,mergeHeaders:v,track:y,use:f}}function b(e,t,n,r){let i=e.replace(/\/+$/,``),a=t.replace(/^\/+/,``);a=a.replace(/\{([^}]+)\}/g,(e,r)=>{let i=n?.[r];if(i==null)throw new l(`unresolved path param {${r}} in '${t}'`);return encodeURIComponent(String(i))});let o=i&&a?`${i}/${a}`:i||a;if(!r)return o;let s=new URLSearchParams;for(let[e,t]of Object.entries(r))if(t!==void 0){if(Array.isArray(t)){for(let n of t)n!==void 0&&s.append(e,n===null?``:String(n));continue}s.append(e,t===null?``:String(t))}let c=s.toString();return c?`${o}${o.includes(`?`)?`&`:`?`}${c}`:o}var x=new Set([`GET`,`HEAD`,`OPTIONS`]);function S(t,n,r,i){if(x.has(t))return`${t}:${n}:${r}`;if(i!==void 0)return`${t}:${n}:${(0,e.hash)(i)}`}function C(e){let{transport:t,...r}=e??{},i=t??y(r),a=!t,s=new Map;async function l(e,t,r,a,s,c){let l=t.signal,f;try{f=await i.dispatch({headers:e,init:t,url:r})}catch(e){throw u(e,a,r,l)}if(!f.ok){let e;try{e=await d(f,s??`auto`)}catch{e=await f.text().catch(()=>``)}throw n.fromResponse(f,e,a,r)}let p;try{p=await d(f,s??`auto`)}catch(e){throw u(e,a,r,l)}if(c)try{return c.parse(p)}catch(e){throw new o(e,p)}return p}async function p(e,t,n={}){if(i.disposed)throw new c(`ApiClient`);let r=e.toUpperCase(),a;try{a=b(i.baseUrl,t,n.params,n.query)}catch(e){throw u(e,r,t)}let{body:o,dedupe:d=!0,dedupeKey:p,fetchInit:m,headers:g,responseType:y,schema:x,signal:C,timeout:w}=n;w!==void 0&&_(w);let T=i.mergeHeaders(g),E=d?S(r,a,y??`auto`,p):void 0;if(E){let e=s.get(E);if(e)return e}let D=new AbortController,O=i.track(D),k=h(C,D.signal)??D.signal,{headers:A,...j}=f(r,T,o,v(w??i.getTimeout(),k),m??{}),M=l(A,j,a,r,y,x);E&&s.set(E,M);try{return await M}finally{E&&s.delete(E),O()}}return{cancelAll(){i.cancelAll(),s.clear()},delete:(e,t)=>p(`DELETE`,e,t),get disposalSignal(){return i.disposalSignal},dispose(){s.clear(),a&&i.dispose()},get disposed(){return i.disposed},get:(e,t)=>p(`GET`,e,t),getHeaders:i.getHeaders,headers:i.headers,patch:(e,t)=>p(`PATCH`,e,t),post:(e,t)=>p(`POST`,e,t),put:(e,t)=>p(`PUT`,e,t),request:p,[Symbol.dispose](){this.dispose()},use:i.use}}function w(e){let{maxSize:t=25,resolve:n,resolveSettled:r,window:i=0}=e,a=[],o=new AbortController,l=!1,u=null,d=!1;function f(){if(a.length===0)return;let e=a.splice(0,t);a.length>0&&p();let i=e.map(e=>e.key);try{r?r(i).then(t=>{if(t.length!==e.length){let n=new s(`Batcher: resolveSettled() returned ${t.length} results for ${e.length} keys`);for(let t of e)t.reject(n);return}e.forEach((e,n)=>{let r=t[n];r.status===`fulfilled`?e.resolve(r.value):e.reject(r.reason)})}).catch(t=>{for(let n of e)n.reject(t)}):n(i).then(t=>{if(t.length!==e.length){let n=new s(`Batcher: resolve() returned ${t.length} results for ${e.length} keys`);for(let t of e)t.reject(n);return}e.forEach((e,n)=>e.resolve(t[n]))}).catch(t=>{for(let n of e)n.reject(t)})}catch(t){for(let n of e)n.reject(t)}}function p(){l||(l=!0,i===0?queueMicrotask(()=>{l=!1,f()}):u=setTimeout(()=>{u=null,l=!1,f()},i))}return{get disposalSignal(){return o.signal},dispose(){if(d)return;d=!0,u!==null&&(clearTimeout(u),u=null);let e=new c(`Batcher`);for(let t of a.splice(0))t.reject(e);l=!1,o.abort()},get disposed(){return d},load(e){return d?Promise.reject(new c(`Batcher`)):new Promise((n,r)=>{a.push({key:e,reject:r,resolve:n}),a.length>=t?(u!==null&&(clearTimeout(u),u=null),l=!1,f()):p()})},[Symbol.dispose](){this.dispose()}}}function T(t){return Math.random()*(0,e.backoff)(t)}function E(e,t){if(typeof t==`function`){let n=t(e);return Number.isFinite(n)?Math.max(0,n):0}return typeof t==`number`?Number.isFinite(t)?Math.max(0,t):0:T(e)}var D=Object.freeze({data:void 0,error:null,isFetching:!1,isLoading:!0,status:`loading`,updatedAt:void 0});function O(t,n){let r=D,i=0,a=null,o=new Set,s=!1,l=null;function u(){o.forEach(e=>e())}async function d(e){try{await e?.()}catch(e){if(n?.onCallbackError)try{n.onCallbackError(e instanceof Error?e:Error(String(e)))}catch{}}}return{async cancel(){let e=a;e&&(e.controller.abort(),await e.promise.catch(()=>{}))},dispose(){s||(s=!0,a?.controller.abort(),a=null,o.clear())},get disposed(){return s},async mutate(o,l){if(s)throw new c(`Mutation`);let f=new AbortController,p=l?.signal?h(l.signal,f.signal):f.signal,m=++i;r={data:void 0,error:null,isFetching:!0,isLoading:!0,status:`loading`,updatedAt:void 0},u();let g={controller:f,promise:null};a=g;let _=(async()=>{try{let a=await(0,e.retry)(()=>t(o,p),{delay:e=>E(e,n?.delay),shouldRetry:n?.shouldRetry,signal:p,times:n?.times??1});return m===i&&(r={data:a,error:null,isFetching:!1,isLoading:!1,status:`success`,updatedAt:Date.now()},u()),await d(()=>n?.onSuccess?.(a,o)),await d(()=>n?.onFinally?.(o)),await d(()=>n?.onSettled?.({data:a,status:`success`,variables:o})),a}catch(t){let a=t instanceof Error?t:Error(String(t)),s=p.aborted||(0,e.isAbortError)(a);throw m===i&&(r=s?D:{data:void 0,error:a,isFetching:!1,isLoading:!1,status:`error`,updatedAt:Date.now()},u()),s||await d(()=>n?.onError?.(a,o)),await d(()=>n?.onFinally?.(o)),await d(()=>n?.onSettled?.(s?{status:`aborted`,variables:o}:{error:a,status:`error`,variables:o})),a}finally{a?.controller===f&&(a=null)}})();return g.promise=_,_},peek(){return r},reset(){r=D,u()},get store(){return l??={peek:()=>r,subscribe:e=>s?()=>{}:(o.add(e),()=>o.delete(e))}},subscribe(e){return s?()=>{}:(o.add(e),()=>o.delete(e))},[Symbol.dispose](){this.dispose()}}}function k(e){return typeof e==`function`?e():e}function A(t){return(0,e.hash)(t)}function j(t){return(0,e.hash)(t)}function M(t,n){let r=(0,e.hash)(n),i=t.entries.get(r);return i||(i={data:void 0,error:null,hash:r,inflight:null,isFetching:!1,key:n,lastConfig:void 0,observers:new Set,segmentHashes:n.map(t=>(0,e.hash)(t)),status:`loading`,updatedAt:void 0},t.entries.set(r,i)),i}function N(e,t){let n=e.gcTimers.get(t);n&&(clearTimeout(n),e.gcTimers.delete(t))}function P(e,t,n){if(e.disposed||(N(e,t.hash),t.observers.size>0))return;if(n===0){e.entries.delete(t.hash);return}let r=setTimeout(()=>{let n=e.entries.get(t.hash);!n||n.observers.size>0||n.isFetching||(e.entries.delete(t.hash),e.gcTimers.delete(t.hash))},n);e.gcTimers.set(t.hash,r)}function F(e,t){t.inflight?.controller.abort(),N(e,t.hash),e.entries.delete(t.hash)}function I(e,t){return t.length>e.segmentHashes.length?!1:t.every((t,n)=>t===e.segmentHashes[n])}function L(e,t){t.isFetching=!0,t.status=`loading`,t.error=null,e.notify(t)}function R(e,t,n,r){t.data=n,t.error=null,t.status=`success`,t.updatedAt=Date.now(),t.isFetching=!1,t.inflight=null,P(e,t,r),e.notify(t)}function z(e,t,n,r){t.error=n,t.status=`error`,t.updatedAt=Date.now(),t.isFetching=!1,t.inflight=null,P(e,t,r),e.notify(t)}function B(e,t,n,r){if(t.data=n.data,t.error=n.error,t.status=n.status,t.updatedAt=n.updatedAt,t.isFetching=!1,t.inflight=null,t.observers.size===0&&t.status===`loading`&&t.data===void 0){F(e,t);return}P(e,t,r),e.notify(t)}function V(e,t){if(t.inflight?.controller.abort(),t.observers.size>0){t.inflight=null,t.isFetching=!1,t.status=`loading`,t.data=void 0,t.error=null,t.updatedAt=void 0,e.notify(t);return}F(e,t)}function H(t,n,r){if(n.inflight)return n.inflight.promise;let{delay:i,fn:a,gcTime:o,shouldRetry:s,times:c}=r,l=new AbortController,u={data:n.data,error:n.error,status:n.status,updatedAt:n.updatedAt},d=(async()=>{try{let r=await(0,e.retry)(()=>a({key:n.key,signal:l.signal}),{delay:e=>E(e,i),shouldRetry:s,signal:l.signal,times:c});return R(t,n,r,o),r}catch(r){let i=r instanceof Error?r:Error(String(r));throw l.signal.aborted||(0,e.isAbortError)(i)?B(t,n,u,o):z(t,n,i,o),i}})();return n.inflight={controller:l,promise:d},L(t,n),d}function U(e,t){return{delay:t.delay??e.delayDefault,fn:t.fn,gcTime:t.gcTime??e.gcTimeDefault,shouldRetry:t.shouldRetry??e.shouldRetryDefault,staleTime:t.staleTime??e.staleTimeDefault,times:t.times??e.timesDefault}}function ee(e,t,n,r){return{delayDefault:e.delay,disposed:!1,entries:t,gcTimeDefault:e.gcTime??3e5,gcTimers:n,notify:r,shouldRetryDefault:e.shouldRetry,staleTimeDefault:e.staleTime??0,timesDefault:e.times??1}}var te=Object.freeze({data:void 0,error:null,isFetching:!1,isLoading:!0,status:`loading`,updatedAt:void 0});function W(e){return e.status===`loading`?{data:void 0,error:null,isFetching:e.isFetching,isLoading:!0,status:`loading`,updatedAt:void 0}:e.status===`success`?{data:e.data,error:null,isFetching:e.isFetching,isLoading:!1,status:`success`,updatedAt:e.updatedAt}:{data:e.data,error:e.error,isFetching:e.isFetching,isLoading:!1,status:`error`,updatedAt:e.updatedAt}}function G(e,t){let n=W(e);if(n.status===`loading`){let e=k(t.placeholderData);return{...n,data:e}}let r=t.select?t.select(n.data):n.data;return{...n,data:r}}function K(e){for(let t of e.observers){let n=t,r=G(e,n),i=n.previous,a=Object.is(i?.data,r.data),o=!!i&&i.status===r.status&&i.isFetching===r.isFetching&&Object.is(i.error,r.error);(n.select?o&&a:o&&i?.updatedAt===r.updatedAt&&a)||(n.previous=r,n.listener())}}function q(e,t,n){let r={listener:()=>{},...n};return{peek(){let n=e.entries.get(A(t));return n?G(n,r):te},subscribe(i){if(e.disposed)return()=>{};let a=M(e,t);N(e,a.hash);let o={...n,listener:i,previous:G(a,r)};return a.observers.add(o),()=>{a.observers.delete(o),a.observers.size===0&&P(e,a,a.lastConfig?.gcTime??e.gcTimeDefault)}}}}function J(e){let t=!1,n=new AbortController,r=new Map,i=new Map,a=ee({delay:e?.delay,gcTime:e?.gcTime,shouldRetry:e?.shouldRetry,staleTime:e?.staleTime,times:e?.times},r,i,K);async function o(e){if(t)throw new c(`QueryClient`);let{enabled:n=!0,fn:i,gcTime:o,initialData:s,key:l,staleTime:u,...d}=e;if(!n){let e=A(l);return r.get(e)?.data??void 0}let f=M(a,l),p=U(a,{fn:i,gcTime:o,staleTime:u,...d});if(s!==void 0&&f.status===`loading`&&f.data===void 0){let e=k(s);e!==void 0&&(f.data=e,f.error=null,f.status=`success`,f.updatedAt=Date.now())}return f.status===`success`&&f.updatedAt!==void 0&&Date.now()-f.updatedAt<p.staleTime&&!f.isFetching?(f.lastConfig=p,f.data):(f.lastConfig=p,f.inflight?f.inflight.promise:H(a,f,p))}function s(e){if(!e.lastConfig){V(a,e);return}e.isFetching||H(a,e,e.lastConfig).catch(()=>{})}function l(e){let t=e.map(e=>j(e));for(let e of[...r.values()])if(I(e,t)){if(e.observers.size>0){s(e);continue}V(a,e)}}function u(e,t,n){let r=M(a,e),i=n?.gcTime??r.lastConfig?.gcTime??a.gcTimeDefault;r.data=typeof t==`function`?t(r.data):t,r.error=null,r.status=`success`,r.updatedAt=n?.updatedAt??Date.now(),r.isFetching=!1,r.inflight=null,K(r),P(a,r,i)}function d(e){return e.observers.size===0||!e.lastConfig||e.isFetching?!1:e.status===`success`&&e.updatedAt!==void 0||e.status===`error`&&e.data!==void 0&&e.updatedAt!==void 0?Date.now()-e.updatedAt>=e.lastConfig.staleTime:!1}function f(e){let{fetch:t=!0,key:n,placeholderData:r,select:i}=e,s=q(a,n,{placeholderData:r,select:i});return t&&e.fn&&o({...e}).catch(()=>{}),s}return{cancel(e){let t=r.get(A(e));t?.inflight&&t.inflight.controller.abort()},cancelAll(){for(let e of r.values())e.inflight?.controller.abort()},clear(){for(let e of[...r.values()])V(a,e)},get disposalSignal(){return n.signal},dispose(){if(!t){t=!0,a.disposed=!0,n.abort();for(let[,e]of r)e.observers.clear(),e.inflight?.controller.abort();for(let[,e]of i)clearTimeout(e);i.clear(),r.clear()}},get disposed(){return t},fetch:o,fetchMany(e){return Promise.all(e.map(e=>o(e)))},get(e){let t=r.get(A(e));return t?t.data:void 0},getState(e){let t=r.get(A(e));return t?W(t):null},invalidate:l,keys(){return[...r.values()].map(e=>e.key)},observe:f,observeMany(e){let t=e.map(e=>q(a,e));return{peek(){return t.map(e=>e.peek())},subscribe(e){let n=t.map(t=>t.subscribe(e));return()=>{for(let e of n)e()}}}},refetchStale(){for(let e of[...r.values()])d(e)&&H(a,e,e.lastConfig).catch(()=>{})},remove(e){let t=r.get(A(e));t&&V(a,t)},set:u,get size(){return r.size},[Symbol.dispose](){this.dispose()}}}async function Y(e,t,r,i,a){let o=i.method.toUpperCase(),s=b(e.baseUrl,t,i.params,i.query),c=h(i.extSignal,r.signal)??r.signal,d=v(i.timeout??1/0,c),{headers:p,...m}=f(o,e.mergeHeaders(i.headers,a),i.body,d,i.fetchInit??{}),g;try{g=await e.dispatch({headers:p,init:m,url:s})}catch(e){throw u(e,o,s,d??c)}if(!g.ok){let e=await g.text().catch(()=>``);throw n.fromResponse(g,e,o,s)}if(!g.body)throw new l(`Response has no body`);return g}async function*X(t,n,r={}){if(t.disposed)throw new c(`StreamClient`);let{body:i,fetchInit:a,headers:o,method:s=i===void 0?`GET`:`POST`,onError:u,params:d,parse:f=`text`,query:p,reconnect:m=!1,signal:h,timeout:g}=r;g!==void 0&&_(g);let v=m===!0?{}:m===!1?{times:0}:m,y=v.times??(m?5:0),b=v.delay??T,x=new AbortController,S=t.track(x),C=0,w=!1;try{for(;!t.disposed&&!x.signal.aborted;){let r,c=!1;try{let e=(await Y(t,n,x,{body:i,extSignal:h,fetchInit:a,headers:o,method:s,params:d,query:p,timeout:g})).body.getReader(),r=new TextDecoder;try{if(f===`ndjson`){let t=``;for(;;){let{done:n,value:i}=await e.read();if(n){let e=t.trim();if(e)try{yield JSON.parse(e)}catch{throw new l(`NDJSON: failed to parse line: ${e.slice(0,200)}`)}c=!0;break}t+=r.decode(i,{stream:!0});let a;for(;(a=t.indexOf(`
2
+ `))!==-1;){let e=t.slice(0,a).trim();if(t=t.slice(a+1),e)try{yield JSON.parse(e)}catch{throw new l(`NDJSON: failed to parse line: ${e.slice(0,200)}`)}}}}else for(;;){let{done:t,value:n}=await e.read();if(t){c=!0;break}yield r.decode(n,{stream:!0})}}finally{e.releaseLock()}}catch(e){if(t.disposed||x.signal.aborted)break;r=e instanceof Error?e:Error(String(e))}if(t.disposed||x.signal.aborted)break;if(y===0){if(r)if(u)u(r);else throw r;else w=c;break}if(C>=y){let e=r??Error(`[courier] readable() reconnect budget exhausted`);if(u)u(e);else if(r)throw r;break}if(c&&!r){w=!0;break}let m=typeof b==`function`?b(C):b;C++,await(0,e.sleep)(m,x.signal).catch(()=>{})}}finally{w||x.abort(),S()}}function Z(e){try{return JSON.parse(e)}catch{return e}}function ne(t,n,r={}){if(t.disposed)throw new c(`StreamClient`);let{body:i,fetchInit:a,headers:o,method:s=i===void 0?`GET`:`POST`,onError:l,params:u,query:d,reconnect:f=!1,signal:p,timeout:m}=r;m!==void 0&&_(m);let h=new Map,g=new AbortController,v=t.track(g),y=!1,b=`connecting`,x=``,S=f===!0?{}:f===!1?{times:0}:f,C=S.times??(f?5:0),w=S.delay??T;function E(e,t){let n=h.get(e);if(!n?.size)return;let r=Z(t);for(let e of n)e(r)}async function D(){let e=(await Y(t,n,g,{body:i,extSignal:p,fetchInit:a,headers:o,method:s,params:u,query:d,timeout:m},{accept:`text/event-stream`,"cache-control":`no-cache`,...x?{"last-event-id":x}:{}})).body.getReader(),r=new TextDecoder,c=``,l=`message`,f=``,h=``;try{for(;;){let{done:t,value:n}=await e.read();if(t)break;c+=r.decode(n,{stream:!0}).replace(/\r\n/g,`
2
3
  `).replace(/\r/g,`
3
4
  `);let i;for(;(i=c.indexOf(`
4
5
  `))!==-1;){let e=c.slice(0,i);if(c=c.slice(i+1),e===``)f!==``&&(h&&(x=h),E(l,f.replace(/\n$/,``))),l=`message`,f=``,h=``;else if(!e.startsWith(`:`)){let t=e.indexOf(`:`),n=t===-1?e:e.slice(0,t),r=t===-1?``:e.slice(t+1).replace(/^ /,``);if(n===`event`)l=r;else if(n===`data`)f+=(f?`
5
- `:``)+r;else if(n===`id`&&!r.includes(`\0`))h=r;else if(n===`retry`){let e=parseInt(r,10);Number.isNaN(e)||(w=e)}}}}}finally{e.releaseLock()}}async function O(){let t=0;try{for(;!y&&!a.disposed&&!g.signal.aborted;){let n;b=`connecting`;try{b=`open`,await D()}catch(e){if(y||a.disposed||g.signal.aborted)break;n=e instanceof Error?e:Error(String(e))}if(y||a.disposed||g.signal.aborted)break;if(C===0){n&&l?.(n);break}if(t>=C){l?.(n??Error(`[courier] SSE reconnect budget exhausted`));break}b=`reconnecting`;let r=typeof w==`function`?w(t):w;t++,await(0,e.sleep)(r,g.signal).catch(()=>{})}}finally{b=`closed`,v()}}return O().catch(e=>{!y&&!a.disposed&&l?.(e instanceof Error?e:Error(String(e)))}),{get closed(){return y},dispose(){y=!0,g.abort(),h.clear()},on(e,t){if(y)return()=>{};let n=h.get(e);return n||(n=new Set,h.set(e,n)),n.add(t),()=>n.delete(t)},get status(){return b},[Symbol.dispose](){this.dispose()}}}async function*s(t,n={}){if(a.disposed)throw new c(`StreamClient`);let{body:r,fetchInit:i,headers:o,method:s=r===void 0?`GET`:`POST`,onError:u,params:d,parse:f=`text`,query:p,reconnect:m=!1,signal:h,timeout:g}=n;g!==void 0&&_(g);let v=m===!0?{}:m===!1?{times:0}:m,y=v.times??(m?5:0),b=v.delay??T,x=new AbortController,S=a.track(x),C=0,w=!1;try{for(;!a.disposed&&!x.signal.aborted;){let n,c=!1;try{let e=(await Z(a,t,x,{body:r,extSignal:h,fetchInit:i,headers:o,method:s,params:d,query:p,timeout:g})).body.getReader(),n=new TextDecoder;try{if(f===`ndjson`){let t=``;for(;;){let{done:r,value:i}=await e.read();if(r){let e=t.trim();if(e)try{yield JSON.parse(e)}catch{throw new l(`NDJSON: failed to parse line: ${e.slice(0,200)}`)}c=!0;break}t+=n.decode(i,{stream:!0});let a;for(;(a=t.indexOf(`
6
- `))!==-1;){let e=t.slice(0,a).trim();if(t=t.slice(a+1),e)try{yield JSON.parse(e)}catch{throw new l(`NDJSON: failed to parse line: ${e.slice(0,200)}`)}}}}else for(;;){let{done:t,value:r}=await e.read();if(t){c=!0;break}yield n.decode(r,{stream:!0})}}finally{e.releaseLock()}}catch(e){if(a.disposed||x.signal.aborted)break;n=e instanceof Error?e:Error(String(e))}if(a.disposed||x.signal.aborted)break;if(y===0){if(n)if(u)u(n);else throw n;else w=c;break}if(C>=y){let e=n??Error(`[courier] readable() reconnect budget exhausted`);if(u)u(e);else if(n)throw n;break}if(c&&!n){w=!0;break}let m=typeof b==`function`?b(C):b;C++,await(0,e.sleep)(m,x.signal).catch(()=>{})}}finally{w||x.abort(),S()}}return{cancelAll(){a.cancelAll()},get disposalSignal(){return a.disposalSignal},dispose(){i&&a.dispose()},get disposed(){return a.disposed},getHeaders:a.getHeaders,headers:a.headers,readable:s,sse:o,[Symbol.dispose](){this.dispose()},use:a.use}}function te(e){let{mutationDefaults:t,query:n,...r}=e??{},i=y(r),a=C({transport:i}),o=Q({transport:i}),s=(e,t)=>{let n=typeof e==`string`?e:e instanceof URL?e.toString():e.url,{signal:r,...a}=t??{},o=Object.fromEntries(new Headers({...i.getHeaders(),...t?.headers??{}}).entries());return i.dispatch({headers:o,init:{...a,signal:r},url:n})},c=Y({...n,fetch:s});return{api:a,cancelAll(){i.cancelAll(),c.cancelAll()},get disposalSignal(){return i.disposalSignal},dispose(){i.dispose(),c.dispose()},get disposed(){return i.disposed},headers:i.headers,mutation(e,n){let{invalidates:r,sets:i,...a}=n??{},o=async(e,t)=>{if(i){let n=i(e,t);for(let[e,t]of n)c.set(e,t)}if(r)for(let e of r)c.invalidate(e);await a.onSuccess?.(e,t)};return O(e,{...t,...a,onSuccess:o})},query:c,stream:o,[Symbol.dispose](){this.dispose()},use:i.use}}var ne=!globalThis.__COURIER_PROD__;function re(e){ne&&console.warn(`[@vielzeug/courier] ${e}`)}function ie(e,t){let n=[],r=typeof document<`u`,i=typeof window<`u`;if(!r&&!i&&re(`bindRefetch() called with no document/window in scope — no listeners attached`),r){let t=()=>{document.visibilityState===`visible`&&e.refetchStale()};document.addEventListener(`visibilitychange`,t),n.push(()=>document.removeEventListener(`visibilitychange`,t))}if(i){let t=()=>e.refetchStale();window.addEventListener(`online`,t),n.push(()=>window.removeEventListener(`online`,t))}let a=()=>{for(let e of n)e();n.length=0};return t?.signal?.addEventListener(`abort`,a,{once:!0}),a}function ae(e){return async(t,n)=>{let r=typeof e==`function`?await e():e;return n(t.withHeaders({authorization:`Bearer ${r}`}))}}function oe(t){let n=t?.header??`x-request-id`,r=t?.generate??e.uuid;return(e,t)=>t(e.withHeaders({[n]:r()}))}function $(e){let t=e?.logger??((e,t)=>{console.debug(e,t)});return async(e,n)=>{let r=performance.now(),i=(e.init.method??`GET`).toUpperCase();try{let a=await n(e),o=Math.round(performance.now()-r);return t(`${i} ${e.url} ${a.status} (${o}ms)`,{duration:o,method:i,status:a.status,url:e.url}),a}catch(n){let a=Math.round(performance.now()-r);throw t(`${i} ${e.url} ERR (${a}ms)`,{duration:a,method:i,status:0,url:e.url}),n}}}function se(t,n){let{keys:r,onError:i,prefix:a=`courier:`,storage:o}=n,s=t.keys(),c=typeof r==`function`?s.filter(r):r,l=[];function u(t){return`${a}${(0,e.hash)(t)}`}function d(e,t){if(t.status!==`success`)return;let n={data:t.data,updatedAt:t.updatedAt};try{let t=o.setItem(u(e),JSON.stringify(n));t instanceof Promise&&t.catch(t=>i?.(t,e))}catch(t){i?.(t,e)}}for(let e of c){let n=t.getState(e);n&&d(e,n);let r=t.observe({fetch:!1,key:e}),i=r.subscribe(()=>d(e,r.peek()));l.push(i)}return()=>{for(let e of l)e();l.length=0}}async function ce(t,n){let{keys:r,maxAge:i,onError:a,prefix:o=`courier:`,storage:s}=n,c=t.keys(),l=typeof r==`function`?c.filter(r):r;await Promise.all(l.map(async n=>{try{let r=await s.getItem(`${o}${(0,e.hash)(n)}`);if(!r)return;let c=JSON.parse(r);if(typeof c!=`object`||!c||!(`data`in c)||typeof c.updatedAt!=`number`){a?.(Error(`[courier] Malformed persisted entry`),n);return}let l=c;if(i!==void 0&&Date.now()-l.updatedAt>i)return;t.set(n,l.data,{updatedAt:l.updatedAt})}catch(e){a?.(e,n)}}))}function le(e){return{peek:()=>e.peek(),subscribe:t=>e.subscribe(t)}}exports.CourierAbortError=a,exports.CourierBatcherError=s,exports.CourierDisposedError=c,exports.CourierError=t,exports.CourierHttpError=n,exports.CourierNetworkError=r,exports.CourierParseError=l,exports.CourierSchemaValidationError=o,exports.CourierTimeoutError=i,exports.bindRefetch=ie,exports.createApi=C,exports.createBatcher=w,exports.createCourier=te,exports.createMutation=O,exports.createQuery=Y,exports.createStream=Q,exports.hydrateQueryCache=ce,exports.persistQueryCache=se,exports.toSyncStore=le,exports.withBearerAuth=ae,exports.withLogging=$,exports.withRequestId=oe;
6
+ `:``)+r;else if(n===`id`&&!r.includes(`\0`))h=r;else if(n===`retry`){let e=parseInt(r,10);Number.isNaN(e)||(w=e)}}}}}finally{e.releaseLock()}}async function O(){let n=0;try{for(;!y&&!t.disposed&&!g.signal.aborted;){let r;b=`connecting`;try{b=`open`,await D()}catch(e){if(y||t.disposed||g.signal.aborted)break;r=e instanceof Error?e:Error(String(e))}if(y||t.disposed||g.signal.aborted)break;if(C===0){r&&l?.(r);break}if(n>=C){l?.(r??Error(`[courier] SSE reconnect budget exhausted`));break}b=`reconnecting`;let i=typeof w==`function`?w(n):w;n++,await(0,e.sleep)(i,g.signal).catch(()=>{})}}finally{b=`closed`,v()}}return O().catch(e=>{!y&&!t.disposed&&l?.(e instanceof Error?e:Error(String(e)))}),{get closed(){return y},dispose(){y=!0,g.abort(),h.clear()},on(e,t){if(y)return()=>{};let n=h.get(e);return n||(n=new Set,h.set(e,n)),n.add(t),()=>n.delete(t)},get status(){return b},[Symbol.dispose](){this.dispose()}}}function Q(e){let{transport:t,...n}=e??{},r=!t,i=t??y(n);return{cancelAll(){i.cancelAll()},get disposalSignal(){return i.disposalSignal},dispose(){r&&i.dispose()},get disposed(){return i.disposed},getHeaders:i.getHeaders,headers:i.headers,readable:(e,t)=>X(i,e,t),sse:(e,t)=>ne(i,e,t),[Symbol.dispose](){this.dispose()},use:i.use}}function re(e){let{mutationDefaults:t,query:n,...r}=e??{},i=y(r),a=C({transport:i}),o=Q({transport:i}),s=J(n);return{api:a,cancelAll(){i.cancelAll(),s.cancelAll()},get disposalSignal(){return i.disposalSignal},dispose(){i.dispose(),s.dispose()},get disposed(){return i.disposed},headers:i.headers,mutation(e,n){let{invalidates:r,sets:i,...a}=n??{},o=async(e,t)=>{if(i){let n=i(e,t);for(let[e,t]of n)s.set(e,t)}if(r)for(let e of r)s.invalidate(e);await a.onSuccess?.(e,t)};return O(e,{...t,...a,onSuccess:o})},query:s,stream:o,[Symbol.dispose](){this.dispose()},use:i.use}}var ie=!globalThis.__COURIER_PROD__;function ae(e){ie&&console.warn(`[@vielzeug/courier] ${e}`)}function oe(e,t){let n=[],r=typeof document<`u`,i=typeof window<`u`;if(!r&&!i&&ae(`bindRefetch() called with no document/window in scope — no listeners attached`),r){let t=()=>{document.visibilityState===`visible`&&e.refetchStale()};document.addEventListener(`visibilitychange`,t),n.push(()=>document.removeEventListener(`visibilitychange`,t))}if(i){let t=()=>e.refetchStale();window.addEventListener(`online`,t),n.push(()=>window.removeEventListener(`online`,t))}let a=()=>{for(let e of n)e();n.length=0};return t?.signal?.addEventListener(`abort`,a,{once:!0}),a}function $(e){return async(t,n)=>{let r=typeof e==`function`?await e():e;return n(t.withHeaders({authorization:`Bearer ${r}`}))}}function se(t){let n=t?.header??`x-request-id`,r=t?.generate??e.uuid;return(e,t)=>t(e.withHeaders({[n]:r()}))}function ce(e){let t=e?.logger??((e,t)=>{console.debug(e,t)});return async(e,n)=>{let r=performance.now(),i=(e.init.method??`GET`).toUpperCase();try{let a=await n(e),o=Math.round(performance.now()-r);return t(`${i} ${e.url} ${a.status} (${o}ms)`,{duration:o,method:i,status:a.status,url:e.url}),a}catch(n){let a=Math.round(performance.now()-r);throw t(`${i} ${e.url} ERR (${a}ms)`,{duration:a,method:i,status:0,url:e.url}),n}}}function le(t,n){let{keys:r,onError:i,prefix:a=`courier:`,storage:o}=n,s=t.keys(),c=typeof r==`function`?s.filter(r):r,l=[];function u(t){return`${a}${(0,e.hash)(t)}`}function d(e,t){if(t.status!==`success`)return;let n={data:t.data,updatedAt:t.updatedAt};try{let t=o.setItem(u(e),JSON.stringify(n));t instanceof Promise&&t.catch(t=>i?.(t,e))}catch(t){i?.(t,e)}}for(let e of c){let n=t.getState(e);n&&d(e,n);let r=t.observe({fetch:!1,key:e}),i=r.subscribe(()=>d(e,r.peek()));l.push(i)}return()=>{for(let e of l)e();l.length=0}}async function ue(t,n){let{keys:r,maxAge:i,onError:a,prefix:o=`courier:`,storage:s}=n,c=t.keys(),l=typeof r==`function`?c.filter(r):r;await Promise.all(l.map(async n=>{try{let r=await s.getItem(`${o}${(0,e.hash)(n)}`);if(!r)return;let c=JSON.parse(r);if(typeof c!=`object`||!c||!(`data`in c)||typeof c.updatedAt!=`number`){a?.(Error(`[courier] Malformed persisted entry`),n);return}let l=c;if(i!==void 0&&Date.now()-l.updatedAt>i)return;t.set(n,l.data,{updatedAt:l.updatedAt})}catch(e){a?.(e,n)}}))}function de(e){return{peek:()=>e.peek(),subscribe:t=>e.subscribe(t)}}exports.CourierAbortError=a,exports.CourierBatcherError=s,exports.CourierDisposedError=c,exports.CourierError=t,exports.CourierHttpError=n,exports.CourierNetworkError=r,exports.CourierParseError=l,exports.CourierSchemaValidationError=o,exports.CourierTimeoutError=i,exports.bindRefetch=oe,exports.createApi=C,exports.createBatcher=w,exports.createCourier=re,exports.createMutation=O,exports.createQuery=J,exports.createStream=Q,exports.hydrateQueryCache=ue,exports.persistQueryCache=le,exports.toSyncStore=de,exports.withBearerAuth=$,exports.withLogging=ce,exports.withRequestId=se;
7
7
  //# sourceMappingURL=courier.cjs.map