@pufferfinance/puffer-sdk 1.14.0 → 1.14.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/puffer-client-helpers.cjs +1 -1
- package/dist/api/puffer-client-helpers.cjs.map +1 -1
- package/dist/api/puffer-client-helpers.js +86 -86
- package/dist/api/puffer-client-helpers.js.map +1 -1
- package/dist/api/puffer-client.cjs +1 -1
- package/dist/api/puffer-client.js +2 -2
- package/dist/{ccip-K-z2PL4P.js → ccip-DxZd6avE.js} +9 -9
- package/dist/ccip-DxZd6avE.js.map +1 -0
- package/dist/{ccip-C0xwQhXU.cjs → ccip-KTVYuImW.cjs} +2 -2
- package/dist/ccip-KTVYuImW.cjs.map +1 -0
- package/dist/chains/constants.cjs +1 -1
- package/dist/chains/constants.d.ts +7 -1
- package/dist/chains/constants.js +1 -1
- package/dist/constants-Bsa7cnXP.cjs +9 -0
- package/dist/constants-Bsa7cnXP.cjs.map +1 -0
- package/dist/constants-DtzphQjb.js +2274 -0
- package/dist/constants-DtzphQjb.js.map +1 -0
- package/dist/contracts/addresses.cjs +1 -1
- package/dist/contracts/addresses.js +1 -1
- package/dist/contracts/handlers/carrot-staking-handler.cjs +1 -1
- package/dist/contracts/handlers/carrot-staking-handler.d.ts +14621 -1572
- package/dist/contracts/handlers/carrot-staking-handler.js +2 -2
- package/dist/contracts/handlers/distributor-handler.cjs +1 -1
- package/dist/contracts/handlers/distributor-handler.d.ts +14732 -8603
- package/dist/contracts/handlers/distributor-handler.js +2 -2
- package/dist/contracts/handlers/erc20-permit-handler.cjs +1 -1
- package/dist/contracts/handlers/erc20-permit-handler.cjs.map +1 -1
- package/dist/contracts/handlers/erc20-permit-handler.d.ts +14905 -17101
- package/dist/contracts/handlers/erc20-permit-handler.js +3 -3
- package/dist/contracts/handlers/erc20-permit-handler.js.map +1 -1
- package/dist/contracts/handlers/l1-reward-manager-handler.cjs +1 -1
- package/dist/contracts/handlers/l1-reward-manager-handler.d.ts +14568 -282
- package/dist/contracts/handlers/l1-reward-manager-handler.js +2 -2
- package/dist/contracts/handlers/l2-reward-manager-handler.cjs +1 -1
- package/dist/contracts/handlers/l2-reward-manager-handler.d.ts +14674 -2283
- package/dist/contracts/handlers/l2-reward-manager-handler.js +2 -2
- package/dist/contracts/handlers/mtw-carrot-handler.cjs +1 -1
- package/dist/contracts/handlers/mtw-carrot-handler.d.ts +14802 -14165
- package/dist/contracts/handlers/mtw-carrot-handler.js +2 -2
- package/dist/contracts/handlers/nucleus-accountant-handler.cjs +1 -1
- package/dist/contracts/handlers/nucleus-accountant-handler.d.ts +14612 -543
- package/dist/contracts/handlers/nucleus-accountant-handler.js +1 -1
- package/dist/contracts/handlers/nucleus-atomic-queue-handler.cjs +1 -1
- package/dist/contracts/handlers/nucleus-atomic-queue-handler.d.ts +14819 -7619
- package/dist/contracts/handlers/nucleus-atomic-queue-handler.js +2 -2
- package/dist/contracts/handlers/nucleus-boring-vault-handler.cjs +1 -1
- package/dist/contracts/handlers/nucleus-boring-vault-handler.d.ts +14665 -3778
- package/dist/contracts/handlers/nucleus-boring-vault-handler.js +2 -2
- package/dist/contracts/handlers/nucleus-teller-handler.cjs +1 -1
- package/dist/contracts/handlers/nucleus-teller-handler.d.ts +14645 -2072
- package/dist/contracts/handlers/nucleus-teller-handler.js +2 -2
- package/dist/contracts/handlers/puf-locker-handler.cjs +1 -1
- package/dist/contracts/handlers/puf-locker-handler.d.ts +14658 -2266
- package/dist/contracts/handlers/puf-locker-handler.js +2 -2
- package/dist/contracts/handlers/puffer-depositor-handler.cjs +1 -1
- package/dist/contracts/handlers/puffer-depositor-handler.d.ts +14801 -11215
- package/dist/contracts/handlers/puffer-depositor-handler.js +2 -2
- package/dist/contracts/handlers/puffer-l2-depositor-handler.cjs +1 -1
- package/dist/contracts/handlers/puffer-l2-depositor-handler.d.ts +14579 -399
- package/dist/contracts/handlers/puffer-l2-depositor-handler.js +2 -2
- package/dist/contracts/handlers/puffer-vault-handler.cjs +1 -1
- package/dist/contracts/handlers/puffer-vault-handler.d.ts +14698 -4510
- package/dist/contracts/handlers/puffer-vault-handler.js +2 -2
- package/dist/contracts/handlers/puffer-withdrawal-manager-handler.cjs +1 -1
- package/dist/contracts/handlers/puffer-withdrawal-manager-handler.d.ts +14610 -1797
- package/dist/contracts/handlers/puffer-withdrawal-manager-handler.js +2 -2
- package/dist/contracts/tokens.cjs +1 -1
- package/dist/contracts/tokens.cjs.map +1 -1
- package/dist/contracts/tokens.d.ts +3 -1
- package/dist/contracts/tokens.js +71 -60
- package/dist/contracts/tokens.js.map +1 -1
- package/dist/contracts/vaults-addresses.cjs +1 -1
- package/dist/contracts/vaults-addresses.js +1 -1
- package/dist/{createWalletClient-Di5of07E.cjs → createWalletClient-Cxvyuh55.cjs} +6 -6
- package/dist/createWalletClient-Cxvyuh55.cjs.map +1 -0
- package/dist/{createWalletClient-DNLhBkOd.js → createWalletClient-DveM0zMc.js} +63 -62
- package/dist/createWalletClient-DveM0zMc.js.map +1 -0
- package/dist/{getContract-6ajhFbP2.js → getContract-Ck0plC0s.js} +2 -2
- package/dist/{getContract-ChPFzc5y.cjs.map → getContract-Ck0plC0s.js.map} +1 -1
- package/dist/{getContract-ChPFzc5y.cjs → getContract-Z5RjOH18.cjs} +2 -2
- package/dist/getContract-Z5RjOH18.cjs.map +1 -0
- package/dist/main.cjs +1 -1
- package/dist/main.js +1 -1
- package/dist/{secp256k1-Ev0s9Yr6.js → secp256k1-48Xl94oi.js} +2 -2
- package/dist/{secp256k1-Ev0s9Yr6.js.map → secp256k1-48Xl94oi.js.map} +1 -1
- package/dist/{secp256k1-B8plqpXf.cjs → secp256k1-BWuyf2aG.cjs} +2 -2
- package/dist/{secp256k1-B8plqpXf.cjs.map → secp256k1-BWuyf2aG.cjs.map} +1 -1
- package/dist/utils/version.cjs +1 -1
- package/dist/utils/version.js +1 -1
- package/dist/{writeContract-CjcOEtWX.js → writeContract-CynQLeZV.js} +7 -7
- package/dist/writeContract-CynQLeZV.js.map +1 -0
- package/dist/{writeContract-BatuNuTe.cjs → writeContract-D5BxbWBy.cjs} +6 -6
- package/dist/writeContract-D5BxbWBy.cjs.map +1 -0
- package/package.json +2 -2
- package/dist/ccip-C0xwQhXU.cjs.map +0 -1
- package/dist/ccip-K-z2PL4P.js.map +0 -1
- package/dist/constants-BcPRVxdH.cjs +0 -9
- package/dist/constants-BcPRVxdH.cjs.map +0 -1
- package/dist/constants-CH7Tz5jz.js +0 -2048
- package/dist/constants-CH7Tz5jz.js.map +0 -1
- package/dist/createWalletClient-DNLhBkOd.js.map +0 -1
- package/dist/createWalletClient-Di5of07E.cjs.map +0 -1
- package/dist/getContract-6ajhFbP2.js.map +0 -1
- package/dist/writeContract-BatuNuTe.cjs.map +0 -1
- package/dist/writeContract-CjcOEtWX.js.map +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
"use strict";const o=require("./writeContract-BatuNuTe.cjs"),h=require("./constants-BcPRVxdH.cjs"),bt=require("./secp256k1-B8plqpXf.cjs");function xe(e){let t;if(typeof e=="string")t=o.parseSignature(e);else{const r=o.parseStructs(e),n=e.length;for(let s=0;s<n;s++){const a=e[s];if(!o.isStructSignature(a)){t=o.parseSignature(a,r);break}}}if(!t)throw new o.InvalidAbiItemError({signature:e});return t}class yt extends h.BaseError{constructor({address:t}){super(`No EIP-712 domain found on contract "${t}".`,{metaMessages:["Ensure that:",`- The contract is deployed at the address "${t}".`,"- `eip712Domain()` function exists on the contract.","- `eip712Domain()` function matches signature to ERC-5267 specification."],name:"Eip712DomainNotFoundError"})}}async function wt(e,t){const{address:r,factory:n,factoryData:s}=t;try{const[a,i,u,d,c,l,f]=await o.getAction(e,o.readContract,"readContract")({abi:vt,address:r,functionName:"eip712Domain",factory:n,factoryData:s});return{domain:{name:i,version:u,chainId:Number(d),verifyingContract:c,salt:l},extensions:f,fields:a}}catch(a){const i=a;throw i.name==="ContractFunctionExecutionError"&&i.cause.name==="ContractFunctionZeroDataError"?new yt({address:r}):i}}const vt=[{inputs:[],name:"eip712Domain",outputs:[{name:"fields",type:"bytes1"},{name:"name",type:"string"},{name:"version",type:"string"},{name:"chainId",type:"uint256"},{name:"verifyingContract",type:"address"},{name:"salt",type:"bytes32"},{name:"extensions",type:"uint256[]"}],stateMutability:"view",type:"function"}];async function xt(e,{chain:t}){const{id:r,name:n,nativeCurrency:s,rpcUrls:a,blockExplorers:i}=t;await e.request({method:"wallet_addEthereumChain",params:[{chainId:h.numberToHex(r),chainName:n,nativeCurrency:s,rpcUrls:a.default.http,blockExplorerUrls:i?Object.values(i).map(({url:u})=>u):void 0}]},{dedupe:!0,retryCount:0})}const te=256;let W=te,Z;function Be(e=11){if(!Z||W+e>te*2){Z="",W=0;for(let t=0;t<te;t++)Z+=(256+Math.random()*256|0).toString(16).substring(1)}return Z.substring(W,W+++e)}function Ne(e){const{batch:t,cacheTime:r=e.pollingInterval??4e3,ccipRead:n,key:s="base",name:a="Base Client",pollingInterval:i=4e3,type:u="base"}=e,d=e.chain,c=e.account?o.parseAccount(e.account):void 0,{config:l,request:f,value:p}=e.transport({chain:d,pollingInterval:i}),g={...l,...p},b={account:c,batch:t,cacheTime:r,ccipRead:n,chain:d,key:s,name:a,pollingInterval:i,request:f,transport:g,type:u,uid:Be()};function y(E){return m=>{const w=m(E);for(const T in b)delete w[T];const v={...E,...w};return Object.assign(v,{extend:y(v)})}}return Object.assign(b,{extend:y(b)})}const J=new h.LruMap(8192);function Et(e,{enabled:t=!0,id:r}){if(!t||!r)return e();if(J.get(r))return J.get(r);const n=e().finally(()=>J.delete(r));return J.set(r,n),n}function re(e,{delay:t=100,retryCount:r=2,shouldRetry:n=()=>!0}={}){return new Promise((s,a)=>{const i=async({count:u=0}={})=>{const d=async({error:c})=>{const l=typeof t=="function"?t({count:u,error:c}):t;l&&await o.wait(l),i({count:u+1})};try{const c=await e();s(c)}catch(c){if(u<r&&await n({count:u,error:c}))return d({error:c});a(c)}};i()})}function At(e,t={}){return async(r,n={})=>{var f;const{dedupe:s=!1,methods:a,retryDelay:i=150,retryCount:u=3,uid:d}={...t,...n},{method:c}=r;if((f=a==null?void 0:a.exclude)!=null&&f.includes(c))throw new o.MethodNotSupportedRpcError(new Error("method not supported"),{method:c});if(a!=null&&a.include&&!a.include.includes(c))throw new o.MethodNotSupportedRpcError(new Error("method not supported"),{method:c});const l=s?h.stringToHex(`${d}.${o.stringify(r)}`):void 0;return Et(()=>re(async()=>{try{return await e(r)}catch(p){const g=p;switch(g.code){case o.ParseRpcError.code:throw new o.ParseRpcError(g);case o.InvalidRequestRpcError.code:throw new o.InvalidRequestRpcError(g);case o.MethodNotFoundRpcError.code:throw new o.MethodNotFoundRpcError(g,{method:r.method});case o.InvalidParamsRpcError.code:throw new o.InvalidParamsRpcError(g);case o.InternalRpcError.code:throw new o.InternalRpcError(g);case o.InvalidInputRpcError.code:throw new o.InvalidInputRpcError(g);case o.ResourceNotFoundRpcError.code:throw new o.ResourceNotFoundRpcError(g);case o.ResourceUnavailableRpcError.code:throw new o.ResourceUnavailableRpcError(g);case o.TransactionRejectedRpcError.code:throw new o.TransactionRejectedRpcError(g);case o.MethodNotSupportedRpcError.code:throw new o.MethodNotSupportedRpcError(g,{method:r.method});case o.LimitExceededRpcError.code:throw new o.LimitExceededRpcError(g);case o.JsonRpcVersionUnsupportedError.code:throw new o.JsonRpcVersionUnsupportedError(g);case o.UserRejectedRequestError.code:throw new o.UserRejectedRequestError(g);case o.UnauthorizedProviderError.code:throw new o.UnauthorizedProviderError(g);case o.UnsupportedProviderMethodError.code:throw new o.UnsupportedProviderMethodError(g);case o.ProviderDisconnectedError.code:throw new o.ProviderDisconnectedError(g);case o.ChainDisconnectedError.code:throw new o.ChainDisconnectedError(g);case o.SwitchChainError.code:throw new o.SwitchChainError(g);case 5e3:throw new o.UserRejectedRequestError(g);default:throw p instanceof h.BaseError?p:new o.UnknownRpcError(g)}}},{delay:({count:p,error:g})=>{var b;if(g&&g instanceof o.HttpRequestError){const y=(b=g==null?void 0:g.headers)==null?void 0:b.get("Retry-After");if(y!=null&&y.match(/\d/))return Number.parseInt(y)*1e3}return~~(1<<p)*i},retryCount:u,shouldRetry:({error:p})=>Tt(p)}),{enabled:s,id:l})}}function Tt(e){return"code"in e&&typeof e.code=="number"?e.code===-1||e.code===o.LimitExceededRpcError.code||e.code===o.InternalRpcError.code:e instanceof o.HttpRequestError&&e.status?e.status===403||e.status===408||e.status===413||e.status===429||e.status===500||e.status===502||e.status===503||e.status===504:!0}function Se({key:e,methods:t,name:r,request:n,retryCount:s=3,retryDelay:a=150,timeout:i,type:u},d){const c=Be();return{config:{key:e,methods:t,name:r,request:n,retryCount:s,retryDelay:a,timeout:i,type:u},request:At(n,{methods:t,retryCount:s,retryDelay:a,uid:c}),value:d}}class Rt extends h.BaseError{constructor(){super("No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.",{docsPath:"/docs/clients/intro",name:"UrlRequiredError"})}}function Ct(e,{errorInstance:t=new Error("timed out"),timeout:r,signal:n}){return new Promise((s,a)=>{(async()=>{let i;try{const u=new AbortController;r>0&&(i=setTimeout(()=>{n&&u.abort()},r)),s(await e({signal:(u==null?void 0:u.signal)||null}))}catch(u){(u==null?void 0:u.name)==="AbortError"&&a(t),a(u)}finally{clearTimeout(i)}})()})}function It(){return{current:0,take(){return this.current++},reset(){this.current=0}}}const Ee=It();function Pt(e,t={}){return{async request(r){var f;const{body:n,onRequest:s=t.onRequest,onResponse:a=t.onResponse,timeout:i=t.timeout??1e4}=r,u={...t.fetchOptions??{},...r.fetchOptions??{}},{headers:d,method:c,signal:l}=u;try{const p=await Ct(async({signal:b})=>{const y={...u,body:Array.isArray(n)?o.stringify(n.map(v=>({jsonrpc:"2.0",id:v.id??Ee.take(),...v}))):o.stringify({jsonrpc:"2.0",id:n.id??Ee.take(),...n}),headers:{"Content-Type":"application/json",...d},method:c||"POST",signal:l||(i>0?b:null)},E=new Request(e,y),m=await(s==null?void 0:s(E,y))??{...y,url:e};return await fetch(m.url??e,m)},{errorInstance:new o.TimeoutError({body:n,url:e}),timeout:i,signal:!0});a&&await a(p);let g;if((f=p.headers.get("Content-Type"))!=null&&f.startsWith("application/json"))g=await p.json();else{g=await p.text();try{g=JSON.parse(g||"{}")}catch(b){if(p.ok)throw b;g={error:g}}}if(!p.ok)throw new o.HttpRequestError({body:n,details:o.stringify(g.error)||p.statusText,headers:p.headers,status:p.status,url:e});return g}catch(p){throw p instanceof o.HttpRequestError||p instanceof o.TimeoutError?p:new o.HttpRequestError({body:n,cause:p,url:e})}}}}function kt(e,t={}){const{batch:r,fetchOptions:n,key:s="http",methods:a,name:i="HTTP JSON-RPC",onFetchRequest:u,onFetchResponse:d,retryDelay:c,raw:l}=t;return({chain:f,retryCount:p,timeout:g})=>{const{batchSize:b=1e3,wait:y=0}=typeof r=="object"?r:{},E=t.retryCount??p,m=g??t.timeout??1e4,w=e||(f==null?void 0:f.rpcUrls.default.http[0]);if(!w)throw new Rt;const v=Pt(w,{fetchOptions:n,onRequest:u,onResponse:d,timeout:m});return Se({key:s,methods:a,name:i,async request({method:T,params:I}){const R={method:T,params:I},{schedule:A}=o.createBatchScheduler({id:w,wait:y,shouldSplitBatch(C){return C.length>b},fn:C=>v.request({body:C}),sort:(C,S)=>C.id-S.id}),k=async C=>r?A(C):[await v.request({body:C})],[{error:P,result:N}]=await k(R);if(l)return{error:P,result:N};if(P)throw new o.RpcRequestError({body:R,error:P,url:w});return N},retryCount:E,retryDelay:c,timeout:m,type:"http"},{fetchOptions:n,url:w})}}function de(e,t){var n,s,a,i,u,d;if(!(e instanceof h.BaseError))return!1;const r=e.walk(c=>c instanceof o.ContractFunctionRevertedError);return r instanceof o.ContractFunctionRevertedError?!!(((n=r.data)==null?void 0:n.errorName)==="ResolverNotFound"||((s=r.data)==null?void 0:s.errorName)==="ResolverWildcardNotSupported"||((a=r.data)==null?void 0:a.errorName)==="ResolverNotContract"||((i=r.data)==null?void 0:i.errorName)==="ResolverError"||((u=r.data)==null?void 0:u.errorName)==="HttpError"||(d=r.reason)!=null&&d.includes("Wildcard on non-extended resolvers is not supported")||t==="reverse"&&r.reason===o.panicReasons[50]):!1}function $e(e){if(e.length!==66||e.indexOf("[")!==0||e.indexOf("]")!==65)return null;const t=`0x${e.slice(1,65)}`;return h.isHex(t)?t:null}function K(e){let t=new Uint8Array(32).fill(0);if(!e)return h.bytesToHex(t);const r=e.split(".");for(let n=r.length-1;n>=0;n-=1){const s=$e(r[n]),a=s?h.toBytes$1(s):h.keccak256(h.stringToBytes(r[n]),"bytes");t=h.keccak256(h.concat([t,a]),"bytes")}return h.bytesToHex(t)}function Bt(e){return`[${e.slice(2)}]`}function Nt(e){const t=new Uint8Array(32).fill(0);return e?$e(e)||h.keccak256(h.stringToBytes(e)):h.bytesToHex(t)}function Q(e){const t=e.replace(/^\.|\.$/gm,"");if(t.length===0)return new Uint8Array(1);const r=new Uint8Array(h.stringToBytes(t).byteLength+2);let n=0;const s=t.split(".");for(let a=0;a<s.length;a++){let i=h.stringToBytes(s[a]);i.byteLength>255&&(i=h.stringToBytes(Bt(Nt(s[a])))),r[n]=i.length,r.set(i,n+1),n+=i.length+1}return r.byteLength!==n+1?r.slice(0,n+1):r}async function St(e,{blockNumber:t,blockTag:r,coinType:n,name:s,gatewayUrls:a,strict:i,universalResolverAddress:u}){let d=u;if(!d){if(!e.chain)throw new Error("client chain not configured. universalResolverAddress is required.");d=o.getChainContractAddress({blockNumber:t,chain:e.chain,contract:"ensUniversalResolver"})}try{const c=o.encodeFunctionData({abi:o.addressResolverAbi,functionName:"addr",...n!=null?{args:[K(s),BigInt(n)]}:{args:[K(s)]}}),l={address:d,abi:o.universalResolverResolveAbi,functionName:"resolve",args:[h.toHex(Q(s)),c],blockNumber:t,blockTag:r},f=o.getAction(e,o.readContract,"readContract"),p=a?await f({...l,args:[...l.args,a]}):await f(l);if(p[0]==="0x")return null;const g=o.decodeFunctionResult({abi:o.addressResolverAbi,args:n!=null?[K(s),BigInt(n)]:void 0,functionName:"addr",data:p[0]});return g==="0x"||h.trim(g)==="0x00"?null:g}catch(c){if(i)throw c;if(de(c,"resolve"))return null;throw c}}class $t extends h.BaseError{constructor({data:t}){super("Unable to extract image from metadata. The metadata may be malformed or invalid.",{metaMessages:["- Metadata must be a JSON object with at least an `image`, `image_url` or `image_data` property.","",`Provided data: ${JSON.stringify(t)}`],name:"EnsAvatarInvalidMetadataError"})}}class G extends h.BaseError{constructor({reason:t}){super(`ENS NFT avatar URI is invalid. ${t}`,{name:"EnsAvatarInvalidNftUriError"})}}class fe extends h.BaseError{constructor({uri:t}){super(`Unable to resolve ENS avatar URI "${t}". The URI may be malformed, invalid, or does not respond with a valid image.`,{name:"EnsAvatarUriResolutionError"})}}class zt extends h.BaseError{constructor({namespace:t}){super(`ENS NFT avatar namespace "${t}" is not supported. Must be "erc721" or "erc1155".`,{name:"EnsAvatarUnsupportedNamespaceError"})}}const Ft=/(?<protocol>https?:\/\/[^\/]*|ipfs:\/|ipns:\/|ar:\/)?(?<root>\/)?(?<subpath>ipfs\/|ipns\/)?(?<target>[\w\-.]+)(?<subtarget>\/.*)?/,qt=/^(Qm[1-9A-HJ-NP-Za-km-z]{44,}|b[A-Za-z2-7]{58,}|B[A-Z2-7]{58,}|z[1-9A-HJ-NP-Za-km-z]{48,}|F[0-9A-F]{50,})(\/(?<target>[\w\-.]+))?(?<subtarget>\/.*)?$/,Dt=/^data:([a-zA-Z\-/+]*);base64,([^"].*)/,Ht=/^data:([a-zA-Z\-/+]*)?(;[a-zA-Z0-9].*?)?(,)/;async function Ot(e){try{const t=await fetch(e,{method:"HEAD"});if(t.status===200){const r=t.headers.get("content-type");return r==null?void 0:r.startsWith("image/")}return!1}catch(t){return typeof t=="object"&&typeof t.response<"u"||!globalThis.hasOwnProperty("Image")?!1:new Promise(r=>{const n=new Image;n.onload=()=>{r(!0)},n.onerror=()=>{r(!1)},n.src=e})}}function Ae(e,t){return e?e.endsWith("/")?e.slice(0,-1):e:t}function ze({uri:e,gatewayUrls:t}){const r=Dt.test(e);if(r)return{uri:e,isOnChain:!0,isEncoded:r};const n=Ae(t==null?void 0:t.ipfs,"https://ipfs.io"),s=Ae(t==null?void 0:t.arweave,"https://arweave.net"),a=e.match(Ft),{protocol:i,subpath:u,target:d,subtarget:c=""}=(a==null?void 0:a.groups)||{},l=i==="ipns:/"||u==="ipns/",f=i==="ipfs:/"||u==="ipfs/"||qt.test(e);if(e.startsWith("http")&&!l&&!f){let g=e;return t!=null&&t.arweave&&(g=e.replace(/https:\/\/arweave.net/g,t==null?void 0:t.arweave)),{uri:g,isOnChain:!1,isEncoded:!1}}if((l||f)&&d)return{uri:`${n}/${l?"ipns":"ipfs"}/${d}${c}`,isOnChain:!1,isEncoded:!1};if(i==="ar:/"&&d)return{uri:`${s}/${d}${c||""}`,isOnChain:!1,isEncoded:!1};let p=e.replace(Ht,"");if(p.startsWith("<svg")&&(p=`data:image/svg+xml;base64,${btoa(p)}`),p.startsWith("data:")||p.startsWith("{"))return{uri:p,isOnChain:!0,isEncoded:!1};throw new fe({uri:e})}function Fe(e){if(typeof e!="object"||!("image"in e)&&!("image_url"in e)&&!("image_data"in e))throw new $t({data:e});return e.image||e.image_url||e.image_data}async function Mt({gatewayUrls:e,uri:t}){try{const r=await fetch(t).then(s=>s.json());return await le({gatewayUrls:e,uri:Fe(r)})}catch{throw new fe({uri:t})}}async function le({gatewayUrls:e,uri:t}){const{uri:r,isOnChain:n}=ze({uri:t,gatewayUrls:e});if(n||await Ot(r))return r;throw new fe({uri:t})}function _t(e){let t=e;t.startsWith("did:nft:")&&(t=t.replace("did:nft:","").replace(/_/g,"/"));const[r,n,s]=t.split("/"),[a,i]=r.split(":"),[u,d]=n.split(":");if(!a||a.toLowerCase()!=="eip155")throw new G({reason:"Only EIP-155 supported"});if(!i)throw new G({reason:"Chain ID not found"});if(!d)throw new G({reason:"Contract address not found"});if(!s)throw new G({reason:"Token ID not found"});if(!u)throw new G({reason:"ERC namespace not found"});return{chainID:Number.parseInt(i),namespace:u.toLowerCase(),contractAddress:d,tokenID:s}}async function jt(e,{nft:t}){if(t.namespace==="erc721")return o.readContract(e,{address:t.contractAddress,abi:[{name:"tokenURI",type:"function",stateMutability:"view",inputs:[{name:"tokenId",type:"uint256"}],outputs:[{name:"",type:"string"}]}],functionName:"tokenURI",args:[BigInt(t.tokenID)]});if(t.namespace==="erc1155")return o.readContract(e,{address:t.contractAddress,abi:[{name:"uri",type:"function",stateMutability:"view",inputs:[{name:"_id",type:"uint256"}],outputs:[{name:"",type:"string"}]}],functionName:"uri",args:[BigInt(t.tokenID)]});throw new zt({namespace:t.namespace})}async function Lt(e,{gatewayUrls:t,record:r}){return/eip155:/i.test(r)?Ut(e,{gatewayUrls:t,record:r}):le({uri:r,gatewayUrls:t})}async function Ut(e,{gatewayUrls:t,record:r}){const n=_t(r),s=await jt(e,{nft:n}),{uri:a,isOnChain:i,isEncoded:u}=ze({uri:s,gatewayUrls:t});if(i&&(a.includes("data:application/json;base64,")||a.startsWith("{"))){const c=u?atob(a.replace("data:application/json;base64,","")):a,l=JSON.parse(c);return le({uri:Fe(l),gatewayUrls:t})}let d=n.tokenID;return n.namespace==="erc1155"&&(d=d.replace("0x","").padStart(64,"0")),Mt({gatewayUrls:t,uri:a.replace(/(?:0x)?{id}/,d)})}async function qe(e,{blockNumber:t,blockTag:r,name:n,key:s,gatewayUrls:a,strict:i,universalResolverAddress:u}){let d=u;if(!d){if(!e.chain)throw new Error("client chain not configured. universalResolverAddress is required.");d=o.getChainContractAddress({blockNumber:t,chain:e.chain,contract:"ensUniversalResolver"})}try{const c={address:d,abi:o.universalResolverResolveAbi,functionName:"resolve",args:[h.toHex(Q(n)),o.encodeFunctionData({abi:o.textResolverAbi,functionName:"text",args:[K(n),s]})],blockNumber:t,blockTag:r},l=o.getAction(e,o.readContract,"readContract"),f=a?await l({...c,args:[...c.args,a]}):await l(c);if(f[0]==="0x")return null;const p=o.decodeFunctionResult({abi:o.textResolverAbi,functionName:"text",data:f[0]});return p===""?null:p}catch(c){if(i)throw c;if(de(c,"resolve"))return null;throw c}}async function Gt(e,{blockNumber:t,blockTag:r,assetGatewayUrls:n,name:s,gatewayUrls:a,strict:i,universalResolverAddress:u}){const d=await o.getAction(e,qe,"getEnsText")({blockNumber:t,blockTag:r,key:"avatar",name:s,universalResolverAddress:u,gatewayUrls:a,strict:i});if(!d)return null;try{return await Lt(e,{record:d,gatewayUrls:n})}catch{return null}}async function Vt(e,{address:t,blockNumber:r,blockTag:n,gatewayUrls:s,strict:a,universalResolverAddress:i}){let u=i;if(!u){if(!e.chain)throw new Error("client chain not configured. universalResolverAddress is required.");u=o.getChainContractAddress({blockNumber:r,chain:e.chain,contract:"ensUniversalResolver"})}const d=`${t.toLowerCase().substring(2)}.addr.reverse`;try{const c={address:u,abi:o.universalResolverReverseAbi,functionName:"reverse",args:[h.toHex(Q(d))],blockNumber:r,blockTag:n},l=o.getAction(e,o.readContract,"readContract"),[f,p]=s?await l({...c,args:[...c.args,s]}):await l(c);return t.toLowerCase()!==p.toLowerCase()?null:f}catch(c){if(a)throw c;if(de(c,"reverse"))return null;throw c}}async function Wt(e,{blockNumber:t,blockTag:r,name:n,universalResolverAddress:s}){let a=s;if(!a){if(!e.chain)throw new Error("client chain not configured. universalResolverAddress is required.");a=o.getChainContractAddress({blockNumber:t,chain:e.chain,contract:"ensUniversalResolver"})}const[i]=await o.getAction(e,o.readContract,"readContract")({address:a,abi:[{inputs:[{type:"bytes"}],name:"findResolver",outputs:[{type:"address"},{type:"bytes32"}],stateMutability:"view",type:"function"}],functionName:"findResolver",args:[h.toHex(Q(n))],blockNumber:t,blockTag:r});return i}async function De(e,t){var E,m,w;const{account:r=e.account,blockNumber:n,blockTag:s="latest",blobs:a,data:i,gas:u,gasPrice:d,maxFeePerBlobGas:c,maxFeePerGas:l,maxPriorityFeePerGas:f,to:p,value:g,...b}=t,y=r?o.parseAccount(r):void 0;try{o.assertRequest(t);const T=(n?h.numberToHex(n):void 0)||s,I=(w=(m=(E=e.chain)==null?void 0:E.formatters)==null?void 0:m.transactionRequest)==null?void 0:w.format,A=(I||o.formatTransactionRequest)({...o.extract(b,{format:I}),from:y==null?void 0:y.address,blobs:a,data:i,gas:u,gasPrice:d,maxFeePerBlobGas:c,maxFeePerGas:l,maxPriorityFeePerGas:f,to:p,value:g}),k=await e.request({method:"eth_createAccessList",params:[A,T]});return{accessList:k.accessList,gasUsed:BigInt(k.gasUsed)}}catch(v){throw o.getCallError(v,{...t,account:y,chain:e.chain})}}async function Zt(e){const t=o.createFilterRequestScope(e,{method:"eth_newBlockFilter"}),r=await e.request({method:"eth_newBlockFilter"});return{id:r,request:t(r),type:"block"}}async function He(e,{address:t,args:r,event:n,events:s,fromBlock:a,strict:i,toBlock:u}={}){const d=s??(n?[n]:void 0),c=o.createFilterRequestScope(e,{method:"eth_newFilter"});let l=[];d&&(l=[d.flatMap(g=>o.encodeEventTopics({abi:[g],eventName:g.name,args:r}))],n&&(l=l[0]));const f=await e.request({method:"eth_newFilter",params:[{address:t,fromBlock:typeof a=="bigint"?h.numberToHex(a):a,toBlock:typeof u=="bigint"?h.numberToHex(u):u,...l.length?{topics:l}:{}}]});return{abi:d,args:r,eventName:n?n.name:void 0,fromBlock:a,id:f,request:c(f),strict:!!i,toBlock:u,type:"event"}}async function Oe(e){const t=o.createFilterRequestScope(e,{method:"eth_newPendingTransactionFilter"}),r=await e.request({method:"eth_newPendingTransactionFilter"});return{id:r,request:t(r),type:"transaction"}}async function Jt(e){const t=await e.request({method:"eth_blobBaseFee"});return BigInt(t)}async function Kt(e,{blockHash:t,blockNumber:r,blockTag:n="latest"}={}){const s=r!==void 0?h.numberToHex(r):void 0;let a;return t?a=await e.request({method:"eth_getBlockTransactionCountByHash",params:[t]},{dedupe:!0}):a=await e.request({method:"eth_getBlockTransactionCountByNumber",params:[s||n]},{dedupe:!!s}),h.hexToNumber(a)}async function Te(e,{address:t,blockNumber:r,blockTag:n="latest"}){const s=r!==void 0?h.numberToHex(r):void 0,a=await e.request({method:"eth_getCode",params:[t,s||n]},{dedupe:!!s});if(a!=="0x")return a}function Qt(e){var t;return{baseFeePerGas:e.baseFeePerGas.map(r=>BigInt(r)),gasUsedRatio:e.gasUsedRatio,oldestBlock:BigInt(e.oldestBlock),reward:(t=e.reward)==null?void 0:t.map(r=>r.map(n=>BigInt(n)))}}async function Xt(e,{blockCount:t,blockNumber:r,blockTag:n="latest",rewardPercentiles:s}){const a=r?h.numberToHex(r):void 0,i=await e.request({method:"eth_feeHistory",params:[h.numberToHex(t),a||n,s]},{dedupe:!!a});return Qt(i)}async function Yt(e,{filter:t}){const r=t.strict??!1,s=(await t.request({method:"eth_getFilterLogs",params:[t.id]})).map(a=>h.formatLog(a));return t.abi?o.parseEventLogs({abi:t.abi,logs:s,strict:r}):s}class er extends h.BaseError{constructor({domain:t}){super(`Invalid domain "${o.stringify(t)}".`,{metaMessages:["Must be a valid EIP-712 domain."]})}}class tr extends h.BaseError{constructor({primaryType:t,types:r}){super(`Invalid primary type \`${t}\` must be one of \`${JSON.stringify(Object.keys(r))}\`.`,{docsPath:"/api/glossary/Errors#typeddatainvalidprimarytypeerror",metaMessages:["Check that the primary type is a key in `types`."]})}}class rr extends h.BaseError{constructor({type:t}){super(`Struct type "${t}" is invalid.`,{metaMessages:["Struct type must not be a Solidity type."],name:"InvalidStructTypeError"})}}function nr(e){const{domain:t={},message:r,primaryType:n}=e,s={EIP712Domain:Ge({domain:t}),...e.types};Ue({domain:t,message:r,primaryType:n,types:s});const a=["0x1901"];return t&&a.push(sr({domain:t,types:s})),n!=="EIP712Domain"&&a.push(Me({data:r,primaryType:n,types:s})),h.keccak256(h.concat(a))}function sr({domain:e,types:t}){return Me({data:e,primaryType:"EIP712Domain",types:t})}function Me({data:e,primaryType:t,types:r}){const n=_e({data:e,primaryType:t,types:r});return h.keccak256(n)}function _e({data:e,primaryType:t,types:r}){const n=[{type:"bytes32"}],s=[ar({primaryType:t,types:r})];for(const a of r[t]){const[i,u]=Le({types:r,name:a.name,type:a.type,value:e[a.name]});n.push(i),s.push(u)}return o.encodeAbiParameters(n,s)}function ar({primaryType:e,types:t}){const r=h.toHex(or({primaryType:e,types:t}));return h.keccak256(r)}function or({primaryType:e,types:t}){let r="";const n=je({primaryType:e,types:t});n.delete(e);const s=[e,...Array.from(n).sort()];for(const a of s)r+=`${a}(${t[a].map(({name:i,type:u})=>`${u} ${i}`).join(",")})`;return r}function je({primaryType:e,types:t},r=new Set){const n=e.match(/^\w*/u),s=n==null?void 0:n[0];if(r.has(s)||t[s]===void 0)return r;r.add(s);for(const a of t[s])je({primaryType:a.type,types:t},r);return r}function Le({types:e,name:t,type:r,value:n}){if(e[r]!==void 0)return[{type:"bytes32"},h.keccak256(_e({data:n,primaryType:r,types:e}))];if(r==="bytes")return n=`0x${(n.length%2?"0":"")+n.slice(2)}`,[{type:"bytes32"},h.keccak256(n)];if(r==="string")return[{type:"bytes32"},h.keccak256(h.toHex(n))];if(r.lastIndexOf("]")===r.length-1){const s=r.slice(0,r.lastIndexOf("[")),a=n.map(i=>Le({name:t,type:s,types:e,value:i}));return[{type:"bytes32"},h.keccak256(o.encodeAbiParameters(a.map(([i])=>i),a.map(([,i])=>i)))]}return[{type:r},n]}function ir(e){const{domain:t,message:r,primaryType:n,types:s}=e,a=(d,c)=>{const l={...c};for(const f of d){const{name:p,type:g}=f;g==="address"&&(l[p]=l[p].toLowerCase())}return l},i=s.EIP712Domain?t?a(s.EIP712Domain,t):{}:{},u=(()=>{if(n!=="EIP712Domain")return a(s[n],r)})();return o.stringify({domain:i,message:u,primaryType:n,types:s})}function Ue(e){const{domain:t,message:r,primaryType:n,types:s}=e,a=(i,u)=>{for(const d of i){const{name:c,type:l}=d,f=u[c],p=l.match(o.integerRegex);if(p&&(typeof f=="number"||typeof f=="bigint")){const[y,E,m]=p;h.numberToHex(f,{signed:E==="int",size:Number.parseInt(m)/8})}if(l==="address"&&typeof f=="string"&&!h.isAddress(f))throw new h.InvalidAddressError({address:f});const g=l.match(o.bytesRegex);if(g){const[y,E]=g;if(E&&h.size(f)!==Number.parseInt(E))throw new o.BytesSizeMismatchError({expectedSize:Number.parseInt(E),givenSize:h.size(f)})}const b=s[l];b&&(cr(l),a(b,f))}};if(s.EIP712Domain&&t){if(typeof t!="object")throw new er({domain:t});a(s.EIP712Domain,t)}if(n!=="EIP712Domain")if(s[n])a(s[n],r);else throw new tr({primaryType:n,types:s})}function Ge({domain:e}){return[typeof(e==null?void 0:e.name)=="string"&&{name:"name",type:"string"},(e==null?void 0:e.version)&&{name:"version",type:"string"},(typeof(e==null?void 0:e.chainId)=="number"||typeof(e==null?void 0:e.chainId)=="bigint")&&{name:"chainId",type:"uint256"},(e==null?void 0:e.verifyingContract)&&{name:"verifyingContract",type:"address"},(e==null?void 0:e.salt)&&{name:"salt",type:"bytes32"}].filter(Boolean)}function cr(e){if(e==="address"||e==="bool"||e==="string"||e.startsWith("bytes")||e.startsWith("uint")||e.startsWith("int"))throw new rr({type:e})}const ur=`Ethereum Signed Message:
|
|
2
|
-
`;function dr(e){const t=typeof e=="string"?h.stringToHex(e):typeof e.raw=="string"?e.raw:h.bytesToHex(e.raw),r=h.stringToHex(`${ur}${h.size(t)}`);return h.concat([r,t])}function Ve(e,t){return h.keccak256(dr(e),t)}const We="0x6492649264926492649264926492649264926492649264926492649264926492";function fr(e){return h.sliceHex(e,-32)===We}function lr(e){const{address:t,data:r,signature:n,to:s="hex"}=e,a=h.concatHex([o.encodeAbiParameters([{type:"address"},{type:"bytes"},{type:"bytes"}],[t,r,n]),We]);return s==="hex"?a:h.hexToBytes(a)}function pr(e){return e.map(t=>({...t,value:BigInt(t.value)}))}function hr(e){return{...e,balance:e.balance?BigInt(e.balance):void 0,nonce:e.nonce?h.hexToNumber(e.nonce):void 0,storageProof:e.storageProof?pr(e.storageProof):void 0}}async function gr(e,{address:t,blockNumber:r,blockTag:n,storageKeys:s}){const a=n??"latest",i=r!==void 0?h.numberToHex(r):void 0,u=await e.request({method:"eth_getProof",params:[t,s,i||a]});return hr(u)}async function mr(e,{address:t,blockNumber:r,blockTag:n="latest",slot:s}){const a=r!==void 0?h.numberToHex(r):void 0;return await e.request({method:"eth_getStorageAt",params:[t,s,a||n]})}async function pe(e,{blockHash:t,blockNumber:r,blockTag:n,hash:s,index:a}){var l,f,p;const i=n||"latest",u=r!==void 0?h.numberToHex(r):void 0;let d=null;if(s?d=await e.request({method:"eth_getTransactionByHash",params:[s]},{dedupe:!0}):t?d=await e.request({method:"eth_getTransactionByBlockHashAndIndex",params:[t,h.numberToHex(a)]},{dedupe:!0}):d=await e.request({method:"eth_getTransactionByBlockNumberAndIndex",params:[u||i,h.numberToHex(a)]},{dedupe:!!u}),!d)throw new h.TransactionNotFoundError({blockHash:t,blockNumber:r,blockTag:i,hash:s,index:a});return(((p=(f=(l=e.chain)==null?void 0:l.formatters)==null?void 0:f.transaction)==null?void 0:p.format)||h.formatTransaction)(d)}async function br(e,{hash:t,transactionReceipt:r}){const[n,s]=await Promise.all([o.getAction(e,o.getBlockNumber,"getBlockNumber")({}),t?o.getAction(e,pe,"getTransaction")({hash:t}):void 0]),a=(r==null?void 0:r.blockNumber)||(s==null?void 0:s.blockNumber);return a?n-a+1n:0n}async function ne(e,{hash:t}){var s,a,i;const r=await e.request({method:"eth_getTransactionReceipt",params:[t]},{dedupe:!0});if(!r)throw new h.TransactionReceiptNotFoundError({hash:t});return(((i=(a=(s=e.chain)==null?void 0:s.formatters)==null?void 0:a.transactionReceipt)==null?void 0:i.format)||h.formatTransactionReceipt)(r)}async function yr(e,t){var E;const{allowFailure:r=!0,batchSize:n,blockNumber:s,blockTag:a,multicallAddress:i,stateOverride:u}=t,d=t.contracts,c=n??(typeof((E=e.batch)==null?void 0:E.multicall)=="object"&&e.batch.multicall.batchSize||1024);let l=i;if(!l){if(!e.chain)throw new Error("client chain not configured. multicallAddress is required.");l=o.getChainContractAddress({blockNumber:s,chain:e.chain,contract:"multicall3"})}const f=[[]];let p=0,g=0;for(let m=0;m<d.length;m++){const{abi:w,address:v,args:
|
|
3
|
-
`);super(u,r.cause?{cause:r.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:`ox@${vr()}`}),this.cause=r.cause,this.details=n,this.docs=i,this.docsPath=s,this.shortMessage=t}walk(t){return Ze(this,t)}}function Ze(e,t){return t!=null&&t(e)?e:e&&typeof e=="object"&&"cause"in e&&e.cause?Ze(e.cause,t):t?null:e}const xr="#__bigint";function Er(e,t,r){return JSON.stringify(e,(n,s)=>typeof s=="bigint"?s.toString()+xr:s,r)}function Ar(e,t){if(Ce(e)>t)throw new $r({givenSize:Ce(e),maxSize:t})}const O={zero:48,nine:57,A:65,F:70,a:97,f:102};function Re(e){if(e>=O.zero&&e<=O.nine)return e-O.zero;if(e>=O.A&&e<=O.F)return e-(O.A-10);if(e>=O.a&&e<=O.f)return e-(O.a-10)}function Tr(e,t={}){const{dir:r,size:n=32}=t;if(n===0)return e;if(e.length>n)throw new zr({size:e.length,targetSize:n,type:"Bytes"});const s=new Uint8Array(n);for(let a=0;a<n;a++){const i=r==="right";s[i?a:n-a-1]=e[i?a:e.length-a-1]}return s}function he(e,t){if(F(e)>t)throw new Or({givenSize:F(e),maxSize:t})}function Rr(e,t){if(typeof t=="number"&&t>0&&t>F(e)-1)throw new Ye({offset:t,position:"start",size:F(e)})}function Cr(e,t,r){if(typeof t=="number"&&typeof r=="number"&&F(e)!==r-t)throw new Ye({offset:r,position:"end",size:F(e)})}function Je(e,t={}){const{dir:r,size:n=32}=t;if(n===0)return e;const s=e.replace("0x","");if(s.length>n*2)throw new Mr({size:Math.ceil(s.length/2),targetSize:n,type:"Hex"});return`0x${s[r==="right"?"padEnd":"padStart"](n*2,"0")}`}const Ir=new TextEncoder;function Pr(e){return e instanceof Uint8Array?e:typeof e=="string"?Br(e):kr(e)}function kr(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function Br(e,t={}){const{size:r}=t;let n=e;r&&(he(e,r),n=_(e,r));let s=n.slice(2);s.length%2&&(s=`0${s}`);const a=s.length/2,i=new Uint8Array(a);for(let u=0,d=0;u<a;u++){const c=Re(s.charCodeAt(d++)),l=Re(s.charCodeAt(d++));if(c===void 0||l===void 0)throw new B(`Invalid byte sequence ("${s[d-2]}${s[d-1]}" in "${s}").`);i[u]=c*16+l}return i}function Nr(e,t={}){const{size:r}=t,n=Ir.encode(e);return typeof r=="number"?(Ar(n,r),Sr(n,r)):n}function Sr(e,t){return Tr(e,{dir:"right",size:t})}function Ce(e){return e.length}let $r=class extends B{constructor({givenSize:t,maxSize:r}){super(`Size cannot exceed \`${r}\` bytes. Given size: \`${t}\` bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeOverflowError"})}},zr=class extends B{constructor({size:t,targetSize:r,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\`${t}\`) exceeds padding size (\`${r}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeExceedsPaddingSizeError"})}};const Fr=new TextEncoder,qr=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Dr(e,t={}){const{strict:r=!1}=t;if(!e)throw new Ie(e);if(typeof e!="string")throw new Ie(e);if(r&&!/^0x[0-9a-fA-F]*$/.test(e))throw new Pe(e);if(!e.startsWith("0x"))throw new Pe(e)}function H(...e){return`0x${e.reduce((t,r)=>t+r.replace("0x",""),"")}`}function Ke(e,t={}){const r=`0x${Number(e)}`;return typeof t.size=="number"?(he(r,t.size),M(r,t.size)):r}function Qe(e,t={}){let r="";for(let s=0;s<e.length;s++)r+=qr[e[s]];const n=`0x${r}`;return typeof t.size=="number"?(he(n,t.size),_(n,t.size)):n}function z(e,t={}){const{signed:r,size:n}=t,s=BigInt(e);let a;n?r?a=(1n<<BigInt(n)*8n-1n)-1n:a=2n**(BigInt(n)*8n)-1n:typeof e=="number"&&(a=BigInt(Number.MAX_SAFE_INTEGER));const i=typeof a=="bigint"&&r?-a-1n:0;if(a&&s>a||s<i){const c=typeof e=="bigint"?"n":"";throw new Xe({max:a?`${a}${c}`:void 0,min:`${i}${c}`,signed:r,size:n,value:`${e}${c}`})}const d=`0x${(r&&s<0?(1n<<BigInt(n*8))+BigInt(s):s).toString(16)}`;return n?M(d,n):d}function ge(e,t={}){return Qe(Fr.encode(e),t)}function M(e,t){return Je(e,{dir:"left",size:t})}function _(e,t){return Je(e,{dir:"right",size:t})}function me(e,t,r,n={}){const{strict:s}=n;Rr(e,t);const a=`0x${e.replace("0x","").slice((t??0)*2,(r??e.length)*2)}`;return s&&Cr(a,t,r),a}function F(e){return Math.ceil((e.length-2)/2)}function Hr(e,t={}){const{strict:r=!1}=t;try{return Dr(e,{strict:r}),!0}catch{return!1}}class Xe extends B{constructor({max:t,min:r,signed:n,size:s,value:a}){super(`Number \`${a}\` is not in safe${s?` ${s*8}-bit`:""}${n?" signed":" unsigned"} integer range ${t?`(\`${r}\` to \`${t}\`)`:`(above \`${r}\`)`}`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.IntegerOutOfRangeError"})}}class Ie extends B{constructor(t){super(`Value \`${typeof t=="object"?Er(t):t}\` of type \`${typeof t}\` is an invalid hex type.`,{metaMessages:['Hex types must be represented as `"0x${string}"`.']}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.InvalidHexTypeError"})}}class Pe extends B{constructor(t){super(`Value \`${t}\` is an invalid hex value.`,{metaMessages:['Hex values must start with `"0x"` and contain only hexadecimal characters (0-9, a-f, A-F).']}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.InvalidHexValueError"})}}class Or extends B{constructor({givenSize:t,maxSize:r}){super(`Size cannot exceed \`${r}\` bytes. Given size: \`${t}\` bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeOverflowError"})}}class Ye extends B{constructor({offset:t,position:r,size:n}){super(`Slice ${r==="start"?"starting":"ending"} at offset \`${t}\` is out-of-bounds (size: \`${n}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SliceOffsetOutOfBoundsError"})}}class Mr extends B{constructor({size:t,targetSize:r,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\`${t}\`) exceeds padding size (\`${r}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeExceedsPaddingSizeError"})}}function _r(e){return{address:e.address,amount:z(e.amount),index:z(e.index),validatorIndex:z(e.validatorIndex)}}function jr(e){return{...typeof e.baseFeePerGas=="bigint"&&{baseFeePerGas:z(e.baseFeePerGas)},...typeof e.blobBaseFee=="bigint"&&{blobBaseFee:z(e.blobBaseFee)},...typeof e.feeRecipient=="string"&&{feeRecipient:e.feeRecipient},...typeof e.gasLimit=="bigint"&&{gasLimit:z(e.gasLimit)},...typeof e.number=="bigint"&&{number:z(e.number)},...typeof e.prevRandao=="bigint"&&{prevRandao:z(e.prevRandao)},...typeof e.time=="bigint"&&{time:z(e.time)},...e.withdrawals&&{withdrawals:e.withdrawals.map(_r)}}}async function se(e,t){const{blockNumber:r,blockTag:n="latest",blocks:s,returnFullTransactions:a,traceTransfers:i,validation:u}=t;try{const d=[];for(const p of s){const g=p.blockOverrides?jr(p.blockOverrides):void 0,b=p.calls.map(E=>{const m=E,w=m.account?o.parseAccount(m.account):void 0,v={...m,data:m.abi?o.encodeFunctionData(m):m.data,from:m.from??(w==null?void 0:w.address)};return o.assertRequest(v),o.formatTransactionRequest(v)}),y=p.stateOverrides?o.serializeStateOverride(p.stateOverrides):void 0;d.push({blockOverrides:g,calls:b,stateOverrides:y})}const l=(r?h.numberToHex(r):void 0)||n;return(await e.request({method:"eth_simulateV1",params:[{blockStateCalls:d,returnFullTransactions:a,traceTransfers:i,validation:u},l]})).map((p,g)=>({...h.formatBlock(p),calls:p.calls.map((b,y)=>{var N,C;const{abi:E,args:m,functionName:w,to:v}=s[g].calls[y],T=((N=b.error)==null?void 0:N.data)??b.returnData,I=BigInt(b.gasUsed),R=(C=b.logs)==null?void 0:C.map(S=>h.formatLog(S)),A=b.status==="0x1"?"success":"failure",k=E&&A==="success"?o.decodeFunctionResult({abi:E,data:T,functionName:w}):null,P=(()=>{var q;if(A==="success")return;let S;if(((q=b.error)==null?void 0:q.data)==="0x"?S=new o.AbiDecodingZeroDataError:b.error&&(S=new o.RawContractError(b.error)),!!S)return o.getContractError(S,{abi:E??[],address:v,args:m,functionName:w??"<unknown>"})})();return{data:T,gasUsed:I,logs:R,status:A,...A==="success"?{result:k}:{error:P}}})}))}catch(d){const c=d,l=o.getNodeError(c,{});throw l instanceof h.UnknownNodeError?c:l}}function et(e,t={}){const{as:r=typeof e=="string"?"Hex":"Bytes"}=t,n=h.keccak_256(Pr(e));return r==="Bytes"?n:Qe(n)}class Lr extends Map{constructor(t){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=t}get(t){const r=super.get(t);return super.has(t)&&r!==void 0&&(this.delete(t),super.set(t,r)),r}set(t,r){if(super.set(t,r),this.maxSize&&this.size>this.maxSize){const n=this.keys().next().value;n&&this.delete(n)}return this}}const Ur={checksum:new Lr(8192)},ee=Ur.checksum,Gr=/^0x[a-fA-F0-9]{40}$/;function X(e,t={}){const{strict:r=!0}=t;if(!Gr.test(e))throw new ke({address:e,cause:new Wr});if(r){if(e.toLowerCase()===e)return;if(Vr(e)!==e)throw new ke({address:e,cause:new Zr})}}function Vr(e){if(ee.has(e))return ee.get(e);X(e,{strict:!1});const t=e.substring(2).toLowerCase(),r=et(Nr(t),{as:"Bytes"}),n=t.split("");for(let a=0;a<40;a+=2)r[a>>1]>>4>=8&&n[a]&&(n[a]=n[a].toUpperCase()),(r[a>>1]&15)>=8&&n[a+1]&&(n[a+1]=n[a+1].toUpperCase());const s=`0x${n.join("")}`;return ee.set(e,s),s}function ae(e,t={}){const{strict:r=!0}=t??{};try{return X(e,{strict:r}),!0}catch{return!1}}class ke extends B{constructor({address:t,cause:r}){super(`Address "${t}" is invalid.`,{cause:r}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidAddressError"})}}class Wr extends B{constructor(){super("Address is not a 20 byte (40 hexadecimal character) value."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidInputError"})}}class Zr extends B{constructor(){super("Address does not match its checksum counterpart."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidChecksumError"})}}function oe(e){let t=!0,r="",n=0,s="",a=!1;for(let i=0;i<e.length;i++){const u=e[i];if(["(",")",","].includes(u)&&(t=!0),u==="("&&n++,u===")"&&n--,!!t){if(n===0){if(u===" "&&["event","function","error",""].includes(s))s="";else if(s+=u,u===")"){a=!0;break}continue}if(u===" "){e[i-1]!==","&&r!==","&&r!==",("&&(r="",t=!1);continue}s+=u,r+=u}}if(!a)throw new B("Unable to normalize signature.");return s}function ie(e,t){const r=typeof e,n=t.type;switch(n){case"address":return ae(e,{strict:!1});case"bool":return r==="boolean";case"function":return r==="string";case"string":return r==="string";default:return n==="tuple"&&"components"in t?Object.values(t.components).every((s,a)=>ie(Object.values(e)[a],s)):/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(n)?r==="number"||r==="bigint":/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(n)?r==="string"||e instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\[[0-9]{0,}\])+$/.test(n)?Array.isArray(e)&&e.every(s=>ie(s,{...t,type:n.replace(/(\[[0-9]{0,}\])$/,"")})):!1}}function tt(e,t,r){for(const n in e){const s=e[n],a=t[n];if(s.type==="tuple"&&a.type==="tuple"&&"components"in s&&"components"in a)return tt(s.components,a.components,r[n]);const i=[s.type,a.type];if(i.includes("address")&&i.includes("bytes20")?!0:i.includes("address")&&i.includes("string")?ae(r[n],{strict:!1}):i.includes("address")&&i.includes("bytes")?ae(r[n],{strict:!1}):!1)return i}}function rt(e,t={}){const{prepare:r=!0}=t,n=Array.isArray(e)||typeof e=="string"?xe(e):e;return{...n,...r?{hash:L(n)}:{}}}function Jr(e,t,r){const{args:n=[],prepare:s=!0}=r??{},a=Hr(t,{strict:!1}),i=e.filter(c=>a?c.type==="function"||c.type==="error"?nt(c)===me(t,0,4):c.type==="event"?L(c)===t:!1:"name"in c&&c.name===t);if(i.length===0)throw new ce({name:t});if(i.length===1)return{...i[0],...s?{hash:L(i[0])}:{}};let u;for(const c of i){if(!("inputs"in c))continue;if(!n||n.length===0){if(!c.inputs||c.inputs.length===0)return{...c,...s?{hash:L(c)}:{}};continue}if(!c.inputs||c.inputs.length===0||c.inputs.length!==n.length)continue;if(n.every((f,p)=>{const g="inputs"in c&&c.inputs[p];return g?ie(f,g):!1})){if(u&&"inputs"in u&&u.inputs){const f=tt(c.inputs,u.inputs,n);if(f)throw new Qr({abiItem:c,type:f[0]},{abiItem:u,type:f[1]})}u=c}}const d=(()=>{if(u)return u;const[c,...l]=i;return{...c,overloads:l}})();if(!d)throw new ce({name:t});return{...d,...s?{hash:L(d)}:{}}}function nt(e){return me(L(e),0,4)}function Kr(e){const t=typeof e=="string"?e:o.formatAbiItem(e);return oe(t)}function L(e){return typeof e!="string"&&"hash"in e&&e.hash?e.hash:et(ge(Kr(e)))}class Qr extends B{constructor(t,r){super("Found ambiguous types in overloaded ABI Items.",{metaMessages:[`\`${t.type}\` in \`${oe(o.formatAbiItem(t.abiItem))}\`, and`,`\`${r.type}\` in \`${oe(o.formatAbiItem(r.abiItem))}\``,"","These types encode differently and cannot be distinguished at runtime.","Remove one of the ambiguous items in the ABI."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiItem.AmbiguityError"})}}class ce extends B{constructor({name:t,data:r,type:n="item"}){const s=t?` with name "${t}"`:r?` with data "${r}"`:"";super(`ABI ${n}${s} not found.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiItem.NotFoundError"})}}const Xr=/^(.*)\[([0-9]*)\]$/,Yr=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,st=/^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/;function en({checksumAddress:e,parameters:t,values:r}){const n=[];for(let s=0;s<t.length;s++)n.push(be({checksumAddress:e,parameter:t[s],value:r[s]}));return n}function be({checksumAddress:e=!1,parameter:t,value:r}){const n=t,s=un(n.type);if(s){const[a,i]=s;return rn(r,{checksumAddress:e,length:a,parameter:{...n,type:i}})}if(n.type==="tuple")return cn(r,{checksumAddress:e,parameter:n});if(n.type==="address")return tn(r,{checksum:e});if(n.type==="bool")return sn(r);if(n.type.startsWith("uint")||n.type.startsWith("int")){const a=n.type.startsWith("int"),[,,i="256"]=st.exec(n.type)??[];return an(r,{signed:a,size:Number(i)})}if(n.type.startsWith("bytes"))return nn(r,{type:n.type});if(n.type==="string")return on(r);throw new ct(n.type)}function ye(e){let t=0;for(let a=0;a<e.length;a++){const{dynamic:i,encoded:u}=e[a];i?t+=32:t+=F(u)}const r=[],n=[];let s=0;for(let a=0;a<e.length;a++){const{dynamic:i,encoded:u}=e[a];i?(r.push(z(t+s,{size:32})),n.push(u),s+=F(u)):r.push(u)}return H(...r,...n)}function tn(e,t){const{checksum:r=!1}=t;return X(e,{strict:r}),{dynamic:!1,encoded:M(e.toLowerCase())}}function rn(e,t){const{checksumAddress:r,length:n,parameter:s}=t,a=n===null;if(!Array.isArray(e))throw new fn(e);if(!a&&e.length!==n)throw new dn({expectedLength:n,givenLength:e.length,type:`${s.type}[${n}]`});let i=!1;const u=[];for(let d=0;d<e.length;d++){const c=be({checksumAddress:r,parameter:s,value:e[d]});c.dynamic&&(i=!0),u.push(c)}if(a||i){const d=ye(u);if(a){const c=z(u.length,{size:32});return{dynamic:!0,encoded:u.length>0?H(c,d):c}}if(i)return{dynamic:!0,encoded:d}}return{dynamic:!1,encoded:H(...u.map(({encoded:d})=>d))}}function nn(e,{type:t}){const[,r]=t.split("bytes"),n=F(e);if(!r){let s=e;return n%32!==0&&(s=_(s,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:H(M(z(n,{size:32})),s)}}if(n!==Number.parseInt(r))throw new ot({expectedSize:Number.parseInt(r),value:e});return{dynamic:!1,encoded:_(e)}}function sn(e){if(typeof e!="boolean")throw new B(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:M(Ke(e))}}function an(e,{signed:t,size:r}){if(typeof r=="number"){const n=2n**(BigInt(r)-(t?1n:0n))-1n,s=t?-n-1n:0n;if(e>n||e<s)throw new Xe({max:n.toString(),min:s.toString(),signed:t,size:r/8,value:e.toString()})}return{dynamic:!1,encoded:z(e,{size:32,signed:t})}}function on(e){const t=ge(e),r=Math.ceil(F(t)/32),n=[];for(let s=0;s<r;s++)n.push(_(me(t,s*32,(s+1)*32)));return{dynamic:!0,encoded:H(_(z(F(t),{size:32})),...n)}}function cn(e,t){const{checksumAddress:r,parameter:n}=t;let s=!1;const a=[];for(let i=0;i<n.components.length;i++){const u=n.components[i],d=Array.isArray(e)?i:u.name,c=be({checksumAddress:r,parameter:u,value:e[d]});a.push(c),c.dynamic&&(s=!0)}return{dynamic:s,encoded:s?ye(a):H(...a.map(({encoded:i})=>i))}}function un(e){const t=e.match(/^(.*)\[(\d+)?\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function at(e,t,r){const{checksumAddress:n=!1}={};if(e.length!==t.length)throw new it({expectedLength:e.length,givenLength:t.length});const s=en({checksumAddress:n,parameters:e,values:t}),a=ye(s);return a.length===0?"0x":a}function ue(e,t){if(e.length!==t.length)throw new it({expectedLength:e.length,givenLength:t.length});const r=[];for(let n=0;n<e.length;n++){const s=e[n],a=t[n];r.push(ue.encode(s,a))}return H(...r)}(function(e){function t(r,n,s=!1){if(r==="address"){const d=n;return X(d),M(d.toLowerCase(),s?32:0)}if(r==="string")return ge(n);if(r==="bytes")return n;if(r==="bool")return M(Ke(n),s?32:1);const a=r.match(st);if(a){const[d,c,l="256"]=a,f=Number.parseInt(l)/8;return z(n,{size:s?32:f,signed:c==="int"})}const i=r.match(Yr);if(i){const[d,c]=i;if(Number.parseInt(c)!==(n.length-2)/2)throw new ot({expectedSize:Number.parseInt(c),value:n});return _(n,s?32:0)}const u=r.match(Xr);if(u&&Array.isArray(n)){const[d,c]=u,l=[];for(let f=0;f<n.length;f++)l.push(t(c,n[f],!0));return l.length===0?"0x":H(...l)}throw new ct(r)}e.encode=t})(ue||(ue={}));class dn extends B{constructor({expectedLength:t,givenLength:r,type:n}){super(`Array length mismatch for type \`${n}\`. Expected: \`${t}\`. Given: \`${r}\`.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.ArrayLengthMismatchError"})}}class ot extends B{constructor({expectedSize:t,value:r}){super(`Size of bytes "${r}" (bytes${F(r)}) does not match expected size (bytes${t}).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.BytesSizeMismatchError"})}}class it extends B{constructor({expectedLength:t,givenLength:r}){super(["ABI encoding parameters/values length mismatch.",`Expected length (parameters): ${t}`,`Given length (values): ${r}`].join(`
|
|
4
|
-
`)),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.LengthMismatchError"})}}class fn extends B{constructor(t){super(`Value \`${t}\` is not a valid array.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidArrayError"})}}class ct extends B{constructor(t){super(`Type \`${t}\` is not a valid ABI Type.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidTypeError"})}}function ln(e,t){var s;const{bytecode:r,args:n}=t;return H(r,(s=e.inputs)!=null&&s.length&&(n!=null&&n.length)?at(e.inputs,n):"0x")}function pn(e){return rt(e)}function hn(e,...t){const{overloads:r}=e,n=r?gn([e,...r],e.name,{args:t[0]}):e,s=mn(n),a=t.length>0?at(n.inputs,t[0]):void 0;return a?H(s,a):s}function j(e,t={}){return rt(e,t)}function gn(e,t,r){const n=Jr(e,t,r);if(n.type!=="function")throw new ce({name:t,type:"function"});return n}function mn(e){return nt(e)}const bn="0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",D="0x0000000000000000000000000000000000000000",yn="0x6080604052348015600e575f80fd5b5061016d8061001c5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f8b2cb4f1461002d575b5f80fd5b610047600480360381019061004291906100db565b61005d565b604051610054919061011e565b60405180910390f35b5f8173ffffffffffffffffffffffffffffffffffffffff16319050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100aa82610081565b9050919050565b6100ba816100a0565b81146100c4575f80fd5b50565b5f813590506100d5816100b1565b92915050565b5f602082840312156100f0576100ef61007d565b5b5f6100fd848285016100c7565b91505092915050565b5f819050919050565b61011881610106565b82525050565b5f6020820190506101315f83018461010f565b9291505056fea26469706673582212203b9fe929fe995c7cf9887f0bdba8a36dd78e8b73f149b17d2d9ad7cd09d2dc6264736f6c634300081a0033";async function wn(e,t){const{blockNumber:r,blockTag:n,calls:s,stateOverrides:a,traceAssetChanges:i,traceTransfers:u,validation:d}=t,c=t.account?o.parseAccount(t.account):void 0;if(i&&!c)throw new h.BaseError("`account` is required when `traceAssetChanges` is true");const l=c?ln(pn("constructor(bytes, bytes)"),{bytecode:o.deploylessCallViaBytecodeBytecode,args:[yn,hn(j("function getBalance(address)"),[c.address])]}):void 0,f=i?await Promise.all(t.calls.map(async x=>{if(!x.data&&!x.abi)return;const{accessList:$}=await De(e,{account:c.address,...x,data:x.abi?o.encodeFunctionData(x):x.data});return $.map(({address:U,storageKeys:V})=>V.length>0?U:null)})).then(x=>x.flat().filter(Boolean)):[],p=a==null?void 0:a.map(x=>x.address===(c==null?void 0:c.address)?{...x,nonce:0}:x),g=await se(e,{blockNumber:r,blockTag:n,blocks:[...i?[{calls:[{data:l}],stateOverrides:a},{calls:f.map((x,$)=>({abi:[j("function balanceOf(address) returns (uint256)")],functionName:"balanceOf",args:[c.address],to:x,from:D,nonce:$})),stateOverrides:[{address:D,nonce:0}]}]:[],{calls:[...s,{}].map((x,$)=>({...x,from:c==null?void 0:c.address,nonce:$})),stateOverrides:p},...i?[{calls:[{data:l}]},{calls:f.map((x,$)=>({abi:[j("function balanceOf(address) returns (uint256)")],functionName:"balanceOf",args:[c.address],to:x,from:D,nonce:$})),stateOverrides:[{address:D,nonce:0}]},{calls:f.map((x,$)=>({to:x,abi:[j("function decimals() returns (uint256)")],functionName:"decimals",from:D,nonce:$})),stateOverrides:[{address:D,nonce:0}]},{calls:f.map((x,$)=>({to:x,abi:[j("function tokenURI(uint256) returns (string)")],functionName:"tokenURI",args:[0n],from:D,nonce:$})),stateOverrides:[{address:D,nonce:0}]},{calls:f.map((x,$)=>({to:x,abi:[j("function symbol() returns (string)")],functionName:"symbol",from:D,nonce:$})),stateOverrides:[{address:D,nonce:0}]}]:[]],traceTransfers:u,validation:d}),b=i?g[2]:g[0],[y,E,,m,w,v,T,I]=i?g:[],{calls:R,...A}=b,k=R.slice(0,-1)??[],P=(y==null?void 0:y.calls)??[],N=(E==null?void 0:E.calls)??[],C=[...P,...N].map(x=>x.status==="success"?h.hexToBigInt(x.data):null),S=(m==null?void 0:m.calls)??[],q=(w==null?void 0:w.calls)??[],dt=[...S,...q].map(x=>x.status==="success"?h.hexToBigInt(x.data):null),ft=((v==null?void 0:v.calls)??[]).map(x=>x.status==="success"?x.result:null),lt=((I==null?void 0:I.calls)??[]).map(x=>x.status==="success"?x.result:null),pt=((T==null?void 0:T.calls)??[]).map(x=>x.status==="success"?x.result:null),Y=[];for(const[x,$]of dt.entries()){const U=C[x];if(typeof $!="bigint"||typeof U!="bigint")continue;const V=ft[x-1],ht=lt[x-1],gt=pt[x-1],ve=x===0?{address:bn,decimals:18,symbol:"ETH"}:{address:f[x-1],decimals:gt||V?Number(V??1):void 0,symbol:ht??void 0};Y.some(mt=>mt.token.address===ve.address)||Y.push({token:ve,value:{pre:U,post:$,diff:$-U}})}return{assetChanges:Y,block:A,results:k}}function vn({r:e,s:t,to:r="hex",v:n,yParity:s}){const a=(()=>{if(s===0||s===1)return s;if(n&&(n===27n||n===28n||n>=35n))return n%2n===0n?1:0;throw new Error("Invalid `v` or `yParity` value")})(),i=`0x${new bt.secp256k1.Signature(h.hexToBigInt(e),h.hexToBigInt(t)).toCompactHex()}${a===0?"1b":"1c"}`;return r==="hex"?i:h.hexToBytes(i)}async function we(e,t){var f,p,g;const{address:r,factory:n,factoryData:s,hash:a,signature:i,universalSignatureVerifierAddress:u=(g=(p=(f=e.chain)==null?void 0:f.contracts)==null?void 0:p.universalSignatureVerifier)==null?void 0:g.address,...d}=t,c=h.isHex(i)?i:typeof i=="object"&&"r"in i&&"s"in i?vn(i):h.bytesToHex(i),l=await(async()=>!n&&!s||fr(c)?c:lr({address:n,data:s,signature:c}))();try{const b=u?{to:u,data:o.encodeFunctionData({abi:o.universalSignatureValidatorAbi,functionName:"isValidSig",args:[r,a,l]}),...d}:{data:o.encodeDeployData({abi:o.universalSignatureValidatorAbi,args:[r,a,l],bytecode:o.universalSignatureValidatorByteCode}),...d},{data:y}=await o.getAction(e,o.call,"call")(b);return h.hexToBool(y??"0x0")}catch(b){try{if(o.isAddressEqual(h.getAddress(r),await o.recoverAddress({hash:a,signature:i})))return!0}catch{}if(b instanceof o.CallExecutionError)return!1;throw b}}async function xn(e,{address:t,message:r,factory:n,factoryData:s,signature:a,...i}){const u=Ve(r);return we(e,{address:t,factory:n,factoryData:s,hash:u,signature:a,...i})}async function En(e,t){const{address:r,factory:n,factoryData:s,signature:a,message:i,primaryType:u,types:d,domain:c,...l}=t,f=nr({message:i,primaryType:u,types:d,domain:c});return we(e,{address:r,factory:n,factoryData:s,hash:f,signature:a,...l})}function ut(e,{emitOnBegin:t=!1,emitMissed:r=!1,onBlockNumber:n,onError:s,poll:a,pollingInterval:i=e.pollingInterval}){const u=typeof a<"u"?a:!(e.transport.type==="webSocket"||e.transport.type==="fallback"&&e.transport.transports[0].config.type==="webSocket");let d;return u?(()=>{const f=o.stringify(["watchBlockNumber",e.uid,t,r,i]);return o.observe(f,{onBlockNumber:n,onError:s},p=>o.poll(async()=>{var g;try{const b=await o.getAction(e,o.getBlockNumber,"getBlockNumber")({cacheTime:0});if(d){if(b===d)return;if(b-d>1&&r)for(let y=d+1n;y<b;y++)p.onBlockNumber(y,d),d=y}(!d||b>d)&&(p.onBlockNumber(b,d),d=b)}catch(b){(g=p.onError)==null||g.call(p,b)}},{emitOnBegin:t,interval:i}))})():(()=>{const f=o.stringify(["watchBlockNumber",e.uid,t,r]);return o.observe(f,{onBlockNumber:n,onError:s},p=>{let g=!0,b=()=>g=!1;return(async()=>{try{const y=(()=>{if(e.transport.type==="fallback"){const m=e.transport.transports.find(w=>w.config.type==="webSocket");return m?m.value:e.transport}return e.transport})(),{unsubscribe:E}=await y.subscribe({params:["newHeads"],onData(m){var v;if(!g)return;const w=h.hexToBigInt((v=m.result)==null?void 0:v.number);p.onBlockNumber(w,d),d=w},onError(m){var w;(w=p.onError)==null||w.call(p,m)}});b=E,g||b()}catch(y){s==null||s(y)}})(),()=>b()})})()}async function An(e,{confirmations:t=1,hash:r,onReplaced:n,pollingInterval:s=e.pollingInterval,retryCount:a=6,retryDelay:i=({count:d})=>~~(1<<d)*200,timeout:u=18e4}){const d=o.stringify(["waitForTransactionReceipt",e.uid,r]);let c,l,f,p=!1;const{promise:g,resolve:b,reject:y}=o.withResolvers(),E=u?setTimeout(()=>y(new h.WaitForTransactionReceiptTimeoutError({hash:r})),u):void 0,m=o.observe(d,{onReplaced:n,resolve:b,reject:y},w=>{const v=o.getAction(e,ut,"watchBlockNumber")({emitMissed:!0,emitOnBegin:!0,poll:!0,pollingInterval:s,async onBlockNumber(T){const I=A=>{clearTimeout(E),v(),A(),m()};let R=T;if(!p)try{if(f){if(t>1&&(!f.blockNumber||R-f.blockNumber+1n<t))return;I(()=>w.resolve(f));return}if(c||(p=!0,await re(async()=>{c=await o.getAction(e,pe,"getTransaction")({hash:r}),c.blockNumber&&(R=c.blockNumber)},{delay:i,retryCount:a}),p=!1),f=await o.getAction(e,ne,"getTransactionReceipt")({hash:r}),t>1&&(!f.blockNumber||R-f.blockNumber+1n<t))return;I(()=>w.resolve(f))}catch(A){if(A instanceof h.TransactionNotFoundError||A instanceof h.TransactionReceiptNotFoundError){if(!c){p=!1;return}try{l=c,p=!0;const k=await re(()=>o.getAction(e,o.getBlock,"getBlock")({blockNumber:R,includeTransactions:!0}),{delay:i,retryCount:a,shouldRetry:({error:C})=>C instanceof o.BlockNotFoundError});p=!1;const P=k.transactions.find(({from:C,nonce:S})=>C===l.from&&S===l.nonce);if(!P||(f=await o.getAction(e,ne,"getTransactionReceipt")({hash:P.hash}),t>1&&(!f.blockNumber||R-f.blockNumber+1n<t)))return;let N="replaced";P.to===l.to&&P.value===l.value&&P.input===l.input?N="repriced":P.from===P.to&&P.value===0n&&(N="cancelled"),I(()=>{var C;(C=w.onReplaced)==null||C.call(w,{reason:N,replacedTransaction:l,transaction:P,transactionReceipt:f}),w.resolve(f)})}catch(k){I(()=>w.reject(k))}}else I(()=>w.reject(A))}}})});return g}function Tn(e,{blockTag:t="latest",emitMissed:r=!1,emitOnBegin:n=!1,onBlock:s,onError:a,includeTransactions:i,poll:u,pollingInterval:d=e.pollingInterval}){const c=typeof u<"u"?u:!(e.transport.type==="webSocket"||e.transport.type==="fallback"&&e.transport.transports[0].config.type==="webSocket"),l=i??!1;let f;return c?(()=>{const b=o.stringify(["watchBlocks",e.uid,t,r,n,l,d]);return o.observe(b,{onBlock:s,onError:a},y=>o.poll(async()=>{var E;try{const m=await o.getAction(e,o.getBlock,"getBlock")({blockTag:t,includeTransactions:l});if(m.number&&(f!=null&&f.number)){if(m.number===f.number)return;if(m.number-f.number>1&&r)for(let w=(f==null?void 0:f.number)+1n;w<m.number;w++){const v=await o.getAction(e,o.getBlock,"getBlock")({blockNumber:w,includeTransactions:l});y.onBlock(v,f),f=v}}(!(f!=null&&f.number)||t==="pending"&&!(m!=null&&m.number)||m.number&&m.number>f.number)&&(y.onBlock(m,f),f=m)}catch(m){(E=y.onError)==null||E.call(y,m)}},{emitOnBegin:n,interval:d}))})():(()=>{let b=!0,y=!0,E=()=>b=!1;return(async()=>{try{n&&o.getAction(e,o.getBlock,"getBlock")({blockTag:t,includeTransactions:l}).then(v=>{b&&y&&(s(v,void 0),y=!1)});const m=(()=>{if(e.transport.type==="fallback"){const v=e.transport.transports.find(T=>T.config.type==="webSocket");return v?v.value:e.transport}return e.transport})(),{unsubscribe:w}=await m.subscribe({params:["newHeads"],async onData(v){if(!b)return;const T=await o.getAction(e,o.getBlock,"getBlock")({blockNumber:v.blockNumber,includeTransactions:l}).catch(()=>{});b&&(s(T,f),y=!1,f=T)},onError(v){a==null||a(v)}});E=w,b||E()}catch(m){a==null||a(m)}})(),()=>E()})()}function Rn(e,{address:t,args:r,batch:n=!0,event:s,events:a,fromBlock:i,onError:u,onLogs:d,poll:c,pollingInterval:l=e.pollingInterval,strict:f}){const p=typeof c<"u"?c:typeof i=="bigint"?!0:!(e.transport.type==="webSocket"||e.transport.type==="fallback"&&e.transport.transports[0].config.type==="webSocket"),g=f??!1;return p?(()=>{const E=o.stringify(["watchEvent",t,r,n,e.uid,s,l,i]);return o.observe(E,{onLogs:d,onError:u},m=>{let w;i!==void 0&&(w=i-1n);let v,T=!1;const I=o.poll(async()=>{var R;if(!T){try{v=await o.getAction(e,He,"createEventFilter")({address:t,args:r,event:s,events:a,strict:g,fromBlock:i})}catch{}T=!0;return}try{let A;if(v)A=await o.getAction(e,o.getFilterChanges,"getFilterChanges")({filter:v});else{const k=await o.getAction(e,o.getBlockNumber,"getBlockNumber")({});w&&w!==k?A=await o.getAction(e,o.getLogs,"getLogs")({address:t,args:r,event:s,events:a,fromBlock:w+1n,toBlock:k}):A=[],w=k}if(A.length===0)return;if(n)m.onLogs(A);else for(const k of A)m.onLogs([k])}catch(A){v&&A instanceof o.InvalidInputRpcError&&(T=!1),(R=m.onError)==null||R.call(m,A)}},{emitOnBegin:!0,interval:l});return async()=>{v&&await o.getAction(e,o.uninstallFilter,"uninstallFilter")({filter:v}),I()}})})():(()=>{let E=!0,m=()=>E=!1;return(async()=>{try{const w=(()=>{if(e.transport.type==="fallback"){const R=e.transport.transports.find(A=>A.config.type==="webSocket");return R?R.value:e.transport}return e.transport})(),v=a??(s?[s]:void 0);let T=[];v&&(T=[v.flatMap(A=>o.encodeEventTopics({abi:[A],eventName:A.name,args:r}))],s&&(T=T[0]));const{unsubscribe:I}=await w.subscribe({params:["logs",{address:t,topics:T}],onData(R){var k;if(!E)return;const A=R.result;try{const{eventName:P,args:N}=o.decodeEventLog({abi:v??[],data:A.data,topics:A.topics,strict:g}),C=h.formatLog(A,{args:N,eventName:P});d([C])}catch(P){let N,C;if(P instanceof o.DecodeLogDataMismatch||P instanceof o.DecodeLogTopicsMismatch){if(f)return;N=P.abiItem.name,C=(k=P.abiItem.inputs)==null?void 0:k.some(q=>!("name"in q&&q.name))}const S=h.formatLog(A,{args:C?[]:{},eventName:N});d([S])}},onError(R){u==null||u(R)}});m=I,E||m()}catch(w){u==null||u(w)}})(),()=>m()})()}function Cn(e,{batch:t=!0,onError:r,onTransactions:n,poll:s,pollingInterval:a=e.pollingInterval}){return(typeof s<"u"?s:e.transport.type!=="webSocket")?(()=>{const c=o.stringify(["watchPendingTransactions",e.uid,t,a]);return o.observe(c,{onTransactions:n,onError:r},l=>{let f;const p=o.poll(async()=>{var g;try{if(!f)try{f=await o.getAction(e,Oe,"createPendingTransactionFilter")({});return}catch(y){throw p(),y}const b=await o.getAction(e,o.getFilterChanges,"getFilterChanges")({filter:f});if(b.length===0)return;if(t)l.onTransactions(b);else for(const y of b)l.onTransactions([y])}catch(b){(g=l.onError)==null||g.call(l,b)}},{emitOnBegin:!0,interval:a});return async()=>{f&&await o.getAction(e,o.uninstallFilter,"uninstallFilter")({filter:f}),p()}})})():(()=>{let c=!0,l=()=>c=!1;return(async()=>{try{const{unsubscribe:f}=await e.transport.subscribe({params:["newPendingTransactions"],onData(p){if(!c)return;const g=p.result;n([g])},onError(p){r==null||r(p)}});l=f,c||l()}catch(f){r==null||r(f)}})(),()=>l()})()}function In(e){var f,p,g;const{scheme:t,statement:r,...n}=((f=e.match(Pn))==null?void 0:f.groups)??{},{chainId:s,expirationTime:a,issuedAt:i,notBefore:u,requestId:d,...c}=((p=e.match(kn))==null?void 0:p.groups)??{},l=(g=e.split("Resources:")[1])==null?void 0:g.split(`
|
|
5
|
-
- `).slice(1);return{...n,...c,...s?{chainId:Number(s)}:{},...a?{expirationTime:new Date(a)}:{},...i?{issuedAt:new Date(i)}:{},...u?{notBefore:new Date(u)}:{},...d?{requestId:d}:{},...l?{resources:l}:{},...t?{scheme:t}:{},...r?{statement:r}:{}}}const Pn=/^(?:(?<scheme>[a-zA-Z][a-zA-Z0-9+-.]*):\/\/)?(?<domain>[a-zA-Z0-9+-.]*(?::[0-9]{1,5})?) (?:wants you to sign in with your Ethereum account:\n)(?<address>0x[a-fA-F0-9]{40})\n\n(?:(?<statement>.*)\n\n)?/,kn=/(?:URI: (?<uri>.+))\n(?:Version: (?<version>.+))\n(?:Chain ID: (?<chainId>\d+))\n(?:Nonce: (?<nonce>[a-zA-Z0-9]+))\n(?:Issued At: (?<issuedAt>.+))(?:\nExpiration Time: (?<expirationTime>.+))?(?:\nNot Before: (?<notBefore>.+))?(?:\nRequest ID: (?<requestId>.+))?/;function Bn(e){const{address:t,domain:r,message:n,nonce:s,scheme:a,time:i=new Date}=e;if(r&&n.domain!==r||s&&n.nonce!==s||a&&n.scheme!==a||n.expirationTime&&i>=n.expirationTime||n.notBefore&&i<n.notBefore)return!1;try{if(!n.address||t&&!o.isAddressEqual(n.address,t))return!1}catch{return!1}return!0}async function Nn(e,t){const{address:r,domain:n,message:s,nonce:a,scheme:i,signature:u,time:d=new Date,...c}=t,l=In(s);if(!l.address||!Bn({address:r,domain:n,message:l,nonce:a,scheme:i,time:d}))return!1;const p=Ve(s);return we(e,{address:l.address,hash:p,signature:u,...c})}function Sn(e){return{call:t=>o.call(e,t),createAccessList:t=>De(e,t),createBlockFilter:()=>Zt(e),createContractEventFilter:t=>o.createContractEventFilter(e,t),createEventFilter:t=>He(e,t),createPendingTransactionFilter:()=>Oe(e),estimateContractGas:t=>o.estimateContractGas(e,t),estimateGas:t=>o.estimateGas(e,t),getBalance:t=>o.getBalance(e,t),getBlobBaseFee:()=>Jt(e),getBlock:t=>o.getBlock(e,t),getBlockNumber:t=>o.getBlockNumber(e,t),getBlockTransactionCount:t=>Kt(e,t),getBytecode:t=>Te(e,t),getChainId:()=>o.getChainId(e),getCode:t=>Te(e,t),getContractEvents:t=>o.getContractEvents(e,t),getEip712Domain:t=>wt(e,t),getEnsAddress:t=>St(e,t),getEnsAvatar:t=>Gt(e,t),getEnsName:t=>Vt(e,t),getEnsResolver:t=>Wt(e,t),getEnsText:t=>qe(e,t),getFeeHistory:t=>Xt(e,t),estimateFeesPerGas:t=>o.estimateFeesPerGas(e,t),getFilterChanges:t=>o.getFilterChanges(e,t),getFilterLogs:t=>Yt(e,t),getGasPrice:()=>o.getGasPrice(e),getLogs:t=>o.getLogs(e,t),getProof:t=>gr(e,t),estimateMaxPriorityFeePerGas:t=>o.estimateMaxPriorityFeePerGas(e,t),getStorageAt:t=>mr(e,t),getTransaction:t=>pe(e,t),getTransactionConfirmations:t=>br(e,t),getTransactionCount:t=>o.getTransactionCount(e,t),getTransactionReceipt:t=>ne(e,t),multicall:t=>yr(e,t),prepareTransactionRequest:t=>o.prepareTransactionRequest(e,t),readContract:t=>o.readContract(e,t),sendRawTransaction:t=>o.sendRawTransaction(e,t),simulate:t=>se(e,t),simulateBlocks:t=>se(e,t),simulateCalls:t=>wn(e,t),simulateContract:t=>o.simulateContract(e,t),verifyMessage:t=>xn(e,t),verifySiweMessage:t=>Nn(e,t),verifyTypedData:t=>En(e,t),uninstallFilter:t=>o.uninstallFilter(e,t),waitForTransactionReceipt:t=>An(e,t),watchBlocks:t=>Tn(e,t),watchBlockNumber:t=>ut(e,t),watchContractEvent:t=>o.watchContractEvent(e,t),watchEvent:t=>Rn(e,t),watchPendingTransactions:t=>Cn(e,t)}}function $n(e){const{key:t="public",name:r="Public Client"}=e;return Ne({...e,key:t,name:r,type:"publicClient"}).extend(Sn)}function zn(e,t){const{abi:r,args:n,bytecode:s,...a}=t,i=o.encodeDeployData({abi:r,args:n,bytecode:s});return o.sendTransaction(e,{...a,data:i})}async function Fn(e){var r;return((r=e.account)==null?void 0:r.type)==="local"?[e.account.address]:(await e.request({method:"eth_accounts"},{dedupe:!0})).map(n=>h.checksumAddress(n))}async function qn(e){return await e.request({method:"wallet_getPermissions"},{dedupe:!0})}async function Dn(e){return(await e.request({method:"eth_requestAccounts"},{dedupe:!0,retryCount:0})).map(r=>h.getAddress(r))}async function Hn(e,t){return e.request({method:"wallet_requestPermissions",params:[t]},{retryCount:0})}async function On(e,{account:t=e.account,message:r}){if(!t)throw new o.AccountNotFoundError({docsPath:"/docs/actions/wallet/signMessage"});const n=o.parseAccount(t);if(n.signMessage)return n.signMessage({message:r});const s=typeof r=="string"?h.stringToHex(r):r.raw instanceof Uint8Array?h.toHex(r.raw):r.raw;return e.request({method:"personal_sign",params:[s,n.address]},{retryCount:0})}async function Mn(e,t){var c,l,f,p;const{account:r=e.account,chain:n=e.chain,...s}=t;if(!r)throw new o.AccountNotFoundError({docsPath:"/docs/actions/wallet/signTransaction"});const a=o.parseAccount(r);o.assertRequest({account:a,...t});const i=await o.getAction(e,o.getChainId,"getChainId")({});n!==null&&o.assertCurrentChain({currentChainId:i,chain:n});const u=(n==null?void 0:n.formatters)||((c=e.chain)==null?void 0:c.formatters),d=((l=u==null?void 0:u.transactionRequest)==null?void 0:l.format)||o.formatTransactionRequest;return a.signTransaction?a.signTransaction({...s,chainId:i},{serializer:(p=(f=e.chain)==null?void 0:f.serializers)==null?void 0:p.transaction}):await e.request({method:"eth_signTransaction",params:[{...d(s),chainId:h.numberToHex(i),from:a.address}]},{retryCount:0})}async function _n(e,t){const{account:r=e.account,domain:n,message:s,primaryType:a}=t;if(!r)throw new o.AccountNotFoundError({docsPath:"/docs/actions/wallet/signTypedData"});const i=o.parseAccount(r),u={EIP712Domain:Ge({domain:n}),...t.types};if(Ue({domain:n,message:s,primaryType:a,types:u}),i.signTypedData)return i.signTypedData({domain:n,message:s,primaryType:a,types:u});const d=ir({domain:n,message:s,primaryType:a,types:u});return e.request({method:"eth_signTypedData_v4",params:[i.address,d]},{retryCount:0})}async function
|
|
6
|
-
//# sourceMappingURL=createWalletClient-
|
|
1
|
+
"use strict";const o=require("./writeContract-D5BxbWBy.cjs"),h=require("./constants-Bsa7cnXP.cjs"),bt=require("./secp256k1-BWuyf2aG.cjs");function xe(e){let t;if(typeof e=="string")t=o.parseSignature(e);else{const r=o.parseStructs(e),n=e.length;for(let s=0;s<n;s++){const a=e[s];if(!o.isStructSignature(a)){t=o.parseSignature(a,r);break}}}if(!t)throw new o.InvalidAbiItemError({signature:e});return t}class yt extends h.BaseError{constructor({address:t}){super(`No EIP-712 domain found on contract "${t}".`,{metaMessages:["Ensure that:",`- The contract is deployed at the address "${t}".`,"- `eip712Domain()` function exists on the contract.","- `eip712Domain()` function matches signature to ERC-5267 specification."],name:"Eip712DomainNotFoundError"})}}async function wt(e,t){const{address:r,factory:n,factoryData:s}=t;try{const[a,i,u,d,c,l,f]=await o.getAction(e,o.readContract,"readContract")({abi:vt,address:r,functionName:"eip712Domain",factory:n,factoryData:s});return{domain:{name:i,version:u,chainId:Number(d),verifyingContract:c,salt:l},extensions:f,fields:a}}catch(a){const i=a;throw i.name==="ContractFunctionExecutionError"&&i.cause.name==="ContractFunctionZeroDataError"?new yt({address:r}):i}}const vt=[{inputs:[],name:"eip712Domain",outputs:[{name:"fields",type:"bytes1"},{name:"name",type:"string"},{name:"version",type:"string"},{name:"chainId",type:"uint256"},{name:"verifyingContract",type:"address"},{name:"salt",type:"bytes32"},{name:"extensions",type:"uint256[]"}],stateMutability:"view",type:"function"}];async function xt(e,{chain:t}){const{id:r,name:n,nativeCurrency:s,rpcUrls:a,blockExplorers:i}=t;await e.request({method:"wallet_addEthereumChain",params:[{chainId:h.numberToHex(r),chainName:n,nativeCurrency:s,rpcUrls:a.default.http,blockExplorerUrls:i?Object.values(i).map(({url:u})=>u):void 0}]},{dedupe:!0,retryCount:0})}const te=256;let W=te,Z;function Be(e=11){if(!Z||W+e>te*2){Z="",W=0;for(let t=0;t<te;t++)Z+=(256+Math.random()*256|0).toString(16).substring(1)}return Z.substring(W,W+++e)}function Ne(e){const{batch:t,cacheTime:r=e.pollingInterval??4e3,ccipRead:n,key:s="base",name:a="Base Client",pollingInterval:i=4e3,type:u="base"}=e,d=e.chain,c=e.account?o.parseAccount(e.account):void 0,{config:l,request:f,value:p}=e.transport({chain:d,pollingInterval:i}),g={...l,...p},b={account:c,batch:t,cacheTime:r,ccipRead:n,chain:d,key:s,name:a,pollingInterval:i,request:f,transport:g,type:u,uid:Be()};function y(E){return m=>{const w=m(E);for(const A in b)delete w[A];const v={...E,...w};return Object.assign(v,{extend:y(v)})}}return Object.assign(b,{extend:y(b)})}const J=new h.LruMap(8192);function Et(e,{enabled:t=!0,id:r}){if(!t||!r)return e();if(J.get(r))return J.get(r);const n=e().finally(()=>J.delete(r));return J.set(r,n),n}function re(e,{delay:t=100,retryCount:r=2,shouldRetry:n=()=>!0}={}){return new Promise((s,a)=>{const i=async({count:u=0}={})=>{const d=async({error:c})=>{const l=typeof t=="function"?t({count:u,error:c}):t;l&&await o.wait(l),i({count:u+1})};try{const c=await e();s(c)}catch(c){if(u<r&&await n({count:u,error:c}))return d({error:c});a(c)}};i()})}function At(e,t={}){return async(r,n={})=>{var f;const{dedupe:s=!1,methods:a,retryDelay:i=150,retryCount:u=3,uid:d}={...t,...n},{method:c}=r;if((f=a==null?void 0:a.exclude)!=null&&f.includes(c))throw new o.MethodNotSupportedRpcError(new Error("method not supported"),{method:c});if(a!=null&&a.include&&!a.include.includes(c))throw new o.MethodNotSupportedRpcError(new Error("method not supported"),{method:c});const l=s?h.stringToHex(`${d}.${o.stringify(r)}`):void 0;return Et(()=>re(async()=>{try{return await e(r)}catch(p){const g=p;switch(g.code){case o.ParseRpcError.code:throw new o.ParseRpcError(g);case o.InvalidRequestRpcError.code:throw new o.InvalidRequestRpcError(g);case o.MethodNotFoundRpcError.code:throw new o.MethodNotFoundRpcError(g,{method:r.method});case o.InvalidParamsRpcError.code:throw new o.InvalidParamsRpcError(g);case o.InternalRpcError.code:throw new o.InternalRpcError(g);case o.InvalidInputRpcError.code:throw new o.InvalidInputRpcError(g);case o.ResourceNotFoundRpcError.code:throw new o.ResourceNotFoundRpcError(g);case o.ResourceUnavailableRpcError.code:throw new o.ResourceUnavailableRpcError(g);case o.TransactionRejectedRpcError.code:throw new o.TransactionRejectedRpcError(g);case o.MethodNotSupportedRpcError.code:throw new o.MethodNotSupportedRpcError(g,{method:r.method});case o.LimitExceededRpcError.code:throw new o.LimitExceededRpcError(g);case o.JsonRpcVersionUnsupportedError.code:throw new o.JsonRpcVersionUnsupportedError(g);case o.UserRejectedRequestError.code:throw new o.UserRejectedRequestError(g);case o.UnauthorizedProviderError.code:throw new o.UnauthorizedProviderError(g);case o.UnsupportedProviderMethodError.code:throw new o.UnsupportedProviderMethodError(g);case o.ProviderDisconnectedError.code:throw new o.ProviderDisconnectedError(g);case o.ChainDisconnectedError.code:throw new o.ChainDisconnectedError(g);case o.SwitchChainError.code:throw new o.SwitchChainError(g);case 5e3:throw new o.UserRejectedRequestError(g);default:throw p instanceof h.BaseError?p:new o.UnknownRpcError(g)}}},{delay:({count:p,error:g})=>{var b;if(g&&g instanceof o.HttpRequestError){const y=(b=g==null?void 0:g.headers)==null?void 0:b.get("Retry-After");if(y!=null&&y.match(/\d/))return Number.parseInt(y)*1e3}return~~(1<<p)*i},retryCount:u,shouldRetry:({error:p})=>Tt(p)}),{enabled:s,id:l})}}function Tt(e){return"code"in e&&typeof e.code=="number"?e.code===-1||e.code===o.LimitExceededRpcError.code||e.code===o.InternalRpcError.code:e instanceof o.HttpRequestError&&e.status?e.status===403||e.status===408||e.status===413||e.status===429||e.status===500||e.status===502||e.status===503||e.status===504:!0}function Se({key:e,methods:t,name:r,request:n,retryCount:s=3,retryDelay:a=150,timeout:i,type:u},d){const c=Be();return{config:{key:e,methods:t,name:r,request:n,retryCount:s,retryDelay:a,timeout:i,type:u},request:At(n,{methods:t,retryCount:s,retryDelay:a,uid:c}),value:d}}class Rt extends h.BaseError{constructor(){super("No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.",{docsPath:"/docs/clients/intro",name:"UrlRequiredError"})}}function Ct(e,{errorInstance:t=new Error("timed out"),timeout:r,signal:n}){return new Promise((s,a)=>{(async()=>{let i;try{const u=new AbortController;r>0&&(i=setTimeout(()=>{n&&u.abort()},r)),s(await e({signal:(u==null?void 0:u.signal)||null}))}catch(u){(u==null?void 0:u.name)==="AbortError"&&a(t),a(u)}finally{clearTimeout(i)}})()})}function It(){return{current:0,take(){return this.current++},reset(){this.current=0}}}const Ee=It();function Pt(e,t={}){return{async request(r){var f;const{body:n,onRequest:s=t.onRequest,onResponse:a=t.onResponse,timeout:i=t.timeout??1e4}=r,u={...t.fetchOptions??{},...r.fetchOptions??{}},{headers:d,method:c,signal:l}=u;try{const p=await Ct(async({signal:b})=>{const y={...u,body:Array.isArray(n)?o.stringify(n.map(v=>({jsonrpc:"2.0",id:v.id??Ee.take(),...v}))):o.stringify({jsonrpc:"2.0",id:n.id??Ee.take(),...n}),headers:{"Content-Type":"application/json",...d},method:c||"POST",signal:l||(i>0?b:null)},E=new Request(e,y),m=await(s==null?void 0:s(E,y))??{...y,url:e};return await fetch(m.url??e,m)},{errorInstance:new o.TimeoutError({body:n,url:e}),timeout:i,signal:!0});a&&await a(p);let g;if((f=p.headers.get("Content-Type"))!=null&&f.startsWith("application/json"))g=await p.json();else{g=await p.text();try{g=JSON.parse(g||"{}")}catch(b){if(p.ok)throw b;g={error:g}}}if(!p.ok)throw new o.HttpRequestError({body:n,details:o.stringify(g.error)||p.statusText,headers:p.headers,status:p.status,url:e});return g}catch(p){throw p instanceof o.HttpRequestError||p instanceof o.TimeoutError?p:new o.HttpRequestError({body:n,cause:p,url:e})}}}}function kt(e,t={}){const{batch:r,fetchOptions:n,key:s="http",methods:a,name:i="HTTP JSON-RPC",onFetchRequest:u,onFetchResponse:d,retryDelay:c,raw:l}=t;return({chain:f,retryCount:p,timeout:g})=>{const{batchSize:b=1e3,wait:y=0}=typeof r=="object"?r:{},E=t.retryCount??p,m=g??t.timeout??1e4,w=e||(f==null?void 0:f.rpcUrls.default.http[0]);if(!w)throw new Rt;const v=Pt(w,{fetchOptions:n,onRequest:u,onResponse:d,timeout:m});return Se({key:s,methods:a,name:i,async request({method:A,params:I}){const R={method:A,params:I},{schedule:T}=o.createBatchScheduler({id:w,wait:y,shouldSplitBatch(C){return C.length>b},fn:C=>v.request({body:C}),sort:(C,S)=>C.id-S.id}),k=async C=>r?T(C):[await v.request({body:C})],[{error:P,result:N}]=await k(R);if(l)return{error:P,result:N};if(P)throw new o.RpcRequestError({body:R,error:P,url:w});return N},retryCount:E,retryDelay:c,timeout:m,type:"http"},{fetchOptions:n,url:w})}}function de(e,t){var n,s,a,i,u,d;if(!(e instanceof h.BaseError))return!1;const r=e.walk(c=>c instanceof o.ContractFunctionRevertedError);return r instanceof o.ContractFunctionRevertedError?!!(((n=r.data)==null?void 0:n.errorName)==="ResolverNotFound"||((s=r.data)==null?void 0:s.errorName)==="ResolverWildcardNotSupported"||((a=r.data)==null?void 0:a.errorName)==="ResolverNotContract"||((i=r.data)==null?void 0:i.errorName)==="ResolverError"||((u=r.data)==null?void 0:u.errorName)==="HttpError"||(d=r.reason)!=null&&d.includes("Wildcard on non-extended resolvers is not supported")||t==="reverse"&&r.reason===o.panicReasons[50]):!1}function $e(e){if(e.length!==66||e.indexOf("[")!==0||e.indexOf("]")!==65)return null;const t=`0x${e.slice(1,65)}`;return h.isHex(t)?t:null}function K(e){let t=new Uint8Array(32).fill(0);if(!e)return h.bytesToHex(t);const r=e.split(".");for(let n=r.length-1;n>=0;n-=1){const s=$e(r[n]),a=s?h.toBytes$1(s):h.keccak256(h.stringToBytes(r[n]),"bytes");t=h.keccak256(h.concat([t,a]),"bytes")}return h.bytesToHex(t)}function Bt(e){return`[${e.slice(2)}]`}function Nt(e){const t=new Uint8Array(32).fill(0);return e?$e(e)||h.keccak256(h.stringToBytes(e)):h.bytesToHex(t)}function Q(e){const t=e.replace(/^\.|\.$/gm,"");if(t.length===0)return new Uint8Array(1);const r=new Uint8Array(h.stringToBytes(t).byteLength+2);let n=0;const s=t.split(".");for(let a=0;a<s.length;a++){let i=h.stringToBytes(s[a]);i.byteLength>255&&(i=h.stringToBytes(Bt(Nt(s[a])))),r[n]=i.length,r.set(i,n+1),n+=i.length+1}return r.byteLength!==n+1?r.slice(0,n+1):r}async function St(e,{blockNumber:t,blockTag:r,coinType:n,name:s,gatewayUrls:a,strict:i,universalResolverAddress:u}){let d=u;if(!d){if(!e.chain)throw new Error("client chain not configured. universalResolverAddress is required.");d=o.getChainContractAddress({blockNumber:t,chain:e.chain,contract:"ensUniversalResolver"})}try{const c=o.encodeFunctionData({abi:o.addressResolverAbi,functionName:"addr",...n!=null?{args:[K(s),BigInt(n)]}:{args:[K(s)]}}),l={address:d,abi:o.universalResolverResolveAbi,functionName:"resolve",args:[h.toHex(Q(s)),c],blockNumber:t,blockTag:r},f=o.getAction(e,o.readContract,"readContract"),p=a?await f({...l,args:[...l.args,a]}):await f(l);if(p[0]==="0x")return null;const g=o.decodeFunctionResult({abi:o.addressResolverAbi,args:n!=null?[K(s),BigInt(n)]:void 0,functionName:"addr",data:p[0]});return g==="0x"||h.trim(g)==="0x00"?null:g}catch(c){if(i)throw c;if(de(c,"resolve"))return null;throw c}}class $t extends h.BaseError{constructor({data:t}){super("Unable to extract image from metadata. The metadata may be malformed or invalid.",{metaMessages:["- Metadata must be a JSON object with at least an `image`, `image_url` or `image_data` property.","",`Provided data: ${JSON.stringify(t)}`],name:"EnsAvatarInvalidMetadataError"})}}class G extends h.BaseError{constructor({reason:t}){super(`ENS NFT avatar URI is invalid. ${t}`,{name:"EnsAvatarInvalidNftUriError"})}}class fe extends h.BaseError{constructor({uri:t}){super(`Unable to resolve ENS avatar URI "${t}". The URI may be malformed, invalid, or does not respond with a valid image.`,{name:"EnsAvatarUriResolutionError"})}}class zt extends h.BaseError{constructor({namespace:t}){super(`ENS NFT avatar namespace "${t}" is not supported. Must be "erc721" or "erc1155".`,{name:"EnsAvatarUnsupportedNamespaceError"})}}const Ft=/(?<protocol>https?:\/\/[^\/]*|ipfs:\/|ipns:\/|ar:\/)?(?<root>\/)?(?<subpath>ipfs\/|ipns\/)?(?<target>[\w\-.]+)(?<subtarget>\/.*)?/,qt=/^(Qm[1-9A-HJ-NP-Za-km-z]{44,}|b[A-Za-z2-7]{58,}|B[A-Z2-7]{58,}|z[1-9A-HJ-NP-Za-km-z]{48,}|F[0-9A-F]{50,})(\/(?<target>[\w\-.]+))?(?<subtarget>\/.*)?$/,Dt=/^data:([a-zA-Z\-/+]*);base64,([^"].*)/,Ht=/^data:([a-zA-Z\-/+]*)?(;[a-zA-Z0-9].*?)?(,)/;async function Ot(e){try{const t=await fetch(e,{method:"HEAD"});if(t.status===200){const r=t.headers.get("content-type");return r==null?void 0:r.startsWith("image/")}return!1}catch(t){return typeof t=="object"&&typeof t.response<"u"||!globalThis.hasOwnProperty("Image")?!1:new Promise(r=>{const n=new Image;n.onload=()=>{r(!0)},n.onerror=()=>{r(!1)},n.src=e})}}function Ae(e,t){return e?e.endsWith("/")?e.slice(0,-1):e:t}function ze({uri:e,gatewayUrls:t}){const r=Dt.test(e);if(r)return{uri:e,isOnChain:!0,isEncoded:r};const n=Ae(t==null?void 0:t.ipfs,"https://ipfs.io"),s=Ae(t==null?void 0:t.arweave,"https://arweave.net"),a=e.match(Ft),{protocol:i,subpath:u,target:d,subtarget:c=""}=(a==null?void 0:a.groups)||{},l=i==="ipns:/"||u==="ipns/",f=i==="ipfs:/"||u==="ipfs/"||qt.test(e);if(e.startsWith("http")&&!l&&!f){let g=e;return t!=null&&t.arweave&&(g=e.replace(/https:\/\/arweave.net/g,t==null?void 0:t.arweave)),{uri:g,isOnChain:!1,isEncoded:!1}}if((l||f)&&d)return{uri:`${n}/${l?"ipns":"ipfs"}/${d}${c}`,isOnChain:!1,isEncoded:!1};if(i==="ar:/"&&d)return{uri:`${s}/${d}${c||""}`,isOnChain:!1,isEncoded:!1};let p=e.replace(Ht,"");if(p.startsWith("<svg")&&(p=`data:image/svg+xml;base64,${btoa(p)}`),p.startsWith("data:")||p.startsWith("{"))return{uri:p,isOnChain:!0,isEncoded:!1};throw new fe({uri:e})}function Fe(e){if(typeof e!="object"||!("image"in e)&&!("image_url"in e)&&!("image_data"in e))throw new $t({data:e});return e.image||e.image_url||e.image_data}async function Mt({gatewayUrls:e,uri:t}){try{const r=await fetch(t).then(s=>s.json());return await le({gatewayUrls:e,uri:Fe(r)})}catch{throw new fe({uri:t})}}async function le({gatewayUrls:e,uri:t}){const{uri:r,isOnChain:n}=ze({uri:t,gatewayUrls:e});if(n||await Ot(r))return r;throw new fe({uri:t})}function _t(e){let t=e;t.startsWith("did:nft:")&&(t=t.replace("did:nft:","").replace(/_/g,"/"));const[r,n,s]=t.split("/"),[a,i]=r.split(":"),[u,d]=n.split(":");if(!a||a.toLowerCase()!=="eip155")throw new G({reason:"Only EIP-155 supported"});if(!i)throw new G({reason:"Chain ID not found"});if(!d)throw new G({reason:"Contract address not found"});if(!s)throw new G({reason:"Token ID not found"});if(!u)throw new G({reason:"ERC namespace not found"});return{chainID:Number.parseInt(i),namespace:u.toLowerCase(),contractAddress:d,tokenID:s}}async function Lt(e,{nft:t}){if(t.namespace==="erc721")return o.readContract(e,{address:t.contractAddress,abi:[{name:"tokenURI",type:"function",stateMutability:"view",inputs:[{name:"tokenId",type:"uint256"}],outputs:[{name:"",type:"string"}]}],functionName:"tokenURI",args:[BigInt(t.tokenID)]});if(t.namespace==="erc1155")return o.readContract(e,{address:t.contractAddress,abi:[{name:"uri",type:"function",stateMutability:"view",inputs:[{name:"_id",type:"uint256"}],outputs:[{name:"",type:"string"}]}],functionName:"uri",args:[BigInt(t.tokenID)]});throw new zt({namespace:t.namespace})}async function jt(e,{gatewayUrls:t,record:r}){return/eip155:/i.test(r)?Ut(e,{gatewayUrls:t,record:r}):le({uri:r,gatewayUrls:t})}async function Ut(e,{gatewayUrls:t,record:r}){const n=_t(r),s=await Lt(e,{nft:n}),{uri:a,isOnChain:i,isEncoded:u}=ze({uri:s,gatewayUrls:t});if(i&&(a.includes("data:application/json;base64,")||a.startsWith("{"))){const c=u?atob(a.replace("data:application/json;base64,","")):a,l=JSON.parse(c);return le({uri:Fe(l),gatewayUrls:t})}let d=n.tokenID;return n.namespace==="erc1155"&&(d=d.replace("0x","").padStart(64,"0")),Mt({gatewayUrls:t,uri:a.replace(/(?:0x)?{id}/,d)})}async function qe(e,{blockNumber:t,blockTag:r,name:n,key:s,gatewayUrls:a,strict:i,universalResolverAddress:u}){let d=u;if(!d){if(!e.chain)throw new Error("client chain not configured. universalResolverAddress is required.");d=o.getChainContractAddress({blockNumber:t,chain:e.chain,contract:"ensUniversalResolver"})}try{const c={address:d,abi:o.universalResolverResolveAbi,functionName:"resolve",args:[h.toHex(Q(n)),o.encodeFunctionData({abi:o.textResolverAbi,functionName:"text",args:[K(n),s]})],blockNumber:t,blockTag:r},l=o.getAction(e,o.readContract,"readContract"),f=a?await l({...c,args:[...c.args,a]}):await l(c);if(f[0]==="0x")return null;const p=o.decodeFunctionResult({abi:o.textResolverAbi,functionName:"text",data:f[0]});return p===""?null:p}catch(c){if(i)throw c;if(de(c,"resolve"))return null;throw c}}async function Gt(e,{blockNumber:t,blockTag:r,assetGatewayUrls:n,name:s,gatewayUrls:a,strict:i,universalResolverAddress:u}){const d=await o.getAction(e,qe,"getEnsText")({blockNumber:t,blockTag:r,key:"avatar",name:s,universalResolverAddress:u,gatewayUrls:a,strict:i});if(!d)return null;try{return await jt(e,{record:d,gatewayUrls:n})}catch{return null}}async function Vt(e,{address:t,blockNumber:r,blockTag:n,gatewayUrls:s,strict:a,universalResolverAddress:i}){let u=i;if(!u){if(!e.chain)throw new Error("client chain not configured. universalResolverAddress is required.");u=o.getChainContractAddress({blockNumber:r,chain:e.chain,contract:"ensUniversalResolver"})}const d=`${t.toLowerCase().substring(2)}.addr.reverse`;try{const c={address:u,abi:o.universalResolverReverseAbi,functionName:"reverse",args:[h.toHex(Q(d))],blockNumber:r,blockTag:n},l=o.getAction(e,o.readContract,"readContract"),[f,p]=s?await l({...c,args:[...c.args,s]}):await l(c);return t.toLowerCase()!==p.toLowerCase()?null:f}catch(c){if(a)throw c;if(de(c,"reverse"))return null;throw c}}async function Wt(e,{blockNumber:t,blockTag:r,name:n,universalResolverAddress:s}){let a=s;if(!a){if(!e.chain)throw new Error("client chain not configured. universalResolverAddress is required.");a=o.getChainContractAddress({blockNumber:t,chain:e.chain,contract:"ensUniversalResolver"})}const[i]=await o.getAction(e,o.readContract,"readContract")({address:a,abi:[{inputs:[{type:"bytes"}],name:"findResolver",outputs:[{type:"address"},{type:"bytes32"}],stateMutability:"view",type:"function"}],functionName:"findResolver",args:[h.toHex(Q(n))],blockNumber:t,blockTag:r});return i}async function De(e,t){var E,m,w;const{account:r=e.account,blockNumber:n,blockTag:s="latest",blobs:a,data:i,gas:u,gasPrice:d,maxFeePerBlobGas:c,maxFeePerGas:l,maxPriorityFeePerGas:f,to:p,value:g,...b}=t,y=r?o.parseAccount(r):void 0;try{o.assertRequest(t);const A=(n?h.numberToHex(n):void 0)||s,I=(w=(m=(E=e.chain)==null?void 0:E.formatters)==null?void 0:m.transactionRequest)==null?void 0:w.format,T=(I||o.formatTransactionRequest)({...o.extract(b,{format:I}),from:y==null?void 0:y.address,blobs:a,data:i,gas:u,gasPrice:d,maxFeePerBlobGas:c,maxFeePerGas:l,maxPriorityFeePerGas:f,to:p,value:g}),k=await e.request({method:"eth_createAccessList",params:[T,A]});return{accessList:k.accessList,gasUsed:BigInt(k.gasUsed)}}catch(v){throw o.getCallError(v,{...t,account:y,chain:e.chain})}}async function Zt(e){const t=o.createFilterRequestScope(e,{method:"eth_newBlockFilter"}),r=await e.request({method:"eth_newBlockFilter"});return{id:r,request:t(r),type:"block"}}async function He(e,{address:t,args:r,event:n,events:s,fromBlock:a,strict:i,toBlock:u}={}){const d=s??(n?[n]:void 0),c=o.createFilterRequestScope(e,{method:"eth_newFilter"});let l=[];d&&(l=[d.flatMap(g=>o.encodeEventTopics({abi:[g],eventName:g.name,args:r}))],n&&(l=l[0]));const f=await e.request({method:"eth_newFilter",params:[{address:t,fromBlock:typeof a=="bigint"?h.numberToHex(a):a,toBlock:typeof u=="bigint"?h.numberToHex(u):u,...l.length?{topics:l}:{}}]});return{abi:d,args:r,eventName:n?n.name:void 0,fromBlock:a,id:f,request:c(f),strict:!!i,toBlock:u,type:"event"}}async function Oe(e){const t=o.createFilterRequestScope(e,{method:"eth_newPendingTransactionFilter"}),r=await e.request({method:"eth_newPendingTransactionFilter"});return{id:r,request:t(r),type:"transaction"}}async function Jt(e){const t=await e.request({method:"eth_blobBaseFee"});return BigInt(t)}async function Kt(e,{blockHash:t,blockNumber:r,blockTag:n="latest"}={}){const s=r!==void 0?h.numberToHex(r):void 0;let a;return t?a=await e.request({method:"eth_getBlockTransactionCountByHash",params:[t]},{dedupe:!0}):a=await e.request({method:"eth_getBlockTransactionCountByNumber",params:[s||n]},{dedupe:!!s}),h.hexToNumber(a)}async function Te(e,{address:t,blockNumber:r,blockTag:n="latest"}){const s=r!==void 0?h.numberToHex(r):void 0,a=await e.request({method:"eth_getCode",params:[t,s||n]},{dedupe:!!s});if(a!=="0x")return a}function Qt(e){var t;return{baseFeePerGas:e.baseFeePerGas.map(r=>BigInt(r)),gasUsedRatio:e.gasUsedRatio,oldestBlock:BigInt(e.oldestBlock),reward:(t=e.reward)==null?void 0:t.map(r=>r.map(n=>BigInt(n)))}}async function Xt(e,{blockCount:t,blockNumber:r,blockTag:n="latest",rewardPercentiles:s}){const a=r?h.numberToHex(r):void 0,i=await e.request({method:"eth_feeHistory",params:[h.numberToHex(t),a||n,s]},{dedupe:!!a});return Qt(i)}async function Yt(e,{filter:t}){const r=t.strict??!1,s=(await t.request({method:"eth_getFilterLogs",params:[t.id]})).map(a=>h.formatLog(a));return t.abi?o.parseEventLogs({abi:t.abi,logs:s,strict:r}):s}class er extends h.BaseError{constructor({domain:t}){super(`Invalid domain "${o.stringify(t)}".`,{metaMessages:["Must be a valid EIP-712 domain."]})}}class tr extends h.BaseError{constructor({primaryType:t,types:r}){super(`Invalid primary type \`${t}\` must be one of \`${JSON.stringify(Object.keys(r))}\`.`,{docsPath:"/api/glossary/Errors#typeddatainvalidprimarytypeerror",metaMessages:["Check that the primary type is a key in `types`."]})}}class rr extends h.BaseError{constructor({type:t}){super(`Struct type "${t}" is invalid.`,{metaMessages:["Struct type must not be a Solidity type."],name:"InvalidStructTypeError"})}}function nr(e){const{domain:t={},message:r,primaryType:n}=e,s={EIP712Domain:Ge({domain:t}),...e.types};Ue({domain:t,message:r,primaryType:n,types:s});const a=["0x1901"];return t&&a.push(sr({domain:t,types:s})),n!=="EIP712Domain"&&a.push(Me({data:r,primaryType:n,types:s})),h.keccak256(h.concat(a))}function sr({domain:e,types:t}){return Me({data:e,primaryType:"EIP712Domain",types:t})}function Me({data:e,primaryType:t,types:r}){const n=_e({data:e,primaryType:t,types:r});return h.keccak256(n)}function _e({data:e,primaryType:t,types:r}){const n=[{type:"bytes32"}],s=[ar({primaryType:t,types:r})];for(const a of r[t]){const[i,u]=je({types:r,name:a.name,type:a.type,value:e[a.name]});n.push(i),s.push(u)}return o.encodeAbiParameters(n,s)}function ar({primaryType:e,types:t}){const r=h.toHex(or({primaryType:e,types:t}));return h.keccak256(r)}function or({primaryType:e,types:t}){let r="";const n=Le({primaryType:e,types:t});n.delete(e);const s=[e,...Array.from(n).sort()];for(const a of s)r+=`${a}(${t[a].map(({name:i,type:u})=>`${u} ${i}`).join(",")})`;return r}function Le({primaryType:e,types:t},r=new Set){const n=e.match(/^\w*/u),s=n==null?void 0:n[0];if(r.has(s)||t[s]===void 0)return r;r.add(s);for(const a of t[s])Le({primaryType:a.type,types:t},r);return r}function je({types:e,name:t,type:r,value:n}){if(e[r]!==void 0)return[{type:"bytes32"},h.keccak256(_e({data:n,primaryType:r,types:e}))];if(r==="bytes")return n=`0x${(n.length%2?"0":"")+n.slice(2)}`,[{type:"bytes32"},h.keccak256(n)];if(r==="string")return[{type:"bytes32"},h.keccak256(h.toHex(n))];if(r.lastIndexOf("]")===r.length-1){const s=r.slice(0,r.lastIndexOf("[")),a=n.map(i=>je({name:t,type:s,types:e,value:i}));return[{type:"bytes32"},h.keccak256(o.encodeAbiParameters(a.map(([i])=>i),a.map(([,i])=>i)))]}return[{type:r},n]}function ir(e){const{domain:t,message:r,primaryType:n,types:s}=e,a=(d,c)=>{const l={...c};for(const f of d){const{name:p,type:g}=f;g==="address"&&(l[p]=l[p].toLowerCase())}return l},i=s.EIP712Domain?t?a(s.EIP712Domain,t):{}:{},u=(()=>{if(n!=="EIP712Domain")return a(s[n],r)})();return o.stringify({domain:i,message:u,primaryType:n,types:s})}function Ue(e){const{domain:t,message:r,primaryType:n,types:s}=e,a=(i,u)=>{for(const d of i){const{name:c,type:l}=d,f=u[c],p=l.match(o.integerRegex);if(p&&(typeof f=="number"||typeof f=="bigint")){const[y,E,m]=p;h.numberToHex(f,{signed:E==="int",size:Number.parseInt(m)/8})}if(l==="address"&&typeof f=="string"&&!h.isAddress(f))throw new h.InvalidAddressError({address:f});const g=l.match(o.bytesRegex);if(g){const[y,E]=g;if(E&&h.size(f)!==Number.parseInt(E))throw new o.BytesSizeMismatchError({expectedSize:Number.parseInt(E),givenSize:h.size(f)})}const b=s[l];b&&(cr(l),a(b,f))}};if(s.EIP712Domain&&t){if(typeof t!="object")throw new er({domain:t});a(s.EIP712Domain,t)}if(n!=="EIP712Domain")if(s[n])a(s[n],r);else throw new tr({primaryType:n,types:s})}function Ge({domain:e}){return[typeof(e==null?void 0:e.name)=="string"&&{name:"name",type:"string"},(e==null?void 0:e.version)&&{name:"version",type:"string"},(typeof(e==null?void 0:e.chainId)=="number"||typeof(e==null?void 0:e.chainId)=="bigint")&&{name:"chainId",type:"uint256"},(e==null?void 0:e.verifyingContract)&&{name:"verifyingContract",type:"address"},(e==null?void 0:e.salt)&&{name:"salt",type:"bytes32"}].filter(Boolean)}function cr(e){if(e==="address"||e==="bool"||e==="string"||e.startsWith("bytes")||e.startsWith("uint")||e.startsWith("int"))throw new rr({type:e})}const ur=`Ethereum Signed Message:
|
|
2
|
+
`;function dr(e){const t=typeof e=="string"?h.stringToHex(e):typeof e.raw=="string"?e.raw:h.bytesToHex(e.raw),r=h.stringToHex(`${ur}${h.size(t)}`);return h.concat([r,t])}function Ve(e,t){return h.keccak256(dr(e),t)}const We="0x6492649264926492649264926492649264926492649264926492649264926492";function fr(e){return h.sliceHex(e,-32)===We}function lr(e){const{address:t,data:r,signature:n,to:s="hex"}=e,a=h.concatHex([o.encodeAbiParameters([{type:"address"},{type:"bytes"},{type:"bytes"}],[t,r,n]),We]);return s==="hex"?a:h.hexToBytes(a)}function pr(e){return e.map(t=>({...t,value:BigInt(t.value)}))}function hr(e){return{...e,balance:e.balance?BigInt(e.balance):void 0,nonce:e.nonce?h.hexToNumber(e.nonce):void 0,storageProof:e.storageProof?pr(e.storageProof):void 0}}async function gr(e,{address:t,blockNumber:r,blockTag:n,storageKeys:s}){const a=n??"latest",i=r!==void 0?h.numberToHex(r):void 0,u=await e.request({method:"eth_getProof",params:[t,s,i||a]});return hr(u)}async function mr(e,{address:t,blockNumber:r,blockTag:n="latest",slot:s}){const a=r!==void 0?h.numberToHex(r):void 0;return await e.request({method:"eth_getStorageAt",params:[t,s,a||n]})}async function pe(e,{blockHash:t,blockNumber:r,blockTag:n,hash:s,index:a}){var l,f,p;const i=n||"latest",u=r!==void 0?h.numberToHex(r):void 0;let d=null;if(s?d=await e.request({method:"eth_getTransactionByHash",params:[s]},{dedupe:!0}):t?d=await e.request({method:"eth_getTransactionByBlockHashAndIndex",params:[t,h.numberToHex(a)]},{dedupe:!0}):d=await e.request({method:"eth_getTransactionByBlockNumberAndIndex",params:[u||i,h.numberToHex(a)]},{dedupe:!!u}),!d)throw new h.TransactionNotFoundError({blockHash:t,blockNumber:r,blockTag:i,hash:s,index:a});return(((p=(f=(l=e.chain)==null?void 0:l.formatters)==null?void 0:f.transaction)==null?void 0:p.format)||h.formatTransaction)(d)}async function br(e,{hash:t,transactionReceipt:r}){const[n,s]=await Promise.all([o.getAction(e,o.getBlockNumber,"getBlockNumber")({}),t?o.getAction(e,pe,"getTransaction")({hash:t}):void 0]),a=(r==null?void 0:r.blockNumber)||(s==null?void 0:s.blockNumber);return a?n-a+1n:0n}async function ne(e,{hash:t}){var s,a,i;const r=await e.request({method:"eth_getTransactionReceipt",params:[t]},{dedupe:!0});if(!r)throw new h.TransactionReceiptNotFoundError({hash:t});return(((i=(a=(s=e.chain)==null?void 0:s.formatters)==null?void 0:a.transactionReceipt)==null?void 0:i.format)||h.formatTransactionReceipt)(r)}async function yr(e,t){var E;const{allowFailure:r=!0,batchSize:n,blockNumber:s,blockTag:a,multicallAddress:i,stateOverride:u}=t,d=t.contracts,c=n??(typeof((E=e.batch)==null?void 0:E.multicall)=="object"&&e.batch.multicall.batchSize||1024);let l=i;if(!l){if(!e.chain)throw new Error("client chain not configured. multicallAddress is required.");l=o.getChainContractAddress({blockNumber:s,chain:e.chain,contract:"multicall3"})}const f=[[]];let p=0,g=0;for(let m=0;m<d.length;m++){const{abi:w,address:v,args:A,functionName:I}=d[m];try{const R=o.encodeFunctionData({abi:w,args:A,functionName:I});g+=(R.length-2)/2,c>0&&g>c&&f[p].length>0&&(p++,g=(R.length-2)/2,f[p]=[]),f[p]=[...f[p],{allowFailure:!0,callData:R,target:v}]}catch(R){const T=o.getContractError(R,{abi:w,address:v,args:A,docsPath:"/docs/contract/multicall",functionName:I});if(!r)throw T;f[p]=[...f[p],{allowFailure:!0,callData:"0x",target:v}]}}const b=await Promise.allSettled(f.map(m=>o.getAction(e,o.readContract,"readContract")({abi:o.multicall3Abi,address:l,args:[m],blockNumber:s,blockTag:a,functionName:"aggregate3",stateOverride:u}))),y=[];for(let m=0;m<b.length;m++){const w=b[m];if(w.status==="rejected"){if(!r)throw w.reason;for(let A=0;A<f[m].length;A++)y.push({status:"failure",error:w.reason,result:void 0});continue}const v=w.value;for(let A=0;A<v.length;A++){const{returnData:I,success:R}=v[A],{callData:T}=f[m][A],{abi:k,address:P,functionName:N,args:C}=d[y.length];try{if(T==="0x")throw new o.AbiDecodingZeroDataError;if(!R)throw new o.RawContractError({data:I});const S=o.decodeFunctionResult({abi:k,args:C,data:I,functionName:N});y.push(r?{result:S,status:"success"}:S)}catch(S){const q=o.getContractError(S,{abi:k,address:P,args:C,docsPath:"/docs/contract/multicall",functionName:N});if(!r)throw q;y.push({error:q,result:void 0,status:"failure"})}}}if(y.length!==d.length)throw new h.BaseError("multicall results mismatch");return y}const wr="0.1.1";function vr(){return wr}class B extends Error{constructor(t,r={}){const n=(()=>{var d;if(r.cause instanceof B){if(r.cause.details)return r.cause.details;if(r.cause.shortMessage)return r.cause.shortMessage}return(d=r.cause)!=null&&d.message?r.cause.message:r.details})(),s=r.cause instanceof B&&r.cause.docsPath||r.docsPath,i=`https://oxlib.sh${s??""}`,u=[t||"An error occurred.",...r.metaMessages?["",...r.metaMessages]:[],...n||s?["",n?`Details: ${n}`:void 0,s?`See: ${i}`:void 0]:[]].filter(d=>typeof d=="string").join(`
|
|
3
|
+
`);super(u,r.cause?{cause:r.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:`ox@${vr()}`}),this.cause=r.cause,this.details=n,this.docs=i,this.docsPath=s,this.shortMessage=t}walk(t){return Ze(this,t)}}function Ze(e,t){return t!=null&&t(e)?e:e&&typeof e=="object"&&"cause"in e&&e.cause?Ze(e.cause,t):t?null:e}const xr="#__bigint";function Er(e,t,r){return JSON.stringify(e,(n,s)=>typeof s=="bigint"?s.toString()+xr:s,r)}function Ar(e,t){if(Ce(e)>t)throw new $r({givenSize:Ce(e),maxSize:t})}const O={zero:48,nine:57,A:65,F:70,a:97,f:102};function Re(e){if(e>=O.zero&&e<=O.nine)return e-O.zero;if(e>=O.A&&e<=O.F)return e-(O.A-10);if(e>=O.a&&e<=O.f)return e-(O.a-10)}function Tr(e,t={}){const{dir:r,size:n=32}=t;if(n===0)return e;if(e.length>n)throw new zr({size:e.length,targetSize:n,type:"Bytes"});const s=new Uint8Array(n);for(let a=0;a<n;a++){const i=r==="right";s[i?a:n-a-1]=e[i?a:e.length-a-1]}return s}function he(e,t){if(F(e)>t)throw new Or({givenSize:F(e),maxSize:t})}function Rr(e,t){if(typeof t=="number"&&t>0&&t>F(e)-1)throw new Ye({offset:t,position:"start",size:F(e)})}function Cr(e,t,r){if(typeof t=="number"&&typeof r=="number"&&F(e)!==r-t)throw new Ye({offset:r,position:"end",size:F(e)})}function Je(e,t={}){const{dir:r,size:n=32}=t;if(n===0)return e;const s=e.replace("0x","");if(s.length>n*2)throw new Mr({size:Math.ceil(s.length/2),targetSize:n,type:"Hex"});return`0x${s[r==="right"?"padEnd":"padStart"](n*2,"0")}`}const Ir=new TextEncoder;function Pr(e){return e instanceof Uint8Array?e:typeof e=="string"?Br(e):kr(e)}function kr(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function Br(e,t={}){const{size:r}=t;let n=e;r&&(he(e,r),n=_(e,r));let s=n.slice(2);s.length%2&&(s=`0${s}`);const a=s.length/2,i=new Uint8Array(a);for(let u=0,d=0;u<a;u++){const c=Re(s.charCodeAt(d++)),l=Re(s.charCodeAt(d++));if(c===void 0||l===void 0)throw new B(`Invalid byte sequence ("${s[d-2]}${s[d-1]}" in "${s}").`);i[u]=c*16+l}return i}function Nr(e,t={}){const{size:r}=t,n=Ir.encode(e);return typeof r=="number"?(Ar(n,r),Sr(n,r)):n}function Sr(e,t){return Tr(e,{dir:"right",size:t})}function Ce(e){return e.length}let $r=class extends B{constructor({givenSize:t,maxSize:r}){super(`Size cannot exceed \`${r}\` bytes. Given size: \`${t}\` bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeOverflowError"})}},zr=class extends B{constructor({size:t,targetSize:r,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\`${t}\`) exceeds padding size (\`${r}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeExceedsPaddingSizeError"})}};const Fr=new TextEncoder,qr=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Dr(e,t={}){const{strict:r=!1}=t;if(!e)throw new Ie(e);if(typeof e!="string")throw new Ie(e);if(r&&!/^0x[0-9a-fA-F]*$/.test(e))throw new Pe(e);if(!e.startsWith("0x"))throw new Pe(e)}function H(...e){return`0x${e.reduce((t,r)=>t+r.replace("0x",""),"")}`}function Ke(e,t={}){const r=`0x${Number(e)}`;return typeof t.size=="number"?(he(r,t.size),M(r,t.size)):r}function Qe(e,t={}){let r="";for(let s=0;s<e.length;s++)r+=qr[e[s]];const n=`0x${r}`;return typeof t.size=="number"?(he(n,t.size),_(n,t.size)):n}function z(e,t={}){const{signed:r,size:n}=t,s=BigInt(e);let a;n?r?a=(1n<<BigInt(n)*8n-1n)-1n:a=2n**(BigInt(n)*8n)-1n:typeof e=="number"&&(a=BigInt(Number.MAX_SAFE_INTEGER));const i=typeof a=="bigint"&&r?-a-1n:0;if(a&&s>a||s<i){const c=typeof e=="bigint"?"n":"";throw new Xe({max:a?`${a}${c}`:void 0,min:`${i}${c}`,signed:r,size:n,value:`${e}${c}`})}const d=`0x${(r&&s<0?(1n<<BigInt(n*8))+BigInt(s):s).toString(16)}`;return n?M(d,n):d}function ge(e,t={}){return Qe(Fr.encode(e),t)}function M(e,t){return Je(e,{dir:"left",size:t})}function _(e,t){return Je(e,{dir:"right",size:t})}function me(e,t,r,n={}){const{strict:s}=n;Rr(e,t);const a=`0x${e.replace("0x","").slice((t??0)*2,(r??e.length)*2)}`;return s&&Cr(a,t,r),a}function F(e){return Math.ceil((e.length-2)/2)}function Hr(e,t={}){const{strict:r=!1}=t;try{return Dr(e,{strict:r}),!0}catch{return!1}}class Xe extends B{constructor({max:t,min:r,signed:n,size:s,value:a}){super(`Number \`${a}\` is not in safe${s?` ${s*8}-bit`:""}${n?" signed":" unsigned"} integer range ${t?`(\`${r}\` to \`${t}\`)`:`(above \`${r}\`)`}`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.IntegerOutOfRangeError"})}}class Ie extends B{constructor(t){super(`Value \`${typeof t=="object"?Er(t):t}\` of type \`${typeof t}\` is an invalid hex type.`,{metaMessages:['Hex types must be represented as `"0x${string}"`.']}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.InvalidHexTypeError"})}}class Pe extends B{constructor(t){super(`Value \`${t}\` is an invalid hex value.`,{metaMessages:['Hex values must start with `"0x"` and contain only hexadecimal characters (0-9, a-f, A-F).']}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.InvalidHexValueError"})}}class Or extends B{constructor({givenSize:t,maxSize:r}){super(`Size cannot exceed \`${r}\` bytes. Given size: \`${t}\` bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeOverflowError"})}}class Ye extends B{constructor({offset:t,position:r,size:n}){super(`Slice ${r==="start"?"starting":"ending"} at offset \`${t}\` is out-of-bounds (size: \`${n}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SliceOffsetOutOfBoundsError"})}}class Mr extends B{constructor({size:t,targetSize:r,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\`${t}\`) exceeds padding size (\`${r}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeExceedsPaddingSizeError"})}}function _r(e){return{address:e.address,amount:z(e.amount),index:z(e.index),validatorIndex:z(e.validatorIndex)}}function Lr(e){return{...typeof e.baseFeePerGas=="bigint"&&{baseFeePerGas:z(e.baseFeePerGas)},...typeof e.blobBaseFee=="bigint"&&{blobBaseFee:z(e.blobBaseFee)},...typeof e.feeRecipient=="string"&&{feeRecipient:e.feeRecipient},...typeof e.gasLimit=="bigint"&&{gasLimit:z(e.gasLimit)},...typeof e.number=="bigint"&&{number:z(e.number)},...typeof e.prevRandao=="bigint"&&{prevRandao:z(e.prevRandao)},...typeof e.time=="bigint"&&{time:z(e.time)},...e.withdrawals&&{withdrawals:e.withdrawals.map(_r)}}}async function se(e,t){const{blockNumber:r,blockTag:n="latest",blocks:s,returnFullTransactions:a,traceTransfers:i,validation:u}=t;try{const d=[];for(const p of s){const g=p.blockOverrides?Lr(p.blockOverrides):void 0,b=p.calls.map(E=>{const m=E,w=m.account?o.parseAccount(m.account):void 0,v={...m,data:m.abi?o.encodeFunctionData(m):m.data,from:m.from??(w==null?void 0:w.address)};return o.assertRequest(v),o.formatTransactionRequest(v)}),y=p.stateOverrides?o.serializeStateOverride(p.stateOverrides):void 0;d.push({blockOverrides:g,calls:b,stateOverrides:y})}const l=(r?h.numberToHex(r):void 0)||n;return(await e.request({method:"eth_simulateV1",params:[{blockStateCalls:d,returnFullTransactions:a,traceTransfers:i,validation:u},l]})).map((p,g)=>({...h.formatBlock(p),calls:p.calls.map((b,y)=>{var N,C;const{abi:E,args:m,functionName:w,to:v}=s[g].calls[y],A=((N=b.error)==null?void 0:N.data)??b.returnData,I=BigInt(b.gasUsed),R=(C=b.logs)==null?void 0:C.map(S=>h.formatLog(S)),T=b.status==="0x1"?"success":"failure",k=E&&T==="success"&&A!=="0x"?o.decodeFunctionResult({abi:E,data:A,functionName:w}):null,P=(()=>{var q;if(T==="success")return;let S;if(((q=b.error)==null?void 0:q.data)==="0x"?S=new o.AbiDecodingZeroDataError:b.error&&(S=new o.RawContractError(b.error)),!!S)return o.getContractError(S,{abi:E??[],address:v,args:m,functionName:w??"<unknown>"})})();return{data:A,gasUsed:I,logs:R,status:T,...T==="success"?{result:k}:{error:P}}})}))}catch(d){const c=d,l=o.getNodeError(c,{});throw l instanceof h.UnknownNodeError?c:l}}function et(e,t={}){const{as:r=typeof e=="string"?"Hex":"Bytes"}=t,n=h.keccak_256(Pr(e));return r==="Bytes"?n:Qe(n)}class jr extends Map{constructor(t){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=t}get(t){const r=super.get(t);return super.has(t)&&r!==void 0&&(this.delete(t),super.set(t,r)),r}set(t,r){if(super.set(t,r),this.maxSize&&this.size>this.maxSize){const n=this.keys().next().value;n&&this.delete(n)}return this}}const Ur={checksum:new jr(8192)},ee=Ur.checksum,Gr=/^0x[a-fA-F0-9]{40}$/;function X(e,t={}){const{strict:r=!0}=t;if(!Gr.test(e))throw new ke({address:e,cause:new Wr});if(r){if(e.toLowerCase()===e)return;if(Vr(e)!==e)throw new ke({address:e,cause:new Zr})}}function Vr(e){if(ee.has(e))return ee.get(e);X(e,{strict:!1});const t=e.substring(2).toLowerCase(),r=et(Nr(t),{as:"Bytes"}),n=t.split("");for(let a=0;a<40;a+=2)r[a>>1]>>4>=8&&n[a]&&(n[a]=n[a].toUpperCase()),(r[a>>1]&15)>=8&&n[a+1]&&(n[a+1]=n[a+1].toUpperCase());const s=`0x${n.join("")}`;return ee.set(e,s),s}function ae(e,t={}){const{strict:r=!0}=t??{};try{return X(e,{strict:r}),!0}catch{return!1}}class ke extends B{constructor({address:t,cause:r}){super(`Address "${t}" is invalid.`,{cause:r}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidAddressError"})}}class Wr extends B{constructor(){super("Address is not a 20 byte (40 hexadecimal character) value."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidInputError"})}}class Zr extends B{constructor(){super("Address does not match its checksum counterpart."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidChecksumError"})}}function oe(e){let t=!0,r="",n=0,s="",a=!1;for(let i=0;i<e.length;i++){const u=e[i];if(["(",")",","].includes(u)&&(t=!0),u==="("&&n++,u===")"&&n--,!!t){if(n===0){if(u===" "&&["event","function","error",""].includes(s))s="";else if(s+=u,u===")"){a=!0;break}continue}if(u===" "){e[i-1]!==","&&r!==","&&r!==",("&&(r="",t=!1);continue}s+=u,r+=u}}if(!a)throw new B("Unable to normalize signature.");return s}function ie(e,t){const r=typeof e,n=t.type;switch(n){case"address":return ae(e,{strict:!1});case"bool":return r==="boolean";case"function":return r==="string";case"string":return r==="string";default:return n==="tuple"&&"components"in t?Object.values(t.components).every((s,a)=>ie(Object.values(e)[a],s)):/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(n)?r==="number"||r==="bigint":/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(n)?r==="string"||e instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\[[0-9]{0,}\])+$/.test(n)?Array.isArray(e)&&e.every(s=>ie(s,{...t,type:n.replace(/(\[[0-9]{0,}\])$/,"")})):!1}}function tt(e,t,r){for(const n in e){const s=e[n],a=t[n];if(s.type==="tuple"&&a.type==="tuple"&&"components"in s&&"components"in a)return tt(s.components,a.components,r[n]);const i=[s.type,a.type];if(i.includes("address")&&i.includes("bytes20")?!0:i.includes("address")&&i.includes("string")?ae(r[n],{strict:!1}):i.includes("address")&&i.includes("bytes")?ae(r[n],{strict:!1}):!1)return i}}function rt(e,t={}){const{prepare:r=!0}=t,n=Array.isArray(e)||typeof e=="string"?xe(e):e;return{...n,...r?{hash:j(n)}:{}}}function Jr(e,t,r){const{args:n=[],prepare:s=!0}=r??{},a=Hr(t,{strict:!1}),i=e.filter(c=>a?c.type==="function"||c.type==="error"?nt(c)===me(t,0,4):c.type==="event"?j(c)===t:!1:"name"in c&&c.name===t);if(i.length===0)throw new ce({name:t});if(i.length===1)return{...i[0],...s?{hash:j(i[0])}:{}};let u;for(const c of i){if(!("inputs"in c))continue;if(!n||n.length===0){if(!c.inputs||c.inputs.length===0)return{...c,...s?{hash:j(c)}:{}};continue}if(!c.inputs||c.inputs.length===0||c.inputs.length!==n.length)continue;if(n.every((f,p)=>{const g="inputs"in c&&c.inputs[p];return g?ie(f,g):!1})){if(u&&"inputs"in u&&u.inputs){const f=tt(c.inputs,u.inputs,n);if(f)throw new Qr({abiItem:c,type:f[0]},{abiItem:u,type:f[1]})}u=c}}const d=(()=>{if(u)return u;const[c,...l]=i;return{...c,overloads:l}})();if(!d)throw new ce({name:t});return{...d,...s?{hash:j(d)}:{}}}function nt(e){return me(j(e),0,4)}function Kr(e){const t=typeof e=="string"?e:o.formatAbiItem(e);return oe(t)}function j(e){return typeof e!="string"&&"hash"in e&&e.hash?e.hash:et(ge(Kr(e)))}class Qr extends B{constructor(t,r){super("Found ambiguous types in overloaded ABI Items.",{metaMessages:[`\`${t.type}\` in \`${oe(o.formatAbiItem(t.abiItem))}\`, and`,`\`${r.type}\` in \`${oe(o.formatAbiItem(r.abiItem))}\``,"","These types encode differently and cannot be distinguished at runtime.","Remove one of the ambiguous items in the ABI."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiItem.AmbiguityError"})}}class ce extends B{constructor({name:t,data:r,type:n="item"}){const s=t?` with name "${t}"`:r?` with data "${r}"`:"";super(`ABI ${n}${s} not found.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiItem.NotFoundError"})}}const Xr=/^(.*)\[([0-9]*)\]$/,Yr=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,st=/^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/;function en({checksumAddress:e,parameters:t,values:r}){const n=[];for(let s=0;s<t.length;s++)n.push(be({checksumAddress:e,parameter:t[s],value:r[s]}));return n}function be({checksumAddress:e=!1,parameter:t,value:r}){const n=t,s=un(n.type);if(s){const[a,i]=s;return rn(r,{checksumAddress:e,length:a,parameter:{...n,type:i}})}if(n.type==="tuple")return cn(r,{checksumAddress:e,parameter:n});if(n.type==="address")return tn(r,{checksum:e});if(n.type==="bool")return sn(r);if(n.type.startsWith("uint")||n.type.startsWith("int")){const a=n.type.startsWith("int"),[,,i="256"]=st.exec(n.type)??[];return an(r,{signed:a,size:Number(i)})}if(n.type.startsWith("bytes"))return nn(r,{type:n.type});if(n.type==="string")return on(r);throw new ct(n.type)}function ye(e){let t=0;for(let a=0;a<e.length;a++){const{dynamic:i,encoded:u}=e[a];i?t+=32:t+=F(u)}const r=[],n=[];let s=0;for(let a=0;a<e.length;a++){const{dynamic:i,encoded:u}=e[a];i?(r.push(z(t+s,{size:32})),n.push(u),s+=F(u)):r.push(u)}return H(...r,...n)}function tn(e,t){const{checksum:r=!1}=t;return X(e,{strict:r}),{dynamic:!1,encoded:M(e.toLowerCase())}}function rn(e,t){const{checksumAddress:r,length:n,parameter:s}=t,a=n===null;if(!Array.isArray(e))throw new fn(e);if(!a&&e.length!==n)throw new dn({expectedLength:n,givenLength:e.length,type:`${s.type}[${n}]`});let i=!1;const u=[];for(let d=0;d<e.length;d++){const c=be({checksumAddress:r,parameter:s,value:e[d]});c.dynamic&&(i=!0),u.push(c)}if(a||i){const d=ye(u);if(a){const c=z(u.length,{size:32});return{dynamic:!0,encoded:u.length>0?H(c,d):c}}if(i)return{dynamic:!0,encoded:d}}return{dynamic:!1,encoded:H(...u.map(({encoded:d})=>d))}}function nn(e,{type:t}){const[,r]=t.split("bytes"),n=F(e);if(!r){let s=e;return n%32!==0&&(s=_(s,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:H(M(z(n,{size:32})),s)}}if(n!==Number.parseInt(r))throw new ot({expectedSize:Number.parseInt(r),value:e});return{dynamic:!1,encoded:_(e)}}function sn(e){if(typeof e!="boolean")throw new B(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:M(Ke(e))}}function an(e,{signed:t,size:r}){if(typeof r=="number"){const n=2n**(BigInt(r)-(t?1n:0n))-1n,s=t?-n-1n:0n;if(e>n||e<s)throw new Xe({max:n.toString(),min:s.toString(),signed:t,size:r/8,value:e.toString()})}return{dynamic:!1,encoded:z(e,{size:32,signed:t})}}function on(e){const t=ge(e),r=Math.ceil(F(t)/32),n=[];for(let s=0;s<r;s++)n.push(_(me(t,s*32,(s+1)*32)));return{dynamic:!0,encoded:H(_(z(F(t),{size:32})),...n)}}function cn(e,t){const{checksumAddress:r,parameter:n}=t;let s=!1;const a=[];for(let i=0;i<n.components.length;i++){const u=n.components[i],d=Array.isArray(e)?i:u.name,c=be({checksumAddress:r,parameter:u,value:e[d]});a.push(c),c.dynamic&&(s=!0)}return{dynamic:s,encoded:s?ye(a):H(...a.map(({encoded:i})=>i))}}function un(e){const t=e.match(/^(.*)\[(\d+)?\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function at(e,t,r){const{checksumAddress:n=!1}={};if(e.length!==t.length)throw new it({expectedLength:e.length,givenLength:t.length});const s=en({checksumAddress:n,parameters:e,values:t}),a=ye(s);return a.length===0?"0x":a}function ue(e,t){if(e.length!==t.length)throw new it({expectedLength:e.length,givenLength:t.length});const r=[];for(let n=0;n<e.length;n++){const s=e[n],a=t[n];r.push(ue.encode(s,a))}return H(...r)}(function(e){function t(r,n,s=!1){if(r==="address"){const d=n;return X(d),M(d.toLowerCase(),s?32:0)}if(r==="string")return ge(n);if(r==="bytes")return n;if(r==="bool")return M(Ke(n),s?32:1);const a=r.match(st);if(a){const[d,c,l="256"]=a,f=Number.parseInt(l)/8;return z(n,{size:s?32:f,signed:c==="int"})}const i=r.match(Yr);if(i){const[d,c]=i;if(Number.parseInt(c)!==(n.length-2)/2)throw new ot({expectedSize:Number.parseInt(c),value:n});return _(n,s?32:0)}const u=r.match(Xr);if(u&&Array.isArray(n)){const[d,c]=u,l=[];for(let f=0;f<n.length;f++)l.push(t(c,n[f],!0));return l.length===0?"0x":H(...l)}throw new ct(r)}e.encode=t})(ue||(ue={}));class dn extends B{constructor({expectedLength:t,givenLength:r,type:n}){super(`Array length mismatch for type \`${n}\`. Expected: \`${t}\`. Given: \`${r}\`.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.ArrayLengthMismatchError"})}}class ot extends B{constructor({expectedSize:t,value:r}){super(`Size of bytes "${r}" (bytes${F(r)}) does not match expected size (bytes${t}).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.BytesSizeMismatchError"})}}class it extends B{constructor({expectedLength:t,givenLength:r}){super(["ABI encoding parameters/values length mismatch.",`Expected length (parameters): ${t}`,`Given length (values): ${r}`].join(`
|
|
4
|
+
`)),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.LengthMismatchError"})}}class fn extends B{constructor(t){super(`Value \`${t}\` is not a valid array.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidArrayError"})}}class ct extends B{constructor(t){super(`Type \`${t}\` is not a valid ABI Type.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidTypeError"})}}function ln(e,t){var s;const{bytecode:r,args:n}=t;return H(r,(s=e.inputs)!=null&&s.length&&(n!=null&&n.length)?at(e.inputs,n):"0x")}function pn(e){return rt(e)}function hn(e,...t){const{overloads:r}=e,n=r?gn([e,...r],e.name,{args:t[0]}):e,s=mn(n),a=t.length>0?at(n.inputs,t[0]):void 0;return a?H(s,a):s}function L(e,t={}){return rt(e,t)}function gn(e,t,r){const n=Jr(e,t,r);if(n.type!=="function")throw new ce({name:t,type:"function"});return n}function mn(e){return nt(e)}const bn="0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",D="0x0000000000000000000000000000000000000000",yn="0x6080604052348015600e575f80fd5b5061016d8061001c5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f8b2cb4f1461002d575b5f80fd5b610047600480360381019061004291906100db565b61005d565b604051610054919061011e565b60405180910390f35b5f8173ffffffffffffffffffffffffffffffffffffffff16319050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100aa82610081565b9050919050565b6100ba816100a0565b81146100c4575f80fd5b50565b5f813590506100d5816100b1565b92915050565b5f602082840312156100f0576100ef61007d565b5b5f6100fd848285016100c7565b91505092915050565b5f819050919050565b61011881610106565b82525050565b5f6020820190506101315f83018461010f565b9291505056fea26469706673582212203b9fe929fe995c7cf9887f0bdba8a36dd78e8b73f149b17d2d9ad7cd09d2dc6264736f6c634300081a0033";async function wn(e,t){const{blockNumber:r,blockTag:n,calls:s,stateOverrides:a,traceAssetChanges:i,traceTransfers:u,validation:d}=t,c=t.account?o.parseAccount(t.account):void 0;if(i&&!c)throw new h.BaseError("`account` is required when `traceAssetChanges` is true");const l=c?ln(pn("constructor(bytes, bytes)"),{bytecode:o.deploylessCallViaBytecodeBytecode,args:[yn,hn(L("function getBalance(address)"),[c.address])]}):void 0,f=i?await Promise.all(t.calls.map(async x=>{if(!x.data&&!x.abi)return;const{accessList:$}=await De(e,{account:c.address,...x,data:x.abi?o.encodeFunctionData(x):x.data});return $.map(({address:U,storageKeys:V})=>V.length>0?U:null)})).then(x=>x.flat().filter(Boolean)):[],p=a==null?void 0:a.map(x=>x.address===(c==null?void 0:c.address)?{...x,nonce:0}:x),g=await se(e,{blockNumber:r,blockTag:n,blocks:[...i?[{calls:[{data:l}],stateOverrides:a},{calls:f.map((x,$)=>({abi:[L("function balanceOf(address) returns (uint256)")],functionName:"balanceOf",args:[c.address],to:x,from:D,nonce:$})),stateOverrides:[{address:D,nonce:0}]}]:[],{calls:[...s,{}].map((x,$)=>({...x,from:c==null?void 0:c.address,nonce:$})),stateOverrides:p},...i?[{calls:[{data:l}]},{calls:f.map((x,$)=>({abi:[L("function balanceOf(address) returns (uint256)")],functionName:"balanceOf",args:[c.address],to:x,from:D,nonce:$})),stateOverrides:[{address:D,nonce:0}]},{calls:f.map((x,$)=>({to:x,abi:[L("function decimals() returns (uint256)")],functionName:"decimals",from:D,nonce:$})),stateOverrides:[{address:D,nonce:0}]},{calls:f.map((x,$)=>({to:x,abi:[L("function tokenURI(uint256) returns (string)")],functionName:"tokenURI",args:[0n],from:D,nonce:$})),stateOverrides:[{address:D,nonce:0}]},{calls:f.map((x,$)=>({to:x,abi:[L("function symbol() returns (string)")],functionName:"symbol",from:D,nonce:$})),stateOverrides:[{address:D,nonce:0}]}]:[]],traceTransfers:u,validation:d}),b=i?g[2]:g[0],[y,E,,m,w,v,A,I]=i?g:[],{calls:R,...T}=b,k=R.slice(0,-1)??[],P=(y==null?void 0:y.calls)??[],N=(E==null?void 0:E.calls)??[],C=[...P,...N].map(x=>x.status==="success"?h.hexToBigInt(x.data):null),S=(m==null?void 0:m.calls)??[],q=(w==null?void 0:w.calls)??[],dt=[...S,...q].map(x=>x.status==="success"?h.hexToBigInt(x.data):null),ft=((v==null?void 0:v.calls)??[]).map(x=>x.status==="success"?x.result:null),lt=((I==null?void 0:I.calls)??[]).map(x=>x.status==="success"?x.result:null),pt=((A==null?void 0:A.calls)??[]).map(x=>x.status==="success"?x.result:null),Y=[];for(const[x,$]of dt.entries()){const U=C[x];if(typeof $!="bigint"||typeof U!="bigint")continue;const V=ft[x-1],ht=lt[x-1],gt=pt[x-1],ve=x===0?{address:bn,decimals:18,symbol:"ETH"}:{address:f[x-1],decimals:gt||V?Number(V??1):void 0,symbol:ht??void 0};Y.some(mt=>mt.token.address===ve.address)||Y.push({token:ve,value:{pre:U,post:$,diff:$-U}})}return{assetChanges:Y,block:T,results:k}}function vn({r:e,s:t,to:r="hex",v:n,yParity:s}){const a=(()=>{if(s===0||s===1)return s;if(n&&(n===27n||n===28n||n>=35n))return n%2n===0n?1:0;throw new Error("Invalid `v` or `yParity` value")})(),i=`0x${new bt.secp256k1.Signature(h.hexToBigInt(e),h.hexToBigInt(t)).toCompactHex()}${a===0?"1b":"1c"}`;return r==="hex"?i:h.hexToBytes(i)}async function we(e,t){var f,p,g;const{address:r,factory:n,factoryData:s,hash:a,signature:i,universalSignatureVerifierAddress:u=(g=(p=(f=e.chain)==null?void 0:f.contracts)==null?void 0:p.universalSignatureVerifier)==null?void 0:g.address,...d}=t,c=h.isHex(i)?i:typeof i=="object"&&"r"in i&&"s"in i?vn(i):h.bytesToHex(i),l=await(async()=>!n&&!s||fr(c)?c:lr({address:n,data:s,signature:c}))();try{const b=u?{to:u,data:o.encodeFunctionData({abi:o.universalSignatureValidatorAbi,functionName:"isValidSig",args:[r,a,l]}),...d}:{data:o.encodeDeployData({abi:o.universalSignatureValidatorAbi,args:[r,a,l],bytecode:o.universalSignatureValidatorByteCode}),...d},{data:y}=await o.getAction(e,o.call,"call")(b);return h.hexToBool(y??"0x0")}catch(b){try{if(o.isAddressEqual(h.getAddress(r),await o.recoverAddress({hash:a,signature:i})))return!0}catch{}if(b instanceof o.CallExecutionError)return!1;throw b}}async function xn(e,{address:t,message:r,factory:n,factoryData:s,signature:a,...i}){const u=Ve(r);return we(e,{address:t,factory:n,factoryData:s,hash:u,signature:a,...i})}async function En(e,t){const{address:r,factory:n,factoryData:s,signature:a,message:i,primaryType:u,types:d,domain:c,...l}=t,f=nr({message:i,primaryType:u,types:d,domain:c});return we(e,{address:r,factory:n,factoryData:s,hash:f,signature:a,...l})}function ut(e,{emitOnBegin:t=!1,emitMissed:r=!1,onBlockNumber:n,onError:s,poll:a,pollingInterval:i=e.pollingInterval}){const u=typeof a<"u"?a:!(e.transport.type==="webSocket"||e.transport.type==="fallback"&&e.transport.transports[0].config.type==="webSocket");let d;return u?(()=>{const f=o.stringify(["watchBlockNumber",e.uid,t,r,i]);return o.observe(f,{onBlockNumber:n,onError:s},p=>o.poll(async()=>{var g;try{const b=await o.getAction(e,o.getBlockNumber,"getBlockNumber")({cacheTime:0});if(d){if(b===d)return;if(b-d>1&&r)for(let y=d+1n;y<b;y++)p.onBlockNumber(y,d),d=y}(!d||b>d)&&(p.onBlockNumber(b,d),d=b)}catch(b){(g=p.onError)==null||g.call(p,b)}},{emitOnBegin:t,interval:i}))})():(()=>{const f=o.stringify(["watchBlockNumber",e.uid,t,r]);return o.observe(f,{onBlockNumber:n,onError:s},p=>{let g=!0,b=()=>g=!1;return(async()=>{try{const y=(()=>{if(e.transport.type==="fallback"){const m=e.transport.transports.find(w=>w.config.type==="webSocket");return m?m.value:e.transport}return e.transport})(),{unsubscribe:E}=await y.subscribe({params:["newHeads"],onData(m){var v;if(!g)return;const w=h.hexToBigInt((v=m.result)==null?void 0:v.number);p.onBlockNumber(w,d),d=w},onError(m){var w;(w=p.onError)==null||w.call(p,m)}});b=E,g||b()}catch(y){s==null||s(y)}})(),()=>b()})})()}async function An(e,{confirmations:t=1,hash:r,onReplaced:n,pollingInterval:s=e.pollingInterval,retryCount:a=6,retryDelay:i=({count:d})=>~~(1<<d)*200,timeout:u=18e4}){const d=o.stringify(["waitForTransactionReceipt",e.uid,r]);let c,l,f,p=!1;const{promise:g,resolve:b,reject:y}=o.withResolvers(),E=u?setTimeout(()=>y(new h.WaitForTransactionReceiptTimeoutError({hash:r})),u):void 0,m=o.observe(d,{onReplaced:n,resolve:b,reject:y},w=>{const v=o.getAction(e,ut,"watchBlockNumber")({emitMissed:!0,emitOnBegin:!0,poll:!0,pollingInterval:s,async onBlockNumber(A){const I=T=>{clearTimeout(E),v(),T(),m()};let R=A;if(!p)try{if(f){if(t>1&&(!f.blockNumber||R-f.blockNumber+1n<t))return;I(()=>w.resolve(f));return}if(c||(p=!0,await re(async()=>{c=await o.getAction(e,pe,"getTransaction")({hash:r}),c.blockNumber&&(R=c.blockNumber)},{delay:i,retryCount:a}),p=!1),f=await o.getAction(e,ne,"getTransactionReceipt")({hash:r}),t>1&&(!f.blockNumber||R-f.blockNumber+1n<t))return;I(()=>w.resolve(f))}catch(T){if(T instanceof h.TransactionNotFoundError||T instanceof h.TransactionReceiptNotFoundError){if(!c){p=!1;return}try{l=c,p=!0;const k=await re(()=>o.getAction(e,o.getBlock,"getBlock")({blockNumber:R,includeTransactions:!0}),{delay:i,retryCount:a,shouldRetry:({error:C})=>C instanceof o.BlockNotFoundError});p=!1;const P=k.transactions.find(({from:C,nonce:S})=>C===l.from&&S===l.nonce);if(!P||(f=await o.getAction(e,ne,"getTransactionReceipt")({hash:P.hash}),t>1&&(!f.blockNumber||R-f.blockNumber+1n<t)))return;let N="replaced";P.to===l.to&&P.value===l.value&&P.input===l.input?N="repriced":P.from===P.to&&P.value===0n&&(N="cancelled"),I(()=>{var C;(C=w.onReplaced)==null||C.call(w,{reason:N,replacedTransaction:l,transaction:P,transactionReceipt:f}),w.resolve(f)})}catch(k){I(()=>w.reject(k))}}else I(()=>w.reject(T))}}})});return g}function Tn(e,{blockTag:t="latest",emitMissed:r=!1,emitOnBegin:n=!1,onBlock:s,onError:a,includeTransactions:i,poll:u,pollingInterval:d=e.pollingInterval}){const c=typeof u<"u"?u:!(e.transport.type==="webSocket"||e.transport.type==="fallback"&&e.transport.transports[0].config.type==="webSocket"),l=i??!1;let f;return c?(()=>{const b=o.stringify(["watchBlocks",e.uid,t,r,n,l,d]);return o.observe(b,{onBlock:s,onError:a},y=>o.poll(async()=>{var E;try{const m=await o.getAction(e,o.getBlock,"getBlock")({blockTag:t,includeTransactions:l});if(m.number&&(f!=null&&f.number)){if(m.number===f.number)return;if(m.number-f.number>1&&r)for(let w=(f==null?void 0:f.number)+1n;w<m.number;w++){const v=await o.getAction(e,o.getBlock,"getBlock")({blockNumber:w,includeTransactions:l});y.onBlock(v,f),f=v}}(!(f!=null&&f.number)||t==="pending"&&!(m!=null&&m.number)||m.number&&m.number>f.number)&&(y.onBlock(m,f),f=m)}catch(m){(E=y.onError)==null||E.call(y,m)}},{emitOnBegin:n,interval:d}))})():(()=>{let b=!0,y=!0,E=()=>b=!1;return(async()=>{try{n&&o.getAction(e,o.getBlock,"getBlock")({blockTag:t,includeTransactions:l}).then(v=>{b&&y&&(s(v,void 0),y=!1)});const m=(()=>{if(e.transport.type==="fallback"){const v=e.transport.transports.find(A=>A.config.type==="webSocket");return v?v.value:e.transport}return e.transport})(),{unsubscribe:w}=await m.subscribe({params:["newHeads"],async onData(v){if(!b)return;const A=await o.getAction(e,o.getBlock,"getBlock")({blockNumber:v.blockNumber,includeTransactions:l}).catch(()=>{});b&&(s(A,f),y=!1,f=A)},onError(v){a==null||a(v)}});E=w,b||E()}catch(m){a==null||a(m)}})(),()=>E()})()}function Rn(e,{address:t,args:r,batch:n=!0,event:s,events:a,fromBlock:i,onError:u,onLogs:d,poll:c,pollingInterval:l=e.pollingInterval,strict:f}){const p=typeof c<"u"?c:typeof i=="bigint"?!0:!(e.transport.type==="webSocket"||e.transport.type==="fallback"&&e.transport.transports[0].config.type==="webSocket"),g=f??!1;return p?(()=>{const E=o.stringify(["watchEvent",t,r,n,e.uid,s,l,i]);return o.observe(E,{onLogs:d,onError:u},m=>{let w;i!==void 0&&(w=i-1n);let v,A=!1;const I=o.poll(async()=>{var R;if(!A){try{v=await o.getAction(e,He,"createEventFilter")({address:t,args:r,event:s,events:a,strict:g,fromBlock:i})}catch{}A=!0;return}try{let T;if(v)T=await o.getAction(e,o.getFilterChanges,"getFilterChanges")({filter:v});else{const k=await o.getAction(e,o.getBlockNumber,"getBlockNumber")({});w&&w!==k?T=await o.getAction(e,o.getLogs,"getLogs")({address:t,args:r,event:s,events:a,fromBlock:w+1n,toBlock:k}):T=[],w=k}if(T.length===0)return;if(n)m.onLogs(T);else for(const k of T)m.onLogs([k])}catch(T){v&&T instanceof o.InvalidInputRpcError&&(A=!1),(R=m.onError)==null||R.call(m,T)}},{emitOnBegin:!0,interval:l});return async()=>{v&&await o.getAction(e,o.uninstallFilter,"uninstallFilter")({filter:v}),I()}})})():(()=>{let E=!0,m=()=>E=!1;return(async()=>{try{const w=(()=>{if(e.transport.type==="fallback"){const R=e.transport.transports.find(T=>T.config.type==="webSocket");return R?R.value:e.transport}return e.transport})(),v=a??(s?[s]:void 0);let A=[];v&&(A=[v.flatMap(T=>o.encodeEventTopics({abi:[T],eventName:T.name,args:r}))],s&&(A=A[0]));const{unsubscribe:I}=await w.subscribe({params:["logs",{address:t,topics:A}],onData(R){var k;if(!E)return;const T=R.result;try{const{eventName:P,args:N}=o.decodeEventLog({abi:v??[],data:T.data,topics:T.topics,strict:g}),C=h.formatLog(T,{args:N,eventName:P});d([C])}catch(P){let N,C;if(P instanceof o.DecodeLogDataMismatch||P instanceof o.DecodeLogTopicsMismatch){if(f)return;N=P.abiItem.name,C=(k=P.abiItem.inputs)==null?void 0:k.some(q=>!("name"in q&&q.name))}const S=h.formatLog(T,{args:C?[]:{},eventName:N});d([S])}},onError(R){u==null||u(R)}});m=I,E||m()}catch(w){u==null||u(w)}})(),()=>m()})()}function Cn(e,{batch:t=!0,onError:r,onTransactions:n,poll:s,pollingInterval:a=e.pollingInterval}){return(typeof s<"u"?s:e.transport.type!=="webSocket")?(()=>{const c=o.stringify(["watchPendingTransactions",e.uid,t,a]);return o.observe(c,{onTransactions:n,onError:r},l=>{let f;const p=o.poll(async()=>{var g;try{if(!f)try{f=await o.getAction(e,Oe,"createPendingTransactionFilter")({});return}catch(y){throw p(),y}const b=await o.getAction(e,o.getFilterChanges,"getFilterChanges")({filter:f});if(b.length===0)return;if(t)l.onTransactions(b);else for(const y of b)l.onTransactions([y])}catch(b){(g=l.onError)==null||g.call(l,b)}},{emitOnBegin:!0,interval:a});return async()=>{f&&await o.getAction(e,o.uninstallFilter,"uninstallFilter")({filter:f}),p()}})})():(()=>{let c=!0,l=()=>c=!1;return(async()=>{try{const{unsubscribe:f}=await e.transport.subscribe({params:["newPendingTransactions"],onData(p){if(!c)return;const g=p.result;n([g])},onError(p){r==null||r(p)}});l=f,c||l()}catch(f){r==null||r(f)}})(),()=>l()})()}function In(e){var f,p,g;const{scheme:t,statement:r,...n}=((f=e.match(Pn))==null?void 0:f.groups)??{},{chainId:s,expirationTime:a,issuedAt:i,notBefore:u,requestId:d,...c}=((p=e.match(kn))==null?void 0:p.groups)??{},l=(g=e.split("Resources:")[1])==null?void 0:g.split(`
|
|
5
|
+
- `).slice(1);return{...n,...c,...s?{chainId:Number(s)}:{},...a?{expirationTime:new Date(a)}:{},...i?{issuedAt:new Date(i)}:{},...u?{notBefore:new Date(u)}:{},...d?{requestId:d}:{},...l?{resources:l}:{},...t?{scheme:t}:{},...r?{statement:r}:{}}}const Pn=/^(?:(?<scheme>[a-zA-Z][a-zA-Z0-9+-.]*):\/\/)?(?<domain>[a-zA-Z0-9+-.]*(?::[0-9]{1,5})?) (?:wants you to sign in with your Ethereum account:\n)(?<address>0x[a-fA-F0-9]{40})\n\n(?:(?<statement>.*)\n\n)?/,kn=/(?:URI: (?<uri>.+))\n(?:Version: (?<version>.+))\n(?:Chain ID: (?<chainId>\d+))\n(?:Nonce: (?<nonce>[a-zA-Z0-9]+))\n(?:Issued At: (?<issuedAt>.+))(?:\nExpiration Time: (?<expirationTime>.+))?(?:\nNot Before: (?<notBefore>.+))?(?:\nRequest ID: (?<requestId>.+))?/;function Bn(e){const{address:t,domain:r,message:n,nonce:s,scheme:a,time:i=new Date}=e;if(r&&n.domain!==r||s&&n.nonce!==s||a&&n.scheme!==a||n.expirationTime&&i>=n.expirationTime||n.notBefore&&i<n.notBefore)return!1;try{if(!n.address||t&&!o.isAddressEqual(n.address,t))return!1}catch{return!1}return!0}async function Nn(e,t){const{address:r,domain:n,message:s,nonce:a,scheme:i,signature:u,time:d=new Date,...c}=t,l=In(s);if(!l.address||!Bn({address:r,domain:n,message:l,nonce:a,scheme:i,time:d}))return!1;const p=Ve(s);return we(e,{address:l.address,hash:p,signature:u,...c})}function Sn(e){return{call:t=>o.call(e,t),createAccessList:t=>De(e,t),createBlockFilter:()=>Zt(e),createContractEventFilter:t=>o.createContractEventFilter(e,t),createEventFilter:t=>He(e,t),createPendingTransactionFilter:()=>Oe(e),estimateContractGas:t=>o.estimateContractGas(e,t),estimateGas:t=>o.estimateGas(e,t),getBalance:t=>o.getBalance(e,t),getBlobBaseFee:()=>Jt(e),getBlock:t=>o.getBlock(e,t),getBlockNumber:t=>o.getBlockNumber(e,t),getBlockTransactionCount:t=>Kt(e,t),getBytecode:t=>Te(e,t),getChainId:()=>o.getChainId(e),getCode:t=>Te(e,t),getContractEvents:t=>o.getContractEvents(e,t),getEip712Domain:t=>wt(e,t),getEnsAddress:t=>St(e,t),getEnsAvatar:t=>Gt(e,t),getEnsName:t=>Vt(e,t),getEnsResolver:t=>Wt(e,t),getEnsText:t=>qe(e,t),getFeeHistory:t=>Xt(e,t),estimateFeesPerGas:t=>o.estimateFeesPerGas(e,t),getFilterChanges:t=>o.getFilterChanges(e,t),getFilterLogs:t=>Yt(e,t),getGasPrice:()=>o.getGasPrice(e),getLogs:t=>o.getLogs(e,t),getProof:t=>gr(e,t),estimateMaxPriorityFeePerGas:t=>o.estimateMaxPriorityFeePerGas(e,t),getStorageAt:t=>mr(e,t),getTransaction:t=>pe(e,t),getTransactionConfirmations:t=>br(e,t),getTransactionCount:t=>o.getTransactionCount(e,t),getTransactionReceipt:t=>ne(e,t),multicall:t=>yr(e,t),prepareTransactionRequest:t=>o.prepareTransactionRequest(e,t),readContract:t=>o.readContract(e,t),sendRawTransaction:t=>o.sendRawTransaction(e,t),simulate:t=>se(e,t),simulateBlocks:t=>se(e,t),simulateCalls:t=>wn(e,t),simulateContract:t=>o.simulateContract(e,t),verifyMessage:t=>xn(e,t),verifySiweMessage:t=>Nn(e,t),verifyTypedData:t=>En(e,t),uninstallFilter:t=>o.uninstallFilter(e,t),waitForTransactionReceipt:t=>An(e,t),watchBlocks:t=>Tn(e,t),watchBlockNumber:t=>ut(e,t),watchContractEvent:t=>o.watchContractEvent(e,t),watchEvent:t=>Rn(e,t),watchPendingTransactions:t=>Cn(e,t)}}function $n(e){const{key:t="public",name:r="Public Client"}=e;return Ne({...e,key:t,name:r,type:"publicClient"}).extend(Sn)}function zn(e,t){const{abi:r,args:n,bytecode:s,...a}=t,i=o.encodeDeployData({abi:r,args:n,bytecode:s});return o.sendTransaction(e,{...a,...a.authorizationList?{to:null}:{},data:i})}async function Fn(e){var r;return((r=e.account)==null?void 0:r.type)==="local"?[e.account.address]:(await e.request({method:"eth_accounts"},{dedupe:!0})).map(n=>h.checksumAddress(n))}async function qn(e){return await e.request({method:"wallet_getPermissions"},{dedupe:!0})}async function Dn(e){return(await e.request({method:"eth_requestAccounts"},{dedupe:!0,retryCount:0})).map(r=>h.getAddress(r))}async function Hn(e,t){return e.request({method:"wallet_requestPermissions",params:[t]},{retryCount:0})}async function On(e,{account:t=e.account,message:r}){if(!t)throw new o.AccountNotFoundError({docsPath:"/docs/actions/wallet/signMessage"});const n=o.parseAccount(t);if(n.signMessage)return n.signMessage({message:r});const s=typeof r=="string"?h.stringToHex(r):r.raw instanceof Uint8Array?h.toHex(r.raw):r.raw;return e.request({method:"personal_sign",params:[s,n.address]},{retryCount:0})}async function Mn(e,t){var c,l,f,p;const{account:r=e.account,chain:n=e.chain,...s}=t;if(!r)throw new o.AccountNotFoundError({docsPath:"/docs/actions/wallet/signTransaction"});const a=o.parseAccount(r);o.assertRequest({account:a,...t});const i=await o.getAction(e,o.getChainId,"getChainId")({});n!==null&&o.assertCurrentChain({currentChainId:i,chain:n});const u=(n==null?void 0:n.formatters)||((c=e.chain)==null?void 0:c.formatters),d=((l=u==null?void 0:u.transactionRequest)==null?void 0:l.format)||o.formatTransactionRequest;return a.signTransaction?a.signTransaction({...s,chainId:i},{serializer:(p=(f=e.chain)==null?void 0:f.serializers)==null?void 0:p.transaction}):await e.request({method:"eth_signTransaction",params:[{...d(s),chainId:h.numberToHex(i),from:a.address}]},{retryCount:0})}async function _n(e,t){const{account:r=e.account,domain:n,message:s,primaryType:a}=t;if(!r)throw new o.AccountNotFoundError({docsPath:"/docs/actions/wallet/signTypedData"});const i=o.parseAccount(r),u={EIP712Domain:Ge({domain:n}),...t.types};if(Ue({domain:n,message:s,primaryType:a,types:u}),i.signTypedData)return i.signTypedData({domain:n,message:s,primaryType:a,types:u});const d=ir({domain:n,message:s,primaryType:a,types:u});return e.request({method:"eth_signTypedData_v4",params:[i.address,d]},{retryCount:0})}async function Ln(e,{id:t}){await e.request({method:"wallet_switchEthereumChain",params:[{chainId:h.numberToHex(t)}]},{retryCount:0})}async function jn(e,t){return await e.request({method:"wallet_watchAsset",params:t},{retryCount:0})}function Un(e){return{addChain:t=>xt(e,t),deployContract:t=>zn(e,t),getAddresses:()=>Fn(e),getChainId:()=>o.getChainId(e),getPermissions:()=>qn(e),prepareTransactionRequest:t=>o.prepareTransactionRequest(e,t),requestAddresses:()=>Dn(e),requestPermissions:t=>Hn(e,t),sendRawTransaction:t=>o.sendRawTransaction(e,t),sendTransaction:t=>o.sendTransaction(e,t),signMessage:t=>On(e,t),signTransaction:t=>Mn(e,t),signTypedData:t=>_n(e,t),switchChain:t=>Ln(e,t),watchAsset:t=>jn(e,t),writeContract:t=>o.writeContract(e,t)}}function Gn(e){const{key:t="wallet",name:r="Wallet Client",transport:n}=e;return Ne({...e,key:t,name:r,transport:n,type:"walletClient"}).extend(Un)}exports.createPublicClient=$n;exports.createTransport=Se;exports.createWalletClient=Gn;exports.http=kt;
|
|
6
|
+
//# sourceMappingURL=createWalletClient-Cxvyuh55.cjs.map
|