@edgex-web/components 0.1.0-beta.47 → 0.1.0-beta.49

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.esm.js CHANGED
@@ -1,4 +1,4 @@
1
- import { o as e, C as i, D as t, n, p as r, L as p, o as d, S as L, T as h, W as D, y as g, r as u, A as w, h as W, w as C, G as m, q as E, z as A, v as O, F as T, t as M, E as S, u as l, j as f, x as P, m as _, k as c, I as v } from "./index-CvqZq5yW.mjs";
1
+ import { o as e, C as i, D as t, n, p as r, L as p, o as d, S as L, T as h, W as D, y as g, r as u, A as w, h as W, w as C, G as m, q as E, z as A, v as O, F as T, t as M, E as S, u as l, j as f, x as P, m as _, k as c, I as v } from "./index-eaNfNV2A.mjs";
2
2
  import "react";
3
3
  export {
4
4
  e as ChromeLoader,
package/dist/index.umd.js CHANGED
@@ -74,7 +74,7 @@ ${Ib(p)}`),super(t.shortMessage,{cause:t,docsPath:r,metaMessages:[...t.metaMessa
74
74
  `);super(c,n.cause?{cause:n.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@${Ty()}`}),this.cause=n.cause,this.details=r,this.docs=i,this.docsPath=o,this.shortMessage=t}walk(t){return pf(this,t)}}function pf(e,t){return t!=null&&t(e)?e:e&&typeof e=="object"&&"cause"in e&&e.cause?pf(e.cause,t):t?null:e}const Cy="#__bigint";function Oy(e,t,n){return JSON.stringify(e,(r,o)=>typeof o=="bigint"?o.toString()+Cy:o,n)}function Iy(e,t){if(gf(e)>t)throw new _y({givenSize:gf(e),maxSize:t})}const Jt={zero:48,nine:57,A:65,F:70,a:97,f:102};function hf(e){if(e>=Jt.zero&&e<=Jt.nine)return e-Jt.zero;if(e>=Jt.A&&e<=Jt.F)return e-(Jt.A-10);if(e>=Jt.a&&e<=Jt.f)return e-(Jt.a-10)}function Ny(e,t={}){const{dir:n,size:r=32}=t;if(r===0)return e;if(e.length>r)throw new Uy({size:e.length,targetSize:r,type:"Bytes"});const o=new Uint8Array(r);for(let s=0;s<r;s++){const i=n==="right";o[i?s:r-s-1]=e[i?s:e.length-s-1]}return o}function ea(e,t){if(ot(e)>t)throw new Gy({givenSize:ot(e),maxSize:t})}function ky(e,t){if(typeof t=="number"&&t>0&&t>ot(e)-1)throw new Ef({offset:t,position:"start",size:ot(e)})}function By(e,t,n){if(typeof t=="number"&&typeof n=="number"&&ot(e)!==n-t)throw new Ef({offset:n,position:"end",size:ot(e)})}function mf(e,t={}){const{dir:n,size:r=32}=t;if(r===0)return e;const o=e.replace("0x","");if(o.length>r*2)throw new qy({size:Math.ceil(o.length/2),targetSize:r,type:"Hex"});return`0x${o[n==="right"?"padEnd":"padStart"](r*2,"0")}`}const My=new TextEncoder;function Ly(e){return e instanceof Uint8Array?e:typeof e=="string"?Dy(e):Ry(e)}function Ry(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function Dy(e,t={}){const{size:n}=t;let r=e;n&&(ea(e,n),r=Ln(e,n));let o=r.slice(2);o.length%2&&(o=`0${o}`);const s=o.length/2,i=new Uint8Array(s);for(let c=0,a=0;c<s;c++){const u=hf(o.charCodeAt(a++)),l=hf(o.charCodeAt(a++));if(u===void 0||l===void 0)throw new be(`Invalid byte sequence ("${o[a-2]}${o[a-1]}" in "${o}").`);i[c]=u*16+l}return i}function Fy(e,t={}){const{size:n}=t,r=My.encode(e);return typeof n=="number"?(Iy(r,n),jy(r,n)):r}function jy(e,t){return Ny(e,{dir:"right",size:t})}function gf(e){return e.length}let _y=class extends be{constructor({givenSize:t,maxSize:n}){super(`Size cannot exceed \`${n}\` bytes. Given size: \`${t}\` bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeOverflowError"})}},Uy=class extends be{constructor({size:t,targetSize:n,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} size (\`${t}\`) exceeds padding size (\`${n}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeExceedsPaddingSizeError"})}};const zy=new TextEncoder,Hy=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Wy(e,t={}){const{strict:n=!1}=t;if(!e)throw new vf(e);if(typeof e!="string")throw new vf(e);if(n&&!/^0x[0-9a-fA-F]*$/.test(e))throw new xf(e);if(!e.startsWith("0x"))throw new xf(e)}function kt(...e){return`0x${e.reduce((t,n)=>t+n.replace("0x",""),"")}`}function bf(e,t={}){const n=`0x${Number(e)}`;return typeof t.size=="number"?(ea(n,t.size),Mn(n,t.size)):n}function yf(e,t={}){let n="";for(let o=0;o<e.length;o++)n+=Hy[e[o]];const r=`0x${n}`;return typeof t.size=="number"?(ea(r,t.size),Ln(r,t.size)):r}function Re(e,t={}){const{signed:n,size:r}=t,o=BigInt(e);let s;r?n?s=(1n<<BigInt(r)*8n-1n)-1n:s=2n**(BigInt(r)*8n)-1n:typeof e=="number"&&(s=BigInt(Number.MAX_SAFE_INTEGER));const i=typeof s=="bigint"&&n?-s-1n:0;if(s&&o>s||o<i){const u=typeof e=="bigint"?"n":"";throw new wf({max:s?`${s}${u}`:void 0,min:`${i}${u}`,signed:n,size:r,value:`${e}${u}`})}const a=`0x${(n&&o<0?(1n<<BigInt(r*8))+BigInt(o):o).toString(16)}`;return r?Mn(a,r):a}function ta(e,t={}){return yf(zy.encode(e),t)}function Mn(e,t){return mf(e,{dir:"left",size:t})}function Ln(e,t){return mf(e,{dir:"right",size:t})}function na(e,t,n,r={}){const{strict:o}=r;ky(e,t);const s=`0x${e.replace("0x","").slice((t??0)*2,(n??e.length)*2)}`;return o&&By(s,t,n),s}function ot(e){return Math.ceil((e.length-2)/2)}function Vy(e,t={}){const{strict:n=!1}=t;try{return Wy(e,{strict:n}),!0}catch{return!1}}class wf extends be{constructor({max:t,min:n,signed:r,size:o,value:s}){super(`Number \`${s}\` is not in safe${o?` ${o*8}-bit`:""}${r?" signed":" unsigned"} integer range ${t?`(\`${n}\` to \`${t}\`)`:`(above \`${n}\`)`}`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.IntegerOutOfRangeError"})}}class vf extends be{constructor(t){super(`Value \`${typeof t=="object"?Oy(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 xf extends be{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 Gy extends be{constructor({givenSize:t,maxSize:n}){super(`Size cannot exceed \`${n}\` bytes. Given size: \`${t}\` bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeOverflowError"})}}class Ef extends be{constructor({offset:t,position:n,size:r}){super(`Slice ${n==="start"?"starting":"ending"} at offset \`${t}\` is out-of-bounds (size: \`${r}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SliceOffsetOutOfBoundsError"})}}class qy extends be{constructor({size:t,targetSize:n,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} size (\`${t}\`) exceeds padding size (\`${n}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeExceedsPaddingSizeError"})}}function Zy(e){return{address:e.address,amount:Re(e.amount),index:Re(e.index),validatorIndex:Re(e.validatorIndex)}}function Sf(e){return{...typeof e.baseFeePerGas=="bigint"&&{baseFeePerGas:Re(e.baseFeePerGas)},...typeof e.blobBaseFee=="bigint"&&{blobBaseFee:Re(e.blobBaseFee)},...typeof e.feeRecipient=="string"&&{feeRecipient:e.feeRecipient},...typeof e.gasLimit=="bigint"&&{gasLimit:Re(e.gasLimit)},...typeof e.number=="bigint"&&{number:Re(e.number)},...typeof e.prevRandao=="bigint"&&{prevRandao:Re(e.prevRandao)},...typeof e.time=="bigint"&&{time:Re(e.time)},...e.withdrawals&&{withdrawals:e.withdrawals.map(Zy)}}}const ra=[{inputs:[{components:[{name:"target",type:"address"},{name:"allowFailure",type:"bool"},{name:"callData",type:"bytes"}],name:"calls",type:"tuple[]"}],name:"aggregate3",outputs:[{components:[{name:"success",type:"bool"},{name:"returnData",type:"bytes"}],name:"returnData",type:"tuple[]"}],stateMutability:"view",type:"function"}],oa=[{name:"query",type:"function",stateMutability:"view",inputs:[{type:"tuple[]",name:"queries",components:[{type:"address",name:"sender"},{type:"string[]",name:"urls"},{type:"bytes",name:"data"}]}],outputs:[{type:"bool[]",name:"failures"},{type:"bytes[]",name:"responses"}]},{name:"HttpError",type:"error",inputs:[{type:"uint16",name:"status"},{type:"string",name:"message"}]}],Pf=[{inputs:[],name:"ResolverNotFound",type:"error"},{inputs:[],name:"ResolverWildcardNotSupported",type:"error"},{inputs:[],name:"ResolverNotContract",type:"error"},{inputs:[{name:"returnData",type:"bytes"}],name:"ResolverError",type:"error"},{inputs:[{components:[{name:"status",type:"uint16"},{name:"message",type:"string"}],name:"errors",type:"tuple[]"}],name:"HttpError",type:"error"}],Af=[...Pf,{name:"resolve",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes"},{name:"data",type:"bytes"}],outputs:[{name:"",type:"bytes"},{name:"address",type:"address"}]},{name:"resolve",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes"},{name:"data",type:"bytes"},{name:"gateways",type:"string[]"}],outputs:[{name:"",type:"bytes"},{name:"address",type:"address"}]}],Ky=[...Pf,{name:"reverse",type:"function",stateMutability:"view",inputs:[{type:"bytes",name:"reverseName"}],outputs:[{type:"string",name:"resolvedName"},{type:"address",name:"resolvedAddress"},{type:"address",name:"reverseResolver"},{type:"address",name:"resolver"}]},{name:"reverse",type:"function",stateMutability:"view",inputs:[{type:"bytes",name:"reverseName"},{type:"string[]",name:"gateways"}],outputs:[{type:"string",name:"resolvedName"},{type:"address",name:"resolvedAddress"},{type:"address",name:"reverseResolver"},{type:"address",name:"resolver"}]}],$f=[{name:"text",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"},{name:"key",type:"string"}],outputs:[{name:"",type:"string"}]}],Tf=[{name:"addr",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"}],outputs:[{name:"",type:"address"}]},{name:"addr",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"},{name:"coinType",type:"uint256"}],outputs:[{name:"",type:"bytes"}]}],Cf=[{inputs:[{name:"_signer",type:"address"},{name:"_hash",type:"bytes32"},{name:"_signature",type:"bytes"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[{name:"_signer",type:"address"},{name:"_hash",type:"bytes32"},{name:"_signature",type:"bytes"}],outputs:[{type:"bool"}],stateMutability:"nonpayable",type:"function",name:"isValidSig"}],fr=[{type:"event",name:"Approval",inputs:[{indexed:!0,name:"owner",type:"address"},{indexed:!0,name:"spender",type:"address"},{indexed:!1,name:"value",type:"uint256"}]},{type:"event",name:"Transfer",inputs:[{indexed:!0,name:"from",type:"address"},{indexed:!0,name:"to",type:"address"},{indexed:!1,name:"value",type:"uint256"}]},{type:"function",name:"allowance",stateMutability:"view",inputs:[{name:"owner",type:"address"},{name:"spender",type:"address"}],outputs:[{type:"uint256"}]},{type:"function",name:"approve",stateMutability:"nonpayable",inputs:[{name:"spender",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]},{type:"function",name:"balanceOf",stateMutability:"view",inputs:[{name:"account",type:"address"}],outputs:[{type:"uint256"}]},{type:"function",name:"decimals",stateMutability:"view",inputs:[],outputs:[{type:"uint8"}]},{type:"function",name:"name",stateMutability:"view",inputs:[],outputs:[{type:"string"}]},{type:"function",name:"symbol",stateMutability:"view",inputs:[],outputs:[{type:"string"}]},{type:"function",name:"totalSupply",stateMutability:"view",inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"transfer",stateMutability:"nonpayable",inputs:[{name:"recipient",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]},{type:"function",name:"transferFrom",stateMutability:"nonpayable",inputs:[{name:"sender",type:"address"},{name:"recipient",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]}],Yy="0x82ad56cb",Of="0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe",Xy="0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe",Qy="0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572";class sa extends V{constructor({blockNumber:t,chain:n,contract:r}){super(`Chain "${n.name}" does not support contract "${r.name}".`,{metaMessages:["This could be due to any of the following:",...t&&r.blockCreated&&r.blockCreated>t?[`- The contract "${r.name}" was not deployed until block ${r.blockCreated} (current block ${t}).`]:[`- The chain does not have the contract "${r.name}" configured.`]],name:"ChainDoesNotSupportContract"})}}class If extends V{constructor(){super("No chain was provided to the Client.",{name:"ClientChainNotConfiguredError"})}}const ia="/docs/contract/encodeDeployData";function aa(e){const{abi:t,args:n,bytecode:r}=e;if(!n||n.length===0)return r;const o=t.find(i=>"type"in i&&i.type==="constructor");if(!o)throw new ag({docsPath:ia});if(!("inputs"in o))throw new Du({docsPath:ia});if(!o.inputs||o.inputs.length===0)throw new Du({docsPath:ia});const s=Yt(o.inputs,n);return or([r,s])}function dr({blockNumber:e,chain:t,contract:n}){var o;const r=(o=t==null?void 0:t.contracts)==null?void 0:o[n];if(!r)throw new sa({chain:t,contract:{name:n}});if(e&&r.blockCreated&&r.blockCreated>e)throw new sa({blockNumber:e,chain:t,contract:{name:n,blockCreated:r.blockCreated}});return r.address}function Nf(e,{docsPath:t,...n}){const r=(()=>{const o=Di(e,n);return o instanceof Jo?e:o})();return new Ml(r,{docsPath:t,...n})}function kf(){let e=()=>{},t=()=>{};return{promise:new Promise((r,o)=>{e=r,t=o}),resolve:e,reject:t}}const ca=new Map;function Bf({fn:e,id:t,shouldSplitBatch:n,wait:r=0,sort:o}){const s=async()=>{const l=a();i();const d=l.map(({args:f})=>f);d.length!==0&&e(d).then(f=>{o&&Array.isArray(f)&&f.sort(o);for(let p=0;p<l.length;p++){const{resolve:h}=l[p];h==null||h([f[p],f])}}).catch(f=>{for(let p=0;p<l.length;p++){const{reject:h}=l[p];h==null||h(f)}})},i=()=>ca.delete(t),c=()=>a().map(({args:l})=>l),a=()=>ca.get(t)||[],u=l=>ca.set(t,[...a(),l]);return{flush:i,async schedule(l){const{promise:d,resolve:f,reject:p}=kf();return(n==null?void 0:n([...c(),l]))&&s(),a().length>0?(u({args:l,resolve:f,reject:p}),d):(u({args:l,resolve:f,reject:p}),setTimeout(s,r),d)}}}async function ho(e,t){var P,S,E,C;const{account:n=e.account,authorizationList:r,batch:o=!!((P=e.batch)!=null&&P.multicall),blockNumber:s,blockTag:i=e.experimental_blockTag??"latest",accessList:c,blobs:a,blockOverrides:u,code:l,data:d,factory:f,factoryData:p,gas:h,gasPrice:m,maxFeePerBlobGas:w,maxFeePerGas:T,maxPriorityFeePerGas:b,nonce:$,to:M,value:L,stateOverride:F,...j}=t,g=n?xt(n):void 0;if(l&&(f||p))throw new V("Cannot provide both `code` & `factory`/`factoryData` as parameters.");if(l&&M)throw new V("Cannot provide both `code` & `to` as parameters.");const v=l&&d,A=f&&p&&M&&d,N=v||A,I=v?t1({code:l,data:d}):A?n1({data:d,factory:f,factoryData:p,to:M}):d;try{fo(t);const y=(typeof s=="bigint"?te(s):void 0)||i,k=u?Sf(u):void 0,D=ji(F),U=(C=(E=(S=e.chain)==null?void 0:S.formatters)==null?void 0:E.transactionRequest)==null?void 0:C.format,H=(U||es)({...Fi(j,{format:U}),from:g==null?void 0:g.address,accessList:c,authorizationList:r,blobs:a,data:I,gas:h,gasPrice:m,maxFeePerBlobGas:w,maxFeePerGas:T,maxPriorityFeePerGas:b,nonce:$,to:N?void 0:M,value:L});if(o&&Jy({request:H})&&!D&&!k)try{return await e1(e,{...H,blockNumber:s,blockTag:i})}catch(Z){if(!(Z instanceof If)&&!(Z instanceof sa))throw Z}const K=(()=>{const Z=[H,y];return D&&k?[...Z,D,k]:D?[...Z,D]:k?[...Z,{},k]:Z})(),W=await e.request({method:"eth_call",params:K});return W==="0x"?{data:void 0}:{data:W}}catch(O){const y=r1(O),{offchainLookup:k,offchainLookupSignature:D}=await Promise.resolve().then(()=>sw);if(e.ccipRead!==!1&&(y==null?void 0:y.slice(0,10))===D&&M)return{data:await k(e,{data:y,to:M})};throw N&&(y==null?void 0:y.slice(0,10))==="0x101bb98d"?new Db({factory:f}):Nf(O,{...t,account:g,chain:e.chain})}}function Jy({request:e}){const{data:t,to:n,...r}=e;return!(!t||t.startsWith(Yy)||!n||Object.values(r).filter(o=>typeof o<"u").length>0)}async function e1(e,t){var m;const{batchSize:n=1024,wait:r=0}=typeof((m=e.batch)==null?void 0:m.multicall)=="object"?e.batch.multicall:{},{blockNumber:o,blockTag:s=e.experimental_blockTag??"latest",data:i,multicallAddress:c,to:a}=t;let u=c;if(!u){if(!e.chain)throw new If;u=dr({blockNumber:o,chain:e.chain,contract:"multicall3"})}const d=(typeof o=="bigint"?te(o):void 0)||s,{schedule:f}=Bf({id:`${e.uid}.${d}`,wait:r,shouldSplitBatch(w){return w.reduce((b,{data:$})=>b+($.length-2),0)>n*2},fn:async w=>{const T=w.map(M=>({allowFailure:!0,callData:M.data,target:M.to})),b=It({abi:ra,args:[T],functionName:"aggregate3"}),$=await e.request({method:"eth_call",params:[{data:b,to:u},d]});return kn({abi:ra,args:[T],functionName:"aggregate3",data:$||"0x"})}}),[{returnData:p,success:h}]=await f({data:i,to:a});if(!h)throw new Yo({data:p});return p==="0x"?{data:void 0}:{data:p}}function t1(e){const{code:t,data:n}=e;return aa({abi:Bu(["constructor(bytes, bytes)"]),bytecode:Of,args:[t,n]})}function n1(e){const{data:t,factory:n,factoryData:r,to:o}=e;return aa({abi:Bu(["constructor(address, bytes, address, bytes)"]),bytecode:Xy,args:[o,t,n,r]})}function r1(e){var n;if(!(e instanceof V))return;const t=e.walk();return typeof(t==null?void 0:t.data)=="object"?(n=t.data)==null?void 0:n.data:t.data}async function en(e,t){const{abi:n,address:r,args:o,functionName:s,...i}=t,c=It({abi:n,args:o,functionName:s});try{const{data:a}=await re(e,ho,"call")({...i,data:c,to:r});return kn({abi:n,args:o,functionName:s,data:a||"0x"})}catch(a){throw ur(a,{abi:n,address:r,args:o,docsPath:"/docs/contract/readContract",functionName:s})}}async function o1(e,t){const{abi:n,address:r,args:o,dataSuffix:s,functionName:i,...c}=t,a=c.account?xt(c.account):e.account,u=It({abi:n,args:o,functionName:i});try{const{data:l}=await re(e,ho,"call")({batch:!1,data:`${u}${s?s.replace("0x",""):""}`,to:r,...c,account:a}),d=kn({abi:n,args:o,functionName:i,data:l||"0x"}),f=n.filter(p=>"name"in p&&p.name===t.functionName);return{result:d,request:{abi:f,address:r,args:o,dataSuffix:s,functionName:i,...c,account:a}}}catch(l){throw ur(l,{abi:n,address:r,args:o,docsPath:"/docs/contract/simulateContract",functionName:i,sender:a==null?void 0:a.address})}}const ua=new Map,Mf=new Map;let s1=0;function gn(e,t,n){const r=++s1,o=()=>ua.get(e)||[],s=()=>{const l=o();ua.set(e,l.filter(d=>d.id!==r))},i=()=>{const l=o();if(!l.some(f=>f.id===r))return;const d=Mf.get(e);if(l.length===1&&d){const f=d();f instanceof Promise&&f.catch(()=>{})}s()},c=o();if(ua.set(e,[...c,{id:r,fns:t}]),c&&c.length>0)return i;const a={};for(const l in t)a[l]=(...d)=>{var p,h;const f=o();if(f.length!==0)for(const m of f)(h=(p=m.fns)[l])==null||h.call(p,...d)};const u=n(a);return typeof u=="function"&&Mf.set(e,u),i}async function la(e){return new Promise(t=>setTimeout(t,e))}function mo(e,{emitOnBegin:t,initialWaitTime:n,interval:r}){let o=!0;const s=()=>o=!1;return(async()=>{let c;t&&(c=await e({unpoll:s}));const a=await(n==null?void 0:n(c))??r;await la(a);const u=async()=>{o&&(await e({unpoll:s}),await la(r),u())};u()})(),s}const i1=new Map,a1=new Map;function c1(e){const t=(o,s)=>({clear:()=>s.delete(o),get:()=>s.get(o),set:i=>s.set(o,i)}),n=t(e,i1),r=t(e,a1);return{clear:()=>{n.clear(),r.clear()},promise:n,response:r}}async function u1(e,{cacheKey:t,cacheTime:n=Number.POSITIVE_INFINITY}){const r=c1(t),o=r.response.get();if(o&&n>0&&new Date().getTime()-o.created.getTime()<n)return o.data;let s=r.promise.get();s||(s=e(),r.promise.set(s));try{const i=await s;return r.response.set({created:new Date,data:i}),i}finally{r.promise.clear()}}const l1=e=>`blockNumber.${e}`;async function go(e,{cacheTime:t=e.cacheTime}={}){const n=await u1(()=>e.request({method:"eth_blockNumber"}),{cacheKey:l1(e.uid),cacheTime:t});return BigInt(n)}async function ss(e,{filter:t}){const n="strict"in t&&t.strict,r=await t.request({method:"eth_getFilterChanges",params:[t.id]});if(typeof r[0]=="string")return r;const o=r.map(s=>Qt(s));return!("abi"in t)||!t.abi?o:Gi({abi:t.abi,logs:o,strict:n})}async function is(e,{filter:t}){return t.request({method:"eth_uninstallFilter",params:[t.id]})}function f1(e,t){const{abi:n,address:r,args:o,batch:s=!0,eventName:i,fromBlock:c,onError:a,onLogs:u,poll:l,pollingInterval:d=e.pollingInterval,strict:f}=t;return(typeof l<"u"?l:typeof c=="bigint"?!0:!(e.transport.type==="webSocket"||e.transport.type==="ipc"||e.transport.type==="fallback"&&(e.transport.transports[0].config.type==="webSocket"||e.transport.transports[0].config.type==="ipc")))?(()=>{const w=f??!1,T=Ce(["watchContractEvent",r,o,s,e.uid,i,d,w,c]);return gn(T,{onLogs:u,onError:a},b=>{let $;c!==void 0&&($=c-1n);let M,L=!1;const F=mo(async()=>{var j;if(!L){try{M=await re(e,xl,"createContractEventFilter")({abi:n,address:r,args:o,eventName:i,strict:w,fromBlock:c})}catch{}L=!0;return}try{let g;if(M)g=await re(e,ss,"getFilterChanges")({filter:M});else{const v=await re(e,go,"getBlockNumber")({});$&&$<v?g=await re(e,af,"getContractEvents")({abi:n,address:r,args:o,eventName:i,fromBlock:$+1n,toBlock:v,strict:w}):g=[],$=v}if(g.length===0)return;if(s)b.onLogs(g);else for(const v of g)b.onLogs([v])}catch(g){M&&g instanceof In&&(L=!1),(j=b.onError)==null||j.call(b,g)}},{emitOnBegin:!0,interval:d});return async()=>{M&&await re(e,is,"uninstallFilter")({filter:M}),F()}})})():(()=>{const w=f??!1,T=Ce(["watchContractEvent",r,o,s,e.uid,i,d,w]);let b=!0,$=()=>b=!1;return gn(T,{onLogs:u,onError:a},M=>((async()=>{try{const L=(()=>{if(e.transport.type==="fallback"){const g=e.transport.transports.find(v=>v.config.type==="webSocket"||v.config.type==="ipc");return g?g.value:e.transport}return e.transport})(),F=i?Ur({abi:n,eventName:i,args:o}):[],{unsubscribe:j}=await L.subscribe({params:["logs",{address:r,topics:F}],onData(g){var A;if(!b)return;const v=g.result;try{const{eventName:N,args:I}=Vi({abi:n,data:v.data,topics:v.topics,strict:f}),P=Qt(v,{args:I,eventName:N});M.onLogs([P])}catch(N){let I,P;if(N instanceof Rr||N instanceof Uo){if(f)return;I=N.abiItem.name,P=(A=N.abiItem.inputs)==null?void 0:A.some(E=>!("name"in E&&E.name))}const S=Qt(v,{args:P?[]:{},eventName:I});M.onLogs([S])}},onError(g){var v;(v=M.onError)==null||v.call(M,g)}});$=j,b||$()}catch(L){a==null||a(L)}})(),()=>$()))})()}async function d1(e,{serializedTransaction:t}){return e.request({method:"eth_sendRawTransaction",params:[t]},{retryCount:0})}function fa(e,{delay:t=100,retryCount:n=2,shouldRetry:r=()=>!0}={}){return new Promise((o,s)=>{const i=async({count:c=0}={})=>{const a=async({error:u})=>{const l=typeof t=="function"?t({count:c,error:u}):t;l&&await la(l),i({count:c+1})};try{const u=await e();o(u)}catch(u){if(c<n&&await r({count:c,error:u}))return a({error:u});s(u)}};i()})}const p1={"0x0":"reverted","0x1":"success"};function h1(e){const t={...e,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,contractAddress:e.contractAddress?e.contractAddress:null,cumulativeGasUsed:e.cumulativeGasUsed?BigInt(e.cumulativeGasUsed):null,effectiveGasPrice:e.effectiveGasPrice?BigInt(e.effectiveGasPrice):null,gasUsed:e.gasUsed?BigInt(e.gasUsed):null,logs:e.logs?e.logs.map(n=>Qt(n)):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Vt(e.transactionIndex):null,status:e.status?p1[e.status]:null,type:e.type?Hl[e.type]||e.type:null};return e.blobGasPrice&&(t.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(t.blobGasUsed=BigInt(e.blobGasUsed)),t}const da=256;let as=da,cs;function Lf(e=11){if(!cs||as+e>da*2){cs="",as=0;for(let t=0;t<da;t++)cs+=(256+Math.random()*256|0).toString(16).substring(1)}return cs.substring(as,as+++e)}function m1(e){const{batch:t,chain:n,ccipRead:r,key:o="base",name:s="Base Client",type:i="base"}=e,c=e.experimental_blockTag??(typeof(n==null?void 0:n.experimental_preconfirmationTime)=="number"?"pending":void 0),a=(n==null?void 0:n.blockTime)??12e3,u=Math.min(Math.max(Math.floor(a/2),500),4e3),l=e.pollingInterval??u,d=e.cacheTime??l,f=e.account?xt(e.account):void 0,{config:p,request:h,value:m}=e.transport({chain:n,pollingInterval:l}),w={...p,...m},T={account:f,batch:t,cacheTime:d,ccipRead:r,chain:n,key:o,name:s,pollingInterval:l,request:h,transport:w,type:i,uid:Lf(),...c?{experimental_blockTag:c}:{}};function b($){return M=>{const L=M($);for(const j in T)delete L[j];const F={...$,...L};return Object.assign(F,{extend:b(F)})}}return Object.assign(T,{extend:b(T)})}const us=new bi(8192);function g1(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(us.get(n))return us.get(n);const r=e().finally(()=>us.delete(n));return us.set(n,r),r}function b1(e,t={}){return async(n,r={})=>{var d;const{dedupe:o=!1,methods:s,retryDelay:i=150,retryCount:c=3,uid:a}={...t,...r},{method:u}=n;if((d=s==null?void 0:s.exclude)!=null&&d.includes(u))throw new Nn(new Error("method not supported"),{method:u});if(s!=null&&s.include&&!s.include.includes(u))throw new Nn(new Error("method not supported"),{method:u});const l=o?Dr(`${a}.${Ce(n)}`):void 0;return g1(()=>fa(async()=>{try{return await e(n)}catch(f){const p=f;switch(p.code){case Vr.code:throw new Vr(p);case Gr.code:throw new Gr(p);case qr.code:throw new qr(p,{method:n.method});case Zr.code:throw new Zr(p);case On.code:throw new On(p);case In.code:throw new In(p);case Kr.code:throw new Kr(p);case Yr.code:throw new Yr(p);case Xr.code:throw new Xr(p);case Nn.code:throw new Nn(p,{method:n.method});case ar.code:throw new ar(p);case Qr.code:throw new Qr(p);case cr.code:throw new cr(p);case Jr.code:throw new Jr(p);case eo.code:throw new eo(p);case to.code:throw new to(p);case no.code:throw new no(p);case ro.code:throw new ro(p);case oo.code:throw new oo(p);case so.code:throw new so(p);case io.code:throw new io(p);case ao.code:throw new ao(p);case co.code:throw new co(p);case uo.code:throw new uo(p);case lo.code:throw new lo(p);case 5e3:throw new cr(p);default:throw f instanceof V?f:new jb(p)}}},{delay:({count:f,error:p})=>{var h;if(p&&p instanceof Cn){const m=(h=p==null?void 0:p.headers)==null?void 0:h.get("Retry-After");if(m!=null&&m.match(/\d/))return Number.parseInt(m)*1e3}return~~(1<<f)*i},retryCount:c,shouldRetry:({error:f})=>y1(f)}),{enabled:o,id:l})}}function y1(e){return"code"in e&&typeof e.code=="number"?e.code===-1||e.code===ar.code||e.code===On.code:e instanceof Cn&&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 w1({key:e,methods:t,name:n,request:r,retryCount:o=3,retryDelay:s=150,timeout:i,type:c},a){const u=Lf();return{config:{key:e,methods:t,name:n,request:r,retryCount:o,retryDelay:s,timeout:i,type:c},request:b1(r,{methods:t,retryCount:o,retryDelay:s,uid:u}),value:a}}class v1 extends V{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 x1(e,{errorInstance:t=new Error("timed out"),timeout:n,signal:r}){return new Promise((o,s)=>{(async()=>{let i;try{const c=new AbortController;n>0&&(i=setTimeout(()=>{r&&c.abort()},n)),o(await e({signal:(c==null?void 0:c.signal)||null}))}catch(c){(c==null?void 0:c.name)==="AbortError"&&s(t),s(c)}finally{clearTimeout(i)}})()})}function E1(){return{current:0,take(){return this.current++},reset(){this.current=0}}}const Rf=E1();function S1(e,t={}){return{async request(n){var d;const{body:r,onRequest:o=t.onRequest,onResponse:s=t.onResponse,timeout:i=t.timeout??1e4}=n,c={...t.fetchOptions??{},...n.fetchOptions??{}},{headers:a,method:u,signal:l}=c;try{const f=await x1(async({signal:h})=>{const m={...c,body:Array.isArray(r)?Ce(r.map($=>({jsonrpc:"2.0",id:$.id??Rf.take(),...$}))):Ce({jsonrpc:"2.0",id:r.id??Rf.take(),...r}),headers:{"Content-Type":"application/json",...a},method:u||"POST",signal:l||(i>0?h:null)},w=new Request(e,m),T=await(o==null?void 0:o(w,m))??{...m,url:e};return await fetch(T.url??e,T)},{errorInstance:new Ll({body:r,url:e}),timeout:i,signal:!0});s&&await s(f);let p;if((d=f.headers.get("Content-Type"))!=null&&d.startsWith("application/json"))p=await f.json();else{p=await f.text();try{p=JSON.parse(p||"{}")}catch(h){if(f.ok)throw h;p={error:p}}}if(!f.ok)throw new Cn({body:r,details:Ce(p.error)||f.statusText,headers:f.headers,status:f.status,url:e});return p}catch(f){throw f instanceof Cn||f instanceof Ll?f:new Cn({body:r,cause:f,url:e})}}}}function pa(e,t={}){const{batch:n,fetchOptions:r,key:o="http",methods:s,name:i="HTTP JSON-RPC",onFetchRequest:c,onFetchResponse:a,retryDelay:u,raw:l}=t;return({chain:d,retryCount:f,timeout:p})=>{const{batchSize:h=1e3,wait:m=0}=typeof n=="object"?n:{},w=t.retryCount??f,T=p??t.timeout??1e4,b=e||(d==null?void 0:d.rpcUrls.default.http[0]);if(!b)throw new v1;const $=S1(b,{fetchOptions:r,onRequest:c,onResponse:a,timeout:T});return w1({key:o,methods:s,name:i,async request({method:M,params:L}){const F={method:M,params:L},{schedule:j}=Bf({id:b,wait:m,shouldSplitBatch(N){return N.length>h},fn:N=>$.request({body:N}),sort:(N,I)=>N.id-I.id}),g=async N=>n?j(N):[await $.request({body:N})],[{error:v,result:A}]=await g(F);if(l)return{error:v,result:A};if(v)throw new Ci({body:F,error:v,url:b});return A},retryCount:w,retryDelay:u,timeout:T,type:"http"},{fetchOptions:r,url:b})}}function ha(e,t){var r,o,s,i,c,a;if(!(e instanceof V))return!1;const n=e.walk(u=>u instanceof Ti);return n instanceof Ti?!!(((r=n.data)==null?void 0:r.errorName)==="ResolverNotFound"||((o=n.data)==null?void 0:o.errorName)==="ResolverWildcardNotSupported"||((s=n.data)==null?void 0:s.errorName)==="ResolverNotContract"||((i=n.data)==null?void 0:i.errorName)==="ResolverError"||((c=n.data)==null?void 0:c.errorName)==="HttpError"||(a=n.reason)!=null&&a.includes("Wildcard on non-extended resolvers is not supported")||t==="reverse"&&n.reason===Sl[50]):!1}function P1(e){const{abi:t,data:n}=e,r=sr(n,0,4),o=t.find(s=>s.type==="function"&&r===_r(gt(s)));if(!o)throw new pg(r,{docsPath:"/docs/contract/decodeFunctionData"});return{functionName:o.name,args:"inputs"in o&&o.inputs&&o.inputs.length>0?zr(o.inputs,sr(n,4)):void 0}}const ma="/docs/contract/encodeErrorResult";function Df(e){const{abi:t,errorName:n,args:r}=e;let o=t[0];if(n){const a=Tn({abi:t,args:r,name:n});if(!a)throw new ju(n,{docsPath:ma});o=a}if(o.type!=="error")throw new ju(void 0,{docsPath:ma});const s=gt(o),i=_r(s);let c="0x";if(r&&r.length>0){if(!o.inputs)throw new fg(o.name,{docsPath:ma});c=Yt(o.inputs,r)}return or([i,c])}const ga="/docs/contract/encodeFunctionResult";function A1(e){const{abi:t,functionName:n,result:r}=e;let o=t[0];if(n){const i=Tn({abi:t,name:n});if(!i)throw new Xn(n,{docsPath:ga});o=i}if(o.type!=="function")throw new Xn(void 0,{docsPath:ga});if(!o.outputs)throw new Hu(o.name,{docsPath:ga});const s=(()=>{if(o.outputs.length===0)return[];if(o.outputs.length===1)return[r];if(Array.isArray(r))return r;throw new Wu(r)})();return Yt(o.outputs,s)}const ls="x-batch-gateway:true";async function Ff(e){const{data:t,ccipRequest:n}=e,{args:[r]}=P1({abi:oa,data:t}),o=[],s=[];return await Promise.all(r.map(async(i,c)=>{try{s[c]=i.urls.includes(ls)?await Ff({data:i.data,ccipRequest:n}):await n(i),o[c]=!1}catch(a){o[c]=!0,s[c]=$1(a)}})),A1({abi:oa,functionName:"query",result:[o,s]})}function $1(e){return e.name==="HttpRequestError"&&e.status?Df({abi:oa,errorName:"HttpError",args:[e.status,e.shortMessage]}):Df({abi:[Pl],errorName:"Error",args:["shortMessage"in e?e.shortMessage:e.message]})}function jf(e){if(e.length!==66||e.indexOf("[")!==0||e.indexOf("]")!==65)return null;const t=`0x${e.slice(1,65)}`;return bt(t)?t:null}function fs(e){let t=new Uint8Array(32).fill(0);if(!e)return Te(t);const n=e.split(".");for(let r=n.length-1;r>=0;r-=1){const o=jf(n[r]),s=o?Jn(o):ke(An(n[r]),"bytes");t=ke(vt([t,s]),"bytes")}return Te(t)}function T1(e){return`[${e.slice(2)}]`}function C1(e){const t=new Uint8Array(32).fill(0);return e?jf(e)||ke(An(e)):Te(t)}function ds(e){const t=e.replace(/^\.|\.$/gm,"");if(t.length===0)return new Uint8Array(1);const n=new Uint8Array(An(t).byteLength+2);let r=0;const o=t.split(".");for(let s=0;s<o.length;s++){let i=An(o[s]);i.byteLength>255&&(i=An(T1(C1(o[s])))),n[r]=i.length,n.set(i,r+1),r+=i.length+1}return n.byteLength!==r+1?n.slice(0,r+1):n}async function O1(e,t){const{blockNumber:n,blockTag:r,coinType:o,name:s,gatewayUrls:i,strict:c}=t,{chain:a}=e,u=(()=>{if(t.universalResolverAddress)return t.universalResolverAddress;if(!a)throw new Error("client chain not configured. universalResolverAddress is required.");return dr({blockNumber:n,chain:a,contract:"ensUniversalResolver"})})(),l=a==null?void 0:a.ensTlds;if(l&&!l.some(d=>s.endsWith(d)))return null;try{const d=It({abi:Tf,functionName:"addr",...o!=null?{args:[fs(s),BigInt(o)]}:{args:[fs(s)]}}),f={address:u,abi:Af,functionName:"resolve",args:[Gt(ds(s)),d,i??[ls]],blockNumber:n,blockTag:r},h=await re(e,en,"readContract")(f);if(h[0]==="0x")return null;const m=kn({abi:Tf,args:o!=null?[fs(s),BigInt(o)]:void 0,functionName:"addr",data:h[0]});return m==="0x"||Pn(m)==="0x00"?null:m}catch(d){if(c)throw d;if(ha(d,"resolve"))return null;throw d}}class I1 extends V{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 bo extends V{constructor({reason:t}){super(`ENS NFT avatar URI is invalid. ${t}`,{name:"EnsAvatarInvalidNftUriError"})}}class ba extends V{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 N1 extends V{constructor({namespace:t}){super(`ENS NFT avatar namespace "${t}" is not supported. Must be "erc721" or "erc1155".`,{name:"EnsAvatarUnsupportedNamespaceError"})}}const k1=/(?<protocol>https?:\/\/[^\/]*|ipfs:\/|ipns:\/|ar:\/)?(?<root>\/)?(?<subpath>ipfs\/|ipns\/)?(?<target>[\w\-.]+)(?<subtarget>\/.*)?/,B1=/^(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>\/.*)?$/,M1=/^data:([a-zA-Z\-/+]*);base64,([^"].*)/,L1=/^data:([a-zA-Z\-/+]*)?(;[a-zA-Z0-9].*?)?(,)/;async function R1(e){try{const t=await fetch(e,{method:"HEAD"});if(t.status===200){const n=t.headers.get("content-type");return n==null?void 0:n.startsWith("image/")}return!1}catch(t){return typeof t=="object"&&typeof t.response<"u"||!globalThis.hasOwnProperty("Image")?!1:new Promise(n=>{const r=new Image;r.onload=()=>{n(!0)},r.onerror=()=>{n(!1)},r.src=e})}}function _f(e,t){return e?e.endsWith("/")?e.slice(0,-1):e:t}function Uf({uri:e,gatewayUrls:t}){const n=M1.test(e);if(n)return{uri:e,isOnChain:!0,isEncoded:n};const r=_f(t==null?void 0:t.ipfs,"https://ipfs.io"),o=_f(t==null?void 0:t.arweave,"https://arweave.net"),s=e.match(k1),{protocol:i,subpath:c,target:a,subtarget:u=""}=(s==null?void 0:s.groups)||{},l=i==="ipns:/"||c==="ipns/",d=i==="ipfs:/"||c==="ipfs/"||B1.test(e);if(e.startsWith("http")&&!l&&!d){let p=e;return t!=null&&t.arweave&&(p=e.replace(/https:\/\/arweave.net/g,t==null?void 0:t.arweave)),{uri:p,isOnChain:!1,isEncoded:!1}}if((l||d)&&a)return{uri:`${r}/${l?"ipns":"ipfs"}/${a}${u}`,isOnChain:!1,isEncoded:!1};if(i==="ar:/"&&a)return{uri:`${o}/${a}${u||""}`,isOnChain:!1,isEncoded:!1};let f=e.replace(L1,"");if(f.startsWith("<svg")&&(f=`data:image/svg+xml;base64,${btoa(f)}`),f.startsWith("data:")||f.startsWith("{"))return{uri:f,isOnChain:!0,isEncoded:!1};throw new ba({uri:e})}function zf(e){if(typeof e!="object"||!("image"in e)&&!("image_url"in e)&&!("image_data"in e))throw new I1({data:e});return e.image||e.image_url||e.image_data}async function D1({gatewayUrls:e,uri:t}){try{const n=await fetch(t).then(o=>o.json());return await ya({gatewayUrls:e,uri:zf(n)})}catch{throw new ba({uri:t})}}async function ya({gatewayUrls:e,uri:t}){const{uri:n,isOnChain:r}=Uf({uri:t,gatewayUrls:e});if(r||await R1(n))return n;throw new ba({uri:t})}function F1(e){let t=e;t.startsWith("did:nft:")&&(t=t.replace("did:nft:","").replace(/_/g,"/"));const[n,r,o]=t.split("/"),[s,i]=n.split(":"),[c,a]=r.split(":");if(!s||s.toLowerCase()!=="eip155")throw new bo({reason:"Only EIP-155 supported"});if(!i)throw new bo({reason:"Chain ID not found"});if(!a)throw new bo({reason:"Contract address not found"});if(!o)throw new bo({reason:"Token ID not found"});if(!c)throw new bo({reason:"ERC namespace not found"});return{chainID:Number.parseInt(i),namespace:c.toLowerCase(),contractAddress:a,tokenID:o}}async function j1(e,{nft:t}){if(t.namespace==="erc721")return en(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 en(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 N1({namespace:t.namespace})}async function _1(e,{gatewayUrls:t,record:n}){return/eip155:/i.test(n)?U1(e,{gatewayUrls:t,record:n}):ya({uri:n,gatewayUrls:t})}async function U1(e,{gatewayUrls:t,record:n}){const r=F1(n),o=await j1(e,{nft:r}),{uri:s,isOnChain:i,isEncoded:c}=Uf({uri:o,gatewayUrls:t});if(i&&(s.includes("data:application/json;base64,")||s.startsWith("{"))){const u=c?atob(s.replace("data:application/json;base64,","")):s,l=JSON.parse(u);return ya({uri:zf(l),gatewayUrls:t})}let a=r.tokenID;return r.namespace==="erc1155"&&(a=a.replace("0x","").padStart(64,"0")),D1({gatewayUrls:t,uri:s.replace(/(?:0x)?{id}/,a)})}async function Hf(e,t){const{blockNumber:n,blockTag:r,key:o,name:s,gatewayUrls:i,strict:c}=t,{chain:a}=e,u=(()=>{if(t.universalResolverAddress)return t.universalResolverAddress;if(!a)throw new Error("client chain not configured. universalResolverAddress is required.");return dr({blockNumber:n,chain:a,contract:"ensUniversalResolver"})})(),l=a==null?void 0:a.ensTlds;if(l&&!l.some(d=>s.endsWith(d)))return null;try{const d={address:u,abi:Af,functionName:"resolve",args:[Gt(ds(s)),It({abi:$f,functionName:"text",args:[fs(s),o]}),i??[ls]],blockNumber:n,blockTag:r},p=await re(e,en,"readContract")(d);if(p[0]==="0x")return null;const h=kn({abi:$f,functionName:"text",data:p[0]});return h===""?null:h}catch(d){if(c)throw d;if(ha(d,"resolve"))return null;throw d}}async function z1(e,{blockNumber:t,blockTag:n,assetGatewayUrls:r,name:o,gatewayUrls:s,strict:i,universalResolverAddress:c}){const a=await re(e,Hf,"getEnsText")({blockNumber:t,blockTag:n,key:"avatar",name:o,universalResolverAddress:c,gatewayUrls:s,strict:i});if(!a)return null;try{return await _1(e,{record:a,gatewayUrls:r})}catch{return null}}async function H1(e,{address:t,blockNumber:n,blockTag:r,gatewayUrls:o,strict:s,universalResolverAddress:i}){let c=i;if(!c){if(!e.chain)throw new Error("client chain not configured. universalResolverAddress is required.");c=dr({blockNumber:n,chain:e.chain,contract:"ensUniversalResolver"})}const a=`${t.toLowerCase().substring(2)}.addr.reverse`;try{const u={address:c,abi:Ky,functionName:"reverse",args:[Gt(ds(a))],blockNumber:n,blockTag:r},l=re(e,en,"readContract"),[d,f]=o?await l({...u,args:[...u.args,o]}):await l(u);return t.toLowerCase()!==f.toLowerCase()?null:d}catch(u){if(s)throw u;if(ha(u,"reverse"))return null;throw u}}async function W1(e,t){const{blockNumber:n,blockTag:r,name:o}=t,{chain:s}=e,i=(()=>{if(t.universalResolverAddress)return t.universalResolverAddress;if(!s)throw new Error("client chain not configured. universalResolverAddress is required.");return dr({blockNumber:n,chain:s,contract:"ensUniversalResolver"})})(),c=s==null?void 0:s.ensTlds;if(c&&!c.some(u=>o.endsWith(u)))throw new Error(`${o} is not a valid ENS TLD (${c==null?void 0:c.join(", ")}) for chain "${s.name}" (id: ${s.id}).`);const[a]=await re(e,en,"readContract")({address:i,abi:[{inputs:[{type:"bytes"}],name:"findResolver",outputs:[{type:"address"},{type:"bytes32"}],stateMutability:"view",type:"function"}],functionName:"findResolver",args:[Gt(ds(o))],blockNumber:n,blockTag:r});return a}async function Wf(e,t){var w,T,b;const{account:n=e.account,blockNumber:r,blockTag:o="latest",blobs:s,data:i,gas:c,gasPrice:a,maxFeePerBlobGas:u,maxFeePerGas:l,maxPriorityFeePerGas:d,to:f,value:p,...h}=t,m=n?xt(n):void 0;try{fo(t);const M=(typeof r=="bigint"?te(r):void 0)||o,L=(b=(T=(w=e.chain)==null?void 0:w.formatters)==null?void 0:T.transactionRequest)==null?void 0:b.format,j=(L||es)({...Fi(h,{format:L}),from:m==null?void 0:m.address,blobs:s,data:i,gas:c,gasPrice:a,maxFeePerBlobGas:u,maxFeePerGas:l,maxPriorityFeePerGas:d,to:f,value:p}),g=await e.request({method:"eth_createAccessList",params:[j,M]});return{accessList:g.accessList,gasUsed:BigInt(g.gasUsed)}}catch($){throw Nf($,{...t,account:m,chain:e.chain})}}async function V1(e){const t=Zo(e,{method:"eth_newBlockFilter"}),n=await e.request({method:"eth_newBlockFilter"});return{id:n,request:t(n),type:"block"}}async function Vf(e,{address:t,args:n,event:r,events:o,fromBlock:s,strict:i,toBlock:c}={}){const a=o??(r?[r]:void 0),u=Zo(e,{method:"eth_newFilter"});let l=[];a&&(l=[a.flatMap(p=>Ur({abi:[p],eventName:p.name,args:n}))],r&&(l=l[0]));const d=await e.request({method:"eth_newFilter",params:[{address:t,fromBlock:typeof s=="bigint"?te(s):s,toBlock:typeof c=="bigint"?te(c):c,...l.length?{topics:l}:{}}]});return{abi:a,args:n,eventName:r?r.name:void 0,fromBlock:s,id:d,request:u(d),strict:!!i,toBlock:c,type:"event"}}async function Gf(e){const t=Zo(e,{method:"eth_newPendingTransactionFilter"}),n=await e.request({method:"eth_newPendingTransactionFilter"});return{id:n,request:t(n),type:"transaction"}}async function G1(e){const t=await e.request({method:"eth_blobBaseFee"});return BigInt(t)}async function q1(e,{blockHash:t,blockNumber:n,blockTag:r="latest"}={}){const o=n!==void 0?te(n):void 0;let s;return t?s=await e.request({method:"eth_getBlockTransactionCountByHash",params:[t]},{dedupe:!0}):s=await e.request({method:"eth_getBlockTransactionCountByNumber",params:[o||r]},{dedupe:!!o}),Vt(s)}async function qf(e,{address:t,blockNumber:n,blockTag:r="latest"}){const o=n!==void 0?te(n):void 0,s=await e.request({method:"eth_getCode",params:[t,o||r]},{dedupe:!!o});if(s!=="0x")return s}class Z1 extends V{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 K1(e,t){const{address:n,factory:r,factoryData:o}=t;try{const[s,i,c,a,u,l,d]=await re(e,en,"readContract")({abi:Y1,address:n,functionName:"eip712Domain",factory:r,factoryData:o});return{domain:{name:i,version:c,chainId:Number(a),verifyingContract:u,salt:l},extensions:d,fields:s}}catch(s){const i=s;throw i.name==="ContractFunctionExecutionError"&&i.cause.name==="ContractFunctionZeroDataError"?new Z1({address:n}):i}}const Y1=[{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"}];function X1(e){var t;return{baseFeePerGas:e.baseFeePerGas.map(n=>BigInt(n)),gasUsedRatio:e.gasUsedRatio,oldestBlock:BigInt(e.oldestBlock),reward:(t=e.reward)==null?void 0:t.map(n=>n.map(r=>BigInt(r)))}}async function Q1(e,{blockCount:t,blockNumber:n,blockTag:r="latest",rewardPercentiles:o}){const s=typeof n=="bigint"?te(n):void 0,i=await e.request({method:"eth_feeHistory",params:[te(t),s||r,o]},{dedupe:!!s});return X1(i)}async function J1(e,{filter:t}){const n=t.strict??!1,o=(await t.request({method:"eth_getFilterLogs",params:[t.id]})).map(s=>Qt(s));return t.abi?Gi({abi:t.abi,logs:o,strict:n}):o}class ew extends V{constructor({callbackSelector:t,cause:n,data:r,extraData:o,sender:s,urls:i}){var c;super(n.shortMessage||"An error occurred while fetching for an offchain result.",{cause:n,metaMessages:[...n.metaMessages||[],(c=n.metaMessages)!=null&&c.length?"":[],"Offchain Gateway Call:",i&&[" Gateway URL(s):",...i.map(a=>` ${Wr(a)}`)],` Sender: ${s}`,` Data: ${r}`,` Callback selector: ${t}`,` Extra data: ${o}`].flat(),name:"OffchainLookupError"})}}class tw extends V{constructor({result:t,url:n}){super("Offchain gateway response is malformed. Response data must be a hex value.",{metaMessages:[`Gateway URL: ${Wr(n)}`,`Response: ${Ce(t)}`],name:"OffchainLookupResponseMalformedError"})}}class nw extends V{constructor({sender:t,to:n}){super("Reverted sender address does not match target contract address (`to`).",{metaMessages:[`Contract address: ${n}`,`OffchainLookup sender address: ${t}`],name:"OffchainLookupSenderMismatchError"})}}const rw="0x556f1830",Zf={name:"OffchainLookup",type:"error",inputs:[{name:"sender",type:"address"},{name:"urls",type:"string[]"},{name:"callData",type:"bytes"},{name:"callbackFunction",type:"bytes4"},{name:"extraData",type:"bytes"}]};async function ow(e,{blockNumber:t,blockTag:n,data:r,to:o}){const{args:s}=Cl({data:r,abi:[Zf]}),[i,c,a,u,l]=s,{ccipRead:d}=e,f=d&&typeof(d==null?void 0:d.request)=="function"?d.request:Kf;try{if(!ts(o,i))throw new nw({sender:i,to:o});const p=c.includes(ls)?await Ff({data:a,ccipRequest:f}):await f({data:a,sender:i,urls:c}),{data:h}=await ho(e,{blockNumber:t,blockTag:n,data:vt([u,Yt([{type:"bytes"},{type:"bytes"}],[p,l])]),to:o});return h}catch(p){throw new ew({callbackSelector:u,cause:p,data:r,extraData:l,sender:i,urls:c})}}async function Kf({data:e,sender:t,urls:n}){var o;let r=new Error("An unknown error occurred.");for(let s=0;s<n.length;s++){const i=n[s],c=i.includes("{data}")?"GET":"POST",a=c==="POST"?{data:e,sender:t}:void 0,u=c==="POST"?{"Content-Type":"application/json"}:{};try{const l=await fetch(i.replace("{sender}",t.toLowerCase()).replace("{data}",e),{body:JSON.stringify(a),headers:u,method:c});let d;if((o=l.headers.get("Content-Type"))!=null&&o.startsWith("application/json")?d=(await l.json()).data:d=await l.text(),!l.ok){r=new Cn({body:a,details:d!=null&&d.error?Ce(d.error):l.statusText,headers:l.headers,status:l.status,url:i});continue}if(!bt(d)){r=new tw({result:d,url:i});continue}return d}catch(l){r=new Cn({body:a,details:l.message,url:i})}}throw r}const sw=Object.freeze(Object.defineProperty({__proto__:null,ccipRequest:Kf,offchainLookup:ow,offchainLookupAbiItem:Zf,offchainLookupSignature:rw},Symbol.toStringTag,{value:"Module"}));function Yf(e){return{formatters:void 0,fees:void 0,serializers:void 0,...e}}class iw extends V{constructor({domain:t}){super(`Invalid domain "${Ce(t)}".`,{metaMessages:["Must be a valid EIP-712 domain."]})}}class aw extends V{constructor({primaryType:t,types:n}){super(`Invalid primary type \`${t}\` must be one of \`${JSON.stringify(Object.keys(n))}\`.`,{docsPath:"/api/glossary/Errors#typeddatainvalidprimarytypeerror",metaMessages:["Check that the primary type is a key in `types`."]})}}class cw extends V{constructor({type:t}){super(`Struct type "${t}" is invalid.`,{metaMessages:["Struct type must not be a Solidity type."],name:"InvalidStructTypeError"})}}function uw(e){const{domain:t={},message:n,primaryType:r}=e,o={EIP712Domain:hw({domain:t}),...e.types};pw({domain:t,message:n,primaryType:r,types:o});const s=["0x1901"];return t&&s.push(lw({domain:t,types:o})),r!=="EIP712Domain"&&s.push(Xf({data:n,primaryType:r,types:o})),ke(vt(s))}function lw({domain:e,types:t}){return Xf({data:e,primaryType:"EIP712Domain",types:t})}function Xf({data:e,primaryType:t,types:n}){const r=Qf({data:e,primaryType:t,types:n});return ke(r)}function Qf({data:e,primaryType:t,types:n}){const r=[{type:"bytes32"}],o=[fw({primaryType:t,types:n})];for(const s of n[t]){const[i,c]=ed({types:n,name:s.name,type:s.type,value:e[s.name]});r.push(i),o.push(c)}return Yt(r,o)}function fw({primaryType:e,types:t}){const n=Gt(dw({primaryType:e,types:t}));return ke(n)}function dw({primaryType:e,types:t}){let n="";const r=Jf({primaryType:e,types:t});r.delete(e);const o=[e,...Array.from(r).sort()];for(const s of o)n+=`${s}(${t[s].map(({name:i,type:c})=>`${c} ${i}`).join(",")})`;return n}function Jf({primaryType:e,types:t},n=new Set){const r=e.match(/^\w*/u),o=r==null?void 0:r[0];if(n.has(o)||t[o]===void 0)return n;n.add(o);for(const s of t[o])Jf({primaryType:s.type,types:t},n);return n}function ed({types:e,name:t,type:n,value:r}){if(e[n]!==void 0)return[{type:"bytes32"},ke(Qf({data:r,primaryType:n,types:e}))];if(n==="bytes")return r=`0x${(r.length%2?"0":"")+r.slice(2)}`,[{type:"bytes32"},ke(r)];if(n==="string")return[{type:"bytes32"},ke(Gt(r))];if(n.lastIndexOf("]")===n.length-1){const o=n.slice(0,n.lastIndexOf("[")),s=r.map(i=>ed({name:t,type:o,types:e,value:i}));return[{type:"bytes32"},ke(Yt(s.map(([i])=>i),s.map(([,i])=>i)))]}return[{type:n},r]}function pw(e){const{domain:t,message:n,primaryType:r,types:o}=e,s=(i,c)=>{for(const a of i){const{name:u,type:l}=a,d=c[u],f=l.match(bl);if(f&&(typeof d=="number"||typeof d=="bigint")){const[m,w,T]=f;te(d,{signed:w==="int",size:Number.parseInt(T)/8})}if(l==="address"&&typeof d=="string"&&!rt(d))throw new pn({address:d});const p=l.match(rb);if(p){const[m,w]=p;if(w&&xe(d)!==Number.parseInt(w))throw new mg({expectedSize:Number.parseInt(w),givenSize:xe(d)})}const h=o[l];h&&(mw(l),s(h,d))}};if(o.EIP712Domain&&t){if(typeof t!="object")throw new iw({domain:t});s(o.EIP712Domain,t)}if(r!=="EIP712Domain")if(o[r])s(o[r],n);else throw new aw({primaryType:r,types:o})}function hw({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 mw(e){if(e==="address"||e==="bool"||e==="string"||e.startsWith("bytes")||e.startsWith("uint")||e.startsWith("int"))throw new cw({type:e})}const gw=`Ethereum Signed Message:
75
75
  `;function bw(e){const t=typeof e=="string"?Dr(e):typeof e.raw=="string"?e.raw:Te(e.raw),n=Dr(`${gw}${xe(t)}`);return vt([n,t])}function td(e,t){return ke(bw(e),t)}const nd="0x6492649264926492649264926492649264926492649264926492649264926492";function yw(e){return gl(e,-32)===nd}function ww(e){const{address:t,data:n,signature:r,to:o="hex"}=e,s=or([Yt([{type:"address"},{type:"bytes"},{type:"bytes"}],[t,n,r]),nd]);return o==="hex"?s:wt(s)}class vw extends V{constructor({value:t}){super(`Number \`${t}\` is not a valid decimal number.`,{name:"InvalidDecimalNumberError"})}}function xw(e,t){if(!/^(-?)([0-9]*)\.?([0-9]*)$/.test(e))throw new vw({value:e});let[n,r="0"]=e.split(".");const o=n.startsWith("-");if(o&&(n=n.slice(1)),r=r.replace(/(0+)$/,""),t===0)Math.round(+`.${r}`)===1&&(n=`${BigInt(n)+1n}`),r="";else if(r.length>t){const[s,i,c]=[r.slice(0,t-1),r.slice(t-1,t),r.slice(t)],a=Math.round(+`${i}.${c}`);a>9?r=`${BigInt(s)+BigInt(1)}0`.padStart(s.length+1,"0"):r=`${s}${a}`,r.length>t&&(r=r.slice(1),n=`${BigInt(n)+1n}`),r=r.slice(0,t)}else r=r.padEnd(t,"0");return BigInt(`${o?"-":""}${n}${r}`)}function Ew(e){return e.map(t=>({...t,value:BigInt(t.value)}))}function Sw(e){return{...e,balance:e.balance?BigInt(e.balance):void 0,nonce:e.nonce?Vt(e.nonce):void 0,storageProof:e.storageProof?Ew(e.storageProof):void 0}}async function Pw(e,{address:t,blockNumber:n,blockTag:r,storageKeys:o}){const s=r??"latest",i=n!==void 0?te(n):void 0,c=await e.request({method:"eth_getProof",params:[t,o,i||s]});return Sw(c)}async function Aw(e,{address:t,blockNumber:n,blockTag:r="latest",slot:o}){const s=n!==void 0?te(n):void 0;return await e.request({method:"eth_getStorageAt",params:[t,o,s||r]})}async function wa(e,{blockHash:t,blockNumber:n,blockTag:r,hash:o,index:s}){var l,d,f;const i=r||"latest",c=n!==void 0?te(n):void 0;let a=null;if(o?a=await e.request({method:"eth_getTransactionByHash",params:[o]},{dedupe:!0}):t?a=await e.request({method:"eth_getTransactionByBlockHashAndIndex",params:[t,te(s)]},{dedupe:!0}):a=await e.request({method:"eth_getTransactionByBlockNumberAndIndex",params:[c||i,te(s)]},{dedupe:!!c}),!a)throw new kl({blockHash:t,blockNumber:n,blockTag:i,hash:o,index:s});return(((f=(d=(l=e.chain)==null?void 0:l.formatters)==null?void 0:d.transaction)==null?void 0:f.format)||Wl)(a)}async function $w(e,{hash:t,transactionReceipt:n}){const[r,o]=await Promise.all([re(e,go,"getBlockNumber")({}),t?re(e,wa,"getTransaction")({hash:t}):void 0]),s=(n==null?void 0:n.blockNumber)||(o==null?void 0:o.blockNumber);return s?r-s+1n:0n}async function ps(e,{hash:t}){var o,s,i;const n=await e.request({method:"eth_getTransactionReceipt",params:[t]},{dedupe:!0});if(!n)throw new Bl({hash:t});return(((i=(s=(o=e.chain)==null?void 0:o.formatters)==null?void 0:s.transactionReceipt)==null?void 0:i.format)||h1)(n)}async function Tw(e,t){var T;const{account:n,allowFailure:r=!0,batchSize:o,blockNumber:s,blockTag:i,multicallAddress:c,stateOverride:a}=t,u=t.contracts,l=o??(typeof((T=e.batch)==null?void 0:T.multicall)=="object"&&e.batch.multicall.batchSize||1024);let d=c;if(!d){if(!e.chain)throw new Error("client chain not configured. multicallAddress is required.");d=dr({blockNumber:s,chain:e.chain,contract:"multicall3"})}const f=[[]];let p=0,h=0;for(let b=0;b<u.length;b++){const{abi:$,address:M,args:L,functionName:F}=u[b];try{const j=It({abi:$,args:L,functionName:F});h+=(j.length-2)/2,l>0&&h>l&&f[p].length>0&&(p++,h=(j.length-2)/2,f[p]=[]),f[p]=[...f[p],{allowFailure:!0,callData:j,target:M}]}catch(j){const g=ur(j,{abi:$,address:M,args:L,docsPath:"/docs/contract/multicall",functionName:F,sender:n});if(!r)throw g;f[p]=[...f[p],{allowFailure:!0,callData:"0x",target:M}]}}const m=await Promise.allSettled(f.map(b=>re(e,en,"readContract")({abi:ra,account:n,address:d,args:[b],blockNumber:s,blockTag:i,functionName:"aggregate3",stateOverride:a}))),w=[];for(let b=0;b<m.length;b++){const $=m[b];if($.status==="rejected"){if(!r)throw $.reason;for(let L=0;L<f[b].length;L++)w.push({status:"failure",error:$.reason,result:void 0});continue}const M=$.value;for(let L=0;L<M.length;L++){const{returnData:F,success:j}=M[L],{callData:g}=f[b][L],{abi:v,address:A,functionName:N,args:I}=u[w.length];try{if(g==="0x")throw new Lr;if(!j)throw new Yo({data:F});const P=kn({abi:v,args:I,data:F,functionName:N});w.push(r?{result:P,status:"success"}:P)}catch(P){const S=ur(P,{abi:v,address:A,args:I,docsPath:"/docs/contract/multicall",functionName:N});if(!r)throw S;w.push({error:S,result:void 0,status:"failure"})}}}if(w.length!==u.length)throw new V("multicall results mismatch");return w}async function va(e,t){const{blockNumber:n,blockTag:r=e.experimental_blockTag??"latest",blocks:o,returnFullTransactions:s,traceTransfers:i,validation:c}=t;try{const a=[];for(const f of o){const p=f.blockOverrides?Sf(f.blockOverrides):void 0,h=f.calls.map(w=>{const T=w,b=T.account?xt(T.account):void 0,$=T.abi?It(T):T.data,M={...T,data:T.dataSuffix?vt([$||"0x",T.dataSuffix]):$,from:T.from??(b==null?void 0:b.address)};return fo(M),es(M)}),m=f.stateOverrides?ji(f.stateOverrides):void 0;a.push({blockOverrides:p,calls:h,stateOverrides:m})}const l=(typeof n=="bigint"?te(n):void 0)||r;return(await e.request({method:"eth_simulateV1",params:[{blockStateCalls:a,returnFullTransactions:s,traceTransfers:i,validation:c},l]})).map((f,p)=>({...Vl(f),calls:f.calls.map((h,m)=>{var A,N;const{abi:w,args:T,functionName:b,to:$}=o[p].calls[m],M=((A=h.error)==null?void 0:A.data)??h.returnData,L=BigInt(h.gasUsed),F=(N=h.logs)==null?void 0:N.map(I=>Qt(I)),j=h.status==="0x1"?"success":"failure",g=w&&j==="success"&&M!=="0x"?kn({abi:w,data:M,functionName:b}):null,v=(()=>{var P;if(j==="success")return;let I;if(((P=h.error)==null?void 0:P.data)==="0x"?I=new Lr:h.error&&(I=new Yo(h.error)),!!I)return ur(I,{abi:w??[],address:$??"0x",args:T,functionName:b??"<unknown>"})})();return{data:M,gasUsed:L,logs:F,status:j,...j==="success"?{result:g}:{error:v}}})}))}catch(a){const u=a,l=Di(u,{});throw l instanceof Jo?u:l}}function rd(e,t={}){const{as:n=typeof e=="string"?"Hex":"Bytes"}=t,r=fl(Ly(e));return n==="Bytes"?r:yf(r)}class Cw extends Map{constructor(t){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=t}get(t){const n=super.get(t);return super.has(t)&&n!==void 0&&(this.delete(t),super.set(t,n)),n}set(t,n){if(super.set(t,n),this.maxSize&&this.size>this.maxSize){const r=this.keys().next().value;r&&this.delete(r)}return this}}const xa={checksum:new Cw(8192)}.checksum,Ow=/^0x[a-fA-F0-9]{40}$/;function hs(e,t={}){const{strict:n=!0}=t;if(!Ow.test(e))throw new od({address:e,cause:new Nw});if(n){if(e.toLowerCase()===e)return;if(Iw(e)!==e)throw new od({address:e,cause:new kw})}}function Iw(e){if(xa.has(e))return xa.get(e);hs(e,{strict:!1});const t=e.substring(2).toLowerCase(),n=rd(Fy(t),{as:"Bytes"}),r=t.split("");for(let s=0;s<40;s+=2)n[s>>1]>>4>=8&&r[s]&&(r[s]=r[s].toUpperCase()),(n[s>>1]&15)>=8&&r[s+1]&&(r[s+1]=r[s+1].toUpperCase());const o=`0x${r.join("")}`;return xa.set(e,o),o}function Ea(e,t={}){const{strict:n=!0}=t??{};try{return hs(e,{strict:n}),!0}catch{return!1}}class od extends be{constructor({address:t,cause:n}){super(`Address "${t}" is invalid.`,{cause:n}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidAddressError"})}}class Nw extends be{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 kw extends be{constructor(){super("Address does not match its checksum counterpart."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidChecksumError"})}}function Sa(e){let t=!0,n="",r=0,o="",s=!1;for(let i=0;i<e.length;i++){const c=e[i];if(["(",")",","].includes(c)&&(t=!0),c==="("&&r++,c===")"&&r--,!!t){if(r===0){if(c===" "&&["event","function","error",""].includes(o))o="";else if(o+=c,c===")"){s=!0;break}continue}if(c===" "){e[i-1]!==","&&n!==","&&n!==",("&&(n="",t=!1);continue}o+=c,n+=c}}if(!s)throw new be("Unable to normalize signature.");return o}function Pa(e,t){const n=typeof e,r=t.type;switch(r){case"address":return Ea(e,{strict:!1});case"bool":return n==="boolean";case"function":return n==="string";case"string":return n==="string";default:return r==="tuple"&&"components"in t?Object.values(t.components).every((o,s)=>Pa(Object.values(e)[s],o)):/^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(r)?n==="number"||n==="bigint":/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(r)?n==="string"||e instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\[[0-9]{0,}\])+$/.test(r)?Array.isArray(e)&&e.every(o=>Pa(o,{...t,type:r.replace(/(\[[0-9]{0,}\])$/,"")})):!1}}function sd(e,t,n){for(const r in e){const o=e[r],s=t[r];if(o.type==="tuple"&&s.type==="tuple"&&"components"in o&&"components"in s)return sd(o.components,s.components,n[r]);const i=[o.type,s.type];if(i.includes("address")&&i.includes("bytes20")?!0:i.includes("address")&&i.includes("string")?Ea(n[r],{strict:!1}):i.includes("address")&&i.includes("bytes")?Ea(n[r],{strict:!1}):!1)return i}}function id(e,t={}){const{prepare:n=!0}=t,r=Array.isArray(e)||typeof e=="string"?Mu(e):e;return{...r,...n?{hash:pr(r)}:{}}}function Bw(e,t,n){const{args:r=[],prepare:o=!0}=n??{},s=Vy(t,{strict:!1}),i=e.filter(u=>s?u.type==="function"||u.type==="error"?ad(u)===na(t,0,4):u.type==="event"?pr(u)===t:!1:"name"in u&&u.name===t);if(i.length===0)throw new Aa({name:t});if(i.length===1)return{...i[0],...o?{hash:pr(i[0])}:{}};let c;for(const u of i){if(!("inputs"in u))continue;if(!r||r.length===0){if(!u.inputs||u.inputs.length===0)return{...u,...o?{hash:pr(u)}:{}};continue}if(!u.inputs||u.inputs.length===0||u.inputs.length!==r.length)continue;if(r.every((d,f)=>{const p="inputs"in u&&u.inputs[f];return p?Pa(d,p):!1})){if(c&&"inputs"in c&&c.inputs){const d=sd(u.inputs,c.inputs,r);if(d)throw new Lw({abiItem:u,type:d[0]},{abiItem:c,type:d[1]})}c=u}}const a=(()=>{if(c)return c;const[u,...l]=i;return{...u,overloads:l}})();if(!a)throw new Aa({name:t});return{...a,...o?{hash:pr(a)}:{}}}function ad(e){return na(pr(e),0,4)}function Mw(e){const t=typeof e=="string"?e:jo(e);return Sa(t)}function pr(e){return typeof e!="string"&&"hash"in e&&e.hash?e.hash:rd(ta(Mw(e)))}class Lw extends be{constructor(t,n){super("Found ambiguous types in overloaded ABI Items.",{metaMessages:[`\`${t.type}\` in \`${Sa(jo(t.abiItem))}\`, and`,`\`${n.type}\` in \`${Sa(jo(n.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 Aa extends be{constructor({name:t,data:n,type:r="item"}){const o=t?` with name "${t}"`:n?` with data "${n}"`:"";super(`ABI ${r}${o} not found.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiItem.NotFoundError"})}}const Rw=/^(.*)\[([0-9]*)\]$/,Dw=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,cd=/^(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 Fw({checksumAddress:e,parameters:t,values:n}){const r=[];for(let o=0;o<t.length;o++)r.push($a({checksumAddress:e,parameter:t[o],value:n[o]}));return r}function $a({checksumAddress:e=!1,parameter:t,value:n}){const r=t,o=Gw(r.type);if(o){const[s,i]=o;return _w(n,{checksumAddress:e,length:s,parameter:{...r,type:i}})}if(r.type==="tuple")return Vw(n,{checksumAddress:e,parameter:r});if(r.type==="address")return jw(n,{checksum:e});if(r.type==="bool")return zw(n);if(r.type.startsWith("uint")||r.type.startsWith("int")){const s=r.type.startsWith("int"),[,,i="256"]=cd.exec(r.type)??[];return Hw(n,{signed:s,size:Number(i)})}if(r.type.startsWith("bytes"))return Uw(n,{type:r.type});if(r.type==="string")return Ww(n);throw new dd(r.type)}function Ta(e){let t=0;for(let s=0;s<e.length;s++){const{dynamic:i,encoded:c}=e[s];i?t+=32:t+=ot(c)}const n=[],r=[];let o=0;for(let s=0;s<e.length;s++){const{dynamic:i,encoded:c}=e[s];i?(n.push(Re(t+o,{size:32})),r.push(c),o+=ot(c)):n.push(c)}return kt(...n,...r)}function jw(e,t){const{checksum:n=!1}=t;return hs(e,{strict:n}),{dynamic:!1,encoded:Mn(e.toLowerCase())}}function _w(e,t){const{checksumAddress:n,length:r,parameter:o}=t,s=r===null;if(!Array.isArray(e))throw new Zw(e);if(!s&&e.length!==r)throw new qw({expectedLength:r,givenLength:e.length,type:`${o.type}[${r}]`});let i=!1;const c=[];for(let a=0;a<e.length;a++){const u=$a({checksumAddress:n,parameter:o,value:e[a]});u.dynamic&&(i=!0),c.push(u)}if(s||i){const a=Ta(c);if(s){const u=Re(c.length,{size:32});return{dynamic:!0,encoded:c.length>0?kt(u,a):u}}if(i)return{dynamic:!0,encoded:a}}return{dynamic:!1,encoded:kt(...c.map(({encoded:a})=>a))}}function Uw(e,{type:t}){const[,n]=t.split("bytes"),r=ot(e);if(!n){let o=e;return r%32!==0&&(o=Ln(o,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:kt(Mn(Re(r,{size:32})),o)}}if(r!==Number.parseInt(n))throw new ld({expectedSize:Number.parseInt(n),value:e});return{dynamic:!1,encoded:Ln(e)}}function zw(e){if(typeof e!="boolean")throw new be(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:Mn(bf(e))}}function Hw(e,{signed:t,size:n}){if(typeof n=="number"){const r=2n**(BigInt(n)-(t?1n:0n))-1n,o=t?-r-1n:0n;if(e>r||e<o)throw new wf({max:r.toString(),min:o.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:Re(e,{size:32,signed:t})}}function Ww(e){const t=ta(e),n=Math.ceil(ot(t)/32),r=[];for(let o=0;o<n;o++)r.push(Ln(na(t,o*32,(o+1)*32)));return{dynamic:!0,encoded:kt(Ln(Re(ot(t),{size:32})),...r)}}function Vw(e,t){const{checksumAddress:n,parameter:r}=t;let o=!1;const s=[];for(let i=0;i<r.components.length;i++){const c=r.components[i],a=Array.isArray(e)?i:c.name,u=$a({checksumAddress:n,parameter:c,value:e[a]});s.push(u),u.dynamic&&(o=!0)}return{dynamic:o,encoded:o?Ta(s):kt(...s.map(({encoded:i})=>i))}}function Gw(e){const t=e.match(/^(.*)\[(\d+)?\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function ud(e,t,n){const{checksumAddress:r=!1}={};if(e.length!==t.length)throw new fd({expectedLength:e.length,givenLength:t.length});const o=Fw({checksumAddress:r,parameters:e,values:t}),s=Ta(o);return s.length===0?"0x":s}function Ca(e,t){if(e.length!==t.length)throw new fd({expectedLength:e.length,givenLength:t.length});const n=[];for(let r=0;r<e.length;r++){const o=e[r],s=t[r];n.push(Ca.encode(o,s))}return kt(...n)}(function(e){function t(n,r,o=!1){if(n==="address"){const a=r;return hs(a),Mn(a.toLowerCase(),o?32:0)}if(n==="string")return ta(r);if(n==="bytes")return r;if(n==="bool")return Mn(bf(r),o?32:1);const s=n.match(cd);if(s){const[a,u,l="256"]=s,d=Number.parseInt(l)/8;return Re(r,{size:o?32:d,signed:u==="int"})}const i=n.match(Dw);if(i){const[a,u]=i;if(Number.parseInt(u)!==(r.length-2)/2)throw new ld({expectedSize:Number.parseInt(u),value:r});return Ln(r,o?32:0)}const c=n.match(Rw);if(c&&Array.isArray(r)){const[a,u]=c,l=[];for(let d=0;d<r.length;d++)l.push(t(u,r[d],!0));return l.length===0?"0x":kt(...l)}throw new dd(n)}e.encode=t})(Ca||(Ca={}));class qw extends be{constructor({expectedLength:t,givenLength:n,type:r}){super(`Array length mismatch for type \`${r}\`. Expected: \`${t}\`. Given: \`${n}\`.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.ArrayLengthMismatchError"})}}class ld extends be{constructor({expectedSize:t,value:n}){super(`Size of bytes "${n}" (bytes${ot(n)}) does not match expected size (bytes${t}).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.BytesSizeMismatchError"})}}class fd extends be{constructor({expectedLength:t,givenLength:n}){super(["ABI encoding parameters/values length mismatch.",`Expected length (parameters): ${t}`,`Given length (values): ${n}`].join(`
76
76
  `)),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.LengthMismatchError"})}}class Zw extends be{constructor(t){super(`Value \`${t}\` is not a valid array.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidArrayError"})}}class dd extends be{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 Kw(e,t){var o;const{bytecode:n,args:r}=t;return kt(n,(o=e.inputs)!=null&&o.length&&(r!=null&&r.length)?ud(e.inputs,r):"0x")}function Yw(e){return id(e)}function Xw(e,...t){const{overloads:n}=e,r=n?Qw([e,...n],e.name,{args:t[0]}):e,o=Jw(r),s=t.length>0?ud(r.inputs,t[0]):void 0;return s?kt(o,s):o}function hr(e,t={}){return id(e,t)}function Qw(e,t,n){const r=Bw(e,t,n);if(r.type!=="function")throw new Aa({name:t,type:"function"});return r}function Jw(e){return ad(e)}const ev="0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",Bt="0x0000000000000000000000000000000000000000",tv="0x6080604052348015600e575f80fd5b5061016d8061001c5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f8b2cb4f1461002d575b5f80fd5b610047600480360381019061004291906100db565b61005d565b604051610054919061011e565b60405180910390f35b5f8173ffffffffffffffffffffffffffffffffffffffff16319050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100aa82610081565b9050919050565b6100ba816100a0565b81146100c4575f80fd5b50565b5f813590506100d5816100b1565b92915050565b5f602082840312156100f0576100ef61007d565b5b5f6100fd848285016100c7565b91505092915050565b5f819050919050565b61011881610106565b82525050565b5f6020820190506101315f83018461010f565b9291505056fea26469706673582212203b9fe929fe995c7cf9887f0bdba8a36dd78e8b73f149b17d2d9ad7cd09d2dc6264736f6c634300081a0033";async function nv(e,t){const{blockNumber:n,blockTag:r,calls:o,stateOverrides:s,traceAssetChanges:i,traceTransfers:c,validation:a}=t,u=t.account?xt(t.account):void 0;if(i&&!u)throw new V("`account` is required when `traceAssetChanges` is true");const l=u?Kw(Yw("constructor(bytes, bytes)"),{bytecode:Of,args:[tv,Xw(hr("function getBalance(address)"),[u.address])]}):void 0,d=i?await Promise.all(t.calls.map(async y=>{if(!y.data&&!y.abi)return;const{accessList:k}=await Wf(e,{account:u.address,...y,data:y.abi?It(y):y.data});return k.map(({address:D,storageKeys:U})=>U.length>0?D:null)})).then(y=>y.flat().filter(Boolean)):[],f=await va(e,{blockNumber:n,blockTag:r,blocks:[...i?[{calls:[{data:l}],stateOverrides:s},{calls:d.map((y,k)=>({abi:[hr("function balanceOf(address) returns (uint256)")],functionName:"balanceOf",args:[u.address],to:y,from:Bt,nonce:k})),stateOverrides:[{address:Bt,nonce:0}]}]:[],{calls:[...o,{}].map(y=>({...y,from:u==null?void 0:u.address})),stateOverrides:s},...i?[{calls:[{data:l}]},{calls:d.map((y,k)=>({abi:[hr("function balanceOf(address) returns (uint256)")],functionName:"balanceOf",args:[u.address],to:y,from:Bt,nonce:k})),stateOverrides:[{address:Bt,nonce:0}]},{calls:d.map((y,k)=>({to:y,abi:[hr("function decimals() returns (uint256)")],functionName:"decimals",from:Bt,nonce:k})),stateOverrides:[{address:Bt,nonce:0}]},{calls:d.map((y,k)=>({to:y,abi:[hr("function tokenURI(uint256) returns (string)")],functionName:"tokenURI",args:[0n],from:Bt,nonce:k})),stateOverrides:[{address:Bt,nonce:0}]},{calls:d.map((y,k)=>({to:y,abi:[hr("function symbol() returns (string)")],functionName:"symbol",from:Bt,nonce:k})),stateOverrides:[{address:Bt,nonce:0}]}]:[]],traceTransfers:c,validation:a}),p=i?f[2]:f[0],[h,m,,w,T,b,$,M]=i?f:[],{calls:L,...F}=p,j=L.slice(0,-1)??[],g=(h==null?void 0:h.calls)??[],v=(m==null?void 0:m.calls)??[],A=[...g,...v].map(y=>y.status==="success"?Ct(y.data):null),N=(w==null?void 0:w.calls)??[],I=(T==null?void 0:T.calls)??[],P=[...N,...I].map(y=>y.status==="success"?Ct(y.data):null),S=((b==null?void 0:b.calls)??[]).map(y=>y.status==="success"?y.result:null),E=((M==null?void 0:M.calls)??[]).map(y=>y.status==="success"?y.result:null),C=(($==null?void 0:$.calls)??[]).map(y=>y.status==="success"?y.result:null),O=[];for(const[y,k]of P.entries()){const D=A[y];if(typeof k!="bigint"||typeof D!="bigint")continue;const U=S[y-1],_=E[y-1],H=C[y-1],K=y===0?{address:ev,decimals:18,symbol:"ETH"}:{address:d[y-1],decimals:H||U?Number(U??1):void 0,symbol:_??void 0};O.some(W=>W.token.address===K.address)||O.push({token:K,value:{pre:D,post:k,diff:k-D}})}return{assetChanges:O,block:F,results:j}}class pd extends mi{constructor(t,n){super(),this.finished=!1,this.destroyed=!1,Qu(t);const r=Vo(n);if(this.iHash=t.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const o=this.blockLen,s=new Uint8Array(o);s.set(r.length>o?t.create().update(r).digest():r);for(let i=0;i<s.length;i++)s[i]^=54;this.iHash.update(s),this.oHash=t.create();for(let i=0;i<s.length;i++)s[i]^=106;this.oHash.update(s),nr(s)}update(t){return tr(this),this.iHash.update(t),this}digestInto(t){tr(this),Zt(t,this.outputLen),this.finished=!0,this.iHash.digestInto(t),this.oHash.update(t),this.oHash.digestInto(t),this.destroy()}digest(){const t=new Uint8Array(this.oHash.outputLen);return this.digestInto(t),t}_cloneInto(t){t||(t=Object.create(Object.getPrototypeOf(this),{}));const{oHash:n,iHash:r,finished:o,destroyed:s,blockLen:i,outputLen:c}=this;return t=t,t.finished=o,t.destroyed=s,t.blockLen=i,t.outputLen=c,t.oHash=n._cloneInto(t.oHash),t.iHash=r._cloneInto(t.iHash),t}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}const hd=(e,t,n)=>new pd(e,t).update(n).digest();hd.create=(e,t)=>new pd(e,t);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const He=BigInt(0),De=BigInt(1),Rn=BigInt(2),md=BigInt(3),gd=BigInt(4),bd=BigInt(5),rv=BigInt(7),yd=BigInt(8),ov=BigInt(9),wd=BigInt(16);function St(e,t){const n=e%t;return n>=He?n:t+n}function st(e,t,n){let r=e;for(;t-- >He;)r*=r,r%=n;return r}function vd(e,t){if(e===He)throw new Error("invert: expected non-zero number");if(t<=He)throw new Error("invert: expected positive modulus, got "+t);let n=St(e,t),r=t,o=He,s=De;for(;n!==He;){const c=r/n,a=r%n,u=o-s*c;r=n,n=a,o=s,s=u}if(r!==De)throw new Error("invert: does not exist");return St(o,t)}function Oa(e,t,n){if(!e.eql(e.sqr(t),n))throw new Error("Cannot find square root")}function xd(e,t){const n=(e.ORDER+De)/gd,r=e.pow(t,n);return Oa(e,r,t),r}function sv(e,t){const n=(e.ORDER-bd)/yd,r=e.mul(t,Rn),o=e.pow(r,n),s=e.mul(t,o),i=e.mul(e.mul(s,Rn),o),c=e.mul(s,e.sub(i,e.ONE));return Oa(e,c,t),c}function iv(e){const t=yo(e),n=Ed(e),r=n(t,t.neg(t.ONE)),o=n(t,r),s=n(t,t.neg(r)),i=(e+rv)/wd;return(c,a)=>{let u=c.pow(a,i),l=c.mul(u,r);const d=c.mul(u,o),f=c.mul(u,s),p=c.eql(c.sqr(l),a),h=c.eql(c.sqr(d),a);u=c.cmov(u,l,p),l=c.cmov(f,d,h);const m=c.eql(c.sqr(l),a),w=c.cmov(u,l,m);return Oa(c,w,a),w}}function Ed(e){if(e<md)throw new Error("sqrt is not defined for small field");let t=e-De,n=0;for(;t%Rn===He;)t/=Rn,n++;let r=Rn;const o=yo(e);for(;Pd(o,r)===1;)if(r++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(n===1)return xd;let s=o.pow(r,t);const i=(t+De)/Rn;return function(a,u){if(a.is0(u))return u;if(Pd(a,u)!==1)throw new Error("Cannot find square root");let l=n,d=a.mul(a.ONE,s),f=a.pow(u,t),p=a.pow(u,i);for(;!a.eql(f,a.ONE);){if(a.is0(f))return a.ZERO;let h=1,m=a.sqr(f);for(;!a.eql(m,a.ONE);)if(h++,m=a.sqr(m),h===l)throw new Error("Cannot find square root");const w=De<<BigInt(l-h-1),T=a.pow(d,w);l=h,d=a.sqr(T),f=a.mul(f,d),p=a.mul(p,T)}return p}}function av(e){return e%gd===md?xd:e%yd===bd?sv:e%wd===ov?iv(e):Ed(e)}const cv=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function uv(e){const t={ORDER:"bigint",MASK:"bigint",BYTES:"number",BITS:"number"},n=cv.reduce((r,o)=>(r[o]="function",r),t);return Ji(e,n),e}function lv(e,t,n){if(n<He)throw new Error("invalid exponent, negatives unsupported");if(n===He)return e.ONE;if(n===De)return t;let r=e.ONE,o=t;for(;n>He;)n&De&&(r=e.mul(r,o)),o=e.sqr(o),n>>=De;return r}function Sd(e,t,n=!1){const r=new Array(t.length).fill(n?e.ZERO:void 0),o=t.reduce((i,c,a)=>e.is0(c)?i:(r[a]=i,e.mul(i,c)),e.ONE),s=e.inv(o);return t.reduceRight((i,c,a)=>e.is0(c)?i:(r[a]=e.mul(i,r[a]),e.mul(i,c)),s),r}function Pd(e,t){const n=(e.ORDER-De)/Rn,r=e.pow(t,n),o=e.eql(r,e.ONE),s=e.eql(r,e.ZERO),i=e.eql(r,e.neg(e.ONE));if(!o&&!s&&!i)throw new Error("invalid Legendre symbol result");return o?1:s?0:-1}function Ad(e,t){t!==void 0&&Fr(t);const n=t!==void 0?t:e.toString(2).length,r=Math.ceil(n/8);return{nBitLength:n,nByteLength:r}}function yo(e,t,n=!1,r={}){if(e<=He)throw new Error("invalid field: expected ORDER > 0, got "+e);let o,s,i=!1,c;if(typeof t=="object"&&t!=null){if(r.sqrt||n)throw new Error("cannot specify opts in two arguments");const f=t;f.BITS&&(o=f.BITS),f.sqrt&&(s=f.sqrt),typeof f.isLE=="boolean"&&(n=f.isLE),typeof f.modFromBytes=="boolean"&&(i=f.modFromBytes),c=f.allowedLengths}else typeof t=="number"&&(o=t),r.sqrt&&(s=r.sqrt);const{nBitLength:a,nByteLength:u}=Ad(e,o);if(u>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");let l;const d=Object.freeze({ORDER:e,isLE:n,BITS:a,BYTES:u,MASK:po(a),ZERO:He,ONE:De,allowedLengths:c,create:f=>St(f,e),isValid:f=>{if(typeof f!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof f);return He<=f&&f<e},is0:f=>f===He,isValidNot0:f=>!d.is0(f)&&d.isValid(f),isOdd:f=>(f&De)===De,neg:f=>St(-f,e),eql:(f,p)=>f===p,sqr:f=>St(f*f,e),add:(f,p)=>St(f+p,e),sub:(f,p)=>St(f-p,e),mul:(f,p)=>St(f*p,e),pow:(f,p)=>lv(d,f,p),div:(f,p)=>St(f*vd(p,e),e),sqrN:f=>f*f,addN:(f,p)=>f+p,subN:(f,p)=>f-p,mulN:(f,p)=>f*p,inv:f=>vd(f,e),sqrt:s||(f=>(l||(l=av(e)),l(d,f))),toBytes:f=>n?lf(f,u):Xi(f,u),fromBytes:(f,p=!0)=>{if(c){if(!c.includes(f.length)||f.length>u)throw new Error("Field.fromBytes: expected "+c+" bytes, got "+f.length);const m=new Uint8Array(u);m.set(f,n?0:m.length-f.length),f=m}if(f.length!==u)throw new Error("Field.fromBytes: expected "+u+" bytes, got "+f.length);let h=n?uf(f):os(f);if(i&&(h=St(h,e)),!p&&!d.isValid(h))throw new Error("invalid field element: outside of range 0..ORDER");return h},invertBatch:f=>Sd(d,f),cmov:(f,p,h)=>h?p:f});return Object.freeze(d)}function $d(e){if(typeof e!="bigint")throw new Error("field order must be bigint");const t=e.toString(2).length;return Math.ceil(t/8)}function Td(e){const t=$d(e);return t+Math.ceil(t/2)}function fv(e,t,n=!1){const r=e.length,o=$d(t),s=Td(t);if(r<16||r<s||r>1024)throw new Error("expected "+s+"-1024 bytes of input, got "+r);const i=n?uf(e):os(e),c=St(i,t-De)+De;return n?lf(c,o):Xi(c,o)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const mr=BigInt(0),Dn=BigInt(1);function ms(e,t){const n=t.negate();return e?n:t}function Ia(e,t){const n=Sd(e.Fp,t.map(r=>r.Z));return t.map((r,o)=>e.fromAffine(r.toAffine(n[o])))}function Cd(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw new Error("invalid window size, expected [1.."+t+"], got W="+e)}function Na(e,t){Cd(e,t);const n=Math.ceil(t/e)+1,r=2**(e-1),o=2**e,s=po(e),i=BigInt(e);return{windows:n,windowSize:r,mask:s,maxNumber:o,shiftBy:i}}function Od(e,t,n){const{windowSize:r,mask:o,maxNumber:s,shiftBy:i}=n;let c=Number(e&o),a=e>>i;c>r&&(c-=s,a+=Dn);const u=t*r,l=u+Math.abs(c)-1,d=c===0,f=c<0,p=t%2!==0;return{nextN:a,offset:l,isZero:d,isNeg:f,isNegF:p,offsetF:u}}function dv(e,t){if(!Array.isArray(e))throw new Error("array expected");e.forEach((n,r)=>{if(!(n instanceof t))throw new Error("invalid point at index "+r)})}function pv(e,t){if(!Array.isArray(e))throw new Error("array of scalars expected");e.forEach((n,r)=>{if(!t.isValid(n))throw new Error("invalid scalar at index "+r)})}const ka=new WeakMap,Id=new WeakMap;function Ba(e){return Id.get(e)||1}function Nd(e){if(e!==mr)throw new Error("invalid wNAF")}class hv{constructor(t,n){this.BASE=t.BASE,this.ZERO=t.ZERO,this.Fn=t.Fn,this.bits=n}_unsafeLadder(t,n,r=this.ZERO){let o=t;for(;n>mr;)n&Dn&&(r=r.add(o)),o=o.double(),n>>=Dn;return r}precomputeWindow(t,n){const{windows:r,windowSize:o}=Na(n,this.bits),s=[];let i=t,c=i;for(let a=0;a<r;a++){c=i,s.push(c);for(let u=1;u<o;u++)c=c.add(i),s.push(c);i=c.double()}return s}wNAF(t,n,r){if(!this.Fn.isValid(r))throw new Error("invalid scalar");let o=this.ZERO,s=this.BASE;const i=Na(t,this.bits);for(let c=0;c<i.windows;c++){const{nextN:a,offset:u,isZero:l,isNeg:d,isNegF:f,offsetF:p}=Od(r,c,i);r=a,l?s=s.add(ms(f,n[p])):o=o.add(ms(d,n[u]))}return Nd(r),{p:o,f:s}}wNAFUnsafe(t,n,r,o=this.ZERO){const s=Na(t,this.bits);for(let i=0;i<s.windows&&r!==mr;i++){const{nextN:c,offset:a,isZero:u,isNeg:l}=Od(r,i,s);if(r=c,!u){const d=n[a];o=o.add(l?d.negate():d)}}return Nd(r),o}getPrecomputes(t,n,r){let o=ka.get(n);return o||(o=this.precomputeWindow(n,t),t!==1&&(typeof r=="function"&&(o=r(o)),ka.set(n,o))),o}cached(t,n,r){const o=Ba(t);return this.wNAF(o,this.getPrecomputes(o,t,r),n)}unsafe(t,n,r,o){const s=Ba(t);return s===1?this._unsafeLadder(t,n,o):this.wNAFUnsafe(s,this.getPrecomputes(s,t,r),n,o)}createCache(t,n){Cd(n,this.bits),Id.set(t,n),ka.delete(t)}hasCache(t){return Ba(t)!==1}}function mv(e,t,n,r){let o=t,s=e.ZERO,i=e.ZERO;for(;n>mr||r>mr;)n&Dn&&(s=s.add(o)),r&Dn&&(i=i.add(o)),o=o.double(),n>>=Dn,r>>=Dn;return{p1:s,p2:i}}function gv(e,t,n,r){dv(n,e),pv(r,t);const o=n.length,s=r.length;if(o!==s)throw new Error("arrays of points and scalars must have equal length");const i=e.ZERO,c=ff(BigInt(o));let a=1;c>12?a=c-3:c>4?a=c-2:c>0&&(a=2);const u=po(a),l=new Array(Number(u)+1).fill(i),d=Math.floor((t.BITS-1)/a)*a;let f=i;for(let p=d;p>=0;p-=a){l.fill(i);for(let m=0;m<s;m++){const w=r[m],T=Number(w>>BigInt(p)&u);l[T]=l[T].add(n[m])}let h=i;for(let m=l.length-1,w=i;m>0;m--)w=w.add(l[m]),h=h.add(w);if(f=f.add(h),p!==0)for(let m=0;m<a;m++)f=f.double()}return f}function kd(e,t,n){if(t){if(t.ORDER!==e)throw new Error("Field.ORDER must match order: Fp == p, Fn == n");return uv(t),t}else return yo(e,{isLE:n})}function bv(e,t,n={},r){if(r===void 0&&(r=e==="edwards"),!t||typeof t!="object")throw new Error(`expected valid ${e} CURVE object`);for(const a of["p","n","h"]){const u=t[a];if(!(typeof u=="bigint"&&u>mr))throw new Error(`CURVE.${a} must be positive bigint`)}const o=kd(t.p,n.Fp,r),s=kd(t.n,n.Fn,r),c=["Gx","Gy","a","b"];for(const a of c)if(!o.isValid(t[a]))throw new Error(`CURVE.${a} must be valid field element of CURVE.Fp`);return t=Object.freeze(Object.assign({},t)),{CURVE:t,Fp:o,Fn:s}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Bd=(e,t)=>(e+(e>=0?t:-t)/Md)/t;function yv(e,t,n){const[[r,o],[s,i]]=t,c=Bd(i*e,n),a=Bd(-o*e,n);let u=e-c*r-a*s,l=-c*o-a*i;const d=u<nn,f=l<nn;d&&(u=-u),f&&(l=-l);const p=po(Math.ceil(ff(n)/2))+gr;if(u<nn||u>=p||l<nn||l>=p)throw new Error("splitScalar (endomorphism): failed, k="+e);return{k1neg:d,k1:u,k2neg:f,k2:l}}function Ma(e){if(!["compact","recovered","der"].includes(e))throw new Error('Signature format must be "compact", "recovered", or "der"');return e}function La(e,t){const n={};for(let r of Object.keys(t))n[r]=e[r]===void 0?t[r]:e[r];return ns(n.lowS,"lowS"),ns(n.prehash,"prehash"),n.format!==void 0&&Ma(n.format),n}class wv extends Error{constructor(t=""){super(t)}}const tn={Err:wv,_tlv:{encode:(e,t)=>{const{Err:n}=tn;if(e<0||e>256)throw new n("tlv.encode: wrong tag");if(t.length&1)throw new n("tlv.encode: unpadded data");const r=t.length/2,o=rs(r);if(o.length/2&128)throw new n("tlv.encode: long form length too big");const s=r>127?rs(o.length/2|128):"";return rs(e)+s+o+t},decode(e,t){const{Err:n}=tn;let r=0;if(e<0||e>256)throw new n("tlv.encode: wrong tag");if(t.length<2||t[r++]!==e)throw new n("tlv.decode: wrong tlv");const o=t[r++],s=!!(o&128);let i=0;if(!s)i=o;else{const a=o&127;if(!a)throw new n("tlv.decode(long): indefinite length not supported");if(a>4)throw new n("tlv.decode(long): byte length is too big");const u=t.subarray(r,r+a);if(u.length!==a)throw new n("tlv.decode: length bytes not complete");if(u[0]===0)throw new n("tlv.decode(long): zero leftmost byte");for(const l of u)i=i<<8|l;if(r+=a,i<128)throw new n("tlv.decode(long): not minimal encoding")}const c=t.subarray(r,r+i);if(c.length!==i)throw new n("tlv.decode: wrong value length");return{v:c,l:t.subarray(r+i)}}},_int:{encode(e){const{Err:t}=tn;if(e<nn)throw new t("integer: negative integers are not allowed");let n=rs(e);if(Number.parseInt(n[0],16)&8&&(n="00"+n),n.length&1)throw new t("unexpected DER parsing assertion: unpadded hex");return n},decode(e){const{Err:t}=tn;if(e[0]&128)throw new t("invalid signature integer: negative");if(e[0]===0&&!(e[1]&128))throw new t("invalid signature integer: unnecessary leading zero");return os(e)}},toSig(e){const{Err:t,_int:n,_tlv:r}=tn,o=ze("signature",e),{v:s,l:i}=r.decode(48,o);if(i.length)throw new t("invalid signature: left bytes after parsing");const{v:c,l:a}=r.decode(2,s),{v:u,l}=r.decode(2,a);if(l.length)throw new t("invalid signature: left bytes after parsing");return{r:n.decode(c),s:n.decode(u)}},hexFromSig(e){const{_tlv:t,_int:n}=tn,r=t.encode(2,n.encode(e.r)),o=t.encode(2,n.encode(e.s)),s=r+o;return t.encode(48,s)}},nn=BigInt(0),gr=BigInt(1),Md=BigInt(2),gs=BigInt(3),vv=BigInt(4);function br(e,t){const{BYTES:n}=e;let r;if(typeof t=="bigint")r=t;else{let o=ze("private key",t);try{r=e.fromBytes(o)}catch{throw new Error(`invalid private key: expected ui8a of size ${n}, got ${typeof t}`)}}if(!e.isValidNot0(r))throw new Error("invalid private key: out of range [1..N-1]");return r}function xv(e,t={}){const n=bv("weierstrass",e,t),{Fp:r,Fn:o}=n;let s=n.CURVE;const{h:i,n:c}=s;Ji(t,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object",wrapPrivateKey:"boolean"});const{endo:a}=t;if(a&&(!r.is0(s.a)||typeof a.beta!="bigint"||!Array.isArray(a.basises)))throw new Error('invalid endo: expected "beta": bigint and "basises": array');const u=Rd(r,o);function l(){if(!r.isOdd)throw new Error("compression is not supported: Field does not have .isOdd()")}function d(I,P,S){const{x:E,y:C}=P.toAffine(),O=r.toBytes(E);if(ns(S,"isCompressed"),S){l();const y=!r.isOdd(C);return dn(Ld(y),O)}else return dn(Uint8Array.of(4),O,r.toBytes(C))}function f(I){Bn(I,void 0,"Point");const{publicKey:P,publicKeyUncompressed:S}=u,E=I.length,C=I[0],O=I.subarray(1);if(E===P&&(C===2||C===3)){const y=r.fromBytes(O);if(!r.isValid(y))throw new Error("bad point: is not on curve, wrong x");const k=m(y);let D;try{D=r.sqrt(k)}catch(H){const K=H instanceof Error?": "+H.message:"";throw new Error("bad point: is not on curve, sqrt error"+K)}l();const U=r.isOdd(D);return(C&1)===1!==U&&(D=r.neg(D)),{x:y,y:D}}else if(E===S&&C===4){const y=r.BYTES,k=r.fromBytes(O.subarray(0,y)),D=r.fromBytes(O.subarray(y,y*2));if(!w(k,D))throw new Error("bad point: is not on curve");return{x:k,y:D}}else throw new Error(`bad point: got length ${E}, expected compressed=${P} or uncompressed=${S}`)}const p=t.toBytes||d,h=t.fromBytes||f;function m(I){const P=r.sqr(I),S=r.mul(P,I);return r.add(r.add(S,r.mul(I,s.a)),s.b)}function w(I,P){const S=r.sqr(P),E=m(I);return r.eql(S,E)}if(!w(s.Gx,s.Gy))throw new Error("bad curve params: generator point");const T=r.mul(r.pow(s.a,gs),vv),b=r.mul(r.sqr(s.b),BigInt(27));if(r.is0(r.add(T,b)))throw new Error("bad curve params: a or b");function $(I,P,S=!1){if(!r.isValid(P)||S&&r.is0(P))throw new Error(`bad point coordinate ${I}`);return P}function M(I){if(!(I instanceof v))throw new Error("ProjectivePoint expected")}function L(I){if(!a||!a.basises)throw new Error("no endo");return yv(I,a.basises,o.ORDER)}const F=df((I,P)=>{const{X:S,Y:E,Z:C}=I;if(r.eql(C,r.ONE))return{x:S,y:E};const O=I.is0();P==null&&(P=O?r.ONE:r.inv(C));const y=r.mul(S,P),k=r.mul(E,P),D=r.mul(C,P);if(O)return{x:r.ZERO,y:r.ZERO};if(!r.eql(D,r.ONE))throw new Error("invZ was invalid");return{x:y,y:k}}),j=df(I=>{if(I.is0()){if(t.allowInfinityPoint&&!r.is0(I.Y))return;throw new Error("bad point: ZERO")}const{x:P,y:S}=I.toAffine();if(!r.isValid(P)||!r.isValid(S))throw new Error("bad point: x or y not field elements");if(!w(P,S))throw new Error("bad point: equation left != right");if(!I.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});function g(I,P,S,E,C){return S=new v(r.mul(S.X,I),S.Y,S.Z),P=ms(E,P),S=ms(C,S),P.add(S)}class v{constructor(P,S,E){this.X=$("x",P),this.Y=$("y",S,!0),this.Z=$("z",E),Object.freeze(this)}static CURVE(){return s}static fromAffine(P){const{x:S,y:E}=P||{};if(!P||!r.isValid(S)||!r.isValid(E))throw new Error("invalid affine point");if(P instanceof v)throw new Error("projective point not allowed");return r.is0(S)&&r.is0(E)?v.ZERO:new v(S,E,r.ONE)}static fromBytes(P){const S=v.fromAffine(h(Bn(P,void 0,"point")));return S.assertValidity(),S}static fromHex(P){return v.fromBytes(ze("pointHex",P))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(P=8,S=!0){return N.createCache(this,P),S||this.multiply(gs),this}assertValidity(){j(this)}hasEvenY(){const{y:P}=this.toAffine();if(!r.isOdd)throw new Error("Field doesn't support isOdd");return!r.isOdd(P)}equals(P){M(P);const{X:S,Y:E,Z:C}=this,{X:O,Y:y,Z:k}=P,D=r.eql(r.mul(S,k),r.mul(O,C)),U=r.eql(r.mul(E,k),r.mul(y,C));return D&&U}negate(){return new v(this.X,r.neg(this.Y),this.Z)}double(){const{a:P,b:S}=s,E=r.mul(S,gs),{X:C,Y:O,Z:y}=this;let k=r.ZERO,D=r.ZERO,U=r.ZERO,_=r.mul(C,C),H=r.mul(O,O),K=r.mul(y,y),W=r.mul(C,O);return W=r.add(W,W),U=r.mul(C,y),U=r.add(U,U),k=r.mul(P,U),D=r.mul(E,K),D=r.add(k,D),k=r.sub(H,D),D=r.add(H,D),D=r.mul(k,D),k=r.mul(W,k),U=r.mul(E,U),K=r.mul(P,K),W=r.sub(_,K),W=r.mul(P,W),W=r.add(W,U),U=r.add(_,_),_=r.add(U,_),_=r.add(_,K),_=r.mul(_,W),D=r.add(D,_),K=r.mul(O,y),K=r.add(K,K),_=r.mul(K,W),k=r.sub(k,_),U=r.mul(K,H),U=r.add(U,U),U=r.add(U,U),new v(k,D,U)}add(P){M(P);const{X:S,Y:E,Z:C}=this,{X:O,Y:y,Z:k}=P;let D=r.ZERO,U=r.ZERO,_=r.ZERO;const H=s.a,K=r.mul(s.b,gs);let W=r.mul(S,O),Z=r.mul(E,y),G=r.mul(C,k),J=r.add(S,E),ne=r.add(O,y);J=r.mul(J,ne),ne=r.add(W,Z),J=r.sub(J,ne),ne=r.add(S,C);let le=r.add(O,k);return ne=r.mul(ne,le),le=r.add(W,G),ne=r.sub(ne,le),le=r.add(E,C),D=r.add(y,k),le=r.mul(le,D),D=r.add(Z,G),le=r.sub(le,D),_=r.mul(H,ne),D=r.mul(K,G),_=r.add(D,_),D=r.sub(Z,_),_=r.add(Z,_),U=r.mul(D,_),Z=r.add(W,W),Z=r.add(Z,W),G=r.mul(H,G),ne=r.mul(K,ne),Z=r.add(Z,G),G=r.sub(W,G),G=r.mul(H,G),ne=r.add(ne,G),W=r.mul(Z,ne),U=r.add(U,W),W=r.mul(le,ne),D=r.mul(J,D),D=r.sub(D,W),W=r.mul(J,Z),_=r.mul(le,_),_=r.add(_,W),new v(D,U,_)}subtract(P){return this.add(P.negate())}is0(){return this.equals(v.ZERO)}multiply(P){const{endo:S}=t;if(!o.isValidNot0(P))throw new Error("invalid scalar: out of range");let E,C;const O=y=>N.cached(this,y,k=>Ia(v,k));if(S){const{k1neg:y,k1:k,k2neg:D,k2:U}=L(P),{p:_,f:H}=O(k),{p:K,f:W}=O(U);C=H.add(W),E=g(S.beta,_,K,y,D)}else{const{p:y,f:k}=O(P);E=y,C=k}return Ia(v,[E,C])[0]}multiplyUnsafe(P){const{endo:S}=t,E=this;if(!o.isValid(P))throw new Error("invalid scalar: out of range");if(P===nn||E.is0())return v.ZERO;if(P===gr)return E;if(N.hasCache(this))return this.multiply(P);if(S){const{k1neg:C,k1:O,k2neg:y,k2:k}=L(P),{p1:D,p2:U}=mv(v,E,O,k);return g(S.beta,D,U,C,y)}else return N.unsafe(E,P)}multiplyAndAddUnsafe(P,S,E){const C=this.multiplyUnsafe(S).add(P.multiplyUnsafe(E));return C.is0()?void 0:C}toAffine(P){return F(this,P)}isTorsionFree(){const{isTorsionFree:P}=t;return i===gr?!0:P?P(v,this):N.unsafe(this,c).is0()}clearCofactor(){const{clearCofactor:P}=t;return i===gr?this:P?P(v,this):this.multiplyUnsafe(i)}isSmallOrder(){return this.multiplyUnsafe(i).is0()}toBytes(P=!0){return ns(P,"isCompressed"),this.assertValidity(),p(v,this,P)}toHex(P=!0){return rr(this.toBytes(P))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}get px(){return this.X}get py(){return this.X}get pz(){return this.Z}toRawBytes(P=!0){return this.toBytes(P)}_setWindowSize(P){this.precompute(P)}static normalizeZ(P){return Ia(v,P)}static msm(P,S){return gv(v,o,P,S)}static fromPrivateKey(P){return v.BASE.multiply(br(o,P))}}v.BASE=new v(s.Gx,s.Gy,r.ONE),v.ZERO=new v(r.ZERO,r.ONE,r.ZERO),v.Fp=r,v.Fn=o;const A=o.BITS,N=new hv(v,t.endo?Math.ceil(A/2):A);return v.BASE.precompute(8),v}function Ld(e){return Uint8Array.of(e?2:3)}function Rd(e,t){return{secretKey:t.BYTES,publicKey:1+e.BYTES,publicKeyUncompressed:1+2*e.BYTES,publicKeyHasPrefix:!0,signature:2*t.BYTES}}function Ev(e,t={}){const{Fn:n}=e,r=t.randomBytes||ol,o=Object.assign(Rd(e.Fp,n),{seed:Td(n.ORDER)});function s(p){try{return!!br(n,p)}catch{return!1}}function i(p,h){const{publicKey:m,publicKeyUncompressed:w}=o;try{const T=p.length;return h===!0&&T!==m||h===!1&&T!==w?!1:!!e.fromBytes(p)}catch{return!1}}function c(p=r(o.seed)){return fv(Bn(p,o.seed,"seed"),n.ORDER)}function a(p,h=!0){return e.BASE.multiply(br(n,p)).toBytes(h)}function u(p){const h=c(p);return{secretKey:h,publicKey:a(h)}}function l(p){if(typeof p=="bigint")return!1;if(p instanceof e)return!0;const{secretKey:h,publicKey:m,publicKeyUncompressed:w}=o;if(n.allowedLengths||h===m)return;const T=ze("key",p).length;return T===m||T===w}function d(p,h,m=!0){if(l(p)===!0)throw new Error("first arg must be private key");if(l(h)===!1)throw new Error("second arg must be public key");const w=br(n,p);return e.fromHex(h).multiply(w).toBytes(m)}return Object.freeze({getPublicKey:a,getSharedSecret:d,keygen:u,Point:e,utils:{isValidSecretKey:s,isValidPublicKey:i,randomSecretKey:c,isValidPrivateKey:s,randomPrivateKey:c,normPrivateKeyToScalar:p=>br(n,p),precompute(p=8,h=e.BASE){return h.precompute(p,!1)}},lengths:o})}function Sv(e,t,n={}){Qu(t),Ji(n,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"});const r=n.randomBytes||ol,o=n.hmac||((S,...E)=>hd(t,S,dn(...E))),{Fp:s,Fn:i}=e,{ORDER:c,BITS:a}=i,{keygen:u,getPublicKey:l,getSharedSecret:d,utils:f,lengths:p}=Ev(e,n),h={prehash:!1,lowS:typeof n.lowS=="boolean"?n.lowS:!1,format:void 0,extraEntropy:!1},m="compact";function w(S){const E=c>>gr;return S>E}function T(S,E){if(!i.isValidNot0(E))throw new Error(`invalid signature ${S}: out of range 1..Point.Fn.ORDER`);return E}function b(S,E){Ma(E);const C=p.signature,O=E==="compact"?C:E==="recovered"?C+1:void 0;return Bn(S,O,`${E} signature`)}class ${constructor(E,C,O){this.r=T("r",E),this.s=T("s",C),O!=null&&(this.recovery=O),Object.freeze(this)}static fromBytes(E,C=m){b(E,C);let O;if(C==="der"){const{r:U,s:_}=tn.toSig(Bn(E));return new $(U,_)}C==="recovered"&&(O=E[0],C="compact",E=E.subarray(1));const y=i.BYTES,k=E.subarray(0,y),D=E.subarray(y,y*2);return new $(i.fromBytes(k),i.fromBytes(D),O)}static fromHex(E,C){return this.fromBytes(Wo(E),C)}addRecoveryBit(E){return new $(this.r,this.s,E)}recoverPublicKey(E){const C=s.ORDER,{r:O,s:y,recovery:k}=this;if(k==null||![0,1,2,3].includes(k))throw new Error("recovery id invalid");if(c*Md<C&&k>1)throw new Error("recovery id is ambiguous for h>1 curve");const U=k===2||k===3?O+c:O;if(!s.isValid(U))throw new Error("recovery id 2 or 3 invalid");const _=s.toBytes(U),H=e.fromBytes(dn(Ld((k&1)===0),_)),K=i.inv(U),W=L(ze("msgHash",E)),Z=i.create(-W*K),G=i.create(y*K),J=e.BASE.multiplyUnsafe(Z).add(H.multiplyUnsafe(G));if(J.is0())throw new Error("point at infinify");return J.assertValidity(),J}hasHighS(){return w(this.s)}toBytes(E=m){if(Ma(E),E==="der")return Wo(tn.hexFromSig(this));const C=i.toBytes(this.r),O=i.toBytes(this.s);if(E==="recovered"){if(this.recovery==null)throw new Error("recovery bit must be present");return dn(Uint8Array.of(this.recovery),C,O)}return dn(C,O)}toHex(E){return rr(this.toBytes(E))}assertValidity(){}static fromCompact(E){return $.fromBytes(ze("sig",E),"compact")}static fromDER(E){return $.fromBytes(ze("sig",E),"der")}normalizeS(){return this.hasHighS()?new $(this.r,i.neg(this.s),this.recovery):this}toDERRawBytes(){return this.toBytes("der")}toDERHex(){return rr(this.toBytes("der"))}toCompactRawBytes(){return this.toBytes("compact")}toCompactHex(){return rr(this.toBytes("compact"))}}const M=n.bits2int||function(E){if(E.length>8192)throw new Error("input is too large");const C=os(E),O=E.length*8-a;return O>0?C>>BigInt(O):C},L=n.bits2int_modN||function(E){return i.create(M(E))},F=po(a);function j(S){return Py("num < 2^"+a,S,nn,F),i.toBytes(S)}function g(S,E){return Bn(S,void 0,"message"),E?Bn(t(S),void 0,"prehashed message"):S}function v(S,E,C){if(["recovered","canonical"].some(Z=>Z in C))throw new Error("sign() legacy options not supported");const{lowS:O,prehash:y,extraEntropy:k}=La(C,h);S=g(S,y);const D=L(S),U=br(i,E),_=[j(U),j(D)];if(k!=null&&k!==!1){const Z=k===!0?r(p.secretKey):k;_.push(ze("extraEntropy",Z))}const H=dn(..._),K=D;function W(Z){const G=M(Z);if(!i.isValidNot0(G))return;const J=i.inv(G),ne=e.BASE.multiply(G).toAffine(),le=i.create(ne.x);if(le===nn)return;const Se=i.create(J*i.create(K+le*U));if(Se===nn)return;let Me=(ne.x===le?0:2)|Number(ne.y&gr),Y=Se;return O&&w(Se)&&(Y=i.neg(Se),Me^=1),new $(le,Y,Me)}return{seed:H,k2sig:W}}function A(S,E,C={}){S=ze("message",S);const{seed:O,k2sig:y}=v(S,E,C);return Ay(t.outputLen,i.BYTES,o)(O,y)}function N(S){let E;const C=typeof S=="string"||Ho(S),O=!C&&S!==null&&typeof S=="object"&&typeof S.r=="bigint"&&typeof S.s=="bigint";if(!C&&!O)throw new Error("invalid signature, expected Uint8Array, hex string or Signature instance");if(O)E=new $(S.r,S.s);else if(C){try{E=$.fromBytes(ze("sig",S),"der")}catch(y){if(!(y instanceof tn.Err))throw y}if(!E)try{E=$.fromBytes(ze("sig",S),"compact")}catch{return!1}}return E||!1}function I(S,E,C,O={}){const{lowS:y,prehash:k,format:D}=La(O,h);if(C=ze("publicKey",C),E=g(ze("message",E),k),"strict"in O)throw new Error("options.strict was renamed to lowS");const U=D===void 0?N(S):$.fromBytes(ze("sig",S),D);if(U===!1)return!1;try{const _=e.fromBytes(C);if(y&&U.hasHighS())return!1;const{r:H,s:K}=U,W=L(E),Z=i.inv(K),G=i.create(W*Z),J=i.create(H*Z),ne=e.BASE.multiplyUnsafe(G).add(_.multiplyUnsafe(J));return ne.is0()?!1:i.create(ne.x)===H}catch{return!1}}function P(S,E,C={}){const{prehash:O}=La(C,h);return E=g(E,O),$.fromBytes(S,"recovered").recoverPublicKey(E).toBytes()}return Object.freeze({keygen:u,getPublicKey:l,getSharedSecret:d,utils:f,lengths:p,Point:e,sign:A,verify:I,recoverPublicKey:P,Signature:$,hash:t})}function Pv(e){const t={a:e.a,b:e.b,p:e.Fp.ORDER,n:e.n,h:e.h,Gx:e.Gx,Gy:e.Gy},n=e.Fp;let r=e.allowedPrivateKeyLengths?Array.from(new Set(e.allowedPrivateKeyLengths.map(i=>Math.ceil(i/2)))):void 0;const o=yo(t.n,{BITS:e.nBitLength,allowedLengths:r,modFromBytes:e.wrapPrivateKey}),s={Fp:n,Fn:o,allowInfinityPoint:e.allowInfinityPoint,endo:e.endo,isTorsionFree:e.isTorsionFree,clearCofactor:e.clearCofactor,fromBytes:e.fromBytes,toBytes:e.toBytes};return{CURVE:t,curveOpts:s}}function Av(e){const{CURVE:t,curveOpts:n}=Pv(e),r={hmac:e.hmac,randomBytes:e.randomBytes,lowS:e.lowS,bits2int:e.bits2int,bits2int_modN:e.bits2int_modN};return{CURVE:t,curveOpts:n,hash:e.hash,ecdsaOpts:r}}function $v(e,t){const n=t.Point;return Object.assign({},t,{ProjectivePoint:n,CURVE:Object.assign({},e,Ad(n.Fn.ORDER,n.Fn.BITS))})}function Tv(e){const{CURVE:t,curveOpts:n,hash:r,ecdsaOpts:o}=Av(e),s=xv(t,n),i=Sv(s,r,o);return $v(e,i)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function Cv(e,t){const n=r=>Tv({...e,hash:r});return{...n(t),create:n}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Ra={p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),n:BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),h:BigInt(1),a:BigInt(0),b:BigInt(7),Gx:BigInt("0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),Gy:BigInt("0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8")},Ov={beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),basises:[[BigInt("0x3086d221a7d46bcde86c90e49284eb15"),-BigInt("0xe4437ed6010e88286f547fa90abfe4c3")],[BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),BigInt("0x3086d221a7d46bcde86c90e49284eb15")]]},Dd=BigInt(2);function Iv(e){const t=Ra.p,n=BigInt(3),r=BigInt(6),o=BigInt(11),s=BigInt(22),i=BigInt(23),c=BigInt(44),a=BigInt(88),u=e*e*e%t,l=u*u*e%t,d=st(l,n,t)*l%t,f=st(d,n,t)*l%t,p=st(f,Dd,t)*u%t,h=st(p,o,t)*p%t,m=st(h,s,t)*h%t,w=st(m,c,t)*m%t,T=st(w,a,t)*w%t,b=st(T,c,t)*m%t,$=st(b,n,t)*l%t,M=st($,i,t)*h%t,L=st(M,r,t)*u%t,F=st(L,Dd,t);if(!Da.eql(Da.sqr(F),e))throw new Error("Cannot find square root");return F}const Da=yo(Ra.p,{sqrt:Iv}),Fd=Cv({...Ra,Fp:Da,lowS:!0,endo:Ov},Yl),Nv=Object.freeze(Object.defineProperty({__proto__:null,secp256k1:Fd},Symbol.toStringTag,{value:"Module"}));function kv({r:e,s:t,to:n="hex",v:r,yParity:o}){const s=(()=>{if(o===0||o===1)return o;if(r&&(r===27n||r===28n||r>=35n))return r%2n===0n?1:0;throw new Error("Invalid `v` or `yParity` value")})(),i=`0x${new Fd.Signature(Ct(e),Ct(t)).toCompactHex()}${s===0?"1b":"1c"}`;return n==="hex"?i:wt(i)}async function Fa(e,t){var d,f,p;const{address:n,factory:r,factoryData:o,hash:s,signature:i,universalSignatureVerifierAddress:c=(p=(f=(d=e.chain)==null?void 0:d.contracts)==null?void 0:f.universalSignatureVerifier)==null?void 0:p.address,...a}=t,u=bt(i)?i:typeof i=="object"&&"r"in i&&"s"in i?kv(i):Te(i),l=await(async()=>!r&&!o||yw(u)?u:ww({address:r,data:o,signature:u}))();try{const h=c?{to:c,data:It({abi:Cf,functionName:"isValidSig",args:[n,s,l]}),...a}:{data:aa({abi:Cf,args:[n,s,l],bytecode:Qy}),...a},{data:m}=await re(e,ho,"call")(h);return Pg(m??"0x0")}catch(h){try{if(ts($n(n),await Dl({hash:s,signature:i})))return!0}catch{}if(h instanceof Ml)return!1;throw h}}async function Bv(e,{address:t,message:n,factory:r,factoryData:o,signature:s,...i}){const c=td(n);return Fa(e,{address:t,factory:r,factoryData:o,hash:c,signature:s,...i})}async function Mv(e,t){const{address:n,factory:r,factoryData:o,signature:s,message:i,primaryType:c,types:a,domain:u,...l}=t,d=uw({message:i,primaryType:c,types:a,domain:u});return Fa(e,{address:n,factory:r,factoryData:o,hash:d,signature:s,...l})}function jd(e,{emitOnBegin:t=!1,emitMissed:n=!1,onBlockNumber:r,onError:o,poll:s,pollingInterval:i=e.pollingInterval}){const c=typeof s<"u"?s:!(e.transport.type==="webSocket"||e.transport.type==="ipc"||e.transport.type==="fallback"&&(e.transport.transports[0].config.type==="webSocket"||e.transport.transports[0].config.type==="ipc"));let a;return c?(()=>{const d=Ce(["watchBlockNumber",e.uid,t,n,i]);return gn(d,{onBlockNumber:r,onError:o},f=>mo(async()=>{var p;try{const h=await re(e,go,"getBlockNumber")({cacheTime:0});if(a){if(h===a)return;if(h-a>1&&n)for(let m=a+1n;m<h;m++)f.onBlockNumber(m,a),a=m}(!a||h>a)&&(f.onBlockNumber(h,a),a=h)}catch(h){(p=f.onError)==null||p.call(f,h)}},{emitOnBegin:t,interval:i}))})():(()=>{const d=Ce(["watchBlockNumber",e.uid,t,n]);return gn(d,{onBlockNumber:r,onError:o},f=>{let p=!0,h=()=>p=!1;return(async()=>{try{const m=(()=>{if(e.transport.type==="fallback"){const T=e.transport.transports.find(b=>b.config.type==="webSocket"||b.config.type==="ipc");return T?T.value:e.transport}return e.transport})(),{unsubscribe:w}=await m.subscribe({params:["newHeads"],onData(T){var $;if(!p)return;const b=Ct(($=T.result)==null?void 0:$.number);f.onBlockNumber(b,a),a=b},onError(T){var b;(b=f.onError)==null||b.call(f,T)}});h=w,p||h()}catch(m){o==null||o(m)}})(),()=>h()})})()}async function Lv(e,t){const{checkReplacement:n=!0,confirmations:r=1,hash:o,onReplaced:s,retryCount:i=6,retryDelay:c=({count:L})=>~~(1<<L)*200,timeout:a=18e4}=t,u=Ce(["waitForTransactionReceipt",e.uid,o]),l=(()=>{var L;return t.pollingInterval?t.pollingInterval:(L=e.chain)!=null&&L.experimental_preconfirmationTime?e.chain.experimental_preconfirmationTime:e.pollingInterval})();let d,f,p,h=!1,m,w;const{promise:T,resolve:b,reject:$}=kf(),M=a?setTimeout(()=>{w(),m(),$(new Bb({hash:o}))},a):void 0;return m=gn(u,{onReplaced:s,resolve:b,reject:$},async L=>{if(p=await re(e,ps,"getTransactionReceipt")({hash:o}).catch(()=>{}),p&&r<=1){clearTimeout(M),L.resolve(p),m();return}w=re(e,jd,"watchBlockNumber")({emitMissed:!0,emitOnBegin:!0,poll:!0,pollingInterval:l,async onBlockNumber(F){const j=v=>{clearTimeout(M),w(),v(),m()};let g=F;if(!h)try{if(p){if(r>1&&(!p.blockNumber||g-p.blockNumber+1n<r))return;j(()=>L.resolve(p));return}if(n&&!d&&(h=!0,await fa(async()=>{d=await re(e,wa,"getTransaction")({hash:o}),d.blockNumber&&(g=d.blockNumber)},{delay:c,retryCount:i}),h=!1),p=await re(e,ps,"getTransactionReceipt")({hash:o}),r>1&&(!p.blockNumber||g-p.blockNumber+1n<r))return;j(()=>L.resolve(p))}catch(v){if(v instanceof kl||v instanceof Bl){if(!d){h=!1;return}try{f=d,h=!0;const A=await fa(()=>re(e,Nt,"getBlock")({blockNumber:g,includeTransactions:!0}),{delay:c,retryCount:i,shouldRetry:({error:P})=>P instanceof zl});h=!1;const N=A.transactions.find(({from:P,nonce:S})=>P===f.from&&S===f.nonce);if(!N||(p=await re(e,ps,"getTransactionReceipt")({hash:N.hash}),r>1&&(!p.blockNumber||g-p.blockNumber+1n<r)))return;let I="replaced";N.to===f.to&&N.value===f.value&&N.input===f.input?I="repriced":N.from===N.to&&N.value===0n&&(I="cancelled"),j(()=>{var P;(P=L.onReplaced)==null||P.call(L,{reason:I,replacedTransaction:f,transaction:N,transactionReceipt:p}),L.resolve(p)})}catch(A){j(()=>L.reject(A))}}else j(()=>L.reject(v))}}})}),T}function Rv(e,{blockTag:t=e.experimental_blockTag??"latest",emitMissed:n=!1,emitOnBegin:r=!1,onBlock:o,onError:s,includeTransactions:i,poll:c,pollingInterval:a=e.pollingInterval}){const u=typeof c<"u"?c:!(e.transport.type==="webSocket"||e.transport.type==="ipc"||e.transport.type==="fallback"&&(e.transport.transports[0].config.type==="webSocket"||e.transport.transports[0].config.type==="ipc")),l=i??!1;let d;return u?(()=>{const h=Ce(["watchBlocks",e.uid,t,n,r,l,a]);return gn(h,{onBlock:o,onError:s},m=>mo(async()=>{var w;try{const T=await re(e,Nt,"getBlock")({blockTag:t,includeTransactions:l});if(T.number!==null&&(d==null?void 0:d.number)!=null){if(T.number===d.number)return;if(T.number-d.number>1&&n)for(let b=(d==null?void 0:d.number)+1n;b<T.number;b++){const $=await re(e,Nt,"getBlock")({blockNumber:b,includeTransactions:l});m.onBlock($,d),d=$}}((d==null?void 0:d.number)==null||t==="pending"&&(T==null?void 0:T.number)==null||T.number!==null&&T.number>d.number)&&(m.onBlock(T,d),d=T)}catch(T){(w=m.onError)==null||w.call(m,T)}},{emitOnBegin:r,interval:a}))})():(()=>{let h=!0,m=!0,w=()=>h=!1;return(async()=>{try{r&&re(e,Nt,"getBlock")({blockTag:t,includeTransactions:l}).then($=>{h&&m&&(o($,void 0),m=!1)}).catch(s);const T=(()=>{if(e.transport.type==="fallback"){const $=e.transport.transports.find(M=>M.config.type==="webSocket"||M.config.type==="ipc");return $?$.value:e.transport}return e.transport})(),{unsubscribe:b}=await T.subscribe({params:["newHeads"],async onData($){var L;if(!h)return;const M=await re(e,Nt,"getBlock")({blockNumber:(L=$.result)==null?void 0:L.number,includeTransactions:l}).catch(()=>{});h&&(o(M,d),m=!1,d=M)},onError($){s==null||s($)}});w=b,h||w()}catch(T){s==null||s(T)}})(),()=>w()})()}function Dv(e,{address:t,args:n,batch:r=!0,event:o,events:s,fromBlock:i,onError:c,onLogs:a,poll:u,pollingInterval:l=e.pollingInterval,strict:d}){const f=typeof u<"u"?u:typeof i=="bigint"?!0:!(e.transport.type==="webSocket"||e.transport.type==="ipc"||e.transport.type==="fallback"&&(e.transport.transports[0].config.type==="webSocket"||e.transport.transports[0].config.type==="ipc")),p=d??!1;return f?(()=>{const w=Ce(["watchEvent",t,n,r,e.uid,o,l,i]);return gn(w,{onLogs:a,onError:c},T=>{let b;i!==void 0&&(b=i-1n);let $,M=!1;const L=mo(async()=>{var F;if(!M){try{$=await re(e,Vf,"createEventFilter")({address:t,args:n,event:o,events:s,strict:p,fromBlock:i})}catch{}M=!0;return}try{let j;if($)j=await re(e,ss,"getFilterChanges")({filter:$});else{const g=await re(e,go,"getBlockNumber")({});b&&b!==g?j=await re(e,qi,"getLogs")({address:t,args:n,event:o,events:s,fromBlock:b+1n,toBlock:g}):j=[],b=g}if(j.length===0)return;if(r)T.onLogs(j);else for(const g of j)T.onLogs([g])}catch(j){$&&j instanceof In&&(M=!1),(F=T.onError)==null||F.call(T,j)}},{emitOnBegin:!0,interval:l});return async()=>{$&&await re(e,is,"uninstallFilter")({filter:$}),L()}})})():(()=>{let w=!0,T=()=>w=!1;return(async()=>{try{const b=(()=>{if(e.transport.type==="fallback"){const F=e.transport.transports.find(j=>j.config.type==="webSocket"||j.config.type==="ipc");return F?F.value:e.transport}return e.transport})(),$=s??(o?[o]:void 0);let M=[];$&&(M=[$.flatMap(j=>Ur({abi:[j],eventName:j.name,args:n}))],o&&(M=M[0]));const{unsubscribe:L}=await b.subscribe({params:["logs",{address:t,topics:M}],onData(F){var g;if(!w)return;const j=F.result;try{const{eventName:v,args:A}=Vi({abi:$??[],data:j.data,topics:j.topics,strict:p}),N=Qt(j,{args:A,eventName:v});a([N])}catch(v){let A,N;if(v instanceof Rr||v instanceof Uo){if(d)return;A=v.abiItem.name,N=(g=v.abiItem.inputs)==null?void 0:g.some(P=>!("name"in P&&P.name))}const I=Qt(j,{args:N?[]:{},eventName:A});a([I])}},onError(F){c==null||c(F)}});T=L,w||T()}catch(b){c==null||c(b)}})(),()=>T()})()}function Fv(e,{batch:t=!0,onError:n,onTransactions:r,poll:o,pollingInterval:s=e.pollingInterval}){return(typeof o<"u"?o:e.transport.type!=="webSocket"&&e.transport.type!=="ipc")?(()=>{const u=Ce(["watchPendingTransactions",e.uid,t,s]);return gn(u,{onTransactions:r,onError:n},l=>{let d;const f=mo(async()=>{var p;try{if(!d)try{d=await re(e,Gf,"createPendingTransactionFilter")({});return}catch(m){throw f(),m}const h=await re(e,ss,"getFilterChanges")({filter:d});if(h.length===0)return;if(t)l.onTransactions(h);else for(const m of h)l.onTransactions([m])}catch(h){(p=l.onError)==null||p.call(l,h)}},{emitOnBegin:!0,interval:s});return async()=>{d&&await re(e,is,"uninstallFilter")({filter:d}),f()}})})():(()=>{let u=!0,l=()=>u=!1;return(async()=>{try{const{unsubscribe:d}=await e.transport.subscribe({params:["newPendingTransactions"],onData(f){if(!u)return;const p=f.result;r([p])},onError(f){n==null||n(f)}});l=d,u||l()}catch(d){n==null||n(d)}})(),()=>l()})()}function jv(e){var d,f,p;const{scheme:t,statement:n,...r}=((d=e.match(_v))==null?void 0:d.groups)??{},{chainId:o,expirationTime:s,issuedAt:i,notBefore:c,requestId:a,...u}=((f=e.match(Uv))==null?void 0:f.groups)??{},l=(p=e.split("Resources:")[1])==null?void 0:p.split(`
77
- - `).slice(1);return{...r,...u,...o?{chainId:Number(o)}:{},...s?{expirationTime:new Date(s)}:{},...i?{issuedAt:new Date(i)}:{},...c?{notBefore:new Date(c)}:{},...a?{requestId:a}:{},...l?{resources:l}:{},...t?{scheme:t}:{},...n?{statement:n}:{}}}const _v=/^(?:(?<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)?/,Uv=/(?: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 zv(e){const{address:t,domain:n,message:r,nonce:o,scheme:s,time:i=new Date}=e;if(n&&r.domain!==n||o&&r.nonce!==o||s&&r.scheme!==s||r.expirationTime&&i>=r.expirationTime||r.notBefore&&i<r.notBefore)return!1;try{if(!r.address||!rt(r.address,{strict:!1})||t&&!ts(r.address,t))return!1}catch{return!1}return!0}async function Hv(e,t){const{address:n,domain:r,message:o,nonce:s,scheme:i,signature:c,time:a=new Date,...u}=t,l=jv(o);if(!l.address||!zv({address:n,domain:r,message:l,nonce:s,scheme:i,time:a}))return!1;const f=td(o);return Fa(e,{address:l.address,hash:f,signature:c,...u})}function Wv(e){return{call:t=>ho(e,t),createAccessList:t=>Wf(e,t),createBlockFilter:()=>V1(e),createContractEventFilter:t=>xl(e,t),createEventFilter:t=>Vf(e,t),createPendingTransactionFilter:()=>Gf(e),estimateContractGas:t=>vy(e,t),estimateGas:t=>Wi(e,t),getBalance:t=>of(e,t),getBlobBaseFee:()=>G1(e),getBlock:t=>Nt(e,t),getBlockNumber:t=>go(e,t),getBlockTransactionCount:t=>q1(e,t),getBytecode:t=>qf(e,t),getChainId:()=>tf(e),getCode:t=>qf(e,t),getContractEvents:t=>af(e,t),getEip712Domain:t=>K1(e,t),getEnsAddress:t=>O1(e,t),getEnsAvatar:t=>z1(e,t),getEnsName:t=>H1(e,t),getEnsResolver:t=>W1(e,t),getEnsText:t=>Hf(e,t),getFeeHistory:t=>Q1(e,t),estimateFeesPerGas:t=>ry(e,t),getFilterChanges:t=>ss(e,t),getFilterLogs:t=>J1(e,t),getGasPrice:()=>Ui(e),getLogs:t=>qi(e,t),getProof:t=>Pw(e,t),estimateMaxPriorityFeePerGas:t=>ny(e,t),getStorageAt:t=>Aw(e,t),getTransaction:t=>wa(e,t),getTransactionConfirmations:t=>$w(e,t),getTransactionCount:t=>ql(e,t),getTransactionReceipt:t=>ps(e,t),multicall:t=>Tw(e,t),prepareTransactionRequest:t=>rf(e,t),readContract:t=>en(e,t),sendRawTransaction:t=>d1(e,t),simulate:t=>va(e,t),simulateBlocks:t=>va(e,t),simulateCalls:t=>nv(e,t),simulateContract:t=>o1(e,t),verifyMessage:t=>Bv(e,t),verifySiweMessage:t=>Hv(e,t),verifyTypedData:t=>Mv(e,t),uninstallFilter:t=>is(e,t),waitForTransactionReceipt:t=>Lv(e,t),watchBlocks:t=>Rv(e,t),watchBlockNumber:t=>jd(e,t),watchContractEvent:t=>f1(e,t),watchEvent:t=>Dv(e,t),watchPendingTransactions:t=>Fv(e,t)}}function ja(e){const{key:t="public",name:n="Public Client"}=e;return m1({...e,key:t,name:n,type:"publicClient"}).extend(Wv)}const _a=Yf({id:42161,name:"Arbitrum One",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},blockTime:250,rpcUrls:{default:{http:["https://arb1.arbitrum.io/rpc"]}},blockExplorers:{default:{name:"Arbiscan",url:"https://arbiscan.io",apiUrl:"https://api.arbiscan.io/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:7654707}}}),_d=Yf({id:56,name:"BNB Smart Chain",nativeCurrency:{decimals:18,name:"BNB",symbol:"BNB"},rpcUrls:{default:{http:["https://56.rpc.thirdweb.com"]}},blockExplorers:{default:{name:"BscScan",url:"https://bscscan.com",apiUrl:"https://api.bscscan.com/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:15921452}}});function bs({client:e,tokenAddress:t,holder:n,decimals:r,fallbackFormatted:o="0",pollingInterval:s=12e3}){const[i,c]=x.useState(null),[a,u]=x.useState(o);return x.useEffect(()=>{let l,d;const f=async()=>{try{const p=await e.readContract({address:t,abi:fr,functionName:"balanceOf",args:[n]});c(p),u($i(p,r))}catch{u(o)}};f();try{l=e.watchContractEvent({address:t,abi:fr,eventName:"Transfer",args:{to:n},onLogs:()=>{f()},poll:!0,pollingInterval:s}),d=e.watchContractEvent({address:t,abi:fr,eventName:"Transfer",args:{from:n},onLogs:()=>{f()},poll:!0,pollingInterval:s})}catch{}return()=>{l==null||l(),d==null||d()}},[e,t,n,r,o,s]),{value:i,formatted:a}}const Vv="0x55d398326f99059fF775485246999027B3197955",Gv="0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9",qv="0xaf88d065e77c8cC2239327C5EDb3A432268e5831",Zv="0x0520b0a951658db92b8a2dd9f146bb8223638740",Kv="0xceeed84620e5eb9ab1d6dfc316867d2cda332e41",Yv="0x81144d6E7084928830f9694a201E8c1ce6eD0cb2";function Ud(e,t,n=[]){if(e&&typeof e=="string")return e;if(t&&typeof t=="string")return t;if(n&&n.length>0)return n[0]}function Xv(e={}){const{bscRpcUrl:t,arbitrumRpcUrl:n,pollingInterval:r=12e3}=e,o=x.useMemo(()=>{var i,c,a;return ja({chain:_d,transport:pa(Ud(t,typeof window<"u"?(i=window==null?void 0:window.ENV)==null?void 0:i.CHAIN_RPC_URL_56:void 0,((a=(c=_d.rpcUrls)==null?void 0:c.default)==null?void 0:a.http)||[]))})},[t]),s=x.useMemo(()=>{var i,c,a;return ja({chain:_a,transport:pa(Ud(n,typeof window<"u"?(i=window==null?void 0:window.ENV)==null?void 0:i.CHAIN_RPC_URL_42161:void 0,((a=(c=_a.rpcUrls)==null?void 0:c.default)==null?void 0:a.http)||[]))})},[n]);return bs({client:o,tokenAddress:Vv,holder:Zv,decimals:18,fallbackFormatted:"0",pollingInterval:r}),bs({client:s,tokenAddress:Gv,holder:Kv,decimals:6,fallbackFormatted:"0",pollingInterval:r}),bs({client:s,tokenAddress:qv,holder:Yv,decimals:6,fallbackFormatted:"0",pollingInterval:r}),{BNB_USDT_BALANCE:"13000",ARB_USDT_BALANCE:"0",ARB_USDC_BALANCE:"11000"}}const Qv=()=>({openDeposit:x.useCallback(t=>{},[])}),Jv=()=>({openWithdraw:x.useCallback(t=>{},[])}),Fn="MPC",Ua="EVM";/**
77
+ - `).slice(1);return{...r,...u,...o?{chainId:Number(o)}:{},...s?{expirationTime:new Date(s)}:{},...i?{issuedAt:new Date(i)}:{},...c?{notBefore:new Date(c)}:{},...a?{requestId:a}:{},...l?{resources:l}:{},...t?{scheme:t}:{},...n?{statement:n}:{}}}const _v=/^(?:(?<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)?/,Uv=/(?: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 zv(e){const{address:t,domain:n,message:r,nonce:o,scheme:s,time:i=new Date}=e;if(n&&r.domain!==n||o&&r.nonce!==o||s&&r.scheme!==s||r.expirationTime&&i>=r.expirationTime||r.notBefore&&i<r.notBefore)return!1;try{if(!r.address||!rt(r.address,{strict:!1})||t&&!ts(r.address,t))return!1}catch{return!1}return!0}async function Hv(e,t){const{address:n,domain:r,message:o,nonce:s,scheme:i,signature:c,time:a=new Date,...u}=t,l=jv(o);if(!l.address||!zv({address:n,domain:r,message:l,nonce:s,scheme:i,time:a}))return!1;const f=td(o);return Fa(e,{address:l.address,hash:f,signature:c,...u})}function Wv(e){return{call:t=>ho(e,t),createAccessList:t=>Wf(e,t),createBlockFilter:()=>V1(e),createContractEventFilter:t=>xl(e,t),createEventFilter:t=>Vf(e,t),createPendingTransactionFilter:()=>Gf(e),estimateContractGas:t=>vy(e,t),estimateGas:t=>Wi(e,t),getBalance:t=>of(e,t),getBlobBaseFee:()=>G1(e),getBlock:t=>Nt(e,t),getBlockNumber:t=>go(e,t),getBlockTransactionCount:t=>q1(e,t),getBytecode:t=>qf(e,t),getChainId:()=>tf(e),getCode:t=>qf(e,t),getContractEvents:t=>af(e,t),getEip712Domain:t=>K1(e,t),getEnsAddress:t=>O1(e,t),getEnsAvatar:t=>z1(e,t),getEnsName:t=>H1(e,t),getEnsResolver:t=>W1(e,t),getEnsText:t=>Hf(e,t),getFeeHistory:t=>Q1(e,t),estimateFeesPerGas:t=>ry(e,t),getFilterChanges:t=>ss(e,t),getFilterLogs:t=>J1(e,t),getGasPrice:()=>Ui(e),getLogs:t=>qi(e,t),getProof:t=>Pw(e,t),estimateMaxPriorityFeePerGas:t=>ny(e,t),getStorageAt:t=>Aw(e,t),getTransaction:t=>wa(e,t),getTransactionConfirmations:t=>$w(e,t),getTransactionCount:t=>ql(e,t),getTransactionReceipt:t=>ps(e,t),multicall:t=>Tw(e,t),prepareTransactionRequest:t=>rf(e,t),readContract:t=>en(e,t),sendRawTransaction:t=>d1(e,t),simulate:t=>va(e,t),simulateBlocks:t=>va(e,t),simulateCalls:t=>nv(e,t),simulateContract:t=>o1(e,t),verifyMessage:t=>Bv(e,t),verifySiweMessage:t=>Hv(e,t),verifyTypedData:t=>Mv(e,t),uninstallFilter:t=>is(e,t),waitForTransactionReceipt:t=>Lv(e,t),watchBlocks:t=>Rv(e,t),watchBlockNumber:t=>jd(e,t),watchContractEvent:t=>f1(e,t),watchEvent:t=>Dv(e,t),watchPendingTransactions:t=>Fv(e,t)}}function ja(e){const{key:t="public",name:n="Public Client"}=e;return m1({...e,key:t,name:n,type:"publicClient"}).extend(Wv)}const _a=Yf({id:42161,name:"Arbitrum One",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},blockTime:250,rpcUrls:{default:{http:["https://arb1.arbitrum.io/rpc"]}},blockExplorers:{default:{name:"Arbiscan",url:"https://arbiscan.io",apiUrl:"https://api.arbiscan.io/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:7654707}}}),_d=Yf({id:56,name:"BNB Smart Chain",nativeCurrency:{decimals:18,name:"BNB",symbol:"BNB"},rpcUrls:{default:{http:["https://56.rpc.thirdweb.com"]}},blockExplorers:{default:{name:"BscScan",url:"https://bscscan.com",apiUrl:"https://api.bscscan.com/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:15921452}}});function bs({client:e,tokenAddress:t,holder:n,decimals:r,fallbackFormatted:o="0",pollingInterval:s=12e3}){const[i,c]=x.useState(null),[a,u]=x.useState(o);return x.useEffect(()=>{let l,d;const f=async()=>{try{const p=await e.readContract({address:t,abi:fr,functionName:"balanceOf",args:[n]});c(p),u($i(p,r))}catch{u(o)}};f();try{l=e.watchContractEvent({address:t,abi:fr,eventName:"Transfer",args:{to:n},onLogs:()=>{f()},poll:!0,pollingInterval:s}),d=e.watchContractEvent({address:t,abi:fr,eventName:"Transfer",args:{from:n},onLogs:()=>{f()},poll:!0,pollingInterval:s})}catch{}return()=>{l==null||l(),d==null||d()}},[e,t,n,r,o,s]),{value:i,formatted:a}}const Vv="0x55d398326f99059fF775485246999027B3197955",Gv="0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9",qv="0xaf88d065e77c8cC2239327C5EDb3A432268e5831",Zv="0x0520b0a951658db92b8a2dd9f146bb8223638740",Kv="0xceeed84620e5eb9ab1d6dfc316867d2cda332e41",Yv="0x81144d6E7084928830f9694a201E8c1ce6eD0cb2";function Ud(e,t,n=[]){if(e&&typeof e=="string")return e;if(t&&typeof t=="string")return t;if(n&&n.length>0)return n[0]}function Xv(e={}){const{bscRpcUrl:t,arbitrumRpcUrl:n,pollingInterval:r=12e3}=e,o=x.useMemo(()=>{var u,l,d;return ja({chain:_d,transport:pa(Ud(t,typeof window<"u"?(u=window==null?void 0:window.ENV)==null?void 0:u.CHAIN_RPC_URL_56:void 0,((d=(l=_d.rpcUrls)==null?void 0:l.default)==null?void 0:d.http)||[]))})},[t]),s=x.useMemo(()=>{var u,l,d;return ja({chain:_a,transport:pa(Ud(n,typeof window<"u"?(u=window==null?void 0:window.ENV)==null?void 0:u.CHAIN_RPC_URL_42161:void 0,((d=(l=_a.rpcUrls)==null?void 0:l.default)==null?void 0:d.http)||[]))})},[n]),{formatted:i="0"}=bs({client:o,tokenAddress:Vv,holder:Zv,decimals:18,fallbackFormatted:"0",pollingInterval:r}),{formatted:c="0"}=bs({client:s,tokenAddress:Gv,holder:Kv,decimals:6,fallbackFormatted:"0",pollingInterval:r}),{formatted:a="0"}=bs({client:s,tokenAddress:qv,holder:Yv,decimals:6,fallbackFormatted:"0",pollingInterval:r});return{BNB_USDT_BALANCE:i,ARB_USDT_BALANCE:c,ARB_USDC_BALANCE:a}}const Qv=()=>({openDeposit:x.useCallback(t=>{},[])}),Jv=()=>({openWithdraw:x.useCallback(t=>{},[])}),Fn="MPC",Ua="EVM";/**
78
78
  * @license lucide-react v0.540.0 - ISC
79
79
  *
80
80
  * This source code is licensed under the ISC license.
@@ -148,5 +148,5 @@ ${Ib(p)}`),super(t.shortMessage,{cause:t,docsPath:r,metaMessages:[...t.metaMessa
148
148
  relative
149
149
  ${c}
150
150
  ${s}
151
- `,children:[t,o&&B.jsx(N0,{ref:d,placement:h.placement||n})]})})]})},Bo="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAIcSURBVHgBxZc/T8JAGMafA4mDEXFw0DiQmDi4CP5JHGFx0qizg8QvIHwCZHYAvwEm7mji5CJuJv7DxcWYYMLmIEYXY/R8j6tQaBvuaCm/pOlbSu99+rZ97zlgwDBowvNLCdrF6NJ50891OvNC+wrL3JShgZIAnl+JAj97FKXoMNLl7ySGnQDBHMtcVeFGAM8nKNlnlsI0eoIVuwlhzsmXqcwoURSFK1iVRCSdRDDn5PwC3cutingsJOK60nkiYE0unrdi8uFRIDwFBSJiTKOqzgKMl00teXgS2D0Fto+BiVkoIMYs8Xws4iiAkmeVn/n0oqyA2NQEQI4dytoKMEqfQt/haZmrQ4C8e7/4TtsI4JvwDbYDswCjvXr1yakQMXI2KxCD/8RMAtx2ux5gcjIzBAT8LH8bAQwYbwR8fUAb/vtuEsAr0OX5Eng8o30ZqN1BHzFLAkPGkb4AcdfnObigkbM5HdN3+Qb/ekGdrNu4CMyd8Ag6iElo/QBYzcpYByYsm8QkIFSADmI2nEkAc2sUL0ALHsxZBEjLxA+hSu22tb0+KV9Gd18027M2SybNQui+f53R6g/b+gDLVMi7YQsND+c5dTtzamlE0jiyJLwVYZhSqzO27YRSxFD8v1m4Q4xh74gdBUgRQm2QKsH0Ps82xEs9EndK3sgDlWGkW96naANqSzMSHSy4XprZi2kuTqN09VjrBH9AD4vTgfMHJt+rxIFF7EgAAAAASUVORK5CYII=",aP=(e,t)=>Number(e)>Number(t),Tt=e=>{if(!e||e===""||isNaN(Number(e)))return"0.00";const t=Number(e);if(t===0)return"0.00";let n=t.toString();n.includes("e")&&(n=t.toFixed(20));const r=n.split("."),o=r[0];let s=r[1]||"";return s.length>6&&(s=s.substring(0,6)),s=s.replace(/0+$/,""),s?(s.length===1&&(s+="0"),o+"."+s):o+".00"},ou=(e,t="0")=>{if(/[^0-9.]/.test(e))return{isValid:!1,formattedValue:"",errorType:"invalid_char"};if(e===".")return{isValid:!0,formattedValue:"0."};if((e.match(/\./g)||[]).length>1)return{isValid:!1,formattedValue:"",errorType:"invalid_char"};if(!e||e==="")return{isValid:!0,formattedValue:""};const o=e.split(".");if(o.length===2&&o[1].length>6){const a=o[0]+"."+o[1].substring(0,6);return ou(a,t)}const s=parseFloat(e),i=parseFloat(t);return!isNaN(s)&&!isNaN(i)&&s>i?{isValid:!0,formattedValue:Tt(t),errorType:"auto_adjusted_to_max"}:{isValid:!0,formattedValue:e}},Js={ETHEREUM:1,ARBITRUM:42161,ARBITRUM_SEPOLIA:421614,SEPOLIA:11155111},cP=[Js.ETHEREUM,Js.SEPOLIA,Js.ARBITRUM,Js.ARBITRUM_SEPOLIA],uP=e=>{if(e.chainId!==void 0){const t=typeof e.chainId=="string"?parseInt(e.chainId,10):e.chainId;return!cP.includes(t)}return!0},lP=({currentActiveChain:e,selectedToken:t,address:n,onDeposit:r,onCopy:o,onClose:s})=>{const{t:i}=Ht(),c=x.useMemo(()=>uP(e||{}),[e]);return B.jsxs(B.Fragment,{children:[B.jsx("div",{className:"flex justify-center mt-4 mb-3",children:n&&B.jsx("div",{className:"bg-white rounded-lg",children:B.jsx(d0,{value:n,size:120,level:"L",bgColor:"#ffffff",fgColor:"#000000",marginSize:0})})}),n&&B.jsxs("div",{className:"flex items-center justify-between bg-fill-input-primary rounded-lg py-2 px-3 mb-3",children:[B.jsx("span",{className:"flex-1 text-text-primary text-sm font-medium break-all mr-3",children:n}),B.jsx(dS,{onCopy:()=>{o&&o(n)},text:n,children:B.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",children:[B.jsx("rect",{x:"2.08496",y:"4.02295",width:"9.89893",height:"9.89893",rx:"2",stroke:"#F9F9F9"}),B.jsx("path",{d:"M5.85547 2.07861H11.415C12.7957 2.07861 13.915 3.1979 13.915 4.57861V10.0786",stroke:"#F9F9F9",strokeLinecap:"round"})]})},"copy")]}),B.jsxs("div",{className:"border-b border-dashed border-line-divider-secondary pb-4",children:[B.jsxs("div",{className:"flex items-start",children:[B.jsx("div",{className:"w-5",children:B.jsx("img",{src:Bo,className:"w-4 h-4",alt:"Warning"})}),B.jsx("div",{className:"flex-1",children:B.jsx("p",{className:"text-xs text-functional-orange-1",children:i("deposit.depositAllTip",{coin:t,v:e==null?void 0:e.chain})})})]}),c&&B.jsxs(B.Fragment,{children:[B.jsx("div",{className:"my-2 ml-5 h-[1px] border-b border-dashed border-line-divider-secondary"}),B.jsx("div",{className:"flex items-start pl-5 text-functional-orange-1 text-xs",children:i("deposit.depositTipFor25w")})]})]}),B.jsxs("div",{className:"text-sm",children:[B.jsxs("div",{className:"flex justify-between items-center h-[18px] mt-4",children:[B.jsx("span",{className:"text-text-tertiary",children:i("deposit.arrivalTime")}),B.jsx(Gn,{content:B.jsxs("div",{className:"grid flex-grow max-w-[300px] min-w-[80px] rounded-2xl flex-col gap-[10px]",children:[B.jsx("p",{children:i("deposit.arrivaltimeTooltip1",{v:(e==null?void 0:e.blockTime)*e.txConfirm/60,v1:e==null?void 0:e.txConfirm})}),B.jsx("p",{children:i("deposit.arrivaltimeTooltip2")})]}),placement:"top",children:B.jsx("span",{className:"text-text-primary font-medium text-right border-b-[2px] border-dashed border-line-divider-primary decoration-dashed",children:i("deposit.arrivalEstimated",{v:(e==null?void 0:e.blockTime)*e.txConfirm/60})})})]}),B.jsxs("div",{className:"flex justify-between items-center h-[18px] mt-1",children:[B.jsx("span",{className:"text-text-tertiary",children:i("deposit.minDeposit")}),B.jsxs("span",{className:"text-text-primary font-medium text-right",children:["10 ",t]})]}),B.jsxs("div",{className:"flex justify-between items-center h-[18px] mt-1",children:[B.jsx("span",{className:"text-text-tertiary",children:i("deposit.maxDeposit")}),B.jsxs("span",{className:"text-text-primary font-medium text-right",children:["200,000 ",t]})]})]}),B.jsx("button",{className:"w-full h-[38px] bg-fill-btn-primary rounded-xl text-sm font-medium text-text-on-sec-btn mt-4",onClick:()=>{r&&r({amount:"",chainId:e.chainId,tokenAddress:n,tokenSymbol:t}),s()},children:i("deposit.title")})]})},Mo=({size:e="xs",color:t,className:n="",label:r="Loading...",inline:o=!1})=>{const s=t?`loading-${t}`:"",i=o?"loading-inline":"";return B.jsx("span",{className:`loading loading-${e} loading-spinner ${s} ${i} ${n}`.trim(),"aria-label":r,role:"status","aria-live":"polite"})},fP=(e,t,n)=>{const r=parseFloat(String(e)||"0"),o=parseFloat(String(t)||"0");if(o>0){const s=r-o,i=Tt(Math.max(0,s).toString());return B.jsxs("span",{className:"flex items-center gap-1",children:[Tt(e),B.jsx("span",{className:"text-sm font-edgex-harmony text-functional-green-1 leading-[18px] font-medium",children:"→"}),i," ",n]})}return`${Tt(e)} ${n}`},dP=(e,t,n)=>{if(!e||e===""||e==="0"||e==="0.00")return!1;const r=parseFloat(e),o=parseFloat(t);return!(isNaN(r)||isNaN(o)||r>o||!n)},pP=(e,t,n)=>{if(!Gh(e,n))return!1;try{const r=new $e(t||"0"),o=new $e("200000");return r.isNaN()||o.isNaN()?!1:r.gte(o)}catch{return!1}},hP=(e,t,n)=>{let r=t||"0";if(Gh(e,n))try{const o=new $e(r),s=new $e("200000");o.gt(s)&&(r="200000")}catch(o){console.warn("Error calculating max amount limit:",o)}return r},k0={chains:[],currentActiveAccount:{wallet:"EVM",ethAddress:"",accountId:"",smartWalletAddress:""},defaultChainId:1,platformBalance:"0"};let qe=null;const B0=x.forwardRef((e,t)=>{const[n,r]=x.useState(!1),[o,s]=x.useState(!1),[i,c]=x.useState(k0),a=x.useCallback(h=>{c(h),r(!0)},[]),u=x.useCallback(h=>{c(m=>({...m,...h}))},[]),l=x.useCallback(()=>{r(!1),s(!1),i.onClose&&i.onClose()},[i.onClose]),d=x.useCallback(h=>{s(h)},[]),f=x.useCallback(()=>n,[n]),p=x.useCallback(()=>o,[o]);return x.useImperativeHandle(t,()=>({openDeposit:a,closeDeposit:l,updateDepositOptions:u,setDepositLoading:d,isOpen:f,isLoading:p}),[a,l,u,d,f,p]),x.useEffect(()=>(qe={openDeposit:a,closeDeposit:l,updateDepositOptions:u,setDepositLoading:d,isOpen:f,isLoading:p},()=>{qe=null}),[a,l,u,d,f,p]),B.jsx(_0,{isOpen:n,isLoading:o,onClose:l,currentActiveAccount:i.currentActiveAccount,chains:i.chains,defaultChainId:i.defaultChainId,platformBalance:i.platformBalance,wagmiHooks:i.wagmiHooks,onDeposit:i.onDeposit,onCopy:i.onCopy,onChainChange:h=>{var m;return(m=i.onChainChange)==null?void 0:m.call(i,h)},onTokenChange:h=>{var m;return(m=i.onTokenChange)==null?void 0:m.call(i,h)}})});B0.displayName="DepositManager";const M0=e=>{if(!qe){console.error("DepositManager not initialized. Make sure to render <DepositManager /> in your app.");return}qe.openDeposit(e||k0)},L0=()=>{if(!qe){console.error("DepositManager not initialized. Make sure to render <DepositManager /> in your app.");return}qe.closeDeposit()},R0=e=>{qe&&qe.updateDepositOptions(e)},ei=e=>{if(!qe){console.error("DepositManager not initialized. Make sure to render <DepositManager /> in your app.");return}qe.setDepositLoading(e)},mP=()=>qe?qe.isOpen():!1,D0=()=>qe?qe.isLoading():!1,gP=()=>({openDeposit:M0,closeDeposit:L0,updateDepositOptions:R0,setDepositLoading:ei,isOpen:mP,isLoading:D0}),bP=e=>{const{t}=Ht(),{isNetworkMismatch:n,depositAmount:r,approved:o,currentTokenBalance:s,selectedToken:i,showLayerZeroTip:c,minDeposit:a=10}=e;return x.useMemo(()=>{if(n)return{text:t("deposit.switchNetwork"),disabled:!0,isNetworkSwitch:!0};const u=parseFloat(r||"0"),l=dP(r,s||"0",o);return!r||u===0||!o?{text:t(c?"deposit.layerZeroDepositButton":"deposit.confirmDeposit"),disabled:!0,isNetworkSwitch:!1}:u<a?{text:t("deposit.minDepositParsed",{amount:a,token:i}),disabled:!0,isNetworkSwitch:!1}:{text:t(c?"deposit.layerZeroDepositButton":"deposit.confirmDeposit"),disabled:!l,isNetworkSwitch:!1}},[n,r,o,s,i,c,a,t])};function yP(e){const{account:t,accountChainId:n,targetChainId:r,tokenInfo:o,amount:s}=e,{useReadContract:i,useWriteContract:c,usePublicClient:a,useSwitchChain:u}=e.wagmiHooks,l=o==null?void 0:o.tokenAddress,d=(o==null?void 0:o.decimals)??18,f=o==null?void 0:o.contractAddress,p=!l||l.toLowerCase()==="0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",{switchChainAsync:h}=u(),{writeContractAsync:m}=c(),w=a(),T=i({address:l,abi:fr,functionName:"allowance",args:[$n(t||""),f],chainId:r,query:{enabled:!!(!p&&t&&r&&l&&f)}}),b=T!=null&&T.isSuccess?T.data:void 0,$=x.useMemo(()=>{if(p)return!0;if(!T.isSuccess||b===void 0||b===0n)return!1;try{const L=xw(String(Number(s||"0")||0),Number(d));return b>=L}catch{return!1}},[p,T.isSuccess,b,s,d]),M=x.useCallback(async()=>{try{if(r&&n&&+n!=+r&&await h({chainId:+r}),!m||!w||!l||!f)return;const F=$n(l),j=$n(f);if((b||0n)>0n){const A=await m({abi:fr,address:F,functionName:"approve",args:[j,0n]});await w.waitForTransactionReceipt({hash:A})}const v=await m({abi:fr,address:F,functionName:"approve",args:[j,Ul]});await w.waitForTransactionReceipt({hash:v}),T!=null&&T.refetch&&await T.refetch()}catch(L){console.error("[useApprove] onApprove failed:",L)}},[r,n,l,f,b,T,m,w,h]);return{approve:$,onApprove:M}}const wP=({token:e,account:t,chainId:n,wagmiHooks:r,onResult:o})=>{var i;const s=(i=r==null?void 0:r.useBalance)==null?void 0:i.call(r,{address:t,token:e.tokenAddress,chainId:n,query:{enabled:!!t&&!!n&&!!e.tokenAddress&&!!(r!=null&&r.useBalance)}});return x.useEffect(()=>{o($n(e.tokenAddress),{balance:s})},[s,e.tokenAddress,o]),null},F0=({account:e,chainId:t,contractAddress:n,tokens:r=[],wagmiHooks:o})=>{var T;const s=x.useMemo(()=>r.filter(b=>b.tokenAddress&&b.tokenAddress!=="0x0000000000000000000000000000000000000000"),[r]),[i,c]=x.useState({}),a=x.useCallback((b,$)=>{c(M=>({...M,[b]:$}))},[]),u=(T=o==null?void 0:o.useBalance)==null?void 0:T.call(o,{address:e,chainId:t,query:{enabled:!!e&&!!t&&!!(o!=null&&o.useBalance)}}),[l,d]=x.useState(0),f=x.useMemo(()=>s.map(b=>x.createElement(wP,{key:`${b.tokenAddress}-${l}`,token:b,account:e,chainId:t,contractAddress:n,wagmiHooks:o,onResult:a})),[s,e,t,n,o,a,l]),p=x.useMemo(()=>{const b=u!=null&&u.data?{value:u.data.value,formatted:u.data.formatted,decimals:u.data.decimals,symbol:u.data.symbol}:{value:BigInt(0),formatted:"0",decimals:18,symbol:"ETH"},$=s.map(L=>{const F=i[$n(L.tokenAddress)],j=F==null?void 0:F.balance,g=j==null?void 0:j.data;return{address:$n(L.tokenAddress),value:(g==null?void 0:g.value)||BigInt(0),formatted:(g==null?void 0:g.formatted)||"0",decimals:(g==null?void 0:g.decimals)||L.decimals}}).filter(L=>L.address),M=$.reduce((L,F)=>({...L,[F.address]:{balance:F}}),{});return{balanceList:$,baseTokenBalance:b,combinedData:M}},[u,i,s]),h=x.useCallback(async()=>p,[p]),m=x.useMemo(()=>{const b=(u==null?void 0:u.isLoading)||!1,$=Object.values(i).some(M=>{var L;return(L=M.balance)==null?void 0:L.isLoading});return b||$},[u==null?void 0:u.isLoading,i]),w=x.useCallback(()=>d(b=>b+1),[]);return{multicallRun:h,multicallRefresh:w,multicallResult:p,validErcTokens:s,isLoading:m,queryComponents:f}},vP=({address:e,currentActiveChain:t,selectedToken:n,platformBalance:r,isLoading:o,wagmiHooks:s,onChainChange:i,onDeposit:c})=>{const{t:a}=Ht(),u=s.useAccount(),l=t.tokenList.find(D=>D.token===n),d=t.chainId,[f,p]=x.useState("");x.useEffect(()=>{p("")},[n,t.chainId]);const{multicallResult:h,queryComponents:m}=F0({account:e,chainId:t.chainId,contractAddress:(l==null?void 0:l.contractAddress)||(t==null?void 0:t.contractAddress),tokens:(t==null?void 0:t.tokenList)||[],wagmiHooks:s}),w=x.useMemo(()=>{var U;if(!l)return"0";if(!l.tokenAddress||l.tokenAddress.toLowerCase()==="0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee")return h.baseTokenBalance.formatted;const D=h.combinedData[l.tokenAddress];return((U=D==null?void 0:D.balance)==null?void 0:U.formatted)||"0"},[l,h]),T="0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9",b="0xceeed84620e5eb9ab1d6dfc316867d2cda332e41",$=x.useMemo(()=>{var D,U;return ja({chain:_a,transport:pa(t.rpcUrl||((D=window==null?void 0:window.ENV)==null?void 0:D.CHAIN_RPC_URL_42161)||((U=window==null?void 0:window.ENV)==null?void 0:U.CHAIN_RPC_URL_421614))})},[t.rpcUrl]),M="1000000000000",{formatted:L}=bs({client:$,tokenAddress:T,holder:b,decimals:6,fallbackFormatted:M,pollingInterval:12e3}),[F,j]=x.useState(!1),{approve:g,onApprove:v}=yP({account:e,accountChainId:u.chainId,targetChainId:+t.chainId,tokenInfo:l,amount:f,wagmiHooks:s}),A=x.useCallback(async()=>{if(!F)try{j(!0),await v()}catch(D){console.error("Approve failed:",D)}finally{j(!1)}},[F,v]),N=x.useMemo(()=>+u.chainId!=+t.chainId,[u.chainId,t.chainId]),I=x.useCallback(async()=>{i&&i(d)},[i,d]);x.useEffect(()=>{N&&I()},[N,I]);const{showLayerZeroTip:P,layerZeroTipKey:S}=x.useMemo(()=>{const D=+t.chainId==42161||+t.chainId==421614,U=(n==null?void 0:n.toUpperCase())==="USDT",_=new $e(f||"0"),H=new $e("200000");let K=!1,W;if(D&&U&&f)if(_.gte(H))K=!0,W="deposit.layerZeroDepositTipGte200k";else{const Z=L;if(typeof Z=="string"&&Z.length>0){const J=new $e(Z);!J.isNaN()&&_.gte(J)&&(K=!0,W="deposit.layerZeroDepositTipExceedPool")}}return{showLayerZeroTip:K,layerZeroTipKey:W}},[t.chainId,n,f,L]),E=x.useCallback(()=>hP(+t.chainId,w||"0",n),[w,t==null?void 0:t.chainId,n]),C=x.useMemo(()=>pP(+t.chainId,f,n),[t==null?void 0:t.chainId,f,n]),O=bP({isNetworkMismatch:N,depositAmount:f,approved:g,currentTokenBalance:w,selectedToken:n,showLayerZeroTip:P,minDeposit:10}),y=D=>{const U=D.target.value,_=E(),H=ou(U,_);if(H.isValid)p(H.formattedValue),H.errorType;else return H.errorType==="exceed_balance",void 0},k=x.useCallback(async()=>{ei(!0);try{c&&c({amount:f,chainId:d,tokenAddress:(l==null?void 0:l.tokenAddress)||"",tokenSymbol:n})}catch(D){console.error("Deposit error:",D),ei(!1)}},[c,f,d,l==null?void 0:l.tokenAddress,n]);return B.jsxs(B.Fragment,{children:[m,B.jsxs("div",{className:"bg-fill-input-primary rounded-lg px-3 py-3 my-4",children:[B.jsxs("div",{className:"flex justify-between items-center h-[18px] mb-3",children:[B.jsx("input",{type:"text",placeholder:a("deposit.amount"),value:f,onChange:y,className:"flex-1 bg-transparent text-text-primary text-sm font-medium placeholder-text-tertiary placeholder:font-normal focus:outline-none border-none p-0 h-full"}),B.jsx("button",{onClick:()=>{const D=E();p(D)},className:"text-theme-normal text-xs font-medium cursor-pointer hover:opacity-80 transition-opacity h-full flex items-center",children:a("deposit.max")})]}),B.jsx("div",{className:"h-[1px] bg-line-divider-secondary mb-2"}),B.jsxs("div",{className:"flex justify-between items-center",children:[B.jsx(Gn,{content:a("deposit.availableDesc"),children:B.jsx("span",{className:"text-text-tertiary text-xs leading-[14px] border-b border-dashed border-line-divider-primary",children:a("deposit.available")})}),B.jsx("span",{className:"text-text-primary text-xs leading-[14px]",children:fP(w||"0",f,n)})]})]}),!g&&aP(f||"0",0)&&B.jsxs("div",{className:"flex justify-center flex-col items-center",children:[B.jsx("h3",{className:"text-text-primary text-sm leading-4 font-medium",children:a("deposit.enableSystemProWithToken",{token:n,network:t==null?void 0:t.chain})}),B.jsx("p",{className:"text-text-secondary text-xs leading-3 mt-4",children:a("deposit.enableTokenDesc",{token:n,network:t==null?void 0:t.chain})}),B.jsx("button",{className:"w-[180px] h-8 bg-fill-btn-primary hover:bg-fill-btn-primary-hover text-text-on-sec-btn rounded-xl text-sm font-medium transition-colors my-4 disabled:opacity-50 disabled:cursor-not-allowed flex items-center justify-center",onClick:A,disabled:F,children:F?B.jsx(Mo,{size:"xs",inline:!0}):a("deposit.enableWithToken",{token:n})})]}),P&&B.jsxs(B.Fragment,{children:[B.jsxs("div",{className:"flex mb-4",children:[B.jsx("div",{className:"w-5",children:B.jsx("img",{src:Bo,className:"w-4 h-4",alt:"Warning"})}),B.jsx("div",{className:"flex-1 text-xs text-functional-orange-1",children:a(S||"deposit.layerZeroDepositTip")})]}),B.jsx("div",{className:"my-2 ml-5 h-[1px] border-b border-dashed border-line-divider-secondary"})]}),C&&B.jsxs("div",{className:"flex mb-4",children:[B.jsx("div",{className:"w-5",children:B.jsx("img",{src:Bo,className:"w-4 h-4",alt:"Warning"})}),B.jsx("div",{className:"flex-1 text-xs text-functional-orange-1",children:a("deposit.depositTipFor25w")})]}),C&&B.jsx("div",{className:"my-2 ml-5 h-[1px] border-b border-dashed border-line-divider-secondary"}),B.jsxs("div",{className:"flex mb-4",children:[B.jsx("div",{className:"w-5",children:!(C||P)&&B.jsx("img",{src:Bo,className:"w-4 h-4",alt:"Warning"})}),B.jsx("div",{className:"flex-1 text-xs text-functional-orange-1",children:a("deposit.noPrivateKeyWalletWarning")})]}),B.jsxs("div",{className:"border-t border-line-divider-secondary border-dashed py-4",children:[B.jsxs("div",{className:"flex justify-between items-center h-[18px] leading-4",children:[B.jsx("span",{className:"text-sm text-text-tertiary",children:a("deposit.arrivalTime")}),B.jsx(Gn,{content:B.jsxs("div",{className:"grid flex-grow max-w-[300px] min-w-[80px] rounded-2xl flex-col gap-[10px]",children:[B.jsx("p",{children:a("deposit.arrivaltimeTooltip1",{v:(t==null?void 0:t.blockTime)*t.txConfirm/60,v1:t==null?void 0:t.txConfirm})}),B.jsx("p",{children:a("deposit.arrivaltimeTooltip2")})]}),placement:"top",children:B.jsx("span",{className:"text-text-primary font-medium text-right border-b-[2px] border-dashed border-line-divider-primary decoration-dashed text-sm",children:a("deposit.arrivalEstimated",{v:(t==null?void 0:t.blockTime)*t.txConfirm/60})})})]}),B.jsxs("div",{className:"flex justify-between items-center h-[18px] leading-4 mt-2",children:[B.jsx("span",{className:"text-sm text-text-tertiary",children:a("deposit.equity")}),B.jsx("span",{className:"text-sm text-text-primary font-medium",children:f?B.jsxs("span",{className:"flex items-center gap-1",children:[Tt(r),B.jsx("span",{className:"text-sm font-edgex-harmony text-functional-green-1 leading-[18px] font-medium",children:"→"}),Tt((parseFloat(r)+parseFloat(f)).toString())," ",n]}):`${Tt(r)} ${n}`})]})]}),B.jsxs("button",{className:`w-full h-[38px] text-sm rounded-xl font-medium transition-colors flex items-center justify-center gap-2 ${O.disabled||o?"bg-text-disabled text-text-secondary cursor-not-allowed":"bg-fill-btn-primary text-text-on-sec-btn"}`,onClick:k,disabled:O.disabled||o,children:[(o||N)&&B.jsx(Mo,{size:"xs"}),O.text]})]})},j0=e=>e.toLocaleUpperCase()===Fn?Fn:Ua,ti=e=>j0(e.wallet)===Fn,xP=e=>j0(e.wallet)===Ua,_0=({isOpen:e,isLoading:t=!1,onClose:n,currentActiveAccount:r,chains:o,defaultChainId:s,platformBalance:i="0",wagmiHooks:c,onDeposit:a,onCopy:u,onChainChange:l,onTokenChange:d})=>{const{t:f}=Ht(),[p,h]=x.useState(()=>{var M;return!o||o.length===0?1:s||((M=o[0])==null?void 0:M.chainId)||1}),m=o.find(M=>M.chainId===p)||o[0],[w,T]=x.useState(()=>{var j;if(!o||o.length===0)return"";const M=s||((j=o[0])==null?void 0:j.chainId),L=o.find(g=>g.chainId===M);if(!L||!L.tokenList||L.tokenList.length===0)return"";const F=L.tokenList[0];return(F==null?void 0:F.token)||""}),b=x.useCallback(M=>{h(M),l==null||l(M)},[l]),$=x.useCallback(M=>{T(M),d==null||d(M)},[d]);return e?Le.createPortal(B.jsx("div",{className:"fixed top-0 left-0 right-0 bottom-0 w-screen h-screen",style:{zIndex:49},children:B.jsx("div",{className:"fixed top-0 left-0 right-0 bottom-0 z-49 flex items-center justify-center",style:{background:"rgba(0, 0, 0, 0.6)",backdropFilter:"blur(10px)",WebkitBackdropFilter:"blur(10px)"},onClick:()=>{n()},"aria-hidden":"true",children:B.jsxs("div",{className:"relative w-[420px] max-h-[85vh] bg-fill-page-secondary overflow-auto rounded-lg p-6 shadow-xl",onClick:M=>{M.stopPropagation()},children:[B.jsxs("div",{className:"flex items-center justify-between mb-4",children:[B.jsx("h2",{className:"text-lg font-semibold text-white",children:f("deposit.title")}),B.jsx("button",{className:"text-gray-400 hover:text-gray-200 transition-colors",onClick:n,"aria-label":"Close",children:B.jsx(Wd,{className:"h-4 w-4"})})]}),B.jsx(qh,{currentActiveChain:m,chainList:o,onChainChange:b,curSelectToken:w,onTokenChange:$,walletType:ti(r)?Fn:Ua}),ti(r)&&B.jsx(lP,{address:r.smartWalletAddress,currentActiveChain:m,selectedToken:w,onDeposit:a,onCopy:u,onClose:n}),xP(r)&&B.jsx(vP,{address:r.ethAddress,currentActiveChain:m,selectedToken:w,platformBalance:i,isLoading:t,wagmiHooks:c,onChainChange:b,onDeposit:a,onClose:n})]})})}),document.body):null},EP=({withdrawAmount:e,curSelectToken:t,tokenInfo:n,currentActiveChain:r,platformBalance:o="0",fee:s="0.00",walletType:i="evm",receiverAddress:c="",onWithdrawAmountChange:a,onReceiverAddressChange:u,onAmountChanged:l,showPoolBalanceInsufficientTip:d=!1})=>{const{t:f}=Ht(),p=x.useMemo(()=>{if(!Ge(r==null?void 0:r.chainId)){const b=new $e(e||"0").minus(s||"0").decimalPlaces(2,$e.ROUND_DOWN);return b.isNegative()?"0.00":b.toString()}return e||"0"},[e,s,r==null?void 0:r.chainId]),h=x.useMemo(()=>o||"0",[o]),m=b=>{const $=b.target.value,L=ou($,h||"0");if(L.isValid)a(L.formattedValue),L.errorType;else return L.errorType==="exceed_balance",void 0;l==null||l(L.formattedValue)},w=()=>{a(h),l==null||l(h)},T=()=>{const b=parseFloat(o||"0"),$=parseFloat(e||"0");if($>0){const M=b-$,L=Tt(Math.max(0,M).toString());return B.jsxs("span",{className:"flex items-center gap-1",children:[Tt(o||"0"),B.jsx("span",{className:"text-sm font-edgex-harmony text-functional-green-1 leading-[18px] font-medium",children:"→"}),L," ",t]})}return`${Tt(o||"0")} ${t}`};return B.jsxs(B.Fragment,{children:[B.jsxs("div",{className:"bg-fill-input-primary rounded-lg px-3 py-3 my-4",children:[B.jsxs("div",{className:"flex justify-between items-center h-[18px] mb-3",children:[B.jsx("input",{type:"text",placeholder:f("deposit.amount"),value:e,onChange:m,className:"flex-1 bg-transparent text-text-primary text-sm font-medium placeholder-text-tertiary placeholder:font-normal focus:outline-none border-none p-0 h-full"}),B.jsx("button",{onClick:w,className:"text-theme-normal text-xs font-medium cursor-pointer hover:opacity-80 transition-opacity h-full flex items-center",children:f("deposit.max")})]}),B.jsx("div",{className:"h-[1px] bg-line-divider-secondary mb-2"}),B.jsxs("div",{className:"flex justify-between items-center",children:[B.jsx(Gn,{content:f("withdraw.availableDesc"),children:B.jsx("span",{className:"text-text-tertiary text-xs leading-[14px] border-b border-dashed border-line-divider-primary",children:f("deposit.available")})}),B.jsx("span",{className:"text-text-primary text-xs leading-[14px]",children:T()})]})]}),i==="mpc"&&!Ge(r==null?void 0:r.chainId)&&B.jsx("div",{className:"bg-fill-input-primary rounded-lg my-4 h-9 flex items-center px-3",children:B.jsx("input",{type:"text",placeholder:f("withdraw.receiverAddress"),value:c,onChange:b=>u==null?void 0:u(b.target.value),className:"flex-1 bg-transparent text-text-primary text-sm font-medium placeholder-text-tertiary placeholder:font-normal focus:outline-none border-none p-0 h-full"})}),B.jsx("div",{className:"bg-fill-page-secondary rounded-lg mb-4",children:Ge(r==null?void 0:r.chainId)?B.jsxs(B.Fragment,{children:[B.jsx("p",{className:"text-text-tertiary text-xs leading-[18px]",children:f("withdraw.noticeDesc")}),B.jsx("a",{className:"block text-xs leading-[18px] mt-1 text-theme-normal",href:"https://edgex-1.gitbook.io/edgeX-documentation/getting-started/deposits-and-withdrawals/withdrawals",rel:"noreferrer",target:"_blank",children:f("withdraw.commonWithdraw")})]}):B.jsx("p",{className:"text-text-tertiary text-xs leading-[18px]",children:f("withdraw.crossChainTips")})}),d&&B.jsxs("div",{className:"flex mb-4",children:[B.jsx("div",{className:"w-5",children:B.jsx("img",{src:Bo,className:"w-4 h-4",alt:"Warning"})}),B.jsx("div",{className:"flex-1 text-xs text-functional-orange-1",children:f("withdraw.poolBalanceInsufficientTip")})]}),B.jsxs("div",{className:"py-4 border-t border-line-divider-secondary border-dashed",children:[B.jsxs("div",{className:"flex items-center justify-between h-[18px] leading-[18px]",children:[B.jsx(Gn,{content:B.jsxs("div",{children:[B.jsx("div",{children:f("withdraw.speedNote")}),B.jsxs("div",{className:"flex gap-1 items-center mt-1",children:[B.jsx(Io,{selectedLevel:$t.FAST,maxLevel:3}),B.jsx("span",{children:f("withdraw.speedNoteSpeed1")})]}),B.jsxs("div",{className:"flex gap-1 items-center mt-1",children:[B.jsx(Io,{selectedLevel:$t.Medium,maxLevel:3}),B.jsx("span",{children:f("withdraw.speedNoteSpeed2")})]}),B.jsxs("div",{className:"flex gap-1 items-center mt-1",children:[B.jsx(Io,{selectedLevel:$t.SLOW,maxLevel:3}),B.jsx("span",{children:f("withdraw.speedNoteSpeed3")})]})]}),children:B.jsx("span",{className:"text-text-tertiary text-sm leading-4 border-b border-dashed border-line-divider-primary",children:f("withdraw.speed")})}),B.jsx("div",{className:"flex items-center",children:B.jsx(Io,{selectedLevel:Ge(r==null?void 0:r.chainId)?$t.SLOW:$t.FAST,maxLevel:3})})]}),!Ge(r==null?void 0:r.chainId)&&B.jsxs("div",{className:"flex items-center justify-between mt-2 h-[18px]",children:[B.jsx(Gn,{content:f("withdraw.feeCalculationTip"),children:B.jsxs("span",{className:"text-text-tertiary text-sm leading-4 border-b border-dashed border-line-divider-primary",children:[f("withdraw.fee"),"/",f("withdraw.feeRate")]})}),B.jsxs("span",{className:"text-text-primary text-sm leading-4 font-medium",children:[s," ",t," / ",(n==null?void 0:n.feeRate)||0,"%"]})]}),B.jsxs("div",{className:"flex items-center justify-between mt-2 h-[18px]",children:[B.jsx("span",{className:"text-text-tertiary text-sm leading-4",children:f(Ge(r==null?void 0:r.chainId)?"withdraw.withdrawlAmount":"withdraw.amountToReceive")}),B.jsxs("span",{className:"text-text-primary text-sm leading-4 font-medium",children:[Tt(p)," ",t]})]})]})]})},SP=[],PP={};let Ze=null;const U0=x.forwardRef((e,t)=>{const[n,r]=x.useState(!1),[o,s]=x.useState(!1),[i,c]=x.useState({chains:[],currentActiveAccount:{wallet:"EVM",ethAddress:"",accountId:"",smartWalletAddress:""}}),a=x.useCallback(h=>{c(h||{chains:[],currentActiveAccount:{wallet:"EVM",ethAddress:"",accountId:"",smartWalletAddress:""}}),r(!0)},[]),u=x.useCallback(h=>{c(m=>({...m,...h}))},[]),l=x.useCallback(()=>{r(!1),s(!1),i.onClose&&i.onClose()},[i.onClose]),d=x.useCallback(h=>{s(h)},[]),f=x.useCallback(()=>n,[n]),p=x.useCallback(()=>o,[o]);return x.useImperativeHandle(t,()=>({openWithdraw:a,closeWithdraw:l,updateWithdrawOptions:u,setWithdrawLoading:d,isOpen:f,isLoading:p}),[a,l,u,d,f,p]),x.useEffect(()=>(Ze={openWithdraw:a,closeWithdraw:l,updateWithdrawOptions:u,setWithdrawLoading:d,isOpen:f,isLoading:p},()=>{Ze=null}),[a,l,u,d,f,p]),B.jsx(G0,{isOpen:n,isLoading:o,onClose:l,config:i.config||{symbol:"USDT"},currentActiveAccount:i.currentActiveAccount,chains:i.chains||SP,defaultChainId:i.defaultChainId,defaultTokenAddress:i.defaultTokenAddress,defaultAmount:i.defaultAmount,metadata:i.metadata||PP,currentEquity:i.currentEquity??5e3,platformBalance:i.platformBalance||"0",fee:i.fee,wagmiHooks:i.wagmiHooks,onWithdraw:i.onWithdraw,onChainChange:i.onChainChange,onTokenChange:i.onTokenChange,onAmountChanged:i.onAmountChanged})});U0.displayName="WithdrawManager";const z0=e=>{if(!Ze){console.error("WithdrawManager not initialized. Make sure to render <WithdrawManager /> in your app.");return}Ze.openWithdraw(e||{chains:[],currentActiveAccount:{wallet:"EVM",ethAddress:"",accountId:"",smartWalletAddress:""}})},H0=()=>{if(!Ze){console.error("WithdrawManager not initialized. Make sure to render <WithdrawManager /> in your app.");return}Ze.closeWithdraw()},W0=e=>{if(!Ze){console.error("WithdrawManager not initialized. Make sure to render <WithdrawManager /> in your app.");return}Ze.updateWithdrawOptions(e)},ni=e=>{if(!Ze){console.error("WithdrawManager not initialized. Make sure to render <WithdrawManager /> in your app.");return}Ze.setWithdrawLoading(e)},AP=()=>Ze?Ze.isOpen():!1,V0=()=>Ze?Ze.isLoading():!1,$P=()=>({openWithdraw:z0,closeWithdraw:H0,updateWithdrawOptions:W0,setWithdrawLoading:ni,isOpen:AP,isLoading:V0}),TP=({address:e,walletType:t,chains:n,defaultChainId:r,defaultTokenAddress:o,defaultAmount:s="",metadata:i,currentEquity:c,platformBalance:a="0",fee:u="0.00",isLoading:l=!1,wagmiHooks:d,onWithdraw:f,onClose:p,onChainChange:h,onTokenChange:m,onAmountChanged:w})=>{var Me;const{t:T}=Ht(),b=x.useMemo(()=>{const Y=[56,97],ee=me=>n==null?void 0:n.find(de=>Number(de==null?void 0:de.chainId)===me),Q=ee(Y[0])||ee(Y[1]);return Q==null?void 0:Q.rpcUrl},[n]),$=x.useMemo(()=>{const Y=[42161,421614],ee=me=>n==null?void 0:n.find(de=>Number(de==null?void 0:de.chainId)===me),Q=ee(Y[0])||ee(Y[1]);return Q==null?void 0:Q.rpcUrl},[n]),M=x.useMemo(()=>{var qn,Je;const Y="USDC";if(!n||n.length===0)return{chainId:1,tokenSymbol:""};const ee=Zn=>Array.isArray(Zn.tokenList)&&Zn.tokenList.some(ri=>(ri.token||ri.symbol||"").toUpperCase()===Y),Q=n.find(ee)||n[0];if(!Q||!Array.isArray(Q.tokenList)||Q.tokenList.length===0)return{chainId:(Q==null?void 0:Q.chainId)||1,tokenSymbol:""};const me=Q.tokenList.find(Zn=>(Zn.token||Zn.symbol||"").toUpperCase()===Y),de=(me==null?void 0:me.token)||(me==null?void 0:me.symbol)||((qn=Q.tokenList[0])==null?void 0:qn.token)||((Je=Q.tokenList[0])==null?void 0:Je.symbol)||"";return{chainId:Q.chainId,tokenSymbol:de}},[n]),{ARB_USDC_BALANCE:L,ARB_USDT_BALANCE:F,BNB_USDT_BALANCE:j}=Xv({bscRpcUrl:b,arbitrumRpcUrl:$}),[g,v]=x.useState(()=>M.chainId),[A,N]=x.useState(()=>M.tokenSymbol),[I,P]=x.useState(s),[S,E]=x.useState(""),C=x.useCallback(Y=>{v(Y),h==null||h(Y)},[h]),O=x.useCallback(Y=>{N(Y),m==null||m(Y)},[m]),y=x.useRef(!0),k=x.useRef(A),D=x.useRef(g);x.useEffect(()=>{if(y.current){y.current=!1,k.current=A,D.current=g;return}(k.current!==A||D.current!==g)&&(P(""),k.current=A,D.current=g)},[A,g]);const U=n&&n.length>0?n.find(Y=>Y.chainId===g)||n[0]:null,_=(Me=U==null?void 0:U.tokenList)==null?void 0:Me.find(Y=>Y.token===A),{multicallResult:H,queryComponents:K}=F0({account:e,chainId:g,contractAddress:void 0,tokens:(U==null?void 0:U.tokenList)||[],wagmiHooks:d}),W=x.useMemo(()=>{var ee;if(!_)return;if(!_.tokenAddress||_.tokenAddress.toLowerCase()==="0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee")return H.baseTokenBalance.formatted;const Y=H.combinedData[_.tokenAddress];return((ee=Y==null?void 0:Y.balance)==null?void 0:ee.formatted)||"0"},[_,H]),Z=Y=>{if(!Y)return"0";const ee=Y.indexOf(".");return ee>=0?Y.slice(0,ee):Y},G=x.useMemo(()=>{const Y=(A||"").toUpperCase(),ee=Number(g),Q=me=>{const de=Z(me);try{const Je=new $e(de||"0").minus(1e4);return Je.isGreaterThan(0)?Je.toFixed(0):"0"}catch{return"0"}};if(Ge(ee))return"∞";if(ee===42161||ee===421614){if(Y==="USDT")return Q(F);if(Y==="USDC")return Q(L)}return(ee===56||ee===97)&&Y==="USDT"?Q(j):"0"},[g,A,L,F,j]),J=x.useMemo(()=>{if(Ge(g))return!1;try{const Y=new $e(I||"0"),ee=new $e((G||"0").toString());return Y.isGreaterThan(ee)}catch{return!1}},[g,I,G]),ne=x.useMemo(()=>{const Y={},ee=(A||"").toUpperCase(),Q=me=>{const de=Z(me);try{const Je=new $e(de||"0").minus(1e4);return Je.isGreaterThan(0)?Je.toFixed(0):"0"}catch{return"0"}};return(n||[]).forEach(me=>{const de=Number(me==null?void 0:me.chainId);if(de){if(Ge(de)){Y[de]="∞";return}if(de===42161||de===421614){ee==="USDT"?Y[de]=Q(F):ee==="USDC"?Y[de]=Q(L):Y[de]="0";return}if(de===56||de===97){ee==="USDT"?Y[de]=Q(j):Y[de]="0";return}Y[de]="0"}}),Y},[n,A,L,F,j]),le=x.useMemo(()=>{const Y=new $e(I||"0"),ee=new $e(u||"0"),Q=Ge(g);let me=!1;if(!Q)try{const de=new $e((G||"0").toString());me=Y.isGreaterThan(de)}catch{me=!1}return!I||Y.isZero()||!Q&&Y.isLessThan(ee)||!Q&&me?{text:T("withdraw.confirmWithdraw"),disabled:!0}:t==="mpc"&&!Q&&!S.trim()?{text:T("withdraw.invalidReceiverAddress"),disabled:!0}:{text:T("withdraw.confirmWithdraw"),disabled:!1}},[T,g,I,t,S,u,G]),Se=x.useCallback(async()=>{ni(!0);try{if(f){const ee={amount:new $e(I||"0").toString(),chainId:g,tokenAddress:(_==null?void 0:_.tokenAddress)||"",tokenSymbol:A};t==="mpc"&&!Ge(g)&&(ee.receiverAddress=S),f(ee)}}catch{ni(!1)}},[f,I,g,_==null?void 0:_.tokenAddress,A,t,S]);return!n||n.length===0?B.jsx("div",{className:"text-center py-8",children:B.jsx("p",{className:"text-gray-400",children:"No chains available"})}):U?B.jsxs(B.Fragment,{children:[K,B.jsx(qh,{currentActiveChain:U,chainList:n,chainPoolBalances:ne,onChainChange:C,curSelectToken:A,onTokenChange:O,walletType:"EVM",txType:"withdraw"}),B.jsxs("div",{className:"p-3 my-4 bg-fill-input-primary rounded-lg flex items-center justify-between h-[38px]",children:[B.jsx("div",{className:"text-text-secondary text-sm",children:Ge(g)?T("withdraw.poolBalance"):T("withdraw.crossChainPoolBalance")}),B.jsxs("div",{className:"text-text-primary text-sm font-medium",children:[G," ",A]})]}),B.jsx(EP,{withdrawAmount:I,curSelectToken:A,tokenInfo:_,curSelectTokenData:{balance:_==null?void 0:_.balance,allowance:_==null?void 0:_.allowance},currentActiveChain:U,currentEquity:c||0,amount:I,decimals:(_==null?void 0:_.decimals)||6,tokenBalance:W,platformBalance:a,fee:u,walletType:t,receiverAddress:S,onWithdrawAmountChange:P,onReceiverAddressChange:E,onAmountChanged:w,showPoolBalanceInsufficientTip:J,poolBalanceMap:ne}),B.jsxs("button",{className:`w-full h-[38px] text-sm rounded-xl font-medium transition-colors flex items-center justify-center gap-2 ${le.disabled||l?"bg-text-disabled text-text-secondary cursor-not-allowed":"bg-fill-btn-primary text-text-on-sec-btn"}`,onClick:Se,disabled:le.disabled||l,children:[l&&B.jsx(Mo,{size:"xs"}),le.text]})]}):B.jsx("div",{className:"text-center py-8",children:B.jsx("p",{className:"text-gray-400",children:"Loading..."})})},G0=({isOpen:e,isLoading:t=!1,onClose:n,config:r,currentActiveAccount:o,chains:s,defaultChainId:i,defaultTokenAddress:c,defaultAmount:a="",metadata:u,currentEquity:l=5e3,platformBalance:d="0",fee:f,wagmiHooks:p,onWithdraw:h,onChainChange:m,onTokenChange:w,onAmountChanged:T})=>{const{t:b}=Ht();return e?Le.createPortal(B.jsx("div",{className:"fixed top-0 left-0 right-0 bottom-0 w-screen h-screen",style:{zIndex:49},children:B.jsx("div",{className:"fixed top-0 left-0 right-0 bottom-0 z-49 flex items-center justify-center",style:{background:"rgba(0, 0, 0, 0.6)",backdropFilter:"blur(10px)",WebkitBackdropFilter:"blur(10px)"},onClick:()=>{n()},"aria-hidden":"true",children:B.jsxs("div",{className:"relative w-[420px] max-h-[85vh] bg-fill-page-secondary overflow-auto rounded-lg p-6 shadow-xl",onClick:$=>{$.stopPropagation()},children:[B.jsxs("div",{className:"flex items-center justify-between mb-4",children:[B.jsx("h2",{className:"text-lg font-semibold text-white",children:b("withdraw.withdraw")}),B.jsx("button",{className:"text-gray-400 hover:text-gray-200 transition-colors",onClick:n,"aria-label":"Close",children:B.jsx(Wd,{className:"h-4 w-4"})})]}),B.jsx(TP,{chains:s,address:ti(o)?o.smartWalletAddress:o.ethAddress,walletType:ti(o)?"mpc":"evm",defaultChainId:i,defaultTokenAddress:c,defaultAmount:a,metadata:u,currentEquity:l,platformBalance:d,fee:f,isLoading:t,wagmiHooks:p,onWithdraw:h,onClose:n,onChainChange:m,onTokenChange:w,onAmountChanged:T})]})})}),document.body):null};ie.ChromeLoader=Mo,ie.ComponentProvider=bm,ie.DEFAULT_LOCALE=Ro,ie.Deposit=_0,ie.DepositManager=B0,ie.LOCALE_NAMES=hm,ie.LoadingSpinner=Mo,ie.SUPPORTED_LOCALES=si,ie.Tooltip=Gn,ie.Withdraw=G0,ie.WithdrawManager=U0,ie.closeDeposit=L0,ie.closeWithdraw=H0,ie.formatThousands=wm,ie.isDepositLoading=D0,ie.isWithdrawLoading=V0,ie.openDeposit=M0,ie.openWithdraw=z0,ie.setDepositLoading=ei,ie.setWithdrawLoading=ni,ie.updateDepositOptions=R0,ie.updateWithdrawOptions=W0,ie.useComponentConfig=bu,ie.useDeposit=Qv,ie.useDepositManager=gP,ie.useTranslation=Ht,ie.useWithdraw=Jv,ie.useWithdrawManager=$P,Object.defineProperty(ie,Symbol.toStringTag,{value:"Module"})});
151
+ `,children:[t,o&&B.jsx(N0,{ref:d,placement:h.placement||n})]})})]})},Bo="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAIcSURBVHgBxZc/T8JAGMafA4mDEXFw0DiQmDi4CP5JHGFx0qizg8QvIHwCZHYAvwEm7mji5CJuJv7DxcWYYMLmIEYXY/R8j6tQaBvuaCm/pOlbSu99+rZ97zlgwDBowvNLCdrF6NJ50891OvNC+wrL3JShgZIAnl+JAj97FKXoMNLl7ySGnQDBHMtcVeFGAM8nKNlnlsI0eoIVuwlhzsmXqcwoURSFK1iVRCSdRDDn5PwC3cutingsJOK60nkiYE0unrdi8uFRIDwFBSJiTKOqzgKMl00teXgS2D0Fto+BiVkoIMYs8Xws4iiAkmeVn/n0oqyA2NQEQI4dytoKMEqfQt/haZmrQ4C8e7/4TtsI4JvwDbYDswCjvXr1yakQMXI2KxCD/8RMAtx2ux5gcjIzBAT8LH8bAQwYbwR8fUAb/vtuEsAr0OX5Eng8o30ZqN1BHzFLAkPGkb4AcdfnObigkbM5HdN3+Qb/ekGdrNu4CMyd8Ag6iElo/QBYzcpYByYsm8QkIFSADmI2nEkAc2sUL0ALHsxZBEjLxA+hSu22tb0+KV9Gd18027M2SybNQui+f53R6g/b+gDLVMi7YQsND+c5dTtzamlE0jiyJLwVYZhSqzO27YRSxFD8v1m4Q4xh74gdBUgRQm2QKsH0Ps82xEs9EndK3sgDlWGkW96naANqSzMSHSy4XprZi2kuTqN09VjrBH9AD4vTgfMHJt+rxIFF7EgAAAAASUVORK5CYII=",aP=(e,t)=>Number(e)>Number(t),Tt=e=>{if(!e||e===""||isNaN(Number(e)))return"0.00";const t=Number(e);if(t===0)return"0.00";let n=t.toString();n.includes("e")&&(n=t.toFixed(20));const r=n.split("."),o=r[0];let s=r[1]||"";return s.length>6&&(s=s.substring(0,6)),s=s.replace(/0+$/,""),s?(s.length===1&&(s+="0"),o+"."+s):o+".00"},ou=(e,t="0")=>{if(/[^0-9.]/.test(e))return{isValid:!1,formattedValue:"",errorType:"invalid_char"};if(e===".")return{isValid:!0,formattedValue:"0."};if((e.match(/\./g)||[]).length>1)return{isValid:!1,formattedValue:"",errorType:"invalid_char"};if(!e||e==="")return{isValid:!0,formattedValue:""};const o=e.split(".");if(o.length===2&&o[1].length>6){const a=o[0]+"."+o[1].substring(0,6);return ou(a,t)}const s=parseFloat(e),i=parseFloat(t);return!isNaN(s)&&!isNaN(i)&&s>i?{isValid:!0,formattedValue:Tt(t),errorType:"auto_adjusted_to_max"}:{isValid:!0,formattedValue:e}},Js={ETHEREUM:1,ARBITRUM:42161,ARBITRUM_SEPOLIA:421614,SEPOLIA:11155111},cP=[Js.ETHEREUM,Js.SEPOLIA,Js.ARBITRUM,Js.ARBITRUM_SEPOLIA],uP=e=>{if(e.chainId!==void 0){const t=typeof e.chainId=="string"?parseInt(e.chainId,10):e.chainId;return!cP.includes(t)}return!0},lP=({currentActiveChain:e,selectedToken:t,address:n,onDeposit:r,onCopy:o,onClose:s})=>{const{t:i}=Ht(),c=x.useMemo(()=>uP(e||{}),[e]);return B.jsxs(B.Fragment,{children:[B.jsx("div",{className:"flex justify-center mt-4 mb-3",children:n&&B.jsx("div",{className:"bg-white rounded-lg",children:B.jsx(d0,{value:n,size:120,level:"L",bgColor:"#ffffff",fgColor:"#000000",marginSize:0})})}),n&&B.jsxs("div",{className:"flex items-center justify-between bg-fill-input-primary rounded-lg py-2 px-3 mb-3",children:[B.jsx("span",{className:"flex-1 text-text-primary text-sm font-medium break-all mr-3",children:n}),B.jsx(dS,{onCopy:()=>{o&&o(n)},text:n,children:B.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",children:[B.jsx("rect",{x:"2.08496",y:"4.02295",width:"9.89893",height:"9.89893",rx:"2",stroke:"#F9F9F9"}),B.jsx("path",{d:"M5.85547 2.07861H11.415C12.7957 2.07861 13.915 3.1979 13.915 4.57861V10.0786",stroke:"#F9F9F9",strokeLinecap:"round"})]})},"copy")]}),B.jsxs("div",{className:"border-b border-dashed border-line-divider-secondary pb-4",children:[B.jsxs("div",{className:"flex items-start",children:[B.jsx("div",{className:"w-5",children:B.jsx("img",{src:Bo,className:"w-4 h-4",alt:"Warning"})}),B.jsx("div",{className:"flex-1",children:B.jsx("p",{className:"text-xs text-functional-orange-1",children:i("deposit.depositAllTip",{coin:t,v:e==null?void 0:e.chain})})})]}),c&&B.jsxs(B.Fragment,{children:[B.jsx("div",{className:"my-2 ml-5 h-[1px] border-b border-dashed border-line-divider-secondary"}),B.jsx("div",{className:"flex items-start pl-5 text-functional-orange-1 text-xs",children:i("deposit.depositTipFor25w")})]})]}),B.jsxs("div",{className:"text-sm",children:[B.jsxs("div",{className:"flex justify-between items-center h-[18px] mt-4",children:[B.jsx("span",{className:"text-text-tertiary",children:i("deposit.arrivalTime")}),B.jsx(Gn,{content:B.jsxs("div",{className:"grid flex-grow max-w-[300px] min-w-[80px] rounded-2xl flex-col gap-[10px]",children:[B.jsx("p",{children:i("deposit.arrivaltimeTooltip1",{v:(e==null?void 0:e.blockTime)*e.txConfirm/60,v1:e==null?void 0:e.txConfirm})}),B.jsx("p",{children:i("deposit.arrivaltimeTooltip2")})]}),placement:"top",children:B.jsx("span",{className:"text-text-primary font-medium text-right border-b-[2px] border-dashed border-line-divider-primary decoration-dashed",children:i("deposit.arrivalEstimated",{v:(e==null?void 0:e.blockTime)*e.txConfirm/60})})})]}),B.jsxs("div",{className:"flex justify-between items-center h-[18px] mt-1",children:[B.jsx("span",{className:"text-text-tertiary",children:i("deposit.minDeposit")}),B.jsxs("span",{className:"text-text-primary font-medium text-right",children:["10 ",t]})]}),B.jsxs("div",{className:"flex justify-between items-center h-[18px] mt-1",children:[B.jsx("span",{className:"text-text-tertiary",children:i("deposit.maxDeposit")}),B.jsxs("span",{className:"text-text-primary font-medium text-right",children:["200,000 ",t]})]})]}),B.jsx("button",{className:"w-full h-[38px] bg-fill-btn-primary rounded-xl text-sm font-medium text-text-on-sec-btn mt-4",onClick:()=>{r&&r({amount:"",chainId:e.chainId,tokenAddress:n,tokenSymbol:t}),s()},children:i("deposit.title")})]})},Mo=({size:e="xs",color:t,className:n="",label:r="Loading...",inline:o=!1})=>{const s=t?`loading-${t}`:"",i=o?"loading-inline":"";return B.jsx("span",{className:`loading loading-${e} loading-spinner ${s} ${i} ${n}`.trim(),"aria-label":r,role:"status","aria-live":"polite"})},fP=(e,t,n)=>{const r=parseFloat(String(e)||"0"),o=parseFloat(String(t)||"0");if(o>0){const s=r-o,i=Tt(Math.max(0,s).toString());return B.jsxs("span",{className:"flex items-center gap-1",children:[Tt(e),B.jsx("span",{className:"text-sm font-edgex-harmony text-functional-green-1 leading-[18px] font-medium",children:"→"}),i," ",n]})}return`${Tt(e)} ${n}`},dP=(e,t,n)=>{if(!e||e===""||e==="0"||e==="0.00")return!1;const r=parseFloat(e),o=parseFloat(t);return!(isNaN(r)||isNaN(o)||r>o||!n)},pP=(e,t,n)=>{if(!Gh(e,n))return!1;try{const r=new $e(t||"0"),o=new $e("200000");return r.isNaN()||o.isNaN()?!1:r.gte(o)}catch{return!1}},hP=(e,t,n)=>{let r=t||"0";if(Gh(e,n))try{const o=new $e(r),s=new $e("200000");o.gt(s)&&(r="200000")}catch(o){console.warn("Error calculating max amount limit:",o)}return r},k0={chains:[],currentActiveAccount:{wallet:"EVM",ethAddress:"",accountId:"",smartWalletAddress:""},defaultChainId:1,platformBalance:"0"};let qe=null;const B0=x.forwardRef((e,t)=>{const[n,r]=x.useState(!1),[o,s]=x.useState(!1),[i,c]=x.useState(k0),a=x.useCallback(h=>{c(h),r(!0)},[]),u=x.useCallback(h=>{c(m=>({...m,...h}))},[]),l=x.useCallback(()=>{r(!1),s(!1),i.onClose&&i.onClose()},[i.onClose]),d=x.useCallback(h=>{s(h)},[]),f=x.useCallback(()=>n,[n]),p=x.useCallback(()=>o,[o]);return x.useImperativeHandle(t,()=>({openDeposit:a,closeDeposit:l,updateDepositOptions:u,setDepositLoading:d,isOpen:f,isLoading:p}),[a,l,u,d,f,p]),x.useEffect(()=>(qe={openDeposit:a,closeDeposit:l,updateDepositOptions:u,setDepositLoading:d,isOpen:f,isLoading:p},()=>{qe=null}),[a,l,u,d,f,p]),B.jsx(_0,{isOpen:n,isLoading:o,onClose:l,currentActiveAccount:i.currentActiveAccount,chains:i.chains,defaultChainId:i.defaultChainId,platformBalance:i.platformBalance,wagmiHooks:i.wagmiHooks,onDeposit:i.onDeposit,onCopy:i.onCopy,onChainChange:h=>{var m;return(m=i.onChainChange)==null?void 0:m.call(i,h)},onTokenChange:h=>{var m;return(m=i.onTokenChange)==null?void 0:m.call(i,h)}})});B0.displayName="DepositManager";const M0=e=>{if(!qe){console.error("DepositManager not initialized. Make sure to render <DepositManager /> in your app.");return}qe.openDeposit(e||k0)},L0=()=>{if(!qe){console.error("DepositManager not initialized. Make sure to render <DepositManager /> in your app.");return}qe.closeDeposit()},R0=e=>{qe&&qe.updateDepositOptions(e)},ei=e=>{if(!qe){console.error("DepositManager not initialized. Make sure to render <DepositManager /> in your app.");return}qe.setDepositLoading(e)},mP=()=>qe?qe.isOpen():!1,D0=()=>qe?qe.isLoading():!1,gP=()=>({openDeposit:M0,closeDeposit:L0,updateDepositOptions:R0,setDepositLoading:ei,isOpen:mP,isLoading:D0}),bP=e=>{const{t}=Ht(),{isNetworkMismatch:n,depositAmount:r,approved:o,currentTokenBalance:s,selectedToken:i,showLayerZeroTip:c,minDeposit:a=10}=e;return x.useMemo(()=>{if(n)return{text:t("deposit.switchNetwork"),disabled:!0,isNetworkSwitch:!0};const u=parseFloat(r||"0"),l=dP(r,s||"0",o);return!r||u===0||!o?{text:t(c?"deposit.layerZeroDepositButton":"deposit.confirmDeposit"),disabled:!0,isNetworkSwitch:!1}:u<a?{text:t("deposit.minDepositParsed",{amount:a,token:i}),disabled:!0,isNetworkSwitch:!1}:{text:t(c?"deposit.layerZeroDepositButton":"deposit.confirmDeposit"),disabled:!l,isNetworkSwitch:!1}},[n,r,o,s,i,c,a,t])};function yP(e){const{account:t,accountChainId:n,targetChainId:r,tokenInfo:o,amount:s}=e,{useReadContract:i,useWriteContract:c,usePublicClient:a,useSwitchChain:u}=e.wagmiHooks,l=o==null?void 0:o.tokenAddress,d=(o==null?void 0:o.decimals)??18,f=o==null?void 0:o.contractAddress,p=!l||l.toLowerCase()==="0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",{switchChainAsync:h}=u(),{writeContractAsync:m}=c(),w=a(),T=i({address:l,abi:fr,functionName:"allowance",args:[$n(t||""),f],chainId:r,query:{enabled:!!(!p&&t&&r&&l&&f)}}),b=T!=null&&T.isSuccess?T.data:void 0,$=x.useMemo(()=>{if(p)return!0;if(!T.isSuccess||b===void 0||b===0n)return!1;try{const L=xw(String(Number(s||"0")||0),Number(d));return b>=L}catch{return!1}},[p,T.isSuccess,b,s,d]),M=x.useCallback(async()=>{try{if(r&&n&&+n!=+r&&await h({chainId:+r}),!m||!w||!l||!f)return;const F=$n(l),j=$n(f);if((b||0n)>0n){const A=await m({abi:fr,address:F,functionName:"approve",args:[j,0n]});await w.waitForTransactionReceipt({hash:A})}const v=await m({abi:fr,address:F,functionName:"approve",args:[j,Ul]});await w.waitForTransactionReceipt({hash:v}),T!=null&&T.refetch&&await T.refetch()}catch(L){console.error("[useApprove] onApprove failed:",L)}},[r,n,l,f,b,T,m,w,h]);return{approve:$,onApprove:M}}const wP=({token:e,account:t,chainId:n,wagmiHooks:r,onResult:o})=>{var i;const s=(i=r==null?void 0:r.useBalance)==null?void 0:i.call(r,{address:t,token:e.tokenAddress,chainId:n,query:{enabled:!!t&&!!n&&!!e.tokenAddress&&!!(r!=null&&r.useBalance)}});return x.useEffect(()=>{o($n(e.tokenAddress),{balance:s})},[s,e.tokenAddress,o]),null},F0=({account:e,chainId:t,contractAddress:n,tokens:r=[],wagmiHooks:o})=>{var T;const s=x.useMemo(()=>r.filter(b=>b.tokenAddress&&b.tokenAddress!=="0x0000000000000000000000000000000000000000"),[r]),[i,c]=x.useState({}),a=x.useCallback((b,$)=>{c(M=>({...M,[b]:$}))},[]),u=(T=o==null?void 0:o.useBalance)==null?void 0:T.call(o,{address:e,chainId:t,query:{enabled:!!e&&!!t&&!!(o!=null&&o.useBalance)}}),[l,d]=x.useState(0),f=x.useMemo(()=>s.map(b=>x.createElement(wP,{key:`${b.tokenAddress}-${l}`,token:b,account:e,chainId:t,contractAddress:n,wagmiHooks:o,onResult:a})),[s,e,t,n,o,a,l]),p=x.useMemo(()=>{const b=u!=null&&u.data?{value:u.data.value,formatted:u.data.formatted,decimals:u.data.decimals,symbol:u.data.symbol}:{value:BigInt(0),formatted:"0",decimals:18,symbol:"ETH"},$=s.map(L=>{const F=i[$n(L.tokenAddress)],j=F==null?void 0:F.balance,g=j==null?void 0:j.data;return{address:$n(L.tokenAddress),value:(g==null?void 0:g.value)||BigInt(0),formatted:(g==null?void 0:g.formatted)||"0",decimals:(g==null?void 0:g.decimals)||L.decimals}}).filter(L=>L.address),M=$.reduce((L,F)=>({...L,[F.address]:{balance:F}}),{});return{balanceList:$,baseTokenBalance:b,combinedData:M}},[u,i,s]),h=x.useCallback(async()=>p,[p]),m=x.useMemo(()=>{const b=(u==null?void 0:u.isLoading)||!1,$=Object.values(i).some(M=>{var L;return(L=M.balance)==null?void 0:L.isLoading});return b||$},[u==null?void 0:u.isLoading,i]),w=x.useCallback(()=>d(b=>b+1),[]);return{multicallRun:h,multicallRefresh:w,multicallResult:p,validErcTokens:s,isLoading:m,queryComponents:f}},vP=({address:e,currentActiveChain:t,selectedToken:n,platformBalance:r,isLoading:o,wagmiHooks:s,onChainChange:i,onDeposit:c})=>{const{t:a}=Ht(),u=s.useAccount(),l=t.tokenList.find(D=>D.token===n),d=t.chainId,[f,p]=x.useState("");x.useEffect(()=>{p("")},[n,t.chainId]);const{multicallResult:h,queryComponents:m}=F0({account:e,chainId:t.chainId,contractAddress:(l==null?void 0:l.contractAddress)||(t==null?void 0:t.contractAddress),tokens:(t==null?void 0:t.tokenList)||[],wagmiHooks:s}),w=x.useMemo(()=>{var U;if(!l)return"0";if(!l.tokenAddress||l.tokenAddress.toLowerCase()==="0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee")return h.baseTokenBalance.formatted;const D=h.combinedData[l.tokenAddress];return((U=D==null?void 0:D.balance)==null?void 0:U.formatted)||"0"},[l,h]),T="0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9",b="0xceeed84620e5eb9ab1d6dfc316867d2cda332e41",$=x.useMemo(()=>{var D,U;return ja({chain:_a,transport:pa(t.rpcUrl||((D=window==null?void 0:window.ENV)==null?void 0:D.CHAIN_RPC_URL_42161)||((U=window==null?void 0:window.ENV)==null?void 0:U.CHAIN_RPC_URL_421614))})},[t.rpcUrl]),M="1000000000000",{formatted:L}=bs({client:$,tokenAddress:T,holder:b,decimals:6,fallbackFormatted:M,pollingInterval:12e3}),[F,j]=x.useState(!1),{approve:g,onApprove:v}=yP({account:e,accountChainId:u.chainId,targetChainId:+t.chainId,tokenInfo:l,amount:f,wagmiHooks:s}),A=x.useCallback(async()=>{if(!F)try{j(!0),await v()}catch(D){console.error("Approve failed:",D)}finally{j(!1)}},[F,v]),N=x.useMemo(()=>+u.chainId!=+t.chainId,[u.chainId,t.chainId]),I=x.useCallback(async()=>{i&&i(d)},[i,d]);x.useEffect(()=>{N&&I()},[N,I]);const{showLayerZeroTip:P,layerZeroTipKey:S}=x.useMemo(()=>{const D=+t.chainId==42161||+t.chainId==421614,U=(n==null?void 0:n.toUpperCase())==="USDT",_=new $e(f||"0"),H=new $e("200000");let K=!1,W;if(D&&U&&f)if(_.gte(H))K=!0,W="deposit.layerZeroDepositTipGte200k";else{const Z=L;if(typeof Z=="string"&&Z.length>0){const J=new $e(Z);!J.isNaN()&&_.gte(J)&&(K=!0,W="deposit.layerZeroDepositTipExceedPool")}}return{showLayerZeroTip:K,layerZeroTipKey:W}},[t.chainId,n,f,L]),E=x.useCallback(()=>hP(+t.chainId,w||"0",n),[w,t==null?void 0:t.chainId,n]),C=x.useMemo(()=>pP(+t.chainId,f,n),[t==null?void 0:t.chainId,f,n]),O=bP({isNetworkMismatch:N,depositAmount:f,approved:g,currentTokenBalance:w,selectedToken:n,showLayerZeroTip:P,minDeposit:10}),y=D=>{const U=D.target.value,_=E(),H=ou(U,_);if(H.isValid)p(H.formattedValue),H.errorType;else return H.errorType==="exceed_balance",void 0},k=x.useCallback(async()=>{ei(!0);try{c&&c({amount:f,chainId:d,tokenAddress:(l==null?void 0:l.tokenAddress)||"",tokenSymbol:n})}catch(D){console.error("Deposit error:",D),ei(!1)}},[c,f,d,l==null?void 0:l.tokenAddress,n]);return B.jsxs(B.Fragment,{children:[m,B.jsxs("div",{className:"bg-fill-input-primary rounded-lg px-3 py-3 my-4",children:[B.jsxs("div",{className:"flex justify-between items-center h-[18px] mb-3",children:[B.jsx("input",{type:"text",placeholder:a("deposit.amount"),value:f,onChange:y,className:"flex-1 bg-transparent text-text-primary text-sm font-medium placeholder-text-tertiary placeholder:font-normal focus:outline-none border-none p-0 h-full"}),B.jsx("button",{onClick:()=>{const D=E();p(D)},className:"text-theme-normal text-xs font-medium cursor-pointer hover:opacity-80 transition-opacity h-full flex items-center",children:a("deposit.max")})]}),B.jsx("div",{className:"h-[1px] bg-line-divider-secondary mb-2"}),B.jsxs("div",{className:"flex justify-between items-center",children:[B.jsx(Gn,{content:a("deposit.availableDesc"),children:B.jsx("span",{className:"text-text-tertiary text-xs leading-[14px] border-b border-dashed border-line-divider-primary",children:a("deposit.available")})}),B.jsx("span",{className:"text-text-primary text-xs leading-[14px]",children:fP(w||"0",f,n)})]})]}),!g&&aP(f||"0",0)&&B.jsxs("div",{className:"flex justify-center flex-col items-center",children:[B.jsx("h3",{className:"text-text-primary text-sm leading-4 font-medium",children:a("deposit.enableSystemProWithToken",{token:n,network:t==null?void 0:t.chain})}),B.jsx("p",{className:"text-text-secondary text-xs leading-3 mt-4",children:a("deposit.enableTokenDesc",{token:n,network:t==null?void 0:t.chain})}),B.jsx("button",{className:"w-[180px] h-8 bg-fill-btn-primary hover:bg-fill-btn-primary-hover text-text-on-sec-btn rounded-xl text-sm font-medium transition-colors my-4 disabled:opacity-50 disabled:cursor-not-allowed flex items-center justify-center",onClick:A,disabled:F,children:F?B.jsx(Mo,{size:"xs",inline:!0}):a("deposit.enableWithToken",{token:n})})]}),P&&B.jsxs(B.Fragment,{children:[B.jsxs("div",{className:"flex mb-4",children:[B.jsx("div",{className:"w-5",children:B.jsx("img",{src:Bo,className:"w-4 h-4",alt:"Warning"})}),B.jsx("div",{className:"flex-1 text-xs text-functional-orange-1",children:a(S||"deposit.layerZeroDepositTip")})]}),B.jsx("div",{className:"my-2 ml-5 h-[1px] border-b border-dashed border-line-divider-secondary"})]}),C&&B.jsxs("div",{className:"flex mb-4",children:[B.jsx("div",{className:"w-5",children:B.jsx("img",{src:Bo,className:"w-4 h-4",alt:"Warning"})}),B.jsx("div",{className:"flex-1 text-xs text-functional-orange-1",children:a("deposit.depositTipFor25w")})]}),C&&B.jsx("div",{className:"my-2 ml-5 h-[1px] border-b border-dashed border-line-divider-secondary"}),B.jsxs("div",{className:"flex mb-4",children:[B.jsx("div",{className:"w-5",children:!(C||P)&&B.jsx("img",{src:Bo,className:"w-4 h-4",alt:"Warning"})}),B.jsx("div",{className:"flex-1 text-xs text-functional-orange-1",children:a("deposit.noPrivateKeyWalletWarning")})]}),B.jsxs("div",{className:"border-t border-line-divider-secondary border-dashed py-4",children:[B.jsxs("div",{className:"flex justify-between items-center h-[18px] leading-4",children:[B.jsx("span",{className:"text-sm text-text-tertiary",children:a("deposit.arrivalTime")}),B.jsx(Gn,{content:B.jsxs("div",{className:"grid flex-grow max-w-[300px] min-w-[80px] rounded-2xl flex-col gap-[10px]",children:[B.jsx("p",{children:a("deposit.arrivaltimeTooltip1",{v:(t==null?void 0:t.blockTime)*t.txConfirm/60,v1:t==null?void 0:t.txConfirm})}),B.jsx("p",{children:a("deposit.arrivaltimeTooltip2")})]}),placement:"top",children:B.jsx("span",{className:"text-text-primary font-medium text-right border-b-[2px] border-dashed border-line-divider-primary decoration-dashed text-sm",children:a("deposit.arrivalEstimated",{v:(t==null?void 0:t.blockTime)*t.txConfirm/60})})})]}),B.jsxs("div",{className:"flex justify-between items-center h-[18px] leading-4 mt-2",children:[B.jsx("span",{className:"text-sm text-text-tertiary",children:a("deposit.equity")}),B.jsx("span",{className:"text-sm text-text-primary font-medium",children:f?B.jsxs("span",{className:"flex items-center gap-1",children:[Tt(r),B.jsx("span",{className:"text-sm font-edgex-harmony text-functional-green-1 leading-[18px] font-medium",children:"→"}),Tt((parseFloat(r)+parseFloat(f)).toString())," ",n]}):`${Tt(r)} ${n}`})]})]}),B.jsxs("button",{className:`w-full h-[38px] text-sm rounded-xl font-medium transition-colors flex items-center justify-center gap-2 ${O.disabled||o?"bg-text-disabled text-text-secondary cursor-not-allowed":"bg-fill-btn-primary text-text-on-sec-btn"}`,onClick:k,disabled:O.disabled||o,children:[(o||N)&&B.jsx(Mo,{size:"xs"}),O.text]})]})},j0=e=>e.toLocaleUpperCase()===Fn?Fn:Ua,ti=e=>j0(e.wallet)===Fn,xP=e=>j0(e.wallet)===Ua,_0=({isOpen:e,isLoading:t=!1,onClose:n,currentActiveAccount:r,chains:o,defaultChainId:s,platformBalance:i="0",wagmiHooks:c,onDeposit:a,onCopy:u,onChainChange:l,onTokenChange:d})=>{const{t:f}=Ht(),[p,h]=x.useState(()=>{var M;return!o||o.length===0?1:s||((M=o[0])==null?void 0:M.chainId)||1}),m=o.find(M=>M.chainId===p)||o[0],[w,T]=x.useState(()=>{var j;if(!o||o.length===0)return"";const M=s||((j=o[0])==null?void 0:j.chainId),L=o.find(g=>g.chainId===M);if(!L||!L.tokenList||L.tokenList.length===0)return"";const F=L.tokenList[0];return(F==null?void 0:F.token)||""}),b=x.useCallback(M=>{h(M),l==null||l(M)},[l]),$=x.useCallback(M=>{T(M),d==null||d(M)},[d]);return e?Le.createPortal(B.jsx("div",{className:"fixed top-0 left-0 right-0 bottom-0 w-screen h-screen",style:{zIndex:49},children:B.jsx("div",{className:"fixed top-0 left-0 right-0 bottom-0 z-49 flex items-center justify-center",style:{background:"rgba(0, 0, 0, 0.6)",backdropFilter:"blur(10px)",WebkitBackdropFilter:"blur(10px)"},onClick:()=>{n()},"aria-hidden":"true",children:B.jsxs("div",{className:"relative w-[420px] max-h-[85vh] bg-fill-page-secondary overflow-auto rounded-lg p-6 shadow-xl",onClick:M=>{M.stopPropagation()},children:[B.jsxs("div",{className:"flex items-center justify-between mb-4",children:[B.jsx("h2",{className:"text-lg font-semibold text-white",children:f("deposit.title")}),B.jsx("button",{className:"text-gray-400 hover:text-gray-200 transition-colors",onClick:n,"aria-label":"Close",children:B.jsx(Wd,{className:"h-4 w-4"})})]}),B.jsx(qh,{currentActiveChain:m,chainList:o,onChainChange:b,curSelectToken:w,onTokenChange:$,walletType:ti(r)?Fn:Ua}),ti(r)&&B.jsx(lP,{address:r.smartWalletAddress,currentActiveChain:m,selectedToken:w,onDeposit:a,onCopy:u,onClose:n}),xP(r)&&B.jsx(vP,{address:r.ethAddress,currentActiveChain:m,selectedToken:w,platformBalance:i,isLoading:t,wagmiHooks:c,onChainChange:b,onDeposit:a,onClose:n})]})})}),document.body):null},EP=({withdrawAmount:e,curSelectToken:t,tokenInfo:n,currentActiveChain:r,platformBalance:o="0",fee:s="0.00",walletType:i="evm",receiverAddress:c="",onWithdrawAmountChange:a,onReceiverAddressChange:u,onAmountChanged:l,showPoolBalanceInsufficientTip:d=!1})=>{const{t:f}=Ht(),p=x.useMemo(()=>{if(!Ge(r==null?void 0:r.chainId)){const b=new $e(e||"0").minus(s||"0").decimalPlaces(2,$e.ROUND_DOWN);return b.isNegative()?"0.00":b.toString()}return e||"0"},[e,s,r==null?void 0:r.chainId]),h=x.useMemo(()=>o||"0",[o]),m=b=>{const $=b.target.value,L=ou($,h||"0");if(L.isValid)a(L.formattedValue),L.errorType;else return L.errorType==="exceed_balance",void 0;l==null||l(L.formattedValue)},w=()=>{a(h),l==null||l(h)},T=()=>{const b=parseFloat(o||"0"),$=parseFloat(e||"0");if($>0){const M=b-$,L=Tt(Math.max(0,M).toString());return B.jsxs("span",{className:"flex items-center gap-1",children:[Tt(o||"0"),B.jsx("span",{className:"text-sm font-edgex-harmony text-functional-green-1 leading-[18px] font-medium",children:"→"}),L," ",t]})}return`${Tt(o||"0")} ${t}`};return B.jsxs(B.Fragment,{children:[B.jsxs("div",{className:"bg-fill-input-primary rounded-lg px-3 py-3 my-4",children:[B.jsxs("div",{className:"flex justify-between items-center h-[18px] mb-3",children:[B.jsx("input",{type:"text",placeholder:f("deposit.amount"),value:e,onChange:m,className:"flex-1 bg-transparent text-text-primary text-sm font-medium placeholder-text-tertiary placeholder:font-normal focus:outline-none border-none p-0 h-full"}),B.jsx("button",{onClick:w,className:"text-theme-normal text-xs font-medium cursor-pointer hover:opacity-80 transition-opacity h-full flex items-center",children:f("deposit.max")})]}),B.jsx("div",{className:"h-[1px] bg-line-divider-secondary mb-2"}),B.jsxs("div",{className:"flex justify-between items-center",children:[B.jsx(Gn,{content:f("withdraw.availableDesc"),children:B.jsx("span",{className:"text-text-tertiary text-xs leading-[14px] border-b border-dashed border-line-divider-primary",children:f("deposit.available")})}),B.jsx("span",{className:"text-text-primary text-xs leading-[14px]",children:T()})]})]}),i==="mpc"&&!Ge(r==null?void 0:r.chainId)&&B.jsx("div",{className:"bg-fill-input-primary rounded-lg my-4 h-9 flex items-center px-3",children:B.jsx("input",{type:"text",placeholder:f("withdraw.receiverAddress"),value:c,onChange:b=>u==null?void 0:u(b.target.value),className:"flex-1 bg-transparent text-text-primary text-sm font-medium placeholder-text-tertiary placeholder:font-normal focus:outline-none border-none p-0 h-full"})}),B.jsx("div",{className:"bg-fill-page-secondary rounded-lg mb-4",children:Ge(r==null?void 0:r.chainId)?B.jsxs(B.Fragment,{children:[B.jsx("p",{className:"text-text-tertiary text-xs leading-[18px]",children:f("withdraw.noticeDesc")}),B.jsx("a",{className:"block text-xs leading-[18px] mt-1 text-theme-normal",href:"https://edgex-1.gitbook.io/edgeX-documentation/getting-started/deposits-and-withdrawals/withdrawals",rel:"noreferrer",target:"_blank",children:f("withdraw.commonWithdraw")})]}):B.jsx("p",{className:"text-text-tertiary text-xs leading-[18px]",children:f("withdraw.crossChainTips")})}),d&&B.jsxs("div",{className:"flex mb-4",children:[B.jsx("div",{className:"w-5",children:B.jsx("img",{src:Bo,className:"w-4 h-4",alt:"Warning"})}),B.jsx("div",{className:"flex-1 text-xs text-functional-orange-1",children:f("withdraw.poolBalanceInsufficientTip")})]}),B.jsxs("div",{className:"py-4 border-t border-line-divider-secondary border-dashed",children:[B.jsxs("div",{className:"flex items-center justify-between h-[18px] leading-[18px]",children:[B.jsx(Gn,{content:B.jsxs("div",{children:[B.jsx("div",{children:f("withdraw.speedNote")}),B.jsxs("div",{className:"flex gap-1 items-center mt-1",children:[B.jsx(Io,{selectedLevel:$t.FAST,maxLevel:3}),B.jsx("span",{children:f("withdraw.speedNoteSpeed1")})]}),B.jsxs("div",{className:"flex gap-1 items-center mt-1",children:[B.jsx(Io,{selectedLevel:$t.Medium,maxLevel:3}),B.jsx("span",{children:f("withdraw.speedNoteSpeed2")})]}),B.jsxs("div",{className:"flex gap-1 items-center mt-1",children:[B.jsx(Io,{selectedLevel:$t.SLOW,maxLevel:3}),B.jsx("span",{children:f("withdraw.speedNoteSpeed3")})]})]}),children:B.jsx("span",{className:"text-text-tertiary text-sm leading-4 border-b border-dashed border-line-divider-primary",children:f("withdraw.speed")})}),B.jsx("div",{className:"flex items-center",children:B.jsx(Io,{selectedLevel:Ge(r==null?void 0:r.chainId)?$t.SLOW:$t.FAST,maxLevel:3})})]}),!Ge(r==null?void 0:r.chainId)&&B.jsxs("div",{className:"flex items-center justify-between mt-2 h-[18px]",children:[B.jsx(Gn,{content:f("withdraw.feeCalculationTip"),children:B.jsxs("span",{className:"text-text-tertiary text-sm leading-4 border-b border-dashed border-line-divider-primary",children:[f("withdraw.fee"),"/",f("withdraw.feeRate")]})}),B.jsxs("span",{className:"text-text-primary text-sm leading-4 font-medium",children:[s," ",t," /"," ",(n==null?void 0:n.feeRate)||(r==null?void 0:r.feeRate)||0,"%"]})]}),B.jsxs("div",{className:"flex items-center justify-between mt-2 h-[18px]",children:[B.jsx("span",{className:"text-text-tertiary text-sm leading-4",children:f(Ge(r==null?void 0:r.chainId)?"withdraw.withdrawlAmount":"withdraw.amountToReceive")}),B.jsxs("span",{className:"text-text-primary text-sm leading-4 font-medium",children:[Tt(p)," ",t]})]})]})]})},SP=[],PP={};let Ze=null;const U0=x.forwardRef((e,t)=>{const[n,r]=x.useState(!1),[o,s]=x.useState(!1),[i,c]=x.useState({chains:[],currentActiveAccount:{wallet:"EVM",ethAddress:"",accountId:"",smartWalletAddress:""}}),a=x.useCallback(h=>{c(h||{chains:[],currentActiveAccount:{wallet:"EVM",ethAddress:"",accountId:"",smartWalletAddress:""}}),r(!0)},[]),u=x.useCallback(h=>{c(m=>({...m,...h}))},[]),l=x.useCallback(()=>{r(!1),s(!1),i.onClose&&i.onClose()},[i.onClose]),d=x.useCallback(h=>{s(h)},[]),f=x.useCallback(()=>n,[n]),p=x.useCallback(()=>o,[o]);return x.useImperativeHandle(t,()=>({openWithdraw:a,closeWithdraw:l,updateWithdrawOptions:u,setWithdrawLoading:d,isOpen:f,isLoading:p}),[a,l,u,d,f,p]),x.useEffect(()=>(Ze={openWithdraw:a,closeWithdraw:l,updateWithdrawOptions:u,setWithdrawLoading:d,isOpen:f,isLoading:p},()=>{Ze=null}),[a,l,u,d,f,p]),B.jsx(G0,{isOpen:n,isLoading:o,onClose:l,config:i.config||{symbol:"USDT"},currentActiveAccount:i.currentActiveAccount,chains:i.chains||SP,defaultChainId:i.defaultChainId,defaultTokenAddress:i.defaultTokenAddress,defaultAmount:i.defaultAmount,metadata:i.metadata||PP,currentEquity:i.currentEquity??5e3,platformBalance:i.platformBalance||"0",fee:i.fee,wagmiHooks:i.wagmiHooks,onWithdraw:i.onWithdraw,onChainChange:i.onChainChange,onTokenChange:i.onTokenChange,onAmountChanged:i.onAmountChanged})});U0.displayName="WithdrawManager";const z0=e=>{if(!Ze){console.error("WithdrawManager not initialized. Make sure to render <WithdrawManager /> in your app.");return}Ze.openWithdraw(e||{chains:[],currentActiveAccount:{wallet:"EVM",ethAddress:"",accountId:"",smartWalletAddress:""}})},H0=()=>{if(!Ze){console.error("WithdrawManager not initialized. Make sure to render <WithdrawManager /> in your app.");return}Ze.closeWithdraw()},W0=e=>{if(!Ze){console.error("WithdrawManager not initialized. Make sure to render <WithdrawManager /> in your app.");return}Ze.updateWithdrawOptions(e)},ni=e=>{if(!Ze){console.error("WithdrawManager not initialized. Make sure to render <WithdrawManager /> in your app.");return}Ze.setWithdrawLoading(e)},AP=()=>Ze?Ze.isOpen():!1,V0=()=>Ze?Ze.isLoading():!1,$P=()=>({openWithdraw:z0,closeWithdraw:H0,updateWithdrawOptions:W0,setWithdrawLoading:ni,isOpen:AP,isLoading:V0}),TP=({address:e,walletType:t,chains:n,defaultChainId:r,defaultTokenAddress:o,defaultAmount:s="",metadata:i,currentEquity:c,platformBalance:a="0",fee:u="0.00",isLoading:l=!1,wagmiHooks:d,onWithdraw:f,onClose:p,onChainChange:h,onTokenChange:m,onAmountChanged:w})=>{var Me;const{t:T}=Ht(),b=x.useMemo(()=>{const Y=[56,97],ee=me=>n==null?void 0:n.find(de=>Number(de==null?void 0:de.chainId)===me),Q=ee(Y[0])||ee(Y[1]);return Q==null?void 0:Q.rpcUrl},[n]),$=x.useMemo(()=>{const Y=[42161,421614],ee=me=>n==null?void 0:n.find(de=>Number(de==null?void 0:de.chainId)===me),Q=ee(Y[0])||ee(Y[1]);return Q==null?void 0:Q.rpcUrl},[n]),M=x.useMemo(()=>{var qn,Je;const Y="USDC";if(!n||n.length===0)return{chainId:1,tokenSymbol:""};const ee=Zn=>Array.isArray(Zn.tokenList)&&Zn.tokenList.some(ri=>(ri.token||ri.symbol||"").toUpperCase()===Y),Q=n.find(ee)||n[0];if(!Q||!Array.isArray(Q.tokenList)||Q.tokenList.length===0)return{chainId:(Q==null?void 0:Q.chainId)||1,tokenSymbol:""};const me=Q.tokenList.find(Zn=>(Zn.token||Zn.symbol||"").toUpperCase()===Y),de=(me==null?void 0:me.token)||(me==null?void 0:me.symbol)||((qn=Q.tokenList[0])==null?void 0:qn.token)||((Je=Q.tokenList[0])==null?void 0:Je.symbol)||"";return{chainId:Q.chainId,tokenSymbol:de}},[n]),{ARB_USDC_BALANCE:L,ARB_USDT_BALANCE:F,BNB_USDT_BALANCE:j}=Xv({bscRpcUrl:b,arbitrumRpcUrl:$}),[g,v]=x.useState(()=>M.chainId),[A,N]=x.useState(()=>M.tokenSymbol),[I,P]=x.useState(s),[S,E]=x.useState(""),C=x.useCallback(Y=>{v(Y),h==null||h(Y)},[h]),O=x.useCallback(Y=>{N(Y),m==null||m(Y)},[m]),y=x.useRef(!0),k=x.useRef(A),D=x.useRef(g);x.useEffect(()=>{if(y.current){y.current=!1,k.current=A,D.current=g;return}(k.current!==A||D.current!==g)&&(P(""),k.current=A,D.current=g)},[A,g]);const U=n&&n.length>0?n.find(Y=>Y.chainId===g)||n[0]:null,_=(Me=U==null?void 0:U.tokenList)==null?void 0:Me.find(Y=>Y.token===A),{multicallResult:H,queryComponents:K}=F0({account:e,chainId:g,contractAddress:void 0,tokens:(U==null?void 0:U.tokenList)||[],wagmiHooks:d}),W=x.useMemo(()=>{var ee;if(!_)return;if(!_.tokenAddress||_.tokenAddress.toLowerCase()==="0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee")return H.baseTokenBalance.formatted;const Y=H.combinedData[_.tokenAddress];return((ee=Y==null?void 0:Y.balance)==null?void 0:ee.formatted)||"0"},[_,H]),Z=Y=>{if(!Y)return"0";const ee=Y.indexOf(".");return ee>=0?Y.slice(0,ee):Y},G=x.useMemo(()=>{const Y=(A||"").toUpperCase(),ee=Number(g),Q=me=>{const de=Z(me);try{const Je=new $e(de||"0").minus(1e4);return Je.isGreaterThan(0)?Je.toFixed(0):"0"}catch{return"0"}};if(Ge(ee))return"∞";if(ee===42161||ee===421614){if(Y==="USDT")return Q(F);if(Y==="USDC")return Q(L)}return(ee===56||ee===97)&&Y==="USDT"?Q(j):"0"},[g,A,L,F,j]),J=x.useMemo(()=>{if(Ge(g))return!1;try{const Y=new $e(I||"0"),ee=new $e((G||"0").toString());return Y.isGreaterThan(ee)}catch{return!1}},[g,I,G]),ne=x.useMemo(()=>{const Y={},ee=(A||"").toUpperCase(),Q=me=>{const de=Z(me);try{const Je=new $e(de||"0").minus(1e4);return Je.isGreaterThan(0)?Je.toFixed(0):"0"}catch{return"0"}};return(n||[]).forEach(me=>{const de=Number(me==null?void 0:me.chainId);if(de){if(Ge(de)){Y[de]="∞";return}if(de===42161||de===421614){ee==="USDT"?Y[de]=Q(F):ee==="USDC"?Y[de]=Q(L):Y[de]="0";return}if(de===56||de===97){ee==="USDT"?Y[de]=Q(j):Y[de]="0";return}Y[de]="0"}}),Y},[n,A,L,F,j]),le=x.useMemo(()=>{const Y=new $e(I||"0"),ee=new $e(u||"0"),Q=Ge(g);let me=!1;if(!Q)try{const de=new $e((G||"0").toString());me=Y.isGreaterThan(de)}catch{me=!1}return!I||Y.isZero()||!Q&&Y.isLessThan(ee)||!Q&&me?{text:T("withdraw.confirmWithdraw"),disabled:!0}:t==="mpc"&&!Q&&!S.trim()?{text:T("withdraw.invalidReceiverAddress"),disabled:!0}:{text:T("withdraw.confirmWithdraw"),disabled:!1}},[T,g,I,t,S,u,G]),Se=x.useCallback(async()=>{ni(!0);try{if(f){const ee={amount:new $e(I||"0").toString(),chainId:g,tokenAddress:(_==null?void 0:_.tokenAddress)||"",tokenSymbol:A};t==="mpc"&&!Ge(g)&&(ee.receiverAddress=S),f(ee)}}catch{ni(!1)}},[f,I,g,_==null?void 0:_.tokenAddress,A,t,S]);return!n||n.length===0?B.jsx("div",{className:"text-center py-8",children:B.jsx("p",{className:"text-gray-400",children:"No chains available"})}):U?B.jsxs(B.Fragment,{children:[K,B.jsx(qh,{currentActiveChain:U,chainList:n,chainPoolBalances:ne,onChainChange:C,curSelectToken:A,onTokenChange:O,walletType:"EVM",txType:"withdraw"}),B.jsxs("div",{className:"p-3 my-4 bg-fill-input-primary rounded-lg flex items-center justify-between h-[38px]",children:[B.jsx("div",{className:"text-text-secondary text-sm",children:Ge(g)?T("withdraw.poolBalance"):T("withdraw.crossChainPoolBalance")}),B.jsxs("div",{className:"text-text-primary text-sm font-medium",children:[G," ",A]})]}),B.jsx(EP,{withdrawAmount:I,curSelectToken:A,tokenInfo:_,curSelectTokenData:{balance:_==null?void 0:_.balance,allowance:_==null?void 0:_.allowance},currentActiveChain:U,currentEquity:c||0,amount:I,decimals:(_==null?void 0:_.decimals)||6,tokenBalance:W,platformBalance:a,fee:u,walletType:t,receiverAddress:S,onWithdrawAmountChange:P,onReceiverAddressChange:E,onAmountChanged:w,showPoolBalanceInsufficientTip:J,poolBalanceMap:ne}),B.jsxs("button",{className:`w-full h-[38px] text-sm rounded-xl font-medium transition-colors flex items-center justify-center gap-2 ${le.disabled||l?"bg-text-disabled text-text-secondary cursor-not-allowed":"bg-fill-btn-primary text-text-on-sec-btn"}`,onClick:Se,disabled:le.disabled||l,children:[l&&B.jsx(Mo,{size:"xs"}),le.text]})]}):B.jsx("div",{className:"text-center py-8",children:B.jsx("p",{className:"text-gray-400",children:"Loading..."})})},G0=({isOpen:e,isLoading:t=!1,onClose:n,config:r,currentActiveAccount:o,chains:s,defaultChainId:i,defaultTokenAddress:c,defaultAmount:a="",metadata:u,currentEquity:l=5e3,platformBalance:d="0",fee:f,wagmiHooks:p,onWithdraw:h,onChainChange:m,onTokenChange:w,onAmountChanged:T})=>{const{t:b}=Ht();return e?Le.createPortal(B.jsx("div",{className:"fixed top-0 left-0 right-0 bottom-0 w-screen h-screen",style:{zIndex:49},children:B.jsx("div",{className:"fixed top-0 left-0 right-0 bottom-0 z-49 flex items-center justify-center",style:{background:"rgba(0, 0, 0, 0.6)",backdropFilter:"blur(10px)",WebkitBackdropFilter:"blur(10px)"},onClick:()=>{n()},"aria-hidden":"true",children:B.jsxs("div",{className:"relative w-[420px] max-h-[85vh] bg-fill-page-secondary overflow-auto rounded-lg p-6 shadow-xl",onClick:$=>{$.stopPropagation()},children:[B.jsxs("div",{className:"flex items-center justify-between mb-4",children:[B.jsx("h2",{className:"text-lg font-semibold text-white",children:b("withdraw.withdraw")}),B.jsx("button",{className:"text-gray-400 hover:text-gray-200 transition-colors",onClick:n,"aria-label":"Close",children:B.jsx(Wd,{className:"h-4 w-4"})})]}),B.jsx(TP,{chains:s,address:ti(o)?o.smartWalletAddress:o.ethAddress,walletType:ti(o)?"mpc":"evm",defaultChainId:i,defaultTokenAddress:c,defaultAmount:a,metadata:u,currentEquity:l,platformBalance:d,fee:f,isLoading:t,wagmiHooks:p,onWithdraw:h,onClose:n,onChainChange:m,onTokenChange:w,onAmountChanged:T})]})})}),document.body):null};ie.ChromeLoader=Mo,ie.ComponentProvider=bm,ie.DEFAULT_LOCALE=Ro,ie.Deposit=_0,ie.DepositManager=B0,ie.LOCALE_NAMES=hm,ie.LoadingSpinner=Mo,ie.SUPPORTED_LOCALES=si,ie.Tooltip=Gn,ie.Withdraw=G0,ie.WithdrawManager=U0,ie.closeDeposit=L0,ie.closeWithdraw=H0,ie.formatThousands=wm,ie.isDepositLoading=D0,ie.isWithdrawLoading=V0,ie.openDeposit=M0,ie.openWithdraw=z0,ie.setDepositLoading=ei,ie.setWithdrawLoading=ni,ie.updateDepositOptions=R0,ie.updateWithdrawOptions=W0,ie.useComponentConfig=bu,ie.useDeposit=Qv,ie.useDepositManager=gP,ie.useTranslation=Ht,ie.useWithdraw=Jv,ie.useWithdrawManager=$P,Object.defineProperty(ie,Symbol.toStringTag,{value:"Module"})});
152
152
  //# sourceMappingURL=index.umd.js.map