@aave/client 4.0.0-next.31 → 4.0.0-next.33

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.
Files changed (48) hide show
  1. package/dist/actions/index.cjs +1636 -1
  2. package/dist/actions/index.cjs.map +1 -1
  3. package/dist/actions/index.d.cts +1 -1
  4. package/dist/actions/index.d.ts +1 -1
  5. package/dist/actions/index.js +1 -1
  6. package/dist/chunk-5S5WCHVW.js +2 -0
  7. package/dist/chunk-5S5WCHVW.js.map +1 -0
  8. package/dist/chunk-COR3ZX64.js +2 -0
  9. package/dist/chunk-COR3ZX64.js.map +1 -0
  10. package/dist/chunk-I6P76ICW.js +1637 -0
  11. package/dist/chunk-I6P76ICW.js.map +1 -0
  12. package/dist/chunk-IANLBRJB.js +3 -0
  13. package/dist/chunk-IANLBRJB.js.map +1 -0
  14. package/dist/chunk-MGE343SH.js +2 -0
  15. package/dist/chunk-MGE343SH.js.map +1 -0
  16. package/dist/ethers.cjs +2 -1
  17. package/dist/ethers.cjs.map +1 -1
  18. package/dist/ethers.js +1 -1
  19. package/dist/ethers.js.map +1 -1
  20. package/dist/index.cjs +1638 -2
  21. package/dist/index.cjs.map +1 -1
  22. package/dist/index.d.cts +18 -1
  23. package/dist/index.d.ts +18 -1
  24. package/dist/index.js +2 -2
  25. package/dist/index.js.map +1 -1
  26. package/dist/privy.cjs +2 -1
  27. package/dist/privy.cjs.map +1 -1
  28. package/dist/privy.js +1 -1
  29. package/dist/privy.js.map +1 -1
  30. package/dist/testing.d.ts +2 -0
  31. package/dist/testing.js +1664 -29
  32. package/dist/testing.js.map +1 -1
  33. package/dist/thirdweb.cjs +1637 -1
  34. package/dist/thirdweb.cjs.map +1 -1
  35. package/dist/thirdweb.js +1 -1
  36. package/dist/thirdweb.js.map +1 -1
  37. package/dist/utils/index.cjs +1 -1
  38. package/dist/utils/index.cjs.map +1 -1
  39. package/dist/utils/index.js +1 -1
  40. package/dist/utils/index.js.map +1 -1
  41. package/dist/viem.cjs +1637 -1
  42. package/dist/viem.cjs.map +1 -1
  43. package/dist/viem.js +1 -1
  44. package/package.json +6 -6
  45. package/dist/chunk-35WSRP27.js +0 -2
  46. package/dist/chunk-35WSRP27.js.map +0 -1
  47. package/dist/chunk-BU2KVGJB.js +0 -2
  48. package/dist/chunk-BU2KVGJB.js.map +0 -1
@@ -391,7 +391,7 @@ declare function swappableTokens(client: AaveClient, request: SwappableTokensReq
391
391
  * const result = await prepareTokenSwap(client, {
392
392
  * quoteId: quote.quoteId,
393
393
  * }).andThen(order => {
394
- * return signSwapTypedDataWith(wallet, order.data)
394
+ * return signTypedDataWith(wallet, order.data)
395
395
  * .andThen((signature) =>
396
396
  * swap({ intent: { quoteId: order.newQuoteId, signature } }),
397
397
  * );
@@ -391,7 +391,7 @@ declare function swappableTokens(client: AaveClient, request: SwappableTokensReq
391
391
  * const result = await prepareTokenSwap(client, {
392
392
  * quoteId: quote.quoteId,
393
393
  * }).andThen(order => {
394
- * return signSwapTypedDataWith(wallet, order.data)
394
+ * return signTypedDataWith(wallet, order.data)
395
395
  * .andThen((signature) =>
396
396
  * swap({ intent: { quoteId: order.newQuoteId, signature } }),
397
397
  * );
@@ -1,2 +1,2 @@
1
- export{U as activities,j as asset,m as assetBorrowHistory,k as assetPriceHistory,l as assetSupplyHistory,K as borrow,q as borrowApyHistory,A as borrowSwapQuote,I as cancelSwap,f as chain,g as chains,i as exchangeRate,h as hasProcessedKnownTransaction,b as hub,d as hubAssets,e as hubSummaryHistory,c as hubs,Q as liquidatePosition,D as preparePositionSwap,H as prepareSwapCancel,y as prepareTokenSwap,S as preview,n as protocolHistory,O as renounceSpokeUserPositionManager,M as repay,B as repayWithSupplyQuote,o as reserve,p as reserves,R as setSpokeUserPositionManager,T as setUserSuppliesAsCollateral,s as spoke,u as spokePositionManagers,v as spokeUserPositionManagers,t as spokes,L as supply,r as supplyApyHistory,z as supplySwapQuote,G as swap,E as swapStatus,x as swappableTokens,w as tokenSwapQuote,P as updateUserPositionConditions,_ as userBalances,W as userBorrows,Z as userPosition,Y as userPositions,aa as userRiskPremiumBreakdown,X as userSummary,$ as userSummaryHistory,V as userSupplies,J as userSwaps,F as waitForSwapOutcome,N as withdraw,C as withdrawSwapQuote}from'../chunk-35WSRP27.js';//# sourceMappingURL=index.js.map
1
+ export{Xd as activities,md as asset,pd as assetBorrowHistory,nd as assetPriceHistory,od as assetSupplyHistory,Nd as borrow,td as borrowApyHistory,Dd as borrowSwapQuote,Ld as cancelSwap,id as chain,jd as chains,ld as exchangeRate,kd as hasProcessedKnownTransaction,ed as hub,gd as hubAssets,hd as hubSummaryHistory,fd as hubs,Td as liquidatePosition,Gd as preparePositionSwap,Kd as prepareSwapCancel,Bd as prepareTokenSwap,Vd as preview,qd as protocolHistory,Rd as renounceSpokeUserPositionManager,Pd as repay,Ed as repayWithSupplyQuote,rd as reserve,sd as reserves,Ud as setSpokeUserPositionManager,Wd as setUserSuppliesAsCollateral,vd as spoke,xd as spokePositionManagers,yd as spokeUserPositionManagers,wd as spokes,Od as supply,ud as supplyApyHistory,Cd as supplySwapQuote,Jd as swap,Hd as swapStatus,Ad as swappableTokens,zd as tokenSwapQuote,Sd as updateUserPositionConditions,be as userBalances,Zd as userBorrows,ae as userPosition,$d as userPositions,de as userRiskPremiumBreakdown,_d as userSummary,ce as userSummaryHistory,Yd as userSupplies,Md as userSwaps,Id as waitForSwapOutcome,Qd as withdraw,Fd as withdrawSwapQuote}from'../chunk-I6P76ICW.js';import'../chunk-IANLBRJB.js';import'../chunk-5S5WCHVW.js';//# sourceMappingURL=index.js.map
2
2
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,2 @@
1
+ var rr={withStackTrace:false},H=(e,r,t=rr)=>{let i=r.isOk()?{type:"Ok",value:r.value}:{type:"Err",value:r.error},n=t.withStackTrace?new Error().stack:void 0;return {data:i,message:e,stack:n}};function T(e,r,t,i){function n(o){return o instanceof t?o:new t(function(a){a(o);})}return new(t||(t=Promise))(function(o,a){function s(v){try{u(i.next(v));}catch(f){a(f);}}function c(v){try{u(i.throw(v));}catch(f){a(f);}}function u(v){v.done?o(v.value):n(v.value).then(s,c);}u((i=i.apply(e,[])).next());})}function C(e){var r=typeof Symbol=="function"&&Symbol.iterator,t=r&&e[r],i=0;if(t)return t.call(e);if(e&&typeof e.length=="number")return {next:function(){return e&&i>=e.length&&(e=void 0),{value:e&&e[i++],done:!e}}};throw new TypeError(r?"Object is not iterable.":"Symbol.iterator is not defined.")}function A(e){return this instanceof A?(this.v=e,this):new A(e)}function W(e,r,t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var i=t.apply(e,r||[]),n,o=[];return n=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),s("next"),s("throw"),s("return",a),n[Symbol.asyncIterator]=function(){return this},n;function a(h){return function(x){return Promise.resolve(x).then(h,f)}}function s(h,x){i[h]&&(n[h]=function(w){return new Promise(function(p,P){o.push([h,w,p,P])>1||c(h,w);})},x&&(n[h]=x(n[h])));}function c(h,x){try{u(i[h](x));}catch(w){y(o[0][3],w);}}function u(h){h.value instanceof A?Promise.resolve(h.value.v).then(v,f):y(o[0][2],h);}function v(h){c("next",h);}function f(h){c("throw",h);}function y(h,x){h(x),o.shift(),o.length&&c(o[0][0],o[0][1]);}}function er(e){var r,t;return r={},i("next"),i("throw",function(n){throw n}),i("return"),r[Symbol.iterator]=function(){return this},r;function i(n,o){r[n]=e[n]?function(a){return (t=!t)?{value:A(e[n](a)),done:false}:o?o(a):a}:o;}}function tr(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=e[Symbol.asyncIterator],t;return r?r.call(e):(e=typeof C=="function"?C(e):e[Symbol.iterator](),t={},i("next"),i("throw"),i("return"),t[Symbol.asyncIterator]=function(){return this},t);function i(o){t[o]=e[o]&&function(a){return new Promise(function(s,c){a=e[o](a),n(s,c,a.done,a.value);})};}function n(o,a,s,c){Promise.resolve(c).then(function(u){o({value:u,done:s});},a);}}var S=class e{constructor(r){this._promise=r;}static fromSafePromise(r){let t=r.then(i=>new g(i));return new e(t)}static fromPromise(r,t){let i=r.then(n=>new g(n)).catch(n=>new d(t(n)));return new e(i)}static fromThrowable(r,t){return (...i)=>new e(T(this,void 0,void 0,function*(){try{return new g(yield r(...i))}catch(n){return new d(t?t(n):n)}}))}static combine(r){return nr(r)}static combineWithAllErrors(r){return ir(r)}map(r){return new e(this._promise.then(t=>T(this,void 0,void 0,function*(){return t.isErr()?new d(t.error):new g(yield r(t.value))})))}andThrough(r){return new e(this._promise.then(t=>T(this,void 0,void 0,function*(){if(t.isErr())return new d(t.error);let i=yield r(t.value);return i.isErr()?new d(i.error):new g(t.value)})))}andTee(r){return new e(this._promise.then(t=>T(this,void 0,void 0,function*(){if(t.isErr())return new d(t.error);try{yield r(t.value);}catch{}return new g(t.value)})))}orTee(r){return new e(this._promise.then(t=>T(this,void 0,void 0,function*(){if(t.isOk())return new g(t.value);try{yield r(t.error);}catch{}return new d(t.error)})))}mapErr(r){return new e(this._promise.then(t=>T(this,void 0,void 0,function*(){return t.isOk()?new g(t.value):new d(yield r(t.error))})))}andThen(r){return new e(this._promise.then(t=>{if(t.isErr())return new d(t.error);let i=r(t.value);return i instanceof e?i._promise:i}))}orElse(r){return new e(this._promise.then(t=>T(this,void 0,void 0,function*(){return t.isErr()?r(t.error):new g(t.value)})))}match(r,t){return this._promise.then(i=>i.match(r,t))}unwrapOr(r){return this._promise.then(t=>t.unwrapOr(r))}safeUnwrap(){return W(this,arguments,function*(){return yield A(yield A(yield*er(tr(yield A(this._promise.then(t=>t.safeUnwrap()))))))})}then(r,t){return this._promise.then(r,t)}[Symbol.asyncIterator](){return W(this,arguments,function*(){let t=yield A(this._promise);return t.isErr()&&(yield yield A(B(t.error))),yield A(t.value)})}};function pr(e){return new S(Promise.resolve(new g(e)))}function B(e){return new S(Promise.resolve(new d(e)))}var gr=S.fromPromise,dr=S.fromSafePromise,Er=S.fromThrowable,X=e=>{let r=D([]);for(let t of e)if(t.isErr()){r=E(t.error);break}else r.map(i=>i.push(t.value));return r},nr=e=>S.fromSafePromise(Promise.all(e)).andThen(X),J=e=>{let r=D([]);for(let t of e)t.isErr()&&r.isErr()?r.error.push(t.error):t.isErr()&&r.isOk()?r=E([t.error]):t.isOk()&&r.isOk()&&r.value.push(t.value);return r},ir=e=>S.fromSafePromise(Promise.all(e)).andThen(J),L;(function(e){function r(n,o){return (...a)=>{try{let s=n(...a);return D(s)}catch(s){return E(o?o(s):s)}}}e.fromThrowable=r;function t(n){return X(n)}e.combine=t;function i(n){return J(n)}e.combineWithAllErrors=i;})(L||(L={}));function D(e){return new g(e)}function E(e){return new d(e)}function br(e){let r=e().next();return r instanceof Promise?new S(r.then(t=>t.value)):r.value}var g=class{constructor(r){this.value=r;}isOk(){return true}isErr(){return !this.isOk()}map(r){return D(r(this.value))}mapErr(r){return D(this.value)}andThen(r){return r(this.value)}andThrough(r){return r(this.value).map(t=>this.value)}andTee(r){try{r(this.value);}catch{}return D(this.value)}orTee(r){return D(this.value)}orElse(r){return D(this.value)}asyncAndThen(r){return r(this.value)}asyncAndThrough(r){return r(this.value).map(()=>this.value)}asyncMap(r){return S.fromSafePromise(r(this.value))}unwrapOr(r){return this.value}match(r,t){return r(this.value)}safeUnwrap(){let r=this.value;return (function*(){return r})()}_unsafeUnwrap(r){return this.value}_unsafeUnwrapErr(r){throw H("Called `_unsafeUnwrapErr` on an Ok",this,r)}*[Symbol.iterator](){return this.value}},d=class{constructor(r){this.error=r;}isOk(){return false}isErr(){return !this.isOk()}map(r){return E(this.error)}mapErr(r){return E(r(this.error))}andThrough(r){return E(this.error)}andTee(r){return E(this.error)}orTee(r){try{r(this.error);}catch{}return E(this.error)}andThen(r){return E(this.error)}orElse(r){return r(this.error)}asyncAndThen(r){return B(this.error)}asyncAndThrough(r){return B(this.error)}asyncMap(r){return B(this.error)}unwrapOr(r){return r}match(r,t){return t(this.error)}safeUnwrap(){let r=this.error;return (function*(){throw yield E(r),new Error("Do not use this generator out of `safeTry`")})()}_unsafeUnwrap(r){throw H("Called `_unsafeUnwrap` on an Err",this,r)}_unsafeUnwrapErr(r){return this.error}*[Symbol.iterator](){let r=this;return yield r,r}},yr=L.fromThrowable;var or=20,sr=1,O=1e6,Z=1e6,ur=-7,ar=21,cr=false,U="[big.js] ",M=U+"Invalid ",R=M+"decimal places",fr=M+"rounding mode",z=U+"Division by zero",l={},_=void 0,lr=/^-?(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i;function G(){function e(r){var t=this;if(!(t instanceof e))return r===_&&arguments.length===0?G():new e(r);if(r instanceof e)t.s=r.s,t.e=r.e,t.c=r.c.slice();else {if(typeof r!="string"){if(e.strict===true&&typeof r!="bigint")throw TypeError(M+"value");r=r===0&&1/r<0?"-0":String(r);}hr(t,r);}t.constructor=e;}return e.prototype=l,e.DP=or,e.RM=sr,e.NE=ur,e.PE=ar,e.strict=cr,e.roundDown=0,e.roundHalfUp=1,e.roundHalfEven=2,e.roundUp=3,e}function hr(e,r){var t,i,n;if(!lr.test(r))throw Error(M+"number");for(e.s=r.charAt(0)=="-"?(r=r.slice(1),-1):1,(t=r.indexOf("."))>-1&&(r=r.replace(".","")),(i=r.search(/e/i))>0?(t<0&&(t=i),t+=+r.slice(i+1),r=r.substring(0,i)):t<0&&(t=r.length),n=r.length,i=0;i<n&&r.charAt(i)=="0";)++i;if(i==n)e.c=[e.e=0];else {for(;n>0&&r.charAt(--n)=="0";);for(e.e=t-i-1,e.c=[],t=0;i<=n;)e.c[t++]=+r.charAt(i++);}return e}function N(e,r,t,i){var n=e.c;if(t===_&&(t=e.constructor.RM),t!==0&&t!==1&&t!==2&&t!==3)throw Error(fr);if(r<1)i=t===3&&(i||!!n[0])||r===0&&(t===1&&n[0]>=5||t===2&&(n[0]>5||n[0]===5&&(i||n[1]!==_))),n.length=1,i?(e.e=e.e-r+1,n[0]=1):n[0]=e.e=0;else if(r<n.length){if(i=t===1&&n[r]>=5||t===2&&(n[r]>5||n[r]===5&&(i||n[r+1]!==_||n[r-1]&1))||t===3&&(i||!!n[0]),n.length=r,i){for(;++n[--r]>9;)if(n[r]=0,r===0){++e.e,n.unshift(1);break}}for(r=n.length;!n[--r];)n.pop();}return e}function I(e,r,t){var i=e.e,n=e.c.join(""),o=n.length;if(r)n=n.charAt(0)+(o>1?"."+n.slice(1):"")+(i<0?"e":"e+")+i;else if(i<0){for(;++i;)n="0"+n;n="0."+n;}else if(i>0)if(++i>o)for(i-=o;i--;)n+="0";else i<o&&(n=n.slice(0,i)+"."+n.slice(i));else o>1&&(n=n.charAt(0)+"."+n.slice(1));return e.s<0&&t?"-"+n:n}l.abs=function(){var e=new this.constructor(this);return e.s=1,e};l.cmp=function(e){var r,t=this,i=t.c,n=(e=new t.constructor(e)).c,o=t.s,a=e.s,s=t.e,c=e.e;if(!i[0]||!n[0])return i[0]?o:n[0]?-a:0;if(o!=a)return o;if(r=o<0,s!=c)return s>c^r?1:-1;for(a=(s=i.length)<(c=n.length)?s:c,o=-1;++o<a;)if(i[o]!=n[o])return i[o]>n[o]^r?1:-1;return s==c?0:s>c^r?1:-1};l.div=function(e){var r=this,t=r.constructor,i=r.c,n=(e=new t(e)).c,o=r.s==e.s?1:-1,a=t.DP;if(a!==~~a||a<0||a>O)throw Error(R);if(!n[0])throw Error(z);if(!i[0])return e.s=o,e.c=[e.e=0],e;var s,c,u,v,f,y=n.slice(),h=s=n.length,x=i.length,w=i.slice(0,s),p=w.length,P=e,q=P.c=[],V=0,k=a+(P.e=r.e-e.e)+1;for(P.s=o,o=k<0?0:k,y.unshift(0);p++<s;)w.push(0);do{for(u=0;u<10;u++){if(s!=(p=w.length))v=s>p?1:-1;else for(f=-1,v=0;++f<s;)if(n[f]!=w[f]){v=n[f]>w[f]?1:-1;break}if(v<0){for(c=p==s?n:y;p;){if(w[--p]<c[p]){for(f=p;f&&!w[--f];)w[f]=9;--w[f],w[p]+=10;}w[p]-=c[p];}for(;!w[0];)w.shift();}else break}q[V++]=v?u:++u,w[0]&&v?w[p]=i[h]||0:w=[i[h]];}while((h++<x||w[0]!==_)&&o--);return !q[0]&&V!=1&&(q.shift(),P.e--,k--),V>k&&N(P,k,t.RM,w[0]!==_),P};l.eq=function(e){return this.cmp(e)===0};l.gt=function(e){return this.cmp(e)>0};l.gte=function(e){return this.cmp(e)>-1};l.lt=function(e){return this.cmp(e)<0};l.lte=function(e){return this.cmp(e)<1};l.minus=l.sub=function(e){var r,t,i,n,o=this,a=o.constructor,s=o.s,c=(e=new a(e)).s;if(s!=c)return e.s=-c,o.plus(e);var u=o.c.slice(),v=o.e,f=e.c,y=e.e;if(!u[0]||!f[0])return f[0]?e.s=-c:u[0]?e=new a(o):e.s=1,e;if(s=v-y){for((n=s<0)?(s=-s,i=u):(y=v,i=f),i.reverse(),c=s;c--;)i.push(0);i.reverse();}else for(t=((n=u.length<f.length)?u:f).length,s=c=0;c<t;c++)if(u[c]!=f[c]){n=u[c]<f[c];break}if(n&&(i=u,u=f,f=i,e.s=-e.s),(c=(t=f.length)-(r=u.length))>0)for(;c--;)u[r++]=0;for(c=r;t>s;){if(u[--t]<f[t]){for(r=t;r&&!u[--r];)u[r]=9;--u[r],u[t]+=10;}u[t]-=f[t];}for(;u[--c]===0;)u.pop();for(;u[0]===0;)u.shift(),--y;return u[0]||(e.s=1,u=[y=0]),e.c=u,e.e=y,e};l.mod=function(e){var r,t=this,i=t.constructor,n=t.s,o=(e=new i(e)).s;if(!e.c[0])throw Error(z);return t.s=e.s=1,r=e.cmp(t)==1,t.s=n,e.s=o,r?new i(t):(n=i.DP,o=i.RM,i.DP=i.RM=0,t=t.div(e),i.DP=n,i.RM=o,this.minus(t.times(e)))};l.neg=function(){var e=new this.constructor(this);return e.s=-e.s,e};l.plus=l.add=function(e){var r,t,i,n=this,o=n.constructor;if(e=new o(e),n.s!=e.s)return e.s=-e.s,n.minus(e);var a=n.e,s=n.c,c=e.e,u=e.c;if(!s[0]||!u[0])return u[0]||(s[0]?e=new o(n):e.s=n.s),e;if(s=s.slice(),r=a-c){for(r>0?(c=a,i=u):(r=-r,i=s),i.reverse();r--;)i.push(0);i.reverse();}for(s.length-u.length<0&&(i=u,u=s,s=i),r=u.length,t=0;r;s[r]%=10)t=(s[--r]=s[r]+u[r]+t)/10|0;for(t&&(s.unshift(t),++c),r=s.length;s[--r]===0;)s.pop();return e.c=s,e.e=c,e};l.pow=function(e){var r=this,t=new r.constructor("1"),i=t,n=e<0;if(e!==~~e||e<-Z||e>Z)throw Error(M+"exponent");for(n&&(e=-e);e&1&&(i=i.times(r)),e>>=1,!!e;)r=r.times(r);return n?t.div(i):i};l.prec=function(e,r){if(e!==~~e||e<1||e>O)throw Error(M+"precision");return N(new this.constructor(this),e,r)};l.round=function(e,r){if(e===_)e=0;else if(e!==~~e||e<-O||e>O)throw Error(R);return N(new this.constructor(this),e+this.e+1,r)};l.sqrt=function(){var e,r,t,i=this,n=i.constructor,o=i.s,a=i.e,s=new n("0.5");if(!i.c[0])return new n(i);if(o<0)throw Error(U+"No square root");o=Math.sqrt(+I(i,true,true)),o===0||o===1/0?(r=i.c.join(""),r.length+a&1||(r+="0"),o=Math.sqrt(r),a=((a+1)/2|0)-(a<0||a&1),e=new n((o==1/0?"5e":(o=o.toExponential()).slice(0,o.indexOf("e")+1))+a)):e=new n(o+""),a=e.e+(n.DP+=4);do t=e,e=s.times(t.plus(i.div(t)));while(t.c.slice(0,a).join("")!==e.c.slice(0,a).join(""));return N(e,(n.DP-=4)+e.e+1,n.RM)};l.times=l.mul=function(e){var r,t=this,i=t.constructor,n=t.c,o=(e=new i(e)).c,a=n.length,s=o.length,c=t.e,u=e.e;if(e.s=t.s==e.s?1:-1,!n[0]||!o[0])return e.c=[e.e=0],e;for(e.e=c+u,a<s&&(r=n,n=o,o=r,u=a,a=s,s=u),r=new Array(u=a+s);u--;)r[u]=0;for(c=s;c--;){for(s=0,u=a+c;u>c;)s=r[u]+o[c]*n[u-c-1]+s,r[u--]=s%10,s=s/10|0;r[u]=s;}for(s?++e.e:r.shift(),c=r.length;!r[--c];)r.pop();return e.c=r,e};l.toExponential=function(e,r){var t=this,i=t.c[0];if(e!==_){if(e!==~~e||e<0||e>O)throw Error(R);for(t=N(new t.constructor(t),++e,r);t.c.length<e;)t.c.push(0);}return I(t,true,!!i)};l.toFixed=function(e,r){var t=this,i=t.c[0];if(e!==_){if(e!==~~e||e<0||e>O)throw Error(R);for(t=N(new t.constructor(t),e+t.e+1,r),e=e+t.e+1;t.c.length<e;)t.c.push(0);}return I(t,false,!!i)};l.toJSON=l.toString=function(){var e=this,r=e.constructor;return I(e,e.e<=r.NE||e.e>=r.PE,!!e.c[0])};typeof Symbol<"u"&&(l[Symbol.for("nodejs.util.inspect.custom")]=l.toJSON);l.toNumber=function(){var e=+I(this,true,true);if(this.constructor.strict===true&&!this.eq(e.toString()))throw Error(U+"Imprecise conversion");return e};l.toPrecision=function(e,r){var t=this,i=t.constructor,n=t.c[0];if(e!==_){if(e!==~~e||e<1||e>O)throw Error(M+"precision");for(t=N(new i(t),e,r);t.c.length<e;)t.c.push(0);}return I(t,e<=t.e||t.e<=i.NE||t.e>=i.PE,!!n)};l.valueOf=function(){var e=this,r=e.constructor;if(r.strict===true)throw Error(U+"valueOf disallowed");return I(e,e.e<=r.NE||e.e>=r.PE,true)};var $=G();var b=class extends Error{name="InvariantError"};function F(e,r){if(!e)throw new b(r)}function Y(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Pr(e){return e.length>0}function Dr(e){return e.length===1}function Tr(e){if(!Y(e)||!Error.prototype.isPrototypeOf(e))throw e}function Or(e,r=`Unexpected object: ${String(e)}`){throw new b(r)}function Mr(e){if(e.isErr())throw new b(`Expected result to be Ok: ${e.error.message}`)}function Nr(e){if(e.isOk())throw new b(`Expected result to be Err: ${e.value}`)}function Ir(e){if(e===null)throw new b("Expected value to be not null")}var Br=class{promise;resolve;reject;constructor(){this.promise=new Promise((e,r)=>{this.resolve=e,this.reject=r;});}};function wr(e){return e}var kr=wr;function Ur(e="Unexpected call to never()"){throw new b(e)}function Rr(e){if(e==null)throw new b("Value should not be null or undefined");return e}function jr(e){return r=>{if(r.__typename!==e)throw new b(`Expected __typename to be "${e}", but got "${r.__typename}"`);return r}}function K(e){return /^0x[a-fA-F0-9]+$/.test(e)}function j(e){return F(K(e),`Expected a valid hex string, but got: ${e}`),e}function mr(e){return F(e.length===42,`EvmAddress: invalid length ${e.length}`),j(e)}var qr=j,Vr=j;function Lr(e){return typeof e=="string"&&K(e)}var $r=j,Fr=mr("0x0000000000000000000000000000000000000000"),Cr=class extends Error{asResultAsync(){return B(this)}asResult(){return E(this)}static from(e){if(e instanceof Error){let r=this.formatMessage(e);return new this(r,{cause:e})}return Y(e)&&"message"in e?new this(String(e.message)):new this(String(e))}static is(e){return e instanceof this}static formatMessage(e){let r=[],t=e;for(;t instanceof Error;){if("errors"in t&&Array.isArray(t.errors)){let i=t.errors.map(n=>n instanceof Error?n.message:String(n));r.push(i.join(", "));}else r.push(t.message);t=t.cause;}return r.join(" due to ")}};function Wr(e,r){if(e.__typename!==r)throw new b(`Expected node to have typename "${r}", but got "${e.__typename}"`)}function Hr(e){return e}$.strict=true;var vr=(e=>(e[e.Down=0]="Down",e[e.HalfUp=1]="HalfUp",e[e.HalfEven=2]="HalfEven",e[e.Up=3]="Up",e))(vr||{}),Q=class m{value;static MAX_VAL=m.new(Number.MAX_VALUE.toString());static MIN_VAL=m.new(Number.MIN_VALUE.toString());constructor(r){this.value=new $(r);}valueOf(){try{return this.value.valueOf()}catch(r){throw new b("BigDecimal cannot be converted to a number",{cause:r})}}toNumber(){throw new b("BigDecimal cannot be converted to a number")}abs(){return new m(this.value.abs())}add(r){return new m(this.value.add(this.toBigSource(r)))}div(r){return new m(this.value.div(this.toBigSource(r)))}minus(r){return new m(this.value.minus(this.toBigSource(r)))}mod(r){return new m(this.value.mod(this.toBigSource(r)))}mul(r){return new m(this.value.mul(this.toBigSource(r)))}neg(){return new m(this.value.neg())}plus(r){return new m(this.value.plus(this.toBigSource(r)))}pow(r){return new m(this.value.pow(r))}prec(r,t){return new m(this.value.prec(r,t))}round(r,t){return new m(this.value.round(r,t))}sqrt(){return new m(this.value.sqrt())}sub(r){return new m(this.value.sub(this.toBigSource(r)))}times(r){return new m(this.value.times(this.toBigSource(r)))}cmp(r){return this.value.cmp(this.toBigSource(r))}eq(r){return this.value.eq(this.toBigSource(r))}gt(r){return this.value.gt(this.toBigSource(r))}gte(r){return this.value.gte(this.toBigSource(r))}lt(r){return this.value.lt(this.toBigSource(r))}lte(r){return this.value.lte(this.toBigSource(r))}toExponential(r,t){return this.value.toExponential(r,t)}toFixed(r,t){return this.value.toFixed(r,t)}toPrecision(r,t){return this.value.toPrecision(r,t)}toString(){return this.value.toString()}toJSON(){return this.value.toFixed()}rescale(r){return this.mul(10**r)}toDisplayString(r,t){let{rounding:i=1,minFractionDigits:n=0,trimTrailingZeros:o=false}=t??{};if(this.eq(0))return n>0?`0.${"0".repeat(n)}`:"0";let a=this.applyPrecisionWithMinFractionDigits(r,n,i);return this.formatDecimalString(a,n,o)}toApproximateNumber(){return this.gt(m.MAX_VAL)?Number.MAX_VALUE:this.lt(m.MAX_VAL.times(-1))?-Number.MAX_VALUE:this.abs().lt(m.MIN_VAL)?this.lt("0")?-0:0:Number(this.toString())}static new(r){try{return new m(r)}catch(t){throw new b("Invalid value for BigDecimal",{cause:t})}}static isBigDecimal(r){return r instanceof m}static min(r,t,...i){return [t,...i].reduce((n,o)=>n.lt(o)?n:o,r)}static max(r,t,...i){return [t,...i].reduce((n,o)=>n.gt(o)?n:o,r)}toBigSource(r){switch(typeof r){case "bigint":return r.toString();case "number":return r.toString();case "string":return r;default:return r.toFixed()}}getIntegerDigitCount(){let r=this.abs().toFixed(),[t]=r.split(".");return t?.length??r.length}applyPrecisionWithMinFractionDigits(r,t,i){if(this.gte(1)&&t>0){let n=this.getIntegerDigitCount(),o=n+t,a=Math.max(r,o)-n;return this.round(a,i)}return this.applyAdaptivePrecision(r,i)}formatDecimalString(r,t,i){let n=r.toFixed();return t>0&&(n=this.ensureMinFractionDigits(n,t)),i&&n.includes(".")&&(n=n.replace(/\.?0+$/,"")),n}ensureMinFractionDigits(r,t){let[i,n=""]=r.split(".");return n.length<t?`${i}.${n.padEnd(t,"0")}`:r}applyAdaptivePrecision(r,t){if(this.abs().gte(1)){let i=this.getIntegerDigitCount(),n=Math.max(0,r-i);return this.round(n,t)}return this.prec(r,t)}};function Xr(e){return e instanceof Q?e:Q.new(e.toString())}function Jr(e){let r=Number(e);return F(Number.isInteger(r)&&r>=0,`Invalid ChainId: ${e}`),r}export{Ur as A,Rr as B,jr as C,K as D,j as E,mr as F,qr as G,Vr as H,Lr as I,$r as J,Fr as K,Cr as L,Wr as M,Hr as N,vr as O,Q as P,Xr as Q,Jr as R,S as a,pr as b,B as c,gr as d,dr as e,Er as f,L as g,D as h,E as i,br as j,g as k,d as l,yr as m,b as n,F as o,Y as p,Pr as q,Dr as r,Tr as s,Or as t,Mr as u,Nr as v,Ir as w,Br as x,wr as y,kr as z};//# sourceMappingURL=chunk-5S5WCHVW.js.map
2
+ //# sourceMappingURL=chunk-5S5WCHVW.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../node_modules/.pnpm/neverthrow@8.2.0/node_modules/neverthrow/dist/index.es.js","../../../node_modules/.pnpm/big.js@7.0.1/node_modules/big.js/big.mjs","../../types/src/helpers/invariant.ts","../../types/src/helpers/typeguards.ts","../../types/src/helpers/assertions.ts","../../types/src/helpers/Deferred.ts","../../types/src/helpers/identity.ts","../../types/src/helpers/never.ts","../../types/src/helpers/refinements.ts","../../types/src/hex.ts","../../types/src/constants.ts","../../types/src/errors.ts","../../types/src/graphql.ts","../../types/src/number.ts"],"names":["defaultErrorConfig","createNeverThrowError","message","result","config","data","maybeStack","__awaiter","thisArg","_arguments","P","generator","adopt","value","resolve","reject","fulfilled","step","e","rejected","__values","o","s","m","__await","v","__asyncGenerator","g","i","q","verb","awaitReturn","f","n","a","b","resume","settle","r","fulfill","__asyncDelegator","p","__asyncValues","d","ResultAsync","_ResultAsync","res","promise","newPromise","Ok","errorFn","Err","fn","args","error","asyncResultList","combineResultAsyncList","combineResultAsyncListWithAllErrors","newRes","newValue","ok","_err","t","successCallback","failureCallback","errAsync","okAsync","err","fromPromise","fromSafePromise","fromAsyncThrowable","combineResultList","resultList","acc","list","combineResultListWithAllErrors","Result","fromThrowable","combine","combineWithAllErrors","safeTry","body","_f","_value","_v","_","_ok","self","DP","RM","MAX_DP","MAX_POWER","NE","PE","STRICT","NAME","INVALID","INVALID_DP","INVALID_RM","DIV_BY_ZERO","UNDEFINED","NUMERIC","_Big_","Big","x","parse","nl","round","sd","rm","more","xc","stringify","doExponential","isNonzero","y","isneg","yc","j","k","l","dp","bl","bt","cmp","ri","bz","ai","al","rl","qc","qi","xlty","xe","ye","ygtx","one","c","half","InvariantError","invariant","condition","isObject","isNonEmptyArray","isOneEntryArray","assertError","assertNever","assertOk","assertErr","assertNotNull","Deferred","identity","passthrough","never","nonNullable","expectTypename","typename","isValidHexString","hexString","evmAddress","blockchainData","signatureFrom","isSignature","txHash","ZERO_ADDRESS","ResultAwareError","cause","messages","currentError","inner","assertTypename","node","extendWithOpaqueType","RoundingMode","BigDecimal","_BigDecimal","exp","decimals","precision","opts","rounding","minFractionDigits","trimTrailingZeros","rounded","first","second","others","min","current","max","absStr","integerPart","integerDigits","requiredPrecision","decimalPlaces","str","minDigits","intPart","fracPart","bigDecimal","chainId","id"],"mappings":"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","file":"chunk-5S5WCHVW.js","sourcesContent":["const defaultErrorConfig = {\r\n withStackTrace: false,\r\n};\r\n// Custom error object\r\n// Context / discussion: https://github.com/supermacro/neverthrow/pull/215\r\nconst createNeverThrowError = (message, result, config = defaultErrorConfig) => {\r\n const data = result.isOk()\r\n ? { type: 'Ok', value: result.value }\r\n : { type: 'Err', value: result.error };\r\n const maybeStack = config.withStackTrace ? new Error().stack : undefined;\r\n return {\r\n data,\r\n message,\r\n stack: maybeStack,\r\n };\r\n};\n\n/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\n\r\nfunction __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nfunction __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nfunction __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nfunction __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nfunction __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nfunction __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\ntypeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\n\nclass ResultAsync {\r\n constructor(res) {\r\n this._promise = res;\r\n }\r\n static fromSafePromise(promise) {\r\n const newPromise = promise.then((value) => new Ok(value));\r\n return new ResultAsync(newPromise);\r\n }\r\n static fromPromise(promise, errorFn) {\r\n const newPromise = promise\r\n .then((value) => new Ok(value))\r\n .catch((e) => new Err(errorFn(e)));\r\n return new ResultAsync(newPromise);\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n static fromThrowable(fn, errorFn) {\r\n return (...args) => {\r\n return new ResultAsync((() => __awaiter(this, void 0, void 0, function* () {\r\n try {\r\n return new Ok(yield fn(...args));\r\n }\r\n catch (error) {\r\n return new Err(errorFn ? errorFn(error) : error);\r\n }\r\n }))());\r\n };\r\n }\r\n static combine(asyncResultList) {\r\n return combineResultAsyncList(asyncResultList);\r\n }\r\n static combineWithAllErrors(asyncResultList) {\r\n return combineResultAsyncListWithAllErrors(asyncResultList);\r\n }\r\n map(f) {\r\n return new ResultAsync(this._promise.then((res) => __awaiter(this, void 0, void 0, function* () {\r\n if (res.isErr()) {\r\n return new Err(res.error);\r\n }\r\n return new Ok(yield f(res.value));\r\n })));\r\n }\r\n andThrough(f) {\r\n return new ResultAsync(this._promise.then((res) => __awaiter(this, void 0, void 0, function* () {\r\n if (res.isErr()) {\r\n return new Err(res.error);\r\n }\r\n const newRes = yield f(res.value);\r\n if (newRes.isErr()) {\r\n return new Err(newRes.error);\r\n }\r\n return new Ok(res.value);\r\n })));\r\n }\r\n andTee(f) {\r\n return new ResultAsync(this._promise.then((res) => __awaiter(this, void 0, void 0, function* () {\r\n if (res.isErr()) {\r\n return new Err(res.error);\r\n }\r\n try {\r\n yield f(res.value);\r\n }\r\n catch (e) {\r\n // Tee does not care about the error\r\n }\r\n return new Ok(res.value);\r\n })));\r\n }\r\n orTee(f) {\r\n return new ResultAsync(this._promise.then((res) => __awaiter(this, void 0, void 0, function* () {\r\n if (res.isOk()) {\r\n return new Ok(res.value);\r\n }\r\n try {\r\n yield f(res.error);\r\n }\r\n catch (e) {\r\n // Tee does not care about the error\r\n }\r\n return new Err(res.error);\r\n })));\r\n }\r\n mapErr(f) {\r\n return new ResultAsync(this._promise.then((res) => __awaiter(this, void 0, void 0, function* () {\r\n if (res.isOk()) {\r\n return new Ok(res.value);\r\n }\r\n return new Err(yield f(res.error));\r\n })));\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types\r\n andThen(f) {\r\n return new ResultAsync(this._promise.then((res) => {\r\n if (res.isErr()) {\r\n return new Err(res.error);\r\n }\r\n const newValue = f(res.value);\r\n return newValue instanceof ResultAsync ? newValue._promise : newValue;\r\n }));\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types\r\n orElse(f) {\r\n return new ResultAsync(this._promise.then((res) => __awaiter(this, void 0, void 0, function* () {\r\n if (res.isErr()) {\r\n return f(res.error);\r\n }\r\n return new Ok(res.value);\r\n })));\r\n }\r\n match(ok, _err) {\r\n return this._promise.then((res) => res.match(ok, _err));\r\n }\r\n unwrapOr(t) {\r\n return this._promise.then((res) => res.unwrapOr(t));\r\n }\r\n /**\r\n * @deprecated will be removed in 9.0.0.\r\n *\r\n * You can use `safeTry` without this method.\r\n * @example\r\n * ```typescript\r\n * safeTry(async function* () {\r\n * const okValue = yield* yourResult\r\n * })\r\n * ```\r\n * Emulates Rust's `?` operator in `safeTry`'s body. See also `safeTry`.\r\n */\r\n safeUnwrap() {\r\n return __asyncGenerator(this, arguments, function* safeUnwrap_1() {\r\n return yield __await(yield __await(yield* __asyncDelegator(__asyncValues(yield __await(this._promise.then((res) => res.safeUnwrap()))))));\r\n });\r\n }\r\n // Makes ResultAsync implement PromiseLike<Result>\r\n then(successCallback, failureCallback) {\r\n return this._promise.then(successCallback, failureCallback);\r\n }\r\n [Symbol.asyncIterator]() {\r\n return __asyncGenerator(this, arguments, function* _a() {\r\n const result = yield __await(this._promise);\r\n if (result.isErr()) {\r\n // @ts-expect-error -- This is structurally equivalent and safe\r\n yield yield __await(errAsync(result.error));\r\n }\r\n // @ts-expect-error -- This is structurally equivalent and safe\r\n return yield __await(result.value);\r\n });\r\n }\r\n}\r\nfunction okAsync(value) {\r\n return new ResultAsync(Promise.resolve(new Ok(value)));\r\n}\r\nfunction errAsync(err) {\r\n return new ResultAsync(Promise.resolve(new Err(err)));\r\n}\r\nconst fromPromise = ResultAsync.fromPromise;\r\nconst fromSafePromise = ResultAsync.fromSafePromise;\r\nconst fromAsyncThrowable = ResultAsync.fromThrowable;\n\n/**\r\n * Short circuits on the FIRST Err value that we find\r\n */\r\nconst combineResultList = (resultList) => {\r\n let acc = ok([]);\r\n for (const result of resultList) {\r\n if (result.isErr()) {\r\n acc = err(result.error);\r\n break;\r\n }\r\n else {\r\n acc.map((list) => list.push(result.value));\r\n }\r\n }\r\n return acc;\r\n};\r\n/* This is the typesafe version of Promise.all\r\n *\r\n * Takes a list of ResultAsync<T, E> and success if all inner results are Ok values\r\n * or fails if one (or more) of the inner results are Err values\r\n */\r\nconst combineResultAsyncList = (asyncResultList) => ResultAsync.fromSafePromise(Promise.all(asyncResultList)).andThen(combineResultList);\r\n/**\r\n * Give a list of all the errors we find\r\n */\r\nconst combineResultListWithAllErrors = (resultList) => {\r\n let acc = ok([]);\r\n for (const result of resultList) {\r\n if (result.isErr() && acc.isErr()) {\r\n acc.error.push(result.error);\r\n }\r\n else if (result.isErr() && acc.isOk()) {\r\n acc = err([result.error]);\r\n }\r\n else if (result.isOk() && acc.isOk()) {\r\n acc.value.push(result.value);\r\n }\r\n // do nothing when result.isOk() && acc.isErr()\r\n }\r\n return acc;\r\n};\r\nconst combineResultAsyncListWithAllErrors = (asyncResultList) => ResultAsync.fromSafePromise(Promise.all(asyncResultList)).andThen(combineResultListWithAllErrors);\n\n// eslint-disable-next-line @typescript-eslint/no-namespace\r\nvar Result;\r\n(function (Result) {\r\n /**\r\n * Wraps a function with a try catch, creating a new function with the same\r\n * arguments but returning `Ok` if successful, `Err` if the function throws\r\n *\r\n * @param fn function to wrap with ok on success or err on failure\r\n * @param errorFn when an error is thrown, this will wrap the error result if provided\r\n */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n function fromThrowable(fn, errorFn) {\r\n return (...args) => {\r\n try {\r\n const result = fn(...args);\r\n return ok(result);\r\n }\r\n catch (e) {\r\n return err(errorFn ? errorFn(e) : e);\r\n }\r\n };\r\n }\r\n Result.fromThrowable = fromThrowable;\r\n function combine(resultList) {\r\n return combineResultList(resultList);\r\n }\r\n Result.combine = combine;\r\n function combineWithAllErrors(resultList) {\r\n return combineResultListWithAllErrors(resultList);\r\n }\r\n Result.combineWithAllErrors = combineWithAllErrors;\r\n})(Result || (Result = {}));\r\nfunction ok(value) {\r\n return new Ok(value);\r\n}\r\nfunction err(err) {\r\n return new Err(err);\r\n}\r\nfunction safeTry(body) {\r\n const n = body().next();\r\n if (n instanceof Promise) {\r\n return new ResultAsync(n.then((r) => r.value));\r\n }\r\n return n.value;\r\n}\r\nclass Ok {\r\n constructor(value) {\r\n this.value = value;\r\n }\r\n isOk() {\r\n return true;\r\n }\r\n isErr() {\r\n return !this.isOk();\r\n }\r\n map(f) {\r\n return ok(f(this.value));\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\r\n mapErr(_f) {\r\n return ok(this.value);\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types\r\n andThen(f) {\r\n return f(this.value);\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types\r\n andThrough(f) {\r\n return f(this.value).map((_value) => this.value);\r\n }\r\n andTee(f) {\r\n try {\r\n f(this.value);\r\n }\r\n catch (e) {\r\n // Tee doesn't care about the error\r\n }\r\n return ok(this.value);\r\n }\r\n orTee(_f) {\r\n return ok(this.value);\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types\r\n orElse(_f) {\r\n return ok(this.value);\r\n }\r\n asyncAndThen(f) {\r\n return f(this.value);\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types\r\n asyncAndThrough(f) {\r\n return f(this.value).map(() => this.value);\r\n }\r\n asyncMap(f) {\r\n return ResultAsync.fromSafePromise(f(this.value));\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\r\n unwrapOr(_v) {\r\n return this.value;\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\r\n match(ok, _err) {\r\n return ok(this.value);\r\n }\r\n safeUnwrap() {\r\n const value = this.value;\r\n /* eslint-disable-next-line require-yield */\r\n return (function* () {\r\n return value;\r\n })();\r\n }\r\n _unsafeUnwrap(_) {\r\n return this.value;\r\n }\r\n _unsafeUnwrapErr(config) {\r\n throw createNeverThrowError('Called `_unsafeUnwrapErr` on an Ok', this, config);\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-this-alias, require-yield\r\n *[Symbol.iterator]() {\r\n return this.value;\r\n }\r\n}\r\nclass Err {\r\n constructor(error) {\r\n this.error = error;\r\n }\r\n isOk() {\r\n return false;\r\n }\r\n isErr() {\r\n return !this.isOk();\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\r\n map(_f) {\r\n return err(this.error);\r\n }\r\n mapErr(f) {\r\n return err(f(this.error));\r\n }\r\n andThrough(_f) {\r\n return err(this.error);\r\n }\r\n andTee(_f) {\r\n return err(this.error);\r\n }\r\n orTee(f) {\r\n try {\r\n f(this.error);\r\n }\r\n catch (e) {\r\n // Tee doesn't care about the error\r\n }\r\n return err(this.error);\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types\r\n andThen(_f) {\r\n return err(this.error);\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types\r\n orElse(f) {\r\n return f(this.error);\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\r\n asyncAndThen(_f) {\r\n return errAsync(this.error);\r\n }\r\n asyncAndThrough(_f) {\r\n return errAsync(this.error);\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\r\n asyncMap(_f) {\r\n return errAsync(this.error);\r\n }\r\n unwrapOr(v) {\r\n return v;\r\n }\r\n match(_ok, err) {\r\n return err(this.error);\r\n }\r\n safeUnwrap() {\r\n const error = this.error;\r\n return (function* () {\r\n yield err(error);\r\n throw new Error('Do not use this generator out of `safeTry`');\r\n })();\r\n }\r\n _unsafeUnwrap(config) {\r\n throw createNeverThrowError('Called `_unsafeUnwrap` on an Err', this, config);\r\n }\r\n _unsafeUnwrapErr(_) {\r\n return this.error;\r\n }\r\n *[Symbol.iterator]() {\r\n // eslint-disable-next-line @typescript-eslint/no-this-alias\r\n const self = this;\r\n // @ts-expect-error -- This is structurally equivalent and safe\r\n yield self;\r\n // @ts-expect-error -- This is structurally equivalent and safe\r\n return self;\r\n }\r\n}\r\nconst fromThrowable = Result.fromThrowable;\r\n//#endregion\n\nexport { Err, Ok, Result, ResultAsync, err, errAsync, fromAsyncThrowable, fromPromise, fromSafePromise, fromThrowable, ok, okAsync, safeTry };\n","/*\r\n * big.js v7.0.1\r\n * A small, fast, easy-to-use library for arbitrary-precision decimal arithmetic.\r\n * Copyright (c) 2025 Michael Mclaughlin\r\n * https://github.com/MikeMcl/big.js/LICENCE.md\r\n */\r\n\r\n\r\n/************************************** EDITABLE DEFAULTS *****************************************/\r\n\r\n\r\n // The default values below must be integers within the stated ranges.\r\n\r\n /*\r\n * The maximum number of decimal places (DP) of the results of operations involving division:\r\n * div and sqrt, and pow with negative exponents.\r\n */\r\nvar DP = 20, // 0 to MAX_DP\r\n\r\n /*\r\n * The rounding mode (RM) used when rounding to the above decimal places.\r\n *\r\n * 0 Towards zero (i.e. truncate, no rounding). (ROUND_DOWN)\r\n * 1 To nearest neighbour. If equidistant, round up. (ROUND_HALF_UP)\r\n * 2 To nearest neighbour. If equidistant, to even. (ROUND_HALF_EVEN)\r\n * 3 Away from zero. (ROUND_UP)\r\n */\r\n RM = 1, // 0, 1, 2 or 3\r\n\r\n // The maximum value of DP and Big.DP.\r\n MAX_DP = 1E6, // 0 to 1000000\r\n\r\n // The maximum magnitude of the exponent argument to the pow method.\r\n MAX_POWER = 1E6, // 1 to 1000000\r\n\r\n /*\r\n * The negative exponent (NE) at and beneath which toString returns exponential notation.\r\n * (JavaScript numbers: -7)\r\n * -1000000 is the minimum recommended exponent value of a Big.\r\n */\r\n NE = -7, // 0 to -1000000\r\n\r\n /*\r\n * The positive exponent (PE) at and above which toString returns exponential notation.\r\n * (JavaScript numbers: 21)\r\n * 1000000 is the maximum recommended exponent value of a Big, but this limit is not enforced.\r\n */\r\n PE = 21, // 0 to 1000000\r\n\r\n /*\r\n * When true, an error will be thrown if a primitive number is passed to the Big constructor,\r\n * or if valueOf is called, or if toNumber is called on a Big which cannot be converted to a\r\n * primitive number without a loss of precision.\r\n */\r\n STRICT = false, // true or false\r\n\r\n\r\n/**************************************************************************************************/\r\n\r\n\r\n // Error messages.\r\n NAME = '[big.js] ',\r\n INVALID = NAME + 'Invalid ',\r\n INVALID_DP = INVALID + 'decimal places',\r\n INVALID_RM = INVALID + 'rounding mode',\r\n DIV_BY_ZERO = NAME + 'Division by zero',\r\n\r\n // The shared prototype object.\r\n P = {},\r\n UNDEFINED = void 0,\r\n NUMERIC = /^-?(\\d+(\\.\\d*)?|\\.\\d+)(e[+-]?\\d+)?$/i;\r\n\r\n\r\n/*\r\n * Create and return a Big constructor.\r\n */\r\nfunction _Big_() {\r\n\r\n /*\r\n * The Big constructor and exported function.\r\n * Create and return a new instance of a Big number object.\r\n *\r\n * n {number|string|Big} A numeric value.\r\n */\r\n function Big(n) {\r\n var x = this;\r\n\r\n // Enable constructor usage without new.\r\n if (!(x instanceof Big)) {\r\n return n === UNDEFINED && arguments.length === 0 ? _Big_() : new Big(n);\r\n }\r\n\r\n\r\n // Duplicate.\r\n if (n instanceof Big) {\r\n x.s = n.s;\r\n x.e = n.e;\r\n x.c = n.c.slice();\r\n } else {\r\n if (typeof n !== 'string') {\r\n if (Big.strict === true && typeof n !== 'bigint') {\r\n throw TypeError(INVALID + 'value');\r\n }\r\n\r\n // Minus zero?\r\n n = n === 0 && 1 / n < 0 ? '-0' : String(n);\r\n }\r\n\r\n parse(x, n);\r\n }\r\n\r\n // Retain a reference to this Big constructor.\r\n // Shadow Big.prototype.constructor which points to Object.\r\n x.constructor = Big;\r\n }\r\n\r\n Big.prototype = P;\r\n Big.DP = DP;\r\n Big.RM = RM;\r\n Big.NE = NE;\r\n Big.PE = PE;\r\n Big.strict = STRICT;\r\n Big.roundDown = 0;\r\n Big.roundHalfUp = 1;\r\n Big.roundHalfEven = 2;\r\n Big.roundUp = 3;\r\n\r\n return Big;\r\n}\r\n\r\n\r\n/*\r\n * Parse the number or string value passed to a Big constructor.\r\n *\r\n * x {Big} A Big number instance.\r\n * n {number|string} A numeric value.\r\n */\r\nfunction parse(x, n) {\r\n var e, i, nl;\r\n\r\n if (!NUMERIC.test(n)) {\r\n throw Error(INVALID + 'number');\r\n }\r\n\r\n // Determine sign.\r\n x.s = n.charAt(0) == '-' ? (n = n.slice(1), -1) : 1;\r\n\r\n // Decimal point?\r\n if ((e = n.indexOf('.')) > -1) n = n.replace('.', '');\r\n\r\n // Exponential form?\r\n if ((i = n.search(/e/i)) > 0) {\r\n\r\n // Determine exponent.\r\n if (e < 0) e = i;\r\n e += +n.slice(i + 1);\r\n n = n.substring(0, i);\r\n } else if (e < 0) {\r\n\r\n // Integer.\r\n e = n.length;\r\n }\r\n\r\n nl = n.length;\r\n\r\n // Determine leading zeros.\r\n for (i = 0; i < nl && n.charAt(i) == '0';) ++i;\r\n\r\n if (i == nl) {\r\n\r\n // Zero.\r\n x.c = [x.e = 0];\r\n } else {\r\n\r\n // Determine trailing zeros.\r\n for (; nl > 0 && n.charAt(--nl) == '0';);\r\n x.e = e - i - 1;\r\n x.c = [];\r\n\r\n // Convert string to array of digits without leading/trailing zeros.\r\n for (e = 0; i <= nl;) x.c[e++] = +n.charAt(i++);\r\n }\r\n\r\n return x;\r\n}\r\n\r\n\r\n/*\r\n * Round Big x to a maximum of sd significant digits using rounding mode rm.\r\n *\r\n * x {Big} The Big to round.\r\n * sd {number} Significant digits: integer, 0 to MAX_DP inclusive.\r\n * rm {number} Rounding mode: 0 (down), 1 (half-up), 2 (half-even) or 3 (up).\r\n * [more] {boolean} Whether the result of division was truncated.\r\n */\r\nfunction round(x, sd, rm, more) {\r\n var xc = x.c;\r\n\r\n if (rm === UNDEFINED) rm = x.constructor.RM;\r\n if (rm !== 0 && rm !== 1 && rm !== 2 && rm !== 3) {\r\n throw Error(INVALID_RM);\r\n }\r\n\r\n if (sd < 1) {\r\n more =\r\n rm === 3 && (more || !!xc[0]) || sd === 0 && (\r\n rm === 1 && xc[0] >= 5 ||\r\n rm === 2 && (xc[0] > 5 || xc[0] === 5 && (more || xc[1] !== UNDEFINED))\r\n );\r\n\r\n xc.length = 1;\r\n\r\n if (more) {\r\n\r\n // 1, 0.1, 0.01, 0.001, 0.0001 etc.\r\n x.e = x.e - sd + 1;\r\n xc[0] = 1;\r\n } else {\r\n\r\n // Zero.\r\n xc[0] = x.e = 0;\r\n }\r\n } else if (sd < xc.length) {\r\n\r\n // xc[sd] is the digit after the digit that may be rounded up.\r\n more =\r\n rm === 1 && xc[sd] >= 5 ||\r\n rm === 2 && (xc[sd] > 5 || xc[sd] === 5 &&\r\n (more || xc[sd + 1] !== UNDEFINED || xc[sd - 1] & 1)) ||\r\n rm === 3 && (more || !!xc[0]);\r\n\r\n // Remove any digits after the required precision.\r\n xc.length = sd;\r\n\r\n // Round up?\r\n if (more) {\r\n\r\n // Rounding up may mean the previous digit has to be rounded up.\r\n for (; ++xc[--sd] > 9;) {\r\n xc[sd] = 0;\r\n if (sd === 0) {\r\n ++x.e;\r\n xc.unshift(1);\r\n break;\r\n }\r\n }\r\n }\r\n\r\n // Remove trailing zeros.\r\n for (sd = xc.length; !xc[--sd];) xc.pop();\r\n }\r\n\r\n return x;\r\n}\r\n\r\n\r\n/*\r\n * Return a string representing the value of Big x in normal or exponential notation.\r\n * Handles P.toExponential, P.toFixed, P.toJSON, P.toPrecision, P.toString and P.valueOf.\r\n */\r\nfunction stringify(x, doExponential, isNonzero) {\r\n var e = x.e,\r\n s = x.c.join(''),\r\n n = s.length;\r\n\r\n // Exponential notation?\r\n if (doExponential) {\r\n s = s.charAt(0) + (n > 1 ? '.' + s.slice(1) : '') + (e < 0 ? 'e' : 'e+') + e;\r\n\r\n // Normal notation.\r\n } else if (e < 0) {\r\n for (; ++e;) s = '0' + s;\r\n s = '0.' + s;\r\n } else if (e > 0) {\r\n if (++e > n) {\r\n for (e -= n; e--;) s += '0';\r\n } else if (e < n) {\r\n s = s.slice(0, e) + '.' + s.slice(e);\r\n }\r\n } else if (n > 1) {\r\n s = s.charAt(0) + '.' + s.slice(1);\r\n }\r\n\r\n return x.s < 0 && isNonzero ? '-' + s : s;\r\n}\r\n\r\n\r\n// Prototype/instance methods\r\n\r\n\r\n/*\r\n * Return a new Big whose value is the absolute value of this Big.\r\n */\r\nP.abs = function () {\r\n var x = new this.constructor(this);\r\n x.s = 1;\r\n return x;\r\n};\r\n\r\n\r\n/*\r\n * Return 1 if the value of this Big is greater than the value of Big y,\r\n * -1 if the value of this Big is less than the value of Big y, or\r\n * 0 if they have the same value.\r\n */\r\nP.cmp = function (y) {\r\n var isneg,\r\n x = this,\r\n xc = x.c,\r\n yc = (y = new x.constructor(y)).c,\r\n i = x.s,\r\n j = y.s,\r\n k = x.e,\r\n l = y.e;\r\n\r\n // Either zero?\r\n if (!xc[0] || !yc[0]) return !xc[0] ? !yc[0] ? 0 : -j : i;\r\n\r\n // Signs differ?\r\n if (i != j) return i;\r\n\r\n isneg = i < 0;\r\n\r\n // Compare exponents.\r\n if (k != l) return k > l ^ isneg ? 1 : -1;\r\n\r\n j = (k = xc.length) < (l = yc.length) ? k : l;\r\n\r\n // Compare digit by digit.\r\n for (i = -1; ++i < j;) {\r\n if (xc[i] != yc[i]) return xc[i] > yc[i] ^ isneg ? 1 : -1;\r\n }\r\n\r\n // Compare lengths.\r\n return k == l ? 0 : k > l ^ isneg ? 1 : -1;\r\n};\r\n\r\n\r\n/*\r\n * Return a new Big whose value is the value of this Big divided by the value of Big y, rounded,\r\n * if necessary, to a maximum of Big.DP decimal places using rounding mode Big.RM.\r\n */\r\nP.div = function (y) {\r\n var x = this,\r\n Big = x.constructor,\r\n a = x.c, // dividend\r\n b = (y = new Big(y)).c, // divisor\r\n k = x.s == y.s ? 1 : -1,\r\n dp = Big.DP;\r\n\r\n if (dp !== ~~dp || dp < 0 || dp > MAX_DP) {\r\n throw Error(INVALID_DP);\r\n }\r\n\r\n // Divisor is zero?\r\n if (!b[0]) {\r\n throw Error(DIV_BY_ZERO);\r\n }\r\n\r\n // Dividend is 0? Return +-0.\r\n if (!a[0]) {\r\n y.s = k;\r\n y.c = [y.e = 0];\r\n return y;\r\n }\r\n\r\n var bl, bt, n, cmp, ri,\r\n bz = b.slice(),\r\n ai = bl = b.length,\r\n al = a.length,\r\n r = a.slice(0, bl), // remainder\r\n rl = r.length,\r\n q = y, // quotient\r\n qc = q.c = [],\r\n qi = 0,\r\n p = dp + (q.e = x.e - y.e) + 1; // precision of the result\r\n\r\n q.s = k;\r\n k = p < 0 ? 0 : p;\r\n\r\n // Create version of divisor with leading zero.\r\n bz.unshift(0);\r\n\r\n // Add zeros to make remainder as long as divisor.\r\n for (; rl++ < bl;) r.push(0);\r\n\r\n do {\r\n\r\n // n is how many times the divisor goes into current remainder.\r\n for (n = 0; n < 10; n++) {\r\n\r\n // Compare divisor and remainder.\r\n if (bl != (rl = r.length)) {\r\n cmp = bl > rl ? 1 : -1;\r\n } else {\r\n for (ri = -1, cmp = 0; ++ri < bl;) {\r\n if (b[ri] != r[ri]) {\r\n cmp = b[ri] > r[ri] ? 1 : -1;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n // If divisor < remainder, subtract divisor from remainder.\r\n if (cmp < 0) {\r\n\r\n // Remainder can't be more than 1 digit longer than divisor.\r\n // Equalise lengths using divisor with extra leading zero?\r\n for (bt = rl == bl ? b : bz; rl;) {\r\n if (r[--rl] < bt[rl]) {\r\n ri = rl;\r\n for (; ri && !r[--ri];) r[ri] = 9;\r\n --r[ri];\r\n r[rl] += 10;\r\n }\r\n r[rl] -= bt[rl];\r\n }\r\n\r\n for (; !r[0];) r.shift();\r\n } else {\r\n break;\r\n }\r\n }\r\n\r\n // Add the digit n to the result array.\r\n qc[qi++] = cmp ? n : ++n;\r\n\r\n // Update the remainder.\r\n if (r[0] && cmp) r[rl] = a[ai] || 0;\r\n else r = [a[ai]];\r\n\r\n } while ((ai++ < al || r[0] !== UNDEFINED) && k--);\r\n\r\n // Leading zero? Do not remove if result is simply zero (qi == 1).\r\n if (!qc[0] && qi != 1) {\r\n\r\n // There can't be more than one zero.\r\n qc.shift();\r\n q.e--;\r\n p--;\r\n }\r\n\r\n // Round?\r\n if (qi > p) round(q, p, Big.RM, r[0] !== UNDEFINED);\r\n\r\n return q;\r\n};\r\n\r\n\r\n/*\r\n * Return true if the value of this Big is equal to the value of Big y, otherwise return false.\r\n */\r\nP.eq = function (y) {\r\n return this.cmp(y) === 0;\r\n};\r\n\r\n\r\n/*\r\n * Return true if the value of this Big is greater than the value of Big y, otherwise return\r\n * false.\r\n */\r\nP.gt = function (y) {\r\n return this.cmp(y) > 0;\r\n};\r\n\r\n\r\n/*\r\n * Return true if the value of this Big is greater than or equal to the value of Big y, otherwise\r\n * return false.\r\n */\r\nP.gte = function (y) {\r\n return this.cmp(y) > -1;\r\n};\r\n\r\n\r\n/*\r\n * Return true if the value of this Big is less than the value of Big y, otherwise return false.\r\n */\r\nP.lt = function (y) {\r\n return this.cmp(y) < 0;\r\n};\r\n\r\n\r\n/*\r\n * Return true if the value of this Big is less than or equal to the value of Big y, otherwise\r\n * return false.\r\n */\r\nP.lte = function (y) {\r\n return this.cmp(y) < 1;\r\n};\r\n\r\n\r\n/*\r\n * Return a new Big whose value is the value of this Big minus the value of Big y.\r\n */\r\nP.minus = P.sub = function (y) {\r\n var i, j, t, xlty,\r\n x = this,\r\n Big = x.constructor,\r\n a = x.s,\r\n b = (y = new Big(y)).s;\r\n\r\n // Signs differ?\r\n if (a != b) {\r\n y.s = -b;\r\n return x.plus(y);\r\n }\r\n\r\n var xc = x.c.slice(),\r\n xe = x.e,\r\n yc = y.c,\r\n ye = y.e;\r\n\r\n // Either zero?\r\n if (!xc[0] || !yc[0]) {\r\n if (yc[0]) {\r\n y.s = -b;\r\n } else if (xc[0]) {\r\n y = new Big(x);\r\n } else {\r\n y.s = 1;\r\n }\r\n return y;\r\n }\r\n\r\n // Determine which is the bigger number. Prepend zeros to equalise exponents.\r\n if (a = xe - ye) {\r\n\r\n if (xlty = a < 0) {\r\n a = -a;\r\n t = xc;\r\n } else {\r\n ye = xe;\r\n t = yc;\r\n }\r\n\r\n t.reverse();\r\n for (b = a; b--;) t.push(0);\r\n t.reverse();\r\n } else {\r\n\r\n // Exponents equal. Check digit by digit.\r\n j = ((xlty = xc.length < yc.length) ? xc : yc).length;\r\n\r\n for (a = b = 0; b < j; b++) {\r\n if (xc[b] != yc[b]) {\r\n xlty = xc[b] < yc[b];\r\n break;\r\n }\r\n }\r\n }\r\n\r\n // x < y? Point xc to the array of the bigger number.\r\n if (xlty) {\r\n t = xc;\r\n xc = yc;\r\n yc = t;\r\n y.s = -y.s;\r\n }\r\n\r\n /*\r\n * Append zeros to xc if shorter. No need to add zeros to yc if shorter as subtraction only\r\n * needs to start at yc.length.\r\n */\r\n if ((b = (j = yc.length) - (i = xc.length)) > 0) for (; b--;) xc[i++] = 0;\r\n\r\n // Subtract yc from xc.\r\n for (b = i; j > a;) {\r\n if (xc[--j] < yc[j]) {\r\n for (i = j; i && !xc[--i];) xc[i] = 9;\r\n --xc[i];\r\n xc[j] += 10;\r\n }\r\n\r\n xc[j] -= yc[j];\r\n }\r\n\r\n // Remove trailing zeros.\r\n for (; xc[--b] === 0;) xc.pop();\r\n\r\n // Remove leading zeros and adjust exponent accordingly.\r\n for (; xc[0] === 0;) {\r\n xc.shift();\r\n --ye;\r\n }\r\n\r\n if (!xc[0]) {\r\n\r\n // n - n = +0\r\n y.s = 1;\r\n\r\n // Result must be zero.\r\n xc = [ye = 0];\r\n }\r\n\r\n y.c = xc;\r\n y.e = ye;\r\n\r\n return y;\r\n};\r\n\r\n\r\n/*\r\n * Return a new Big whose value is the value of this Big modulo the value of Big y.\r\n */\r\nP.mod = function (y) {\r\n var ygtx,\r\n x = this,\r\n Big = x.constructor,\r\n a = x.s,\r\n b = (y = new Big(y)).s;\r\n\r\n if (!y.c[0]) {\r\n throw Error(DIV_BY_ZERO);\r\n }\r\n\r\n x.s = y.s = 1;\r\n ygtx = y.cmp(x) == 1;\r\n x.s = a;\r\n y.s = b;\r\n\r\n if (ygtx) return new Big(x);\r\n\r\n a = Big.DP;\r\n b = Big.RM;\r\n Big.DP = Big.RM = 0;\r\n x = x.div(y);\r\n Big.DP = a;\r\n Big.RM = b;\r\n\r\n return this.minus(x.times(y));\r\n};\r\n\r\n\r\n/*\r\n * Return a new Big whose value is the value of this Big negated.\r\n */\r\nP.neg = function () {\r\n var x = new this.constructor(this);\r\n x.s = -x.s;\r\n return x;\r\n};\r\n\r\n\r\n/*\r\n * Return a new Big whose value is the value of this Big plus the value of Big y.\r\n */\r\nP.plus = P.add = function (y) {\r\n var e, k, t,\r\n x = this,\r\n Big = x.constructor;\r\n\r\n y = new Big(y);\r\n\r\n // Signs differ?\r\n if (x.s != y.s) {\r\n y.s = -y.s;\r\n return x.minus(y);\r\n }\r\n\r\n var xe = x.e,\r\n xc = x.c,\r\n ye = y.e,\r\n yc = y.c;\r\n\r\n // Either zero?\r\n if (!xc[0] || !yc[0]) {\r\n if (!yc[0]) {\r\n if (xc[0]) {\r\n y = new Big(x);\r\n } else {\r\n y.s = x.s;\r\n }\r\n }\r\n return y;\r\n }\r\n\r\n xc = xc.slice();\r\n\r\n // Prepend zeros to equalise exponents.\r\n // Note: reverse faster than unshifts.\r\n if (e = xe - ye) {\r\n if (e > 0) {\r\n ye = xe;\r\n t = yc;\r\n } else {\r\n e = -e;\r\n t = xc;\r\n }\r\n\r\n t.reverse();\r\n for (; e--;) t.push(0);\r\n t.reverse();\r\n }\r\n\r\n // Point xc to the longer array.\r\n if (xc.length - yc.length < 0) {\r\n t = yc;\r\n yc = xc;\r\n xc = t;\r\n }\r\n\r\n e = yc.length;\r\n\r\n // Only start adding at yc.length - 1 as the further digits of xc can be left as they are.\r\n for (k = 0; e; xc[e] %= 10) k = (xc[--e] = xc[e] + yc[e] + k) / 10 | 0;\r\n\r\n // No need to check for zero, as +x + +y != 0 && -x + -y != 0\r\n\r\n if (k) {\r\n xc.unshift(k);\r\n ++ye;\r\n }\r\n\r\n // Remove trailing zeros.\r\n for (e = xc.length; xc[--e] === 0;) xc.pop();\r\n\r\n y.c = xc;\r\n y.e = ye;\r\n\r\n return y;\r\n};\r\n\r\n\r\n/*\r\n * Return a Big whose value is the value of this Big raised to the power n.\r\n * If n is negative, round to a maximum of Big.DP decimal places using rounding\r\n * mode Big.RM.\r\n *\r\n * n {number} Integer, -MAX_POWER to MAX_POWER inclusive.\r\n */\r\nP.pow = function (n) {\r\n var x = this,\r\n one = new x.constructor('1'),\r\n y = one,\r\n isneg = n < 0;\r\n\r\n if (n !== ~~n || n < -MAX_POWER || n > MAX_POWER) {\r\n throw Error(INVALID + 'exponent');\r\n }\r\n\r\n if (isneg) n = -n;\r\n\r\n for (;;) {\r\n if (n & 1) y = y.times(x);\r\n n >>= 1;\r\n if (!n) break;\r\n x = x.times(x);\r\n }\r\n\r\n return isneg ? one.div(y) : y;\r\n};\r\n\r\n\r\n/*\r\n * Return a new Big whose value is the value of this Big rounded to a maximum precision of sd\r\n * significant digits using rounding mode rm, or Big.RM if rm is not specified.\r\n *\r\n * sd {number} Significant digits: integer, 1 to MAX_DP inclusive.\r\n * rm? {number} Rounding mode: 0 (down), 1 (half-up), 2 (half-even) or 3 (up).\r\n */\r\nP.prec = function (sd, rm) {\r\n if (sd !== ~~sd || sd < 1 || sd > MAX_DP) {\r\n throw Error(INVALID + 'precision');\r\n }\r\n return round(new this.constructor(this), sd, rm);\r\n};\r\n\r\n\r\n/*\r\n * Return a new Big whose value is the value of this Big rounded to a maximum of dp decimal places\r\n * using rounding mode rm, or Big.RM if rm is not specified.\r\n * If dp is negative, round to an integer which is a multiple of 10**-dp.\r\n * If dp is not specified, round to 0 decimal places.\r\n *\r\n * dp? {number} Integer, -MAX_DP to MAX_DP inclusive.\r\n * rm? {number} Rounding mode: 0 (down), 1 (half-up), 2 (half-even) or 3 (up).\r\n */\r\nP.round = function (dp, rm) {\r\n if (dp === UNDEFINED) dp = 0;\r\n else if (dp !== ~~dp || dp < -MAX_DP || dp > MAX_DP) {\r\n throw Error(INVALID_DP);\r\n }\r\n return round(new this.constructor(this), dp + this.e + 1, rm);\r\n};\r\n\r\n\r\n/*\r\n * Return a new Big whose value is the square root of the value of this Big, rounded, if\r\n * necessary, to a maximum of Big.DP decimal places using rounding mode Big.RM.\r\n */\r\nP.sqrt = function () {\r\n var r, c, t,\r\n x = this,\r\n Big = x.constructor,\r\n s = x.s,\r\n e = x.e,\r\n half = new Big('0.5');\r\n\r\n // Zero?\r\n if (!x.c[0]) return new Big(x);\r\n\r\n // Negative?\r\n if (s < 0) {\r\n throw Error(NAME + 'No square root');\r\n }\r\n\r\n // Estimate.\r\n s = Math.sqrt(+stringify(x, true, true));\r\n\r\n // Math.sqrt underflow/overflow?\r\n // Re-estimate: pass x coefficient to Math.sqrt as integer, then adjust the result exponent.\r\n if (s === 0 || s === 1 / 0) {\r\n c = x.c.join('');\r\n if (!(c.length + e & 1)) c += '0';\r\n s = Math.sqrt(c);\r\n e = ((e + 1) / 2 | 0) - (e < 0 || e & 1);\r\n r = new Big((s == 1 / 0 ? '5e' : (s = s.toExponential()).slice(0, s.indexOf('e') + 1)) + e);\r\n } else {\r\n r = new Big(s + '');\r\n }\r\n\r\n e = r.e + (Big.DP += 4);\r\n\r\n // Newton-Raphson iteration.\r\n do {\r\n t = r;\r\n r = half.times(t.plus(x.div(t)));\r\n } while (t.c.slice(0, e).join('') !== r.c.slice(0, e).join(''));\r\n\r\n return round(r, (Big.DP -= 4) + r.e + 1, Big.RM);\r\n};\r\n\r\n\r\n/*\r\n * Return a new Big whose value is the value of this Big times the value of Big y.\r\n */\r\nP.times = P.mul = function (y) {\r\n var c,\r\n x = this,\r\n Big = x.constructor,\r\n xc = x.c,\r\n yc = (y = new Big(y)).c,\r\n a = xc.length,\r\n b = yc.length,\r\n i = x.e,\r\n j = y.e;\r\n\r\n // Determine sign of result.\r\n y.s = x.s == y.s ? 1 : -1;\r\n\r\n // Return signed 0 if either 0.\r\n if (!xc[0] || !yc[0]) {\r\n y.c = [y.e = 0];\r\n return y;\r\n }\r\n\r\n // Initialise exponent of result as x.e + y.e.\r\n y.e = i + j;\r\n\r\n // If array xc has fewer digits than yc, swap xc and yc, and lengths.\r\n if (a < b) {\r\n c = xc;\r\n xc = yc;\r\n yc = c;\r\n j = a;\r\n a = b;\r\n b = j;\r\n }\r\n\r\n // Initialise coefficient array of result with zeros.\r\n for (c = new Array(j = a + b); j--;) c[j] = 0;\r\n\r\n // Multiply.\r\n\r\n // i is initially xc.length.\r\n for (i = b; i--;) {\r\n b = 0;\r\n\r\n // a is yc.length.\r\n for (j = a + i; j > i;) {\r\n\r\n // Current sum of products at this digit position, plus carry.\r\n b = c[j] + yc[i] * xc[j - i - 1] + b;\r\n c[j--] = b % 10;\r\n\r\n // carry\r\n b = b / 10 | 0;\r\n }\r\n\r\n c[j] = b;\r\n }\r\n\r\n // Increment result exponent if there is a final carry, otherwise remove leading zero.\r\n if (b) ++y.e;\r\n else c.shift();\r\n\r\n // Remove trailing zeros.\r\n for (i = c.length; !c[--i];) c.pop();\r\n y.c = c;\r\n\r\n return y;\r\n};\r\n\r\n\r\n/*\r\n * Return a string representing the value of this Big in exponential notation rounded to dp fixed\r\n * decimal places using rounding mode rm, or Big.RM if rm is not specified.\r\n *\r\n * dp? {number} Decimal places: integer, 0 to MAX_DP inclusive.\r\n * rm? {number} Rounding mode: 0 (down), 1 (half-up), 2 (half-even) or 3 (up).\r\n */\r\nP.toExponential = function (dp, rm) {\r\n var x = this,\r\n n = x.c[0];\r\n\r\n if (dp !== UNDEFINED) {\r\n if (dp !== ~~dp || dp < 0 || dp > MAX_DP) {\r\n throw Error(INVALID_DP);\r\n }\r\n x = round(new x.constructor(x), ++dp, rm);\r\n for (; x.c.length < dp;) x.c.push(0);\r\n }\r\n\r\n return stringify(x, true, !!n);\r\n};\r\n\r\n\r\n/*\r\n * Return a string representing the value of this Big in normal notation rounded to dp fixed\r\n * decimal places using rounding mode rm, or Big.RM if rm is not specified.\r\n *\r\n * dp? {number} Decimal places: integer, 0 to MAX_DP inclusive.\r\n * rm? {number} Rounding mode: 0 (down), 1 (half-up), 2 (half-even) or 3 (up).\r\n *\r\n * (-0).toFixed(0) is '0', but (-0.1).toFixed(0) is '-0'.\r\n * (-0).toFixed(1) is '0.0', but (-0.01).toFixed(1) is '-0.0'.\r\n */\r\nP.toFixed = function (dp, rm) {\r\n var x = this,\r\n n = x.c[0];\r\n\r\n if (dp !== UNDEFINED) {\r\n if (dp !== ~~dp || dp < 0 || dp > MAX_DP) {\r\n throw Error(INVALID_DP);\r\n }\r\n x = round(new x.constructor(x), dp + x.e + 1, rm);\r\n\r\n // x.e may have changed if the value is rounded up.\r\n for (dp = dp + x.e + 1; x.c.length < dp;) x.c.push(0);\r\n }\r\n\r\n return stringify(x, false, !!n);\r\n};\r\n\r\n\r\n/*\r\n * Return a string representing the value of this Big.\r\n * Return exponential notation if this Big has a positive exponent equal to or greater than\r\n * Big.PE, or a negative exponent equal to or less than Big.NE.\r\n * Omit the sign for negative zero.\r\n */\r\nP.toJSON = P.toString = function () {\r\n var x = this,\r\n Big = x.constructor;\r\n return stringify(x, x.e <= Big.NE || x.e >= Big.PE, !!x.c[0]);\r\n};\r\n\r\nif (typeof Symbol !== \"undefined\") {\r\n P[Symbol.for('nodejs.util.inspect.custom')] = P.toJSON;\r\n}\r\n\r\n\r\n/*\r\n * Return the value of this Big as a primitive number.\r\n */\r\nP.toNumber = function () {\r\n var n = +stringify(this, true, true);\r\n if (this.constructor.strict === true && !this.eq(n.toString())) {\r\n throw Error(NAME + 'Imprecise conversion');\r\n }\r\n return n;\r\n};\r\n\r\n\r\n/*\r\n * Return a string representing the value of this Big rounded to sd significant digits using\r\n * rounding mode rm, or Big.RM if rm is not specified.\r\n * Use exponential notation if sd is less than the number of digits necessary to represent\r\n * the integer part of the value in normal notation.\r\n *\r\n * sd {number} Significant digits: integer, 1 to MAX_DP inclusive.\r\n * rm? {number} Rounding mode: 0 (down), 1 (half-up), 2 (half-even) or 3 (up).\r\n */\r\nP.toPrecision = function (sd, rm) {\r\n var x = this,\r\n Big = x.constructor,\r\n n = x.c[0];\r\n\r\n if (sd !== UNDEFINED) {\r\n if (sd !== ~~sd || sd < 1 || sd > MAX_DP) {\r\n throw Error(INVALID + 'precision');\r\n }\r\n x = round(new Big(x), sd, rm);\r\n for (; x.c.length < sd;) x.c.push(0);\r\n }\r\n\r\n return stringify(x, sd <= x.e || x.e <= Big.NE || x.e >= Big.PE, !!n);\r\n};\r\n\r\n\r\n/*\r\n * Return a string representing the value of this Big.\r\n * Return exponential notation if this Big has a positive exponent equal to or greater than\r\n * Big.PE, or a negative exponent equal to or less than Big.NE.\r\n * Include the sign for negative zero.\r\n */\r\nP.valueOf = function () {\r\n var x = this,\r\n Big = x.constructor;\r\n if (Big.strict === true) {\r\n throw Error(NAME + 'valueOf disallowed');\r\n }\r\n return stringify(x, x.e <= Big.NE || x.e >= Big.PE, true);\r\n};\r\n\r\n\r\n// Export\r\n\r\n\r\nexport var Big = _Big_();\r\n\r\n/// <reference types=\"https://raw.githubusercontent.com/DefinitelyTyped/DefinitelyTyped/master/types/big.js/index.d.ts\" />\r\nexport default Big;\r\n","/**\n * An error that occurs when a task violates a logical condition that is assumed to be true at all times.\n */\nexport class InvariantError extends Error {\n name = 'InvariantError' as const;\n}\n\n/**\n * Asserts that the given condition is truthy\n * @internal\n *\n * @param condition - Either truthy or falsy value\n * @param message - An error message\n */\nexport function invariant(\n condition: unknown,\n message: string,\n): asserts condition {\n if (!condition) {\n throw new InvariantError(message);\n }\n}\n","import type { NonEmptyTuple, UnknownRecord } from 'type-fest';\n\nexport type { NonEmptyTuple, UnknownRecord };\n\nexport function isObject(value: unknown): value is UnknownRecord {\n return typeof value === 'object' && value !== null && !Array.isArray(value);\n}\n\n/**\n * Checks if the given array is a non-empty array.\n */\nexport function isNonEmptyArray<T>(\n value: readonly T[],\n): value is NonEmptyTuple<T> {\n return value.length > 0;\n}\n\n/**\n * Checks if the given array is a one-entry array.\n */\nexport function isOneEntryArray<T>(value: readonly T[]): value is [T] {\n return value.length === 1;\n}\n","import type { Err, Ok, Result } from 'neverthrow';\nimport { InvariantError } from './invariant';\nimport { isObject } from './typeguards';\n\nexport function assertError(error: unknown): asserts error is Error {\n // why not `error instanceof Error`? see https://github.com/microsoft/TypeScript-DOM-lib-generator/issues/1099\n // biome-ignore lint/suspicious/noPrototypeBuiltins: safe\n if (!isObject(error) || !Error.prototype.isPrototypeOf(error)) {\n throw error;\n }\n}\n\n/**\n * Exhaustiveness checking for union and enum types\n * see https://www.typescriptlang.org/docs/handbook/2/narrowing.html#exhaustiveness-checking\n */\nexport function assertNever(\n x: never,\n message = `Unexpected object: ${String(x)}`,\n): never {\n throw new InvariantError(message);\n}\n\n/**\n * Asserts that the given `Result<T, E>` is an `Ok<T, never>` variant.\n */\nexport function assertOk<T, E extends Error>(\n result: Result<T, E>,\n): asserts result is Ok<T, E> {\n if (result.isErr()) {\n throw new InvariantError(\n `Expected result to be Ok: ${result.error.message}`,\n );\n }\n}\n\n/**\n * Asserts that the given `Result<T, E>` is an `Err<never, E>` variant.\n */\nexport function assertErr<T, E extends Error>(\n result: Result<T, E>,\n): asserts result is Err<T, E> {\n if (result.isOk()) {\n throw new InvariantError(`Expected result to be Err: ${result.value}`);\n }\n}\n\n/**\n * Asserts that the given value is not `null`.\n */\nexport function assertNotNull<T>(value: T): asserts value is Exclude<T, null> {\n if (value === null) {\n throw new InvariantError('Expected value to be not null');\n }\n}\n","/**\n * Unwraps the promise to allow resolving/rejecting outside the Promise constructor\n */\nexport class Deferred<T = void> {\n readonly promise: Promise<T>;\n resolve!: (value: T) => void;\n reject!: (reason?: unknown) => void;\n\n constructor() {\n this.promise = new Promise<T>((resolve, reject) => {\n this.resolve = resolve;\n this.reject = reject;\n });\n }\n}\n","/**\n * The identity function returns the input value unchanged.\n *\n * @typeParam T - The type of the input and output.\n * @param value - The value to return.\n * @returns The same value that was passed in.\n */\nexport function identity<T>(value: T): T {\n return value;\n}\n\n/**\n * Alias for the {@link identity} function.\n */\nexport const passthrough = identity;\n","import { InvariantError } from './invariant';\n\nexport function never(message = 'Unexpected call to never()'): never {\n throw new InvariantError(message);\n}\n","import { InvariantError } from './invariant';\n\n/**\n * Refinement function to check if a value is not null or undefined.\n */\nexport function nonNullable<T>(value: T): Exclude<T, null | undefined> {\n if (value === null || value === undefined) {\n throw new InvariantError('Value should not be null or undefined');\n }\n return value as Exclude<T, null | undefined>;\n}\n\n/**\n * Creates a refinement function to check if a value has a specific `__typename` in a union of types with `__typename`.\n */\nexport function expectTypename<\n T extends { __typename: string },\n Name extends T['__typename'],\n>(typename: Name) {\n return (value: T): Extract<T, { __typename: Name }> => {\n if (value.__typename !== typename) {\n throw new InvariantError(\n `Expected __typename to be \"${typename}\", but got \"${value.__typename}\"`,\n );\n }\n return value as Extract<T, { __typename: Name }>;\n };\n}\n","import type { Tagged } from 'type-fest';\nimport { invariant } from './helpers';\n\n/**\n * A string that represents a hex value with a `0x` prefix.\n */\nexport type HexString = `0x${string}`;\n\n/**\n * Validates whether a given value is a valid hex string with a `0x` prefix.\n */\nexport function isValidHexString(value: string): value is HexString {\n return /^0x[a-fA-F0-9]+$/.test(value);\n}\n\n/**\n * Creates a hex string from a given value.\n */\nexport function hexString<T extends string = HexString>(value: string): T {\n invariant(\n isValidHexString(value),\n `Expected a valid hex string, but got: ${value}`,\n );\n return value as T;\n}\n\n/**\n * An EVM address.\n */\nexport type EvmAddress = Tagged<HexString, 'EvmAddress'>;\n\n/**\n * Creates an EVM address from a given value.\n */\nexport function evmAddress(value: string) {\n invariant(value.length === 42, `EvmAddress: invalid length ${value.length}`);\n return hexString<EvmAddress>(value);\n}\n\n/**\n * RLP-encoded blockchain data.\n */\nexport type BlockchainData = Tagged<HexString, 'BlockchainData'>;\nexport const blockchainData = hexString<BlockchainData>;\n\n/**\n * A signature.\n */\nexport type Signature = Tagged<HexString, 'Signature'>;\nexport const signatureFrom = hexString<Signature>;\n\n/**\n * Type guard for a Signature.\n */\nexport function isSignature(value: unknown): value is Signature {\n return typeof value === 'string' && isValidHexString(value);\n}\n\n/**\n * A transaction hash.\n */\nexport type TxHash = Tagged<HexString, 'TxHash'>;\nexport const txHash = hexString<TxHash>;\n","import { evmAddress } from './hex';\n\nexport const ZERO_ADDRESS = evmAddress(\n '0x0000000000000000000000000000000000000000',\n);\n","import { err, errAsync, type Result, type ResultAsync } from 'neverthrow';\nimport { isObject } from './helpers';\n\nexport class ResultAwareError extends Error {\n /**\n * @internal\n */\n asResultAsync(): ResultAsync<never, typeof this> {\n return errAsync(this);\n }\n\n /**\n * @internal\n */\n asResult(): Result<never, typeof this> {\n return err(this);\n }\n\n /**\n * @internal\n */\n static from<T extends typeof ResultAwareError>(\n this: T,\n message: string,\n ): InstanceType<T>;\n static from<T extends typeof ResultAwareError>(\n this: T,\n cause: unknown,\n ): InstanceType<T>;\n static from<T extends typeof ResultAwareError>(\n this: T,\n args: unknown,\n ): InstanceType<T> {\n if (args instanceof Error) {\n // biome-ignore lint/complexity/noThisInStatic: intentional\n const message = this.formatMessage(args);\n // biome-ignore lint/complexity/noThisInStatic: intentional\n return new this(message, { cause: args }) as InstanceType<T>;\n }\n\n if (isObject(args) && 'message' in args) {\n // biome-ignore lint/complexity/noThisInStatic: intentional\n return new this(String(args.message)) as InstanceType<T>;\n }\n\n // biome-ignore lint/complexity/noThisInStatic: intentional\n return new this(String(args)) as InstanceType<T>;\n }\n\n static is<T extends typeof ResultAwareError>(\n this: T,\n error: unknown,\n ): error is InstanceType<T> {\n // biome-ignore lint/complexity/noThisInStatic: intentional\n return error instanceof this;\n }\n\n private static formatMessage(cause: Error): string {\n const messages: string[] = [];\n let currentError: unknown = cause;\n\n while (currentError instanceof Error) {\n if ('errors' in currentError && Array.isArray(currentError.errors)) {\n // Handle AggregateError\n const inner = currentError.errors.map((e: unknown) =>\n e instanceof Error ? e.message : String(e),\n );\n messages.push(inner.join(', '));\n } else {\n messages.push(currentError.message);\n }\n currentError = currentError.cause;\n }\n\n return messages.join(' due to ');\n }\n}\n","import { InvariantError } from './helpers';\nimport type { Override } from './misc';\n\n/**\n * @internal\n */\nexport type AnySelectionSet = object;\n\ndeclare const OpaqueTypenameSymbol: unique symbol;\n\n/**\n * @internal\n */\nexport type OpaqueTypename = { [OpaqueTypenameSymbol]: 'OpaqueTypename' };\n\n/**\n * @internal\n */\nexport type AnyVariables = Record<string, unknown>;\n\n/**\n * @internal\n */\nexport type TypedSelectionSet<TTypename extends string = string> = {\n __typename: TTypename;\n};\n\n/*\n * Asserts that the node is of a specific type in a union.\n *\n * ```ts\n * type A = { __typename: 'A', a: string };\n * type B = { __typename: 'B', b: string };\n *\n * const node: A | B = { __typename: 'A', a: 'a' };\n *\n * assertTypename(node, 'A');\n *\n * console.log(node.a); // OK\n * ```\n *\n * @param node - The node to assert the typename of\n * @param typename - The expected typename\n */\nexport function assertTypename<Typename extends string>(\n node: TypedSelectionSet,\n typename: Typename,\n): asserts node is TypedSelectionSet<Typename> {\n if (node.__typename !== typename) {\n throw new InvariantError(\n `Expected node to have typename \"${typename}\", but got \"${node.__typename}\"`,\n );\n }\n}\n\n/**\n * Given a union with a `__typename` discriminant,\n * add an extra \"opaque\" member so switches can't be exhaustive.\n *\n * Intersects opaque properties with base union members, then adds an opaque\n * union member with `__typename: OpaqueTypename` to prevent exhaustive checking\n * while preserving narrowing behavior.\n *\n * @internal\n */\nexport type ExtendWithOpaqueType<T extends { __typename: string }> =\n | T\n | Override<T, { __typename: OpaqueTypename }>;\n\n/**\n * @internal\n */\nexport function extendWithOpaqueType<T extends { __typename: string }>(\n node: T,\n): ExtendWithOpaqueType<T> {\n return node;\n}\n","import { Big } from 'big.js';\nimport type { Tagged } from 'type-fest';\nimport { InvariantError, invariant } from './helpers';\n\nBig.strict = true;\n\n/**\n * Valid input types for BigDecimal operations.\n */\nexport type BigDecimalSource = string | number | bigint | BigDecimal;\n\n/**\n * Rounding mode for BigDecimal operations.\n */\nexport enum RoundingMode {\n /**\n * Rounds towards zero (truncate, no rounding).\n */\n Down = 0,\n /**\n * Rounds towards nearest neighbor; if equidistant, rounds away from zero.\n */\n HalfUp = 1,\n /**\n * Rounds towards nearest neighbor; if equidistant, rounds towards even neighbor.\n */\n HalfEven = 2,\n /**\n * Rounds away from zero.\n */\n Up = 3,\n}\n\n/**\n * A high precision decimal number built on top of `big.js` library.\n */\nexport class BigDecimal {\n private readonly value: Big;\n\n private static readonly MAX_VAL = BigDecimal.new(Number.MAX_VALUE.toString()); // ≈ 1.7976931348623157e+308\n private static readonly MIN_VAL = BigDecimal.new(Number.MIN_VALUE.toString()); // ≈ 5e-324 (smallest positive subnormal)\n\n private constructor(value: Big.BigSource) {\n this.value = new Big(value);\n }\n\n /**\n * Throws an error to prevent implicit conversion to a number.\n */\n valueOf(): string {\n try {\n return this.value.valueOf();\n } catch (error) {\n throw new InvariantError('BigDecimal cannot be converted to a number', {\n cause: error,\n });\n }\n }\n\n /**\n * Throws an error to prevent conversion to a number.\n *\n * If you need a JS Number, and your can afford precision loss, use `toApproximateNumber()` instead.\n */\n toNumber(): number {\n throw new InvariantError('BigDecimal cannot be converted to a number');\n }\n\n /**\n * Returns a BigDecimal whose value is the absolute value, i.e. the magnitude, of this BigDecimal.\n */\n abs(): BigDecimal {\n return new BigDecimal(this.value.abs());\n }\n\n /**\n * Returns a BigDecimal whose value is the value of this BigDecimal plus n - alias for .plus().\n *\n * @throws `NaN` if n is invalid.\n */\n add(n: BigDecimalSource): BigDecimal {\n return new BigDecimal(this.value.add(this.toBigSource(n)));\n }\n\n /**\n * Returns a BigDecimal whose value is the value of this BigDecimal divided by n.\n *\n * @throws `NaN` if n is invalid.\n * @throws `±Infinity` on division by zero.\n * @throws `NaN` on division of zero by zero.\n */\n div(n: BigDecimalSource): BigDecimal {\n return new BigDecimal(this.value.div(this.toBigSource(n)));\n }\n\n /**\n * Returns a BigDecimal whose value is the value of this BigDecimal minus n.\n *\n * @throws `NaN` if n is invalid.\n */\n minus(n: BigDecimalSource): BigDecimal {\n return new BigDecimal(this.value.minus(this.toBigSource(n)));\n }\n\n /**\n * Returns a BigDecimal whose value is the value of this BigDecimal modulo n, i.e. the integer remainder of dividing this BigDecimal by n.\n *\n * The result will have the same sign as this BigDecimal, and it will match that of Javascript's % operator (within the limits of its precision) and BigDecimal's remainder method.\n *\n * @throws `NaN` if n is negative or otherwise invalid.\n */\n mod(n: BigDecimalSource): BigDecimal {\n return new BigDecimal(this.value.mod(this.toBigSource(n)));\n }\n\n /**\n * Returns a BigDecimal whose value is the value of this BigDecimal times n - alias for .times().\n *\n * @throws `NaN` if n is invalid.\n */\n mul(n: BigDecimalSource): BigDecimal {\n return new BigDecimal(this.value.mul(this.toBigSource(n)));\n }\n\n /**\n * Return a new BigDecimal whose value is the value of this BigDecimal negated.\n */\n neg(): BigDecimal {\n return new BigDecimal(this.value.neg());\n }\n\n /**\n * Returns a BigDecimal whose value is the value of this BigDecimal plus n.\n *\n * @throws `NaN` if n is invalid.\n */\n plus(n: BigDecimalSource): BigDecimal {\n return new BigDecimal(this.value.plus(this.toBigSource(n)));\n }\n\n /**\n * Returns a BigDecimal whose value is the value of this BigDecimal raised to the power exp.\n *\n * @param exp The power to raise the number to, -1e+6 to 1e+6 inclusive\n * @throws Error if exp is invalid.\n *\n * Note: High value exponents may cause this method to be slow to return.\n */\n pow(exp: number): BigDecimal {\n return new BigDecimal(this.value.pow(exp));\n }\n\n /**\n * Return a new BigDecimal whose value is the value of this BigDecimal rounded to a maximum precision of sd\n * significant digits using rounding mode rm.\n *\n * @param sd Significant digits: integer, 1 to MAX_DP inclusive.\n * @param rm Rounding mode: RoundingMode.Down (0), RoundingMode.HalfUp (1), RoundingMode.HalfEven (2), or RoundingMode.Up (3).\n * @throws Error if sd is invalid.\n * @throws Error if rm is invalid.\n */\n prec(sd: number, rm?: RoundingMode): BigDecimal {\n return new BigDecimal(this.value.prec(sd, rm));\n }\n\n /**\n * Returns a BigDecimal whose value is the value of this BigDecimal rounded using rounding mode rm to a maximum of dp decimal places.\n *\n * @param dp Decimal places, 0 to 1e+6 inclusive\n * @param rm Rounding mode: RoundingMode.Down (0), RoundingMode.HalfUp (1), RoundingMode.HalfEven (2), or RoundingMode.Up (3).\n * @throws Error if dp is invalid.\n * @throws Error if rm is invalid.\n */\n round(dp?: number, rm?: RoundingMode): BigDecimal {\n return new BigDecimal(this.value.round(dp, rm));\n }\n\n /**\n * Returns a BigDecimal whose value is the square root of this BigDecimal.\n *\n * @throws `NaN` if this BigDecimal is negative.\n */\n sqrt(): BigDecimal {\n return new BigDecimal(this.value.sqrt());\n }\n\n /**\n * Returns a BigDecimal whose value is the value of this BigDecimal minus n - alias for .minus().\n *\n * @throws `NaN` if n is invalid.\n */\n sub(n: BigDecimalSource): BigDecimal {\n return new BigDecimal(this.value.sub(this.toBigSource(n)));\n }\n\n /**\n * Returns a BigDecimal whose value is the value of this BigDecimal times n.\n *\n * @throws `NaN` if n is invalid.\n */\n times(n: BigDecimalSource): BigDecimal {\n return new BigDecimal(this.value.times(this.toBigSource(n)));\n }\n\n /**\n * Compare the values.\n *\n * @returns 1 if this BigDecimal is greater than n, 0 if equal, -1 if less than n.\n * @throws `NaN` if n is invalid.\n */\n cmp(n: BigDecimalSource): Big.Comparison {\n return this.value.cmp(this.toBigSource(n));\n }\n\n /**\n * Returns true if the value of this BigDecimal equals the value of n, otherwise returns false.\n *\n * @throws `NaN` if n is invalid.\n */\n eq(n: BigDecimalSource): boolean {\n return this.value.eq(this.toBigSource(n));\n }\n\n /**\n * Returns true if the value of this BigDecimal is greater than the value of n, otherwise returns false.\n *\n * @throws `NaN` if n is invalid.\n */\n gt(n: BigDecimalSource): boolean {\n return this.value.gt(this.toBigSource(n));\n }\n\n /**\n * Returns true if the value of this BigDecimal is greater than or equal to the value of n, otherwise returns false.\n *\n * @throws `NaN` if n is invalid.\n */\n gte(n: BigDecimalSource): boolean {\n return this.value.gte(this.toBigSource(n));\n }\n\n /**\n * Returns true if the value of this BigDecimal is less than the value of n, otherwise returns false.\n *\n * @throws `NaN` if n is invalid.\n */\n lt(n: BigDecimalSource): boolean {\n return this.value.lt(this.toBigSource(n));\n }\n\n /**\n * Returns true if the value of this BigDecimal is less than or equal to the value of n, otherwise returns false.\n *\n * @throws `NaN` if n is invalid.\n */\n lte(n: BigDecimalSource): boolean {\n return this.value.lte(this.toBigSource(n));\n }\n\n /**\n * Returns a string representing the value of this BigDecimal in exponential notation to a fixed number of decimal places dp.\n *\n * @param dp Decimal places, 0 to 1e+6 inclusive\n * @param rm Rounding mode: RoundingMode.Down (0), RoundingMode.HalfUp (1), RoundingMode.HalfEven (2), or RoundingMode.Up (3).\n * @throws Error if dp is invalid.\n */\n toExponential(dp?: number, rm?: RoundingMode): string {\n return this.value.toExponential(dp, rm);\n }\n\n /**\n * Returns a string representing the value of this BigDecimal in normal notation to a fixed number of decimal places dp.\n *\n * @param dp Decimal places, 0 to 1e+6 inclusive\n * @param rm Rounding mode: RoundingMode.Down (0), RoundingMode.HalfUp (1), RoundingMode.HalfEven (2), or RoundingMode.Up (3).\n * @throws Error if dp is invalid.\n */\n toFixed(dp?: number, rm?: RoundingMode): string {\n return this.value.toFixed(dp, rm);\n }\n\n /**\n * Returns a string representing the value of this BigDecimal to the specified number of significant digits sd.\n *\n * @param sd Significant digits, 1 to 1e+6 inclusive\n * @param rm Rounding mode: RoundingMode.Down (0), RoundingMode.HalfUp (1), RoundingMode.HalfEven (2), or RoundingMode.Up (3).\n * @throws Error if sd is invalid.\n */\n toPrecision(sd?: number, rm?: RoundingMode): string {\n return this.value.toPrecision(sd, rm);\n }\n\n /**\n * Returns a string representing the value of this BigDecimal.\n *\n * If this BigDecimal has a positive exponent that is equal to or greater than 21, or a negative exponent equal to or less than -7, then exponential notation is returned.\n */\n toString(): string {\n return this.value.toString();\n }\n\n /**\n * Returns a string representing the value of this BigDecimal.\n *\n * This method is used by JSON.stringify() to serialize BigDecimal values.\n */\n toJSON(): string {\n return this.value.toFixed();\n }\n\n /**\n * Returns a BigDecimal whose value is the value of this BigDecimal multiplied by 10^decimals.\n *\n * @param decimals The number of decimal places to scale by (can be negative to scale down).\n */\n public rescale(decimals: number): BigDecimal {\n return this.mul(10 ** decimals);\n }\n\n /**\n * Returns a formatted string representation of this BigDecimal for display purposes.\n *\n * The precision behavior adapts based on the number's magnitude:\n * - For numbers >= 1: Always displays the full integer part, with decimal precision\n * controlled by the precision parameter (representing orders of magnitude for decimals).\n * - For numbers < 1: Uses traditional significant figures behavior.\n *\n * @param precision - Precision control parameter.\n * For numbers >= 1: Total digits to display (integer + decimal).\n * For numbers < 1: Number of significant figures.\n * @param opts - Optional formatting options.\n * @param opts.rounding - The rounding mode to apply (default: RoundingMode.HalfUp).\n * @param opts.minFractionDigits - The minimum number of digits to display\n * after the decimal point (default: 0).\n * @param opts.trimTrailingZeros - When true, removes trailing zeros after\n * the decimal point for a cleaner display (default: false).\n *\n * @returns A string representing the rounded and formatted number.\n */\n public toDisplayString(\n precision: number,\n opts?: {\n rounding?: RoundingMode;\n minFractionDigits?: number;\n trimTrailingZeros?: boolean;\n },\n ): string {\n const {\n rounding = RoundingMode.HalfUp,\n minFractionDigits = 0,\n trimTrailingZeros = false,\n } = opts ?? {};\n\n if (this.eq(0)) {\n return minFractionDigits > 0 ? `0.${'0'.repeat(minFractionDigits)}` : '0';\n }\n\n const rounded = this.applyPrecisionWithMinFractionDigits(\n precision,\n minFractionDigits,\n rounding,\n );\n\n return this.formatDecimalString(\n rounded,\n minFractionDigits,\n trimTrailingZeros,\n );\n }\n\n /**\n * Returns a JavaScript `number` approximation of this BigDecimal, safely clamped\n * within the finite range of representable values.\n *\n * This method performs a best-effort conversion to a native `number` while ensuring\n * that:\n * - Values larger than `Number.MAX_VALUE` are clamped to `Number.MAX_VALUE`.\n * - Values smaller than `-Number.MAX_VALUE` are clamped to `-Number.MAX_VALUE`.\n * - Subnormal magnitudes smaller than `Number.MIN_VALUE` are rounded to `0` (preserving sign).\n *\n * Use this method only when precision loss is acceptable — for example, when displaying\n * approximate numeric values or interfacing with APIs that require `number` types.\n *\n * @returns A finite `number` approximation of this BigDecimal.\n *\n * @example\n * ```ts\n * const x = bigDecimal('1e500');\n * x.toApproximateNumber(); // → 1.7976931348623157e+308 (clamped)\n *\n * const y = bigDecimal('0.0000000000000000000000000000001');\n * y.toApproximateNumber(); // → 0\n *\n * const z = bigDecimal('123.456');\n * z.toApproximateNumber(); // → 123.456\n * ```\n */\n public toApproximateNumber(): number {\n if (this.gt(BigDecimal.MAX_VAL)) return Number.MAX_VALUE;\n if (this.lt(BigDecimal.MAX_VAL.times(-1))) return -Number.MAX_VALUE;\n\n // subnormal underflow -> preserve sign as -0 when negative\n if (this.abs().lt(BigDecimal.MIN_VAL)) return this.lt('0') ? -0 : 0;\n\n return Number(this.toString());\n }\n\n /**\n * @internal\n */\n static new(value: string): BigDecimal {\n try {\n return new BigDecimal(value);\n } catch (error) {\n throw new InvariantError('Invalid value for BigDecimal', {\n cause: error,\n });\n }\n }\n\n static isBigDecimal(value: unknown): value is BigDecimal {\n return value instanceof BigDecimal;\n }\n\n /**\n * Returns the minimum value from the provided BigDecimal values.\n *\n * @param first - The first value to compare.\n * @param second - The second value to compare.\n * @param others - The other values to compare.\n * @returns The minimum value.\n */\n static min(\n first: BigDecimal,\n second: BigDecimal,\n ...others: BigDecimal[]\n ): BigDecimal {\n return [second, ...others].reduce<BigDecimal>((min, current) => {\n return min.lt(current) ? min : current;\n }, first);\n }\n\n /**\n * Returns the maximum value from the provided BigDecimal values.\n *\n * @param first - The first value to compare.\n * @param second - The second value to compare.\n * @param others - The other values to compare.\n * @returns The maximum value.\n */\n static max(\n first: BigDecimal,\n second: BigDecimal,\n ...others: BigDecimal[]\n ): BigDecimal {\n return [second, ...others].reduce<BigDecimal>((max, current) => {\n return max.gt(current) ? max : current;\n }, first);\n }\n\n /**\n * Converts BigDecimalSource to Big.BigSource for passing to super methods.\n */\n private toBigSource(n: BigDecimalSource): Big.BigSource {\n switch (typeof n) {\n case 'bigint':\n return n.toString();\n case 'number':\n return n.toString();\n case 'string':\n return n;\n default:\n return n.toFixed();\n }\n }\n\n private getIntegerDigitCount(): number {\n const absStr = this.abs().toFixed();\n const [integerPart] = absStr.split('.');\n return integerPart?.length ?? absStr.length;\n }\n\n private applyPrecisionWithMinFractionDigits(\n precision: number,\n minFractionDigits: number,\n rounding: RoundingMode,\n ): BigDecimal {\n const shouldRespectMinFraction = this.gte(1) && minFractionDigits > 0;\n\n if (shouldRespectMinFraction) {\n const integerDigits = this.getIntegerDigitCount();\n const requiredPrecision = integerDigits + minFractionDigits;\n const effectivePrecision = Math.max(precision, requiredPrecision);\n const decimalPlaces = effectivePrecision - integerDigits;\n return this.round(decimalPlaces, rounding);\n }\n\n return this.applyAdaptivePrecision(precision, rounding);\n }\n\n private formatDecimalString(\n value: BigDecimal,\n minFractionDigits: number,\n trimTrailingZeros: boolean,\n ): string {\n let result = value.toFixed();\n\n if (minFractionDigits > 0) {\n result = this.ensureMinFractionDigits(result, minFractionDigits);\n }\n\n if (trimTrailingZeros && result.includes('.')) {\n result = result.replace(/\\.?0+$/, '');\n }\n\n return result;\n }\n\n private ensureMinFractionDigits(str: string, minDigits: number): string {\n const [intPart, fracPart = ''] = str.split('.');\n if (fracPart.length < minDigits) {\n return `${intPart}.${fracPart.padEnd(minDigits, '0')}`;\n }\n return str;\n }\n\n private applyAdaptivePrecision(\n precision: number,\n rounding: RoundingMode,\n ): BigDecimal {\n const absValue = this.abs();\n\n // For numbers >= 1, keep all integer digits and control decimal precision\n if (absValue.gte(1)) {\n const integerDigits = this.getIntegerDigitCount();\n const decimalPlaces = Math.max(0, precision - integerDigits);\n return this.round(decimalPlaces, rounding);\n }\n\n // For numbers < 1, use traditional significant figures\n return this.prec(precision, rounding);\n }\n}\n\n/**\n * Create a new BigDecimal.\n *\n * @param value - The value to create a new BigDecimal from.\n * @returns A new BigDecimal.\n */\nexport function bigDecimal(value: BigDecimalSource): BigDecimal {\n if (value instanceof BigDecimal) {\n return value;\n }\n return BigDecimal.new(value.toString());\n}\n\n/**\n * An integer representation of a blockchain chain ID.\n */\nexport type ChainId = Tagged<number, 'ChainId'>;\nexport function chainId(value: number | bigint): ChainId {\n const id = Number(value);\n invariant(Number.isInteger(id) && id >= 0, `Invalid ChainId: ${value}`);\n return id as ChainId;\n}\n"]}
@@ -0,0 +1,2 @@
1
+ import {r}from'./chunk-5S5WCHVW.js';function a(r){return typeof r=="object"&&r!==null&&"approvals"in r&&Array.isArray(r.approvals)}function o(r$1){return a(r$1)&&r(r$1.approvals)&&!!r$1.approvals[0].bySignature}export{o as a};//# sourceMappingURL=chunk-COR3ZX64.js.map
2
+ //# sourceMappingURL=chunk-COR3ZX64.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/adapters.ts"],"names":["hasApprovals","plan","supportsPermit","D"],"mappings":"oCAKA,SAASA,CAAAA,CAAaC,CAAAA,CAAsC,CAC1D,OACE,OAAOA,CAAAA,EAAS,QAAA,EAChBA,CAAAA,GAAS,IAAA,EACT,cAAeA,CAAAA,EACf,KAAA,CAAM,OAAA,CAAQA,CAAAA,CAAK,SAAS,CAEhC,CASO,SAASC,CAAAA,CAAkBD,IAG9B,CACF,OACED,CAAAA,CAAaC,GAAI,GACjBE,CAAAA,CAAgBF,GAAAA,CAAK,SAAS,CAAA,EAC9B,CAAC,CAACA,GAAAA,CAAK,SAAA,CAAU,CAAC,EAAE,WAExB","file":"chunk-COR3ZX64.js","sourcesContent":["import type { Erc20Approval, PermitTypedData } from '@aave/graphql';\nimport { isOneEntryArray } from '@aave/types';\n\ntype WithApprovals = { approvals: Erc20Approval[] };\n\nfunction hasApprovals(plan: unknown): plan is WithApprovals {\n return (\n typeof plan === 'object' &&\n plan !== null &&\n 'approvals' in plan &&\n Array.isArray(plan.approvals)\n );\n}\n\n/**\n * Checks if a plan supports permit (single approval with bySignature).\n * Works with union types - picks any member that has an `approvals` array\n * with a single entry containing `bySignature`.\n *\n * @internal\n */\nexport function supportsPermit<T>(plan: T): plan is T &\n Extract<T, WithApprovals> & {\n approvals: [Erc20Approval & { bySignature: PermitTypedData }];\n } {\n return (\n hasApprovals(plan) &&\n isOneEntryArray(plan.approvals) &&\n !!plan.approvals[0].bySignature\n );\n}\n"]}