@swapkit/toolboxes 4.23.1 → 4.24.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/chunk-ap5mzmjf.js +1 -0
  3. package/dist/{chunk-9psy287z.js → chunk-btth5bse.js} +1 -1
  4. package/dist/{chunk-jdh5asaw.js → chunk-nvfkjbyq.js} +1 -1
  5. package/dist/{chunk-fjyc6m34.js → chunk-xbdjxeqd.js} +1 -1
  6. package/dist/chunk-z61r1327.js +2 -0
  7. package/dist/src/aptos/index.cjs +1 -1
  8. package/dist/src/aptos/index.js +1 -1
  9. package/dist/src/cardano/index.cjs +1 -1
  10. package/dist/src/cardano/index.js +1 -1
  11. package/dist/src/cosmos/index.cjs +1 -1
  12. package/dist/src/cosmos/index.js +1 -1
  13. package/dist/src/evm/index.cjs +1 -1
  14. package/dist/src/evm/index.js +1 -1
  15. package/dist/src/hypercore/index.cjs +1 -1
  16. package/dist/src/hypercore/index.js +1 -1
  17. package/dist/src/index.cjs +1 -1
  18. package/dist/src/index.js +1 -1
  19. package/dist/src/near/index.cjs +1 -1
  20. package/dist/src/near/index.js +1 -1
  21. package/dist/src/radix/index.js +1 -1
  22. package/dist/src/ripple/index.cjs +1 -1
  23. package/dist/src/ripple/index.js +1 -1
  24. package/dist/src/solana/index.cjs +1 -1
  25. package/dist/src/solana/index.js +1 -1
  26. package/dist/src/starknet/index.cjs +1 -1
  27. package/dist/src/starknet/index.js +1 -1
  28. package/dist/src/stellar/index.cjs +1 -1
  29. package/dist/src/stellar/index.js +1 -1
  30. package/dist/src/substrate/index.cjs +1 -1
  31. package/dist/src/substrate/index.js +1 -1
  32. package/dist/src/sui/index.cjs +1 -1
  33. package/dist/src/sui/index.js +1 -1
  34. package/dist/src/ton/index.cjs +1 -1
  35. package/dist/src/ton/index.js +1 -1
  36. package/dist/src/tron/index.cjs +1 -1
  37. package/dist/src/tron/index.js +1 -1
  38. package/dist/src/utxo/index.cjs +1 -1
  39. package/dist/src/utxo/index.js +1 -1
  40. package/dist/types/aptos/toolbox.d.ts +11 -7
  41. package/dist/types/cardano/toolbox.d.ts +2 -2
  42. package/dist/types/cosmos/thorchainUtils/messages.d.ts +2 -1
  43. package/dist/types/cosmos/thorchainUtils/registry.d.ts +1 -1
  44. package/dist/types/cosmos/toolbox/cosmos.d.ts +1 -1
  45. package/dist/types/cosmos/toolbox/thorchain.d.ts +6 -6
  46. package/dist/types/cosmos/util.d.ts +16 -2
  47. package/dist/types/evm/toolbox/baseEVMToolbox.d.ts +66 -21
  48. package/dist/types/evm/toolbox/evm.d.ts +1603 -234
  49. package/dist/types/evm/toolbox/op.d.ts +235 -11
  50. package/dist/types/evm/types.d.ts +7 -13
  51. package/dist/types/hypercore/toolbox.d.ts +2 -2
  52. package/dist/types/hypercore/types.d.ts +3 -1
  53. package/dist/types/near/toolbox.d.ts +22 -3
  54. package/dist/types/near/types.d.ts +4 -1
  55. package/dist/types/ripple/index.d.ts +3 -2
  56. package/dist/types/solana/toolbox.d.ts +2 -2
  57. package/dist/types/starknet/toolbox.d.ts +2 -2
  58. package/dist/types/starknet/types.d.ts +3 -12
  59. package/dist/types/stellar/toolbox.d.ts +2 -2
  60. package/dist/types/sui/toolbox.d.ts +3 -3
  61. package/dist/types/ton/toolbox.d.ts +1 -4
  62. package/dist/types/tron/toolbox.d.ts +2 -2
  63. package/dist/types/utxo/helpers/coinselect.d.ts +2 -1
  64. package/dist/types/utxo/toolbox/bitcoinCash.d.ts +7 -5
  65. package/dist/types/utxo/toolbox/utxo.d.ts +8 -5
  66. package/dist/types/utxo/toolbox/zcash.d.ts +6 -4
  67. package/package.json +2 -2
  68. package/dist/chunk-6b99avsd.js +0 -2
  69. package/dist/chunk-e02sjx7s.js +0 -1
@@ -1 +1 @@
1
- var f0=Object.create;var{getPrototypeOf:T0,defineProperty:g,getOwnPropertyNames:Ef,getOwnPropertyDescriptor:x0}=Object,Af=Object.prototype.hasOwnProperty;function Sf(_){return this[_]}var H0,v0,B0=(_,H,B)=>{var f=_!=null&&typeof _==="object";if(f){var x=H?H0??=new WeakMap:v0??=new WeakMap,T=x.get(_);if(T)return T}B=_!=null?f0(T0(_)):{};let v=H||!_||!_.__esModule?g(B,"default",{value:_,enumerable:!0}):B;for(let L of Ef(_))if(!Af.call(v,L))g(v,L,{get:Sf.bind(_,L),enumerable:!0});if(f)x.set(_,v);return v},_0=(_)=>{var H=(Kf??=new WeakMap).get(_),B;if(H)return H;if(H=g({},"__esModule",{value:!0}),_&&typeof _==="object"||typeof _==="function"){for(var f of Ef(_))if(!Af.call(H,f))g(H,f,{get:Sf.bind(_,f),enumerable:!(B=x0(_,f))||B.enumerable})}return Kf.set(_,H),H},Kf;var L0=(_)=>_;function W0(_,H){this[_]=L0.bind(null,H)}var kf=(_,H)=>{for(var B in H)g(_,B,{get:H[B],enumerable:!0,configurable:!0,set:W0.bind(H,B)})};var R=(_,H)=>()=>(_&&(H=_(_=0)),H);function a(_){return u.base64.encode(Uint8Array.from(u.bech32.fromWords(u.bech32.decode(_).words)))}function r(_,H="thor"){return u.bech32.encode(H,u.bech32.toWords(u.base64.decode(_)))}function y0(_){return u.base64.encode(_)}function z0(_){if(!_.match(/^[a-zA-Z0-9+/]*={0,2}$/))throw new Uf.SwapKitError("toolbox_cosmos_invalid_params",{error:"Invalid base64 string format"});return u.base64.decode(_)}var u,Uf;var Lf=R(()=>{u=require("@scure/base"),Uf=require("@swapkit/helpers")});function M(_){switch(_){case G.Chain.Maya:return{amount:[],gas:"10000000000"};case G.Chain.THORChain:return{amount:[],gas:"500000000"};case G.Chain.Kujira:return Vf;case G.Chain.Noble:return Df;default:return Rf}}async function w(_){let H=await import("@cosmjs/stargate"),B=H.StargateClient??H.default?.StargateClient,f=typeof window<"u"?{}:{referer:"https://sdk.swapkit.dev",referrer:"https://sdk.swapkit.dev"};return B.connect({headers:f,url:_})}async function i(_,H,B={}){let f=await import("@cosmjs/stargate"),x=f.SigningStargateClient??f.default?.SigningStargateClient,T=f.GasPrice??f.default?.GasPrice,v=typeof B==="string"?B:"0.0003uatom",L=typeof B==="string"?{}:B;return x.connectWithSigner(_,H,{gasPrice:T.fromString(v),...L})}async function yf(_,H){let B=await import("@cosmjs/stargate");return(B.SigningStargateClient??B.default?.SigningStargateClient).offline(_,H)}async function zf({sender:_,recipient:H,assetValue:B,memo:f="",feeRate:x,sequence:T,accountNumber:v}){let{chain:L,chainId:X}=B,J=await G.getRPCUrl(L),O=await(await w(J)).getAccount(_);if(!O)throw new G.SwapKitError("toolbox_cosmos_account_not_found",{sender:_});let k=G.AssetValue.from({chain:L}),Q=l(k.symbol),q=M(L),F=Q&&x?{amount:[{amount:x.toString(),denom:Q}],gas:q.gas}:q,S={amount:[{amount:B.getBaseValue("string"),denom:l(B.symbol)}],fromAddress:_,toAddress:H};return{accountNumber:v??Number(O.accountNumber),chainId:X,fee:F,memo:f,msgs:[{typeUrl:G0(L),value:S}],sequence:T??O.sequence}}var G,Wf="FACTORY/KUJIRA1QK00H5ATUTPSV900X202PXX42NPJR9THG58DNQPA72F2P7M2LUASE444A7/UUSK",Cf="FACTORY/KUJIRA1YGFXN0ER40KLCNCK8THLTUPRDXLCK6WVNPKF2K/UYUM",Rf,Vf,Df,l=(_,H=!1)=>{if(H)return _.toLowerCase();switch(_){case"uUSK":case"USK":return Wf;case"uYUM":case"YUM":return Cf;case"uKUJI":case"KUJI":return"ukuji";case"ATOM":case"uATOM":return"uatom";case"uUSDC":case"USDC":return"uusdc";default:return _}},s=({symbol:_,chain:H})=>{if(H===G.Chain.Maya)return(_.toUpperCase()!=="CACAO"?_:`${G.Chain.Maya}.${_}`).toUpperCase();if(H===G.Chain.THORChain)return(["RUNE","TCY","RUJI"].includes(_.toUpperCase())?`${G.Chain.THORChain}.${_}`:_).toUpperCase();return l(_,!1)},G0=(_)=>{switch(_){case G.Chain.Maya:case G.Chain.THORChain:return"/types.MsgSend";case G.Chain.Cosmos:case G.Chain.Kujira:case G.Chain.Noble:return"/cosmos.bank.v1beta1.MsgSend";default:throw new G.SwapKitError("toolbox_cosmos_not_supported",{chain:_})}},Z0,Gf=(_,H)=>{let B=Z0[_.toLowerCase()];if(!B)return G.AssetValue.from({asset:_,fromBaseDecimal:8,value:H});let{chain:f,asset:x,decimals:T}=B,v=f?{chain:f}:{asset:x};return G.AssetValue.from({...v,fromBaseDecimal:T,value:H})};var e=R(()=>{G=require("@swapkit/helpers"),Rf={amount:[{amount:"500",denom:"uatom"}],gas:"200000"},Vf={amount:[{amount:"1000",denom:"ukuji"}],gas:"200000"},Df={amount:[{amount:"1000",denom:"uusdc"}],gas:"200000"};Z0={atom:{chain:G.Chain.Cosmos,decimals:G.getChainConfig(G.Chain.Cosmos).baseDecimal},cacao:{chain:G.Chain.Maya,decimals:10},kuji:{chain:G.Chain.Kujira,decimals:G.getChainConfig(G.Chain.Kujira).baseDecimal},maya:{asset:`${G.Chain.Maya}.${G.Chain.Maya}`,decimals:4},rune:{chain:G.Chain.THORChain,decimals:G.getChainConfig(G.Chain.THORChain).baseDecimal},tcy:{asset:"THOR.TCY",decimals:G.getChainConfig(G.Chain.THORChain).baseDecimal},uatom:{chain:G.Chain.Cosmos,decimals:G.getChainConfig(G.Chain.Cosmos).baseDecimal},ukuji:{chain:G.Chain.Kujira,decimals:G.getChainConfig(G.Chain.Kujira).baseDecimal},usdc:{chain:G.Chain.Noble,decimals:G.getChainConfig(G.Chain.Noble).baseDecimal},uusdc:{chain:G.Chain.Noble,decimals:G.getChainConfig(G.Chain.Noble).baseDecimal},"x/kuji":{asset:"THOR.KUJI",decimals:G.getChainConfig(G.Chain.THORChain).baseDecimal},[Wf.toLowerCase()]:{asset:`${G.Chain.Kujira}.USK`,decimals:G.getChainConfig(G.Chain.Kujira).baseDecimal}}});var Pf={};kf(Pf,{$root:()=>W});var E,Z,V,z,W;var uf=R(()=>{E=B0(require("protobufjs/minimal.js")),Z=E.default.Reader,V=E.default.Writer,z=E.default.util,W=E.default.roots.default||(E.default.roots.default={});W.common=(()=>{let _={};return _.Asset=(()=>{function H(B){if(B){for(let f=Object.keys(B),x=0;x<f.length;++x)if(B[f[x]]!=null)this[f[x]]=B[f[x]]}}return H.prototype.chain="",H.prototype.symbol="",H.prototype.ticker="",H.prototype.synth=!1,H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=V.create();if(f.chain!=null&&Object.hasOwnProperty.call(f,"chain"))x.uint32(10).string(f.chain);if(f.symbol!=null&&Object.hasOwnProperty.call(f,"symbol"))x.uint32(18).string(f.symbol);if(f.ticker!=null&&Object.hasOwnProperty.call(f,"ticker"))x.uint32(26).string(f.ticker);if(f.synth!=null&&Object.hasOwnProperty.call(f,"synth"))x.uint32(32).bool(f.synth);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,v=new W.common.Asset;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:v.chain=f.string();break;case 2:v.symbol=f.string();break;case 3:v.ticker=f.string();break;case 4:v.synth=f.bool();break;default:f.skipType(L&7);break}}return v},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.chain!=null&&f.hasOwnProperty("chain")){if(!z.isString(f.chain))return"chain: string expected"}if(f.symbol!=null&&f.hasOwnProperty("symbol")){if(!z.isString(f.symbol))return"symbol: string expected"}if(f.ticker!=null&&f.hasOwnProperty("ticker")){if(!z.isString(f.ticker))return"ticker: string expected"}if(f.synth!=null&&f.hasOwnProperty("synth")){if(typeof f.synth!=="boolean")return"synth: boolean expected"}return null},H.fromObject=function(f){if(f instanceof W.common.Asset)return f;let x=new W.common.Asset;if(f.chain!=null)x.chain=String(f.chain);if(f.symbol!=null)x.symbol=String(f.symbol);if(f.ticker!=null)x.ticker=String(f.ticker);if(f.synth!=null)x.synth=Boolean(f.synth);return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.defaults)T.chain="",T.symbol="",T.ticker="",T.synth=!1;if(f.chain!=null&&f.hasOwnProperty("chain"))T.chain=f.chain;if(f.symbol!=null&&f.hasOwnProperty("symbol"))T.symbol=f.symbol;if(f.ticker!=null&&f.hasOwnProperty("ticker"))T.ticker=f.ticker;if(f.synth!=null&&f.hasOwnProperty("synth"))T.synth=f.synth;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,E.default.util.toJSONOptions)},H})(),_.Coin=(()=>{function H(B){if(B){for(let f=Object.keys(B),x=0;x<f.length;++x)if(B[f[x]]!=null)this[f[x]]=B[f[x]]}}return H.prototype.asset=null,H.prototype.amount="",H.prototype.decimals=z.Long?z.Long.fromBits(0,0,!1):0,H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=V.create();if(f.asset!=null&&Object.hasOwnProperty.call(f,"asset"))W.common.Asset.encode(f.asset,x.uint32(10).fork()).ldelim();if(f.amount!=null&&Object.hasOwnProperty.call(f,"amount"))x.uint32(18).string(f.amount);if(f.decimals!=null&&Object.hasOwnProperty.call(f,"decimals"))x.uint32(24).int64(f.decimals);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,v=new W.common.Coin;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:v.asset=W.common.Asset.decode(f,f.uint32());break;case 2:v.amount=f.string();break;case 3:v.decimals=f.int64();break;default:f.skipType(L&7);break}}return v},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.asset!=null&&f.hasOwnProperty("asset")){let x=W.common.Asset.verify(f.asset);if(x)return"asset."+x}if(f.amount!=null&&f.hasOwnProperty("amount")){if(!z.isString(f.amount))return"amount: string expected"}if(f.decimals!=null&&f.hasOwnProperty("decimals")){if(!z.isInteger(f.decimals)&&!(f.decimals&&z.isInteger(f.decimals.low)&&z.isInteger(f.decimals.high)))return"decimals: integer|Long expected"}return null},H.fromObject=function(f){if(f instanceof W.common.Coin)return f;let x=new W.common.Coin;if(f.asset!=null){if(typeof f.asset!=="object")throw TypeError(".common.Coin.asset: object expected");x.asset=W.common.Asset.fromObject(f.asset)}if(f.amount!=null)x.amount=String(f.amount);if(f.decimals!=null){if(z.Long)(x.decimals=z.Long.fromValue(f.decimals)).unsigned=!1;else if(typeof f.decimals==="string")x.decimals=Number.parseInt(f.decimals,10);else if(typeof f.decimals==="number")x.decimals=f.decimals;else if(typeof f.decimals==="object")x.decimals=new z.LongBits(f.decimals.low>>>0,f.decimals.high>>>0).toNumber()}return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.defaults)if(T.asset=null,T.amount="",z.Long){let v=new z.Long(0,0,!1);T.decimals=x.longs===String?v.toString():x.longs===Number?v.toNumber():v}else T.decimals=x.longs===String?"0":0;if(f.asset!=null&&f.hasOwnProperty("asset"))T.asset=W.common.Asset.toObject(f.asset,x);if(f.amount!=null&&f.hasOwnProperty("amount"))T.amount=f.amount;if(f.decimals!=null&&f.hasOwnProperty("decimals"))if(typeof f.decimals==="number")T.decimals=x.longs===String?String(f.decimals):f.decimals;else T.decimals=x.longs===String?z.Long.prototype.toString.call(f.decimals):x.longs===Number?new z.LongBits(f.decimals.low>>>0,f.decimals.high>>>0).toNumber():f.decimals;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,E.default.util.toJSONOptions)},H})(),_.PubKeySet=(()=>{function H(B){if(B){for(let f=Object.keys(B),x=0;x<f.length;++x)if(B[f[x]]!=null)this[f[x]]=B[f[x]]}}return H.prototype.secp256k1="",H.prototype.ed25519="",H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=V.create();if(f.secp256k1!=null&&Object.hasOwnProperty.call(f,"secp256k1"))x.uint32(10).string(f.secp256k1);if(f.ed25519!=null&&Object.hasOwnProperty.call(f,"ed25519"))x.uint32(18).string(f.ed25519);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,v=new W.common.PubKeySet;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:v.secp256k1=f.string();break;case 2:v.ed25519=f.string();break;default:f.skipType(L&7);break}}return v},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.secp256k1!=null&&f.hasOwnProperty("secp256k1")){if(!z.isString(f.secp256k1))return"secp256k1: string expected"}if(f.ed25519!=null&&f.hasOwnProperty("ed25519")){if(!z.isString(f.ed25519))return"ed25519: string expected"}return null},H.fromObject=function(f){if(f instanceof W.common.PubKeySet)return f;let x=new W.common.PubKeySet;if(f.secp256k1!=null)x.secp256k1=String(f.secp256k1);if(f.ed25519!=null)x.ed25519=String(f.ed25519);return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.defaults)T.secp256k1="",T.ed25519="";if(f.secp256k1!=null&&f.hasOwnProperty("secp256k1"))T.secp256k1=f.secp256k1;if(f.ed25519!=null&&f.hasOwnProperty("ed25519"))T.ed25519=f.ed25519;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,E.default.util.toJSONOptions)},H})(),_.Tx=(()=>{function H(B){if(this.coins=[],this.gas=[],B){for(let f=Object.keys(B),x=0;x<f.length;++x)if(B[f[x]]!=null)this[f[x]]=B[f[x]]}}return H.prototype.id="",H.prototype.chain="",H.prototype.fromAddress="",H.prototype.toAddress="",H.prototype.coins=z.emptyArray,H.prototype.gas=z.emptyArray,H.prototype.memo="",H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=V.create();if(f.id!=null&&Object.hasOwnProperty.call(f,"id"))x.uint32(10).string(f.id);if(f.chain!=null&&Object.hasOwnProperty.call(f,"chain"))x.uint32(18).string(f.chain);if(f.fromAddress!=null&&Object.hasOwnProperty.call(f,"fromAddress"))x.uint32(26).string(f.fromAddress);if(f.toAddress!=null&&Object.hasOwnProperty.call(f,"toAddress"))x.uint32(34).string(f.toAddress);if(f.coins?.length)for(let T=0;T<f.coins.length;++T)W.common.Coin.encode(f.coins[T],x.uint32(42).fork()).ldelim();if(f.gas?.length)for(let T=0;T<f.gas.length;++T)W.common.Coin.encode(f.gas[T],x.uint32(50).fork()).ldelim();if(f.memo!=null&&Object.hasOwnProperty.call(f,"memo"))x.uint32(58).string(f.memo);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,v=new W.common.Tx;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:v.id=f.string();break;case 2:v.chain=f.string();break;case 3:v.fromAddress=f.string();break;case 4:v.toAddress=f.string();break;case 5:if(!v.coins?.length)v.coins=[];v.coins.push(W.common.Coin.decode(f,f.uint32()));break;case 6:if(!v.gas?.length)v.gas=[];v.gas.push(W.common.Coin.decode(f,f.uint32()));break;case 7:v.memo=f.string();break;default:f.skipType(L&7);break}}return v},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.id!=null&&f.hasOwnProperty("id")){if(!z.isString(f.id))return"id: string expected"}if(f.chain!=null&&f.hasOwnProperty("chain")){if(!z.isString(f.chain))return"chain: string expected"}if(f.fromAddress!=null&&f.hasOwnProperty("fromAddress")){if(!z.isString(f.fromAddress))return"fromAddress: string expected"}if(f.toAddress!=null&&f.hasOwnProperty("toAddress")){if(!z.isString(f.toAddress))return"toAddress: string expected"}if(f.coins!=null&&f.hasOwnProperty("coins")){if(!Array.isArray(f.coins))return"coins: array expected";for(let x=0;x<f.coins.length;++x){let T=W.common.Coin.verify(f.coins[x]);if(T)return"coins."+T}}if(f.gas!=null&&f.hasOwnProperty("gas")){if(!Array.isArray(f.gas))return"gas: array expected";for(let x=0;x<f.gas.length;++x){let T=W.common.Coin.verify(f.gas[x]);if(T)return"gas."+T}}if(f.memo!=null&&f.hasOwnProperty("memo")){if(!z.isString(f.memo))return"memo: string expected"}return null},H.fromObject=function(f){if(f instanceof W.common.Tx)return f;let x=new W.common.Tx;if(f.id!=null)x.id=String(f.id);if(f.chain!=null)x.chain=String(f.chain);if(f.fromAddress!=null)x.fromAddress=String(f.fromAddress);if(f.toAddress!=null)x.toAddress=String(f.toAddress);if(f.coins){if(!Array.isArray(f.coins))throw TypeError(".common.Tx.coins: array expected");x.coins=[];for(let T=0;T<f.coins.length;++T){if(typeof f.coins[T]!=="object")throw TypeError(".common.Tx.coins: object expected");x.coins[T]=W.common.Coin.fromObject(f.coins[T])}}if(f.gas){if(!Array.isArray(f.gas))throw TypeError(".common.Tx.gas: array expected");x.gas=[];for(let T=0;T<f.gas.length;++T){if(typeof f.gas[T]!=="object")throw TypeError(".common.Tx.gas: object expected");x.gas[T]=W.common.Coin.fromObject(f.gas[T])}}if(f.memo!=null)x.memo=String(f.memo);return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.arrays||x.defaults)T.coins=[],T.gas=[];if(x.defaults)T.id="",T.chain="",T.fromAddress="",T.toAddress="",T.memo="";if(f.id!=null&&f.hasOwnProperty("id"))T.id=f.id;if(f.chain!=null&&f.hasOwnProperty("chain"))T.chain=f.chain;if(f.fromAddress!=null&&f.hasOwnProperty("fromAddress"))T.fromAddress=f.fromAddress;if(f.toAddress!=null&&f.hasOwnProperty("toAddress"))T.toAddress=f.toAddress;if(f.coins?.length){T.coins=[];for(let v=0;v<f.coins.length;++v)T.coins[v]=W.common.Coin.toObject(f.coins[v],x)}if(f.gas?.length){T.gas=[];for(let v=0;v<f.gas.length;++v)T.gas[v]=W.common.Coin.toObject(f.gas[v],x)}if(f.memo!=null&&f.hasOwnProperty("memo"))T.memo=f.memo;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,E.default.util.toJSONOptions)},H})(),_.Fee=(()=>{function H(B){if(this.coins=[],B){for(let f=Object.keys(B),x=0;x<f.length;++x)if(B[f[x]]!=null)this[f[x]]=B[f[x]]}}return H.prototype.coins=z.emptyArray,H.prototype.poolDeduct="",H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=V.create();if(f.coins?.length)for(let T=0;T<f.coins.length;++T)W.common.Coin.encode(f.coins[T],x.uint32(10).fork()).ldelim();if(f.poolDeduct!=null&&Object.hasOwnProperty.call(f,"poolDeduct"))x.uint32(18).string(f.poolDeduct);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,v=new W.common.Fee;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:if(!v.coins?.length)v.coins=[];v.coins.push(W.common.Coin.decode(f,f.uint32()));break;case 2:v.poolDeduct=f.string();break;default:f.skipType(L&7);break}}return v},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.coins!=null&&f.hasOwnProperty("coins")){if(!Array.isArray(f.coins))return"coins: array expected";for(let x=0;x<f.coins.length;++x){let T=W.common.Coin.verify(f.coins[x]);if(T)return"coins."+T}}if(f.poolDeduct!=null&&f.hasOwnProperty("poolDeduct")){if(!z.isString(f.poolDeduct))return"poolDeduct: string expected"}return null},H.fromObject=function(f){if(f instanceof W.common.Fee)return f;let x=new W.common.Fee;if(f.coins){if(!Array.isArray(f.coins))throw TypeError(".common.Fee.coins: array expected");x.coins=[];for(let T=0;T<f.coins.length;++T){if(typeof f.coins[T]!=="object")throw TypeError(".common.Fee.coins: object expected");x.coins[T]=W.common.Coin.fromObject(f.coins[T])}}if(f.poolDeduct!=null)x.poolDeduct=String(f.poolDeduct);return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.arrays||x.defaults)T.coins=[];if(x.defaults)T.poolDeduct="";if(f.coins?.length){T.coins=[];for(let v=0;v<f.coins.length;++v)T.coins[v]=W.common.Coin.toObject(f.coins[v],x)}if(f.poolDeduct!=null&&f.hasOwnProperty("poolDeduct"))T.poolDeduct=f.poolDeduct;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,E.default.util.toJSONOptions)},H})(),_.ProtoUint=(()=>{function H(B){if(B){for(let f=Object.keys(B),x=0;x<f.length;++x)if(B[f[x]]!=null)this[f[x]]=B[f[x]]}}return H.prototype.value="",H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=V.create();if(f.value!=null&&Object.hasOwnProperty.call(f,"value"))x.uint32(10).string(f.value);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,v=new W.common.ProtoUint;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:v.value=f.string();break;default:f.skipType(L&7);break}}return v},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.value!=null&&f.hasOwnProperty("value")){if(!z.isString(f.value))return"value: string expected"}return null},H.fromObject=function(f){if(f instanceof W.common.ProtoUint)return f;let x=new W.common.ProtoUint;if(f.value!=null)x.value=String(f.value);return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.defaults)T.value="";if(f.value!=null&&f.hasOwnProperty("value"))T.value=f.value;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,E.default.util.toJSONOptions)},H})(),_})();W.types=(()=>{let _={};return _.MsgDeposit=(()=>{function H(B){if(this.coins=[],B){for(let f=Object.keys(B),x=0;x<f.length;++x)if(B[f[x]]!=null)this[f[x]]=B[f[x]]}}return H.prototype.coins=z.emptyArray,H.prototype.memo="",H.prototype.signer=z.newBuffer([]),H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=V.create();if(f.coins?.length)for(let T=0;T<f.coins.length;++T)W.common.Coin.encode(f.coins[T],x.uint32(10).fork()).ldelim();if(f.memo!=null&&Object.hasOwnProperty.call(f,"memo"))x.uint32(18).string(f.memo);if(f.signer!=null&&Object.hasOwnProperty.call(f,"signer"))x.uint32(26).bytes(f.signer);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,v=new W.types.MsgDeposit;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:if(!v.coins?.length)v.coins=[];v.coins.push(W.common.Coin.decode(f,f.uint32()));break;case 2:v.memo=f.string();break;case 3:v.signer=f.bytes();break;default:f.skipType(L&7);break}}return v},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.coins!=null&&f.hasOwnProperty("coins")){if(!Array.isArray(f.coins))return"coins: array expected";for(let x=0;x<f.coins.length;++x){let T=W.common.Coin.verify(f.coins[x]);if(T)return"coins."+T}}if(f.memo!=null&&f.hasOwnProperty("memo")){if(!z.isString(f.memo))return"memo: string expected"}if(f.signer!=null&&f.hasOwnProperty("signer")){if(!(f.signer&&typeof f.signer.length==="number"||z.isString(f.signer)))return"signer: buffer expected"}return null},H.fromObject=function(f){if(f instanceof W.types.MsgDeposit)return f;let x=new W.types.MsgDeposit;if(f.coins){if(!Array.isArray(f.coins))throw TypeError(".types.MsgDeposit.coins: array expected");x.coins=[];for(let T=0;T<f.coins.length;++T){if(typeof f.coins[T]!=="object")throw TypeError(".types.MsgDeposit.coins: object expected");x.coins[T]=W.common.Coin.fromObject(f.coins[T])}}if(f.memo!=null)x.memo=String(f.memo);if(f.signer!=null){if(typeof f.signer==="string")z.base64.decode(f.signer,x.signer=z.newBuffer(z.base64.length(f.signer)),0);else if(f.signer.length)x.signer=f.signer}return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.arrays||x.defaults)T.coins=[];if(x.defaults){if(T.memo="",x.bytes===String)T.signer="";else if(T.signer=[],x.bytes!==Array)T.signer=z.newBuffer(T.signer)}if(f.coins?.length){T.coins=[];for(let v=0;v<f.coins.length;++v)T.coins[v]=W.common.Coin.toObject(f.coins[v],x)}if(f.memo!=null&&f.hasOwnProperty("memo"))T.memo=f.memo;if(f.signer!=null&&f.hasOwnProperty("signer"))T.signer=x.bytes===String?z.base64.encode(f.signer,0,f.signer.length):x.bytes===Array?Array.prototype.slice.call(f.signer):f.signer;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,E.default.util.toJSONOptions)},H})(),_.MsgSend=(()=>{function H(B){if(this.amount=[],B){for(let f=Object.keys(B),x=0;x<f.length;++x)if(B[f[x]]!=null)this[f[x]]=B[f[x]]}}return H.prototype.fromAddress=z.newBuffer([]),H.prototype.toAddress=z.newBuffer([]),H.prototype.amount=z.emptyArray,H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=V.create();if(f.fromAddress!=null&&Object.hasOwnProperty.call(f,"fromAddress"))x.uint32(10).bytes(f.fromAddress);if(f.toAddress!=null&&Object.hasOwnProperty.call(f,"toAddress"))x.uint32(18).bytes(f.toAddress);if(f.amount?.length)for(let T=0;T<f.amount.length;++T)W.cosmos.base.v1beta1.Coin.encode(f.amount[T],x.uint32(26).fork()).ldelim();return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,v=new W.types.MsgSend;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:v.fromAddress=f.bytes();break;case 2:v.toAddress=f.bytes();break;case 3:if(!v.amount?.length)v.amount=[];v.amount.push(W.cosmos.base.v1beta1.Coin.decode(f,f.uint32()));break;default:f.skipType(L&7);break}}return v},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.fromAddress!=null&&f.hasOwnProperty("fromAddress")){if(!(f.fromAddress&&typeof f.fromAddress.length==="number"||z.isString(f.fromAddress)))return"fromAddress: buffer expected"}if(f.toAddress!=null&&f.hasOwnProperty("toAddress")){if(!(f.toAddress&&typeof f.toAddress.length==="number"||z.isString(f.toAddress)))return"toAddress: buffer expected"}if(f.amount!=null&&f.hasOwnProperty("amount")){if(!Array.isArray(f.amount))return"amount: array expected";for(let x=0;x<f.amount.length;++x){let T=W.cosmos.base.v1beta1.Coin.verify(f.amount[x]);if(T)return"amount."+T}}return null},H.fromObject=function(f){if(f instanceof W.types.MsgSend)return f;let x=new W.types.MsgSend;if(f.fromAddress!=null){if(typeof f.fromAddress==="string")z.base64.decode(f.fromAddress,x.fromAddress=z.newBuffer(z.base64.length(f.fromAddress)),0);else if(f.fromAddress.length)x.fromAddress=f.fromAddress}if(f.toAddress!=null){if(typeof f.toAddress==="string")z.base64.decode(f.toAddress,x.toAddress=z.newBuffer(z.base64.length(f.toAddress)),0);else if(f.toAddress.length)x.toAddress=f.toAddress}if(f.amount){if(!Array.isArray(f.amount))throw TypeError(".types.MsgSend.amount: array expected");x.amount=[];for(let T=0;T<f.amount.length;++T){if(typeof f.amount[T]!=="object")throw TypeError(".types.MsgSend.amount: object expected");x.amount[T]=W.cosmos.base.v1beta1.Coin.fromObject(f.amount[T])}}return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.arrays||x.defaults)T.amount=[];if(x.defaults){if(x.bytes===String)T.fromAddress="";else if(T.fromAddress=[],x.bytes!==Array)T.fromAddress=z.newBuffer(T.fromAddress);if(x.bytes===String)T.toAddress="";else if(T.toAddress=[],x.bytes!==Array)T.toAddress=z.newBuffer(T.toAddress)}if(f.fromAddress!=null&&f.hasOwnProperty("fromAddress"))T.fromAddress=x.bytes===String?z.base64.encode(f.fromAddress,0,f.fromAddress.length):x.bytes===Array?Array.prototype.slice.call(f.fromAddress):f.fromAddress;if(f.toAddress!=null&&f.hasOwnProperty("toAddress"))T.toAddress=x.bytes===String?z.base64.encode(f.toAddress,0,f.toAddress.length):x.bytes===Array?Array.prototype.slice.call(f.toAddress):f.toAddress;if(f.amount?.length){T.amount=[];for(let v=0;v<f.amount.length;++v)T.amount[v]=W.cosmos.base.v1beta1.Coin.toObject(f.amount[v],x)}return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,E.default.util.toJSONOptions)},H})(),_})();W.cosmos=(()=>{let _={};return _.base=(()=>{let H={};return H.v1beta1=(()=>{let B={};return B.Coin=(()=>{function f(x){if(x){for(let T=Object.keys(x),v=0;v<T.length;++v)if(x[T[v]]!=null)this[T[v]]=x[T[v]]}}return f.prototype.denom="",f.prototype.amount="",f.create=function(T){return new f(T)},f.encode=function(T,v){if(!v)v=V.create();if(T.denom!=null&&Object.hasOwnProperty.call(T,"denom"))v.uint32(10).string(T.denom);if(T.amount!=null&&Object.hasOwnProperty.call(T,"amount"))v.uint32(18).string(T.amount);return v},f.encodeDelimited=function(T,v){return this.encode(T,v).ldelim()},f.decode=function(T,v){if(!(T instanceof Z))T=Z.create(T);let L=v===void 0?T.len:T.pos+v,X=new W.cosmos.base.v1beta1.Coin;while(T.pos<L){let J=T.uint32();switch(J>>>3){case 1:X.denom=T.string();break;case 2:X.amount=T.string();break;default:T.skipType(J&7);break}}return X},f.decodeDelimited=function(T){if(!(T instanceof Z))T=new Z(T);return this.decode(T,T.uint32())},f.verify=function(T){if(typeof T!=="object"||T===null)return"object expected";if(T.denom!=null&&T.hasOwnProperty("denom")){if(!z.isString(T.denom))return"denom: string expected"}if(T.amount!=null&&T.hasOwnProperty("amount")){if(!z.isString(T.amount))return"amount: string expected"}return null},f.fromObject=function(T){if(T instanceof W.cosmos.base.v1beta1.Coin)return T;let v=new W.cosmos.base.v1beta1.Coin;if(T.denom!=null)v.denom=String(T.denom);if(T.amount!=null)v.amount=String(T.amount);return v},f.toObject=function(T,v){if(!v)v={};let L={};if(v.defaults)L.denom="",L.amount="";if(T.denom!=null&&T.hasOwnProperty("denom"))L.denom=T.denom;if(T.amount!=null&&T.hasOwnProperty("amount"))L.amount=T.amount;return L},f.prototype.toJSON=function(){return this.constructor.toObject(this,E.default.util.toJSONOptions)},f})(),B.DecCoin=(()=>{function f(x){if(x){for(let T=Object.keys(x),v=0;v<T.length;++v)if(x[T[v]]!=null)this[T[v]]=x[T[v]]}}return f.prototype.denom="",f.prototype.amount="",f.create=function(T){return new f(T)},f.encode=function(T,v){if(!v)v=V.create();if(T.denom!=null&&Object.hasOwnProperty.call(T,"denom"))v.uint32(10).string(T.denom);if(T.amount!=null&&Object.hasOwnProperty.call(T,"amount"))v.uint32(18).string(T.amount);return v},f.encodeDelimited=function(T,v){return this.encode(T,v).ldelim()},f.decode=function(T,v){if(!(T instanceof Z))T=Z.create(T);let L=v===void 0?T.len:T.pos+v,X=new W.cosmos.base.v1beta1.DecCoin;while(T.pos<L){let J=T.uint32();switch(J>>>3){case 1:X.denom=T.string();break;case 2:X.amount=T.string();break;default:T.skipType(J&7);break}}return X},f.decodeDelimited=function(T){if(!(T instanceof Z))T=new Z(T);return this.decode(T,T.uint32())},f.verify=function(T){if(typeof T!=="object"||T===null)return"object expected";if(T.denom!=null&&T.hasOwnProperty("denom")){if(!z.isString(T.denom))return"denom: string expected"}if(T.amount!=null&&T.hasOwnProperty("amount")){if(!z.isString(T.amount))return"amount: string expected"}return null},f.fromObject=function(T){if(T instanceof W.cosmos.base.v1beta1.DecCoin)return T;let v=new W.cosmos.base.v1beta1.DecCoin;if(T.denom!=null)v.denom=String(T.denom);if(T.amount!=null)v.amount=String(T.amount);return v},f.toObject=function(T,v){if(!v)v={};let L={};if(v.defaults)L.denom="",L.amount="";if(T.denom!=null&&T.hasOwnProperty("denom"))L.denom=T.denom;if(T.amount!=null&&T.hasOwnProperty("amount"))L.amount=T.amount;return L},f.prototype.toJSON=function(){return this.constructor.toObject(this,E.default.util.toJSONOptions)},f})(),B.IntProto=(()=>{function f(x){if(x){for(let T=Object.keys(x),v=0;v<T.length;++v)if(x[T[v]]!=null)this[T[v]]=x[T[v]]}}return f.prototype.int="",f.create=function(T){return new f(T)},f.encode=function(T,v){if(!v)v=V.create();if(T.int!=null&&Object.hasOwnProperty.call(T,"int"))v.uint32(10).string(T.int);return v},f.encodeDelimited=function(T,v){return this.encode(T,v).ldelim()},f.decode=function(T,v){if(!(T instanceof Z))T=Z.create(T);let L=v===void 0?T.len:T.pos+v,X=new W.cosmos.base.v1beta1.IntProto;while(T.pos<L){let J=T.uint32();switch(J>>>3){case 1:X.int=T.string();break;default:T.skipType(J&7);break}}return X},f.decodeDelimited=function(T){if(!(T instanceof Z))T=new Z(T);return this.decode(T,T.uint32())},f.verify=function(T){if(typeof T!=="object"||T===null)return"object expected";if(T.int!=null&&T.hasOwnProperty("int")){if(!z.isString(T.int))return"int: string expected"}return null},f.fromObject=function(T){if(T instanceof W.cosmos.base.v1beta1.IntProto)return T;let v=new W.cosmos.base.v1beta1.IntProto;if(T.int!=null)v.int=String(T.int);return v},f.toObject=function(T,v){if(!v)v={};let L={};if(v.defaults)L.int="";if(T.int!=null&&T.hasOwnProperty("int"))L.int=T.int;return L},f.prototype.toJSON=function(){return this.constructor.toObject(this,E.default.util.toJSONOptions)},f})(),B.DecProto=(()=>{function f(x){if(x){for(let T=Object.keys(x),v=0;v<T.length;++v)if(x[T[v]]!=null)this[T[v]]=x[T[v]]}}return f.prototype.dec="",f.create=function(T){return new f(T)},f.encode=function(T,v){if(!v)v=V.create();if(T.dec!=null&&Object.hasOwnProperty.call(T,"dec"))v.uint32(10).string(T.dec);return v},f.encodeDelimited=function(T,v){return this.encode(T,v).ldelim()},f.decode=function(T,v){if(!(T instanceof Z))T=Z.create(T);let L=v===void 0?T.len:T.pos+v,X=new W.cosmos.base.v1beta1.DecProto;while(T.pos<L){let J=T.uint32();switch(J>>>3){case 1:X.dec=T.string();break;default:T.skipType(J&7);break}}return X},f.decodeDelimited=function(T){if(!(T instanceof Z))T=new Z(T);return this.decode(T,T.uint32())},f.verify=function(T){if(typeof T!=="object"||T===null)return"object expected";if(T.dec!=null&&T.hasOwnProperty("dec")){if(!z.isString(T.dec))return"dec: string expected"}return null},f.fromObject=function(T){if(T instanceof W.cosmos.base.v1beta1.DecProto)return T;let v=new W.cosmos.base.v1beta1.DecProto;if(T.dec!=null)v.dec=String(T.dec);return v},f.toObject=function(T,v){if(!v)v={};let L={};if(v.defaults)L.dec="";if(T.dec!=null&&T.hasOwnProperty("dec"))L.dec=T.dec;return L},f.prototype.toJSON=function(){return this.constructor.toObject(this,E.default.util.toJSONOptions)},f})(),B})(),H})(),_})()});async function o(){let{$root:_}=await Promise.resolve().then(() => (uf(),Pf)),H=await import("@cosmjs/proto-signing"),B=await import("@cosmjs/stargate"),f=H.Registry??H.default?.Registry,x=B.defaultRegistryTypes??B.default?.defaultRegistryTypes;return new f([...x,["/types.MsgSend",_.types.MsgSend],["/types.MsgDeposit",_.types.MsgDeposit]])}async function $(_){let H=await import("@cosmjs/stargate"),B=H.AminoTypes??H.default?.AminoTypes,f=_===Mf.Chain.THORChain?"thorchain":"mayachain";return new B({"/types.MsgDeposit":{aminoType:`${f}/MsgDeposit`,fromAmino:({signer:x,...T})=>({...T,signer:a(x)}),toAmino:({signer:x,...T})=>({...T,signer:r(x)})},"/types.MsgSend":{aminoType:`${f}/MsgSend`,fromAmino:({from_address:x,to_address:T,...v})=>({...v,fromAddress:a(x),toAddress:a(T)}),toAmino:({fromAddress:x,toAddress:T,...v})=>({...v,from_address:r(x),to_address:r(T)})}})}var Mf;var Zf=R(()=>{Lf();Mf=require("@swapkit/helpers")});function Xf(_){let{assetValue:H,recipient:B,memo:f,sender:x,asSignable:T,asAminoMessage:v}=_;if(B)return hf({asAminoMessage:v,asSignable:T,assetValue:H,memo:f,recipient:B,sender:x});return lf({asAminoMessage:v,asSignable:T,assetValue:H,memo:f,sender:x})}async function hf({sender:_,recipient:H,assetValue:B,memo:f="",asSignable:x=!0,asAminoMessage:T=!1,sequence:v,accountNumber:L}){let X=B.chain,J=await C.getRPCUrl(X),A=await wf({rpcUrl:J,sender:_}),{chainId:O}=C.getChainConfig(X),k=If({assetValue:B,recipient:H,sender:_}),Q=x?await n(T?k:p(k),X):k;return{accountNumber:L||Number(A.accountNumber),chainId:O,fee:M(X),memo:f,msgs:[Q],sequence:v||A.sequence}}async function lf({sender:_,assetValue:H,memo:B="",asSignable:f=!0,asAminoMessage:x=!1,sequence:T,accountNumber:v}){let L=H.chain,X=await C.getRPCUrl(L),J=await wf({rpcUrl:X,sender:_}),{chainId:A}=C.getChainConfig(L),O=Qf({assetValue:H,memo:B,sender:_}),k=f?await n(x?O:p(O),L):O;return{accountNumber:v||Number(J.accountNumber),chainId:A,fee:M(L),memo:B,msgs:[k],sequence:T||J.sequence}}function p(_){if(_.type==="thorchain/MsgSend"||_.type==="mayachain/MsgSend")return _;return{..._,value:{..._.value,coins:_.value.coins.map((H)=>{let B=C.AssetValue.from({asset:H.asset}),f=(B.isSynthetic?B.symbol.split("/")?.[1]:B.symbol)?.toUpperCase(),x=(B.isSynthetic?B.symbol.split("/")?.[0]:B.chain)?.toUpperCase();return{...H,asset:{chain:x,symbol:f,synth:B.isSynthetic,ticker:B.ticker}}})}}}async function ff({chain:_,memo:H,msgs:B}){let f=await o(),x=await $(_),T={typeUrl:"/cosmos.tx.v1beta1.TxBody",value:{memo:H,messages:B.map((v)=>x.fromAmino(v))}};return f.encode(T)}var C,I0,Q0,If=({sender:_,recipient:H,assetValue:B})=>{return{type:`${B.chain===C.Chain.Maya?"mayachain":"thorchain"}/MsgSend`,value:{amount:[{amount:B.getBaseValue("string"),denom:l(B.symbol,!0)}],from_address:_,to_address:H}}},Qf=({sender:_,assetValue:H,memo:B=""})=>{return{type:`${H.chain===C.Chain.Maya?"mayachain":"thorchain"}/MsgDeposit`,value:{coins:[{amount:H.getBaseValue("string"),asset:s(H)}],memo:B,signer:_}}},Hf=({sender:_,recipient:H,assetValue:B,memo:f})=>{return!H?Qf({assetValue:B,memo:f,sender:_}):If({assetValue:B,recipient:H,sender:_})},n=async(_,H)=>{return(await $(H)).fromAmino(_)},wf=async({rpcUrl:_,sender:H})=>{let f=await(await w(_)).getAccount(H);if(!f)throw new C.SwapKitError("toolbox_cosmos_account_not_found",{sender:H});return f};var $f=R(()=>{e();Zf();C=require("@swapkit/helpers"),I0=M(C.Chain.THORChain).gas,Q0=M(C.Chain.Maya).gas});var nf=()=>{};var pf=R(()=>{nf()});var Yf=R(()=>{Lf();$f();Zf();pf()});async function Nf(_,H){try{let f=(await Jf.SwapKitApi.getGasRate()).find((x)=>x.chainId===_)?.value;return f?Number.parseFloat(f):H}catch{return H}}async function qf({phrase:_,prefix:H,...B}){let f=await import("@cosmjs/proto-signing"),x=await import("@cosmjs/crypto"),T=f.DirectSecp256k1HdWallet??f.default?.DirectSecp256k1HdWallet,v=x.stringToPath??x.default?.stringToPath,L="derivationPath"in B?B.derivationPath:`${y.DerivationPath[B.chain]}/${B.index}`;return await T.fromMnemonic(_,{hdPaths:[v(L)],prefix:H})}async function X0({privateKey:_,prefix:H}){let B=await import("@cosmjs/proto-signing");return(B.DirectSecp256k1Wallet??B.default?.DirectSecp256k1Wallet).fromKey(_,H)}function df(_){return async function({signature:B,message:f,address:x}){let T=await _(x);if(!T?.pubkey)throw new y.SwapKitError("toolbox_cosmos_verify_signature_no_pubkey");let v=await import("@cosmjs/crypto"),L=v.Secp256k1Signature??v.default?.Secp256k1Signature,X=v.Secp256k1??v.default?.Secp256k1,J=L.fromFixedLength(c.base64.decode(B));return X.verifySignature(J,c.base64.decode(f),T.pubkey.value)}}function xf({chain:_,...H}){let B=y.CosmosChainPrefixes[_],f="index"in H?H.index||0:0,x=y.derivationPathToString("derivationPath"in H&&H.derivationPath?H.derivationPath:y.updateDerivationPath(y.NetworkDerivationPath[_],{index:f})),T;async function v(){if(T)return T;return T=await Tf.match(H).with({phrase:Tf.P.string},({phrase:Q})=>qf({derivationPath:x,phrase:Q,prefix:B})).with({signer:Tf.P.any},({signer:Q})=>Q).otherwise(()=>{return}),T}async function L(Q){let q=await y.getRPCUrl(_);return(await w(q)).getAccount(Q)}async function X(){let Q=await v(),[q]=await Q?.getAccounts()||[];return q?.address}async function J(){let Q=await v(),[q]=await Q?.getAccounts()||[];if(!q?.pubkey)throw new y.SwapKitError("toolbox_cosmos_signer_not_defined");return c.base64.encode(q?.pubkey)}async function A(Q){let q=await v(),F=await X(),S=await y.getRPCUrl(_);if(!(q&&F))throw new y.SwapKitError("toolbox_cosmos_signer_not_defined");return await(await i(S,q)).sign(F,Q.msgs,Q.fee,Q.memo,{accountNumber:BigInt(Q.accountNumber),chainId:Q.chainId,sequence:Q.sequence})}async function O(Q){let q=await v(),F=await X(),S=await y.getRPCUrl(_);if(!(q&&F))throw new y.SwapKitError("toolbox_cosmos_signer_not_defined");let I=await(await i(S,q)).signAndBroadcast(F,Q.msgs,Q.fee,Q.memo);if(I.code!==0)throw new y.SwapKitError("core_swap_transaction_error",{code:I.code,message:I.rawLog});return I.transactionHash}async function k({recipient:Q,assetValue:q,memo:F="",feeRate:S,feeOptionKey:K=y.FeeOption.Fast}){let I=await v(),N=await X();if(!(I&&N))throw new y.SwapKitError("toolbox_cosmos_signer_not_defined");let U=await y.getRPCUrl(_),D=y.AssetValue.from({chain:_}),h=s(D),d=S||J0((await jf(_,cf[_]))[K],h),P=await i(U,I),Bf=l(q.symbol),m=[{amount:q.getBaseValue("string"),denom:Bf}],{transactionHash:_f}=await P.sendTokens(N,Q,m,d,F);return _f}return{createPrivateKeyFromPhrase:O0(x),createTransaction:zf,fetchFeeRateFromSwapKit:Nf,getAccount:L,getAddress:X,getBalance:async(Q,q)=>{let F=await bf(_)(Q),S=await Promise.all(F.filter(({denom:K})=>K&&!K.includes("IBC/")&&!([y.Chain.THORChain,y.Chain.Maya].includes(_)&&K.split("-").length>2)).map(({denom:K,amount:I})=>{let N=[y.Chain.THORChain,y.Chain.Maya].includes(_)&&(K.includes("/")||K.includes("˜"))?`${_}.${K}`:K;return Gf(N,I)}));if(S.length===0)return[y.AssetValue.from({chain:_})];return S},getBalanceAsDenoms:bf(_),getFees:()=>jf(_,cf[_]),getPubKey:J,getSignerFromPhrase:({phrase:Q,derivationPath:q})=>qf({derivationPath:y.derivationPathToString(q),index:f,phrase:Q,prefix:B}),getSignerFromPrivateKey:async(Q)=>{let q=await import("@cosmjs/proto-signing");return(q.DirectSecp256k1Wallet??q.default?.DirectSecp256k1Wallet).fromKey(Q,B)},signAndBroadcastTransaction:O,signTransaction:A,transfer:k,validateAddress:of(_),verifySignature:df(L)}}async function Y0(_,H){try{let f=(await Jf.SwapKitApi.getGasRate()).find((x)=>x.chainId===_)?.value;return f?Number.parseFloat(f):H}catch{return H}}function q0({assetValue:{chain:_}}){return y.AssetValue.from({chain:_,value:N0(_)})}async function jf(_,H){let{chainId:B,baseDecimal:f}=y.getChainConfig(_),x=await Nf(B,H);return{average:y.SwapKitNumber.fromBigInt(BigInt(x),f),fast:y.SwapKitNumber.fromBigInt(BigInt(y.applyFeeMultiplier(x,y.FeeOption.Fast,!0)),f),fastest:y.SwapKitNumber.fromBigInt(BigInt(y.applyFeeMultiplier(x,y.FeeOption.Fastest,!0)),f)}}function J0(_,H){return{amount:[{amount:_.getBaseValue("string"),denom:H}],gas:"200000"}}function N0(_){return{[y.Chain.Cosmos]:0.007,[y.Chain.Kujira]:0.02,[y.Chain.Noble]:0.01,[y.Chain.THORChain]:0.02,[y.Chain.Maya]:0.02,[y.Chain.Harbor]:0.02}[_]||0}function of(_){let H=y.CosmosChainPrefixes[_];return function(f){if(!f.startsWith(H))return!1;try{let{prefix:x,words:T}=c.bech32.decode(f);return c.bech32.encode(x,T)===f.toLocaleLowerCase()}catch{return!1}}}function bf(_){return async function(B){let f=await y.getRPCUrl(_);return(await(await w(f)).getAllBalances(B)).map((L)=>({...L,denom:L.denom.includes("/")?L.denom.toUpperCase():L.denom}))}}function O0(_){return async function(B){let f=await import("@cosmjs/crypto"),x=f.stringToPath??f.default?.stringToPath,T=f.Slip10Curve??f.default?.Slip10Curve,v=f.Slip10??f.default?.Slip10,L=f.EnglishMnemonic??f.default?.EnglishMnemonic,X=f.Bip39??f.default?.Bip39,J=new L(B),A=await X.mnemonicToSeed(J),{privkey:O}=v.derivePath(T.Secp256k1,A,x(_));return O}}var c,y,Jf,Tf,cf;var vf=R(()=>{e();c=require("@scure/base"),y=require("@swapkit/helpers"),Jf=require("@swapkit/helpers/api"),Tf=require("ts-pattern");cf={[y.Chain.Cosmos]:1000,[y.Chain.Kujira]:1000,[y.Chain.Noble]:1000,[y.Chain.THORChain]:5000000,[y.Chain.Maya]:5000000,[y.Chain.Harbor]:5000000}});function F0({prefix:_,derivationPath:H}){return async function(f,x=0){let T=await import("@cosmjs/amino"),v=T.Secp256k1HdWallet??T.default?.Secp256k1HdWallet,L=await import("@cosmjs/crypto"),X=L.stringToPath??L.default?.stringToPath;return v.fromMnemonic(f,{hdPaths:[X(`${H}/${x}`)],prefix:_})}}function K0(_){return j.base64.encode(_)}function E0(_){return async function({wallet:B,tx:f}){let{msgs:x,accountNumber:T,sequence:v,chainId:L,fee:X,memo:J}=typeof f==="string"?JSON.parse(f):f,A=(await B.getAccounts())?.[0]?.address||"",O=await $(_),k=await o(),Q=await yf(B,{aminoTypes:O,registry:k}),q=[];for(let K of x){let I=await n(K,_);q.push(I)}let{signatures:[F]}=await Q.sign(A,q,X,J,{accountNumber:BigInt(T),chainId:L,sequence:v});return{bodyBytes:await ff({chain:_,memo:J,msgs:x.map(p)}),signature:K0(F)}}}function A0({prefix:_,chain:H}){return async function(f,x,T,v,L){let X=await Y.getRPCUrl(H),{encodeSecp256k1Pubkey:J,pubkeyToAddress:A}=(await import("@cosmjs/amino")).default,{makeMultisignedTxBytes:O}=(await import("@cosmjs/stargate")).default,{sequence:k,fee:Q}=JSON.parse(f),q=await tf(T,v),F=x.map((I)=>[A(J(j.base64.decode(I.pubKey)),_),j.base64.decode(I.signature)]),S=await w(X),{transactionHash:K}=await S.broadcastTx(O(q,k,Q,L,new Map(F)));return K}}async function tf(_,H,B=!0){let{createMultisigThresholdPubkey:f,encodeSecp256k1Pubkey:x}=(await import("@cosmjs/amino")).default;return f(_.map((T)=>x(j.base64.decode(T))),H,B)}function S0(_){return j.base64.decode(_)}async function k0({privateKey:_,message:H}){let{Secp256k1:B}=(await import("@cosmjs/crypto")).default,f=await B.createSignature(j.base64.decode(H),_);return j.base64.encode(Buffer.concat([f.r(32),f.s(32)]))}function Of({chain:_,...H}){let{isStagenet:B}=Y.SKConfig.get("envs"),f=Y.SKConfig.get("thornodeUrls"),x=_===Y.Chain.Maya,T=t.match({isMayachain:x,isStagenet:B}).with({isMayachain:!0},({isStagenet:I})=>I?f.MAYA_STAGENET:f.MAYA).otherwise(({isStagenet:I})=>I?f.THOR_STAGENET:f.THOR),v=`${B?"s":""}${Y.CosmosChainPrefixes[_]}`,L="index"in H?H.index||0:0,X="derivationPath"in H&&H.derivationPath?H.derivationPath:Y.updateDerivationPath(Y.NetworkDerivationPath[_],{index:L}),J=xf({chain:_,...H}),A=M(_),O;function k(){return O??=t.match(H).with({phrase:t.P.string},({phrase:I})=>J.getSignerFromPhrase({derivationPath:X,phrase:I})).with({signer:t.P.any},({signer:I})=>Promise.resolve(I)).otherwise(()=>Promise.resolve(void 0)),O}async function Q(){let I=await Y.getRPCUrl(_),N=await k();if(!N)throw new Y.SwapKitError("toolbox_cosmos_no_signer");let U=await o(),D=await $(_),h=await i(I,N,{aminoTypes:D,registry:U});return{signer:N,signingClient:h}}async function q({fee:I,memo:N,msgs:U}){let{signer:D,signingClient:h}=await Q(),d=(await D.getAccounts())?.[0]?.address;if(!d)throw new Y.SwapKitError("toolbox_cosmos_signer_not_defined");let P=await h.signAndBroadcast(d,U,I,N);if(P.code!==0)throw new Y.SwapKitError("core_swap_transaction_error",{code:P.code,message:P.rawLog});return P.transactionHash}async function F(){let I,N=`${T}/${x?"mayachain":"thorchain"}/constants`;try{let{int_64_values:{NativeTransactionFee:U}}=await Y.RequestClient.get(N);if(!U||Number.isNaN(U)||U<0)throw new Y.SwapKitError("toolbox_cosmos_invalid_fee",{nativeFee:U.toString()});I=new Y.SwapKitNumber(U)}catch{I=new Y.SwapKitNumber({decimal:Y.getChainConfig(_).baseDecimal,value:x?1:0.02})}return{[Y.FeeOption.Average]:I,[Y.FeeOption.Fast]:I,[Y.FeeOption.Fastest]:I}}async function S({assetValue:I,memo:N="",recipient:U}){let{TxRaw:D}=await import("cosmjs-types/cosmos/tx/v1beta1/tx"),{signer:h,signingClient:d}=await Q(),P=(await h.getAccounts())?.[0]?.address;if(!P)throw new Y.SwapKitError("toolbox_cosmos_no_signer");let Bf="signAmino"in h,m=Hf({assetValue:I,memo:N,recipient:U,sender:P});if(Bf){let af=await n(m,_),{signatures:rf,authInfoBytes:sf}=await d.sign(P,[af],A,N),ef=D.encode({authInfoBytes:sf,bodyBytes:await ff({chain:_,memo:N,msgs:[m].map(p)}),signatures:rf}).finish();return(await d.broadcastTx(ef)).transactionHash}let _f=p(m),gf=await n(_f,_);return q({fee:A,memo:N,msgs:[gf]})}async function K(I){let{signer:N,signingClient:U}=await Q(),D=(await N.getAccounts())?.[0]?.address;if(!D)throw new Y.SwapKitError("toolbox_cosmos_signer_not_defined");return U.sign(D,I.msgs,I.fee,I.memo,{accountNumber:BigInt(I.accountNumber),chainId:I.chainId,sequence:I.sequence})}return{...J,broadcastMultisigTx:A0({chain:_,prefix:v}),buildAminoMsg:Hf,buildEncodedTxBody:ff,convertToSignable:n,createDefaultAminoTypes:()=>$(_),createDefaultRegistry:o,createMultisig:tf,createTransaction:Xf,deposit:S,getFees:F,importSignature:S0,parseAminoMessageForDirectSigning:p,pubkeyToAddress:async(I)=>{let{pubkeyToAddress:N}=(await import("@cosmjs/amino")).default;return N(I,v)},secp256k1HdWalletFromMnemonic:F0({derivationPath:Y.derivationPathToString(X),prefix:v}),signAndBroadcastTransaction:q,signMultisigTx:E0(_),signTransaction:K,signWithPrivateKey:k0,transfer:S}}var j,Y,t;var Ff=R(()=>{Yf();e();vf();j=require("@scure/base"),Y=require("@swapkit/helpers"),t=require("ts-pattern")});var b,U0=(_,H)=>{switch(_){case b.Chain.Cosmos:case b.Chain.Kujira:case b.Chain.Noble:return xf({chain:_,...H});case b.Chain.Maya:case b.Chain.THORChain:return Of({chain:_,...H});default:throw new b.SwapKitError("toolbox_cosmos_not_supported",{chain:_})}};var mf=R(()=>{vf();Ff();b=require("@swapkit/helpers");vf();Ff()});var R0={};kf(R0,{verifySignature:()=>df,transferMsgAmino:()=>If,toBase64:()=>y0,parseAminoMessageForDirectSigning:()=>p,getSignerFromPrivateKey:()=>X0,getSignerFromPhrase:()=>qf,getMsgSendDenom:()=>l,getFeeRateFromSwapKit:()=>Y0,getDenomWithChain:()=>s,getDefaultChainFee:()=>M,getCosmosToolbox:()=>U0,getCosmosAddressValidator:()=>of,getAssetFromDenom:()=>Gf,fromBase64:()=>z0,fetchFeeRateFromSwapKit:()=>Nf,estimateTransactionFee:()=>q0,depositMsgAmino:()=>Qf,createTransaction:()=>Xf,createThorchainToolbox:()=>Of,createStargateClient:()=>w,createSigningStargateClient:()=>i,createOfflineStargateClient:()=>yf,createDefaultRegistry:()=>o,createDefaultAminoTypes:()=>$,createCosmosToolbox:()=>xf,cosmosCreateTransaction:()=>zf,convertToSignable:()=>n,buildTransferTx:()=>hf,buildEncodedTxBody:()=>ff,buildDepositTx:()=>lf,buildAminoMsg:()=>Hf,bech32ToBase64:()=>a,base64ToBech32:()=>r,YUM_KUJIRA_FACTORY_DENOM:()=>Cf,USK_KUJIRA_FACTORY_DENOM:()=>Wf,THORCHAIN_GAS_VALUE:()=>I0,MAYA_GAS_VALUE:()=>Q0,DEFAULT_NOBLE_FEE_MAINNET:()=>Df,DEFAULT_KUJI_FEE_MAINNET:()=>Vf,DEFAULT_COSMOS_FEE_MAINNET:()=>Rf});module.exports=_0(R0);var V0=R(()=>{Yf();mf();e()});V0();
1
+ var H0=Object.create;var{getPrototypeOf:B0,defineProperty:t,getOwnPropertyNames:Pf,getOwnPropertyDescriptor:_0}=Object,Mf=Object.prototype.hasOwnProperty;function Vf(v){return this[v]}var v0,L0,y0=(v,H,_)=>{var f=v!=null&&typeof v==="object";if(f){var x=H?v0??=new WeakMap:L0??=new WeakMap,T=x.get(v);if(T)return T}_=v!=null?H0(B0(v)):{};let B=H||!v||!v.__esModule?t(_,"default",{value:v,enumerable:!0}):_;for(let L of Pf(v))if(!Mf.call(B,L))t(B,L,{get:Vf.bind(v,L),enumerable:!0});if(f)x.set(v,B);return B},W0=(v)=>{var H=(Df??=new WeakMap).get(v),_;if(H)return H;if(H=t({},"__esModule",{value:!0}),v&&typeof v==="object"||typeof v==="function"){for(var f of Pf(v))if(!Mf.call(H,f))t(H,f,{get:Vf.bind(v,f),enumerable:!(_=_0(v,f))||_.enumerable})}return Df.set(v,H),H},Df;var z0=(v)=>v;function G0(v,H){this[v]=z0.bind(null,H)}var uf=(v,H)=>{for(var _ in H)t(v,_,{get:H[_],enumerable:!0,configurable:!0,set:G0.bind(H,_)})};var A=(v,H)=>()=>(v&&(H=v(v=0)),H);function g(v){return P.base64.encode(Uint8Array.from(P.bech32.fromWords(P.bech32.decode(v).words)))}function r(v,H="thor"){return P.bech32.encode(H,P.bech32.toWords(P.base64.decode(v)))}function Z0(v){return P.base64.encode(v)}function I0(v){if(!v.match(/^[a-zA-Z0-9+/]*={0,2}$/))throw new wf.SwapKitError("toolbox_cosmos_invalid_params",{error:"Invalid base64 string format"});return P.base64.decode(v)}var P,wf;var Zf=A(()=>{P=require("@scure/base"),wf=require("@swapkit/helpers")});function D(v){switch(v){case W.Chain.Maya:return{amount:[],gas:"10000000000"};case W.Chain.THORChain:return{amount:[],gas:"500000000"};case W.Chain.Kujira:return $f;case W.Chain.Noble:return nf;default:return lf}}async function a(v){let{isStagenet:H}=W.SKConfig.get("envs"),_=W.SKConfig.get("thornodeUrls"),f=v===W.Chain.Maya,T=`${f?H?_.MAYA_STAGENET:_.MAYA:H?_.THOR_STAGENET:_.THOR}/${f?"mayachain":"thorchain"}/constants`,B=W.getChainConfig(v).baseDecimal;try{let{int_64_values:{NativeTransactionFee:L}}=await W.RequestClient.get(T);if(!Number.isInteger(L)||L<=0)throw new W.SwapKitError("toolbox_cosmos_invalid_fee",{nativeFee:L.toString()});return W.SwapKitNumber.fromBigInt(BigInt(L),B)}catch{let L=f?10000000000n:2000000n;return W.SwapKitNumber.fromBigInt(L,B)}}async function M(v){let H=await import("@cosmjs/stargate"),_=H.StargateClient??H.default?.StargateClient,f=typeof window<"u"?{}:{referer:"https://sdk.swapkit.dev",referrer:"https://sdk.swapkit.dev"};return _.connect({headers:f,url:v})}async function j(v,H,_={}){let f=await import("@cosmjs/stargate"),x=f.SigningStargateClient??f.default?.SigningStargateClient,T=f.GasPrice??f.default?.GasPrice,B=typeof _==="string"?_:"0.0003uatom",L=typeof _==="string"?{}:_;return x.connectWithSigner(v,H,{gasPrice:T.fromString(B),...L})}async function Qf(v,H){let _=await import("@cosmjs/stargate");return(_.SigningStargateClient??_.default?.SigningStargateClient).offline(v,H)}async function Xf({sender:v,recipient:H,assetValue:_,memo:f="",feeRate:x,sequence:T,accountNumber:B,sweep:L}){let{chain:I,chainId:q}=_,E=await W.getRPCUrl(I),K=await M(E),U=await K.getAccount(v);if(!U)throw new W.SwapKitError("toolbox_cosmos_account_not_found",{sender:v});let X=W.AssetValue.from({chain:I}),Y=w(X.symbol),Q=D(I),J=Y&&x?{amount:[{amount:x.toString(),denom:Y}],gas:Q.gas}:Q,O=w(_.symbol),C={amount:[{amount:(L?i({assetValue:_,balances:await K.getAllBalances(v),denom:O,feeAmount:_f(J.amount,O)}):_).getBaseValue("string"),denom:O}],fromAddress:v,toAddress:H};return{accountNumber:B??Number(U.accountNumber),chainId:q,fee:J,memo:f,msgs:[{typeUrl:Q0(I),value:C}],sequence:T??U.sequence}}function _f(v,H){let _=H.toLowerCase();return v.reduce((f,x)=>x.denom.toLowerCase()===_?f+BigInt(x.amount):f,0n)}function i({assetValue:v,balances:H,denom:_,feeAmount:f=0n}){let x=_.toLowerCase(),T=H.find(({denom:I})=>I.toLowerCase()===x),B=BigInt(T?.amount??"0"),L=B-f;if(L<=0n)throw new W.SwapKitError("toolbox_sweep_amount_too_low",{asset:v.toString(),balance:B.toString(),fee:f.toString()});return v.set(W.SwapKitNumber.fromBigInt(L,v.decimal))}var W,If="FACTORY/KUJIRA1QK00H5ATUTPSV900X202PXX42NPJR9THG58DNQPA72F2P7M2LUASE444A7/UUSK",hf="FACTORY/KUJIRA1YGFXN0ER40KLCNCK8THLTUPRDXLCK6WVNPKF2K/UYUM",lf,$f,nf,w=(v,H=!1)=>{if(H)return v.toLowerCase();switch(v){case"uUSK":case"USK":return If;case"uYUM":case"YUM":return hf;case"uKUJI":case"KUJI":return"ukuji";case"ATOM":case"uATOM":return"uatom";case"uUSDC":case"USDC":case"NOBLE":return"uusdc";default:return v}},s=({symbol:v,chain:H})=>{if(H===W.Chain.Maya)return(v.toUpperCase()!=="CACAO"?v:`${W.Chain.Maya}.${v}`).toUpperCase();if(H===W.Chain.THORChain)return(["RUNE","TCY","RUJI"].includes(v.toUpperCase())?`${W.Chain.THORChain}.${v}`:v).toUpperCase();return w(v,!1)},Q0=(v)=>{switch(v){case W.Chain.Maya:case W.Chain.THORChain:return"/types.MsgSend";case W.Chain.Cosmos:case W.Chain.Kujira:case W.Chain.Noble:return"/cosmos.bank.v1beta1.MsgSend";default:throw new W.SwapKitError("toolbox_cosmos_not_supported",{chain:v})}},X0,Yf=(v,H)=>{let _=X0[v.toLowerCase()];if(!_)return W.AssetValue.from({asset:v,fromBaseDecimal:8,value:H});let{chain:f,asset:x,decimals:T}=_,B=f?{chain:f}:{asset:x};return W.AssetValue.from({...B,fromBaseDecimal:T,value:H})};var e=A(()=>{W=require("@swapkit/helpers"),lf={amount:[{amount:"500",denom:"uatom"}],gas:"200000"},$f={amount:[{amount:"1000",denom:"ukuji"}],gas:"200000"},nf={amount:[{amount:"1000",denom:"uusdc"}],gas:"200000"};X0={atom:{chain:W.Chain.Cosmos,decimals:W.getChainConfig(W.Chain.Cosmos).baseDecimal},cacao:{chain:W.Chain.Maya,decimals:10},kuji:{chain:W.Chain.Kujira,decimals:W.getChainConfig(W.Chain.Kujira).baseDecimal},maya:{asset:`${W.Chain.Maya}.${W.Chain.Maya}`,decimals:4},rune:{chain:W.Chain.THORChain,decimals:W.getChainConfig(W.Chain.THORChain).baseDecimal},tcy:{asset:"THOR.TCY",decimals:W.getChainConfig(W.Chain.THORChain).baseDecimal},uatom:{chain:W.Chain.Cosmos,decimals:W.getChainConfig(W.Chain.Cosmos).baseDecimal},ukuji:{chain:W.Chain.Kujira,decimals:W.getChainConfig(W.Chain.Kujira).baseDecimal},usdc:{chain:W.Chain.Noble,decimals:W.getChainConfig(W.Chain.Noble).baseDecimal},uusdc:{chain:W.Chain.Noble,decimals:W.getChainConfig(W.Chain.Noble).baseDecimal},"x/kuji":{asset:"THOR.KUJI",decimals:W.getChainConfig(W.Chain.THORChain).baseDecimal},[If.toLowerCase()]:{asset:`${W.Chain.Kujira}.USK`,decimals:W.getChainConfig(W.Chain.Kujira).baseDecimal}}});var pf={};uf(pf,{$root:()=>y});var k,Z,R,G,y;var cf=A(()=>{k=y0(require("protobufjs/minimal.js")),Z=k.default.Reader,R=k.default.Writer,G=k.default.util,y=k.default.roots.default||(k.default.roots.default={});y.common=(()=>{let v={};return v.Asset=(()=>{function H(_){if(_){for(let f=Object.keys(_),x=0;x<f.length;++x)if(_[f[x]]!=null)this[f[x]]=_[f[x]]}}return H.prototype.chain="",H.prototype.symbol="",H.prototype.ticker="",H.prototype.synth=!1,H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=R.create();if(f.chain!=null&&Object.hasOwnProperty.call(f,"chain"))x.uint32(10).string(f.chain);if(f.symbol!=null&&Object.hasOwnProperty.call(f,"symbol"))x.uint32(18).string(f.symbol);if(f.ticker!=null&&Object.hasOwnProperty.call(f,"ticker"))x.uint32(26).string(f.ticker);if(f.synth!=null&&Object.hasOwnProperty.call(f,"synth"))x.uint32(32).bool(f.synth);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,B=new y.common.Asset;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:B.chain=f.string();break;case 2:B.symbol=f.string();break;case 3:B.ticker=f.string();break;case 4:B.synth=f.bool();break;default:f.skipType(L&7);break}}return B},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.chain!=null&&f.hasOwnProperty("chain")){if(!G.isString(f.chain))return"chain: string expected"}if(f.symbol!=null&&f.hasOwnProperty("symbol")){if(!G.isString(f.symbol))return"symbol: string expected"}if(f.ticker!=null&&f.hasOwnProperty("ticker")){if(!G.isString(f.ticker))return"ticker: string expected"}if(f.synth!=null&&f.hasOwnProperty("synth")){if(typeof f.synth!=="boolean")return"synth: boolean expected"}return null},H.fromObject=function(f){if(f instanceof y.common.Asset)return f;let x=new y.common.Asset;if(f.chain!=null)x.chain=String(f.chain);if(f.symbol!=null)x.symbol=String(f.symbol);if(f.ticker!=null)x.ticker=String(f.ticker);if(f.synth!=null)x.synth=Boolean(f.synth);return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.defaults)T.chain="",T.symbol="",T.ticker="",T.synth=!1;if(f.chain!=null&&f.hasOwnProperty("chain"))T.chain=f.chain;if(f.symbol!=null&&f.hasOwnProperty("symbol"))T.symbol=f.symbol;if(f.ticker!=null&&f.hasOwnProperty("ticker"))T.ticker=f.ticker;if(f.synth!=null&&f.hasOwnProperty("synth"))T.synth=f.synth;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,k.default.util.toJSONOptions)},H})(),v.Coin=(()=>{function H(_){if(_){for(let f=Object.keys(_),x=0;x<f.length;++x)if(_[f[x]]!=null)this[f[x]]=_[f[x]]}}return H.prototype.asset=null,H.prototype.amount="",H.prototype.decimals=G.Long?G.Long.fromBits(0,0,!1):0,H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=R.create();if(f.asset!=null&&Object.hasOwnProperty.call(f,"asset"))y.common.Asset.encode(f.asset,x.uint32(10).fork()).ldelim();if(f.amount!=null&&Object.hasOwnProperty.call(f,"amount"))x.uint32(18).string(f.amount);if(f.decimals!=null&&Object.hasOwnProperty.call(f,"decimals"))x.uint32(24).int64(f.decimals);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,B=new y.common.Coin;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:B.asset=y.common.Asset.decode(f,f.uint32());break;case 2:B.amount=f.string();break;case 3:B.decimals=f.int64();break;default:f.skipType(L&7);break}}return B},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.asset!=null&&f.hasOwnProperty("asset")){let x=y.common.Asset.verify(f.asset);if(x)return"asset."+x}if(f.amount!=null&&f.hasOwnProperty("amount")){if(!G.isString(f.amount))return"amount: string expected"}if(f.decimals!=null&&f.hasOwnProperty("decimals")){if(!G.isInteger(f.decimals)&&!(f.decimals&&G.isInteger(f.decimals.low)&&G.isInteger(f.decimals.high)))return"decimals: integer|Long expected"}return null},H.fromObject=function(f){if(f instanceof y.common.Coin)return f;let x=new y.common.Coin;if(f.asset!=null){if(typeof f.asset!=="object")throw TypeError(".common.Coin.asset: object expected");x.asset=y.common.Asset.fromObject(f.asset)}if(f.amount!=null)x.amount=String(f.amount);if(f.decimals!=null){if(G.Long)(x.decimals=G.Long.fromValue(f.decimals)).unsigned=!1;else if(typeof f.decimals==="string")x.decimals=Number.parseInt(f.decimals,10);else if(typeof f.decimals==="number")x.decimals=f.decimals;else if(typeof f.decimals==="object")x.decimals=new G.LongBits(f.decimals.low>>>0,f.decimals.high>>>0).toNumber()}return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.defaults)if(T.asset=null,T.amount="",G.Long){let B=new G.Long(0,0,!1);T.decimals=x.longs===String?B.toString():x.longs===Number?B.toNumber():B}else T.decimals=x.longs===String?"0":0;if(f.asset!=null&&f.hasOwnProperty("asset"))T.asset=y.common.Asset.toObject(f.asset,x);if(f.amount!=null&&f.hasOwnProperty("amount"))T.amount=f.amount;if(f.decimals!=null&&f.hasOwnProperty("decimals"))if(typeof f.decimals==="number")T.decimals=x.longs===String?String(f.decimals):f.decimals;else T.decimals=x.longs===String?G.Long.prototype.toString.call(f.decimals):x.longs===Number?new G.LongBits(f.decimals.low>>>0,f.decimals.high>>>0).toNumber():f.decimals;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,k.default.util.toJSONOptions)},H})(),v.PubKeySet=(()=>{function H(_){if(_){for(let f=Object.keys(_),x=0;x<f.length;++x)if(_[f[x]]!=null)this[f[x]]=_[f[x]]}}return H.prototype.secp256k1="",H.prototype.ed25519="",H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=R.create();if(f.secp256k1!=null&&Object.hasOwnProperty.call(f,"secp256k1"))x.uint32(10).string(f.secp256k1);if(f.ed25519!=null&&Object.hasOwnProperty.call(f,"ed25519"))x.uint32(18).string(f.ed25519);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,B=new y.common.PubKeySet;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:B.secp256k1=f.string();break;case 2:B.ed25519=f.string();break;default:f.skipType(L&7);break}}return B},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.secp256k1!=null&&f.hasOwnProperty("secp256k1")){if(!G.isString(f.secp256k1))return"secp256k1: string expected"}if(f.ed25519!=null&&f.hasOwnProperty("ed25519")){if(!G.isString(f.ed25519))return"ed25519: string expected"}return null},H.fromObject=function(f){if(f instanceof y.common.PubKeySet)return f;let x=new y.common.PubKeySet;if(f.secp256k1!=null)x.secp256k1=String(f.secp256k1);if(f.ed25519!=null)x.ed25519=String(f.ed25519);return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.defaults)T.secp256k1="",T.ed25519="";if(f.secp256k1!=null&&f.hasOwnProperty("secp256k1"))T.secp256k1=f.secp256k1;if(f.ed25519!=null&&f.hasOwnProperty("ed25519"))T.ed25519=f.ed25519;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,k.default.util.toJSONOptions)},H})(),v.Tx=(()=>{function H(_){if(this.coins=[],this.gas=[],_){for(let f=Object.keys(_),x=0;x<f.length;++x)if(_[f[x]]!=null)this[f[x]]=_[f[x]]}}return H.prototype.id="",H.prototype.chain="",H.prototype.fromAddress="",H.prototype.toAddress="",H.prototype.coins=G.emptyArray,H.prototype.gas=G.emptyArray,H.prototype.memo="",H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=R.create();if(f.id!=null&&Object.hasOwnProperty.call(f,"id"))x.uint32(10).string(f.id);if(f.chain!=null&&Object.hasOwnProperty.call(f,"chain"))x.uint32(18).string(f.chain);if(f.fromAddress!=null&&Object.hasOwnProperty.call(f,"fromAddress"))x.uint32(26).string(f.fromAddress);if(f.toAddress!=null&&Object.hasOwnProperty.call(f,"toAddress"))x.uint32(34).string(f.toAddress);if(f.coins?.length)for(let T=0;T<f.coins.length;++T)y.common.Coin.encode(f.coins[T],x.uint32(42).fork()).ldelim();if(f.gas?.length)for(let T=0;T<f.gas.length;++T)y.common.Coin.encode(f.gas[T],x.uint32(50).fork()).ldelim();if(f.memo!=null&&Object.hasOwnProperty.call(f,"memo"))x.uint32(58).string(f.memo);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,B=new y.common.Tx;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:B.id=f.string();break;case 2:B.chain=f.string();break;case 3:B.fromAddress=f.string();break;case 4:B.toAddress=f.string();break;case 5:if(!B.coins?.length)B.coins=[];B.coins.push(y.common.Coin.decode(f,f.uint32()));break;case 6:if(!B.gas?.length)B.gas=[];B.gas.push(y.common.Coin.decode(f,f.uint32()));break;case 7:B.memo=f.string();break;default:f.skipType(L&7);break}}return B},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.id!=null&&f.hasOwnProperty("id")){if(!G.isString(f.id))return"id: string expected"}if(f.chain!=null&&f.hasOwnProperty("chain")){if(!G.isString(f.chain))return"chain: string expected"}if(f.fromAddress!=null&&f.hasOwnProperty("fromAddress")){if(!G.isString(f.fromAddress))return"fromAddress: string expected"}if(f.toAddress!=null&&f.hasOwnProperty("toAddress")){if(!G.isString(f.toAddress))return"toAddress: string expected"}if(f.coins!=null&&f.hasOwnProperty("coins")){if(!Array.isArray(f.coins))return"coins: array expected";for(let x=0;x<f.coins.length;++x){let T=y.common.Coin.verify(f.coins[x]);if(T)return"coins."+T}}if(f.gas!=null&&f.hasOwnProperty("gas")){if(!Array.isArray(f.gas))return"gas: array expected";for(let x=0;x<f.gas.length;++x){let T=y.common.Coin.verify(f.gas[x]);if(T)return"gas."+T}}if(f.memo!=null&&f.hasOwnProperty("memo")){if(!G.isString(f.memo))return"memo: string expected"}return null},H.fromObject=function(f){if(f instanceof y.common.Tx)return f;let x=new y.common.Tx;if(f.id!=null)x.id=String(f.id);if(f.chain!=null)x.chain=String(f.chain);if(f.fromAddress!=null)x.fromAddress=String(f.fromAddress);if(f.toAddress!=null)x.toAddress=String(f.toAddress);if(f.coins){if(!Array.isArray(f.coins))throw TypeError(".common.Tx.coins: array expected");x.coins=[];for(let T=0;T<f.coins.length;++T){if(typeof f.coins[T]!=="object")throw TypeError(".common.Tx.coins: object expected");x.coins[T]=y.common.Coin.fromObject(f.coins[T])}}if(f.gas){if(!Array.isArray(f.gas))throw TypeError(".common.Tx.gas: array expected");x.gas=[];for(let T=0;T<f.gas.length;++T){if(typeof f.gas[T]!=="object")throw TypeError(".common.Tx.gas: object expected");x.gas[T]=y.common.Coin.fromObject(f.gas[T])}}if(f.memo!=null)x.memo=String(f.memo);return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.arrays||x.defaults)T.coins=[],T.gas=[];if(x.defaults)T.id="",T.chain="",T.fromAddress="",T.toAddress="",T.memo="";if(f.id!=null&&f.hasOwnProperty("id"))T.id=f.id;if(f.chain!=null&&f.hasOwnProperty("chain"))T.chain=f.chain;if(f.fromAddress!=null&&f.hasOwnProperty("fromAddress"))T.fromAddress=f.fromAddress;if(f.toAddress!=null&&f.hasOwnProperty("toAddress"))T.toAddress=f.toAddress;if(f.coins?.length){T.coins=[];for(let B=0;B<f.coins.length;++B)T.coins[B]=y.common.Coin.toObject(f.coins[B],x)}if(f.gas?.length){T.gas=[];for(let B=0;B<f.gas.length;++B)T.gas[B]=y.common.Coin.toObject(f.gas[B],x)}if(f.memo!=null&&f.hasOwnProperty("memo"))T.memo=f.memo;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,k.default.util.toJSONOptions)},H})(),v.Fee=(()=>{function H(_){if(this.coins=[],_){for(let f=Object.keys(_),x=0;x<f.length;++x)if(_[f[x]]!=null)this[f[x]]=_[f[x]]}}return H.prototype.coins=G.emptyArray,H.prototype.poolDeduct="",H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=R.create();if(f.coins?.length)for(let T=0;T<f.coins.length;++T)y.common.Coin.encode(f.coins[T],x.uint32(10).fork()).ldelim();if(f.poolDeduct!=null&&Object.hasOwnProperty.call(f,"poolDeduct"))x.uint32(18).string(f.poolDeduct);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,B=new y.common.Fee;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:if(!B.coins?.length)B.coins=[];B.coins.push(y.common.Coin.decode(f,f.uint32()));break;case 2:B.poolDeduct=f.string();break;default:f.skipType(L&7);break}}return B},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.coins!=null&&f.hasOwnProperty("coins")){if(!Array.isArray(f.coins))return"coins: array expected";for(let x=0;x<f.coins.length;++x){let T=y.common.Coin.verify(f.coins[x]);if(T)return"coins."+T}}if(f.poolDeduct!=null&&f.hasOwnProperty("poolDeduct")){if(!G.isString(f.poolDeduct))return"poolDeduct: string expected"}return null},H.fromObject=function(f){if(f instanceof y.common.Fee)return f;let x=new y.common.Fee;if(f.coins){if(!Array.isArray(f.coins))throw TypeError(".common.Fee.coins: array expected");x.coins=[];for(let T=0;T<f.coins.length;++T){if(typeof f.coins[T]!=="object")throw TypeError(".common.Fee.coins: object expected");x.coins[T]=y.common.Coin.fromObject(f.coins[T])}}if(f.poolDeduct!=null)x.poolDeduct=String(f.poolDeduct);return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.arrays||x.defaults)T.coins=[];if(x.defaults)T.poolDeduct="";if(f.coins?.length){T.coins=[];for(let B=0;B<f.coins.length;++B)T.coins[B]=y.common.Coin.toObject(f.coins[B],x)}if(f.poolDeduct!=null&&f.hasOwnProperty("poolDeduct"))T.poolDeduct=f.poolDeduct;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,k.default.util.toJSONOptions)},H})(),v.ProtoUint=(()=>{function H(_){if(_){for(let f=Object.keys(_),x=0;x<f.length;++x)if(_[f[x]]!=null)this[f[x]]=_[f[x]]}}return H.prototype.value="",H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=R.create();if(f.value!=null&&Object.hasOwnProperty.call(f,"value"))x.uint32(10).string(f.value);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,B=new y.common.ProtoUint;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:B.value=f.string();break;default:f.skipType(L&7);break}}return B},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.value!=null&&f.hasOwnProperty("value")){if(!G.isString(f.value))return"value: string expected"}return null},H.fromObject=function(f){if(f instanceof y.common.ProtoUint)return f;let x=new y.common.ProtoUint;if(f.value!=null)x.value=String(f.value);return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.defaults)T.value="";if(f.value!=null&&f.hasOwnProperty("value"))T.value=f.value;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,k.default.util.toJSONOptions)},H})(),v})();y.types=(()=>{let v={};return v.MsgDeposit=(()=>{function H(_){if(this.coins=[],_){for(let f=Object.keys(_),x=0;x<f.length;++x)if(_[f[x]]!=null)this[f[x]]=_[f[x]]}}return H.prototype.coins=G.emptyArray,H.prototype.memo="",H.prototype.signer=G.newBuffer([]),H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=R.create();if(f.coins?.length)for(let T=0;T<f.coins.length;++T)y.common.Coin.encode(f.coins[T],x.uint32(10).fork()).ldelim();if(f.memo!=null&&Object.hasOwnProperty.call(f,"memo"))x.uint32(18).string(f.memo);if(f.signer!=null&&Object.hasOwnProperty.call(f,"signer"))x.uint32(26).bytes(f.signer);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,B=new y.types.MsgDeposit;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:if(!B.coins?.length)B.coins=[];B.coins.push(y.common.Coin.decode(f,f.uint32()));break;case 2:B.memo=f.string();break;case 3:B.signer=f.bytes();break;default:f.skipType(L&7);break}}return B},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.coins!=null&&f.hasOwnProperty("coins")){if(!Array.isArray(f.coins))return"coins: array expected";for(let x=0;x<f.coins.length;++x){let T=y.common.Coin.verify(f.coins[x]);if(T)return"coins."+T}}if(f.memo!=null&&f.hasOwnProperty("memo")){if(!G.isString(f.memo))return"memo: string expected"}if(f.signer!=null&&f.hasOwnProperty("signer")){if(!(f.signer&&typeof f.signer.length==="number"||G.isString(f.signer)))return"signer: buffer expected"}return null},H.fromObject=function(f){if(f instanceof y.types.MsgDeposit)return f;let x=new y.types.MsgDeposit;if(f.coins){if(!Array.isArray(f.coins))throw TypeError(".types.MsgDeposit.coins: array expected");x.coins=[];for(let T=0;T<f.coins.length;++T){if(typeof f.coins[T]!=="object")throw TypeError(".types.MsgDeposit.coins: object expected");x.coins[T]=y.common.Coin.fromObject(f.coins[T])}}if(f.memo!=null)x.memo=String(f.memo);if(f.signer!=null){if(typeof f.signer==="string")G.base64.decode(f.signer,x.signer=G.newBuffer(G.base64.length(f.signer)),0);else if(f.signer.length)x.signer=f.signer}return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.arrays||x.defaults)T.coins=[];if(x.defaults){if(T.memo="",x.bytes===String)T.signer="";else if(T.signer=[],x.bytes!==Array)T.signer=G.newBuffer(T.signer)}if(f.coins?.length){T.coins=[];for(let B=0;B<f.coins.length;++B)T.coins[B]=y.common.Coin.toObject(f.coins[B],x)}if(f.memo!=null&&f.hasOwnProperty("memo"))T.memo=f.memo;if(f.signer!=null&&f.hasOwnProperty("signer"))T.signer=x.bytes===String?G.base64.encode(f.signer,0,f.signer.length):x.bytes===Array?Array.prototype.slice.call(f.signer):f.signer;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,k.default.util.toJSONOptions)},H})(),v.MsgSend=(()=>{function H(_){if(this.amount=[],_){for(let f=Object.keys(_),x=0;x<f.length;++x)if(_[f[x]]!=null)this[f[x]]=_[f[x]]}}return H.prototype.fromAddress=G.newBuffer([]),H.prototype.toAddress=G.newBuffer([]),H.prototype.amount=G.emptyArray,H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=R.create();if(f.fromAddress!=null&&Object.hasOwnProperty.call(f,"fromAddress"))x.uint32(10).bytes(f.fromAddress);if(f.toAddress!=null&&Object.hasOwnProperty.call(f,"toAddress"))x.uint32(18).bytes(f.toAddress);if(f.amount?.length)for(let T=0;T<f.amount.length;++T)y.cosmos.base.v1beta1.Coin.encode(f.amount[T],x.uint32(26).fork()).ldelim();return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,B=new y.types.MsgSend;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:B.fromAddress=f.bytes();break;case 2:B.toAddress=f.bytes();break;case 3:if(!B.amount?.length)B.amount=[];B.amount.push(y.cosmos.base.v1beta1.Coin.decode(f,f.uint32()));break;default:f.skipType(L&7);break}}return B},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.fromAddress!=null&&f.hasOwnProperty("fromAddress")){if(!(f.fromAddress&&typeof f.fromAddress.length==="number"||G.isString(f.fromAddress)))return"fromAddress: buffer expected"}if(f.toAddress!=null&&f.hasOwnProperty("toAddress")){if(!(f.toAddress&&typeof f.toAddress.length==="number"||G.isString(f.toAddress)))return"toAddress: buffer expected"}if(f.amount!=null&&f.hasOwnProperty("amount")){if(!Array.isArray(f.amount))return"amount: array expected";for(let x=0;x<f.amount.length;++x){let T=y.cosmos.base.v1beta1.Coin.verify(f.amount[x]);if(T)return"amount."+T}}return null},H.fromObject=function(f){if(f instanceof y.types.MsgSend)return f;let x=new y.types.MsgSend;if(f.fromAddress!=null){if(typeof f.fromAddress==="string")G.base64.decode(f.fromAddress,x.fromAddress=G.newBuffer(G.base64.length(f.fromAddress)),0);else if(f.fromAddress.length)x.fromAddress=f.fromAddress}if(f.toAddress!=null){if(typeof f.toAddress==="string")G.base64.decode(f.toAddress,x.toAddress=G.newBuffer(G.base64.length(f.toAddress)),0);else if(f.toAddress.length)x.toAddress=f.toAddress}if(f.amount){if(!Array.isArray(f.amount))throw TypeError(".types.MsgSend.amount: array expected");x.amount=[];for(let T=0;T<f.amount.length;++T){if(typeof f.amount[T]!=="object")throw TypeError(".types.MsgSend.amount: object expected");x.amount[T]=y.cosmos.base.v1beta1.Coin.fromObject(f.amount[T])}}return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.arrays||x.defaults)T.amount=[];if(x.defaults){if(x.bytes===String)T.fromAddress="";else if(T.fromAddress=[],x.bytes!==Array)T.fromAddress=G.newBuffer(T.fromAddress);if(x.bytes===String)T.toAddress="";else if(T.toAddress=[],x.bytes!==Array)T.toAddress=G.newBuffer(T.toAddress)}if(f.fromAddress!=null&&f.hasOwnProperty("fromAddress"))T.fromAddress=x.bytes===String?G.base64.encode(f.fromAddress,0,f.fromAddress.length):x.bytes===Array?Array.prototype.slice.call(f.fromAddress):f.fromAddress;if(f.toAddress!=null&&f.hasOwnProperty("toAddress"))T.toAddress=x.bytes===String?G.base64.encode(f.toAddress,0,f.toAddress.length):x.bytes===Array?Array.prototype.slice.call(f.toAddress):f.toAddress;if(f.amount?.length){T.amount=[];for(let B=0;B<f.amount.length;++B)T.amount[B]=y.cosmos.base.v1beta1.Coin.toObject(f.amount[B],x)}return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,k.default.util.toJSONOptions)},H})(),v})();y.cosmos=(()=>{let v={};return v.base=(()=>{let H={};return H.v1beta1=(()=>{let _={};return _.Coin=(()=>{function f(x){if(x){for(let T=Object.keys(x),B=0;B<T.length;++B)if(x[T[B]]!=null)this[T[B]]=x[T[B]]}}return f.prototype.denom="",f.prototype.amount="",f.create=function(T){return new f(T)},f.encode=function(T,B){if(!B)B=R.create();if(T.denom!=null&&Object.hasOwnProperty.call(T,"denom"))B.uint32(10).string(T.denom);if(T.amount!=null&&Object.hasOwnProperty.call(T,"amount"))B.uint32(18).string(T.amount);return B},f.encodeDelimited=function(T,B){return this.encode(T,B).ldelim()},f.decode=function(T,B){if(!(T instanceof Z))T=Z.create(T);let L=B===void 0?T.len:T.pos+B,I=new y.cosmos.base.v1beta1.Coin;while(T.pos<L){let q=T.uint32();switch(q>>>3){case 1:I.denom=T.string();break;case 2:I.amount=T.string();break;default:T.skipType(q&7);break}}return I},f.decodeDelimited=function(T){if(!(T instanceof Z))T=new Z(T);return this.decode(T,T.uint32())},f.verify=function(T){if(typeof T!=="object"||T===null)return"object expected";if(T.denom!=null&&T.hasOwnProperty("denom")){if(!G.isString(T.denom))return"denom: string expected"}if(T.amount!=null&&T.hasOwnProperty("amount")){if(!G.isString(T.amount))return"amount: string expected"}return null},f.fromObject=function(T){if(T instanceof y.cosmos.base.v1beta1.Coin)return T;let B=new y.cosmos.base.v1beta1.Coin;if(T.denom!=null)B.denom=String(T.denom);if(T.amount!=null)B.amount=String(T.amount);return B},f.toObject=function(T,B){if(!B)B={};let L={};if(B.defaults)L.denom="",L.amount="";if(T.denom!=null&&T.hasOwnProperty("denom"))L.denom=T.denom;if(T.amount!=null&&T.hasOwnProperty("amount"))L.amount=T.amount;return L},f.prototype.toJSON=function(){return this.constructor.toObject(this,k.default.util.toJSONOptions)},f})(),_.DecCoin=(()=>{function f(x){if(x){for(let T=Object.keys(x),B=0;B<T.length;++B)if(x[T[B]]!=null)this[T[B]]=x[T[B]]}}return f.prototype.denom="",f.prototype.amount="",f.create=function(T){return new f(T)},f.encode=function(T,B){if(!B)B=R.create();if(T.denom!=null&&Object.hasOwnProperty.call(T,"denom"))B.uint32(10).string(T.denom);if(T.amount!=null&&Object.hasOwnProperty.call(T,"amount"))B.uint32(18).string(T.amount);return B},f.encodeDelimited=function(T,B){return this.encode(T,B).ldelim()},f.decode=function(T,B){if(!(T instanceof Z))T=Z.create(T);let L=B===void 0?T.len:T.pos+B,I=new y.cosmos.base.v1beta1.DecCoin;while(T.pos<L){let q=T.uint32();switch(q>>>3){case 1:I.denom=T.string();break;case 2:I.amount=T.string();break;default:T.skipType(q&7);break}}return I},f.decodeDelimited=function(T){if(!(T instanceof Z))T=new Z(T);return this.decode(T,T.uint32())},f.verify=function(T){if(typeof T!=="object"||T===null)return"object expected";if(T.denom!=null&&T.hasOwnProperty("denom")){if(!G.isString(T.denom))return"denom: string expected"}if(T.amount!=null&&T.hasOwnProperty("amount")){if(!G.isString(T.amount))return"amount: string expected"}return null},f.fromObject=function(T){if(T instanceof y.cosmos.base.v1beta1.DecCoin)return T;let B=new y.cosmos.base.v1beta1.DecCoin;if(T.denom!=null)B.denom=String(T.denom);if(T.amount!=null)B.amount=String(T.amount);return B},f.toObject=function(T,B){if(!B)B={};let L={};if(B.defaults)L.denom="",L.amount="";if(T.denom!=null&&T.hasOwnProperty("denom"))L.denom=T.denom;if(T.amount!=null&&T.hasOwnProperty("amount"))L.amount=T.amount;return L},f.prototype.toJSON=function(){return this.constructor.toObject(this,k.default.util.toJSONOptions)},f})(),_.IntProto=(()=>{function f(x){if(x){for(let T=Object.keys(x),B=0;B<T.length;++B)if(x[T[B]]!=null)this[T[B]]=x[T[B]]}}return f.prototype.int="",f.create=function(T){return new f(T)},f.encode=function(T,B){if(!B)B=R.create();if(T.int!=null&&Object.hasOwnProperty.call(T,"int"))B.uint32(10).string(T.int);return B},f.encodeDelimited=function(T,B){return this.encode(T,B).ldelim()},f.decode=function(T,B){if(!(T instanceof Z))T=Z.create(T);let L=B===void 0?T.len:T.pos+B,I=new y.cosmos.base.v1beta1.IntProto;while(T.pos<L){let q=T.uint32();switch(q>>>3){case 1:I.int=T.string();break;default:T.skipType(q&7);break}}return I},f.decodeDelimited=function(T){if(!(T instanceof Z))T=new Z(T);return this.decode(T,T.uint32())},f.verify=function(T){if(typeof T!=="object"||T===null)return"object expected";if(T.int!=null&&T.hasOwnProperty("int")){if(!G.isString(T.int))return"int: string expected"}return null},f.fromObject=function(T){if(T instanceof y.cosmos.base.v1beta1.IntProto)return T;let B=new y.cosmos.base.v1beta1.IntProto;if(T.int!=null)B.int=String(T.int);return B},f.toObject=function(T,B){if(!B)B={};let L={};if(B.defaults)L.int="";if(T.int!=null&&T.hasOwnProperty("int"))L.int=T.int;return L},f.prototype.toJSON=function(){return this.constructor.toObject(this,k.default.util.toJSONOptions)},f})(),_.DecProto=(()=>{function f(x){if(x){for(let T=Object.keys(x),B=0;B<T.length;++B)if(x[T[B]]!=null)this[T[B]]=x[T[B]]}}return f.prototype.dec="",f.create=function(T){return new f(T)},f.encode=function(T,B){if(!B)B=R.create();if(T.dec!=null&&Object.hasOwnProperty.call(T,"dec"))B.uint32(10).string(T.dec);return B},f.encodeDelimited=function(T,B){return this.encode(T,B).ldelim()},f.decode=function(T,B){if(!(T instanceof Z))T=Z.create(T);let L=B===void 0?T.len:T.pos+B,I=new y.cosmos.base.v1beta1.DecProto;while(T.pos<L){let q=T.uint32();switch(q>>>3){case 1:I.dec=T.string();break;default:T.skipType(q&7);break}}return I},f.decodeDelimited=function(T){if(!(T instanceof Z))T=new Z(T);return this.decode(T,T.uint32())},f.verify=function(T){if(typeof T!=="object"||T===null)return"object expected";if(T.dec!=null&&T.hasOwnProperty("dec")){if(!G.isString(T.dec))return"dec: string expected"}return null},f.fromObject=function(T){if(T instanceof y.cosmos.base.v1beta1.DecProto)return T;let B=new y.cosmos.base.v1beta1.DecProto;if(T.dec!=null)B.dec=String(T.dec);return B},f.toObject=function(T,B){if(!B)B={};let L={};if(B.defaults)L.dec="";if(T.dec!=null&&T.hasOwnProperty("dec"))L.dec=T.dec;return L},f.prototype.toJSON=function(){return this.constructor.toObject(this,k.default.util.toJSONOptions)},f})(),_})(),H})(),v})()});async function b(){let{$root:v}=await Promise.resolve().then(() => (cf(),pf)),H=await import("@cosmjs/proto-signing"),_=await import("@cosmjs/stargate"),f=H.Registry??H.default?.Registry,x=_.defaultRegistryTypes??_.default?.defaultRegistryTypes;return new f([...x,["/types.MsgSend",v.types.MsgSend],["/types.MsgDeposit",v.types.MsgDeposit]])}async function h(v,H=v===qf.Chain.THORChain?"thor":"maya"){let _=await import("@cosmjs/stargate"),f=_.AminoTypes??_.default?.AminoTypes,x=v===qf.Chain.THORChain?"thorchain":"mayachain";return new f({"/types.MsgDeposit":{aminoType:`${x}/MsgDeposit`,fromAmino:({signer:T,...B})=>({...B,signer:g(T)}),toAmino:({signer:T,...B})=>({...B,signer:r(T,H)})},"/types.MsgSend":{aminoType:`${x}/MsgSend`,fromAmino:({from_address:T,to_address:B,...L})=>({...L,fromAddress:g(T),toAddress:g(B)}),toAmino:({fromAddress:T,toAddress:B,...L})=>({...L,from_address:r(T,H),to_address:r(B,H)})}})}var qf;var Jf=A(()=>{Zf();qf=require("@swapkit/helpers")});async function Ff(v){let{assetValue:H,recipient:_,memo:f,sender:x,asSignable:T,asAminoMessage:B}=v,L=v.sweep?await Lf({assetValue:H,sender:x}):H;if(_)return bf({asAminoMessage:B,asSignable:T,assetValue:L,memo:f,recipient:_,sender:x});return df({asAminoMessage:B,asSignable:T,assetValue:L,memo:f,sender:x})}async function Lf({assetValue:v,sender:H}){let _=v.chain,f=await S.getRPCUrl(_),T=await(await M(f)).getAllBalances(H),B=v.isGasAsset?(await a(_)).getBaseValue("bigint"):0n;return i({assetValue:v,balances:T,denom:w(v.symbol,!0),feeAmount:B})}async function bf({sender:v,recipient:H,assetValue:_,memo:f="",asSignable:x=!0,asAminoMessage:T=!1,sequence:B,accountNumber:L}){let I=_.chain,q=await S.getRPCUrl(I),E=await jf({rpcUrl:q,sender:v}),{chainId:K}=S.getChainConfig(I),U=Of({assetValue:_,recipient:H,sender:v}),X=x?await l(T?U:$(U),I):U;return{accountNumber:L||Number(E.accountNumber),chainId:K,fee:D(I),memo:f,msgs:[X],sequence:B||E.sequence}}async function df({sender:v,assetValue:H,memo:_="",asSignable:f=!0,asAminoMessage:x=!1,sequence:T,accountNumber:B}){let L=H.chain,I=await S.getRPCUrl(L),q=await jf({rpcUrl:I,sender:v}),{chainId:E}=S.getChainConfig(L),K=Nf({assetValue:H,memo:_,sender:v}),U=f?await l(x?K:$(K),L):K;return{accountNumber:B||Number(q.accountNumber),chainId:E,fee:D(L),memo:_,msgs:[U],sequence:T||q.sequence}}function $(v){if(v.type==="thorchain/MsgSend"||v.type==="mayachain/MsgSend")return v;return{...v,value:{...v.value,coins:v.value.coins.map((H)=>{let _=S.AssetValue.from({asset:H.asset}),f=(_.isSynthetic?_.symbol.split("/")?.[1]:_.symbol)?.toUpperCase(),x=(_.isSynthetic?_.symbol.split("/")?.[0]:_.chain)?.toUpperCase();return{...H,asset:{chain:x,symbol:f,synth:_.isSynthetic,ticker:_.ticker}}})}}}async function ff({chain:v,memo:H,msgs:_}){let f=await b(),x=await h(v),T={typeUrl:"/cosmos.tx.v1beta1.TxBody",value:{memo:H,messages:_.map((B)=>x.fromAmino(B))}};return f.encode(T)}var S,Y0,q0,Of=({sender:v,recipient:H,assetValue:_})=>{return{type:`${_.chain===S.Chain.Maya?"mayachain":"thorchain"}/MsgSend`,value:{amount:[{amount:_.getBaseValue("string"),denom:w(_.symbol,!0)}],from_address:v,to_address:H}}},Nf=({sender:v,assetValue:H,memo:_=""})=>{return{type:`${H.chain===S.Chain.Maya?"mayachain":"thorchain"}/MsgDeposit`,value:{coins:[{amount:H.getBaseValue("string"),asset:s(H)}],memo:_,signer:v}}},vf=({sender:v,recipient:H,assetValue:_,memo:f})=>{return!H?Nf({assetValue:_,memo:f,sender:v}):Of({assetValue:_,recipient:H,sender:v})},l=async(v,H)=>{return(await h(H)).fromAmino(v)},jf=async({rpcUrl:v,sender:H})=>{let f=await(await M(v)).getAccount(H);if(!f)throw new S.SwapKitError("toolbox_cosmos_account_not_found",{sender:H});return f};var of=A(()=>{e();Jf();S=require("@swapkit/helpers"),Y0=D(S.Chain.THORChain).gas,q0=D(S.Chain.Maya).gas});var mf=()=>{};var tf=A(()=>{mf()});var Ef=A(()=>{Zf();of();Jf();tf()});async function Sf(v,H){try{let f=(await Uf.SwapKitApi.getGasRate()).find((x)=>x.chainId===v)?.value;return f?Number.parseFloat(f):H}catch{return H}}async function kf({phrase:v,prefix:H,..._}){let f=await import("@cosmjs/proto-signing"),x=await import("@cosmjs/crypto"),T=f.DirectSecp256k1HdWallet??f.default?.DirectSecp256k1HdWallet,B=x.stringToPath??x.default?.stringToPath,L="derivationPath"in _?_.derivationPath:`${z.DerivationPath[_.chain]}/${_.index}`;return await T.fromMnemonic(v,{hdPaths:[B(L)],prefix:H})}async function J0({privateKey:v,prefix:H}){let _=await import("@cosmjs/proto-signing");return(_.DirectSecp256k1Wallet??_.default?.DirectSecp256k1Wallet).fromKey(v,H)}function af(v){return async function({signature:_,message:f,address:x}){let T=await v(x);if(!T?.pubkey)throw new z.SwapKitError("toolbox_cosmos_verify_signature_no_pubkey");let B=await import("@cosmjs/crypto"),L=B.Secp256k1Signature??B.default?.Secp256k1Signature,I=B.Secp256k1??B.default?.Secp256k1,q=L.fromFixedLength(n.base64.decode(_));return I.verifySignature(q,n.base64.decode(f),T.pubkey.value)}}function xf({chain:v,...H}){let _=z.CosmosChainPrefixes[v],f="index"in H?H.index||0:0,x=z.derivationPathToString("derivationPath"in H&&H.derivationPath?H.derivationPath:z.updateDerivationPath(z.NetworkDerivationPath[v],{index:f})),T;async function B(){if(T)return T;return T=await Tf.match(H).with({phrase:Tf.P.string},({phrase:X})=>kf({derivationPath:x,phrase:X,prefix:_})).with({signer:Tf.P.any},({signer:X})=>X).otherwise(()=>{return}),T}async function L(X){let Y=await z.getRPCUrl(v);return(await M(Y)).getAccount(X)}async function I(){let X=await B(),[Y]=await X?.getAccounts()||[];return Y?.address}async function q(){let X=await B(),[Y]=await X?.getAccounts()||[];if(!Y?.pubkey)throw new z.SwapKitError("toolbox_cosmos_signer_not_defined");return n.base64.encode(Y?.pubkey)}async function E(X){let Y=await B(),Q=await I(),J=await z.getRPCUrl(v);if(!(Y&&Q))throw new z.SwapKitError("toolbox_cosmos_signer_not_defined");return await(await j(J,Y)).sign(Q,X.msgs,X.fee,X.memo,{accountNumber:BigInt(X.accountNumber),chainId:X.chainId,sequence:X.sequence})}async function K(X){let Y=await B(),Q=await I(),J=await z.getRPCUrl(v);if(!(Y&&Q))throw new z.SwapKitError("toolbox_cosmos_signer_not_defined");let N=await(await j(J,Y)).signAndBroadcast(Q,X.msgs,X.fee,X.memo);if(N.code!==0)throw new z.SwapKitError("core_swap_transaction_error",{code:N.code,message:N.rawLog});return N.transactionHash}async function U({recipient:X,assetValue:Y,memo:Q="",feeRate:J,feeOptionKey:O=z.FeeOption.Fast,sweep:N}){let C=await B(),V=await I();if(!(C&&V))throw new z.SwapKitError("toolbox_cosmos_signer_not_defined");let u=await z.getRPCUrl(v),d=z.AssetValue.from({chain:v}),Wf=s(d),Bf=F0(J||(await rf(v,gf[v]))[O],Wf,v),o=await j(u,C),m=w(Y.symbol),zf=[{amount:(N?i({assetValue:Y,balances:await Kf(v)(V),denom:m,feeAmount:_f(Bf.amount,m)}):Y).getBaseValue("string"),denom:m}],{transactionHash:Gf}=await o.sendTokens(V,X,zf,Bf,Q);return Gf}return{createPrivateKeyFromPhrase:K0(x),createTransaction:Xf,fetchFeeRateFromSwapKit:Sf,getAccount:L,getAddress:I,getBalance:async(X,Y)=>{let Q=await Kf(v)(X),J=await Promise.all(Q.filter(({denom:O})=>O&&!O.includes("IBC/")&&!([z.Chain.THORChain,z.Chain.Maya].includes(v)&&O.split("-").length>2)).map(({denom:O,amount:N})=>{let C=[z.Chain.THORChain,z.Chain.Maya].includes(v)&&(O.includes("/")||O.includes("˜"))?`${v}.${O}`:O;return Yf(C,N)}));if(J.length===0)return[z.AssetValue.from({chain:v})];return J},getBalanceAsDenoms:Kf(v),getFees:()=>rf(v,gf[v]),getPubKey:q,getSignerFromPhrase:({phrase:X,derivationPath:Y})=>kf({derivationPath:z.derivationPathToString(Y),index:f,phrase:X,prefix:_}),getSignerFromPrivateKey:async(X)=>{let Y=await import("@cosmjs/proto-signing");return(Y.DirectSecp256k1Wallet??Y.default?.DirectSecp256k1Wallet).fromKey(X,_)},signAndBroadcastTransaction:K,signTransaction:E,transfer:U,validateAddress:sf(v),verifySignature:af(L)}}async function O0(v,H){try{let f=(await Uf.SwapKitApi.getGasRate()).find((x)=>x.chainId===v)?.value;return f?Number.parseFloat(f):H}catch{return H}}function N0({assetValue:{chain:v}}){return z.AssetValue.from({chain:v,value:E0(v)})}async function rf(v,H){let{chainId:_,baseDecimal:f}=z.getChainConfig(v),x=await Sf(_,H);return{average:z.SwapKitNumber.fromBigInt(BigInt(x),f),fast:z.SwapKitNumber.fromBigInt(BigInt(z.applyFeeMultiplier(x,z.FeeOption.Fast,!0)),f),fastest:z.SwapKitNumber.fromBigInt(BigInt(z.applyFeeMultiplier(x,z.FeeOption.Fastest,!0)),f)}}function F0(v,H,_){return{amount:[{amount:typeof v==="number"?v.toString():v.getBaseValue("string"),denom:H}],gas:D(_).gas}}function E0(v){return{[z.Chain.Cosmos]:0.007,[z.Chain.Kujira]:0.02,[z.Chain.Noble]:0.01,[z.Chain.THORChain]:0.02,[z.Chain.Maya]:0.02,[z.Chain.Harbor]:0.02}[v]||0}function sf(v){let H=z.CosmosChainPrefixes[v];return function(f){if(!f.startsWith(H))return!1;try{let{prefix:x,words:T}=n.bech32.decode(f);return n.bech32.encode(x,T)===f.toLocaleLowerCase()}catch{return!1}}}function Kf(v){return async function(_){let f=await z.getRPCUrl(v);return(await(await M(f)).getAllBalances(_)).map((L)=>({...L,denom:L.denom.includes("/")?L.denom.toUpperCase():L.denom}))}}function K0(v){return async function(_){let f=await import("@cosmjs/crypto"),x=f.stringToPath??f.default?.stringToPath,T=f.Slip10Curve??f.default?.Slip10Curve,B=f.Slip10??f.default?.Slip10,L=f.EnglishMnemonic??f.default?.EnglishMnemonic,I=f.Bip39??f.default?.Bip39,q=new L(_),E=await I.mnemonicToSeed(q),{privkey:K}=B.derivePath(T.Secp256k1,E,x(v));return K}}var n,z,Uf,Tf,gf;var yf=A(()=>{e();n=require("@scure/base"),z=require("@swapkit/helpers"),Uf=require("@swapkit/helpers/api"),Tf=require("ts-pattern");gf={[z.Chain.Cosmos]:1000,[z.Chain.Kujira]:1000,[z.Chain.Noble]:1000,[z.Chain.THORChain]:5000000,[z.Chain.Maya]:5000000,[z.Chain.Harbor]:5000000}});function k0({prefix:v,derivationPath:H}){return async function(f,x=0){let T=await import("@cosmjs/amino"),B=T.Secp256k1HdWallet??T.default?.Secp256k1HdWallet,L=await import("@cosmjs/crypto"),I=L.stringToPath??L.default?.stringToPath;return B.fromMnemonic(f,{hdPaths:[I(`${H}/${x}`)],prefix:v})}}function U0(v){return p.base64.encode(v)}function S0(v,H){return async function({wallet:f,tx:x}){let{msgs:T,accountNumber:B,sequence:L,chainId:I,fee:q,memo:E}=typeof x==="string"?JSON.parse(x):x,K=(await f.getAccounts())?.[0]?.address||"",U=await h(v,H),X=await b(),Y=await Qf(f,{aminoTypes:U,registry:X}),Q=[];for(let N of T){let C=await l(N,v);Q.push(C)}let{signatures:[J]}=await Y.sign(K,Q,q,E,{accountNumber:BigInt(B),chainId:I,sequence:L});return{bodyBytes:await ff({chain:v,memo:E,msgs:T.map($)}),signature:U0(J)}}}function C0({prefix:v,chain:H}){return async function(f,x,T,B,L){let I=await F.getRPCUrl(H),{encodeSecp256k1Pubkey:q,pubkeyToAddress:E}=(await import("@cosmjs/amino")).default,{makeMultisignedTxBytes:K}=(await import("@cosmjs/stargate")).default,{sequence:U,fee:X}=JSON.parse(f),Y=await ef(T,B),Q=x.map((N)=>[E(q(p.base64.decode(N.pubKey)),v),p.base64.decode(N.signature)]),J=await M(I),{transactionHash:O}=await J.broadcastTx(K(Y,U,X,L,new Map(Q)));return O}}async function ef(v,H,_=!0){let{createMultisigThresholdPubkey:f,encodeSecp256k1Pubkey:x}=(await import("@cosmjs/amino")).default;return f(v.map((T)=>x(p.base64.decode(T))),H,_)}function A0(v){return p.base64.decode(v)}async function R0({privateKey:v,message:H}){let{Secp256k1:_}=(await import("@cosmjs/crypto")).default,f=await _.createSignature(p.base64.decode(H),v);return p.base64.encode(Buffer.concat([f.r(32),f.s(32)]))}function Cf({chain:v,...H}){let{isStagenet:_}=F.SKConfig.get("envs"),f=`${_?"s":""}${F.CosmosChainPrefixes[v]}`,x="index"in H?H.index||0:0,T="derivationPath"in H&&H.derivationPath?H.derivationPath:F.updateDerivationPath(F.NetworkDerivationPath[v],{index:x}),B=xf({chain:v,...H}),L=D(v),I;function q(){return I??=Hf.match(H).with({phrase:Hf.P.string},({phrase:Q})=>B.getSignerFromPhrase({derivationPath:T,phrase:Q})).with({signer:Hf.P.any},({signer:Q})=>Promise.resolve(Q)).otherwise(()=>Promise.resolve(void 0)),I}async function E(){let Q=await F.getRPCUrl(v),J=await q();if(!J)throw new F.SwapKitError("toolbox_cosmos_no_signer");let O=await b(),N=await h(v,f),C=await j(Q,J,{aminoTypes:N,registry:O});return{signer:J,signingClient:C}}async function K({fee:Q,memo:J,msgs:O}){let{signer:N,signingClient:C}=await E(),V=(await N.getAccounts())?.[0]?.address;if(!V)throw new F.SwapKitError("toolbox_cosmos_signer_not_defined");let u=await C.signAndBroadcast(V,O,Q,J);if(u.code!==0)throw new F.SwapKitError("core_swap_transaction_error",{code:u.code,message:u.rawLog});return u.transactionHash}async function U(){let Q=await a(v);return{[F.FeeOption.Average]:Q,[F.FeeOption.Fast]:Q,[F.FeeOption.Fastest]:Q}}async function X({assetValue:Q,memo:J="",recipient:O,sweep:N}){let{TxRaw:C}=await import("cosmjs-types/cosmos/tx/v1beta1/tx"),{signer:V,signingClient:u}=await E(),d=(await V.getAccounts())?.[0]?.address;if(!d)throw new F.SwapKitError("toolbox_cosmos_no_signer");let Wf="signAmino"in V,Bf=N?await Lf({assetValue:Q,sender:d}):Q,o=vf({assetValue:Bf,memo:J,recipient:O,sender:d});if(Wf){let zf=await l(o,v),{signatures:Gf,authInfoBytes:T0}=await u.sign(d,[zf],L,J),x0=C.encode({authInfoBytes:T0,bodyBytes:await ff({chain:v,memo:J,msgs:[o].map($)}),signatures:Gf}).finish();return(await u.broadcastTx(x0)).transactionHash}let m=$(o),Rf=await l(m,v);return K({fee:L,memo:J,msgs:[Rf]})}async function Y(Q){let{signer:J,signingClient:O}=await E(),N=(await J.getAccounts())?.[0]?.address;if(!N)throw new F.SwapKitError("toolbox_cosmos_signer_not_defined");return O.sign(N,Q.msgs,Q.fee,Q.memo,{accountNumber:BigInt(Q.accountNumber),chainId:Q.chainId,sequence:Q.sequence})}return{...B,broadcastMultisigTx:C0({chain:v,prefix:f}),buildAminoMsg:vf,buildEncodedTxBody:ff,convertToSignable:l,createDefaultAminoTypes:()=>h(v,f),createDefaultRegistry:b,createMultisig:ef,createTransaction:Ff,deposit:X,getFees:U,importSignature:A0,parseAminoMessageForDirectSigning:$,pubkeyToAddress:async(Q)=>{let{pubkeyToAddress:J}=(await import("@cosmjs/amino")).default;return J(Q,f)},secp256k1HdWalletFromMnemonic:k0({derivationPath:F.derivationPathToString(T),prefix:f}),signAndBroadcastTransaction:K,signMultisigTx:S0(v,f),signTransaction:Y,signWithPrivateKey:R0,transfer:X}}var p,F,Hf;var Af=A(()=>{Ef();e();yf();p=require("@scure/base"),F=require("@swapkit/helpers"),Hf=require("ts-pattern")});var c,D0=(v,H)=>{switch(v){case c.Chain.Cosmos:case c.Chain.Kujira:case c.Chain.Noble:return xf({chain:v,...H});case c.Chain.Maya:case c.Chain.THORChain:return Cf({chain:v,...H});default:throw new c.SwapKitError("toolbox_cosmos_not_supported",{chain:v})}};var f0=A(()=>{yf();Af();c=require("@swapkit/helpers");yf();Af()});var M0={};uf(M0,{verifySignature:()=>af,transferMsgAmino:()=>Of,toBase64:()=>Z0,resolveThorchainSweepAssetValue:()=>Lf,parseAminoMessageForDirectSigning:()=>$,getThorchainNativeFee:()=>a,getSweepAssetValue:()=>i,getSignerFromPrivateKey:()=>J0,getSignerFromPhrase:()=>kf,getMsgSendDenom:()=>w,getFeeRateFromSwapKit:()=>O0,getFeeAmountForDenom:()=>_f,getDenomWithChain:()=>s,getDefaultChainFee:()=>D,getCosmosToolbox:()=>D0,getCosmosAddressValidator:()=>sf,getAssetFromDenom:()=>Yf,fromBase64:()=>I0,fetchFeeRateFromSwapKit:()=>Sf,estimateTransactionFee:()=>N0,depositMsgAmino:()=>Nf,createTransaction:()=>Ff,createThorchainToolbox:()=>Cf,createStargateClient:()=>M,createSigningStargateClient:()=>j,createOfflineStargateClient:()=>Qf,createDefaultRegistry:()=>b,createDefaultAminoTypes:()=>h,createCosmosToolbox:()=>xf,cosmosCreateTransaction:()=>Xf,convertToSignable:()=>l,buildTransferTx:()=>bf,buildEncodedTxBody:()=>ff,buildDepositTx:()=>df,buildAminoMsg:()=>vf,bech32ToBase64:()=>g,base64ToBech32:()=>r,YUM_KUJIRA_FACTORY_DENOM:()=>hf,USK_KUJIRA_FACTORY_DENOM:()=>If,THORCHAIN_GAS_VALUE:()=>Y0,MAYA_GAS_VALUE:()=>q0,DEFAULT_NOBLE_FEE_MAINNET:()=>nf,DEFAULT_KUJI_FEE_MAINNET:()=>$f,DEFAULT_COSMOS_FEE_MAINNET:()=>lf});module.exports=W0(M0);var V0=A(()=>{Ef();f0();e()});V0();
@@ -1 +1 @@
1
- import{fa as i}from"../../chunk-fjyc6m34.js";import{base64 as N,bech32 as A}from"@scure/base";import{SwapKitError as Ko}from"@swapkit/helpers";function O(o){return N.encode(Uint8Array.from(A.fromWords(A.decode(o).words)))}function U(o,t="thor"){return A.encode(t,A.toWords(N.decode(o)))}function st(o){return N.encode(o)}function Pt(o){if(!o.match(/^[a-zA-Z0-9+/]*={0,2}$/))throw new Ko("toolbox_cosmos_invalid_params",{error:"Invalid base64 string format"});return N.decode(o)}import{AssetValue as Vo,Chain as b,getChainConfig as mo,getRPCUrl as eo,SwapKitError as ho}from"@swapkit/helpers";import{AssetValue as g,Chain as x,getChainConfig as C,getRPCUrl as lo,SwapKitError as yo}from"@swapkit/helpers";var wo="FACTORY/KUJIRA1QK00H5ATUTPSV900X202PXX42NPJR9THG58DNQPA72F2P7M2LUASE444A7/UUSK",Ao="FACTORY/KUJIRA1YGFXN0ER40KLCNCK8THLTUPRDXLCK6WVNPKF2K/UYUM",No={amount:[{amount:"500",denom:"uatom"}],gas:"200000"},Oo={amount:[{amount:"1000",denom:"ukuji"}],gas:"200000"},Uo={amount:[{amount:"1000",denom:"uusdc"}],gas:"200000"};function P(o){switch(o){case x.Maya:return{amount:[],gas:"10000000000"};case x.THORChain:return{amount:[],gas:"500000000"};case x.Kujira:return Oo;case x.Noble:return Uo;default:return No}}var z=(o,t=!1)=>{if(t)return o.toLowerCase();switch(o){case"uUSK":case"USK":return wo;case"uYUM":case"YUM":return Ao;case"uKUJI":case"KUJI":return"ukuji";case"ATOM":case"uATOM":return"uatom";case"uUSDC":case"USDC":return"uusdc";default:return o}},E=({symbol:o,chain:t})=>{if(t===x.Maya)return(o.toUpperCase()!=="CACAO"?o:`${x.Maya}.${o}`).toUpperCase();if(t===x.THORChain)return(["RUNE","TCY","RUJI"].includes(o.toUpperCase())?`${x.THORChain}.${o}`:o).toUpperCase();return z(o,!1)};async function j(o){let t=await import("@cosmjs/stargate"),p=t.StargateClient??t.default?.StargateClient,r=typeof window<"u"?{}:{referer:"https://sdk.swapkit.dev",referrer:"https://sdk.swapkit.dev"};return p.connect({headers:r,url:o})}async function X(o,t,p={}){let r=await import("@cosmjs/stargate"),f=r.SigningStargateClient??r.default?.SigningStargateClient,c=r.GasPrice??r.default?.GasPrice,n=typeof p==="string"?p:"0.0003uatom",T=typeof p==="string"?{}:p;return f.connectWithSigner(o,t,{gasPrice:c.fromString(n),...T})}async function To(o,t){let p=await import("@cosmjs/stargate");return(p.SigningStargateClient??p.default?.SigningStargateClient).offline(o,t)}var Eo=(o)=>{switch(o){case x.Maya:case x.THORChain:return"/types.MsgSend";case x.Cosmos:case x.Kujira:case x.Noble:return"/cosmos.bank.v1beta1.MsgSend";default:throw new yo("toolbox_cosmos_not_supported",{chain:o})}};async function xo({sender:o,recipient:t,assetValue:p,memo:r="",feeRate:f,sequence:c,accountNumber:n}){let{chain:T,chainId:m}=p,d=await lo(T),k=await(await j(d)).getAccount(o);if(!k)throw new yo("toolbox_cosmos_account_not_found",{sender:o});let R=g.from({chain:T}),w=z(R.symbol),u=P(T),v=w&&f?{amount:[{amount:f.toString(),denom:w}],gas:u.gas}:u,B={amount:[{amount:p.getBaseValue("string"),denom:z(p.symbol)}],fromAddress:o,toAddress:t};return{accountNumber:n??Number(k.accountNumber),chainId:m,fee:v,memo:r,msgs:[{typeUrl:Eo(T),value:B}],sequence:c??k.sequence}}var bo={atom:{chain:x.Cosmos,decimals:C(x.Cosmos).baseDecimal},cacao:{chain:x.Maya,decimals:10},kuji:{chain:x.Kujira,decimals:C(x.Kujira).baseDecimal},maya:{asset:`${x.Maya}.${x.Maya}`,decimals:4},rune:{chain:x.THORChain,decimals:C(x.THORChain).baseDecimal},tcy:{asset:"THOR.TCY",decimals:C(x.THORChain).baseDecimal},uatom:{chain:x.Cosmos,decimals:C(x.Cosmos).baseDecimal},ukuji:{chain:x.Kujira,decimals:C(x.Kujira).baseDecimal},usdc:{chain:x.Noble,decimals:C(x.Noble).baseDecimal},uusdc:{chain:x.Noble,decimals:C(x.Noble).baseDecimal},"x/kuji":{asset:"THOR.KUJI",decimals:C(x.THORChain).baseDecimal},[wo.toLowerCase()]:{asset:`${x.Kujira}.USK`,decimals:C(x.Kujira).baseDecimal}},uo=(o,t)=>{let p=bo[o.toLowerCase()];if(!p)return g.from({asset:o,fromBaseDecimal:8,value:t});let{chain:r,asset:f,decimals:c}=p,n=r?{chain:r}:{asset:f};return g.from({...n,fromBaseDecimal:c,value:t})};import{Chain as Mo}from"@swapkit/helpers";async function J(){let{$root:o}=await import("../../chunk-9psy287z.js"),t=await import("@cosmjs/proto-signing"),p=await import("@cosmjs/stargate"),r=t.Registry??t.default?.Registry,f=p.defaultRegistryTypes??p.default?.defaultRegistryTypes;return new r([...f,["/types.MsgSend",o.types.MsgSend],["/types.MsgDeposit",o.types.MsgDeposit]])}async function D(o){let t=await import("@cosmjs/stargate"),p=t.AminoTypes??t.default?.AminoTypes,r=o===Mo.THORChain?"thorchain":"mayachain";return new p({"/types.MsgDeposit":{aminoType:`${r}/MsgDeposit`,fromAmino:({signer:f,...c})=>({...c,signer:O(f)}),toAmino:({signer:f,...c})=>({...c,signer:U(f)})},"/types.MsgSend":{aminoType:`${r}/MsgSend`,fromAmino:({from_address:f,to_address:c,...n})=>({...n,fromAddress:O(f),toAddress:O(c)}),toAmino:({fromAddress:f,toAddress:c,...n})=>({...n,from_address:U(f),to_address:U(c)})}})}var Yt=P(b.THORChain).gas,Ft=P(b.Maya).gas,io=({sender:o,recipient:t,assetValue:p})=>{return{type:`${p.chain===b.Maya?"mayachain":"thorchain"}/MsgSend`,value:{amount:[{amount:p.getBaseValue("string"),denom:z(p.symbol,!0)}],from_address:o,to_address:t}}},ko=({sender:o,assetValue:t,memo:p=""})=>{return{type:`${t.chain===b.Maya?"mayachain":"thorchain"}/MsgDeposit`,value:{coins:[{amount:t.getBaseValue("string"),asset:E(t)}],memo:p,signer:o}}},oo=({sender:o,recipient:t,assetValue:p,memo:r})=>{return!t?ko({assetValue:p,memo:r,sender:o}):io({assetValue:p,recipient:t,sender:o})},G=async(o,t)=>{return(await D(t)).fromAmino(o)},vo=async({rpcUrl:o,sender:t})=>{let r=await(await j(o)).getAccount(t);if(!r)throw new ho("toolbox_cosmos_account_not_found",{sender:t});return r};function Wo(o){let{assetValue:t,recipient:p,memo:r,sender:f,asSignable:c,asAminoMessage:n}=o;if(p)return ao({asAminoMessage:n,asSignable:c,assetValue:t,memo:r,recipient:p,sender:f});return go({asAminoMessage:n,asSignable:c,assetValue:t,memo:r,sender:f})}async function ao({sender:o,recipient:t,assetValue:p,memo:r="",asSignable:f=!0,asAminoMessage:c=!1,sequence:n,accountNumber:T}){let m=p.chain,d=await eo(m),H=await vo({rpcUrl:d,sender:o}),{chainId:k}=mo(m),R=io({assetValue:p,recipient:t,sender:o}),w=f?await G(c?R:Z(R),m):R;return{accountNumber:T||Number(H.accountNumber),chainId:k,fee:P(m),memo:r,msgs:[w],sequence:n||H.sequence}}async function go({sender:o,assetValue:t,memo:p="",asSignable:r=!0,asAminoMessage:f=!1,sequence:c,accountNumber:n}){let T=t.chain,m=await eo(T),d=await vo({rpcUrl:m,sender:o}),{chainId:H}=mo(T),k=ko({assetValue:t,memo:p,sender:o}),R=r?await G(f?k:Z(k),T):k;return{accountNumber:n||Number(d.accountNumber),chainId:H,fee:P(T),memo:p,msgs:[R],sequence:c||d.sequence}}function Z(o){if(o.type==="thorchain/MsgSend"||o.type==="mayachain/MsgSend")return o;return{...o,value:{...o.value,coins:o.value.coins.map((t)=>{let p=Vo.from({asset:t.asset}),r=(p.isSynthetic?p.symbol.split("/")?.[1]:p.symbol)?.toUpperCase(),f=(p.isSynthetic?p.symbol.split("/")?.[0]:p.chain)?.toUpperCase();return{...t,asset:{chain:f,symbol:r,synth:p.isSynthetic,ticker:p.ticker}}})}}}async function M({chain:o,memo:t,msgs:p}){let r=await J(),f=await D(o),c={typeUrl:"/cosmos.tx.v1beta1.TxBody",value:{memo:t,messages:p.map((n)=>f.fromAmino(n))}};return r.encode(c)}import{Chain as l,SwapKitError as _t}from"@swapkit/helpers";import{base64 as po,bech32 as to}from"@scure/base";import{AssetValue as fo,applyFeeMultiplier as Ho,Chain as I,CosmosChainPrefixes as Co,DerivationPath as ot,derivationPathToString as Bo,FeeOption as co,getChainConfig as tt,getRPCUrl as K,NetworkDerivationPath as rt,SwapKitError as Y,SwapKitNumber as ro,updateDerivationPath as pt}from"@swapkit/helpers";import{SwapKitApi as so}from"@swapkit/helpers/api";import{match as ft,P as Io}from"ts-pattern";async function Po(o,t){try{let r=(await so.getGasRate()).find((f)=>f.chainId===o)?.value;return r?Number.parseFloat(r):t}catch{return t}}async function Ro({phrase:o,prefix:t,...p}){let r=await import("@cosmjs/proto-signing"),f=await import("@cosmjs/crypto"),c=r.DirectSecp256k1HdWallet??r.default?.DirectSecp256k1HdWallet,n=f.stringToPath??f.default?.stringToPath,T="derivationPath"in p?p.derivationPath:`${ot[p.chain]}/${p.index}`;return await c.fromMnemonic(o,{hdPaths:[n(T)],prefix:t})}async function at({privateKey:o,prefix:t}){let p=await import("@cosmjs/proto-signing");return(p.DirectSecp256k1Wallet??p.default?.DirectSecp256k1Wallet).fromKey(o,t)}var _o={[I.Cosmos]:1000,[I.Kujira]:1000,[I.Noble]:1000,[I.THORChain]:5000000,[I.Maya]:5000000,[I.Harbor]:5000000};function ct(o){return async function({signature:p,message:r,address:f}){let c=await o(f);if(!c?.pubkey)throw new Y("toolbox_cosmos_verify_signature_no_pubkey");let n=await import("@cosmjs/crypto"),T=n.Secp256k1Signature??n.default?.Secp256k1Signature,m=n.Secp256k1??n.default?.Secp256k1,d=T.fromFixedLength(po.decode(p));return m.verifySignature(d,po.decode(r),c.pubkey.value)}}function V({chain:o,...t}){let p=Co[o],r="index"in t?t.index||0:0,f=Bo("derivationPath"in t&&t.derivationPath?t.derivationPath:pt(rt[o],{index:r})),c;async function n(){if(c)return c;return c=await ft(t).with({phrase:Io.string},({phrase:w})=>Ro({derivationPath:f,phrase:w,prefix:p})).with({signer:Io.any},({signer:w})=>w).otherwise(()=>{return}),c}async function T(w){let u=await K(o);return(await j(u)).getAccount(w)}async function m(){let w=await n(),[u]=await w?.getAccounts()||[];return u?.address}async function d(){let w=await n(),[u]=await w?.getAccounts()||[];if(!u?.pubkey)throw new Y("toolbox_cosmos_signer_not_defined");return po.encode(u?.pubkey)}async function H(w){let u=await n(),v=await m(),B=await K(o);if(!(u&&v))throw new Y("toolbox_cosmos_signer_not_defined");return await(await X(B,u)).sign(v,w.msgs,w.fee,w.memo,{accountNumber:BigInt(w.accountNumber),chainId:w.chainId,sequence:w.sequence})}async function k(w){let u=await n(),v=await m(),B=await K(o);if(!(u&&v))throw new Y("toolbox_cosmos_signer_not_defined");let y=await(await X(B,u)).signAndBroadcast(v,w.msgs,w.fee,w.memo);if(y.code!==0)throw new Y("core_swap_transaction_error",{code:y.code,message:y.rawLog});return y.transactionHash}async function R({recipient:w,assetValue:u,memo:v="",feeRate:B,feeOptionKey:W=co.Fast}){let y=await n(),e=await m();if(!(y&&e))throw new Y("toolbox_cosmos_signer_not_defined");let _=await K(o),$=fo.from({chain:o}),s=E($),S=B||nt((await $o(o,_o[o]))[W],s),L=await X(_,y),h=z(u.symbol),q=[{amount:u.getBaseValue("string"),denom:h}],{transactionHash:a}=await L.sendTokens(e,w,q,S,v);return a}return{createPrivateKeyFromPhrase:Tt(f),createTransaction:xo,fetchFeeRateFromSwapKit:Po,getAccount:T,getAddress:m,getBalance:async(w,u)=>{let v=await Lo(o)(w),B=await Promise.all(v.filter(({denom:W})=>W&&!W.includes("IBC/")&&!([I.THORChain,I.Maya].includes(o)&&W.split("-").length>2)).map(({denom:W,amount:y})=>{let e=[I.THORChain,I.Maya].includes(o)&&(W.includes("/")||W.includes("˜"))?`${o}.${W}`:W;return uo(e,y)}));if(B.length===0)return[fo.from({chain:o})];return B},getBalanceAsDenoms:Lo(o),getFees:()=>$o(o,_o[o]),getPubKey:d,getSignerFromPhrase:({phrase:w,derivationPath:u})=>Ro({derivationPath:Bo(u),index:r,phrase:w,prefix:p}),getSignerFromPrivateKey:async(w)=>{let u=await import("@cosmjs/proto-signing");return(u.DirectSecp256k1Wallet??u.default?.DirectSecp256k1Wallet).fromKey(w,p)},signAndBroadcastTransaction:k,signTransaction:H,transfer:R,validateAddress:wt(o),verifySignature:ct(T)}}async function gt(o,t){try{let r=(await so.getGasRate()).find((f)=>f.chainId===o)?.value;return r?Number.parseFloat(r):t}catch{return t}}function or({assetValue:{chain:o}}){return fo.from({chain:o,value:yt(o)})}async function $o(o,t){let{chainId:p,baseDecimal:r}=tt(o),f=await Po(p,t);return{average:ro.fromBigInt(BigInt(f),r),fast:ro.fromBigInt(BigInt(Ho(f,co.Fast,!0)),r),fastest:ro.fromBigInt(BigInt(Ho(f,co.Fastest,!0)),r)}}function nt(o,t){return{amount:[{amount:o.getBaseValue("string"),denom:t}],gas:"200000"}}function yt(o){return{[I.Cosmos]:0.007,[I.Kujira]:0.02,[I.Noble]:0.01,[I.THORChain]:0.02,[I.Maya]:0.02,[I.Harbor]:0.02}[o]||0}function wt(o){let t=Co[o];return function(r){if(!r.startsWith(t))return!1;try{let{prefix:f,words:c}=to.decode(r);return to.encode(f,c)===r.toLocaleLowerCase()}catch{return!1}}}function Lo(o){return async function(p){let r=await K(o);return(await(await j(r)).getAllBalances(p)).map((T)=>({...T,denom:T.denom.includes("/")?T.denom.toUpperCase():T.denom}))}}function Tt(o){return async function(p){let r=await import("@cosmjs/crypto"),f=r.stringToPath??r.default?.stringToPath,c=r.Slip10Curve??r.default?.Slip10Curve,n=r.Slip10??r.default?.Slip10,T=r.EnglishMnemonic??r.default?.EnglishMnemonic,m=r.Bip39??r.default?.Bip39,d=new T(p),H=await m.mnemonicToSeed(d),{privkey:k}=n.derivePath(c.Secp256k1,H,f(o));return k}}import{base64 as Q}from"@scure/base";import{Chain as xt,CosmosChainPrefixes as ut,derivationPathToString as mt,FeeOption as no,getChainConfig as et,getRPCUrl as Go,NetworkDerivationPath as it,RequestClient as dt,SKConfig as jo,SwapKitError as F,SwapKitNumber as So,updateDerivationPath as kt}from"@swapkit/helpers";import{match as zo,P as Do}from"ts-pattern";function vt({prefix:o,derivationPath:t}){return async function(r,f=0){let c=await import("@cosmjs/amino"),n=c.Secp256k1HdWallet??c.default?.Secp256k1HdWallet,T=await import("@cosmjs/crypto"),m=T.stringToPath??T.default?.stringToPath;return n.fromMnemonic(r,{hdPaths:[m(`${t}/${f}`)],prefix:o})}}function Wt(o){return Q.encode(o)}function Ht(o){return async function({wallet:p,tx:r}){let{msgs:f,accountNumber:c,sequence:n,chainId:T,fee:m,memo:d}=typeof r==="string"?JSON.parse(r):r,H=(await p.getAccounts())?.[0]?.address||"",k=await D(o),R=await J(),w=await To(p,{aminoTypes:k,registry:R}),u=[];for(let W of f){let y=await G(W,o);u.push(y)}let{signatures:[v]}=await w.sign(H,u,m,d,{accountNumber:BigInt(c),chainId:T,sequence:n});return{bodyBytes:await M({chain:o,memo:d,msgs:f.map(Z)}),signature:Wt(v)}}}function Bt({prefix:o,chain:t}){return async function(r,f,c,n,T){let m=await Go(t),{encodeSecp256k1Pubkey:d,pubkeyToAddress:H}=(await import("@cosmjs/amino")).default,{makeMultisignedTxBytes:k}=(await import("@cosmjs/stargate")).default,{sequence:R,fee:w}=JSON.parse(r),u=await Zo(c,n),v=f.map((y)=>[H(d(Q.decode(y.pubKey)),o),Q.decode(y.signature)]),B=await j(m),{transactionHash:W}=await B.broadcastTx(k(u,R,w,T,new Map(v)));return W}}async function Zo(o,t,p=!0){let{createMultisigThresholdPubkey:r,encodeSecp256k1Pubkey:f}=(await import("@cosmjs/amino")).default;return r(o.map((c)=>f(Q.decode(c))),t,p)}function It(o){return Q.decode(o)}async function Rt({privateKey:o,message:t}){let{Secp256k1:p}=(await import("@cosmjs/crypto")).default,r=await p.createSignature(Q.decode(t),o);return Q.encode(Buffer.concat([r.r(32),r.s(32)]))}function Qo({chain:o,...t}){let{isStagenet:p}=jo.get("envs"),r=jo.get("thornodeUrls"),f=o===xt.Maya,c=zo({isMayachain:f,isStagenet:p}).with({isMayachain:!0},({isStagenet:y})=>y?r.MAYA_STAGENET:r.MAYA).otherwise(({isStagenet:y})=>y?r.THOR_STAGENET:r.THOR),n=`${p?"s":""}${ut[o]}`,T="index"in t?t.index||0:0,m="derivationPath"in t&&t.derivationPath?t.derivationPath:kt(it[o],{index:T}),d=V({chain:o,...t}),H=P(o),k;function R(){return k??=zo(t).with({phrase:Do.string},({phrase:y})=>d.getSignerFromPhrase({derivationPath:m,phrase:y})).with({signer:Do.any},({signer:y})=>Promise.resolve(y)).otherwise(()=>Promise.resolve(void 0)),k}async function w(){let y=await Go(o),e=await R();if(!e)throw new F("toolbox_cosmos_no_signer");let _=await J(),$=await D(o),s=await X(y,e,{aminoTypes:$,registry:_});return{signer:e,signingClient:s}}async function u({fee:y,memo:e,msgs:_}){let{signer:$,signingClient:s}=await w(),S=(await $.getAccounts())?.[0]?.address;if(!S)throw new F("toolbox_cosmos_signer_not_defined");let L=await s.signAndBroadcast(S,_,y,e);if(L.code!==0)throw new F("core_swap_transaction_error",{code:L.code,message:L.rawLog});return L.transactionHash}async function v(){let y,e=`${c}/${f?"mayachain":"thorchain"}/constants`;try{let{int_64_values:{NativeTransactionFee:_}}=await dt.get(e);if(!_||Number.isNaN(_)||_<0)throw new F("toolbox_cosmos_invalid_fee",{nativeFee:_.toString()});y=new So(_)}catch{y=new So({decimal:et(o).baseDecimal,value:f?1:0.02})}return{[no.Average]:y,[no.Fast]:y,[no.Fastest]:y}}async function B({assetValue:y,memo:e="",recipient:_}){let{TxRaw:$}=await import("cosmjs-types/cosmos/tx/v1beta1/tx"),{signer:s,signingClient:S}=await w(),L=(await s.getAccounts())?.[0]?.address;if(!L)throw new F("toolbox_cosmos_no_signer");let h="signAmino"in s,q=oo({assetValue:y,memo:e,recipient:_,sender:L});if(h){let Jo=await G(q,o),{signatures:Yo,authInfoBytes:Fo}=await S.sign(L,[Jo],H,e),qo=$.encode({authInfoBytes:Fo,bodyBytes:await M({chain:o,memo:e,msgs:[q].map(Z)}),signatures:Yo}).finish();return(await S.broadcastTx(qo)).transactionHash}let a=Z(q),Xo=await G(a,o);return u({fee:H,memo:e,msgs:[Xo]})}async function W(y){let{signer:e,signingClient:_}=await w(),$=(await e.getAccounts())?.[0]?.address;if(!$)throw new F("toolbox_cosmos_signer_not_defined");return _.sign($,y.msgs,y.fee,y.memo,{accountNumber:BigInt(y.accountNumber),chainId:y.chainId,sequence:y.sequence})}return{...d,broadcastMultisigTx:Bt({chain:o,prefix:n}),buildAminoMsg:oo,buildEncodedTxBody:M,convertToSignable:G,createDefaultAminoTypes:()=>D(o),createDefaultRegistry:J,createMultisig:Zo,createTransaction:Wo,deposit:B,getFees:v,importSignature:It,parseAminoMessageForDirectSigning:Z,pubkeyToAddress:async(y)=>{let{pubkeyToAddress:e}=(await import("@cosmjs/amino")).default;return e(y,n)},secp256k1HdWalletFromMnemonic:vt({derivationPath:mt(m),prefix:n}),signAndBroadcastTransaction:u,signMultisigTx:Ht(o),signTransaction:W,signWithPrivateKey:Rt,transfer:B}}var mr=(o,t)=>{switch(o){case l.Cosmos:case l.Kujira:case l.Noble:return V({chain:o,...t});case l.Maya:case l.THORChain:return Qo({chain:o,...t});default:throw new _t("toolbox_cosmos_not_supported",{chain:o})}};export{ct as verifySignature,io as transferMsgAmino,st as toBase64,Z as parseAminoMessageForDirectSigning,at as getSignerFromPrivateKey,Ro as getSignerFromPhrase,z as getMsgSendDenom,gt as getFeeRateFromSwapKit,E as getDenomWithChain,P as getDefaultChainFee,mr as getCosmosToolbox,wt as getCosmosAddressValidator,uo as getAssetFromDenom,Pt as fromBase64,Po as fetchFeeRateFromSwapKit,or as estimateTransactionFee,ko as depositMsgAmino,Wo as createTransaction,Qo as createThorchainToolbox,j as createStargateClient,X as createSigningStargateClient,To as createOfflineStargateClient,J as createDefaultRegistry,D as createDefaultAminoTypes,V as createCosmosToolbox,xo as cosmosCreateTransaction,G as convertToSignable,ao as buildTransferTx,M as buildEncodedTxBody,go as buildDepositTx,oo as buildAminoMsg,O as bech32ToBase64,U as base64ToBech32,Ao as YUM_KUJIRA_FACTORY_DENOM,wo as USK_KUJIRA_FACTORY_DENOM,Yt as THORCHAIN_GAS_VALUE,Ft as MAYA_GAS_VALUE,Uo as DEFAULT_NOBLE_FEE_MAINNET,Oo as DEFAULT_KUJI_FEE_MAINNET,No as DEFAULT_COSMOS_FEE_MAINNET};
1
+ import{ga as u}from"../../chunk-xbdjxeqd.js";import{base64 as M,bech32 as E}from"@scure/base";import{SwapKitError as Eo}from"@swapkit/helpers";function b(o){return M.encode(Uint8Array.from(E.fromWords(E.decode(o).words)))}function l(o,t="thor"){return E.encode(t,E.toWords(M.decode(o)))}function Qt(o){return M.encode(o)}function St(o){if(!o.match(/^[a-zA-Z0-9+/]*={0,2}$/))throw new Eo("toolbox_cosmos_invalid_params",{error:"Invalid base64 string format"});return M.decode(o)}import{AssetValue as ao,Chain as h,getChainConfig as Lo,getRPCUrl as co,SwapKitError as ot}from"@swapkit/helpers";import{AssetValue as po,Chain as x,getChainConfig as L,getRPCUrl as Mo,RequestClient as bo,SKConfig as Bo,SwapKitError as V,SwapKitNumber as fo}from"@swapkit/helpers";var Io="FACTORY/KUJIRA1QK00H5ATUTPSV900X202PXX42NPJR9THG58DNQPA72F2P7M2LUASE444A7/UUSK",lo="FACTORY/KUJIRA1YGFXN0ER40KLCNCK8THLTUPRDXLCK6WVNPKF2K/UYUM",Vo={amount:[{amount:"500",denom:"uatom"}],gas:"200000"},go={amount:[{amount:"1000",denom:"ukuji"}],gas:"200000"},so={amount:[{amount:"1000",denom:"uusdc"}],gas:"200000"};function j(o){switch(o){case x.Maya:return{amount:[],gas:"10000000000"};case x.THORChain:return{amount:[],gas:"500000000"};case x.Kujira:return go;case x.Noble:return so;default:return Vo}}async function g(o){let{isStagenet:t}=Bo.get("envs"),p=Bo.get("thornodeUrls"),r=o===x.Maya,y=`${r?t?p.MAYA_STAGENET:p.MAYA:t?p.THOR_STAGENET:p.THOR}/${r?"mayachain":"thorchain"}/constants`,c=L(o).baseDecimal;try{let{int_64_values:{NativeTransactionFee:w}}=await bo.get(y);if(!Number.isInteger(w)||w<=0)throw new V("toolbox_cosmos_invalid_fee",{nativeFee:w.toString()});return fo.fromBigInt(BigInt(w),c)}catch{let w=r?10000000000n:2000000n;return fo.fromBigInt(w,c)}}var Z=(o,t=!1)=>{if(t)return o.toLowerCase();switch(o){case"uUSK":case"USK":return Io;case"uYUM":case"YUM":return lo;case"uKUJI":case"KUJI":return"ukuji";case"ATOM":case"uATOM":return"uatom";case"uUSDC":case"USDC":case"NOBLE":return"uusdc";default:return o}},s=({symbol:o,chain:t})=>{if(t===x.Maya)return(o.toUpperCase()!=="CACAO"?o:`${x.Maya}.${o}`).toUpperCase();if(t===x.THORChain)return(["RUNE","TCY","RUJI"].includes(o.toUpperCase())?`${x.THORChain}.${o}`:o).toUpperCase();return Z(o,!1)};async function G(o){let t=await import("@cosmjs/stargate"),p=t.StargateClient??t.default?.StargateClient,r=typeof window<"u"?{}:{referer:"https://sdk.swapkit.dev",referrer:"https://sdk.swapkit.dev"};return p.connect({headers:r,url:o})}async function J(o,t,p={}){let r=await import("@cosmjs/stargate"),f=r.SigningStargateClient??r.default?.SigningStargateClient,y=r.GasPrice??r.default?.GasPrice,c=typeof p==="string"?p:"0.0003uatom",w=typeof p==="string"?{}:p;return f.connectWithSigner(o,t,{gasPrice:y.fromString(c),...w})}async function Ro(o,t){let p=await import("@cosmjs/stargate");return(p.SigningStargateClient??p.default?.SigningStargateClient).offline(o,t)}var ho=(o)=>{switch(o){case x.Maya:case x.THORChain:return"/types.MsgSend";case x.Cosmos:case x.Kujira:case x.Noble:return"/cosmos.bank.v1beta1.MsgSend";default:throw new V("toolbox_cosmos_not_supported",{chain:o})}};async function _o({sender:o,recipient:t,assetValue:p,memo:r="",feeRate:f,sequence:y,accountNumber:c,sweep:w}){let{chain:k,chainId:R}=p,B=await Mo(k),I=await G(B),_=await I.getAccount(o);if(!_)throw new V("toolbox_cosmos_account_not_found",{sender:o});let n=po.from({chain:k}),W=Z(n.symbol),T=j(k),v=W&&f?{amount:[{amount:f.toString(),denom:W}],gas:T.gas}:T,H=Z(p.symbol),C={amount:[{amount:(w?K({assetValue:p,balances:await I.getAllBalances(o),denom:H,feeAmount:yo(v.amount,H)}):p).getBaseValue("string"),denom:H}],fromAddress:o,toAddress:t};return{accountNumber:c??Number(_.accountNumber),chainId:R,fee:v,memo:r,msgs:[{typeUrl:ho(k),value:C}],sequence:y??_.sequence}}function yo(o,t){let p=t.toLowerCase();return o.reduce((r,f)=>f.denom.toLowerCase()===p?r+BigInt(f.amount):r,0n)}function K({assetValue:o,balances:t,denom:p,feeAmount:r=0n}){let f=p.toLowerCase(),y=t.find(({denom:k})=>k.toLowerCase()===f),c=BigInt(y?.amount??"0"),w=c-r;if(w<=0n)throw new V("toolbox_sweep_amount_too_low",{asset:o.toString(),balance:c.toString(),fee:r.toString()});return o.set(fo.fromBigInt(w,o.decimal))}var eo={atom:{chain:x.Cosmos,decimals:L(x.Cosmos).baseDecimal},cacao:{chain:x.Maya,decimals:10},kuji:{chain:x.Kujira,decimals:L(x.Kujira).baseDecimal},maya:{asset:`${x.Maya}.${x.Maya}`,decimals:4},rune:{chain:x.THORChain,decimals:L(x.THORChain).baseDecimal},tcy:{asset:"THOR.TCY",decimals:L(x.THORChain).baseDecimal},uatom:{chain:x.Cosmos,decimals:L(x.Cosmos).baseDecimal},ukuji:{chain:x.Kujira,decimals:L(x.Kujira).baseDecimal},usdc:{chain:x.Noble,decimals:L(x.Noble).baseDecimal},uusdc:{chain:x.Noble,decimals:L(x.Noble).baseDecimal},"x/kuji":{asset:"THOR.KUJI",decimals:L(x.THORChain).baseDecimal},[Io.toLowerCase()]:{asset:`${x.Kujira}.USK`,decimals:L(x.Kujira).baseDecimal}},$o=(o,t)=>{let p=eo[o.toLowerCase()];if(!p)return po.from({asset:o,fromBaseDecimal:8,value:t});let{chain:r,asset:f,decimals:y}=p,c=r?{chain:r}:{asset:f};return po.from({...c,fromBaseDecimal:y,value:t})};import{Chain as Co}from"@swapkit/helpers";async function Y(){let{$root:o}=await import("../../chunk-btth5bse.js"),t=await import("@cosmjs/proto-signing"),p=await import("@cosmjs/stargate"),r=t.Registry??t.default?.Registry,f=p.defaultRegistryTypes??p.default?.defaultRegistryTypes;return new r([...f,["/types.MsgSend",o.types.MsgSend],["/types.MsgDeposit",o.types.MsgDeposit]])}async function Q(o,t=o===Co.THORChain?"thor":"maya"){let p=await import("@cosmjs/stargate"),r=p.AminoTypes??p.default?.AminoTypes,f=o===Co.THORChain?"thorchain":"mayachain";return new r({"/types.MsgDeposit":{aminoType:`${f}/MsgDeposit`,fromAmino:({signer:y,...c})=>({...c,signer:b(y)}),toAmino:({signer:y,...c})=>({...c,signer:l(y,t)})},"/types.MsgSend":{aminoType:`${f}/MsgSend`,fromAmino:({from_address:y,to_address:c,...w})=>({...w,fromAddress:b(y),toAddress:b(c)}),toAmino:({fromAddress:y,toAddress:c,...w})=>({...w,from_address:l(y,t),to_address:l(c,t)})}})}var Ot=j(h.THORChain).gas,Nt=j(h.Maya).gas,jo=({sender:o,recipient:t,assetValue:p})=>{return{type:`${p.chain===h.Maya?"mayachain":"thorchain"}/MsgSend`,value:{amount:[{amount:p.getBaseValue("string"),denom:Z(p.symbol,!0)}],from_address:o,to_address:t}}},io=({sender:o,assetValue:t,memo:p=""})=>{return{type:`${t.chain===h.Maya?"mayachain":"thorchain"}/MsgDeposit`,value:{coins:[{amount:t.getBaseValue("string"),asset:s(t)}],memo:p,signer:o}}},wo=({sender:o,recipient:t,assetValue:p,memo:r})=>{return!t?io({assetValue:p,memo:r,sender:o}):jo({assetValue:p,recipient:t,sender:o})},S=async(o,t)=>{return(await Q(t)).fromAmino(o)},zo=async({rpcUrl:o,sender:t})=>{let r=await(await G(o)).getAccount(t);if(!r)throw new ot("toolbox_cosmos_account_not_found",{sender:t});return r};async function Go(o){let{assetValue:t,recipient:p,memo:r,sender:f,asSignable:y,asAminoMessage:c}=o,w=o.sweep?await To({assetValue:t,sender:f}):t;if(p)return tt({asAminoMessage:c,asSignable:y,assetValue:w,memo:r,recipient:p,sender:f});return rt({asAminoMessage:c,asSignable:y,assetValue:w,memo:r,sender:f})}async function To({assetValue:o,sender:t}){let p=o.chain,r=await co(p),y=await(await G(r)).getAllBalances(t),c=o.isGasAsset?(await g(p)).getBaseValue("bigint"):0n;return K({assetValue:o,balances:y,denom:Z(o.symbol,!0),feeAmount:c})}async function tt({sender:o,recipient:t,assetValue:p,memo:r="",asSignable:f=!0,asAminoMessage:y=!1,sequence:c,accountNumber:w}){let k=p.chain,R=await co(k),B=await zo({rpcUrl:R,sender:o}),{chainId:I}=Lo(k),_=jo({assetValue:p,recipient:t,sender:o}),n=f?await S(y?_:X(_),k):_;return{accountNumber:w||Number(B.accountNumber),chainId:I,fee:j(k),memo:r,msgs:[n],sequence:c||B.sequence}}async function rt({sender:o,assetValue:t,memo:p="",asSignable:r=!0,asAminoMessage:f=!1,sequence:y,accountNumber:c}){let w=t.chain,k=await co(w),R=await zo({rpcUrl:k,sender:o}),{chainId:B}=Lo(w),I=io({assetValue:t,memo:p,sender:o}),_=r?await S(f?I:X(I),w):I;return{accountNumber:c||Number(R.accountNumber),chainId:B,fee:j(w),memo:p,msgs:[_],sequence:y||R.sequence}}function X(o){if(o.type==="thorchain/MsgSend"||o.type==="mayachain/MsgSend")return o;return{...o,value:{...o.value,coins:o.value.coins.map((t)=>{let p=ao.from({asset:t.asset}),r=(p.isSynthetic?p.symbol.split("/")?.[1]:p.symbol)?.toUpperCase(),f=(p.isSynthetic?p.symbol.split("/")?.[0]:p.chain)?.toUpperCase();return{...t,asset:{chain:f,symbol:r,synth:p.isSynthetic,ticker:p.ticker}}})}}}async function e({chain:o,memo:t,msgs:p}){let r=await Y(),f=await Q(o),y={typeUrl:"/cosmos.tx.v1beta1.TxBody",value:{memo:t,messages:p.map((c)=>f.fromAmino(c))}};return r.encode(y)}import{Chain as U,SwapKitError as it}from"@swapkit/helpers";import{base64 as Wo,bech32 as no}from"@scure/base";import{AssetValue as vo,applyFeeMultiplier as Zo,Chain as $,CosmosChainPrefixes as Yo,DerivationPath as pt,derivationPathToString as Qo,FeeOption as Ho,getChainConfig as ft,getRPCUrl as O,NetworkDerivationPath as yt,SwapKitError as D,SwapKitNumber as xo,updateDerivationPath as ct}from"@swapkit/helpers";import{SwapKitApi as Do}from"@swapkit/helpers/api";import{match as wt,P as So}from"ts-pattern";async function qo(o,t){try{let r=(await Do.getGasRate()).find((f)=>f.chainId===o)?.value;return r?Number.parseFloat(r):t}catch{return t}}async function Xo({phrase:o,prefix:t,...p}){let r=await import("@cosmjs/proto-signing"),f=await import("@cosmjs/crypto"),y=r.DirectSecp256k1HdWallet??r.default?.DirectSecp256k1HdWallet,c=f.stringToPath??f.default?.stringToPath,w="derivationPath"in p?p.derivationPath:`${pt[p.chain]}/${p.index}`;return await y.fromMnemonic(o,{hdPaths:[c(w)],prefix:t})}async function or({privateKey:o,prefix:t}){let p=await import("@cosmjs/proto-signing");return(p.DirectSecp256k1Wallet??p.default?.DirectSecp256k1Wallet).fromKey(o,t)}var Po={[$.Cosmos]:1000,[$.Kujira]:1000,[$.Noble]:1000,[$.THORChain]:5000000,[$.Maya]:5000000,[$.Harbor]:5000000};function Tt(o){return async function({signature:p,message:r,address:f}){let y=await o(f);if(!y?.pubkey)throw new D("toolbox_cosmos_verify_signature_no_pubkey");let c=await import("@cosmjs/crypto"),w=c.Secp256k1Signature??c.default?.Secp256k1Signature,k=c.Secp256k1??c.default?.Secp256k1,R=w.fromFixedLength(Wo.decode(p));return k.verifySignature(R,Wo.decode(r),y.pubkey.value)}}function a({chain:o,...t}){let p=Yo[o],r="index"in t?t.index||0:0,f=Qo("derivationPath"in t&&t.derivationPath?t.derivationPath:ct(yt[o],{index:r})),y;async function c(){if(y)return y;return y=await wt(t).with({phrase:So.string},({phrase:n})=>Xo({derivationPath:f,phrase:n,prefix:p})).with({signer:So.any},({signer:n})=>n).otherwise(()=>{return}),y}async function w(n){let W=await O(o);return(await G(W)).getAccount(n)}async function k(){let n=await c(),[W]=await n?.getAccounts()||[];return W?.address}async function R(){let n=await c(),[W]=await n?.getAccounts()||[];if(!W?.pubkey)throw new D("toolbox_cosmos_signer_not_defined");return Wo.encode(W?.pubkey)}async function B(n){let W=await c(),T=await k(),v=await O(o);if(!(W&&T))throw new D("toolbox_cosmos_signer_not_defined");return await(await J(v,W)).sign(T,n.msgs,n.fee,n.memo,{accountNumber:BigInt(n.accountNumber),chainId:n.chainId,sequence:n.sequence})}async function I(n){let W=await c(),T=await k(),v=await O(o);if(!(W&&T))throw new D("toolbox_cosmos_signer_not_defined");let m=await(await J(v,W)).signAndBroadcast(T,n.msgs,n.fee,n.memo);if(m.code!==0)throw new D("core_swap_transaction_error",{code:m.code,message:m.rawLog});return m.transactionHash}async function _({recipient:n,assetValue:W,memo:T="",feeRate:v,feeOptionKey:H=Ho.Fast,sweep:m}){let C=await c(),i=await k();if(!(C&&i))throw new D("toolbox_cosmos_signer_not_defined");let z=await O(o),P=vo.from({chain:o}),oo=s(P),A=nt(v||(await Jo(o,Po[o]))[H],oo,o),q=await J(z,C),F=Z(W.symbol),to=[{amount:(m?K({assetValue:W,balances:await ko(o)(i),denom:F,feeAmount:yo(A.amount,F)}):W).getBaseValue("string"),denom:F}],{transactionHash:ro}=await q.sendTokens(i,n,to,A,T);return ro}return{createPrivateKeyFromPhrase:Wt(f),createTransaction:_o,fetchFeeRateFromSwapKit:qo,getAccount:w,getAddress:k,getBalance:async(n,W)=>{let T=await ko(o)(n),v=await Promise.all(T.filter(({denom:H})=>H&&!H.includes("IBC/")&&!([$.THORChain,$.Maya].includes(o)&&H.split("-").length>2)).map(({denom:H,amount:m})=>{let C=[$.THORChain,$.Maya].includes(o)&&(H.includes("/")||H.includes("˜"))?`${o}.${H}`:H;return $o(C,m)}));if(v.length===0)return[vo.from({chain:o})];return v},getBalanceAsDenoms:ko(o),getFees:()=>Jo(o,Po[o]),getPubKey:R,getSignerFromPhrase:({phrase:n,derivationPath:W})=>Xo({derivationPath:Qo(W),index:r,phrase:n,prefix:p}),getSignerFromPrivateKey:async(n)=>{let W=await import("@cosmjs/proto-signing");return(W.DirectSecp256k1Wallet??W.default?.DirectSecp256k1Wallet).fromKey(n,p)},signAndBroadcastTransaction:I,signTransaction:B,transfer:_,validateAddress:kt(o),verifySignature:Tt(w)}}async function tr(o,t){try{let r=(await Do.getGasRate()).find((f)=>f.chainId===o)?.value;return r?Number.parseFloat(r):t}catch{return t}}function rr({assetValue:{chain:o}}){return vo.from({chain:o,value:xt(o)})}async function Jo(o,t){let{chainId:p,baseDecimal:r}=ft(o),f=await qo(p,t);return{average:xo.fromBigInt(BigInt(f),r),fast:xo.fromBigInt(BigInt(Zo(f,Ho.Fast,!0)),r),fastest:xo.fromBigInt(BigInt(Zo(f,Ho.Fastest,!0)),r)}}function nt(o,t,p){return{amount:[{amount:typeof o==="number"?o.toString():o.getBaseValue("string"),denom:t}],gas:j(p).gas}}function xt(o){return{[$.Cosmos]:0.007,[$.Kujira]:0.02,[$.Noble]:0.01,[$.THORChain]:0.02,[$.Maya]:0.02,[$.Harbor]:0.02}[o]||0}function kt(o){let t=Yo[o];return function(r){if(!r.startsWith(t))return!1;try{let{prefix:f,words:y}=no.decode(r);return no.encode(f,y)===r.toLocaleLowerCase()}catch{return!1}}}function ko(o){return async function(p){let r=await O(o);return(await(await G(r)).getAllBalances(p)).map((w)=>({...w,denom:w.denom.includes("/")?w.denom.toUpperCase():w.denom}))}}function Wt(o){return async function(p){let r=await import("@cosmjs/crypto"),f=r.stringToPath??r.default?.stringToPath,y=r.Slip10Curve??r.default?.Slip10Curve,c=r.Slip10??r.default?.Slip10,w=r.EnglishMnemonic??r.default?.EnglishMnemonic,k=r.Bip39??r.default?.Bip39,R=new w(p),B=await k.mnemonicToSeed(R),{privkey:I}=c.derivePath(y.Secp256k1,B,f(o));return I}}import{base64 as d}from"@scure/base";import{CosmosChainPrefixes as vt,derivationPathToString as Ht,FeeOption as mo,getRPCUrl as Ko,NetworkDerivationPath as mt,SKConfig as ut,SwapKitError as N,updateDerivationPath as Bt}from"@swapkit/helpers";import{match as It,P as Fo}from"ts-pattern";function Rt({prefix:o,derivationPath:t}){return async function(r,f=0){let y=await import("@cosmjs/amino"),c=y.Secp256k1HdWallet??y.default?.Secp256k1HdWallet,w=await import("@cosmjs/crypto"),k=w.stringToPath??w.default?.stringToPath;return c.fromMnemonic(r,{hdPaths:[k(`${t}/${f}`)],prefix:o})}}function _t(o){return d.encode(o)}function $t(o,t){return async function({wallet:r,tx:f}){let{msgs:y,accountNumber:c,sequence:w,chainId:k,fee:R,memo:B}=typeof f==="string"?JSON.parse(f):f,I=(await r.getAccounts())?.[0]?.address||"",_=await Q(o,t),n=await Y(),W=await Ro(r,{aminoTypes:_,registry:n}),T=[];for(let m of y){let C=await S(m,o);T.push(C)}let{signatures:[v]}=await W.sign(I,T,R,B,{accountNumber:BigInt(c),chainId:k,sequence:w});return{bodyBytes:await e({chain:o,memo:B,msgs:y.map(X)}),signature:_t(v)}}}function Ct({prefix:o,chain:t}){return async function(r,f,y,c,w){let k=await Ko(t),{encodeSecp256k1Pubkey:R,pubkeyToAddress:B}=(await import("@cosmjs/amino")).default,{makeMultisignedTxBytes:I}=(await import("@cosmjs/stargate")).default,{sequence:_,fee:n}=JSON.parse(r),W=await Oo(y,c),T=f.map((m)=>[B(R(d.decode(m.pubKey)),o),d.decode(m.signature)]),v=await G(k),{transactionHash:H}=await v.broadcastTx(I(W,_,n,w,new Map(T)));return H}}async function Oo(o,t,p=!0){let{createMultisigThresholdPubkey:r,encodeSecp256k1Pubkey:f}=(await import("@cosmjs/amino")).default;return r(o.map((y)=>f(d.decode(y))),t,p)}function Lt(o){return d.decode(o)}async function jt({privateKey:o,message:t}){let{Secp256k1:p}=(await import("@cosmjs/crypto")).default,r=await p.createSignature(d.decode(t),o);return d.encode(Buffer.concat([r.r(32),r.s(32)]))}function No({chain:o,...t}){let{isStagenet:p}=ut.get("envs"),r=`${p?"s":""}${vt[o]}`,f="index"in t?t.index||0:0,y="derivationPath"in t&&t.derivationPath?t.derivationPath:Bt(mt[o],{index:f}),c=a({chain:o,...t}),w=j(o),k;function R(){return k??=It(t).with({phrase:Fo.string},({phrase:T})=>c.getSignerFromPhrase({derivationPath:y,phrase:T})).with({signer:Fo.any},({signer:T})=>Promise.resolve(T)).otherwise(()=>Promise.resolve(void 0)),k}async function B(){let T=await Ko(o),v=await R();if(!v)throw new N("toolbox_cosmos_no_signer");let H=await Y(),m=await Q(o,r),C=await J(T,v,{aminoTypes:m,registry:H});return{signer:v,signingClient:C}}async function I({fee:T,memo:v,msgs:H}){let{signer:m,signingClient:C}=await B(),i=(await m.getAccounts())?.[0]?.address;if(!i)throw new N("toolbox_cosmos_signer_not_defined");let z=await C.signAndBroadcast(i,H,T,v);if(z.code!==0)throw new N("core_swap_transaction_error",{code:z.code,message:z.rawLog});return z.transactionHash}async function _(){let T=await g(o);return{[mo.Average]:T,[mo.Fast]:T,[mo.Fastest]:T}}async function n({assetValue:T,memo:v="",recipient:H,sweep:m}){let{TxRaw:C}=await import("cosmjs-types/cosmos/tx/v1beta1/tx"),{signer:i,signingClient:z}=await B(),P=(await i.getAccounts())?.[0]?.address;if(!P)throw new N("toolbox_cosmos_no_signer");let oo="signAmino"in i,A=m?await To({assetValue:T,sender:P}):T,q=wo({assetValue:A,memo:v,recipient:H,sender:P});if(oo){let to=await S(q,o),{signatures:ro,authInfoBytes:Uo}=await z.sign(P,[to],w,v),Ao=C.encode({authInfoBytes:Uo,bodyBytes:await e({chain:o,memo:v,msgs:[q].map(X)}),signatures:ro}).finish();return(await z.broadcastTx(Ao)).transactionHash}let F=X(q),uo=await S(F,o);return I({fee:w,memo:v,msgs:[uo]})}async function W(T){let{signer:v,signingClient:H}=await B(),m=(await v.getAccounts())?.[0]?.address;if(!m)throw new N("toolbox_cosmos_signer_not_defined");return H.sign(m,T.msgs,T.fee,T.memo,{accountNumber:BigInt(T.accountNumber),chainId:T.chainId,sequence:T.sequence})}return{...c,broadcastMultisigTx:Ct({chain:o,prefix:r}),buildAminoMsg:wo,buildEncodedTxBody:e,convertToSignable:S,createDefaultAminoTypes:()=>Q(o,r),createDefaultRegistry:Y,createMultisig:Oo,createTransaction:Go,deposit:n,getFees:_,importSignature:Lt,parseAminoMessageForDirectSigning:X,pubkeyToAddress:async(T)=>{let{pubkeyToAddress:v}=(await import("@cosmjs/amino")).default;return v(T,r)},secp256k1HdWalletFromMnemonic:Rt({derivationPath:Ht(y),prefix:r}),signAndBroadcastTransaction:I,signMultisigTx:$t(o,r),signTransaction:W,signWithPrivateKey:jt,transfer:n}}var Hr=(o,t)=>{switch(o){case U.Cosmos:case U.Kujira:case U.Noble:return a({chain:o,...t});case U.Maya:case U.THORChain:return No({chain:o,...t});default:throw new it("toolbox_cosmos_not_supported",{chain:o})}};export{Tt as verifySignature,jo as transferMsgAmino,Qt as toBase64,To as resolveThorchainSweepAssetValue,X as parseAminoMessageForDirectSigning,g as getThorchainNativeFee,K as getSweepAssetValue,or as getSignerFromPrivateKey,Xo as getSignerFromPhrase,Z as getMsgSendDenom,tr as getFeeRateFromSwapKit,yo as getFeeAmountForDenom,s as getDenomWithChain,j as getDefaultChainFee,Hr as getCosmosToolbox,kt as getCosmosAddressValidator,$o as getAssetFromDenom,St as fromBase64,qo as fetchFeeRateFromSwapKit,rr as estimateTransactionFee,io as depositMsgAmino,Go as createTransaction,No as createThorchainToolbox,G as createStargateClient,J as createSigningStargateClient,Ro as createOfflineStargateClient,Y as createDefaultRegistry,Q as createDefaultAminoTypes,a as createCosmosToolbox,_o as cosmosCreateTransaction,S as convertToSignable,tt as buildTransferTx,e as buildEncodedTxBody,rt as buildDepositTx,wo as buildAminoMsg,b as bech32ToBase64,l as base64ToBech32,lo as YUM_KUJIRA_FACTORY_DENOM,Io as USK_KUJIRA_FACTORY_DENOM,Ot as THORCHAIN_GAS_VALUE,Nt as MAYA_GAS_VALUE,so as DEFAULT_NOBLE_FEE_MAINNET,go as DEFAULT_KUJI_FEE_MAINNET,Vo as DEFAULT_COSMOS_FEE_MAINNET};
@@ -1 +1 @@
1
- var Jy=Object.create;var{getPrototypeOf:oy,defineProperty:I,getOwnPropertyNames:dt,getOwnPropertyDescriptor:_y}=Object,st=Object.prototype.hasOwnProperty;function et(t){return this[t]}var jy,ky,nu=(t,y,u)=>{var n=t!=null&&typeof t==="object";if(n){var T=y?jy??=new WeakMap:ky??=new WeakMap,b=T.get(t);if(b)return b}u=t!=null?Jy(oy(t)):{};let M=y||!t||!t.__esModule?I(u,"default",{value:t,enumerable:!0}):u;for(let D of dt(t))if(!st.call(M,D))I(M,D,{get:et.bind(t,D),enumerable:!0});if(n)T.set(t,M);return M},Ny=(t)=>{var y=(ht??=new WeakMap).get(t),u;if(y)return y;if(y=I({},"__esModule",{value:!0}),t&&typeof t==="object"||typeof t==="function"){for(var n of dt(t))if(!st.call(y,n))I(y,n,{get:et.bind(t,n),enumerable:!(u=_y(t,n))||u.enumerable})}return ht.set(t,y),y},ht;var Vy=(t)=>t;function Sy(t,y){this[t]=Vy.bind(null,y)}var it=(t,y)=>{for(var u in y)I(t,u,{get:y[u],enumerable:!0,configurable:!0,set:Sy.bind(y,u)})};var j=(t,y)=>()=>(t&&(y=t(t=0)),y);function lu(){function t(){let y=Date.now(),u=ft||y;return ft=u,y>ft?y:u+1}return xy+t().toString(36)}function rt(t){return async function(u,n=!0){let T=await at.SwapKitApi.getChainBalance({address:u,chain:t,scamFilter:n}),{baseDecimal:b}=P.getChainConfig(t),M=T.map(({identifier:q,value:B,decimal:G})=>{return new P.AssetValue({decimal:G||b,identifier:q,value:B})});if(!M.some((q)=>q.isGasAsset))return[P.AssetValue.from({chain:t}),...M];return M}}var P,at,xy,ft=0;var ty=j(()=>{P=require("@swapkit/helpers"),at=require("@swapkit/helpers/api"),xy=typeof process<"u"&&process.pid?process.pid.toString(36):""});function C(t){return{getBalance:rt(t)}}function Ky(t){return t}var i=j(()=>{ty()});function uy(t){return new z.JsonRpcProvider(t)}async function Fy(t,y){return uy(y||await L.getRPCUrl(t))}function jt(t){let y=L.SKConfig.get("rpcUrls")[t]?.filter(Boolean)??[];if(y.length===0)throw new L.SwapKitError("helpers_chain_no_public_or_set_rpc_url",{chain:t});let{chainId:u}=L.getChainConfig(t),n=z.Network.from(Number(u)),[T]=y;if(y.length===1)return new z.JsonRpcProvider(T,n,{staticNetwork:n});return new z.FallbackProvider(y.map((b,M)=>({priority:M+1,provider:new z.JsonRpcProvider(b,n,{staticNetwork:n}),stallTimeout:2000})),n,{quorum:1})}function k(t){return t>0n?`0x${t.toString(16)}`:"0x0"}function kt(t){let{explorerUrl:y,chainIdHex:u,rpcUrls:n}=L.getChainConfig(t);return function(){return t!==L.Chain.Ethereum?{...Ay({chain:t}),blockExplorerUrls:[y],chainId:u,rpcUrls:n}:void 0}}function Nt(t){return![L.Chain.Adi,L.Chain.Arbitrum,L.Chain.BinanceSmartChain,L.Chain.Robinhood].includes(t)}function Ay({chain:t}){let{name:y,nativeCurrency:u,baseDecimal:n}=L.getChainConfig(t);return _t.match(t).with(L.Chain.Arbitrum,()=>({chainName:"Arbitrum One",nativeCurrency:{decimals:n,name:"Ethereum",symbol:L.Chain.Ethereum}})).with(L.Chain.Aurora,()=>({chainName:"Aurora Mainnet",nativeCurrency:{decimals:n,name:"Ethereum",symbol:L.Chain.Ethereum}})).with(L.Chain.Avalanche,()=>({chainName:"Avalanche Network",nativeCurrency:{decimals:n,name:"Avalanche",symbol:t}})).with(L.Chain.Base,()=>({chainName:"Base Mainnet",nativeCurrency:{decimals:n,name:"Ethereum",symbol:L.Chain.Ethereum}})).with(L.Chain.Berachain,()=>({chainName:"Berachain",nativeCurrency:{decimals:n,name:"Berachain",symbol:"BERA"}})).with(L.Chain.XLayer,()=>({chainName:"X Layer",nativeCurrency:{decimals:n,name:"OKB",symbol:"OKB"}})).with(L.Chain.BinanceSmartChain,()=>({chainName:"BNB Smart Chain Mainnet",nativeCurrency:{decimals:n,name:"Binance Coin",symbol:"BNB"}})).with(L.Chain.Gnosis,()=>({chainName:"Gnosis",nativeCurrency:{decimals:n,name:"xDAI",symbol:"XDAI"}})).with(L.Chain.Optimism,()=>({chainName:"OP Mainnet",nativeCurrency:{decimals:n,name:"Ethereum",symbol:L.Chain.Ethereum}})).with(L.Chain.Polygon,()=>({chainName:"Polygon Mainnet",nativeCurrency:{decimals:n,name:"Polygon",symbol:L.Chain.Polygon}})).with(L.Chain.Robinhood,()=>({chainName:"Robinhood Chain",nativeCurrency:{decimals:n,name:"Ethereum",symbol:L.Chain.Ethereum}})).otherwise(()=>({chainName:y,nativeCurrency:{decimals:n,name:u,symbol:u}}))}async function Vt(t,y){if(!("authorize"in t))throw Error("Signer does not support EIP-7702 authorization. Requires ethers.js v6.14+");let u={...y,nonce:y.nonce!==void 0?BigInt(y.nonce):void 0};return await t.authorize(u)}function ny(t,y){let u=y!==void 0?`index ${y}: `:"",n=(T,b)=>{throw new L.SwapKitError({errorKey:"toolbox_evm_invalid_eip7702_authorization",info:{field:T,message:`${u}${b}`}})};_t.match(t).when(({chainId:T})=>typeof T!=="bigint",()=>n("chainId","chainId must be a bigint")).when(({address:T})=>!Oy(T),()=>n("address","address must be a valid checksummed address")).when(({nonce:T})=>typeof T!=="bigint"||T<0n,()=>n("nonce","nonce must be a non-negative bigint")).when(({signature:T})=>!T,()=>n("signature","signature is required")).when(({signature:T})=>typeof T?.yParity!=="number"||![0,1].includes(T.yParity),()=>n("signature.yParity","yParity must be 0 or 1")).when(({signature:T})=>!yy(T?.r),()=>n("signature.r","r must be a 32-byte hex string")).when(({signature:T})=>!yy(T?.s),()=>n("signature.s","s must be a 32-byte hex string")).otherwise(()=>{})}function Ty(t){return[{key:"name",type:"string"},{key:"version",type:"string"},{key:"chainId",type:"uint256"},{key:"verifyingContract",type:"address"},{key:"salt",type:"bytes32"}].filter(({key:y})=>t[y]!=null).map(({key:y,type:u})=>({name:y,type:u}))}function zt(t){return t.charAt(0).toUpperCase()+t.slice(1)}function Jt(t,y){if(t.isTuple()&&t.components){let u=zt(t.name);return y[u]=t.components.map((n)=>({name:n.name,type:Jt(n,y)})),u}if(t.isArray()){let u=t.arrayChildren;if(u?.isTuple()&&u.components){let n=zt(t.name.replace(/s$/,""));return y[n]=u.components.map((T)=>({name:T.name,type:Jt(T,y)})),`${n}[]`}return`${u?.type??"bytes"}[]`}return t.type}function ot(t,y){if(typeof t==="bigint")return t;if(y?.isTuple()&&typeof t?.toObject==="function"){let u=t.toObject(),n={};for(let[T,b]of(y.components??[]).entries())n[b.name]=ot(u[b.name]??t[T],b);return n}if(Array.isArray(t)){let u=y?.arrayChildren;return t.map((n)=>ot(n,u??void 0))}return t}function Ey({chain:t,abi:y,data:u,to:n}){let b=new z.Interface(y).parseTransaction({data:u});if(!b)throw new L.SwapKitError({errorKey:"toolbox_evm_invalid_params",info:{error:"Could not decode calldata"}});let M={},D=zt(b.name);M[D]=b.fragment.inputs.map((R)=>({name:R.name,type:Jt(R,M)}));let q={};for(let[R,Q]of b.fragment.inputs.entries())q[Q.name]=ot(b.args[R],Q);let{chainId:B}=L.getChainConfig(t),G={chainId:Number(B),verifyingContract:z.getAddress(n)},X=Ty(G);return{domain:G,message:q,primaryType:D,types:{EIP712Domain:X,...M}}}function St(t,y){if(!Array.isArray(t)||t.length===0)throw new L.SwapKitError({errorKey:"toolbox_evm_invalid_eip7702_authorization",info:{message:"EIP-7702 transactions require at least one authorization"}});for(let[u,n]of t.entries())if(ny(n,u),y!==void 0&&n.chainId!==y)throw new L.SwapKitError({errorKey:"toolbox_evm_invalid_eip7702_authorization",info:{field:"chainId",message:`index ${u}: authorization chainId (${n.chainId}) does not match transaction chainId (${y})`}})}var L,z,_t,yy=(t)=>typeof t==="string"&&/^0x[a-fA-F0-9]{64}$/.test(t),Oy=(t)=>{try{return typeof t==="string"&&!!z.getAddress(t)}catch{return!1}};var m=j(()=>{L=require("@swapkit/helpers"),z=require("ethers"),_t=require("ts-pattern")});var ly;var by=j(()=>{ly=[{inputs:[{components:[{internalType:"address",name:"target",type:"address"},{internalType:"bytes",name:"callData",type:"bytes"}],internalType:"struct Multicall2.Call[]",name:"calls",type:"tuple[]"}],name:"aggregate",outputs:[{internalType:"uint256",name:"blockNumber",type:"uint256"},{internalType:"bytes[]",name:"returnData",type:"bytes[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"target",type:"address"},{internalType:"bytes",name:"callData",type:"bytes"}],internalType:"struct Multicall2.Call[]",name:"calls",type:"tuple[]"}],name:"blockAndAggregate",outputs:[{internalType:"uint256",name:"blockNumber",type:"uint256"},{internalType:"bytes32",name:"blockHash",type:"bytes32"},{components:[{internalType:"bool",name:"success",type:"bool"},{internalType:"bytes",name:"returnData",type:"bytes"}],internalType:"struct Multicall2.Result[]",name:"returnData",type:"tuple[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"blockNumber",type:"uint256"}],name:"getBlockHash",outputs:[{internalType:"bytes32",name:"blockHash",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"getBlockNumber",outputs:[{internalType:"uint256",name:"blockNumber",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getCurrentBlockCoinbase",outputs:[{internalType:"address",name:"coinbase",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"getCurrentBlockDifficulty",outputs:[{internalType:"uint256",name:"difficulty",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getCurrentBlockGasLimit",outputs:[{internalType:"uint256",name:"gaslimit",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getCurrentBlockTimestamp",outputs:[{internalType:"uint256",name:"timestamp",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"addr",type:"address"}],name:"getEthBalance",outputs:[{internalType:"uint256",name:"balance",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getLastBlockHash",outputs:[{internalType:"bytes32",name:"blockHash",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bool",name:"requireSuccess",type:"bool"},{components:[{internalType:"address",name:"target",type:"address"},{internalType:"bytes",name:"callData",type:"bytes"}],internalType:"struct Multicall2.Call[]",name:"calls",type:"tuple[]"}],name:"tryAggregate",outputs:[{components:[{internalType:"bool",name:"success",type:"bool"},{internalType:"bytes",name:"returnData",type:"bytes"}],internalType:"struct Multicall2.Result[]",name:"returnData",type:"tuple[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"requireSuccess",type:"bool"},{components:[{internalType:"address",name:"target",type:"address"},{internalType:"bytes",name:"callData",type:"bytes"}],internalType:"struct Multicall2.Call[]",name:"calls",type:"tuple[]"}],name:"tryBlockAndAggregate",outputs:[{internalType:"uint256",name:"blockNumber",type:"uint256"},{internalType:"bytes32",name:"blockHash",type:"bytes32"},{components:[{internalType:"bool",name:"success",type:"bool"},{internalType:"bytes",name:"returnData",type:"bytes"}],internalType:"struct Multicall2.Result[]",name:"returnData",type:"tuple[]"}],stateMutability:"nonpayable",type:"function"}]});function K({chain:t=l.Chain.Ethereum,provider:y,signer:u,isEIP1559Compatible:n=!0}){return{approve:py({chain:t,isEIP1559Compatible:n,provider:y,signer:u}),approvedAmount:Ly({chain:t,provider:y}),broadcastTransaction:y.broadcastTransaction,call:It({chain:t,isEIP1559Compatible:n,provider:y,signer:u}),createApprovalTx:hy({chain:t,provider:y,signer:u}),createContract:At({chain:t,provider:y}),createContractTxObject:N({chain:t,provider:y}),createTransaction:xt({chain:t,provider:y,signer:u}),createTransferTx:xt({chain:t,provider:y,signer:u}),EIP1193SendTransaction:A(y),estimateCall:Ry({provider:y,signer:u}),estimateGasLimit:cy({chain:t,provider:y,signer:u}),estimateGasPrices:V({chain:t,isEIP1559Compatible:n,provider:y}),estimateTransactionFee:dy({chain:t,isEIP1559Compatible:n,provider:y}),getAddress:()=>{return u?u.getAddress():void 0},getBalance:C(t).getBalance,getNetworkParams:kt(t),isApproved:my({chain:t,provider:y}),sendTransaction:qy({chain:t,isEIP1559Compatible:n,provider:y,signer:u}),signAuthorization:vy({signer:u}),signMessage:u?(T)=>u.signMessage(T):void 0,signTypedData:u?({domain:T,types:b,value:M})=>u.signTypedData(T,b,M):void 0,transfer:gy({chain:t,isEIP1559Compatible:n,provider:y,signer:u}),validateAddress:Ft}}function Ft(t){try{return J.getAddress(t),!0}catch{return!1}}function F(t){return t instanceof J.BrowserProvider}function g(t,y,u){return new J.Contract(t,J.Interface.from(y),u)}function At({provider:t}){return function(u,n){return new J.Contract(u,J.Interface.from(n),t)}}function Ot({abi:t,funcName:y}){let u=t.find((n)=>n.name===y);if(!u)throw new l.SwapKitError("toolbox_evm_no_abi_fragment",{funcName:y});return u.stateMutability&&Iy.includes(u.stateMutability)}function My(t){return J.getAddress(t)}function A(t){return function({value:u,...n}){if(!F(t))throw new l.SwapKitError("toolbox_evm_provider_not_eip1193_compatible");let{gasLimit:T,gasPrice:b,maxFeePerGas:M,maxPriorityFeePerGas:D,...q}=n;return t.send("eth_sendTransaction",[{...q,value:k(BigInt(u||0))}])}}function Dy(t,y){let u=O(t,y);if(u)return J.getAddress(u.toLowerCase());throw new l.SwapKitError("toolbox_evm_invalid_gas_asset_address")}function O({chain:t,symbol:y,ticker:u},n){try{let T=t===l.Chain.BinanceSmartChain&&y==="BNB"&&u==="BNB",b=t===l.Chain.Hyperevm&&y==="HYPE"&&u==="HYPE",M=t===n&&y===n&&u===n,D=Cy.includes(t)&&y==="ETH"&&u==="ETH";if(M||T||b||D)return Et[n];return J.getAddress(y.slice(u.length+1).replace(/^0X/,""))}catch{return null}}function N({provider:t}){return async({contractAddress:y,abi:u,funcName:n,funcParams:T=[],txOverrides:b})=>{let M=await g(y,u,t).getFunction(n).populateTransaction(...T.concat(b).filter((D)=>typeof D<"u"));return{...M,value:k(BigInt(M.value||0))}}}function V({chain:t,provider:y,isEIP1559Compatible:u=!0}){return Kt.match(t).with(l.Chain.Gnosis,()=>{return async function(){try{let{gasPrice:T,maxPriorityFeePerGas:b}=await y.getFeeData();if(!T||b===null)throw new l.SwapKitError("toolbox_evm_no_fee_data");return{[l.FeeOption.Average]:{maxFeePerGas:l.applyFeeMultiplierToBigInt(T,l.FeeOption.Average),maxPriorityFeePerGas:l.applyFeeMultiplierToBigInt(b,l.FeeOption.Average)},[l.FeeOption.Fast]:{maxFeePerGas:l.applyFeeMultiplierToBigInt(T,l.FeeOption.Fast),maxPriorityFeePerGas:l.applyFeeMultiplierToBigInt(b,l.FeeOption.Fast)},[l.FeeOption.Fastest]:{maxFeePerGas:l.applyFeeMultiplierToBigInt(T,l.FeeOption.Fastest),maxPriorityFeePerGas:l.applyFeeMultiplierToBigInt(b,l.FeeOption.Fastest)}}}catch(T){throw new l.SwapKitError("toolbox_evm_gas_estimation_error",{error:T.msg??T.toString()})}}}).with(l.Chain.Arbitrum,()=>{return async function(){try{let{gasPrice:T}=await y.getFeeData();if(!T)throw new l.SwapKitError("toolbox_evm_no_fee_data");let b=T*12n/10n;return{[l.FeeOption.Average]:{gasPrice:b},[l.FeeOption.Fast]:{gasPrice:l.applyFeeMultiplierToBigInt(b,l.FeeOption.Fast)},[l.FeeOption.Fastest]:{gasPrice:l.applyFeeMultiplierToBigInt(b,l.FeeOption.Fastest)}}}catch(T){throw new l.SwapKitError("toolbox_evm_gas_estimation_error",{error:T.msg??T.toString()})}}}).otherwise(()=>{return async function(){try{let{maxFeePerGas:T,maxPriorityFeePerGas:b,gasPrice:M}=await y.getFeeData();if(u){if(T===null||b===null)throw new l.SwapKitError("toolbox_evm_no_fee_data");return{[l.FeeOption.Average]:{maxFeePerGas:T,maxPriorityFeePerGas:b},[l.FeeOption.Fast]:{maxFeePerGas:l.applyFeeMultiplierToBigInt(T,l.FeeOption.Fast),maxPriorityFeePerGas:l.applyFeeMultiplierToBigInt(b,l.FeeOption.Fast)},[l.FeeOption.Fastest]:{maxFeePerGas:l.applyFeeMultiplierToBigInt(T,l.FeeOption.Fastest),maxPriorityFeePerGas:l.applyFeeMultiplierToBigInt(b,l.FeeOption.Fastest)}}}if(!M)throw new l.SwapKitError("toolbox_evm_no_gas_price");return{[l.FeeOption.Average]:{gasPrice:M},[l.FeeOption.Fast]:{gasPrice:l.applyFeeMultiplierToBigInt(M,l.FeeOption.Fast)},[l.FeeOption.Fastest]:{gasPrice:l.applyFeeMultiplierToBigInt(M,l.FeeOption.Fastest)}}}catch(T){throw new l.SwapKitError("toolbox_evm_gas_estimation_error",{error:T.msg??T.toString()})}}})}function It({provider:t,isEIP1559Compatible:y,signer:u,chain:n}){return async function({callProvider:b,contractAddress:M,abi:D,funcName:q,funcParams:B=[],txOverrides:G={},feeOption:X=l.FeeOption.Fast}){let R=b||t;if(!M)throw new l.SwapKitError("toolbox_evm_invalid_params",{error:"contractAddress must be provided"});let Q=Ot({abi:D,funcName:q});if(Q&&F(R)&&u){let $=N({chain:n,provider:R}),_=G?.from||await u?.getAddress(),o=await $({abi:D,contractAddress:M,funcName:q,funcParams:B,txOverrides:{...G,from:_}});return A(R)(o)}let Y=g(M,D,R);if(Q){if(!u)throw new l.SwapKitError("toolbox_evm_no_signer");let $=G?.from||await u.getAddress();if(!$)throw new l.SwapKitError("toolbox_evm_no_signer_address");let _=Y.connect(u),o=V({chain:n,isEIP1559Compatible:y,provider:t}),{maxFeePerGas:S,maxPriorityFeePerGas:d,gasPrice:E}=(await o())[X],s=await Y.getFunction(q).estimateGas(...B,G),f=await _[q](...B,{...G,gasLimit:s,gasPrice:E,maxFeePerGas:S,maxPriorityFeePerGas:d,nonce:G?.nonce||await R.getTransactionCount($)});return typeof f?.hash==="string"?f?.hash:f}let Z=await Y[q]?.(...B);return typeof Z?.hash==="string"?Z?.hash:Z}}function Ly({provider:t,chain:y}){return function({assetAddress:n,spenderAddress:T,from:b}){return It({chain:y,isEIP1559Compatible:!0,provider:t})({abi:x.erc20ABI,contractAddress:n,funcName:"allowance",funcParams:[b,T]})}}function my({provider:t,chain:y}){return async function({assetAddress:n,spenderAddress:T,from:b,amount:M=p}){let D=await Ly({chain:y,provider:t})({assetAddress:n,from:b,spenderAddress:T});return l.SwapKitNumber.fromBigInt(D).gte(l.SwapKitNumber.fromBigInt(BigInt(M)))}}function py({signer:t,isEIP1559Compatible:y=!0,provider:u,chain:n}){return async function({assetAddress:b,spenderAddress:M,feeOptionKey:D=l.FeeOption.Fast,amount:q,gasLimitFallback:B,from:G,nonce:X}){let R=[M,BigInt(q||p)],Q=await t?.getAddress()||G,Y={abi:x.erc20ABI,contractAddress:b,funcName:"approve",funcParams:R,signer:t,txOverrides:{from:Q}};if(F(u)){let $=N({chain:n,provider:u}),_=A(u),o=await $(Y);return _(o)}return It({chain:n,isEIP1559Compatible:y,provider:u,signer:t})({...Y,feeOption:D,funcParams:R,txOverrides:{from:Q,gasLimit:B?BigInt(B.toString()):void 0,nonce:X}})}}function gy({signer:t,isEIP1559Compatible:y=!0,provider:u}){return async function({assetValue:T,memo:b,recipient:M,feeOptionKey:D=l.FeeOption.Fast,sender:q,...B}){let{hexlify:G,toUtf8Bytes:X}=await import("ethers"),R=T.getBaseValue("bigint"),Q=T.chain,Y=q||await t?.getAddress(),Z=qy({chain:Q,isEIP1559Compatible:y,provider:u,signer:t});if(!Y)throw new l.SwapKitError("toolbox_evm_no_from_address");if(T.isGasAsset){let E={...B,data:G(X(b||"")),feeOptionKey:D,from:Y,to:M,value:k(R)};return Z(E)}if(!O(T,Q))throw new l.SwapKitError("toolbox_evm_no_contract_address");let{maxFeePerGas:_,maxPriorityFeePerGas:o,gasPrice:S}=(await V({chain:Q,isEIP1559Compatible:y,provider:u})())[D],d=await xt({chain:Q,provider:u,signer:t})({assetValue:T,data:G(X(b||"")),gasPrice:S,maxFeePerGas:_,maxPriorityFeePerGas:o,memo:b,recipient:M,sender:Y});return Z(d)}}function Ry({provider:t,signer:y}){return function({contractAddress:n,abi:T,funcName:b,funcParams:M=[],txOverrides:D}){if(!n)throw new l.SwapKitError("toolbox_evm_no_contract_address");let q=g(n,T,t);return y?q.connect(y).getFunction(b).estimateGas(...M,D):q.getFunction(b).estimateGas(...M,D)}}function cy({provider:t,signer:y}){return async function({assetValue:n,recipient:T,memo:b,data:M,sender:D,funcName:q,funcParams:B,txOverrides:G}){let X=n.bigIntValue,R=n.isGasAsset?null:O(n,n.chain);if(R&&q)return Ry({provider:t,signer:y})({abi:x.erc20ABI,contractAddress:R,funcName:q,funcParams:B,txOverrides:G});let{hexlify:Q,toUtf8Bytes:Y}=await import("ethers");return t.estimateGas({data:M?M:b?Q(Y(b)):void 0,from:D,to:T,value:X})}}function vy({signer:t}){if(!t)return;return(y)=>Vt(t,y)}function qy({provider:t,signer:y,isEIP1559Compatible:u=!0,chain:n}){return async function({feeOptionKey:b=l.FeeOption.Fast,...M}){let{from:D,to:q,data:B,value:G,...X}=M;if(!y)throw new l.SwapKitError("toolbox_evm_no_signer");if(!q)throw new l.SwapKitError("toolbox_evm_no_to_address");let R={...X,data:B||"0x",from:D,to:q,value:BigInt(G||0)};if(F(t))return A(t)(R);let Q=D||await y.getAddress(),Y=M.nonce||await t.getTransactionCount(Q),Z=(await t.getNetwork()).chainId,$=Ct(R,u);if($==="eip7702")St(R.authorizations||[],Z);let _=Kt.match($).with("eip7702",()=>4).with("eip1559",()=>2).otherwise(()=>0),o={...R,chainId:Z,nonce:Y,type:_,...$==="eip7702"&&{authorizationList:R.authorizations}},S=V({chain:n,isEIP1559Compatible:u,provider:t}),E=$!=="legacy"&&!(R.maxFeePerGas&&R.maxPriorityFeePerGas)||!R.gasPrice?Object.entries((await S())[b]).reduce((f,[e,vt])=>({...f,[e]:k(BigInt(vt))}),{}):{},s;try{s=k(R.gasLimit?BigInt(R.gasLimit):await t.estimateGas(o)*11n/10n)}catch(f){throw new l.SwapKitError("toolbox_evm_error_estimating_gas_limit",{error:f})}try{let f={...o,gasLimit:s,...E};try{return(await y.sendTransaction(f)).hash}catch{let e=await y.signTransaction({...f,from:Q});return(await t.broadcastTransaction(e)).hash}}catch(f){throw new l.SwapKitError("toolbox_evm_error_sending_transaction",{error:f})}}}function xt({provider:t,signer:y}){return async function({assetValue:n,memo:T,recipient:b,data:M,sender:D,maxFeePerGas:q,maxPriorityFeePerGas:B,gasPrice:G,...X}){let R=n.getBaseValue("bigint"),Q=n.chain,Y=D||await y?.getAddress();if(!Y)throw new l.SwapKitError("toolbox_evm_no_from_address");if(l.isGasAsset(n)){let{hexlify:_,toUtf8Bytes:o}=await import("ethers");return{...X,data:M||_(o(T||"")),from:Y,to:b,value:k(R)}}let Z=O(n,Q);if(!Z)throw new l.SwapKitError("toolbox_evm_no_contract_address");return N({chain:n.chain,provider:t})({abi:x.erc20ABI,contractAddress:Z,funcName:"transfer",funcParams:[b,R],txOverrides:{from:Y,gasPrice:G,maxFeePerGas:q,maxPriorityFeePerGas:B}})}}function hy({provider:t,signer:y,chain:u}){return async function({assetAddress:T,spenderAddress:b,amount:M,from:D}){let q=await y?.getAddress()||D,B=N({chain:u,provider:t}),G=["bigint","number"].includes(typeof M)?M:M||p;return await B({abi:x.erc20ABI,contractAddress:T,funcName:"approve",funcParams:[b,BigInt(G)],txOverrides:{from:q}})}}function dy({provider:t,isEIP1559Compatible:y=!0,chain:u}){return async function({feeOption:T=l.FeeOption.Fast,...b}){let D=await V({chain:u,isEIP1559Compatible:y,provider:t})(),q=await t.estimateGas(b),B=l.AssetValue.from({chain:u}),{gasPrice:G,maxFeePerGas:X,maxPriorityFeePerGas:R}=D[T];if(!y&&G)return B.set(l.SwapKitNumber.fromBigInt(G*q,B.decimal));if(X&&R){let Q=(X+R)*q;return B.set(l.SwapKitNumber.fromBigInt(Q,B.decimal))}throw new l.SwapKitError("toolbox_evm_no_gas_price")}}var l,x,J,Kt,p,Iy,Py,Et,Cy,a=(t)=>t.type===4||(t.authorizations?.length??0)>0,Pt=(t)=>!a(t)&&(t.type===2||!!t.maxFeePerGas||!!t.maxPriorityFeePerGas),Ct=(t,y=!0)=>{if(a(t))return"eip7702";if(Pt(t)||y)return"eip1559";return"legacy"};var r=j(()=>{i();m();l=require("@swapkit/helpers"),x=require("@swapkit/helpers/contracts"),J=require("ethers"),Kt=require("ts-pattern"),p=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");Iy=["payable","nonpayable"];Py=l.EVMChains.reduce((t,y)=>{return t[y]="0x0000000000000000000000000000000000000000",t},{}),Et={...Py,[l.Chain.Optimism]:"0x4200000000000000000000000000000000000042",[l.Chain.Polygon]:"0x0000000000000000000000000000000000001010"},Cy=[l.Chain.Arbitrum,l.Chain.Aurora,l.Chain.Base,l.Chain.Optimism,l.Chain.Robinhood]});function tt(t){let y=W(w.Chain.Ethereum)(t);async function u(n,T="0x5ba1e12693dc8f9c48aad8770482f4739beed696",b="aggregate",M=w.FeeOption.Fast){let D=await y.createContractTxObject({abi:ly,contractAddress:T,funcName:b,funcParams:[n]});return y.sendTransaction({...D,feeOptionKey:M})}return{...y,multicall:u}}function W(t){return function({provider:u,...n}){let T=Nt(t),b=c.match(n).with({phrase:c.P.string},({phrase:D})=>Gy.HDNodeWallet.fromPhrase(D).connect(u)).with({signer:c.P.any},({signer:D})=>D).otherwise(()=>{return});return K({chain:t,isEIP1559Compatible:T,provider:u,signer:b})}}var w,Gy,c,yt,ut,nt,Tt,lt,bt,Mt,By,Dt,Lt,Rt,qt,Gt,Bt,wt,Ht,Wt,Ut,Qt,v,Xt,Yt;var mt=j(()=>{by();m();r();w=require("@swapkit/helpers"),Gy=require("ethers"),c=require("ts-pattern");yt=W(w.Chain.Adi),ut=W(w.Chain.Arbitrum),nt=W(w.Chain.Aurora),Tt=W(w.Chain.Avalanche),lt=W(w.Chain.Base),bt=W(w.Chain.Berachain),Mt=W(w.Chain.BinanceSmartChain),By=W(w.Chain.Botanix),Dt=W(w.Chain.Core),Lt=W(w.Chain.Corn),Rt=W(w.Chain.Cronos),qt=W(w.Chain.Gnosis),Gt=W(w.Chain.Robinhood),Bt=W(w.Chain.Hyperevm),wt=W(w.Chain.Linea),Ht=W(w.Chain.Polygon),Wt=W(w.Chain.MegaETH),Ut=W(w.Chain.Monad),Qt=W(w.Chain.Plasma),v=W(w.Chain.Sonic),Xt=W(w.Chain.Unichain),Yt=W(w.Chain.XLayer)});var wy;var Hy=j(()=>{wy=[{inputs:[{internalType:"address",name:"_owner",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"",type:"uint256"}],name:"DecimalsUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"",type:"uint256"}],name:"GasPriceUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"",type:"uint256"}],name:"L1BaseFeeUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"",type:"uint256"}],name:"OverheadUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"",type:"uint256"}],name:"ScalarUpdated",type:"event"},{inputs:[],name:"decimals",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"gasPrice",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes",name:"_data",type:"bytes"}],name:"getL1Fee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes",name:"_data",type:"bytes"}],name:"getL1GasUsed",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"l1BaseFee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"overhead",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"scalar",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"_decimals",type:"uint256"}],name:"setDecimals",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_gasPrice",type:"uint256"}],name:"setGasPrice",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_baseFee",type:"uint256"}],name:"setL1BaseFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_overhead",type:"uint256"}],name:"setOverhead",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_scalar",type:"uint256"}],name:"setScalar",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"}]});function pt(t){return new Zt.Contract(ey,wy,t)}function Wy(t){return async function(){let u=pt(t);if(u&&"l1BaseFee"in u)return await u?.l1BaseFee();return}}function Uy(t){return async function({from:u,to:n,nonce:T,...b}){let{Transaction:M}=await import("ethers");if(!n)throw new U.SwapKitError("toolbox_evm_invalid_transaction",{error:"Missing to address"});return M.from({...b,authorizationList:b.authorizationList,nonce:T?T:u?await t.getTransactionCount(u):0,to:n}).serialized}}function Qy(t){return async function(u){let n=pt(t),T=await Uy(t)(u);if(n&&"getL1Fee"in n)return n.getL1Fee(T)}}function Xy(t){return async function(u){let T=(await t.getFeeData()).gasPrice??0n,b=await t.estimateGas(u);return T*b}}function iy(t){return async function(u){let n=await Qy(t)(u)??0n,T=await Xy(t)(u);return n+T}}function ay(t){return async function(u){let n=pt(t),T=await Uy(t)(u);if(n&&"getL1GasUsed"in n)return n.getL1GasUsed(T)}}function ry(t){return async function(){try{let{maxFeePerGas:u,maxPriorityFeePerGas:n,gasPrice:T}=await t.getFeeData(),b=await Wy(t)(),M=T;if(!(u&&n))throw new U.SwapKitError("toolbox_evm_no_fee_data");return{[U.FeeOption.Average]:{gasPrice:M,l1GasPrice:b,maxFeePerGas:u,maxPriorityFeePerGas:n},[U.FeeOption.Fast]:{gasPrice:U.applyFeeMultiplierToBigInt(M,U.FeeOption.Fast),l1GasPrice:U.applyFeeMultiplierToBigInt(b||0n,U.FeeOption.Fast),maxFeePerGas:u,maxPriorityFeePerGas:U.applyFeeMultiplierToBigInt(n,U.FeeOption.Fast)},[U.FeeOption.Fastest]:{gasPrice:U.applyFeeMultiplierToBigInt(M,U.FeeOption.Fastest),l1GasPrice:U.applyFeeMultiplierToBigInt(b||0n,U.FeeOption.Fastest),maxFeePerGas:u,maxPriorityFeePerGas:U.applyFeeMultiplierToBigInt(n,U.FeeOption.Fastest)}}}catch(u){throw new U.SwapKitError("toolbox_evm_gas_estimation_error",{error:u.msg??u.toString()})}}}function $t({provider:t,...y}){let u=h.match(y).with({phrase:h.P.string},({phrase:b})=>Zt.HDNodeWallet.fromPhrase(b).connect(t)).with({signer:h.P.any},({signer:b})=>b).otherwise(()=>{return}),n=K({provider:t,signer:u}),T=Wy(t);return{...n,estimateGasPrices:ry(t),estimateL1Gas:ay(t),estimateL1GasCost:Qy(t),estimateL2GasCost:Xy(t),estimateTotalGasCost:iy(t),getBalance:C(U.Chain.Optimism).getBalance,getL1GasPrice:T}}var U,Zt,h,ey="0x420000000000000000000000000000000000000f";var gt=j(()=>{i();Hy();r();U=require("@swapkit/helpers"),Zt=require("ethers"),h=require("ts-pattern")});var tu={};it(tu,{validateEVMAddress:()=>Ft,toChecksumAddress:()=>My,isStateChangingCall:()=>Ot,isEIP7702Transaction:()=>a,isEIP1559Transaction:()=>Pt,isBrowserProvider:()=>F,getTokenAddress:()=>O,getEvmToolboxAsync:()=>Zy,getEvmToolbox:()=>ct,getEstimateGasPrices:()=>V,getEVMTxType:()=>Ct,getEIP1193SendTransaction:()=>A,getCreateContractTxObject:()=>N,getCreateContract:()=>At,getChecksumAddressFromAsset:()=>Dy,createContract:()=>g,XLayerToolbox:()=>Yt,UNIToolbox:()=>Xt,SONICToolbox:()=>v,PLASMAToolbox:()=>Qt,OPToolbox:()=>$t,MONADToolbox:()=>Ut,MEGAETHToolbox:()=>Wt,MAX_APPROVAL:()=>p,MATICToolbox:()=>Ht,LINEAToolbox:()=>wt,HYPEREVMToolbox:()=>Bt,HOODToolbox:()=>Gt,GNOToolbox:()=>qt,ETHToolbox:()=>tt,ContractAddress:()=>Et,CROToolbox:()=>Rt,CORNToolbox:()=>Lt,COREToolbox:()=>Dt,BotanixToolbox:()=>By,BaseEVMToolbox:()=>K,BSCToolbox:()=>Mt,BERAToolbox:()=>bt,BASEToolbox:()=>lt,AVAXToolbox:()=>Tt,AURORAToolbox:()=>nt,ARBToolbox:()=>ut,ADIToolbox:()=>yt});function ct(t,y){return Yy.match(t).with(H.Chain.Adi,()=>yt(y)).with(H.Chain.Arbitrum,()=>ut(y)).with(H.Chain.Aurora,()=>nt(y)).with(H.Chain.Avalanche,()=>Tt(y)).with(H.Chain.Base,()=>lt(y)).with(H.Chain.Berachain,()=>bt(y)).with(H.Chain.BinanceSmartChain,()=>Mt(y)).with(H.Chain.Botanix,()=>v(y)).with(H.Chain.Core,()=>Dt(y)).with(H.Chain.Corn,()=>Lt(y)).with(H.Chain.Cronos,()=>Rt(y)).with(H.Chain.Ethereum,()=>tt(y)).with(H.Chain.Gnosis,()=>qt(y)).with(H.Chain.Hyperevm,()=>Bt(y)).with(H.Chain.Linea,()=>wt(y)).with(H.Chain.MegaETH,()=>Wt(y)).with(H.Chain.Monad,()=>Ut(y)).with(H.Chain.Optimism,()=>$t(y)).with(H.Chain.Plasma,()=>Qt(y)).with(H.Chain.Polygon,()=>Ht(y)).with(H.Chain.Robinhood,()=>Gt(y)).with(H.Chain.Sonic,()=>v(y)).with(H.Chain.Unichain,()=>Xt(y)).with(H.Chain.XLayer,()=>Yt(y)).exhaustive()}async function Zy(t,y){let u={...y,provider:y?.provider||jt(t)};return ct(t,u)}var H,Yy;var $y=j(()=>{m();mt();gt();H=require("@swapkit/helpers"),Yy=require("ts-pattern");r();mt();gt()});var fy;var zy=j(()=>{((u)=>{u.Test="goerli";u.Main="homestead"})(fy||={})});var yu={};it(yu,{validateEVMAddress:()=>Ft,validateAuthorizations:()=>St,validateAuthorization:()=>ny,toHexString:()=>k,toChecksumAddress:()=>My,signAuthorization:()=>Vt,parseEIP712FromEVMTx:()=>Ey,isStateChangingCall:()=>Ot,isEIP7702Transaction:()=>a,isEIP1559Transaction:()=>Pt,isBrowserProvider:()=>F,getTokenAddress:()=>O,getProviderSync:()=>uy,getProvider:()=>Fy,getNetworkParams:()=>kt,getIsEIP1559Compatible:()=>Nt,getFallbackProvider:()=>jt,getEvmToolboxAsync:()=>Zy,getEvmToolbox:()=>ct,getEvmApi:()=>C,getEstimateGasPrices:()=>V,getEVMTxType:()=>Ct,getEIP1193SendTransaction:()=>A,getCreateContractTxObject:()=>N,getCreateContract:()=>At,getChecksumAddressFromAsset:()=>Dy,createCustomEvmApi:()=>Ky,createContract:()=>g,buildEIP712DomainType:()=>Ty,XLayerToolbox:()=>Yt,UNIToolbox:()=>Xt,SONICToolbox:()=>v,PLASMAToolbox:()=>Qt,OPToolbox:()=>$t,MONADToolbox:()=>Ut,MEGAETHToolbox:()=>Wt,MAX_APPROVAL:()=>p,MATICToolbox:()=>Ht,LINEAToolbox:()=>wt,HYPEREVMToolbox:()=>Bt,HOODToolbox:()=>Gt,GNOToolbox:()=>qt,EthNetwork:()=>fy,ETHToolbox:()=>tt,ContractAddress:()=>Et,CROToolbox:()=>Rt,CORNToolbox:()=>Lt,COREToolbox:()=>Dt,BotanixToolbox:()=>By,BaseEVMToolbox:()=>K,BSCToolbox:()=>Mt,BERAToolbox:()=>bt,BASEToolbox:()=>lt,AVAXToolbox:()=>Tt,AURORAToolbox:()=>nt,ARBToolbox:()=>ut,ADIToolbox:()=>yt});module.exports=Ny(yu);var uu=j(()=>{i();m();$y();zy()});uu();
1
+ var Ou=Object.create;var{getPrototypeOf:Fu,defineProperty:d,getOwnPropertyNames:nu,getOwnPropertyDescriptor:Iu}=Object,Tu=Object.prototype.hasOwnProperty;function Mu(y){return this[y]}var Au,ou,Lt=(y,u,t)=>{var n=y!=null&&typeof y==="object";if(n){var T=u?Au??=new WeakMap:ou??=new WeakMap,b=T.get(y);if(b)return b}t=y!=null?Ou(Fu(y)):{};let q=u||!y||!y.__esModule?d(t,"default",{value:y,enumerable:!0}):t;for(let U of nu(y))if(!Tu.call(q,U))d(q,U,{get:Mu.bind(y,U),enumerable:!0});if(n)T.set(y,q);return q},Eu=(y)=>{var u=(tu??=new WeakMap).get(y),t;if(u)return u;if(u=d({},"__esModule",{value:!0}),y&&typeof y==="object"||typeof y==="function"){for(var n of nu(y))if(!Tu.call(u,n))d(u,n,{get:Mu.bind(y,n),enumerable:!(t=Iu(y,n))||t.enumerable})}return tu.set(y,u),u},tu;var Pu=(y)=>y;function Cu(y,u){this[y]=Pu.bind(null,u)}var bu=(y,u)=>{for(var t in u)d(y,t,{get:u[t],enumerable:!0,configurable:!0,set:Cu.bind(u,t)})};var K=(y,u)=>()=>(y&&(u=y(y=0)),u);function zt(){function y(){let u=Date.now(),t=xy||u;return xy=t,u>xy?u:t+1}return gu+y().toString(36)}function Uu(y){return async function(t,n=!0){let T=await qu.SwapKitApi.getChainBalance({address:t,chain:y,scamFilter:n}),{baseDecimal:b}=s.getChainConfig(y),q=T.map(({identifier:W,value:X,decimal:B})=>{return new s.AssetValue({decimal:B||b,identifier:W,value:X})});if(!q.some((W)=>W.isGasAsset))return[s.AssetValue.from({chain:y}),...q];return q}}var s,qu,gu,xy=0;var Bu=K(()=>{s=require("@swapkit/helpers"),qu=require("@swapkit/helpers/api"),gu=typeof process<"u"&&process.pid?process.pid.toString(36):""});function i(y){return{getBalance:Uu(y)}}function cu(y){return y}var Ty=K(()=>{Bu()});function Qu(y){return new N.JsonRpcProvider(y)}async function vu(y,u){return Qu(u||await Q.getRPCUrl(y))}function oy(y){let u=Q.SKConfig.get("rpcUrls")[y]?.filter(Boolean)??[];if(u.length===0)throw new Q.SwapKitError("helpers_chain_no_public_or_set_rpc_url",{chain:y});let{chainId:t}=Q.getChainConfig(y),n=N.Network.from(Number(t)),[T]=u;if(u.length===1)return new N.JsonRpcProvider(T,n,{staticNetwork:n});return new N.FallbackProvider(u.map((b,q)=>({priority:q+1,provider:new N.JsonRpcProvider(b,n,{staticNetwork:n}),stallTimeout:2000})),n,{quorum:1})}function _(y){return y>0n?`0x${y.toString(16)}`:"0x0"}function Ey(y){let{explorerUrl:u,chainIdHex:t,rpcUrls:n}=Q.getChainConfig(y);return function(){return y!==Q.Chain.Ethereum?{...mu({chain:y}),blockExplorerUrls:[u],chainId:t,rpcUrls:n}:void 0}}function Py(y){return![Q.Chain.Adi,Q.Chain.Arbitrum,Q.Chain.BinanceSmartChain,Q.Chain.Robinhood].includes(y)}function mu({chain:y}){let{name:u,nativeCurrency:t,baseDecimal:n}=Q.getChainConfig(y);return Ay.match(y).with(Q.Chain.Arbitrum,()=>({chainName:"Arbitrum One",nativeCurrency:{decimals:n,name:"Ethereum",symbol:Q.Chain.Ethereum}})).with(Q.Chain.Aurora,()=>({chainName:"Aurora Mainnet",nativeCurrency:{decimals:n,name:"Ethereum",symbol:Q.Chain.Ethereum}})).with(Q.Chain.Avalanche,()=>({chainName:"Avalanche Network",nativeCurrency:{decimals:n,name:"Avalanche",symbol:y}})).with(Q.Chain.Base,()=>({chainName:"Base Mainnet",nativeCurrency:{decimals:n,name:"Ethereum",symbol:Q.Chain.Ethereum}})).with(Q.Chain.Berachain,()=>({chainName:"Berachain",nativeCurrency:{decimals:n,name:"Berachain",symbol:"BERA"}})).with(Q.Chain.XLayer,()=>({chainName:"X Layer",nativeCurrency:{decimals:n,name:"OKB",symbol:"OKB"}})).with(Q.Chain.BinanceSmartChain,()=>({chainName:"BNB Smart Chain Mainnet",nativeCurrency:{decimals:n,name:"Binance Coin",symbol:"BNB"}})).with(Q.Chain.Gnosis,()=>({chainName:"Gnosis",nativeCurrency:{decimals:n,name:"xDAI",symbol:"XDAI"}})).with(Q.Chain.Optimism,()=>({chainName:"OP Mainnet",nativeCurrency:{decimals:n,name:"Ethereum",symbol:Q.Chain.Ethereum}})).with(Q.Chain.Polygon,()=>({chainName:"Polygon Mainnet",nativeCurrency:{decimals:n,name:"Polygon",symbol:Q.Chain.Polygon}})).with(Q.Chain.Robinhood,()=>({chainName:"Robinhood Chain",nativeCurrency:{decimals:n,name:"Ethereum",symbol:Q.Chain.Ethereum}})).otherwise(()=>({chainName:u,nativeCurrency:{decimals:n,name:t,symbol:t}}))}async function Cy(y,u){if(!("authorize"in y))throw Error("Signer does not support EIP-7702 authorization. Requires ethers.js v6.14+");let t={...u,nonce:u.nonce!==void 0?BigInt(u.nonce):void 0};return await y.authorize(t)}function Xu(y,u){let t=u!==void 0?`index ${u}: `:"",n=(T,b)=>{throw new Q.SwapKitError({errorKey:"toolbox_evm_invalid_eip7702_authorization",info:{field:T,message:`${t}${b}`}})};Ay.match(y).when(({chainId:T})=>typeof T!=="bigint",()=>n("chainId","chainId must be a bigint")).when(({address:T})=>!hu(T),()=>n("address","address must be a valid checksummed address")).when(({nonce:T})=>typeof T!=="bigint"||T<0n,()=>n("nonce","nonce must be a non-negative bigint")).when(({signature:T})=>!T,()=>n("signature","signature is required")).when(({signature:T})=>typeof T?.yParity!=="number"||![0,1].includes(T.yParity),()=>n("signature.yParity","yParity must be 0 or 1")).when(({signature:T})=>!Wu(T?.r),()=>n("signature.r","r must be a 32-byte hex string")).when(({signature:T})=>!Wu(T?.s),()=>n("signature.s","s must be a 32-byte hex string")).otherwise(()=>{})}function Yu(y){return[{key:"name",type:"string"},{key:"version",type:"string"},{key:"chainId",type:"uint256"},{key:"verifyingContract",type:"address"},{key:"salt",type:"bytes32"}].filter(({key:u})=>y[u]!=null).map(({key:u,type:t})=>({name:u,type:t}))}function Oy(y){return y.charAt(0).toUpperCase()+y.slice(1)}function Fy(y,u){if(y.isTuple()&&y.components){let t=Oy(y.name);return u[t]=y.components.map((n)=>({name:n.name,type:Fy(n,u)})),t}if(y.isArray()){let t=y.arrayChildren;if(t?.isTuple()&&t.components){let n=Oy(y.name.replace(/s$/,""));return u[n]=t.components.map((T)=>({name:T.name,type:Fy(T,u)})),`${n}[]`}return`${t?.type??"bytes"}[]`}return y.type}function Iy(y,u){if(typeof y==="bigint")return y;if(u?.isTuple()&&typeof y?.toObject==="function"){let t=y.toObject(),n={};for(let[T,b]of(u.components??[]).entries())n[b.name]=Iy(t[b.name]??y[T],b);return n}if(Array.isArray(y)){let t=u?.arrayChildren;return y.map((n)=>Iy(n,t??void 0))}return y}function pu({chain:y,abi:u,data:t,to:n}){let b=new N.Interface(u).parseTransaction({data:t});if(!b)throw new Q.SwapKitError({errorKey:"toolbox_evm_invalid_params",info:{error:"Could not decode calldata"}});let q={},U=Oy(b.name);q[U]=b.fragment.inputs.map((Y)=>({name:Y.name,type:Fy(Y,q)}));let W={};for(let[Y,J]of b.fragment.inputs.entries())W[J.name]=Iy(b.args[Y],J);let{chainId:X}=Q.getChainConfig(y),B={chainId:Number(X),verifyingContract:N.getAddress(n)},D=Yu(B);return{domain:B,message:W,primaryType:U,types:{EIP712Domain:D,...q}}}function gy(y,u){if(!Array.isArray(y)||y.length===0)throw new Q.SwapKitError({errorKey:"toolbox_evm_invalid_eip7702_authorization",info:{message:"EIP-7702 transactions require at least one authorization"}});for(let[t,n]of y.entries())if(Xu(n,t),u!==void 0&&n.chainId!==u)throw new Q.SwapKitError({errorKey:"toolbox_evm_invalid_eip7702_authorization",info:{field:"chainId",message:`index ${t}: authorization chainId (${n.chainId}) does not match transaction chainId (${u})`}})}var Q,N,Ay,Wu=(y)=>typeof y==="string"&&/^0x[a-fA-F0-9]{64}$/.test(y),hu=(y)=>{try{return typeof y==="string"&&!!N.getAddress(y)}catch{return!1}};var e=K(()=>{Q=require("@swapkit/helpers"),N=require("ethers"),Ay=require("ts-pattern")});var Zu;var $u=K(()=>{Zu=[{inputs:[{components:[{internalType:"address",name:"target",type:"address"},{internalType:"bytes",name:"callData",type:"bytes"}],internalType:"struct Multicall2.Call[]",name:"calls",type:"tuple[]"}],name:"aggregate",outputs:[{internalType:"uint256",name:"blockNumber",type:"uint256"},{internalType:"bytes[]",name:"returnData",type:"bytes[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"target",type:"address"},{internalType:"bytes",name:"callData",type:"bytes"}],internalType:"struct Multicall2.Call[]",name:"calls",type:"tuple[]"}],name:"blockAndAggregate",outputs:[{internalType:"uint256",name:"blockNumber",type:"uint256"},{internalType:"bytes32",name:"blockHash",type:"bytes32"},{components:[{internalType:"bool",name:"success",type:"bool"},{internalType:"bytes",name:"returnData",type:"bytes"}],internalType:"struct Multicall2.Result[]",name:"returnData",type:"tuple[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"blockNumber",type:"uint256"}],name:"getBlockHash",outputs:[{internalType:"bytes32",name:"blockHash",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"getBlockNumber",outputs:[{internalType:"uint256",name:"blockNumber",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getCurrentBlockCoinbase",outputs:[{internalType:"address",name:"coinbase",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"getCurrentBlockDifficulty",outputs:[{internalType:"uint256",name:"difficulty",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getCurrentBlockGasLimit",outputs:[{internalType:"uint256",name:"gaslimit",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getCurrentBlockTimestamp",outputs:[{internalType:"uint256",name:"timestamp",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"addr",type:"address"}],name:"getEthBalance",outputs:[{internalType:"uint256",name:"balance",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getLastBlockHash",outputs:[{internalType:"bytes32",name:"blockHash",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bool",name:"requireSuccess",type:"bool"},{components:[{internalType:"address",name:"target",type:"address"},{internalType:"bytes",name:"callData",type:"bytes"}],internalType:"struct Multicall2.Call[]",name:"calls",type:"tuple[]"}],name:"tryAggregate",outputs:[{components:[{internalType:"bool",name:"success",type:"bool"},{internalType:"bytes",name:"returnData",type:"bytes"}],internalType:"struct Multicall2.Result[]",name:"returnData",type:"tuple[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"requireSuccess",type:"bool"},{components:[{internalType:"address",name:"target",type:"address"},{internalType:"bytes",name:"callData",type:"bytes"}],internalType:"struct Multicall2.Call[]",name:"calls",type:"tuple[]"}],name:"tryBlockAndAggregate",outputs:[{internalType:"uint256",name:"blockNumber",type:"uint256"},{internalType:"bytes32",name:"blockHash",type:"bytes32"},{components:[{internalType:"bool",name:"success",type:"bool"},{internalType:"bytes",name:"returnData",type:"bytes"}],internalType:"struct Multicall2.Result[]",name:"returnData",type:"tuple[]"}],stateMutability:"nonpayable",type:"function"}]});function C({chain:y=M.Chain.Ethereum,provider:u,signer:t,isEIP1559Compatible:n=!0,estimateGasPrices:T,estimateAdditionalFee:b}){let q=T??P({chain:y,isEIP1559Compatible:n,provider:u}),U=ku({chain:y,estimateAdditionalFee:b,estimateGasPrices:q,isEIP1559Compatible:n,provider:u,signer:t});return{approve:au({chain:y,isEIP1559Compatible:n,provider:u,signer:t}),approvedAmount:Ru({chain:y,provider:u}),broadcastTransaction:u.broadcastTransaction,call:My({chain:y,isEIP1559Compatible:n,provider:u,signer:t}),createApprovalTx:Bt({chain:y,provider:u,signer:t}),createContract:hy({chain:y,provider:u}),createContractTxObject:E({chain:y,provider:u}),createTransaction:U,createTransferTx:U,EIP1193SendTransaction:c(u),estimateCall:Du({provider:u,signer:t}),estimateGasLimit:yt({chain:y,provider:u,signer:t}),estimateGasPrices:q,estimateTransactionFee:Wt({chain:y,isEIP1559Compatible:n,provider:u}),getAddress:()=>{return t?t.getAddress():void 0},getBalance:i(y).getBalance,getNetworkParams:Ey(y),isApproved:eu({chain:y,provider:u}),sendTransaction:Lu({chain:y,estimateGasPrices:q,isEIP1559Compatible:n,provider:u,signer:t}),signAuthorization:ut({signer:t}),signMessage:t?(W)=>t.signMessage(W):void 0,signTypedData:t?({domain:W,types:X,value:B})=>t.signTypedData(W,X,B):void 0,transfer:ru({chain:y,estimateAdditionalFee:b,estimateGasPrices:q,isEIP1559Compatible:n,provider:u,signer:t}),validateAddress:my}}function my(y){try{return V.getAddress(y),!0}catch{return!1}}function g(y){return y instanceof V.BrowserProvider}function r(y,u,t){return new V.Contract(y,V.Interface.from(u),t)}function hy({provider:y}){return function(t,n){return new V.Contract(t,V.Interface.from(n),y)}}function py({abi:y,funcName:u}){let t=y.find((n)=>n.name===u);if(!t)throw new M.SwapKitError("toolbox_evm_no_abi_fragment",{funcName:u});return t.stateMutability&&du.includes(t.stateMutability)}function Ju(y){return V.getAddress(y)}function c(y,u=!1){return function({value:n,...T}){if(!g(y))throw new M.SwapKitError("toolbox_evm_provider_not_eip1193_compatible");let b={...T,gasPrice:"gasPrice"in T?T.gasPrice:void 0,maxFeePerGas:"maxFeePerGas"in T?T.maxFeePerGas:void 0,maxPriorityFeePerGas:"maxPriorityFeePerGas"in T?T.maxPriorityFeePerGas:void 0},{gasLimit:q,gasPrice:U,maxFeePerGas:W,maxPriorityFeePerGas:X,...B}=b,D={...B,...u&&q!==void 0&&{gas:_(BigInt(q))},...u&&U!==void 0&&{gasPrice:_(BigInt(U))},...u&&W!==void 0&&{maxFeePerGas:_(BigInt(W))},...u&&X!==void 0&&{maxPriorityFeePerGas:_(BigInt(X))},value:_(BigInt(n||0))};return y.send("eth_sendTransaction",[D])}}function Hu(y,u){let t=yy(y,u);if(t)return V.getAddress(t.toLowerCase());throw new M.SwapKitError("toolbox_evm_invalid_gas_asset_address")}function yy({chain:y,symbol:u,ticker:t},n){try{let T=y===M.Chain.BinanceSmartChain&&u==="BNB"&&t==="BNB",b=y===M.Chain.Hyperevm&&u==="HYPE"&&t==="HYPE",q=y===n&&u===n&&t===n,U=iu.includes(y)&&u==="ETH"&&t==="ETH";if(q||T||b||U)return dy[n];return V.getAddress(u.slice(t.length+1).replace(/^0X/,""))}catch{return null}}function E({provider:y}){return async({contractAddress:u,abi:t,funcName:n,funcParams:T=[],txOverrides:b})=>{let q=await r(u,t,y).getFunction(n).populateTransaction(...T.concat(b).filter((U)=>typeof U<"u"));return{...q,value:_(BigInt(q.value||0))}}}function P({chain:y,provider:u,isEIP1559Compatible:t=!0}){return vy.match(y).with(M.Chain.Gnosis,()=>{return async function(){try{let{gasPrice:T,maxPriorityFeePerGas:b}=await u.getFeeData();if(!T||b===null)throw new M.SwapKitError("toolbox_evm_no_fee_data");return{[M.FeeOption.Average]:{maxFeePerGas:M.applyFeeMultiplierToBigInt(T,M.FeeOption.Average),maxPriorityFeePerGas:M.applyFeeMultiplierToBigInt(b,M.FeeOption.Average)},[M.FeeOption.Fast]:{maxFeePerGas:M.applyFeeMultiplierToBigInt(T,M.FeeOption.Fast),maxPriorityFeePerGas:M.applyFeeMultiplierToBigInt(b,M.FeeOption.Fast)},[M.FeeOption.Fastest]:{maxFeePerGas:M.applyFeeMultiplierToBigInt(T,M.FeeOption.Fastest),maxPriorityFeePerGas:M.applyFeeMultiplierToBigInt(b,M.FeeOption.Fastest)}}}catch(T){throw new M.SwapKitError("toolbox_evm_gas_estimation_error",{error:T.msg??T.toString()})}}}).with(M.Chain.Arbitrum,()=>{return async function(){try{let{gasPrice:T}=await u.getFeeData();if(!T)throw new M.SwapKitError("toolbox_evm_no_fee_data");let b=T*12n/10n;return{[M.FeeOption.Average]:{gasPrice:b},[M.FeeOption.Fast]:{gasPrice:M.applyFeeMultiplierToBigInt(b,M.FeeOption.Fast)},[M.FeeOption.Fastest]:{gasPrice:M.applyFeeMultiplierToBigInt(b,M.FeeOption.Fastest)}}}catch(T){throw new M.SwapKitError("toolbox_evm_gas_estimation_error",{error:T.msg??T.toString()})}}}).otherwise(()=>{return async function(){try{let{maxFeePerGas:T,maxPriorityFeePerGas:b,gasPrice:q}=await u.getFeeData();if(t){if(T===null||b===null)throw new M.SwapKitError("toolbox_evm_no_fee_data");return{[M.FeeOption.Average]:{maxFeePerGas:T,maxPriorityFeePerGas:b},[M.FeeOption.Fast]:{maxFeePerGas:M.applyFeeMultiplierToBigInt(T,M.FeeOption.Fast),maxPriorityFeePerGas:M.applyFeeMultiplierToBigInt(b,M.FeeOption.Fast)},[M.FeeOption.Fastest]:{maxFeePerGas:M.applyFeeMultiplierToBigInt(T,M.FeeOption.Fastest),maxPriorityFeePerGas:M.applyFeeMultiplierToBigInt(b,M.FeeOption.Fastest)}}}if(!q)throw new M.SwapKitError("toolbox_evm_no_gas_price");return{[M.FeeOption.Average]:{gasPrice:q},[M.FeeOption.Fast]:{gasPrice:M.applyFeeMultiplierToBigInt(q,M.FeeOption.Fast)},[M.FeeOption.Fastest]:{gasPrice:M.applyFeeMultiplierToBigInt(q,M.FeeOption.Fastest)}}}catch(T){throw new M.SwapKitError("toolbox_evm_gas_estimation_error",{error:T.msg??T.toString()})}}})}function My({provider:y,isEIP1559Compatible:u,signer:t,chain:n}){return async function({callProvider:b,contractAddress:q,abi:U,funcName:W,funcParams:X=[],txOverrides:B={},feeOption:D=M.FeeOption.Fast}){let Y=b||y;if(!q)throw new M.SwapKitError("toolbox_evm_invalid_params",{error:"contractAddress must be provided"});let J=py({abi:U,funcName:W});if(J&&g(Y)&&t){let z=E({chain:n,provider:Y}),w=B?.from||await t?.getAddress(),j=await z({abi:U,contractAddress:q,funcName:W,funcParams:X,txOverrides:{...B,from:w}});return c(Y)(j)}let H=r(q,U,Y);if(J){if(!t)throw new M.SwapKitError("toolbox_evm_no_signer");let z=B?.from||await t.getAddress();if(!z)throw new M.SwapKitError("toolbox_evm_no_signer_address");let w=H.connect(t),j=P({chain:n,isEIP1559Compatible:u,provider:y}),{maxFeePerGas:f,maxPriorityFeePerGas:O,gasPrice:I}=(await j())[D],l=await H.getFunction(W).estimateGas(...X,B),S=await w[W](...X,{...B,gasLimit:l,gasPrice:I,maxFeePerGas:f,maxPriorityFeePerGas:O,nonce:B?.nonce||await Y.getTransactionCount(z)});return typeof S?.hash==="string"?S?.hash:S}let L=await H[W]?.(...X);return typeof L?.hash==="string"?L?.hash:L}}function Ru({provider:y,chain:u}){return function({assetAddress:n,spenderAddress:T,from:b}){return My({chain:u,isEIP1559Compatible:!0,provider:y})({abi:o.erc20ABI,contractAddress:n,funcName:"allowance",funcParams:[b,T]})}}function eu({provider:y,chain:u}){return async function({assetAddress:n,spenderAddress:T,from:b,amount:q=a}){let U=await Ru({chain:u,provider:y})({assetAddress:n,from:b,spenderAddress:T});return M.SwapKitNumber.fromBigInt(U).gte(M.SwapKitNumber.fromBigInt(BigInt(q)))}}function au({signer:y,isEIP1559Compatible:u=!0,provider:t,chain:n}){return async function({assetAddress:b,spenderAddress:q,feeOptionKey:U=M.FeeOption.Fast,amount:W,gasLimitFallback:X,from:B,nonce:D}){let Y=[q,BigInt(W||a)],J=await y?.getAddress()||B,H={abi:o.erc20ABI,contractAddress:b,funcName:"approve",funcParams:Y,signer:y,txOverrides:{from:J}};if(g(t)){let z=E({chain:n,provider:t}),w=c(t),j=await z(H);return w(j)}return My({chain:n,isEIP1559Compatible:u,provider:t,signer:y})({...H,feeOption:U,funcParams:Y,txOverrides:{from:J,gasLimit:X?BigInt(X.toString()):void 0,nonce:D}})}}function ru({chain:y,estimateGasPrices:u,estimateAdditionalFee:t,signer:n,isEIP1559Compatible:T=!0,provider:b}){return async function({assetValue:U,memo:W,recipient:X,feeOptionKey:B=M.FeeOption.Fast,sender:D,sweep:Y,...J}){let H=D||await n?.getAddress(),L=Lu({chain:y,estimateGasPrices:u,isEIP1559Compatible:T,provider:b,signer:n});if(!H)throw new M.SwapKitError("toolbox_evm_no_from_address");let z=await ku({chain:y,estimateAdditionalFee:t,estimateGasPrices:u,isEIP1559Compatible:T,provider:b,signer:n})({assetValue:U,feeOptionKey:B,memo:W,recipient:X,sender:H,sweep:Y,...J});return L({...z,feeOptionKey:B,sweep:Y})}}function Du({provider:y,signer:u}){return function({contractAddress:n,abi:T,funcName:b,funcParams:q=[],txOverrides:U}){if(!n)throw new M.SwapKitError("toolbox_evm_no_contract_address");let W=r(n,T,y);return u?W.connect(u).getFunction(b).estimateGas(...q,U):W.getFunction(b).estimateGas(...q,U)}}function yt({provider:y,signer:u}){return async function({assetValue:n,recipient:T,memo:b,data:q,sender:U,funcName:W,funcParams:X,txOverrides:B}){let D=n.bigIntValue,Y=n.isGasAsset?null:yy(n,n.chain);if(Y&&W)return Du({provider:y,signer:u})({abi:o.erc20ABI,contractAddress:Y,funcName:W,funcParams:X,txOverrides:B});let{hexlify:J,toUtf8Bytes:H}=await import("ethers");return y.estimateGas({data:q?q:b?J(H(b)):void 0,from:U,to:T,value:D})}}function ut({signer:y}){if(!y)return;return(u)=>Cy(y,u)}function tt(y,u){if(y==="legacy"){if(u.gasPrice===void 0)throw new M.SwapKitError("toolbox_evm_no_fee_data");return{gasPrice:_(u.gasPrice)}}if(u.maxFeePerGas===void 0||u.maxPriorityFeePerGas===void 0)throw new M.SwapKitError("toolbox_evm_no_fee_data");return{maxFeePerGas:_(u.maxFeePerGas),maxPriorityFeePerGas:_(u.maxPriorityFeePerGas)}}function Lu({chain:y,estimateGasPrices:u,provider:t,signer:n,isEIP1559Compatible:T=!0}){return async function({feeOptionKey:q=M.FeeOption.Fast,sweep:U,...W}){let{from:X,to:B,data:D,value:Y,...J}=W;if(!n)throw new M.SwapKitError("toolbox_evm_no_signer");if(!B)throw new M.SwapKitError("toolbox_evm_no_to_address");let H={...J,data:D||"0x",from:X,to:B,value:BigInt(Y||0)};if(g(t))return c(t,U)(H);let L=X||await n.getAddress(),z=W.nonce??await t.getTransactionCount(L),w=(await t.getNetwork()).chainId,j=iy(H,T);if(j==="eip7702")gy(H.authorizations||[],w);let f=vy.match(j).with("eip7702",()=>4).with("eip1559",()=>2).otherwise(()=>0),O={...H,chainId:w,nonce:z,type:f,...j==="eip7702"&&{authorizationList:H.authorizations}},I=u??P({chain:y,isEIP1559Compatible:T,provider:t}),S=(j==="legacy"?H.gasPrice!==void 0:H.maxFeePerGas!==void 0&&H.maxPriorityFeePerGas!==void 0)?{}:tt(j,(await I())[q]),x;try{x=_(H.gasLimit?BigInt(H.gasLimit):await t.estimateGas(O)*11n/10n)}catch(G){throw new M.SwapKitError("toolbox_evm_error_estimating_gas_limit",{error:G})}try{let G={...O,gasLimit:x,...S};try{return(await n.sendTransaction(G)).hash}catch{let F=await n.signTransaction({...G,from:L});return(await t.broadcastTransaction(F)).hash}}catch(G){throw new M.SwapKitError("toolbox_evm_error_sending_transaction",{error:G})}}}function A(y,u){throw new M.SwapKitError({errorKey:"toolbox_sweep_amount_too_low",info:{balance:y.toString(),fee:u.toString()}})}function nt(y,u){if(u){if(y.maxFeePerGas===void 0||y.maxPriorityFeePerGas===void 0)throw new M.SwapKitError("toolbox_evm_no_fee_data");return{feeFields:{maxFeePerGas:y.maxFeePerGas,maxPriorityFeePerGas:y.maxPriorityFeePerGas},feePerGas:y.maxFeePerGas}}if(y.gasPrice===void 0)throw new M.SwapKitError("toolbox_evm_no_fee_data");return{feeFields:{gasPrice:y.gasPrice},feePerGas:y.gasPrice}}function Tt(y,u){if(y>u)return y;return u}function Mt(y){return V.getBytes(y).reduce((u,t)=>u+(t===0?4n:16n),21000n)}function cy(y){let t=(y instanceof Error?y.message:String(y)).toLowerCase();return t.includes("insufficient funds")||t.includes("insufficient balance")||t.includes("gas required exceeds allowance")}async function bt({balance:y,estimateAdditionalFee:u,feeOptionKey:t,l2Reserve:n,sweepTx:T,valueBeforeL1Fee:b}){if(!u)return 0n;let q=await u({...T,value:b})??0n,U=M.applyFeeMultiplierToBigInt(q,t),W=b-U;if(W<=0n)A(y,n+U);let X=await u({...T,value:W})??q;return M.applyFeeMultiplierToBigInt(Tt(q,X),t)}async function qt({chain:y,data:u,estimateGasPrices:t,estimateAdditionalFee:n,feeOptionKey:T,from:b,isEIP1559Compatible:q,provider:U,recipient:W,transaction:X}){let B=await U.getBalance(b),D=t??P({chain:y,isEIP1559Compatible:q,provider:U}),{feeFields:Y,feePerGas:J}=nt((await D())[T],q),L={...n&&X.nonce===void 0?{...X,nonce:await U.getTransactionCount(b)}:X,...Y,data:u,from:b,to:W},z=Mt(u)*J;if(B-z<=0n)A(B,z);let w=(B-z)/2n,j;try{j=await U.estimateGas({...L,value:w})}catch(p){if(!cy(p))throw p;try{j=await U.estimateGas({...L,value:0n})}catch(uu){if(cy(uu))A(B,z);throw uu}}let f=j*J;if(B-f<=0n)A(B,f);let l=j*11n/10n*J,S=B>l?B-l:0n,x;try{x=await U.estimateGas({...L,value:S})}catch(p){if(!cy(p))throw p;A(B,l)}let G=x*J,F=B-G;if(F<=0n)A(B,G);let m=await bt({balance:B,estimateAdditionalFee:n,feeOptionKey:T,l2Reserve:G,sweepTx:{...L,gasLimit:x},valueBeforeL1Fee:F}),h=F-m;if(h<=0n)A(B,G+m);return{...L,gasLimit:x,value:_(h)}}async function Ut({chain:y,contractAddress:u,from:t,provider:n}){let T=await My({chain:y,provider:n})({abi:o.erc20ABI,contractAddress:u,funcName:"balanceOf",funcParams:[t]});if(typeof T!=="bigint")throw new M.SwapKitError({errorKey:"toolbox_evm_invalid_transaction",info:{error:"Invalid ERC20 balance"}});return T}function ku({chain:y,estimateAdditionalFee:u,estimateGasPrices:t,isEIP1559Compatible:n=!0,provider:T,signer:b}){return async function({assetValue:U,authorizations:W,memo:X,recipient:B,data:D,feeOptionKey:Y=M.FeeOption.Fast,gasLimit:J,sender:H,sweep:L,type:z,maxFeePerGas:w,maxPriorityFeePerGas:j,gasPrice:f,...O}){let I=U.getBaseValue("bigint"),l=H||await b?.getAddress();if(!l)throw new M.SwapKitError("toolbox_evm_no_from_address");if(L&&(z===4||(W?.length??0)>0))throw new M.SwapKitError({errorKey:"toolbox_not_supported",info:{chain:y,reason:"EIP-7702 sweep transactions are not supported"}});if(M.isGasAsset(U)){let{hexlify:F,toUtf8Bytes:m}=await import("ethers"),h=D||F(m(X||""));if(!L)return{...O,...W!==void 0&&{authorizations:W},data:h,from:l,...J!==void 0&&{gasLimit:J},to:B,...z!==void 0&&{type:z},value:_(I)};return qt({chain:y,data:h,estimateAdditionalFee:u,estimateGasPrices:t,feeOptionKey:Y,from:l,isEIP1559Compatible:n,provider:T,recipient:B,transaction:{nonce:O.nonce,type:z}})}let S=yy(U,y);if(!S)throw new M.SwapKitError("toolbox_evm_no_contract_address");let x=E({chain:y,provider:T}),G=L?await Ut({chain:y,contractAddress:S,from:l,provider:T}):I;if(L&&G<=0n)throw new M.SwapKitError({errorKey:"toolbox_sweep_amount_too_low",info:{asset:U.toString(),balance:G.toString()}});return x({abi:o.erc20ABI,contractAddress:S,funcName:"transfer",funcParams:[B,G],txOverrides:{from:l,gasLimit:J,gasPrice:f,maxFeePerGas:w,maxPriorityFeePerGas:j}})}}function Bt({provider:y,signer:u,chain:t}){return async function({assetAddress:T,spenderAddress:b,amount:q,from:U}){let W=await u?.getAddress()||U,X=E({chain:t,provider:y}),B=["bigint","number"].includes(typeof q)?q:q||a;return await X({abi:o.erc20ABI,contractAddress:T,funcName:"approve",funcParams:[b,BigInt(B)],txOverrides:{from:W}})}}function Wt({provider:y,isEIP1559Compatible:u=!0,chain:t}){return async function({feeOption:T=M.FeeOption.Fast,...b}){let U=await P({chain:t,isEIP1559Compatible:u,provider:y})(),W=await y.estimateGas(b),X=M.AssetValue.from({chain:t}),{gasPrice:B,maxFeePerGas:D,maxPriorityFeePerGas:Y}=U[T];if(!u&&B)return X.set(M.SwapKitNumber.fromBigInt(B*W,X.decimal));if(D&&Y){let J=(D+Y)*W;return X.set(M.SwapKitNumber.fromBigInt(J,X.decimal))}throw new M.SwapKitError("toolbox_evm_no_gas_price")}}var M,o,V,vy,a,du,su,dy,iu,by=(y)=>y.type===4||(y.authorizations?.length??0)>0,sy=(y)=>!by(y)&&(y.type===2||!!y.maxFeePerGas||!!y.maxPriorityFeePerGas),iy=(y,u=!0)=>{if(by(y))return"eip7702";if(sy(y)||u)return"eip1559";return"legacy"};var qy=K(()=>{Ty();e();M=require("@swapkit/helpers"),o=require("@swapkit/helpers/contracts"),V=require("ethers"),vy=require("ts-pattern"),a=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");du=["payable","nonpayable"];su=M.EVMChains.reduce((y,u)=>{return y[u]="0x0000000000000000000000000000000000000000",y},{}),dy={...su,[M.Chain.Optimism]:"0x4200000000000000000000000000000000000042",[M.Chain.Polygon]:"0x0000000000000000000000000000000000001010"},iu=[M.Chain.Arbitrum,M.Chain.Aurora,M.Chain.Base,M.Chain.Optimism,M.Chain.Robinhood]});var zu;var ju=K(()=>{zu=[{inputs:[{internalType:"address",name:"_owner",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"",type:"uint256"}],name:"DecimalsUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"",type:"uint256"}],name:"GasPriceUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"",type:"uint256"}],name:"L1BaseFeeUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"",type:"uint256"}],name:"OverheadUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"",type:"uint256"}],name:"ScalarUpdated",type:"event"},{inputs:[],name:"decimals",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"gasPrice",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes",name:"_data",type:"bytes"}],name:"getL1Fee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes",name:"_data",type:"bytes"}],name:"getL1GasUsed",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"_gasUsed",type:"uint256"}],name:"getOperatorFee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"l1BaseFee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"overhead",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"scalar",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"_decimals",type:"uint256"}],name:"setDecimals",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_gasPrice",type:"uint256"}],name:"setGasPrice",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_baseFee",type:"uint256"}],name:"setL1BaseFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_overhead",type:"uint256"}],name:"setOverhead",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_scalar",type:"uint256"}],name:"setScalar",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"}]});function By(y){return new Uy.Contract(Qt,zu,y)}function Gu(y){return async function(){let t=By(y);if(t&&"l1BaseFee"in t)return await t?.l1BaseFee();return}}function Vu(y){return async function({from:t,to:n,nonce:T,...b}){let{Transaction:q}=await import("ethers");if(!n)throw new Z.SwapKitError("toolbox_evm_invalid_transaction",{error:"Missing to address"});return q.from({...b,authorizationList:b.authorizationList,nonce:T??(t?await y.getTransactionCount(t):0),to:n}).unsignedSerialized}}function ey(y,u){return async function(n){let T=By(y),b=n.chainId??u??(await y.getNetwork()).chainId,q=await Vu(y)({...n,chainId:b});if(T&&"getL1Fee"in T){let U=await T.getL1Fee(q);if(typeof U!=="bigint")throw new Z.SwapKitError({errorKey:"toolbox_evm_invalid_transaction",info:{error:"Invalid OP-stack L1 fee"}});return U}return}}function ay(y){return async function(t){let n=By(y);if(n&&"getOperatorFee"in n){let T=await n.getOperatorFee(t);if(typeof T!=="bigint")throw new Z.SwapKitError({errorKey:"toolbox_evm_invalid_transaction",info:{error:"Invalid OP-stack operator fee"}});return T}return 0n}}function Xt(y,u){let t=ey(y,u),n=ay(y);return async function(b){if(b.gasLimit===void 0||b.gasLimit===null)throw new Z.SwapKitError({errorKey:"toolbox_evm_invalid_transaction",info:{error:"Missing gas limit for OP-stack fee estimation"}});let[q,U]=await Promise.all([t(b),n(BigInt(b.gasLimit.toString()))]);return(q??0n)+U}}function _u(y){return async function(t){let T=(await y.getFeeData()).gasPrice??0n,b=await y.estimateGas(t);return T*b}}function Yt(y){return async function(t){let n=await ey(y)(t)??0n,T=await _u(y)(t),b=t.gasLimit??await y.estimateGas(t),q=await ay(y)(BigInt(b.toString()));return n+T+q}}function Zt(y){return async function(t){let n=By(y),T=await Vu(y)(t);if(n&&"getL1GasUsed"in n)return n.getL1GasUsed(T)}}function $t(y){return async function(){try{let{maxFeePerGas:t,maxPriorityFeePerGas:n,gasPrice:T}=await y.getFeeData(),b=await Gu(y)(),q=T;if(!(t&&n))throw new Z.SwapKitError("toolbox_evm_no_fee_data");return{[Z.FeeOption.Average]:{gasPrice:q,l1GasPrice:b,maxFeePerGas:t,maxPriorityFeePerGas:n},[Z.FeeOption.Fast]:{gasPrice:Z.applyFeeMultiplierToBigInt(q,Z.FeeOption.Fast),l1GasPrice:Z.applyFeeMultiplierToBigInt(b||0n,Z.FeeOption.Fast),maxFeePerGas:t,maxPriorityFeePerGas:Z.applyFeeMultiplierToBigInt(n,Z.FeeOption.Fast)},[Z.FeeOption.Fastest]:{gasPrice:Z.applyFeeMultiplierToBigInt(q,Z.FeeOption.Fastest),l1GasPrice:Z.applyFeeMultiplierToBigInt(b||0n,Z.FeeOption.Fastest),maxFeePerGas:t,maxPriorityFeePerGas:Z.applyFeeMultiplierToBigInt(n,Z.FeeOption.Fastest)}}}catch(t){throw new Z.SwapKitError("toolbox_evm_gas_estimation_error",{error:t.msg??t.toString()})}}}function v(y){return function({provider:t,...n}){let T=uy.match(n).with({phrase:uy.P.string},({phrase:Y})=>Uy.HDNodeWallet.fromPhrase(Y).connect(t)).with({signer:uy.P.any},({signer:Y})=>Y).otherwise(()=>{return}),b=Gu(t),q=BigInt(Z.getChainConfig(y).chainId),U=ey(t,q),W=Xt(t,q),X=ay(t),B=y===Z.Chain.Optimism?$t(t):void 0;return{...C({chain:y,estimateAdditionalFee:W,estimateGasPrices:B,provider:t,signer:T}),estimateL1Gas:Zt(t),estimateL1GasCost:U,estimateL2GasCost:_u(t),estimateOperatorFee:X,estimateTotalGasCost:Yt(t),getBalance:i(y).getBalance,getL1GasPrice:b}}}var Z,Uy,uy,Qt="0x420000000000000000000000000000000000000f",Wy;var Qy=K(()=>{Ty();ju();qy();Z=require("@swapkit/helpers"),Uy=require("ethers"),uy=require("ts-pattern");Wy=v(Z.Chain.Optimism)});function Xy(y){let u=k($.Chain.Ethereum)(y);async function t(n,T="0x5ba1e12693dc8f9c48aad8770482f4739beed696",b="aggregate",q=$.FeeOption.Fast){let U=await u.createContractTxObject({abi:Zu,contractAddress:T,funcName:b,funcParams:[n]});return u.sendTransaction({...U,feeOptionKey:q})}return{...u,multicall:t}}function k(y){return function({provider:t,...n}){let T=Py(y),b=ty.match(n).with({phrase:ty.P.string},({phrase:U})=>Nu.HDNodeWallet.fromPhrase(U).connect(t)).with({signer:ty.P.any},({signer:U})=>U).otherwise(()=>{return});return C({chain:y,isEIP1559Compatible:T,provider:t,signer:b})}}var $,Nu,ty,Yy,Zy,$y,Jy,Hy,Ry,Dy,wu,Ly,ky,zy,jy,Gy,Vy,_y,Ny,wy,ly,Sy,ny,Ky,fy;var ry=K(()=>{$u();e();qy();Qy();$=require("@swapkit/helpers"),Nu=require("ethers"),ty=require("ts-pattern");Yy=k($.Chain.Adi),Zy=k($.Chain.Arbitrum),$y=k($.Chain.Aurora),Jy=k($.Chain.Avalanche),Hy=v($.Chain.Base),Ry=k($.Chain.Berachain),Dy=k($.Chain.BinanceSmartChain),wu=k($.Chain.Botanix),Ly=k($.Chain.Core),ky=k($.Chain.Corn),zy=k($.Chain.Cronos),jy=k($.Chain.Gnosis),Gy=k($.Chain.Robinhood),Vy=k($.Chain.Hyperevm),_y=k($.Chain.Linea),Ny=k($.Chain.Polygon),wy=k($.Chain.MegaETH),ly=k($.Chain.Monad),Sy=k($.Chain.Plasma),ny=k($.Chain.Sonic),Ky=v($.Chain.Unichain),fy=k($.Chain.XLayer)});var Ht={};bu(Ht,{validateEVMAddress:()=>my,toChecksumAddress:()=>Ju,isStateChangingCall:()=>py,isEIP7702Transaction:()=>by,isEIP1559Transaction:()=>sy,isBrowserProvider:()=>g,getTokenAddress:()=>yy,getEvmToolboxAsync:()=>Su,getEvmToolbox:()=>yu,getEstimateGasPrices:()=>P,getEVMTxType:()=>iy,getEIP1193SendTransaction:()=>c,getCreateContractTxObject:()=>E,getCreateContract:()=>hy,getChecksumAddressFromAsset:()=>Hu,createOPStackToolbox:()=>v,createContract:()=>r,XLayerToolbox:()=>fy,UNIToolbox:()=>Ky,SONICToolbox:()=>ny,PLASMAToolbox:()=>Sy,OPToolbox:()=>Wy,MONADToolbox:()=>ly,MEGAETHToolbox:()=>wy,MAX_APPROVAL:()=>a,MATICToolbox:()=>Ny,LINEAToolbox:()=>_y,HYPEREVMToolbox:()=>Vy,HOODToolbox:()=>Gy,GNOToolbox:()=>jy,ETHToolbox:()=>Xy,ContractAddress:()=>dy,CROToolbox:()=>zy,CORNToolbox:()=>ky,COREToolbox:()=>Ly,BotanixToolbox:()=>wu,BaseEVMToolbox:()=>C,BSCToolbox:()=>Dy,BERAToolbox:()=>Ry,BASEToolbox:()=>Hy,AVAXToolbox:()=>Jy,AURORAToolbox:()=>$y,ARBToolbox:()=>Zy,ADIToolbox:()=>Yy});function yu(y,u){return lu.match(y).with(R.Chain.Adi,()=>Yy(u)).with(R.Chain.Arbitrum,()=>Zy(u)).with(R.Chain.Aurora,()=>$y(u)).with(R.Chain.Avalanche,()=>Jy(u)).with(R.Chain.Base,()=>Hy(u)).with(R.Chain.Berachain,()=>Ry(u)).with(R.Chain.BinanceSmartChain,()=>Dy(u)).with(R.Chain.Botanix,()=>ny(u)).with(R.Chain.Core,()=>Ly(u)).with(R.Chain.Corn,()=>ky(u)).with(R.Chain.Cronos,()=>zy(u)).with(R.Chain.Ethereum,()=>Xy(u)).with(R.Chain.Gnosis,()=>jy(u)).with(R.Chain.Hyperevm,()=>Vy(u)).with(R.Chain.Linea,()=>_y(u)).with(R.Chain.MegaETH,()=>wy(u)).with(R.Chain.Monad,()=>ly(u)).with(R.Chain.Optimism,()=>Wy(u)).with(R.Chain.Plasma,()=>Sy(u)).with(R.Chain.Polygon,()=>Ny(u)).with(R.Chain.Robinhood,()=>Gy(u)).with(R.Chain.Sonic,()=>ny(u)).with(R.Chain.Unichain,()=>Ky(u)).with(R.Chain.XLayer,()=>fy(u)).exhaustive()}async function Su(y,u){let t={...u,provider:u?.provider||oy(y)};return yu(y,t)}var R,lu;var Ku=K(()=>{e();ry();Qy();R=require("@swapkit/helpers"),lu=require("ts-pattern");qy();ry();Qy()});var fu;var xu=K(()=>{((t)=>{t.Test="goerli";t.Main="homestead"})(fu||={})});var Rt={};bu(Rt,{validateEVMAddress:()=>my,validateAuthorizations:()=>gy,validateAuthorization:()=>Xu,toHexString:()=>_,toChecksumAddress:()=>Ju,signAuthorization:()=>Cy,parseEIP712FromEVMTx:()=>pu,isStateChangingCall:()=>py,isEIP7702Transaction:()=>by,isEIP1559Transaction:()=>sy,isBrowserProvider:()=>g,getTokenAddress:()=>yy,getProviderSync:()=>Qu,getProvider:()=>vu,getNetworkParams:()=>Ey,getIsEIP1559Compatible:()=>Py,getFallbackProvider:()=>oy,getEvmToolboxAsync:()=>Su,getEvmToolbox:()=>yu,getEvmApi:()=>i,getEstimateGasPrices:()=>P,getEVMTxType:()=>iy,getEIP1193SendTransaction:()=>c,getCreateContractTxObject:()=>E,getCreateContract:()=>hy,getChecksumAddressFromAsset:()=>Hu,createOPStackToolbox:()=>v,createCustomEvmApi:()=>cu,createContract:()=>r,buildEIP712DomainType:()=>Yu,XLayerToolbox:()=>fy,UNIToolbox:()=>Ky,SONICToolbox:()=>ny,PLASMAToolbox:()=>Sy,OPToolbox:()=>Wy,MONADToolbox:()=>ly,MEGAETHToolbox:()=>wy,MAX_APPROVAL:()=>a,MATICToolbox:()=>Ny,LINEAToolbox:()=>_y,HYPEREVMToolbox:()=>Vy,HOODToolbox:()=>Gy,GNOToolbox:()=>jy,EthNetwork:()=>fu,ETHToolbox:()=>Xy,ContractAddress:()=>dy,CROToolbox:()=>zy,CORNToolbox:()=>ky,COREToolbox:()=>Ly,BotanixToolbox:()=>wu,BaseEVMToolbox:()=>C,BSCToolbox:()=>Dy,BERAToolbox:()=>Ry,BASEToolbox:()=>Hy,AVAXToolbox:()=>Jy,AURORAToolbox:()=>$y,ARBToolbox:()=>Zy,ADIToolbox:()=>Yy});module.exports=Eu(Rt);var Dt=K(()=>{Ty();e();Ku();xu()});Dt();
@@ -1 +1 @@
1
- import{a as ca}from"../../chunk-44m22jy1.js";import{$ as _,A as z,B as A,C as B,D as C,E as D,F as E,G as F,H as G,I as H,J as I,K as J,L as K,M as L,N as M,O as N,P as O,Q as P,R as Q,S as R,T as S,U as T,V as U,W as V,X as W,Y as X,Z as Y,_ as Z,aa as $,b as a,ba as aa,c as b,ca as ba,d as c,e as d,f as e,g as f,h as g,i as h,j as i,k as j,l as k,m as l,n as m,o as n,p as o,q as p,r as q,s as r,t as s,u as t,v as u,w as v,x as w,y as x,z as y}from"../../chunk-6b99avsd.js";import"../../chunk-jdh5asaw.js";import"../../chunk-fjyc6m34.js";export{p as validateEVMAddress,m as validateAuthorizations,j as validateAuthorization,f as toHexString,u as toChecksumAddress,i as signAuthorization,l as parseEIP712FromEVMTx,t as isStateChangingCall,B as isEIP7702Transaction,C as isEIP1559Transaction,q as isBrowserProvider,y as getTokenAddress,c as getProviderSync,d as getProvider,g as getNetworkParams,h as getIsEIP1559Compatible,e as getFallbackProvider,ba as getEvmToolboxAsync,aa as getEvmToolbox,a as getEvmApi,A as getEstimateGasPrices,D as getEVMTxType,v as getEIP1193SendTransaction,z as getCreateContractTxObject,s as getCreateContract,w as getChecksumAddressFromAsset,b as createCustomEvmApi,r as createContract,k as buildEIP712DomainType,_ as XLayerToolbox,Z as UNIToolbox,Y as SONICToolbox,X as PLASMAToolbox,$ as OPToolbox,W as MONADToolbox,V as MEGAETHToolbox,n as MAX_APPROVAL,U as MATICToolbox,T as LINEAToolbox,S as HYPEREVMToolbox,R as HOODToolbox,Q as GNOToolbox,ca as EthNetwork,E as ETHToolbox,x as ContractAddress,P as CROToolbox,O as CORNToolbox,N as COREToolbox,M as BotanixToolbox,o as BaseEVMToolbox,L as BSCToolbox,K as BERAToolbox,J as BASEToolbox,I as AVAXToolbox,H as AURORAToolbox,G as ARBToolbox,F as ADIToolbox};
1
+ import{a as da}from"../../chunk-44m22jy1.js";import{$ as _,A as z,B as A,C as B,D as C,E as D,F as E,G as F,H as G,I as H,J as I,K as J,L as K,M as L,N as M,O as N,P as O,Q as P,R as Q,S as R,T as S,U as T,V as U,W as V,X as W,Y as X,Z as Y,_ as Z,aa as $,b as a,ba as aa,c as b,ca as ba,d as c,da as ca,e as d,f as e,g as f,h as g,i as h,j as i,k as j,l as k,m as l,n as m,o as n,p as o,q as p,r as q,s as r,t as s,u as t,v as u,w as v,x as w,y as x,z as y}from"../../chunk-z61r1327.js";import"../../chunk-nvfkjbyq.js";import"../../chunk-xbdjxeqd.js";export{p as validateEVMAddress,m as validateAuthorizations,j as validateAuthorization,f as toHexString,u as toChecksumAddress,i as signAuthorization,l as parseEIP712FromEVMTx,t as isStateChangingCall,B as isEIP7702Transaction,C as isEIP1559Transaction,q as isBrowserProvider,y as getTokenAddress,c as getProviderSync,d as getProvider,g as getNetworkParams,h as getIsEIP1559Compatible,e as getFallbackProvider,ca as getEvmToolboxAsync,ba as getEvmToolbox,a as getEvmApi,A as getEstimateGasPrices,D as getEVMTxType,v as getEIP1193SendTransaction,z as getCreateContractTxObject,s as getCreateContract,w as getChecksumAddressFromAsset,E as createOPStackToolbox,b as createCustomEvmApi,r as createContract,k as buildEIP712DomainType,aa as XLayerToolbox,$ as UNIToolbox,_ as SONICToolbox,Z as PLASMAToolbox,F as OPToolbox,Y as MONADToolbox,X as MEGAETHToolbox,n as MAX_APPROVAL,W as MATICToolbox,V as LINEAToolbox,U as HYPEREVMToolbox,T as HOODToolbox,S as GNOToolbox,da as EthNetwork,G as ETHToolbox,x as ContractAddress,R as CROToolbox,Q as CORNToolbox,P as COREToolbox,O as BotanixToolbox,o as BaseEVMToolbox,N as BSCToolbox,M as BERAToolbox,L as BASEToolbox,K as AVAXToolbox,J as AURORAToolbox,I as ARBToolbox,H as ADIToolbox};