@swapkit/toolboxes 4.0.0-beta.50 → 4.0.0-beta.52
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/cosmos/index.cjs +2 -2
- package/dist/src/cosmos/index.cjs.map +10 -6
- package/dist/src/cosmos/index.js +2 -2
- package/dist/src/cosmos/index.js.map +10 -6
- package/dist/src/evm/index.cjs +2 -2
- package/dist/src/evm/index.cjs.map +10 -8
- package/dist/src/evm/index.js +2 -2
- package/dist/src/evm/index.js.map +10 -8
- package/dist/src/index.cjs +4 -2
- package/dist/src/index.cjs.map +54 -4
- package/dist/src/index.js +4 -2
- package/dist/src/index.js.map +54 -4
- package/dist/src/near/index.cjs +2 -2
- package/dist/src/near/index.cjs.map +7 -5
- package/dist/src/near/index.js +2 -2
- package/dist/src/near/index.js.map +7 -5
- package/dist/src/radix/index.cjs +2 -2
- package/dist/src/radix/index.cjs.map +2 -2
- package/dist/src/radix/index.js +2 -2
- package/dist/src/radix/index.js.map +2 -2
- package/dist/src/ripple/index.cjs +2 -2
- package/dist/src/ripple/index.cjs.map +2 -2
- package/dist/src/ripple/index.js +2 -2
- package/dist/src/ripple/index.js.map +2 -2
- package/dist/src/solana/index.cjs +2 -2
- package/dist/src/solana/index.cjs.map +5 -4
- package/dist/src/solana/index.js +2 -2
- package/dist/src/solana/index.js.map +5 -4
- package/dist/src/substrate/index.cjs +2 -2
- package/dist/src/substrate/index.cjs.map +6 -5
- package/dist/src/substrate/index.js +2 -2
- package/dist/src/substrate/index.js.map +6 -5
- package/dist/src/tron/index.cjs +2 -2
- package/dist/src/tron/index.cjs.map +6 -5
- package/dist/src/tron/index.js +2 -2
- package/dist/src/tron/index.js.map +6 -5
- package/dist/src/utxo/index.cjs +4 -4
- package/dist/src/utxo/index.cjs.map +10 -7
- package/dist/src/utxo/index.js +4 -4
- package/dist/src/utxo/index.js.map +10 -7
- package/{src/cosmos/index.ts → dist/types/cosmos/index.d.ts} +1 -0
- package/dist/types/cosmos/index.d.ts.map +1 -0
- package/dist/types/cosmos/thorchainUtils/addressFormat.d.ts +5 -0
- package/dist/types/cosmos/thorchainUtils/addressFormat.d.ts.map +1 -0
- package/{src/cosmos/thorchainUtils/index.ts → dist/types/cosmos/thorchainUtils/index.d.ts} +1 -0
- package/dist/types/cosmos/thorchainUtils/index.d.ts.map +1 -0
- package/dist/types/cosmos/thorchainUtils/messages.d.ts +208 -0
- package/dist/types/cosmos/thorchainUtils/messages.d.ts.map +1 -0
- package/dist/types/cosmos/thorchainUtils/registry.d.ts +4 -0
- package/dist/types/cosmos/thorchainUtils/registry.d.ts.map +1 -0
- package/dist/types/cosmos/thorchainUtils/types/MsgCompiled.d.ts +2 -0
- package/dist/types/cosmos/thorchainUtils/types/MsgCompiled.d.ts.map +1 -0
- package/dist/types/cosmos/thorchainUtils/types/client-types.d.ts +66 -0
- package/dist/types/cosmos/thorchainUtils/types/client-types.d.ts.map +1 -0
- package/dist/types/cosmos/thorchainUtils/types/index.d.ts +2 -0
- package/dist/types/cosmos/thorchainUtils/types/index.d.ts.map +1 -0
- package/dist/types/cosmos/toolbox/cosmos.d.ts +93 -0
- package/dist/types/cosmos/toolbox/cosmos.d.ts.map +1 -0
- package/dist/types/cosmos/toolbox/index.d.ts +14 -0
- package/dist/types/cosmos/toolbox/index.d.ts.map +1 -0
- package/dist/types/cosmos/toolbox/thorchain.d.ts +158 -0
- package/dist/types/cosmos/toolbox/thorchain.d.ts.map +1 -0
- package/{src/cosmos/types.ts → dist/types/cosmos/types.d.ts} +24 -29
- package/dist/types/cosmos/types.d.ts.map +1 -0
- package/dist/types/cosmos/util.d.ts +68 -0
- package/dist/types/cosmos/util.d.ts.map +1 -0
- package/dist/types/evm/api.d.ts +8 -0
- package/dist/types/evm/api.d.ts.map +1 -0
- package/dist/types/evm/contracts/eth/multicall.d.ts +36 -0
- package/dist/types/evm/contracts/eth/multicall.d.ts.map +1 -0
- package/dist/types/evm/contracts/op/gasOracle.d.ts +40 -0
- package/dist/types/evm/contracts/op/gasOracle.d.ts.map +1 -0
- package/dist/types/evm/helpers.d.ts +20 -0
- package/dist/types/evm/helpers.d.ts.map +1 -0
- package/{src/evm/index.ts → dist/types/evm/index.d.ts} +1 -0
- package/dist/types/evm/index.d.ts.map +1 -0
- package/dist/types/evm/toolbox/baseEVMToolbox.d.ts +82 -0
- package/dist/types/evm/toolbox/baseEVMToolbox.d.ts.map +1 -0
- package/dist/types/evm/toolbox/evm.d.ts +367 -0
- package/dist/types/evm/toolbox/evm.d.ts.map +1 -0
- package/dist/types/evm/toolbox/index.d.ts +89 -0
- package/dist/types/evm/toolbox/index.d.ts.map +1 -0
- package/dist/types/evm/toolbox/op.d.ts +62 -0
- package/dist/types/evm/toolbox/op.d.ts.map +1 -0
- package/dist/types/evm/types.d.ts +98 -0
- package/dist/types/evm/types.d.ts.map +1 -0
- package/dist/types/index.d.ts +63 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/near/helpers/core.d.ts +15 -0
- package/dist/types/near/helpers/core.d.ts.map +1 -0
- package/dist/types/near/helpers/gasEstimation.d.ts +41 -0
- package/dist/types/near/helpers/gasEstimation.d.ts.map +1 -0
- package/dist/types/near/helpers/nep141.d.ts +72 -0
- package/dist/types/near/helpers/nep141.d.ts.map +1 -0
- package/dist/types/near/index.d.ts +10 -0
- package/dist/types/near/index.d.ts.map +1 -0
- package/dist/types/near/toolbox.d.ts +4 -0
- package/dist/types/near/toolbox.d.ts.map +1 -0
- package/dist/types/near/types/contract.d.ts +38 -0
- package/dist/types/near/types/contract.d.ts.map +1 -0
- package/dist/types/near/types/nep141.d.ts +56 -0
- package/dist/types/near/types/nep141.d.ts.map +1 -0
- package/dist/types/near/types/toolbox.d.ts +57 -0
- package/dist/types/near/types/toolbox.d.ts.map +1 -0
- package/dist/types/near/types.d.ts +44 -0
- package/dist/types/near/types.d.ts.map +1 -0
- package/dist/types/radix/index.d.ts +14 -0
- package/dist/types/radix/index.d.ts.map +1 -0
- package/dist/types/ripple/index.d.ts +43 -0
- package/dist/types/ripple/index.d.ts.map +1 -0
- package/dist/types/solana/index.d.ts +37 -0
- package/dist/types/solana/index.d.ts.map +1 -0
- package/dist/types/solana/toolbox.d.ts +41 -0
- package/dist/types/solana/toolbox.d.ts.map +1 -0
- package/dist/types/substrate/balance.d.ts +17 -0
- package/dist/types/substrate/balance.d.ts.map +1 -0
- package/{src/substrate/index.ts → dist/types/substrate/index.d.ts} +1 -0
- package/dist/types/substrate/index.d.ts.map +1 -0
- package/dist/types/substrate/substrate.d.ts +148 -0
- package/dist/types/substrate/substrate.d.ts.map +1 -0
- package/dist/types/substrate/types.d.ts +100 -0
- package/dist/types/substrate/types.d.ts.map +1 -0
- package/dist/types/tron/helpers/trc20.abi.d.ts +156 -0
- package/dist/types/tron/helpers/trc20.abi.d.ts.map +1 -0
- package/dist/types/tron/helpers/trongrid.d.ts +8 -0
- package/dist/types/tron/helpers/trongrid.d.ts.map +1 -0
- package/dist/types/tron/index.d.ts +6 -0
- package/dist/types/tron/index.d.ts.map +1 -0
- package/dist/types/tron/toolbox.d.ts +26 -0
- package/dist/types/tron/toolbox.d.ts.map +1 -0
- package/dist/types/tron/types.d.ts +101 -0
- package/dist/types/tron/types.d.ts.map +1 -0
- package/dist/types/types.d.ts +18 -0
- package/dist/types/types.d.ts.map +1 -0
- package/dist/types/utils.d.ts +4 -0
- package/dist/types/utils.d.ts.map +1 -0
- package/dist/types/utxo/helpers/api.d.ts +133 -0
- package/dist/types/utxo/helpers/api.d.ts.map +1 -0
- package/dist/types/utxo/helpers/bchaddrjs.d.ts +10 -0
- package/dist/types/utxo/helpers/bchaddrjs.d.ts.map +1 -0
- package/dist/types/utxo/helpers/coinselect.d.ts +16 -0
- package/dist/types/utxo/helpers/coinselect.d.ts.map +1 -0
- package/{src/utxo/helpers/index.ts → dist/types/utxo/helpers/index.d.ts} +1 -0
- package/dist/types/utxo/helpers/index.d.ts.map +1 -0
- package/dist/types/utxo/helpers/txSize.d.ts +21 -0
- package/dist/types/utxo/helpers/txSize.d.ts.map +1 -0
- package/{src/utxo/index.ts → dist/types/utxo/index.d.ts} +1 -0
- package/dist/types/utxo/index.d.ts.map +1 -0
- package/dist/types/utxo/toolbox/bitcoinCash.d.ts +104 -0
- package/dist/types/utxo/toolbox/bitcoinCash.d.ts.map +1 -0
- package/dist/types/utxo/toolbox/index.d.ts +50 -0
- package/dist/types/utxo/toolbox/index.d.ts.map +1 -0
- package/dist/types/utxo/toolbox/utxo.d.ts +102 -0
- package/dist/types/utxo/toolbox/utxo.d.ts.map +1 -0
- package/dist/types/utxo/toolbox/zcash.d.ts +83 -0
- package/dist/types/utxo/toolbox/zcash.d.ts.map +1 -0
- package/dist/types/utxo/types.d.ts +46 -0
- package/dist/types/utxo/types.d.ts.map +1 -0
- package/package.json +15 -18
- package/dist/chunk-0h4xdrwz.js +0 -5
- package/dist/chunk-0h4xdrwz.js.map +0 -10
- package/dist/chunk-4yap1fvd.js +0 -4
- package/dist/chunk-4yap1fvd.js.map +0 -10
- package/dist/chunk-9bqegm61.js +0 -4
- package/dist/chunk-9bqegm61.js.map +0 -10
- package/dist/chunk-fazw0jvt.js +0 -4
- package/dist/chunk-fazw0jvt.js.map +0 -9
- package/dist/chunk-fjfxga2v.js +0 -4
- package/dist/chunk-fjfxga2v.js.map +0 -10
- package/dist/chunk-s47y8512.js +0 -5
- package/dist/chunk-s47y8512.js.map +0 -9
- package/dist/chunk-vtd17cje.js +0 -4
- package/dist/chunk-vtd17cje.js.map +0 -10
- package/dist/chunk-zcdeg6h9.js +0 -5
- package/dist/chunk-zcdeg6h9.js.map +0 -10
- package/src/cosmos/thorchainUtils/addressFormat.ts +0 -26
- package/src/cosmos/thorchainUtils/messages.ts +0 -262
- package/src/cosmos/thorchainUtils/registry.ts +0 -44
- package/src/cosmos/thorchainUtils/types/MsgCompiled.ts +0 -2800
- package/src/cosmos/thorchainUtils/types/client-types.ts +0 -73
- package/src/cosmos/thorchainUtils/types/index.ts +0 -1
- package/src/cosmos/toolbox/cosmos.ts +0 -375
- package/src/cosmos/toolbox/index.ts +0 -33
- package/src/cosmos/toolbox/thorchain.ts +0 -313
- package/src/cosmos/util.ts +0 -266
- package/src/evm/__tests__/address-validation.test.ts +0 -86
- package/src/evm/__tests__/ethereum.test.ts +0 -141
- package/src/evm/api.ts +0 -21
- package/src/evm/contracts/eth/multicall.ts +0 -165
- package/src/evm/contracts/op/gasOracle.ts +0 -151
- package/src/evm/helpers.ts +0 -194
- package/src/evm/toolbox/baseEVMToolbox.ts +0 -762
- package/src/evm/toolbox/evm.ts +0 -66
- package/src/evm/toolbox/index.ts +0 -52
- package/src/evm/toolbox/op.ts +0 -131
- package/src/evm/types.ts +0 -146
- package/src/index.ts +0 -263
- package/src/near/__tests__/core.test.ts +0 -80
- package/src/near/helpers/contractFactory.ts +0 -22
- package/src/near/helpers/core.ts +0 -91
- package/src/near/helpers/gasEstimation.ts +0 -110
- package/src/near/helpers/index.ts +0 -5
- package/src/near/helpers/nep141.ts +0 -110
- package/src/near/index.ts +0 -24
- package/src/near/toolbox.ts +0 -509
- package/src/near/types/contract.ts +0 -48
- package/src/near/types/nep141.ts +0 -66
- package/src/near/types.ts +0 -57
- package/src/radix/index.ts +0 -156
- package/src/ripple/index.ts +0 -192
- package/src/solana/index.ts +0 -55
- package/src/solana/toolbox.ts +0 -433
- package/src/substrate/balance.ts +0 -92
- package/src/substrate/substrate.ts +0 -320
- package/src/substrate/types.ts +0 -120
- package/src/tron/__tests__/toolbox.test.ts +0 -147
- package/src/tron/helpers/trc20.abi.ts +0 -107
- package/src/tron/helpers/trongrid.ts +0 -54
- package/src/tron/index.ts +0 -17
- package/src/tron/toolbox.ts +0 -650
- package/src/tron/types.ts +0 -120
- package/src/utils.ts +0 -27
- package/src/utxo/__tests__/zcash-integration.test.ts +0 -114
- package/src/utxo/helpers/api.ts +0 -560
- package/src/utxo/helpers/bchaddrjs.ts +0 -183
- package/src/utxo/helpers/coinselect.ts +0 -98
- package/src/utxo/helpers/txSize.ts +0 -104
- package/src/utxo/toolbox/bitcoinCash.ts +0 -320
- package/src/utxo/toolbox/index.ts +0 -90
- package/src/utxo/toolbox/utxo.ts +0 -525
- package/src/utxo/toolbox/zcash.ts +0 -208
- package/src/utxo/types.ts +0 -57
package/dist/src/index.cjs
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
var P={};d(P,{getToolbox:()=>x,getFeeEstimator:()=>g,getAddressValidator:()=>f});module.exports=u(P);var o=require("@swapkit/helpers");async function f(){let{match:r}=await import("ts-pattern"),{cosmosValidateAddress:i}=await import("@swapkit/toolboxes/cosmos"),{evmValidateAddress:n}=await import("@swapkit/toolboxes/evm"),{substrateValidateAddress:a}=await import("@swapkit/toolboxes/substrate"),{getUTXOAddressValidator:e}=await import("@swapkit/toolboxes/utxo"),{getSolanaAddressValidator:l}=await import("@swapkit/toolboxes/solana"),{getValidateNearAddress:p}=await import("@swapkit/toolboxes/near"),{rippleValidateAddress:m}=await import("@swapkit/toolboxes/ripple"),{radixValidateAddress:c}=await import("@swapkit/toolboxes/radix"),{getTronAddressValidator:b}=await import("@swapkit/toolboxes/tron"),y=await l(),h=await e(),w=await b(),C=await p();return function A({address:s,chain:T}){return r(T).with(o.Chain.Arbitrum,o.Chain.Aurora,o.Chain.Avalanche,o.Chain.Base,o.Chain.Berachain,o.Chain.BinanceSmartChain,o.Chain.Ethereum,o.Chain.Gnosis,o.Chain.Optimism,o.Chain.Polygon,()=>n({address:s})).with(o.Chain.Litecoin,o.Chain.Dash,o.Chain.Dogecoin,o.Chain.BitcoinCash,o.Chain.Bitcoin,()=>h({address:s,chain:T})).with(o.Chain.Cosmos,o.Chain.Kujira,o.Chain.Maya,o.Chain.THORChain,()=>i({address:s,chain:T})).with(o.Chain.Chainflip,o.Chain.Polkadot,()=>a({address:s,chain:T})).with(o.Chain.Radix,()=>c(s)).with(o.Chain.Near,()=>C(s)).with(o.Chain.Ripple,()=>m(s)).with(o.Chain.Solana,()=>y(s)).with(o.Chain.Tron,()=>w(s)).otherwise(()=>!1)}}function g(r){return async function i(n){let{match:a}=await import("ts-pattern");return a(r).returnType().with(o.Chain.Arbitrum,o.Chain.Aurora,o.Chain.Avalanche,o.Chain.Base,o.Chain.Berachain,o.Chain.BinanceSmartChain,o.Chain.Ethereum,o.Chain.Gnosis,o.Chain.Optimism,o.Chain.Polygon,async(e)=>{let l=await x(e),p=await l.createTransaction(n);return l.estimateTransactionFee({...p,feeOption:n.feeOptionKey||o.FeeOption.Fast,chain:e})}).with(o.Chain.Bitcoin,o.Chain.BitcoinCash,o.Chain.Dogecoin,o.Chain.Dash,o.Chain.Litecoin,o.Chain.Polkadot,o.Chain.Solana,o.Chain.Ripple,o.Chain.Tron,o.Chain.Near,async(e)=>{return(await x(e)).estimateTransactionFee(n)}).with(o.Chain.THORChain,o.Chain.Maya,o.Chain.Kujira,o.Chain.Cosmos,async()=>{let{estimateTransactionFee:e}=await import("@swapkit/toolboxes/cosmos");return e(n)}).otherwise(async()=>o.AssetValue.from({chain:r}))}}async function x(r,i){let{match:n}=await import("ts-pattern");return n(r).returnType().with(o.Chain.Arbitrum,o.Chain.Aurora,o.Chain.Avalanche,o.Chain.Base,o.Chain.Berachain,o.Chain.BinanceSmartChain,o.Chain.Ethereum,o.Chain.Gnosis,o.Chain.Optimism,o.Chain.Polygon,async()=>{let{getEvmToolbox:a}=await import("@swapkit/toolboxes/evm");return await a(r,i)}).with(o.Chain.Litecoin,o.Chain.Dash,o.Chain.Dogecoin,o.Chain.BitcoinCash,o.Chain.Bitcoin,o.Chain.Zcash,async()=>{let{getUtxoToolbox:a}=await import("@swapkit/toolboxes/utxo");return await a(r,i)}).with(o.Chain.Cosmos,o.Chain.Kujira,o.Chain.Maya,o.Chain.THORChain,async()=>{let{getCosmosToolbox:a}=await import("@swapkit/toolboxes/cosmos");return await a(r,i)}).with(o.Chain.Chainflip,o.Chain.Polkadot,async()=>{let{getSubstrateToolbox:a}=await import("@swapkit/toolboxes/substrate");return await a(r,i)}).with(o.Chain.Radix,async()=>{let{RadixToolbox:a}=await import("@swapkit/toolboxes/radix");return await a(i)}).with(o.Chain.Ripple,async()=>{let{getRippleToolbox:a}=await import("@swapkit/toolboxes/ripple");return await a(i)}).with(o.Chain.Solana,async()=>{let{getSolanaToolbox:a}=await import("@swapkit/toolboxes/solana");return await a(i)}).with(o.Chain.Tron,async()=>{let{createTronToolbox:a}=await import("@swapkit/toolboxes/tron");return await a(i)}).with(o.Chain.Near,async()=>{let{getNearToolbox:a}=await import("@swapkit/toolboxes/near");return await a(i)}).otherwise(()=>{throw new o.SwapKitError("toolbox_not_supported",{chain:r})})}
|
|
1
|
+
var ef=Object.create;var{getPrototypeOf:yX,defineProperty:BT,getOwnPropertyNames:q1,getOwnPropertyDescriptor:TX}=Object,z1=Object.prototype.hasOwnProperty;var Y=(T,f,x)=>{x=T!=null?ef(yX(T)):{};let y=f||!T||!T.__esModule?BT(x,"default",{value:T,enumerable:!0}):x;for(let X of q1(T))if(!z1.call(y,X))BT(y,X,{get:()=>T[X],enumerable:!0});return y},Q1=new WeakMap,_y=(T)=>{var f=Q1.get(T),x;if(f)return f;if(f=BT({},"__esModule",{value:!0}),T&&typeof T==="object"||typeof T==="function")q1(T).map((y)=>!z1.call(f,y)&&BT(f,y,{get:()=>T[y],enumerable:!(x=TX(T,y))||x.enumerable}));return Q1.set(T,f),f};var qy=(T,f)=>{for(var x in f)BT(T,x,{get:f[x],enumerable:!0,configurable:!0,set:(y)=>f[x]=()=>y})};var l=(T,f)=>()=>(T&&(f=T(T=0)),f);function GT(T){return wy.base64.encode(Uint8Array.from(wy.bech32.fromWords(wy.bech32.decode(T).words)))}function WT(T,f="thor"){return wy.bech32.encode(f,wy.bech32.toWords(wy.base64.decode(T)))}function fX(T){return gT.fromByteArray(T)}function XX(T){if(!T.match(/^[a-zA-Z0-9+/]*={0,2}$/))throw new M1.SwapKitError("toolbox_cosmos_invalid_params",{error:"Invalid base64 string format"});return gT.toByteArray(T)}var wy,M1,gT;var P5=l(()=>{wy=require("@scure/base"),M1=require("@swapkit/helpers"),gT=require("base64-js")});function Ny(T){switch(T){case v.Chain.Maya:return{amount:[],gas:"10000000000"};case v.Chain.THORChain:return{amount:[],gas:"500000000"};case v.Chain.Kujira:return W1;default:return G1}}async function Iy(T){let f=await import("@cosmjs/stargate"),x=f.StargateClient??f.default?.StargateClient,y=typeof window!=="undefined"?{}:{referrer:"https://sdk.swapkit.dev",referer:"https://sdk.swapkit.dev"};return x.connect({url:T,headers:y})}async function UT(T,f,x={}){let y=await import("@cosmjs/stargate"),X=y.SigningStargateClient??y.default?.SigningStargateClient,L=y.GasPrice??y.default?.GasPrice,Z=typeof x==="string"?x:"0.0003uatom",J=typeof x==="string"?{}:x;return X.connectWithSigner(T,f,{gasPrice:L.fromString(Z),...J})}async function V5(T,f){let x=await import("@cosmjs/stargate");return(x.SigningStargateClient??x.default?.SigningStargateClient).offline(T,f)}var v,l5="FACTORY/KUJIRA1QK00H5ATUTPSV900X202PXX42NPJR9THG58DNQPA72F2P7M2LUASE444A7/UUSK",B1="FACTORY/KUJIRA1YGFXN0ER40KLCNCK8THLTUPRDXLCK6WVNPKF2K/UYUM",G1,W1,Ey=(T,f=!1)=>{if(f)return T.toLowerCase();switch(T){case"uUSK":case"USK":return l5;case"uYUM":case"YUM":return B1;case"uKUJI":case"KUJI":return"ukuji";case"ATOM":case"uATOM":return"uatom";default:return T}},HT=({symbol:T,chain:f})=>{if(f===v.Chain.Maya)return(T.toUpperCase()!=="CACAO"?T:`${v.Chain.Maya}.${T}`).toUpperCase();if(f===v.Chain.THORChain)return(["RUNE","TCY","RUJI"].includes(T.toUpperCase())?`${v.Chain.THORChain}.${T}`:T).toUpperCase();return Ey(T,!1)},H1=(T)=>{let{isStagenet:f}=v.SKConfig.get("envs"),x=v.SKConfig.get("rpcUrls");switch(T){case v.ChainId.Kujira:return x.KUJI;case v.ChainId.THORChain:case"thorchain-mainnet-v1":return f?x.THOR_STAGENET:x.THOR;case v.ChainId.Maya:return f?x.MAYA_STAGENET:x.MAYA;default:return x.GAIA}},LX=(T)=>{switch(T){case v.Chain.Maya:case v.Chain.THORChain:return"/types.MsgSend";case v.Chain.Cosmos:case v.Chain.Kujira:return"/cosmos.bank.v1beta1.MsgSend";default:throw new v.SwapKitError("toolbox_cosmos_not_supported",{chain:T})}},$5=async({sender:T,recipient:f,assetValue:x,memo:y="",feeRate:X,sequence:L,accountNumber:Z})=>{let{chain:J,chainId:Q}=x,q=H1(Q),B=await(await Iy(q)).getAccount(T);if(!B)throw new v.SwapKitError("toolbox_cosmos_account_not_found",{sender:T});let M=v.AssetValue.from({chain:J}),H=Ey(M.symbol),G=Ny(J),R=H&&X?{amount:[{denom:H,amount:X.toString()}],gas:G.gas}:G,I={fromAddress:T,toAddress:f,amount:[{amount:x.getBaseValue("string"),denom:Ey(x.symbol)}]};return{accountNumber:Z??B.accountNumber,chainId:Q,fee:R,memo:y,sequence:L??B.sequence,msgs:[{typeUrl:LX(J),value:I}]}},xX,F5=(T,f)=>{let x=xX[T.toLowerCase()];if(!x)return v.AssetValue.from({asset:T,value:f,fromBaseDecimal:8});let{chain:y,asset:X,decimals:L}=x,Z=y?{chain:y}:{asset:X};return v.AssetValue.from({...Z,value:f,fromBaseDecimal:L})};var YT=l(()=>{v=require("@swapkit/helpers"),G1={amount:[{denom:"uatom",amount:"500"}],gas:"200000"},W1={amount:[{denom:"ukuji",amount:"1000"}],gas:"200000"};xX={rune:{chain:v.Chain.THORChain,decimals:v.BaseDecimal[v.Chain.THORChain]},tcy:{asset:"THOR.TCY",decimals:v.BaseDecimal[v.Chain.THORChain]},"x/kuji":{asset:"THOR.KUJI",decimals:v.BaseDecimal[v.Chain.THORChain]},uatom:{chain:v.Chain.Cosmos,decimals:v.BaseDecimal[v.Chain.Cosmos]},atom:{chain:v.Chain.Cosmos,decimals:v.BaseDecimal[v.Chain.Cosmos]},cacao:{chain:v.Chain.Maya,decimals:10},maya:{asset:`${v.Chain.Maya}.${v.Chain.Maya}`,decimals:4},ukuji:{chain:v.Chain.Kujira,decimals:v.BaseDecimal[v.Chain.Kujira]},kuji:{chain:v.Chain.Kujira,decimals:v.BaseDecimal[v.Chain.Kujira]},[l5.toLowerCase()]:{asset:`${v.Chain.Kujira}.USK`,decimals:v.BaseDecimal[v.Chain.Kujira]}}});var U1={};qy(U1,{$root:()=>D});var a,F,zy,C,D;var Y1=l(()=>{a=Y(require("protobufjs/minimal.js")),F=a.default.Reader,zy=a.default.Writer,C=a.default.util,D=a.default.roots.default||(a.default.roots.default={});D.common=(()=>{let T={};return T.Asset=(()=>{function f(x){if(x){for(let y=Object.keys(x),X=0;X<y.length;++X)if(x[y[X]]!=null)this[y[X]]=x[y[X]]}}return f.prototype.chain="",f.prototype.symbol="",f.prototype.ticker="",f.prototype.synth=!1,f.create=function x(y){return new f(y)},f.encode=function x(y,X){if(!X)X=zy.create();if(y.chain!=null&&Object.hasOwnProperty.call(y,"chain"))X.uint32(10).string(y.chain);if(y.symbol!=null&&Object.hasOwnProperty.call(y,"symbol"))X.uint32(18).string(y.symbol);if(y.ticker!=null&&Object.hasOwnProperty.call(y,"ticker"))X.uint32(26).string(y.ticker);if(y.synth!=null&&Object.hasOwnProperty.call(y,"synth"))X.uint32(32).bool(y.synth);return X},f.encodeDelimited=function x(y,X){return this.encode(y,X).ldelim()},f.decode=function x(y,X){if(!(y instanceof F))y=F.create(y);let L=X===void 0?y.len:y.pos+X,Z=new D.common.Asset;while(y.pos<L){let J=y.uint32();switch(J>>>3){case 1:Z.chain=y.string();break;case 2:Z.symbol=y.string();break;case 3:Z.ticker=y.string();break;case 4:Z.synth=y.bool();break;default:y.skipType(J&7);break}}return Z},f.decodeDelimited=function x(y){if(!(y instanceof F))y=new F(y);return this.decode(y,y.uint32())},f.verify=function x(y){if(typeof y!=="object"||y===null)return"object expected";if(y.chain!=null&&y.hasOwnProperty("chain")){if(!C.isString(y.chain))return"chain: string expected"}if(y.symbol!=null&&y.hasOwnProperty("symbol")){if(!C.isString(y.symbol))return"symbol: string expected"}if(y.ticker!=null&&y.hasOwnProperty("ticker")){if(!C.isString(y.ticker))return"ticker: string expected"}if(y.synth!=null&&y.hasOwnProperty("synth")){if(typeof y.synth!=="boolean")return"synth: boolean expected"}return null},f.fromObject=function x(y){if(y instanceof D.common.Asset)return y;let X=new D.common.Asset;if(y.chain!=null)X.chain=String(y.chain);if(y.symbol!=null)X.symbol=String(y.symbol);if(y.ticker!=null)X.ticker=String(y.ticker);if(y.synth!=null)X.synth=Boolean(y.synth);return X},f.toObject=function x(y,X){if(!X)X={};let L={};if(X.defaults)L.chain="",L.symbol="",L.ticker="",L.synth=!1;if(y.chain!=null&&y.hasOwnProperty("chain"))L.chain=y.chain;if(y.symbol!=null&&y.hasOwnProperty("symbol"))L.symbol=y.symbol;if(y.ticker!=null&&y.hasOwnProperty("ticker"))L.ticker=y.ticker;if(y.synth!=null&&y.hasOwnProperty("synth"))L.synth=y.synth;return L},f.prototype.toJSON=function x(){return this.constructor.toObject(this,a.default.util.toJSONOptions)},f})(),T.Coin=(()=>{function f(x){if(x){for(let y=Object.keys(x),X=0;X<y.length;++X)if(x[y[X]]!=null)this[y[X]]=x[y[X]]}}return f.prototype.asset=null,f.prototype.amount="",f.prototype.decimals=C.Long?C.Long.fromBits(0,0,!1):0,f.create=function x(y){return new f(y)},f.encode=function x(y,X){if(!X)X=zy.create();if(y.asset!=null&&Object.hasOwnProperty.call(y,"asset"))D.common.Asset.encode(y.asset,X.uint32(10).fork()).ldelim();if(y.amount!=null&&Object.hasOwnProperty.call(y,"amount"))X.uint32(18).string(y.amount);if(y.decimals!=null&&Object.hasOwnProperty.call(y,"decimals"))X.uint32(24).int64(y.decimals);return X},f.encodeDelimited=function x(y,X){return this.encode(y,X).ldelim()},f.decode=function x(y,X){if(!(y instanceof F))y=F.create(y);let L=X===void 0?y.len:y.pos+X,Z=new D.common.Coin;while(y.pos<L){let J=y.uint32();switch(J>>>3){case 1:Z.asset=D.common.Asset.decode(y,y.uint32());break;case 2:Z.amount=y.string();break;case 3:Z.decimals=y.int64();break;default:y.skipType(J&7);break}}return Z},f.decodeDelimited=function x(y){if(!(y instanceof F))y=new F(y);return this.decode(y,y.uint32())},f.verify=function x(y){if(typeof y!=="object"||y===null)return"object expected";if(y.asset!=null&&y.hasOwnProperty("asset")){let X=D.common.Asset.verify(y.asset);if(X)return"asset."+X}if(y.amount!=null&&y.hasOwnProperty("amount")){if(!C.isString(y.amount))return"amount: string expected"}if(y.decimals!=null&&y.hasOwnProperty("decimals")){if(!C.isInteger(y.decimals)&&!(y.decimals&&C.isInteger(y.decimals.low)&&C.isInteger(y.decimals.high)))return"decimals: integer|Long expected"}return null},f.fromObject=function x(y){if(y instanceof D.common.Coin)return y;let X=new D.common.Coin;if(y.asset!=null){if(typeof y.asset!=="object")throw TypeError(".common.Coin.asset: object expected");X.asset=D.common.Asset.fromObject(y.asset)}if(y.amount!=null)X.amount=String(y.amount);if(y.decimals!=null){if(C.Long)(X.decimals=C.Long.fromValue(y.decimals)).unsigned=!1;else if(typeof y.decimals==="string")X.decimals=Number.parseInt(y.decimals,10);else if(typeof y.decimals==="number")X.decimals=y.decimals;else if(typeof y.decimals==="object")X.decimals=new C.LongBits(y.decimals.low>>>0,y.decimals.high>>>0).toNumber()}return X},f.toObject=function x(y,X){if(!X)X={};let L={};if(X.defaults)if(L.asset=null,L.amount="",C.Long){let Z=new C.Long(0,0,!1);L.decimals=X.longs===String?Z.toString():X.longs===Number?Z.toNumber():Z}else L.decimals=X.longs===String?"0":0;if(y.asset!=null&&y.hasOwnProperty("asset"))L.asset=D.common.Asset.toObject(y.asset,X);if(y.amount!=null&&y.hasOwnProperty("amount"))L.amount=y.amount;if(y.decimals!=null&&y.hasOwnProperty("decimals"))if(typeof y.decimals==="number")L.decimals=X.longs===String?String(y.decimals):y.decimals;else L.decimals=X.longs===String?C.Long.prototype.toString.call(y.decimals):X.longs===Number?new C.LongBits(y.decimals.low>>>0,y.decimals.high>>>0).toNumber():y.decimals;return L},f.prototype.toJSON=function x(){return this.constructor.toObject(this,a.default.util.toJSONOptions)},f})(),T.PubKeySet=(()=>{function f(x){if(x){for(let y=Object.keys(x),X=0;X<y.length;++X)if(x[y[X]]!=null)this[y[X]]=x[y[X]]}}return f.prototype.secp256k1="",f.prototype.ed25519="",f.create=function x(y){return new f(y)},f.encode=function x(y,X){if(!X)X=zy.create();if(y.secp256k1!=null&&Object.hasOwnProperty.call(y,"secp256k1"))X.uint32(10).string(y.secp256k1);if(y.ed25519!=null&&Object.hasOwnProperty.call(y,"ed25519"))X.uint32(18).string(y.ed25519);return X},f.encodeDelimited=function x(y,X){return this.encode(y,X).ldelim()},f.decode=function x(y,X){if(!(y instanceof F))y=F.create(y);let L=X===void 0?y.len:y.pos+X,Z=new D.common.PubKeySet;while(y.pos<L){let J=y.uint32();switch(J>>>3){case 1:Z.secp256k1=y.string();break;case 2:Z.ed25519=y.string();break;default:y.skipType(J&7);break}}return Z},f.decodeDelimited=function x(y){if(!(y instanceof F))y=new F(y);return this.decode(y,y.uint32())},f.verify=function x(y){if(typeof y!=="object"||y===null)return"object expected";if(y.secp256k1!=null&&y.hasOwnProperty("secp256k1")){if(!C.isString(y.secp256k1))return"secp256k1: string expected"}if(y.ed25519!=null&&y.hasOwnProperty("ed25519")){if(!C.isString(y.ed25519))return"ed25519: string expected"}return null},f.fromObject=function x(y){if(y instanceof D.common.PubKeySet)return y;let X=new D.common.PubKeySet;if(y.secp256k1!=null)X.secp256k1=String(y.secp256k1);if(y.ed25519!=null)X.ed25519=String(y.ed25519);return X},f.toObject=function x(y,X){if(!X)X={};let L={};if(X.defaults)L.secp256k1="",L.ed25519="";if(y.secp256k1!=null&&y.hasOwnProperty("secp256k1"))L.secp256k1=y.secp256k1;if(y.ed25519!=null&&y.hasOwnProperty("ed25519"))L.ed25519=y.ed25519;return L},f.prototype.toJSON=function x(){return this.constructor.toObject(this,a.default.util.toJSONOptions)},f})(),T.Tx=(()=>{function f(x){if(this.coins=[],this.gas=[],x){for(let y=Object.keys(x),X=0;X<y.length;++X)if(x[y[X]]!=null)this[y[X]]=x[y[X]]}}return f.prototype.id="",f.prototype.chain="",f.prototype.fromAddress="",f.prototype.toAddress="",f.prototype.coins=C.emptyArray,f.prototype.gas=C.emptyArray,f.prototype.memo="",f.create=function x(y){return new f(y)},f.encode=function x(y,X){if(!X)X=zy.create();if(y.id!=null&&Object.hasOwnProperty.call(y,"id"))X.uint32(10).string(y.id);if(y.chain!=null&&Object.hasOwnProperty.call(y,"chain"))X.uint32(18).string(y.chain);if(y.fromAddress!=null&&Object.hasOwnProperty.call(y,"fromAddress"))X.uint32(26).string(y.fromAddress);if(y.toAddress!=null&&Object.hasOwnProperty.call(y,"toAddress"))X.uint32(34).string(y.toAddress);if(y.coins?.length)for(let L=0;L<y.coins.length;++L)D.common.Coin.encode(y.coins[L],X.uint32(42).fork()).ldelim();if(y.gas?.length)for(let L=0;L<y.gas.length;++L)D.common.Coin.encode(y.gas[L],X.uint32(50).fork()).ldelim();if(y.memo!=null&&Object.hasOwnProperty.call(y,"memo"))X.uint32(58).string(y.memo);return X},f.encodeDelimited=function x(y,X){return this.encode(y,X).ldelim()},f.decode=function x(y,X){if(!(y instanceof F))y=F.create(y);let L=X===void 0?y.len:y.pos+X,Z=new D.common.Tx;while(y.pos<L){let J=y.uint32();switch(J>>>3){case 1:Z.id=y.string();break;case 2:Z.chain=y.string();break;case 3:Z.fromAddress=y.string();break;case 4:Z.toAddress=y.string();break;case 5:if(!Z.coins?.length)Z.coins=[];Z.coins.push(D.common.Coin.decode(y,y.uint32()));break;case 6:if(!Z.gas?.length)Z.gas=[];Z.gas.push(D.common.Coin.decode(y,y.uint32()));break;case 7:Z.memo=y.string();break;default:y.skipType(J&7);break}}return Z},f.decodeDelimited=function x(y){if(!(y instanceof F))y=new F(y);return this.decode(y,y.uint32())},f.verify=function x(y){if(typeof y!=="object"||y===null)return"object expected";if(y.id!=null&&y.hasOwnProperty("id")){if(!C.isString(y.id))return"id: string expected"}if(y.chain!=null&&y.hasOwnProperty("chain")){if(!C.isString(y.chain))return"chain: string expected"}if(y.fromAddress!=null&&y.hasOwnProperty("fromAddress")){if(!C.isString(y.fromAddress))return"fromAddress: string expected"}if(y.toAddress!=null&&y.hasOwnProperty("toAddress")){if(!C.isString(y.toAddress))return"toAddress: string expected"}if(y.coins!=null&&y.hasOwnProperty("coins")){if(!Array.isArray(y.coins))return"coins: array expected";for(let X=0;X<y.coins.length;++X){let L=D.common.Coin.verify(y.coins[X]);if(L)return"coins."+L}}if(y.gas!=null&&y.hasOwnProperty("gas")){if(!Array.isArray(y.gas))return"gas: array expected";for(let X=0;X<y.gas.length;++X){let L=D.common.Coin.verify(y.gas[X]);if(L)return"gas."+L}}if(y.memo!=null&&y.hasOwnProperty("memo")){if(!C.isString(y.memo))return"memo: string expected"}return null},f.fromObject=function x(y){if(y instanceof D.common.Tx)return y;let X=new D.common.Tx;if(y.id!=null)X.id=String(y.id);if(y.chain!=null)X.chain=String(y.chain);if(y.fromAddress!=null)X.fromAddress=String(y.fromAddress);if(y.toAddress!=null)X.toAddress=String(y.toAddress);if(y.coins){if(!Array.isArray(y.coins))throw TypeError(".common.Tx.coins: array expected");X.coins=[];for(let L=0;L<y.coins.length;++L){if(typeof y.coins[L]!=="object")throw TypeError(".common.Tx.coins: object expected");X.coins[L]=D.common.Coin.fromObject(y.coins[L])}}if(y.gas){if(!Array.isArray(y.gas))throw TypeError(".common.Tx.gas: array expected");X.gas=[];for(let L=0;L<y.gas.length;++L){if(typeof y.gas[L]!=="object")throw TypeError(".common.Tx.gas: object expected");X.gas[L]=D.common.Coin.fromObject(y.gas[L])}}if(y.memo!=null)X.memo=String(y.memo);return X},f.toObject=function x(y,X){if(!X)X={};let L={};if(X.arrays||X.defaults)L.coins=[],L.gas=[];if(X.defaults)L.id="",L.chain="",L.fromAddress="",L.toAddress="",L.memo="";if(y.id!=null&&y.hasOwnProperty("id"))L.id=y.id;if(y.chain!=null&&y.hasOwnProperty("chain"))L.chain=y.chain;if(y.fromAddress!=null&&y.hasOwnProperty("fromAddress"))L.fromAddress=y.fromAddress;if(y.toAddress!=null&&y.hasOwnProperty("toAddress"))L.toAddress=y.toAddress;if(y.coins?.length){L.coins=[];for(let Z=0;Z<y.coins.length;++Z)L.coins[Z]=D.common.Coin.toObject(y.coins[Z],X)}if(y.gas?.length){L.gas=[];for(let Z=0;Z<y.gas.length;++Z)L.gas[Z]=D.common.Coin.toObject(y.gas[Z],X)}if(y.memo!=null&&y.hasOwnProperty("memo"))L.memo=y.memo;return L},f.prototype.toJSON=function x(){return this.constructor.toObject(this,a.default.util.toJSONOptions)},f})(),T.Fee=(()=>{function f(x){if(this.coins=[],x){for(let y=Object.keys(x),X=0;X<y.length;++X)if(x[y[X]]!=null)this[y[X]]=x[y[X]]}}return f.prototype.coins=C.emptyArray,f.prototype.poolDeduct="",f.create=function x(y){return new f(y)},f.encode=function x(y,X){if(!X)X=zy.create();if(y.coins?.length)for(let L=0;L<y.coins.length;++L)D.common.Coin.encode(y.coins[L],X.uint32(10).fork()).ldelim();if(y.poolDeduct!=null&&Object.hasOwnProperty.call(y,"poolDeduct"))X.uint32(18).string(y.poolDeduct);return X},f.encodeDelimited=function x(y,X){return this.encode(y,X).ldelim()},f.decode=function x(y,X){if(!(y instanceof F))y=F.create(y);let L=X===void 0?y.len:y.pos+X,Z=new D.common.Fee;while(y.pos<L){let J=y.uint32();switch(J>>>3){case 1:if(!Z.coins?.length)Z.coins=[];Z.coins.push(D.common.Coin.decode(y,y.uint32()));break;case 2:Z.poolDeduct=y.string();break;default:y.skipType(J&7);break}}return Z},f.decodeDelimited=function x(y){if(!(y instanceof F))y=new F(y);return this.decode(y,y.uint32())},f.verify=function x(y){if(typeof y!=="object"||y===null)return"object expected";if(y.coins!=null&&y.hasOwnProperty("coins")){if(!Array.isArray(y.coins))return"coins: array expected";for(let X=0;X<y.coins.length;++X){let L=D.common.Coin.verify(y.coins[X]);if(L)return"coins."+L}}if(y.poolDeduct!=null&&y.hasOwnProperty("poolDeduct")){if(!C.isString(y.poolDeduct))return"poolDeduct: string expected"}return null},f.fromObject=function x(y){if(y instanceof D.common.Fee)return y;let X=new D.common.Fee;if(y.coins){if(!Array.isArray(y.coins))throw TypeError(".common.Fee.coins: array expected");X.coins=[];for(let L=0;L<y.coins.length;++L){if(typeof y.coins[L]!=="object")throw TypeError(".common.Fee.coins: object expected");X.coins[L]=D.common.Coin.fromObject(y.coins[L])}}if(y.poolDeduct!=null)X.poolDeduct=String(y.poolDeduct);return X},f.toObject=function x(y,X){if(!X)X={};let L={};if(X.arrays||X.defaults)L.coins=[];if(X.defaults)L.poolDeduct="";if(y.coins?.length){L.coins=[];for(let Z=0;Z<y.coins.length;++Z)L.coins[Z]=D.common.Coin.toObject(y.coins[Z],X)}if(y.poolDeduct!=null&&y.hasOwnProperty("poolDeduct"))L.poolDeduct=y.poolDeduct;return L},f.prototype.toJSON=function x(){return this.constructor.toObject(this,a.default.util.toJSONOptions)},f})(),T.ProtoUint=(()=>{function f(x){if(x){for(let y=Object.keys(x),X=0;X<y.length;++X)if(x[y[X]]!=null)this[y[X]]=x[y[X]]}}return f.prototype.value="",f.create=function x(y){return new f(y)},f.encode=function x(y,X){if(!X)X=zy.create();if(y.value!=null&&Object.hasOwnProperty.call(y,"value"))X.uint32(10).string(y.value);return X},f.encodeDelimited=function x(y,X){return this.encode(y,X).ldelim()},f.decode=function x(y,X){if(!(y instanceof F))y=F.create(y);let L=X===void 0?y.len:y.pos+X,Z=new D.common.ProtoUint;while(y.pos<L){let J=y.uint32();switch(J>>>3){case 1:Z.value=y.string();break;default:y.skipType(J&7);break}}return Z},f.decodeDelimited=function x(y){if(!(y instanceof F))y=new F(y);return this.decode(y,y.uint32())},f.verify=function x(y){if(typeof y!=="object"||y===null)return"object expected";if(y.value!=null&&y.hasOwnProperty("value")){if(!C.isString(y.value))return"value: string expected"}return null},f.fromObject=function x(y){if(y instanceof D.common.ProtoUint)return y;let X=new D.common.ProtoUint;if(y.value!=null)X.value=String(y.value);return X},f.toObject=function x(y,X){if(!X)X={};let L={};if(X.defaults)L.value="";if(y.value!=null&&y.hasOwnProperty("value"))L.value=y.value;return L},f.prototype.toJSON=function x(){return this.constructor.toObject(this,a.default.util.toJSONOptions)},f})(),T})();D.types=(()=>{let T={};return T.MsgDeposit=(()=>{function f(x){if(this.coins=[],x){for(let y=Object.keys(x),X=0;X<y.length;++X)if(x[y[X]]!=null)this[y[X]]=x[y[X]]}}return f.prototype.coins=C.emptyArray,f.prototype.memo="",f.prototype.signer=C.newBuffer([]),f.create=function x(y){return new f(y)},f.encode=function x(y,X){if(!X)X=zy.create();if(y.coins?.length)for(let L=0;L<y.coins.length;++L)D.common.Coin.encode(y.coins[L],X.uint32(10).fork()).ldelim();if(y.memo!=null&&Object.hasOwnProperty.call(y,"memo"))X.uint32(18).string(y.memo);if(y.signer!=null&&Object.hasOwnProperty.call(y,"signer"))X.uint32(26).bytes(y.signer);return X},f.encodeDelimited=function x(y,X){return this.encode(y,X).ldelim()},f.decode=function x(y,X){if(!(y instanceof F))y=F.create(y);let L=X===void 0?y.len:y.pos+X,Z=new D.types.MsgDeposit;while(y.pos<L){let J=y.uint32();switch(J>>>3){case 1:if(!Z.coins?.length)Z.coins=[];Z.coins.push(D.common.Coin.decode(y,y.uint32()));break;case 2:Z.memo=y.string();break;case 3:Z.signer=y.bytes();break;default:y.skipType(J&7);break}}return Z},f.decodeDelimited=function x(y){if(!(y instanceof F))y=new F(y);return this.decode(y,y.uint32())},f.verify=function x(y){if(typeof y!=="object"||y===null)return"object expected";if(y.coins!=null&&y.hasOwnProperty("coins")){if(!Array.isArray(y.coins))return"coins: array expected";for(let X=0;X<y.coins.length;++X){let L=D.common.Coin.verify(y.coins[X]);if(L)return"coins."+L}}if(y.memo!=null&&y.hasOwnProperty("memo")){if(!C.isString(y.memo))return"memo: string expected"}if(y.signer!=null&&y.hasOwnProperty("signer")){if(!(y.signer&&typeof y.signer.length==="number"||C.isString(y.signer)))return"signer: buffer expected"}return null},f.fromObject=function x(y){if(y instanceof D.types.MsgDeposit)return y;let X=new D.types.MsgDeposit;if(y.coins){if(!Array.isArray(y.coins))throw TypeError(".types.MsgDeposit.coins: array expected");X.coins=[];for(let L=0;L<y.coins.length;++L){if(typeof y.coins[L]!=="object")throw TypeError(".types.MsgDeposit.coins: object expected");X.coins[L]=D.common.Coin.fromObject(y.coins[L])}}if(y.memo!=null)X.memo=String(y.memo);if(y.signer!=null){if(typeof y.signer==="string")C.base64.decode(y.signer,X.signer=C.newBuffer(C.base64.length(y.signer)),0);else if(y.signer.length)X.signer=y.signer}return X},f.toObject=function x(y,X){if(!X)X={};let L={};if(X.arrays||X.defaults)L.coins=[];if(X.defaults){if(L.memo="",X.bytes===String)L.signer="";else if(L.signer=[],X.bytes!==Array)L.signer=C.newBuffer(L.signer)}if(y.coins?.length){L.coins=[];for(let Z=0;Z<y.coins.length;++Z)L.coins[Z]=D.common.Coin.toObject(y.coins[Z],X)}if(y.memo!=null&&y.hasOwnProperty("memo"))L.memo=y.memo;if(y.signer!=null&&y.hasOwnProperty("signer"))L.signer=X.bytes===String?C.base64.encode(y.signer,0,y.signer.length):X.bytes===Array?Array.prototype.slice.call(y.signer):y.signer;return L},f.prototype.toJSON=function x(){return this.constructor.toObject(this,a.default.util.toJSONOptions)},f})(),T.MsgSend=(()=>{function f(x){if(this.amount=[],x){for(let y=Object.keys(x),X=0;X<y.length;++X)if(x[y[X]]!=null)this[y[X]]=x[y[X]]}}return f.prototype.fromAddress=C.newBuffer([]),f.prototype.toAddress=C.newBuffer([]),f.prototype.amount=C.emptyArray,f.create=function x(y){return new f(y)},f.encode=function x(y,X){if(!X)X=zy.create();if(y.fromAddress!=null&&Object.hasOwnProperty.call(y,"fromAddress"))X.uint32(10).bytes(y.fromAddress);if(y.toAddress!=null&&Object.hasOwnProperty.call(y,"toAddress"))X.uint32(18).bytes(y.toAddress);if(y.amount?.length)for(let L=0;L<y.amount.length;++L)D.cosmos.base.v1beta1.Coin.encode(y.amount[L],X.uint32(26).fork()).ldelim();return X},f.encodeDelimited=function x(y,X){return this.encode(y,X).ldelim()},f.decode=function x(y,X){if(!(y instanceof F))y=F.create(y);let L=X===void 0?y.len:y.pos+X,Z=new D.types.MsgSend;while(y.pos<L){let J=y.uint32();switch(J>>>3){case 1:Z.fromAddress=y.bytes();break;case 2:Z.toAddress=y.bytes();break;case 3:if(!Z.amount?.length)Z.amount=[];Z.amount.push(D.cosmos.base.v1beta1.Coin.decode(y,y.uint32()));break;default:y.skipType(J&7);break}}return Z},f.decodeDelimited=function x(y){if(!(y instanceof F))y=new F(y);return this.decode(y,y.uint32())},f.verify=function x(y){if(typeof y!=="object"||y===null)return"object expected";if(y.fromAddress!=null&&y.hasOwnProperty("fromAddress")){if(!(y.fromAddress&&typeof y.fromAddress.length==="number"||C.isString(y.fromAddress)))return"fromAddress: buffer expected"}if(y.toAddress!=null&&y.hasOwnProperty("toAddress")){if(!(y.toAddress&&typeof y.toAddress.length==="number"||C.isString(y.toAddress)))return"toAddress: buffer expected"}if(y.amount!=null&&y.hasOwnProperty("amount")){if(!Array.isArray(y.amount))return"amount: array expected";for(let X=0;X<y.amount.length;++X){let L=D.cosmos.base.v1beta1.Coin.verify(y.amount[X]);if(L)return"amount."+L}}return null},f.fromObject=function x(y){if(y instanceof D.types.MsgSend)return y;let X=new D.types.MsgSend;if(y.fromAddress!=null){if(typeof y.fromAddress==="string")C.base64.decode(y.fromAddress,X.fromAddress=C.newBuffer(C.base64.length(y.fromAddress)),0);else if(y.fromAddress.length)X.fromAddress=y.fromAddress}if(y.toAddress!=null){if(typeof y.toAddress==="string")C.base64.decode(y.toAddress,X.toAddress=C.newBuffer(C.base64.length(y.toAddress)),0);else if(y.toAddress.length)X.toAddress=y.toAddress}if(y.amount){if(!Array.isArray(y.amount))throw TypeError(".types.MsgSend.amount: array expected");X.amount=[];for(let L=0;L<y.amount.length;++L){if(typeof y.amount[L]!=="object")throw TypeError(".types.MsgSend.amount: object expected");X.amount[L]=D.cosmos.base.v1beta1.Coin.fromObject(y.amount[L])}}return X},f.toObject=function x(y,X){if(!X)X={};let L={};if(X.arrays||X.defaults)L.amount=[];if(X.defaults){if(X.bytes===String)L.fromAddress="";else if(L.fromAddress=[],X.bytes!==Array)L.fromAddress=C.newBuffer(L.fromAddress);if(X.bytes===String)L.toAddress="";else if(L.toAddress=[],X.bytes!==Array)L.toAddress=C.newBuffer(L.toAddress)}if(y.fromAddress!=null&&y.hasOwnProperty("fromAddress"))L.fromAddress=X.bytes===String?C.base64.encode(y.fromAddress,0,y.fromAddress.length):X.bytes===Array?Array.prototype.slice.call(y.fromAddress):y.fromAddress;if(y.toAddress!=null&&y.hasOwnProperty("toAddress"))L.toAddress=X.bytes===String?C.base64.encode(y.toAddress,0,y.toAddress.length):X.bytes===Array?Array.prototype.slice.call(y.toAddress):y.toAddress;if(y.amount?.length){L.amount=[];for(let Z=0;Z<y.amount.length;++Z)L.amount[Z]=D.cosmos.base.v1beta1.Coin.toObject(y.amount[Z],X)}return L},f.prototype.toJSON=function x(){return this.constructor.toObject(this,a.default.util.toJSONOptions)},f})(),T})();D.cosmos=(()=>{let T={};return T.base=(()=>{let f={};return f.v1beta1=(()=>{let x={};return x.Coin=(()=>{function y(X){if(X){for(let L=Object.keys(X),Z=0;Z<L.length;++Z)if(X[L[Z]]!=null)this[L[Z]]=X[L[Z]]}}return y.prototype.denom="",y.prototype.amount="",y.create=function X(L){return new y(L)},y.encode=function X(L,Z){if(!Z)Z=zy.create();if(L.denom!=null&&Object.hasOwnProperty.call(L,"denom"))Z.uint32(10).string(L.denom);if(L.amount!=null&&Object.hasOwnProperty.call(L,"amount"))Z.uint32(18).string(L.amount);return Z},y.encodeDelimited=function X(L,Z){return this.encode(L,Z).ldelim()},y.decode=function X(L,Z){if(!(L instanceof F))L=F.create(L);let J=Z===void 0?L.len:L.pos+Z,Q=new D.cosmos.base.v1beta1.Coin;while(L.pos<J){let q=L.uint32();switch(q>>>3){case 1:Q.denom=L.string();break;case 2:Q.amount=L.string();break;default:L.skipType(q&7);break}}return Q},y.decodeDelimited=function X(L){if(!(L instanceof F))L=new F(L);return this.decode(L,L.uint32())},y.verify=function X(L){if(typeof L!=="object"||L===null)return"object expected";if(L.denom!=null&&L.hasOwnProperty("denom")){if(!C.isString(L.denom))return"denom: string expected"}if(L.amount!=null&&L.hasOwnProperty("amount")){if(!C.isString(L.amount))return"amount: string expected"}return null},y.fromObject=function X(L){if(L instanceof D.cosmos.base.v1beta1.Coin)return L;let Z=new D.cosmos.base.v1beta1.Coin;if(L.denom!=null)Z.denom=String(L.denom);if(L.amount!=null)Z.amount=String(L.amount);return Z},y.toObject=function X(L,Z){if(!Z)Z={};let J={};if(Z.defaults)J.denom="",J.amount="";if(L.denom!=null&&L.hasOwnProperty("denom"))J.denom=L.denom;if(L.amount!=null&&L.hasOwnProperty("amount"))J.amount=L.amount;return J},y.prototype.toJSON=function X(){return this.constructor.toObject(this,a.default.util.toJSONOptions)},y})(),x.DecCoin=(()=>{function y(X){if(X){for(let L=Object.keys(X),Z=0;Z<L.length;++Z)if(X[L[Z]]!=null)this[L[Z]]=X[L[Z]]}}return y.prototype.denom="",y.prototype.amount="",y.create=function X(L){return new y(L)},y.encode=function X(L,Z){if(!Z)Z=zy.create();if(L.denom!=null&&Object.hasOwnProperty.call(L,"denom"))Z.uint32(10).string(L.denom);if(L.amount!=null&&Object.hasOwnProperty.call(L,"amount"))Z.uint32(18).string(L.amount);return Z},y.encodeDelimited=function X(L,Z){return this.encode(L,Z).ldelim()},y.decode=function X(L,Z){if(!(L instanceof F))L=F.create(L);let J=Z===void 0?L.len:L.pos+Z,Q=new D.cosmos.base.v1beta1.DecCoin;while(L.pos<J){let q=L.uint32();switch(q>>>3){case 1:Q.denom=L.string();break;case 2:Q.amount=L.string();break;default:L.skipType(q&7);break}}return Q},y.decodeDelimited=function X(L){if(!(L instanceof F))L=new F(L);return this.decode(L,L.uint32())},y.verify=function X(L){if(typeof L!=="object"||L===null)return"object expected";if(L.denom!=null&&L.hasOwnProperty("denom")){if(!C.isString(L.denom))return"denom: string expected"}if(L.amount!=null&&L.hasOwnProperty("amount")){if(!C.isString(L.amount))return"amount: string expected"}return null},y.fromObject=function X(L){if(L instanceof D.cosmos.base.v1beta1.DecCoin)return L;let Z=new D.cosmos.base.v1beta1.DecCoin;if(L.denom!=null)Z.denom=String(L.denom);if(L.amount!=null)Z.amount=String(L.amount);return Z},y.toObject=function X(L,Z){if(!Z)Z={};let J={};if(Z.defaults)J.denom="",J.amount="";if(L.denom!=null&&L.hasOwnProperty("denom"))J.denom=L.denom;if(L.amount!=null&&L.hasOwnProperty("amount"))J.amount=L.amount;return J},y.prototype.toJSON=function X(){return this.constructor.toObject(this,a.default.util.toJSONOptions)},y})(),x.IntProto=(()=>{function y(X){if(X){for(let L=Object.keys(X),Z=0;Z<L.length;++Z)if(X[L[Z]]!=null)this[L[Z]]=X[L[Z]]}}return y.prototype.int="",y.create=function X(L){return new y(L)},y.encode=function X(L,Z){if(!Z)Z=zy.create();if(L.int!=null&&Object.hasOwnProperty.call(L,"int"))Z.uint32(10).string(L.int);return Z},y.encodeDelimited=function X(L,Z){return this.encode(L,Z).ldelim()},y.decode=function X(L,Z){if(!(L instanceof F))L=F.create(L);let J=Z===void 0?L.len:L.pos+Z,Q=new D.cosmos.base.v1beta1.IntProto;while(L.pos<J){let q=L.uint32();switch(q>>>3){case 1:Q.int=L.string();break;default:L.skipType(q&7);break}}return Q},y.decodeDelimited=function X(L){if(!(L instanceof F))L=new F(L);return this.decode(L,L.uint32())},y.verify=function X(L){if(typeof L!=="object"||L===null)return"object expected";if(L.int!=null&&L.hasOwnProperty("int")){if(!C.isString(L.int))return"int: string expected"}return null},y.fromObject=function X(L){if(L instanceof D.cosmos.base.v1beta1.IntProto)return L;let Z=new D.cosmos.base.v1beta1.IntProto;if(L.int!=null)Z.int=String(L.int);return Z},y.toObject=function X(L,Z){if(!Z)Z={};let J={};if(Z.defaults)J.int="";if(L.int!=null&&L.hasOwnProperty("int"))J.int=L.int;return J},y.prototype.toJSON=function X(){return this.constructor.toObject(this,a.default.util.toJSONOptions)},y})(),x.DecProto=(()=>{function y(X){if(X){for(let L=Object.keys(X),Z=0;Z<L.length;++Z)if(X[L[Z]]!=null)this[L[Z]]=X[L[Z]]}}return y.prototype.dec="",y.create=function X(L){return new y(L)},y.encode=function X(L,Z){if(!Z)Z=zy.create();if(L.dec!=null&&Object.hasOwnProperty.call(L,"dec"))Z.uint32(10).string(L.dec);return Z},y.encodeDelimited=function X(L,Z){return this.encode(L,Z).ldelim()},y.decode=function X(L,Z){if(!(L instanceof F))L=F.create(L);let J=Z===void 0?L.len:L.pos+Z,Q=new D.cosmos.base.v1beta1.DecProto;while(L.pos<J){let q=L.uint32();switch(q>>>3){case 1:Q.dec=L.string();break;default:L.skipType(q&7);break}}return Q},y.decodeDelimited=function X(L){if(!(L instanceof F))L=new F(L);return this.decode(L,L.uint32())},y.verify=function X(L){if(typeof L!=="object"||L===null)return"object expected";if(L.dec!=null&&L.hasOwnProperty("dec")){if(!C.isString(L.dec))return"dec: string expected"}return null},y.fromObject=function X(L){if(L instanceof D.cosmos.base.v1beta1.DecProto)return L;let Z=new D.cosmos.base.v1beta1.DecProto;if(L.dec!=null)Z.dec=String(L.dec);return Z},y.toObject=function X(L,Z){if(!Z)Z={};let J={};if(Z.defaults)J.dec="";if(L.dec!=null&&L.hasOwnProperty("dec"))J.dec=L.dec;return J},y.prototype.toJSON=function X(){return this.constructor.toObject(this,a.default.util.toJSONOptions)},y})(),x})(),f})(),T})()});async function hy(){let{$root:T}=await Promise.resolve().then(() => (Y1(),U1)),f=await import("@cosmjs/proto-signing"),x=f.Registry??f.default?.Registry,y=await import("@cosmjs/stargate"),X=y.defaultRegistryTypes??y.default?.defaultRegistryTypes;return new x([...X,["/types.MsgSend",T.types.MsgSend],["/types.MsgDeposit",T.types.MsgDeposit]])}async function vy(T){let f=await import("@cosmjs/stargate"),x=f.AminoTypes??f.default?.AminoTypes,y=T===_1.Chain.THORChain?"thorchain":"mayachain";return new x({"/types.MsgSend":{aminoType:`${y}/MsgSend`,toAmino:({fromAddress:X,toAddress:L,...Z})=>({...Z,from_address:WT(X),to_address:WT(L)}),fromAmino:({from_address:X,to_address:L,...Z})=>({...Z,fromAddress:GT(X),toAddress:GT(L)})},"/types.MsgDeposit":{aminoType:`${y}/MsgDeposit`,toAmino:({signer:X,...L})=>({...L,signer:WT(X)}),fromAmino:({signer:X,...L})=>({...L,signer:GT(X)})}})}var _1;var K5=l(()=>{_1=require("@swapkit/helpers");P5()});function u5(T){return function f(x){let{assetValue:y,recipient:X,memo:L,sender:Z,asSignable:J,asAminoMessage:Q}=x;if(X)return D1(T)({sender:Z,recipient:X,assetValue:y,memo:L,asSignable:J,asAminoMessage:Q});return N1(T)({sender:Z,assetValue:y,memo:L,asSignable:J,asAminoMessage:Q})}}function ly(T){if(T.type==="thorchain/MsgSend"||T.type==="mayachain/MsgSend")return T;return{...T,value:{...T.value,coins:T.value.coins.map((f)=>{let x=My.AssetValue.from({asset:f.asset}),y=(x.isSynthetic?x.symbol.split("/")?.[1]:x.symbol)?.toUpperCase(),X=(x.isSynthetic?x.symbol.split("/")?.[0]:x.chain)?.toUpperCase();return{...f,asset:{chain:X,symbol:y,ticker:x.ticker,synth:x.isSynthetic}}})}}}async function _T({chain:T,memo:f,msgs:x}){let y=await hy(),X=await vy(T),L={typeUrl:"/cosmos.tx.v1beta1.TxBody",value:{memo:f,messages:x.map((Z)=>X.fromAmino(Z))}};return y.encode(L)}var My,ZX,JX,A5=({sender:T,recipient:f,assetValue:x})=>{return{type:`${x.chain===My.Chain.Maya?"mayachain":"thorchain"}/MsgSend`,value:{from_address:T,to_address:f,amount:[{amount:x.getBaseValue("string"),denom:Ey(x.symbol,!0)}]}}},S5=({sender:T,assetValue:f,memo:x=""})=>{return{type:`${f.chain===My.Chain.Maya?"mayachain":"thorchain"}/MsgDeposit`,value:{coins:[{amount:f.getBaseValue("string"),asset:HT(f)}],signer:T,memo:x}}},tT=({sender:T,recipient:f,assetValue:x,memo:y})=>{return!f?S5({sender:T,assetValue:x,memo:y}):A5({sender:T,recipient:f,assetValue:x})},Py=async(T,f)=>{return(await vy(f)).fromAmino(T)},R1=async({rpcUrl:T,sender:f})=>{let y=await(await Iy(T)).getAccount(f);if(!y)throw new My.SwapKitError("toolbox_cosmos_account_not_found",{sender:f});return y},D1=(T)=>async({sender:f,recipient:x,assetValue:y,memo:X="",asSignable:L=!0,asAminoMessage:Z=!1,sequence:J,accountNumber:Q})=>{let q=await R1({rpcUrl:T,sender:f}),z=y.chain,B=A5({sender:f,recipient:x,assetValue:y}),M=L?await Py(Z?B:ly(B),z):B;return{chainId:My.ChainToChainId[z],accountNumber:Q||q.accountNumber,sequence:J||q.sequence,msgs:[M],fee:Ny(y.chain),memo:X}},N1=(T)=>async({sender:f,assetValue:x,memo:y="",asSignable:X=!0,asAminoMessage:L=!1,sequence:Z,accountNumber:J})=>{let Q=await R1({rpcUrl:T,sender:f}),q=x.chain,z=S5({sender:f,assetValue:x,memo:y}),B=X?await Py(L?z:ly(z),q):z;return{chainId:My.ChainToChainId[q],accountNumber:J||Q.accountNumber,sequence:Z||Q.sequence,msgs:[B],fee:Ny(x.chain),memo:y}};var I1=l(()=>{My=require("@swapkit/helpers");YT();K5();ZX=Ny(My.Chain.THORChain).gas,JX=Ny(My.Chain.Maya).gas});var C1=()=>{};var O1=l(()=>{C1()});var b5=l(()=>{P5();I1();K5();O1()});async function n5(T,f){try{let y=(await h5.SwapKitApi.getGasRate()).find((X)=>X.chainId===T)?.value;return y?Number.parseFloat(y):f}catch(x){return f}}async function j5({phrase:T,prefix:f,...x}){let y=await import("@cosmjs/proto-signing"),X=y.DirectSecp256k1HdWallet??y.default?.DirectSecp256k1HdWallet,L=await import("@cosmjs/crypto"),Z=L.stringToPath??L.default?.stringToPath,J="derivationPath"in x?x.derivationPath:`${w.DerivationPath[x.chain]}/${x.index}`;return X.fromMnemonic(T,{prefix:f,hdPaths:[Z(J)]})}async function QX({privateKey:T,prefix:f}){let x=await import("@cosmjs/proto-signing");return(x.DirectSecp256k1Wallet??x.default?.DirectSecp256k1Wallet).fromKey(T,f)}function v1(T){return async function f({signature:x,message:y,address:X}){let L=await T(X);if(!L?.pubkey)throw new w.SwapKitError("toolbox_cosmos_verify_signature_no_pubkey");let Z=await import("@cosmjs/crypto"),J=Z.Secp256k1Signature??Z.default?.Secp256k1Signature,Q=Z.Secp256k1??Z.default?.Secp256k1,q=J.fromFixedLength(Vy.base64.decode(x));return Q.verifySignature(q,Vy.base64.decode(y),L.pubkey.value)}}async function DT({chain:T,...f}){let x=w.SKConfig.get("rpcUrls")[T],y=w.CosmosChainPrefixes[T],X="index"in f?f.index||0:0,L=w.derivationPathToString("derivationPath"in f&&f.derivationPath?f.derivationPath:w.updateDerivationPath(w.NetworkDerivationPath[T],{index:X})),Z=await RT.match(f).with({phrase:RT.P.string},({phrase:B})=>j5({phrase:B,prefix:y,derivationPath:L})).with({signer:RT.P.any},({signer:B})=>B).otherwise(()=>{return});async function J(B){return(await Iy(x)).getAccount(B)}async function Q(){let[B]=await Z?.getAccounts()||[];return B?.address}async function q(){let[B]=await Z?.getAccounts()||[];if(!B?.pubkey)throw new w.SwapKitError("toolbox_cosmos_signer_not_defined");return Vy.base64.encode(B?.pubkey)}async function z({recipient:B,assetValue:M,memo:H="",feeRate:G,feeOptionKey:R=w.FeeOption.Fast}){let I=await Q();if(!(Z&&I))throw new w.SwapKitError("toolbox_cosmos_signer_not_defined");let S=w.AssetValue.from({chain:T}),b=HT(S),d=G||GX((await w1(T,k1[T]))[R],b),c=await UT(x,Z),s=[{denom:Ey(`u${M.symbol}`).toLowerCase(),amount:M.getBaseValue("string")}],{transactionHash:r}=await c.sendTokens(I,B,s,d,H);return r}return{transfer:z,getAddress:Q,getAccount:J,getBalance:async(B,M)=>{let H=await E1(x)(B);return await Promise.all(H.filter(({denom:G})=>G&&!G.includes("IBC/")).map(({denom:G,amount:R})=>{let I=[w.Chain.THORChain,w.Chain.Maya].includes(T)&&(G.includes("/")||G.includes("˜"))?`${T}.${G}`:G;return F5(I,R)}))},getSignerFromPhrase:async({phrase:B,derivationPath:M})=>j5({phrase:B,prefix:y,derivationPath:w.derivationPathToString(M),index:X}),getSignerFromPrivateKey:async(B)=>{let M=await import("@cosmjs/proto-signing");return(M.DirectSecp256k1Wallet??M.default?.DirectSecp256k1Wallet).fromKey(B,y)},createPrivateKeyFromPhrase:HX(L),validateAddress:l1(y),getPubKey:q,getFees:()=>w1(T,k1[T]),fetchFeeRateFromSwapKit:n5,getBalanceAsDenoms:E1(x),createTransaction:$5,verifySignature:v1(J)}}async function P1(T,f){try{let y=(await h5.SwapKitApi.getGasRate()).find((X)=>X.chainId===T)?.value;return y?Number.parseFloat(y):f}catch(x){return f}}function zX({address:T,chain:f,prefix:x}){let y=x||BX(f);if(!(y&&T))throw new w.SwapKitError("toolbox_cosmos_validate_address_prefix_not_found");return l1(y)(T)}function MX({assetValue:{chain:T}}){return w.AssetValue.from({chain:T,value:WX(T)})}function BX(T){let{isStagenet:f}=w.SKConfig.get("envs"),x=T?[w.Chain.THORChain,w.Chain.Maya].includes(T)&&f:!1,y=T?w.CosmosChainPrefixes[T]:void 0;return x?`s${y}`:y}async function w1(T,f){let x=await n5(w.ChainToChainId[T],f);return{average:w.SwapKitNumber.fromBigInt(BigInt(x),w.BaseDecimal[T]),fast:w.SwapKitNumber.fromBigInt(BigInt(w.applyFeeMultiplier(x,w.FeeOption.Fast,!0)),w.BaseDecimal[T]),fastest:w.SwapKitNumber.fromBigInt(BigInt(w.applyFeeMultiplier(x,w.FeeOption.Fastest,!0)),w.BaseDecimal[T])}}function GX(T,f){return{amount:[{denom:f,amount:T.getBaseValue("string")}],gas:"200000"}}function WX(T){return{[w.Chain.Cosmos]:0.007,[w.Chain.Kujira]:0.02,[w.Chain.THORChain]:0.02,[w.Chain.Maya]:0.02}[T]||0}function l1(T){return function f(x){if(!x.startsWith(T))return!1;try{let{prefix:y,words:X}=Vy.bech32.decode(x);return Vy.bech32.encode(y,X)===x.toLocaleLowerCase()}catch(y){return!1}}}function E1(T){return async function f(x){return(await(await Iy(T)).getAllBalances(x)).map((Z)=>({...Z,denom:Z.denom.includes("/")?Z.denom.toUpperCase():Z.denom}))}}function HX(T){return async function f(x){let y=await import("@cosmjs/crypto"),X=y.stringToPath??y.default?.stringToPath,L=y.Slip10Curve??y.default?.Slip10Curve,Z=y.Slip10??y.default?.Slip10,J=y.EnglishMnemonic??y.default?.EnglishMnemonic,Q=y.Bip39??y.default?.Bip39,q=new J(x),z=await Q.mnemonicToSeed(q),{privkey:B}=Z.derivePath(L.Secp256k1,z,X(T));return B}}var Vy,w,h5,RT,k1,qX;var dT=l(()=>{Vy=require("@scure/base"),w=require("@swapkit/helpers"),h5=require("@swapkit/helpers/api"),RT=require("ts-pattern");YT();k1={[w.Chain.Cosmos]:500,[w.Chain.Kujira]:1000,[w.Chain.THORChain]:5000000,[w.Chain.Maya]:5000000};qX=P1});function UX({prefix:T,derivationPath:f}){return async function x(y,X=0){let L=await import("@cosmjs/amino"),Z=L.Secp256k1HdWallet??L.default?.Secp256k1HdWallet,J=await import("@cosmjs/crypto"),Q=J.stringToPath??J.default?.stringToPath;return Z.fromMnemonic(y,{hdPaths:[Q(`${f}/${X}`)],prefix:T})}}function YX(T){return $y.base64.encode(T)}function _X(T){return async function f({wallet:x,tx:y}){let{msgs:X,accountNumber:L,sequence:Z,chainId:J,fee:Q,memo:q}=typeof y==="string"?JSON.parse(y):y,z=(await x.getAccounts())?.[0]?.address||"",B=await vy(T),M=await hy(),H=await V5(x,{registry:M,aminoTypes:B}),G=[];for(let S of X){let b=await Py(S,T);G.push(b)}let{signatures:[R]}=await H.sign(z,G,Q,q,{accountNumber:L,sequence:Z,chainId:J}),I=await _T({chain:T,memo:q,msgs:X.map(ly)});return{signature:YX(R),bodyBytes:I}}}function RX({prefix:T,rpcUrl:f}){return async function x(y,X,L,Z,J){let{encodeSecp256k1Pubkey:Q,pubkeyToAddress:q}=(await import("@cosmjs/amino")).default,{makeMultisignedTxBytes:z}=(await import("@cosmjs/stargate")).default,{sequence:B,fee:M}=JSON.parse(y),H=await V1(L,Z),G=X.map((S)=>[q(Q($y.base64.decode(S.pubKey)),T),$y.base64.decode(S.signature)]),R=await Iy(f),{transactionHash:I}=await R.broadcastTx(z(H,B,M,J,new Map(G)));return I}}async function V1(T,f,x=!0){let{createMultisigThresholdPubkey:y,encodeSecp256k1Pubkey:X}=(await import("@cosmjs/amino")).default;return y(T.map((L)=>X($y.base64.decode(L))),f,x)}function DX(T){return $y.base64.decode(T)}async function NX({privateKey:T,message:f}){let{Secp256k1:x}=(await import("@cosmjs/crypto")).default,y=await x.createSignature($y.base64.decode(f),T);return $y.base64.encode(Buffer.concat([y.r(32),y.s(32)]))}async function p5({chain:T,...f}){let x=p.SKConfig.get("nodeUrls")[T],y=p.SKConfig.get("rpcUrls")[T],{isStagenet:X}=p.SKConfig.get("envs"),L=T===p.Chain.THORChain,Z=`${X?"s":""}${p.CosmosChainPrefixes[T]}`,J="index"in f?f.index||0:0,Q="derivationPath"in f&&f.derivationPath?f.derivationPath:p.updateDerivationPath(p.NetworkDerivationPath[T],{index:J}),q=await DT({chain:T,...f}),z=await NT.match(f).with({phrase:NT.P.string},({phrase:G})=>q.getSignerFromPhrase({phrase:G,derivationPath:Q})).with({signer:NT.P.any},({signer:G})=>G).otherwise(()=>{return}),B=Ny(T);async function M(){let G,R=`${x}/${L?"thorchain":"mayachain"}/constants`;try{let{int_64_values:{NativeTransactionFee:I}}=await p.RequestClient.get(R);if(!I||Number.isNaN(I)||I<0)throw new p.SwapKitError("toolbox_cosmos_invalid_fee",{nativeFee:I.toString()});G=new p.SwapKitNumber(I)}catch{G=new p.SwapKitNumber({value:L?0.02:1,decimal:p.BaseDecimal[T]})}return{[p.FeeOption.Average]:G,[p.FeeOption.Fast]:G,[p.FeeOption.Fastest]:G}}async function H({assetValue:G,memo:R="",recipient:I}){let{TxRaw:S}=await import("cosmjs-types/cosmos/tx/v1beta1/tx"),b=(await z?.getAccounts())?.[0]?.address;if(!(b&&z))throw new p.SwapKitError("toolbox_cosmos_no_signer");let d="signAmino"in z,c=await hy(),s=await vy(T),r=await UT(y,z,{registry:c,aminoTypes:s}),Ly=tT({assetValue:G,sender:b,recipient:I,memo:R});if(d){let O=await Py(Ly,T),{signatures:V,authInfoBytes:E}=await r.sign(b,[O],B,R),A=S.encode({signatures:V,authInfoBytes:E,bodyBytes:await _T({chain:T,msgs:[Ly].map(ly),memo:R})}).finish();return(await r.broadcastTx(A)).transactionHash}let k=ly(Ly),_=await Py(k,T);return(await r.signAndBroadcast(b,[_],B,R)).transactionHash}return{...q,broadcastMultisigTx:RX({prefix:Z,rpcUrl:y}),buildAminoMsg:tT,buildEncodedTxBody:_T,convertToSignable:Py,createDefaultAminoTypes:()=>vy(T),createDefaultRegistry:hy,createMultisig:V1,createTransaction:u5(y),deposit:H,getFees:M,importSignature:DX,parseAminoMessageForDirectSigning:ly,secp256k1HdWalletFromMnemonic:UX({derivationPath:p.derivationPathToString(Q),prefix:Z}),signMultisigTx:_X(T),signWithPrivateKey:NX,transfer:H,pubkeyToAddress:async(G)=>{let{pubkeyToAddress:R}=(await import("@cosmjs/amino")).default;return R(G,Z)}}}var $y,p,NT;var o5=l(()=>{$y=require("@scure/base"),p=require("@swapkit/helpers"),NT=require("ts-pattern");b5();YT();dT()});var ny,IX=(T,f)=>{switch(T){case ny.Chain.Cosmos:case ny.Chain.Kujira:return DT({chain:T,...f});case ny.Chain.Maya:case ny.Chain.THORChain:return p5({chain:T,...f});default:throw new ny.SwapKitError("toolbox_cosmos_not_supported",{chain:T})}};var $1=l(()=>{ny=require("@swapkit/helpers");dT();o5();dT();o5()});var iT={};qy(iT,{verifySignature:()=>v1,transferMsgAmino:()=>A5,toBase64:()=>fX,parseAminoMessageForDirectSigning:()=>ly,getSignerFromPrivateKey:()=>QX,getSignerFromPhrase:()=>j5,getRPC:()=>H1,getMsgSendDenom:()=>Ey,getFeeRateFromThorswap:()=>qX,getFeeRateFromSwapKit:()=>P1,getDenomWithChain:()=>HT,getDefaultChainFee:()=>Ny,getCreateTransaction:()=>u5,getCosmosToolbox:()=>IX,getAssetFromDenom:()=>F5,fromBase64:()=>XX,fetchFeeRateFromSwapKit:()=>n5,estimateTransactionFee:()=>MX,depositMsgAmino:()=>S5,createThorchainToolbox:()=>p5,createStargateClient:()=>Iy,createSigningStargateClient:()=>UT,createOfflineStargateClient:()=>V5,createDefaultRegistry:()=>hy,createDefaultAminoTypes:()=>vy,createCosmosToolbox:()=>DT,cosmosValidateAddress:()=>zX,cosmosCreateTransaction:()=>$5,convertToSignable:()=>Py,buildTransferTx:()=>D1,buildEncodedTxBody:()=>_T,buildDepositTx:()=>N1,buildAminoMsg:()=>tT,bech32ToBase64:()=>GT,base64ToBech32:()=>WT,YUM_KUJIRA_FACTORY_DENOM:()=>B1,USK_KUJIRA_FACTORY_DENOM:()=>l5,THORCHAIN_GAS_VALUE:()=>ZX,MAYA_GAS_VALUE:()=>JX,DEFAULT_KUJI_FEE_MAINNET:()=>W1,DEFAULT_COSMOS_FEE_MAINNET:()=>G1});module.exports=_y(iT);var rT=l(()=>{b5();$1();YT()});function K1(){function T(){let f=Date.now(),x=m5||f;return m5=x,f>m5?f:x+1}return CX+T().toString(36)}function sT(T){return async function f(x,y=!0){return(await F1.SwapKitApi.getChainBalance({chain:T,address:x,scamFilter:y})).map(({identifier:L,value:Z,decimal:J})=>{return new aT.AssetValue({decimal:J||aT.BaseDecimal[T],value:Z,identifier:L})})}}var aT,F1,CX,m5=0;var eT=l(()=>{aT=require("@swapkit/helpers"),F1=require("@swapkit/helpers/api"),CX=typeof process!=="undefined"&&process.pid?process.pid.toString(36):""});function IT(T){let f=y5.SKConfig.get("apis")[T];if(f)return y5.warnOnce(!0,"Using custom EVM API. Be sure to implement all methods to avoid issues."),f;return kX(T)}function OX(T){return T}function kX(T){return{getBalance:sT(T)}}var y5;var T5=l(()=>{y5=require("@swapkit/helpers");eT()});function ay({chain:T=W.Chain.Ethereum,provider:f,signer:x,isEIP1559Compatible:y=!0}){return{getAddress:()=>{return x?x.getAddress():void 0},estimateTransactionFee:r5({provider:f,isEIP1559Compatible:y,chain:T}),call:i5({provider:f,signer:x,isEIP1559Compatible:y,chain:T}),estimateCall:b1({provider:f,signer:x}),EIP1193SendTransaction:ey(f),approve:PX({provider:f,signer:x,isEIP1559Compatible:y,chain:T}),approvedAmount:u1({provider:f,chain:T}),broadcastTransaction:f.broadcastTransaction,createApprovalTx:FX({provider:f,signer:x,chain:T}),createContract:t5({provider:f,chain:T}),createContractTxObject:py({provider:f,chain:T}),createTransferTx:c5({provider:f,signer:x,chain:T}),createTransaction:c5({provider:f,signer:x,chain:T}),estimateGasLimit:VX({provider:f,signer:x,chain:T}),estimateGasPrices:Fy({chain:T,provider:f,isEIP1559Compatible:y}),isApproved:vX({provider:f,chain:T}),sendTransaction:j1({provider:f,signer:x,isEIP1559Compatible:y,chain:T}),signMessage:x?.signMessage,transfer:lX({provider:f,signer:x,isEIP1559Compatible:y,chain:T}),validateAddress:(X)=>g5({address:X})}}function g5({address:T}){try{return Zy.getAddress(T),!0}catch(f){return!1}}function sy(T){return T instanceof Zy.BrowserProvider}function kT(T,f,x){return new Zy.Contract(T,Zy.Interface.from(f),x)}function t5({provider:T}){return function f(x,y){return new Zy.Contract(x,Zy.Interface.from(y),T)}}function d5({abi:T,funcName:f}){let x=T.find((y)=>y.name===f);if(!x)throw new W.SwapKitError("toolbox_evm_no_abi_fragment",{funcName:f});return x.stateMutability&&wX.includes(x.stateMutability)}function A1(T){return Zy.getAddress(T)}function ey(T){return function f({value:x,...y}){if(!sy(T))throw new W.SwapKitError("toolbox_evm_provider_not_eip1193_compatible");return T.send("eth_sendTransaction",[{value:CT(BigInt(x||0)),...y}])}}function S1(T,f){let x=yT(T,f);if(x)return Zy.getAddress(x.toLowerCase());throw new W.SwapKitError("toolbox_evm_invalid_gas_asset_address")}function yT({chain:T,symbol:f,ticker:x},y){try{let X=T===W.Chain.BinanceSmartChain&&f==="BNB"&&x==="BNB",L=T===y&&f===y&&x===y,Z=[W.Chain.Arbitrum,W.Chain.Aurora,W.Chain.Base,W.Chain.Optimism].includes(T)&&f==="ETH"&&x==="ETH";if(L||X||Z)return EX[y];return Zy.getAddress(f.slice(x.length+1).replace(/^0X/,""))}catch(X){return null}}function py({provider:T}){return async({contractAddress:f,abi:x,funcName:y,funcParams:X=[],txOverrides:L})=>kT(f,x,T).getFunction(y).populateTransaction(...X.concat(L).filter((Z)=>typeof Z!=="undefined"))}function Fy({chain:T,provider:f,isEIP1559Compatible:x=!0}){if(T===W.Chain.Arbitrum)return async function y(){try{let{gasPrice:X}=await f.getFeeData();if(!X)throw new W.SwapKitError("toolbox_evm_no_fee_data");return{[W.FeeOption.Average]:{gasPrice:X},[W.FeeOption.Fast]:{gasPrice:X},[W.FeeOption.Fastest]:{gasPrice:X}}}catch(X){throw new W.SwapKitError("toolbox_evm_gas_estimation_error",{error:X.msg??X.toString()})}};if(T===W.Chain.Optimism)return async function y(){try{let{maxFeePerGas:X,maxPriorityFeePerGas:L,gasPrice:Z}=await f.getFeeData(),J=ET(f)(),Q=Z;if(!(X&&L))throw new W.SwapKitError("toolbox_evm_no_fee_data");return{[W.FeeOption.Average]:{l1GasPrice:J,gasPrice:Q,maxFeePerGas:X,maxPriorityFeePerGas:L},[W.FeeOption.Fast]:{l1GasPrice:W.applyFeeMultiplierToBigInt(J||0n,W.FeeOption.Fast),gasPrice:W.applyFeeMultiplierToBigInt(Q,W.FeeOption.Fast),maxFeePerGas:X,maxPriorityFeePerGas:W.applyFeeMultiplierToBigInt(L,W.FeeOption.Fast)},[W.FeeOption.Fastest]:{l1GasPrice:W.applyFeeMultiplierToBigInt(J||0n,W.FeeOption.Fastest),gasPrice:W.applyFeeMultiplierToBigInt(Q,W.FeeOption.Fastest),maxFeePerGas:X,maxPriorityFeePerGas:W.applyFeeMultiplierToBigInt(L,W.FeeOption.Fastest)}}}catch(X){throw new W.SwapKitError("toolbox_evm_gas_estimation_error",{error:X.msg??X.toString()})}};return async function y(){try{let{maxFeePerGas:X,maxPriorityFeePerGas:L,gasPrice:Z}=await f.getFeeData();if(x){if(X===null||L===null)throw new W.SwapKitError("toolbox_evm_no_fee_data");return{[W.FeeOption.Average]:{maxFeePerGas:X,maxPriorityFeePerGas:L},[W.FeeOption.Fast]:{maxFeePerGas:W.applyFeeMultiplierToBigInt(X,W.FeeOption.Fast),maxPriorityFeePerGas:W.applyFeeMultiplierToBigInt(L,W.FeeOption.Fast)},[W.FeeOption.Fastest]:{maxFeePerGas:W.applyFeeMultiplierToBigInt(X,W.FeeOption.Fastest),maxPriorityFeePerGas:W.applyFeeMultiplierToBigInt(L,W.FeeOption.Fastest)}}}if(!Z)throw new W.SwapKitError("toolbox_evm_no_gas_price");return{[W.FeeOption.Average]:{gasPrice:Z},[W.FeeOption.Fast]:{gasPrice:W.applyFeeMultiplierToBigInt(Z,W.FeeOption.Fast)},[W.FeeOption.Fastest]:{gasPrice:W.applyFeeMultiplierToBigInt(Z,W.FeeOption.Fastest)}}}catch(X){throw new W.SwapKitError("toolbox_evm_gas_estimation_error",{error:X.msg??X.toString()})}}}function i5({provider:T,isEIP1559Compatible:f,signer:x,chain:y}){return async function X({callProvider:L,contractAddress:Z,abi:J,funcName:Q,funcParams:q=[],txOverrides:z={},feeOption:B=W.FeeOption.Fast}){let M=L||T;if(!Z)throw new W.SwapKitError("toolbox_evm_invalid_params",{error:"contractAddress must be provided"});let H=d5({abi:J,funcName:Q});if(H&&sy(M)&&x){let I=py({provider:M,chain:y}),S=z?.from||await x?.getAddress(),b=await I({contractAddress:Z,abi:J,funcName:Q,funcParams:q,txOverrides:{...z,from:S}});return ey(M)(b)}let G=kT(Z,J,M);if(H){if(!x)throw new W.SwapKitError("toolbox_evm_no_signer");let I=z?.from||await x.getAddress();if(!I)throw new W.SwapKitError("toolbox_evm_no_signer_address");let S=G.connect(x),b=Fy({provider:T,isEIP1559Compatible:f,chain:y}),{maxFeePerGas:d,maxPriorityFeePerGas:c,gasPrice:s}=(await b())[B],r=await G.getFunction(Q).estimateGas(...q,z),Ly=await S[Q](...q,{...z,gasLimit:r,maxFeePerGas:d,maxPriorityFeePerGas:c,gasPrice:s,nonce:z?.nonce||await M.getTransactionCount(I)});return typeof Ly?.hash==="string"?Ly?.hash:Ly}let R=await G[Q]?.(...q);return typeof R?.hash==="string"?R?.hash:R}}function u1({provider:T,chain:f}){return function x({assetAddress:y,spenderAddress:X,from:L}){return i5({provider:T,isEIP1559Compatible:!0,chain:f})({contractAddress:y,abi:ry.erc20ABI,funcName:"allowance",funcParams:[L,X]})}}function vX({provider:T,chain:f}){return async function x({assetAddress:y,spenderAddress:X,from:L,amount:Z=OT}){let J=await u1({provider:T,chain:f})({assetAddress:y,spenderAddress:X,from:L});return W.SwapKitNumber.fromBigInt(J).gte(W.SwapKitNumber.fromBigInt(BigInt(Z)))}}function PX({signer:T,isEIP1559Compatible:f=!0,provider:x,chain:y}){return async function X({assetAddress:L,spenderAddress:Z,feeOptionKey:J=W.FeeOption.Fast,amount:Q,gasLimitFallback:q,from:z,nonce:B}){let M=[Z,BigInt(Q||OT)],H=await T?.getAddress()||z,G={contractAddress:L,abi:ry.erc20ABI,funcName:"approve",funcParams:M,signer:T,txOverrides:{from:H}};if(sy(x)){let I=py({provider:x,chain:y}),S=ey(x),b=await I(G);return S(b)}return i5({provider:x,isEIP1559Compatible:f,signer:T,chain:y})({...G,funcParams:M,txOverrides:{from:H,nonce:B,gasLimit:q?BigInt(q.toString()):void 0},feeOption:J})}}function lX({signer:T,isEIP1559Compatible:f=!0,provider:x}){return async function y({assetValue:X,memo:L,recipient:Z,feeOptionKey:J=W.FeeOption.Fast,sender:Q,...q}){let{hexlify:z,toUtf8Bytes:B}=await import("ethers"),M=X.getBaseValue("bigint"),H=X.chain,G=Q||await T?.getAddress(),R=j1({provider:x,signer:T,isEIP1559Compatible:f,chain:H});if(!G)throw new W.SwapKitError("toolbox_evm_no_from_address");if(X.isGasAsset){let s={...q,from:G,to:Z,value:M,data:z(B(L||"")),feeOptionKey:J};return R(s)}if(!yT(X,H))throw new W.SwapKitError("toolbox_evm_no_contract_address");let{maxFeePerGas:S,maxPriorityFeePerGas:b,gasPrice:d}=(await Fy({provider:x,isEIP1559Compatible:f,chain:H})())[J],c=await c5({provider:x,signer:T,chain:H})({assetValue:X,memo:L,recipient:Z,data:z(B(L||"")),sender:G,maxFeePerGas:S,maxPriorityFeePerGas:b,gasPrice:d});return R(c)}}function b1({provider:T,signer:f}){return function x({contractAddress:y,abi:X,funcName:L,funcParams:Z=[],txOverrides:J}){if(!y)throw new W.SwapKitError("toolbox_evm_no_contract_address");let Q=kT(y,X,T);return f?Q.connect(f).getFunction(L).estimateGas(...Z,J):Q.getFunction(L).estimateGas(...Z,J)}}function VX({provider:T,signer:f}){return async function x({assetValue:y,recipient:X,memo:L,data:Z,sender:J,funcName:Q,funcParams:q,txOverrides:z}){let B=y.bigIntValue,M=y.isGasAsset?null:yT(y,y.chain);if(M&&Q)return b1({provider:T,signer:f})({contractAddress:M,abi:ry.erc20ABI,funcName:Q,funcParams:q,txOverrides:z});let{hexlify:H,toUtf8Bytes:G}=await import("ethers");return T.estimateGas({from:J,to:X,value:B,data:Z?Z:L?H(G(L)):void 0})}}function j1({provider:T,signer:f,isEIP1559Compatible:x=!0,chain:y}){return async function X({feeOptionKey:L=W.FeeOption.Fast,...Z}){let{from:J,to:Q,data:q,value:z,...B}=Z;if(!f)throw new W.SwapKitError("toolbox_evm_no_signer");if(!Q)throw new W.SwapKitError("toolbox_evm_no_to_address");let M={...B,data:q||"0x",to:Q,from:J,value:BigInt(z||0)};if(sy(T))return ey(T)(M);let H=J||await f.getAddress(),G=Z.nonce||await T.getTransactionCount(H),R=(await T.getNetwork()).chainId,I=$X(M)||x,S=Fy({provider:T,isEIP1559Compatible:x,chain:y}),b=I&&!(M.maxFeePerGas&&M.maxPriorityFeePerGas)||!M.gasPrice?Object.entries((await S())[L]).reduce((c,[s,r])=>({...c,[s]:CT(BigInt(r))}),{}):{},d;try{d=CT(M.gasLimit||await T.estimateGas(M)*11n/10n)}catch(c){throw new W.SwapKitError("toolbox_evm_error_estimating_gas_limit",{error:c})}try{let c={...M,chainId:R,type:I?2:0,gasLimit:d,nonce:G,...b};try{return(await f.sendTransaction(c)).hash}catch(s){let r=await f.signTransaction({...c,from:H});return(await T.broadcastTransaction(r)).hash}}catch(c){throw new W.SwapKitError("toolbox_evm_error_sending_transaction",{error:c})}}}function c5({provider:T,signer:f}){return async function x({assetValue:y,memo:X,recipient:L,data:Z,sender:J,maxFeePerGas:Q,maxPriorityFeePerGas:q,gasPrice:z,...B}){let M=y.getBaseValue("bigint"),H=y.chain,G=J||await f?.getAddress();if(!G)throw new W.SwapKitError("toolbox_evm_no_from_address");if(W.isGasAsset(y)){let{hexlify:S,toUtf8Bytes:b}=await import("ethers");return{...B,from:G,to:L,value:M,data:Z||S(b(X||""))}}let R=yT(y,H);if(!R)throw new W.SwapKitError("toolbox_evm_no_contract_address");return py({provider:T,chain:y.chain})({contractAddress:R,abi:ry.erc20ABI,funcName:"transfer",funcParams:[L,M],txOverrides:{from:G,maxFeePerGas:Q,maxPriorityFeePerGas:q,gasPrice:z}})}}function FX({provider:T,signer:f,chain:x}){return async function y({assetAddress:X,spenderAddress:L,amount:Z,from:J}){let Q=await f?.getAddress()||J,q=py({provider:T,chain:x}),z=["bigint","number"].includes(typeof Z)?Z:Z||OT;return await q({contractAddress:X,abi:ry.erc20ABI,funcName:"approve",funcParams:[L,BigInt(z)],txOverrides:{from:Q}})}}var W,ry,Zy,OT,wX,EX,$X=(T)=>T.type===2||!!T.maxFeePerGas||!!T.maxPriorityFeePerGas;var wT=l(()=>{W=require("@swapkit/helpers"),ry=require("@swapkit/helpers/contracts"),Zy=require("ethers");a5();OT=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");wX=["payable","nonpayable"];EX={[W.Chain.Arbitrum]:W.ContractAddress.ARB,[W.Chain.Aurora]:W.ContractAddress.AURORA,[W.Chain.Avalanche]:W.ContractAddress.AVAX,[W.Chain.Base]:W.ContractAddress.BASE,[W.Chain.Berachain]:W.ContractAddress.BERA,[W.Chain.BinanceSmartChain]:W.ContractAddress.BSC,[W.Chain.Ethereum]:W.ContractAddress.ETH,[W.Chain.Gnosis]:W.ContractAddress.GNO,[W.Chain.Optimism]:W.ContractAddress.OP,[W.Chain.Polygon]:W.ContractAddress.MATIC}});var h1;var n1=l(()=>{h1=[{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"}]});async function f5({provider:T,...f}){let x=await Cy(Xy.Chain.Ethereum)({provider:T,...f});async function y(X,L="0x5ba1e12693dc8f9c48aad8770482f4739beed696",Z="aggregate",J=Xy.FeeOption.Fast){let Q=await x.createContractTxObject({contractAddress:L,abi:h1,funcName:Z,funcParams:[X]});return x.sendTransaction({...Q,feeOptionKey:J})}return{...x,multicall:y}}function Cy(T){return async function f({provider:x,...y}){let X=Xy.SKConfig.get("rpcUrls")[T],L=x||await oy(T,X),Z=y0(T),J=vT.match(y).with({phrase:vT.P.string},({phrase:q})=>p1.HDNodeWallet.fromPhrase(q).connect(L)).with({signer:vT.P.any},({signer:q})=>q).otherwise(()=>{return});return{...ay({provider:L,signer:J,isEIP1559Compatible:Z,chain:T}),getNetworkParams:e5(T),getBalance:IT(T).getBalance}}}var Xy,p1,vT,X5,L5,x5,Z5,J5,Q5,q5,z5;var s5=l(()=>{Xy=require("@swapkit/helpers"),p1=require("ethers"),vT=require("ts-pattern");T5();n1();PT();wT();X5=Cy(Xy.Chain.Arbitrum),L5=Cy(Xy.Chain.Aurora),x5=Cy(Xy.Chain.Avalanche),Z5=Cy(Xy.Chain.Base),J5=Cy(Xy.Chain.Berachain),Q5=Cy(Xy.Chain.BinanceSmartChain),q5=Cy(Xy.Chain.Gnosis),z5=Cy(Xy.Chain.Polygon)});var o1;var m1=l(()=>{o1=[{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 f0(T){return new M5.Contract(KX,o1,T)}function ET(T){return function f(){let x=f0(T);if(x&&"l1BaseFee"in x)return x?.l1BaseFee();return}}function g1(T){return async function f({from:x,to:y,nonce:X,...L}){let{Transaction:Z}=await import("ethers");if(!y)throw new e.SwapKitError("toolbox_evm_invalid_transaction",{error:"Missing to address"});return Z.from({...L,authorizationList:L.authorizationList,to:y,nonce:X?X:x?await T.getTransactionCount(x):0}).serialized}}function t1(T){return async function f(x){let y=f0(T),X=await g1(T)(x);if(y&&"getL1Fee"in y)return y.getL1Fee(X)}}function d1(T){return async function f(x){let y=await T.send("eth_gasPrice",[]),X=await T.estimateGas(x);return y.mul(X)}}function AX(T){return async function f(x){let y=await t1(T)(x),X=await d1(T)(x);return y.add(X)}}function X0(T){return async function f(x){let y=f0(T),X=await g1(T)(x);if(y&&"getL1GasUsed"in y)return y.getL1GasUsed(X)}}async function B5({provider:T,...f}){let x=e.Chain.Optimism,y=e.SKConfig.get("rpcUrls")[x],X=T||await oy(x,y),L=c1.match(f).with({phrase:T0.P.string},({phrase:Q})=>M5.HDNodeWallet.fromPhrase(Q).connect(X)).with({signer:T0.P.any},({signer:Q})=>Q).otherwise(()=>{return}),Z=ay({provider:X,signer:L}),J=ET(X);return{...Z,estimateL1Gas:X0(X),estimateL1GasCost:t1(X),estimateL2GasCost:d1(X),estimateTotalGasCost:AX(X),getBalance:IT(e.Chain.Optimism).getBalance,getL1GasPrice:J,getNetworkParams:SX}}var e,M5,T0,c1,KX="0x420000000000000000000000000000000000000f",SX=()=>({chainId:e.ChainId.OptimismHex,chainName:"Optimism",nativeCurrency:{name:"Ethereum",symbol:e.Chain.Ethereum,decimals:e.BaseDecimal.ETH},rpcUrls:[e.SKConfig.get("rpcUrls")[e.Chain.Optimism]],blockExplorerUrls:[e.ChainToExplorerUrl[e.Chain.Optimism]]});var L0=l(()=>{e=require("@swapkit/helpers"),M5=require("ethers"),T0=require("ts-pattern"),c1=require("ts-pattern");T5();m1();PT();wT()});var x0={};qy(x0,{toChecksumAddress:()=>A1,isStateChangingCall:()=>d5,isBrowserProvider:()=>sy,getTokenAddress:()=>yT,getL1GasPriceFetcher:()=>ET,getEvmToolbox:()=>i1,getEstimateGasPrices:()=>Fy,getEIP1193SendTransaction:()=>ey,getCreateContractTxObject:()=>py,getCreateContract:()=>t5,getChecksumAddressFromAsset:()=>S1,evmValidateAddress:()=>g5,estimateL1Gas:()=>X0,createContract:()=>kT,OPToolbox:()=>B5,MAX_APPROVAL:()=>OT,MATICToolbox:()=>z5,GNOToolbox:()=>q5,ETHToolbox:()=>f5,BaseEVMToolbox:()=>ay,BSCToolbox:()=>Q5,BERAToolbox:()=>J5,BASEToolbox:()=>Z5,AVAXToolbox:()=>x5,AURORAToolbox:()=>L5,ARBToolbox:()=>X5});async function i1(T,f){let x={...f,provider:f?.provider||await oy(T)};switch(T){case Jy.Chain.Arbitrum:return X5(x);case Jy.Chain.Aurora:return L5(x);case Jy.Chain.Avalanche:return x5(x);case Jy.Chain.Base:return Z5(x);case Jy.Chain.Berachain:return J5(x);case Jy.Chain.BinanceSmartChain:return Q5(x);case Jy.Chain.Gnosis:return q5(x);case Jy.Chain.Optimism:return B5(x);case Jy.Chain.Polygon:return z5(x);case Jy.Chain.Ethereum:return f5(x);default:throw new Jy.SwapKitError("toolbox_evm_not_supported",{chain:T})}}var Jy;var G5=l(()=>{Jy=require("@swapkit/helpers");PT();s5();L0();wT();s5();L0()});async function oy(T,f){let{JsonRpcProvider:x}=await import("ethers");return new x(f||K.SKConfig.get("rpcUrls")[T])}function CT(T){return T>0n?`0x${T.toString(16)}`:"0x0"}function r5({provider:T,isEIP1559Compatible:f=!0}){return async function x({feeOption:y=K.FeeOption.Fast,chain:X,...L}){let J=await Fy({provider:T,isEIP1559Compatible:f,chain:X})(),Q=await T.estimateGas(L),q=K.AssetValue.from({chain:X}),{gasPrice:z,maxFeePerGas:B,maxPriorityFeePerGas:M}=J[y];if(!f&&z)return q.set(K.SwapKitNumber.fromBigInt(z*Q,q.decimal));if(B&&M){let H=(B+M)*Q;return q.set(K.SwapKitNumber.fromBigInt(H,q.decimal))}throw new K.SwapKitError("toolbox_evm_no_gas_price")}}function e5(T){return()=>K.Chain.Ethereum===T?void 0:{...bX({chain:T}),chainId:K.ChainToHexChainId[T],rpcUrls:[K.SKConfig.get("rpcUrls")[T]],blockExplorerUrls:[K.ChainToExplorerUrl[T]]}}function y0(T){return![K.Chain.Arbitrum,K.Chain.BinanceSmartChain].includes(T)}function bX({chain:T}){let f=K.BaseDecimal[T];switch(T){case K.Chain.Arbitrum:return{chainName:"Arbitrum One",nativeCurrency:{name:"Ethereum",symbol:K.Chain.Ethereum,decimals:f}};case K.Chain.Aurora:return{chainName:"Aurora Mainnet",nativeCurrency:{name:"Ethereum",symbol:K.Chain.Ethereum,decimals:f}};case K.Chain.Avalanche:return{chainName:"Avalanche Network",nativeCurrency:{name:"Avalanche",symbol:T,decimals:f}};case K.Chain.Base:return{chainName:"Base Mainnet",nativeCurrency:{name:"Ethereum",symbol:K.Chain.Ethereum,decimals:f}};case K.Chain.Berachain:return{chainName:"Berachain",nativeCurrency:{name:"Berachain",symbol:"BERA",decimals:f}};case K.Chain.BinanceSmartChain:return{chainName:"BNB Smart Chain Mainnet",nativeCurrency:{name:"Binance Coin",symbol:"BNB",decimals:f}};case K.Chain.Gnosis:return{chainName:"Gnosis",nativeCurrency:{name:"xDAI",symbol:"XDAI",decimals:f}};case K.Chain.Optimism:return{chainName:"OP Mainnet",nativeCurrency:{name:"Ethereum",symbol:K.Chain.Ethereum,decimals:f}};case K.Chain.Polygon:return{chainName:"Polygon Mainnet",nativeCurrency:{name:"Polygon",symbol:K.Chain.Polygon,decimals:f}};default:throw new K.SwapKitError("toolbox_evm_not_supported",{chain:T})}}var K,uX=async({from:T,memo:f="",feeOptionKey:x=K.FeeOption.Fastest,assetValue:y,abi:X,funcName:L,funcParams:Z,contractAddress:J,txOverrides:Q})=>{let{getEvmToolbox:q}=await Promise.resolve().then(() => (G5(),x0)),z=await q(y.chain),M=(await z.getBalance(T)).find(({symbol:c,chain:s})=>y?c===y.symbol:c===K.AssetValue.from({chain:s})?.symbol),H=(await z.estimateGasPrices())[x];if(!M)return K.AssetValue.from({chain:y.chain});if(y&&(M.chain!==y.chain||M.symbol!==y?.symbol))return M;let G=X&&L&&Z&&J?await z.estimateCall({contractAddress:J,abi:X,funcName:L,funcParams:Z,txOverrides:Q}):await z.estimateGasLimit({sender:T,recipient:T,memo:f,assetValue:y}),R="maxFeePerGas"in H,I="gasPrice"in H&&H.gasPrice!==void 0;if(!(H&&(I||R)))throw new K.SwapKitError("toolbox_evm_no_fee_data");let S=R?(H.maxFeePerGas||1n)+(H.maxPriorityFeePerGas||1n):H.gasPrice||1n,b=G*S,d=K.SwapKitNumber.fromBigInt(M.getBaseValue("bigint")).sub(b.toString());return K.AssetValue.from({chain:M.chain,value:d.getValue("string")})};var PT=l(()=>{K=require("@swapkit/helpers");wT()});var r1;var a1=l(()=>{((x)=>{x.Test="goerli";x.Main="homestead"})(r1||={})});var s1={};qy(s1,{toHexString:()=>CT,toChecksumAddress:()=>A1,isStateChangingCall:()=>d5,isBrowserProvider:()=>sy,getTokenAddress:()=>yT,getProvider:()=>oy,getNetworkParams:()=>e5,getL1GasPriceFetcher:()=>ET,getIsEIP1559Compatible:()=>y0,getEvmToolbox:()=>i1,getEvmApi:()=>IT,getEstimateTransactionFee:()=>r5,getEstimateGasPrices:()=>Fy,getEIP1193SendTransaction:()=>ey,getCreateContractTxObject:()=>py,getCreateContract:()=>t5,getChecksumAddressFromAsset:()=>S1,evmValidateAddress:()=>g5,estimateMaxSendableAmount:()=>uX,estimateL1Gas:()=>X0,createCustomEvmApi:()=>OX,createContract:()=>kT,OPToolbox:()=>B5,MAX_APPROVAL:()=>OT,MATICToolbox:()=>z5,GNOToolbox:()=>q5,EthNetwork:()=>r1,ETHToolbox:()=>f5,BaseEVMToolbox:()=>ay,BSCToolbox:()=>Q5,BERAToolbox:()=>J5,BASEToolbox:()=>Z5,AVAXToolbox:()=>x5,AURORAToolbox:()=>L5,ARBToolbox:()=>X5});module.exports=_y(s1);var a5=l(()=>{T5();PT();a1();G5()});async function jX(T,f,x){try{let y=await T.query.system?.account?.(x);if(!y)return[f.set(0)];let{data:{free:X}}=y,L=my.SwapKitNumber.fromBigInt(BigInt(X.toString()),f.decimal).getValue("string");return[f.set(L)]}catch(y){return console.error("Error fetching substrate balance:",y),[f.set(0)]}}async function hX(T,f,x){try{let y=await T.query.flip?.account?.(x);if(!y)return[f.set(0)];let X=y.balance||y.data?.balance;if(!X||X.isEmpty)return[f.set(0)];let L=my.SwapKitNumber.fromBigInt(BigInt(X.toString()),f.decimal).getValue("string");return[f.set(L)]}catch(y){return console.error("Error fetching chainflip balance:",y),[f.set(0)]}}function e1(T,f){return function x(y){let X=my.AssetValue.from({chain:T});switch(T){case my.Chain.Chainflip:return hX(f,X,y);default:return jX(f,X,y)}}}var my;var yf=l(()=>{my=require("@swapkit/helpers")});var nX,pX,oX,Ky;var Z0=l(()=>{nX={prefix:0,network:"polkadot",displayName:"Polkadot Relay Chain",symbols:["DOT"],decimals:[10],standardAccount:"*25519",website:"https://polkadot.network"},pX={prefix:2112,network:"chainflip",displayName:"Chainflip",symbols:["FLIP"],decimals:[18],standardAccount:"*25519",website:"https://chainflip.io/"},oX={prefix:42,network:"substrate",displayName:"Substrate",symbols:[],decimals:[],standardAccount:"*25519",website:"https://substrate.io/"},Ky={DOT:nX,FLIP:pX,GENERIC:oX}});function mX(T,f){switch(T){case t.Chain.Chainflip:return ff(f);case t.Chain.Polkadot:return Tf(f);default:throw new t.SwapKitError("toolbox_substrate_not_supported",{chain:T})}}function TT(T){return"address"in T}async function Q0(T,f){let{Keyring:x}=await import("@polkadot/api"),{cryptoWaitReady:y}=await import("@polkadot/util-crypto");return await y(),new x({type:"sr25519",ss58Format:f}).addFromUri(T)}function aX(T,f){let x=XT.decodeAddress(T);return XT.encodeAddress(x,f)}function Xf(T,f){return fT.isHex(T)?fT.hexToU8a(T):XT.decodeAddress(T,void 0,f)}function Lf(T,f="ss58",x){if(f==="hex")return fT.u8aToHex(T);return XT.encodeAddress(T,x)}async function M0({generic:T,chain:f,...x}){let{ApiPromise:y,WsProvider:X}=await import("@polkadot/api"),L=new X(t.SKConfig.get("rpcUrls")[f]),Z=await y.create({provider:L}),J=t.AssetValue.from({chain:f}),Q=T?Ky.GENERIC:Ky[f],q=await lT.match(x).with({phrase:lT.P.string},({phrase:z})=>Q0(z,Ky[f].prefix)).with({signer:lT.P.any},({signer:z})=>z).otherwise(()=>{return});return xf({api:Z,signer:q,gasAsset:J,network:Q,chain:f})}var fT,XT,t,lT,Tf=({generic:T=!1,...f}={})=>{return M0({chain:t.Chain.Polkadot,generic:T,...f})},ff=async({generic:T=!1,...f}={})=>{return{...await M0({chain:t.Chain.Chainflip,generic:T,...f})}},q0=(T,f)=>T.rpc.system.accountNextIndex(f),J0=(T,f)=>{try{let x=Xf(T,f);return Lf(x,"ss58",f),!0}catch(x){return!1}},z0=(T,{recipient:f,assetValue:x})=>T.tx.balances?.transferAllowDeath?.(f,x.getBaseValue("number")),cX=async(T,f,{recipient:x,assetValue:y,sender:X})=>{let L=z0(T,{recipient:x,assetValue:y}),Z=TT(f);if(!L)return;let J=Z?f.address:X;if(!J)throw new t.SwapKitError("core_transaction_invalid_sender_address");let Q=await q0(T,J);return(await L.signAndSend(Z?f:J,{signer:Z?void 0:f,nonce:Q}))?.toString()},gX=async(T,f,x,{recipient:y,assetValue:X,sender:L})=>{let Z=z0(T,{recipient:y,assetValue:X}),J=TT(f)?f.address:L;if(!J)return;let Q=await Z?.paymentInfo(J,{nonce:await q0(T,J)})||{partialFee:0};return x.set(t.SwapKitNumber.fromBigInt(BigInt(Q.partialFee.toString()),x.decimal).getValue("string"))},tX=async(T,f)=>{if(f)return T.send(f);return(await T.send()).toString()},dX=async(T,f)=>{return await f.signAsync(T)},iX=(T,f,x)=>{if(x)return f.signAndSend(T,x);return f.signAndSend(T).toString()},rX=async({signer:T,address:f,tx:x,callback:y,api:X})=>{let L=await q0(X,f);if(y)x.signAndSend(f,{nonce:L,signer:T},y);return x.signAndSend(f,{nonce:L,signer:T}).toString()},xf=({api:T,network:f,gasAsset:x,signer:y,chain:X})=>({api:T,network:f,gasAsset:x,decodeAddress:Xf,encodeAddress:Lf,convertAddress:aX,getBalance:e1(X||t.Chain.Polkadot,T),createKeyring:(L)=>Q0(L,f.prefix),getAddress:(L)=>{let Z=L||y;if(!Z)throw new t.SwapKitError("core_wallet_not_keypair_wallet");return TT(Z)?Z.address:void 0},createTransaction:(L)=>z0(T,L),validateAddress:(L)=>J0(L,f.prefix),transfer:(L)=>{if(!y)throw new t.SwapKitError("core_wallet_not_keypair_wallet");return cX(T,y,L)},estimateTransactionFee:(L)=>{if(!y)throw new t.SwapKitError("core_wallet_not_keypair_wallet");return gX(T,y,x,L)},sign:(L)=>{if(!y)throw new t.SwapKitError("core_wallet_not_keypair_wallet");if(TT(y))return dX(y,L);throw new t.SwapKitError("core_wallet_not_keypair_wallet","Signer does not have keyring pair capabilities required for signing.")},broadcast:tX,signAndBroadcast:({tx:L,callback:Z,address:J})=>{if(!y)throw new t.SwapKitError("core_wallet_not_keypair_wallet");if(TT(y))return iX(y,L,Z);if(J)return rX({signer:y,address:J,tx:L,callback:Z,api:T});throw new t.SwapKitError("core_wallet_not_keypair_wallet","Signer does not have keyring pair capabilities required for signing.")}}),sX=({address:T,chain:f})=>{let{prefix:x}=f===t.Chain.Polkadot?Ky.DOT:Ky.FLIP;return J0(T,x)||J0(T,Ky.GENERIC.prefix)};var Zf=l(()=>{fT=require("@polkadot/util"),XT=require("@polkadot/util-crypto"),t=require("@swapkit/helpers"),lT=require("ts-pattern");yf();Z0()});var B0={};qy(B0,{substrateValidateAddress:()=>sX,isKeyringPair:()=>TT,getSubstrateToolbox:()=>mX,createSubstrateToolbox:()=>M0,createKeyring:()=>Q0,SubstrateNetwork:()=>Ky,PolkadotToolbox:()=>Tf,ChainflipToolbox:()=>ff,BaseSubstrateToolbox:()=>xf});module.exports=_y(B0);var G0=l(()=>{Zf();Z0()});async function eX({chain:T,txHash:f}){let x=j.SKConfig.get("rpcUrls")[T],y=JSON.stringify({jsonrpc:"2.0",method:"sendrawtransaction",params:[f],id:K1()}),X=await j.RequestClient.post(x,{headers:{"Content-Type":"application/json"},body:y});if(X.error)throw new j.SwapKitError("toolbox_utxo_broadcast_failed",{error:X.error?.message});if(X.result.includes('"code":-26'))throw new j.SwapKitError("toolbox_utxo_invalid_transaction",{error:"Transaction amount was too low"});return X.result}function W0(T){return`https://api.blockchair.com/${y2(T)}`}function Jf(T){switch(T){case j.Chain.Bitcoin:return 5;case j.Chain.Dogecoin:return 1e4;case j.Chain.Litecoin:return 1;case j.Chain.Zcash:return 1;default:return 2}}function y2(T){switch(T){case j.Chain.BitcoinCash:return"bitcoin-cash";case j.Chain.Litecoin:return"litecoin";case j.Chain.Dash:return"dash";case j.Chain.Dogecoin:return"dogecoin";case j.Chain.Zcash:return"zcash";case j.Chain.Polkadot:return"polkadot";default:return"bitcoin"}}async function T2(T){try{let{feePerKb:f}=await j.RequestClient.get(`https://app.bitgo.com/api/v2/${T.toLowerCase()}/tx/fee`),x=f/1000;return Math.max(x,Jf(T))}catch(f){return Jf(T)}}async function H0(T,f){let x=await j.RequestClient.get(`${T}${f?`${T.includes("?")?"&":"?"}key=${f}`:""}`);if(!x||x.context.code!==200)throw new j.SwapKitError("toolbox_utxo_api_error",{error:`Failed to query ${T}`});return x.data}async function zf({address:T,chain:f,apiKey:x}){if(!T)throw new j.SwapKitError("toolbox_utxo_invalid_params",{error:"Address is required"});try{return(await H0(`${W0(f)}/dashboards/address/${T}?transaction_details=true`,x))[T]}catch(y){return{utxo:[],address:{balance:0,transaction_count:0}}}}async function f2({address:T,chain:f,apiKey:x}){return(await zf({address:T,chain:f,apiKey:x}))?.address.balance||0}async function Mf({chain:T,apiKey:f,txHash:x}){if(!x)throw new j.SwapKitError("toolbox_utxo_invalid_params",{error:"TxHash is required"});try{return(await H0(`${W0(T)}/raw/transaction/${x}`,f))?.[x]?.raw_transaction||""}catch(y){return console.error("Failed to fetch raw transaction:",y),""}}async function X2({chain:T,address:f,apiKey:x,offset:y=0,limit:X=30}){return(await H0(`${W0(T)}/outputs?q=recipient(${f}),is_spent(false),value(..2000000000000000)&s=value(desc)&fields=is_spent,transaction_hash,index,value,script_hex,block_id,spending_signature_hex&limit=${X}&offset=${y}`,x)).map(({is_spent:Q,script_hex:q,block_id:z,transaction_hash:B,index:M,value:H,spending_signature_hex:G})=>({hash:B,index:M,value:H,txHex:G,script_hex:q,is_confirmed:z!==-1,is_spent:Q}))}function L2(T){return T.reduce((f,x)=>f+x.value,0)}function Qf(T,f){let x=[...T].sort((y,X)=>X.value-y.value);if(f){let y=[],X=0;for(let L of x)if(y.push(L),X+=L.value,X>=f)break;return y}return x}async function Bf({chain:T,address:f,apiKey:x,targetValue:y,accumulativeValue:X=0,offset:L=0,limit:Z=30}){if(!f)throw new j.SwapKitError("toolbox_utxo_invalid_params",{error:"Address is required"});try{let J=await X2({targetValue:y,chain:T,address:f,apiKey:x,offset:L,limit:Z}),q=J.length<Z,z=J.filter(({is_spent:I})=>!I),B=L2(z),M=X+B,H=y&&M>=y;if(q||H)return Qf(z,y);let G=await Bf({chain:T,address:f,apiKey:x,offset:L+Z,limit:Z,accumulativeValue:M,targetValue:y}),R=[...z,...G];return Qf(R,y)}catch(J){return console.error("Failed to fetch unspent UTXOs:",J),[]}}async function x2({address:T,chain:f,apiKey:x,fetchTxHex:y=!0,targetValue:X}){let L=await Bf({chain:f,address:T,apiKey:x,targetValue:X}),Z=[];for(let{hash:J,index:Q,script_hex:q,value:z}of L){let B;if(y)B=await Mf({txHash:J,chain:f,apiKey:x});Z.push({address:T,hash:J,index:Q,txHex:B,value:z,witnessUtxo:{value:z,script:Buffer.from(q,"hex")}})}return Z}function Z2(T){let f=j.SKConfig.get("apiKeys").blockchair||"";return j.warnOnce(!f,"No Blockchair API key found. Functionality will be limited."),{broadcastTx:(x)=>eX({txHash:x,chain:T}),getRawTx:(x)=>Mf({txHash:x,chain:T,apiKey:f}),getSuggestedTxFee:()=>T2(T),getBalance:(x)=>f2({address:x,chain:T,apiKey:f}),getAddressData:(x)=>zf({address:x,chain:T,apiKey:f}),getUtxos:(x)=>x2({...x,chain:T,apiKey:f})}}function J2(T){return T}function Uy(T){let f=j.SKConfig.get("apis")[T];if(f)return j.warnOnce(!0,"Using custom UTXO API. Be sure to implement all methods to avoid issues."),f;return Z2(T)}function By(){return function T(f){switch(f){case j.Chain.Bitcoin:return qf.networks.bitcoin;case j.Chain.BitcoinCash:return LT.default.bitcoincash.main.toBitcoinJS();case j.Chain.Dash:return LT.default.dash.main.toBitcoinJS();case j.Chain.Litecoin:return LT.default.litecoin.main.toBitcoinJS();case j.Chain.Dogecoin:{let x={private:70615956,public:70617039},y=LT.default.dogecoin.test;return y.versions.bip32=x,LT.default.dogecoin.main.toBitcoinJS()}case j.Chain.Zcash:{let{isStagenet:x}=j.SKConfig.get("envs");return x?q2:Q2}default:throw new j.SwapKitError("toolbox_utxo_not_supported",{chain:f})}}}var j,qf,LT,Q2,q2;var Gf=l(()=>{j=require("@swapkit/helpers"),qf=require("bitcoinjs-lib");eT();LT=Y(require("coininfo"));Q2={messagePrefix:`\x19Zcash Signed Message:
|
|
2
|
+
`,bech32:"zc",bip32:{public:76067358,private:76066276},pubKeyHash:28,scriptHash:28,wif:128},q2={messagePrefix:`\x19Zcash Signed Message:
|
|
3
|
+
`,bech32:"ztestsapling",bip32:{public:70617039,private:70615956},pubKeyHash:29,scriptHash:28,wif:239}});function D0(T){try{return W5(T),!0}catch(f){return!1}}function N0(T){return W5(T)?.network}function xT(T){let f=W5(T);if(f?.format==="legacy")return T;return B2(f)}function VT(T){let f=W5(T);return G2(f)}function W5(T){try{let f=z2(T);if(f)return f}catch(f){}try{let f=M2(T);if(f)return f}catch(f){}throw new U0.SwapKitError("toolbox_utxo_invalid_address",{address:T})}function z2(T){try{let f=Y0.default.decode(T);if(f.length!==21)throw new U0.SwapKitError("toolbox_utxo_invalid_address",{address:T});let x=f[0],y=Array.prototype.slice.call(f,1);switch(x){case m.legacy.mainnet.p2pkh:return{hash:y,format:"legacy",network:"mainnet",type:"p2pkh"};case m.legacy.mainnet.p2sh:return{hash:y,format:"legacy",network:"mainnet",type:"p2sh"};case m.legacy.testnet.p2pkh:return{hash:y,format:"legacy",network:"testnet",type:"p2pkh"};case m.legacy.testnet.p2sh:return{hash:y,format:"legacy",network:"testnet",type:"p2sh"};case m.bitpay.mainnet.p2pkh:return{hash:y,format:"bitpay",network:"mainnet",type:"p2pkh"};case m.bitpay.mainnet.p2sh:return{hash:y,format:"bitpay",network:"mainnet",type:"p2sh"};default:return}}catch(f){return}}function M2(T){if(T.indexOf(":")!==-1)try{return Wf(T)}catch(f){}else{let f=["bitcoincash","bchtest","bchreg"];for(let x of f)try{return Wf(`${x}:${T}`)}catch(y){}}return}function Wf(T){try{let{hash:f,prefix:x,type:y}=_0.default.decode(T);return{format:"cashaddr",hash:Array.prototype.slice.call(f,0),network:x==="bitcoincash"?"mainnet":"testnet",type:y==="P2PKH"?"p2pkh":"p2sh"}}catch(f){return}}function B2(T){let f=m.legacy[T.network][T.type],x=Buffer.alloc(1+T.hash.length);return x[0]=f,x.set(T.hash,1),Y0.default.encode(x)}function G2(T){let f=T.network==="mainnet"?"bitcoincash":"bchtest",x=T.type==="p2pkh"?"P2PKH":"P2SH",y=new Uint8Array(T.hash);return _0.default.encode(f,x,y)}var U0,Y0,_0,R0,m;var Hf=l(()=>{U0=require("@swapkit/helpers"),Y0=Y(require("bs58check")),_0=Y(require("cashaddrjs"));((x)=>{x.Mainnet="mainnet";x.Testnet="testnet"})(R0||={});m={["legacy"]:{["mainnet"]:{["p2pkh"]:0,["p2sh"]:5},["testnet"]:{["p2pkh"]:111,["p2sh"]:196}},["bitpay"]:{["mainnet"]:{["p2pkh"]:28,["p2sh"]:40},["testnet"]:{["p2pkh"]:111,["p2sh"]:196}}}});var Ry,H5=(T)=>{switch(T){case Ry.Chain.Bitcoin:case Ry.Chain.BitcoinCash:return 550;case Ry.Chain.Dash:case Ry.Chain.Litecoin:return 5500;case Ry.Chain.Dogecoin:return 1e5;case Ry.Chain.Zcash:return 546;default:throw new Ry.SwapKitError("toolbox_utxo_not_supported",{chain:T})}},Sy=({inputs:T,outputs:f,feeRate:x=1,chain:y=Ry.Chain.Bitcoin})=>{let X=Math.ceil(x),L=T[0]&&"address"in T[0]&&T[0].address?FT(T[0].address):"P2PKH",Z=T.filter((M)=>Ay(M)*X<=M.value),J=U5+f.reduce((M,H)=>M+$T(H,L),0),Q=f.reduce((M,H)=>M+H.value,0),q=J*X,z=0,B=[];for(let M of Z){let H=Ay(M),G=X*H;q+=G,z+=M.value,B.push(M);let R=q+Q;if(z<R)continue;let I=z-R,S=X*$T({address:"",value:0},L);if(I>S){let b=S+q,d=z-(Q+b);if(d>Math.max(Ay({})*X,H5(y)))return{inputs:B,outputs:f.concat({value:d,address:""}),fee:b}}return{inputs:B,outputs:f,fee:q}}return{fee:X*ZT({inputs:T,outputs:f,feeRate:X})}};var Uf=l(()=>{Ry=require("@swapkit/helpers");JT()});function uy(T){let f=Buffer.from(T,"utf8");return R5.script.compile([R5.opcodes.OP_RETURN,f])}var Yf,R5,W2=1000,U5=10,_f=10,H2=41,U2=107,Y5,_5,KT,FT=(T)=>{if(T.startsWith("bc1")||T.startsWith("ltc1"))return"P2WPKH";if(T.startsWith("1")||T.startsWith("3")||T.startsWith("L")||T.startsWith("M")||T.startsWith("X")||T.startsWith("D")||T.startsWith("bitcoincash:q")||T.startsWith("q"))return"P2PKH";throw new Yf.SwapKitError("toolbox_utxo_invalid_address",{address:T})},ZT=({inputs:T,outputs:f,feeRate:x})=>{let y=T[0]&&"address"in T[0]&&T[0].address?FT(T[0].address):"P2PKH",X=T.filter((Z)=>Z.value>=_5["type"in Z?Z.type:"P2PKH"]*Math.ceil(x)).reduce((Z,J)=>Z+Ay(J),0),L=f?.reduce((Z,J)=>Z+$T(J),0)||KT[y];return U5+X+L},Ay=(T)=>{if("type"in T)return _5[T.type];if("address"in T&&T.address)return _5[FT(T.address)];return H2+U2},$T=(T,f)=>{if(T?.script)return _f+T.script.length+(T.script.length>=74?2:1);if(f)return KT[f];return KT.P2PKH};var Rf=l(()=>{Yf=require("@swapkit/helpers"),R5=require("bitcoinjs-lib");((x)=>{x.P2PKH="P2PKH";x.P2WPKH="P2WPKH"})(Y5||={});_5={["P2PKH"]:148,["P2WPKH"]:68},KT={["P2PKH"]:34,["P2WPKH"]:31}});var JT=l(()=>{Gf();Hf();Uf();Rf()});function _2(T,f=!1){let x=Cf.hash160(T),y=f?Buffer.from([28,186]):Buffer.from([28,184]),X=Buffer.concat([y,x]);return I0.default.encode(X)}function D5(T){try{if(T.startsWith("z"))return console.warn("Shielded Zcash addresses (z-addresses) are not supported. Use transparent addresses (t1/t3) only."),!1;let f=T.startsWith("t1"),x=T.startsWith("t3");if(!(f||x))return!1;let{isStagenet:y}=yy.SKConfig.get("envs");if(f&&y||x&&!y)return!1;return R2(T,kf)}catch{return!1}}function R2(T,f){try{let x=I0.default.decode(T);if(x.length<21)return!1;let y=x[0];return y===f.pubKeyHash||y===f.scriptHash}catch{return!1}}async function N2({phrase:T,derivationPathString:f}){let x=If.mnemonicToSeedSync(T),X=Nf.HDKey.fromMasterSeed(x).derive(f);if(!X.privateKey)throw new Error("Unable to derive private key");let L=D2.fromPrivateKey(Buffer.from(X.privateKey),{network:kf}),{isStagenet:Z}=yy.SKConfig.get("envs"),J=_2(L.publicKey,Z);return{getAddress(){return Promise.resolve(J)},signTransaction(Q){for(let q=0;q<Q.inputCount;q++)Q.signInput(q,L);return Promise.resolve(Q)}}}async function C0(T){let f=await QT.match(T).with({signer:QT.P.not(QT.P.nullish)},({signer:J})=>Promise.resolve(J)).with({phrase:QT.P.string},({phrase:J,derivationPath:Q,index:q=0})=>{let z=Q||yy.NetworkDerivationPath[yy.Chain.Zcash]||[44,133,0,0,0],B=yy.updateDerivationPath(z,{index:q}),M=yy.derivationPathToString(B);return N2({phrase:J,derivationPathString:M})}).otherwise(()=>Promise.resolve(void 0)),{getFeeRates:x,broadcastTx:y,...X}=await cy({chain:yy.Chain.Zcash,signer:f});function L(J){return J.getAddress()}async function Z({recipient:J,assetValue:Q,feeOptionKey:q=yy.FeeOption.Fast,...z}){let B=await f?.getAddress();if(!(f&&B))throw new yy.SwapKitError("toolbox_utxo_no_signer");let M=z.feeRate||(await x())[q],H={...z,assetValue:Q,feeRate:M,recipient:J,sender:B},{psbt:G}=await X.createTransaction(H),R=await f.signTransaction(G);R.finalizeAllInputs();let I=R.extractTransaction().toHex();return y(I)}return{...X,broadcastTx:y,getFeeRates:x,transfer:Z,getAddressFromKeys:L,validateAddress:D5}}var Df,Nf,If,yy,Cf,I0,Of,QT,Y2,kf,D2;var N5=l(()=>{Df=Y(require("@bitcoinerlab/secp256k1")),Nf=require("@scure/bip32"),If=require("@scure/bip39"),yy=require("@swapkit/helpers"),Cf=require("bitcoinjs-lib/src/crypto"),I0=Y(require("bs58check")),Of=require("ecpair"),QT=require("ts-pattern");JT();AT();Y2=yy.Chain.Zcash,kf=By()(Y2);D2=Of.ECPairFactory(Df.default)});function I2({inputs:T,outputs:f,chain:x,psbt:y,sender:X,compiledMemo:L}){for(let Z of T){let J=!!Z.witnessUtxo&&!ST.includes(x)&&{witnessUtxo:Z.witnessUtxo},Q=ST.includes(x)&&{nonWitnessUtxo:Z.txHex?Buffer.from(Z.txHex,"hex"):void 0};y.addInput({hash:Z.hash,index:Z.index,...J,...Q})}for(let Z of f){let J="address"in Z&&Z.address?Z.address:X,Q=Z.script;if(Q&&!L)continue;let q=Q?{script:L,value:0}:{address:J,value:Z.value};Dy.initEccLib(I5.default),y.addOutput(q)}return{psbt:y,inputs:T}}async function vf({assetValue:T,recipient:f,memo:x,feeRate:y,sender:X,fetchTxHex:L=!1}){let Z=T.chain,J=x?await uy(x):null,Q=await Vf({assetValue:T,recipient:f,memo:x,sender:X,fetchTxHex:L}),{inputs:q,outputs:z}=Sy({...Q,feeRate:y,chain:Z});if(!(q&&z))throw new $.SwapKitError("toolbox_utxo_insufficient_balance",{sender:X,assetValue:T});let B=await By(),M=new Dy.Psbt({network:B(Z)});if(Z===$.Chain.Dogecoin)M.setMaximumFeeRate(650000000);let{psbt:H,inputs:G}=await I2({inputs:q,outputs:z,chain:Z,psbt:M,sender:X,compiledMemo:J});return{psbt:H,utxos:Q.inputs,inputs:G}}async function Pf(){let T=await By();return function f({address:x,chain:y}){if(y===$.Chain.BitcoinCash)return gy(x);if(y===$.Chain.Zcash)return D5(x);try{return Dy.initEccLib(I5.default),Dy.address.toOutputScript(x,T(y)),!0}catch(X){return!1}}}async function C2({chain:T,phrase:f,derivationPath:x}){let y=(await uT(T))({phrase:f,derivationPath:x});async function X(Z){return await Z.signAllInputs(y),Z}async function L(){return(await k0(T))(y)}return{getAddress:L,signTransaction:X}}async function cy({chain:T,...f}){let x="phrase"in f?f.phrase:void 0,y="index"in f?f.index||0:0,X=$.derivationPathToString("derivationPath"in f&&f.derivationPath?f.derivationPath:$.updateDerivationPath($.NetworkDerivationPath[T],{index:y})),L=x?await C2({chain:T,phrase:x,derivationPath:X}):("signer"in f)?f.signer:void 0;function Z(){return Promise.resolve(L?.getAddress())}let J=await k0(T),Q=await Pf(),q=await uT(T);return{accumulative:Sy,calculateTxSize:ZT,getAddressFromKeys:J,getAddress:Z,validateAddress:(z)=>Q({address:z,chain:T}),broadcastTx:(z)=>Uy(T).broadcastTx(z),createTransaction:vf,createKeysForPath:q,getFeeRates:()=>bT(T),getInputsOutputsFee:lf,transfer:w2(L),getPrivateKeyFromMnemonic:(z)=>{return q(z).toWIF()},getBalance:sT(T),estimateTransactionFee:k2(T),estimateMaxSendableAmount:O2(T)}}async function lf({assetValue:T,feeOptionKey:f=$.FeeOption.Fast,feeRate:x,memo:y,sender:X,recipient:L}){let Z=T.chain,J=await Vf({assetValue:T,sender:X,memo:y,recipient:L}),Q=x?Math.floor(x):(await bT(Z))[f];return Sy({...J,feeRate:Q,chain:Z})}function O2(T){return async function f({from:x,memo:y,feeRate:X,feeOptionKey:L=$.FeeOption.Fast,recipients:Z=1}){let J=await Uy(T).getAddressData(x),Q=X?Math.ceil(X):(await bT(T))[L],q=J?.utxo.map((G)=>({...G,type:"P2PKH",hash:""})).filter((G)=>G.value>Math.max(H5(T),Ay(G)*Q));if(!q?.length)return $.AssetValue.from({chain:T});let z=$.AssetValue.from({chain:T,value:q.reduce((G,R)=>G+R.value,0)}),B=typeof Z==="number"?Array.from({length:Z},()=>({address:x,value:0})):Z;if(y){let G=await uy(y);B.push({address:x,script:G,value:0})}let H=ZT({inputs:q,outputs:B,feeRate:Q})*Q;return z.sub(H)}}function k2(T){return async(f)=>{let x=await lf(f);return $.AssetValue.from({chain:T,value:$.SwapKitNumber.fromBigInt(BigInt(x.fee),8).getValue("string")})}}async function uT(T){let f=await By();switch(T){case $.Chain.BitcoinCash:return function x({phrase:y,derivationPath:X=`${$.DerivationPath.BCH}/0`,wif:L}){let Z=f(T);if(L)return C5.ECPair.fromWIF(L,Z);if(!y)throw new $.SwapKitError("toolbox_utxo_invalid_params",{error:"No phrase provided"});return C5.HDNode.fromSeedBuffer(Buffer.from(O0.mnemonicToSeedSync(y)),Z).derivePath(X).keyPair};case $.Chain.Bitcoin:case $.Chain.Dogecoin:case $.Chain.Litecoin:case $.Chain.Zcash:case $.Chain.Dash:return function x({phrase:y,wif:X,derivationPath:L}){if(!(X||y))throw new $.SwapKitError("toolbox_utxo_invalid_params",{error:"Either phrase or wif must be provided"});let Z=wf.ECPairFactory(I5.default),J=f(T);if(X)return Z.fromWIF(X,J);let Q=O0.mnemonicToSeedSync(y),q=Ef.HDKey.fromMasterSeed(Q,J).derive(L);if(!q.privateKey)throw new $.SwapKitError("toolbox_utxo_invalid_params",{error:"Could not get private key from phrase"});return Z.fromPrivateKey(Buffer.from(q.privateKey),{network:J})};default:throw new $.SwapKitError("toolbox_utxo_not_supported",{chain:T})}}async function k0(T){let f=await By();return function x(y){if(!y)throw new $.SwapKitError("toolbox_utxo_invalid_params",{error:"Keys must be provided"});let X=ST.includes(T)?Dy.payments.p2pkh:Dy.payments.p2wpkh,{address:L}=X({pubkey:y.publicKey,network:f(T)});if(!L)throw new $.SwapKitError("toolbox_utxo_invalid_address",{error:"Address not defined"});return L}}function w2(T){return async function f({memo:x,recipient:y,feeOptionKey:X,feeRate:L,assetValue:Z}){let J=await T?.getAddress(),Q=Z.chain;if(!(T&&J))throw new $.SwapKitError("toolbox_utxo_no_signer");if(!y)throw new $.SwapKitError("toolbox_utxo_invalid_params",{error:"Recipient address must be provided"});let q=L||(await bT(Q))[X||$.FeeOption.Fast],{psbt:z}=await vf({recipient:y,feeRate:q,sender:J,assetValue:Z,memo:x}),B=await T.signTransaction(z);return B.finalizeAllInputs(),Uy(Q).broadcastTx(B.extractTransaction().toHex())}}async function bT(T){let f=await Uy(T).getSuggestedTxFee();return{[$.FeeOption.Average]:f,[$.FeeOption.Fast]:$.applyFeeMultiplier(f,$.FeeOption.Fast),[$.FeeOption.Fastest]:$.applyFeeMultiplier(f,$.FeeOption.Fastest)}}async function Vf({assetValue:T,recipient:f,memo:x,sender:y,fetchTxHex:X=!1}){let L=T.chain,Z=(await bT(L))[$.FeeOption.Fastest],J=X||ST.includes(L),Q=T.getBaseValue("number"),q=Math.ceil(Q+Z*5000);return{inputs:await Uy(L).getUtxos({address:y,fetchTxHex:J,targetValue:q}),outputs:[{address:f,value:Q},...x?[{address:"",script:await uy(x),value:0}]:[]]}}var $,Dy,wf,I5,C5,Ef,O0,ST;var AT=l(()=>{$=require("@swapkit/helpers"),Dy=require("bitcoinjs-lib"),wf=require("ecpair");eT();JT();jT();I5=Y(require("@bitcoinerlab/secp256k1")),C5=require("@psf/bitcoincashjs-lib"),Ef=require("@scure/bip32"),O0=require("@scure/bip39");N5();ST=[$.Chain.Dash,$.Chain.Dogecoin]});function qT(T){return T.replace(/(bchtest:|bitcoincash:)/,"")}function gy(T){let f=qT(T);return D0(f)&&N0(f)==="mainnet"}function ty(T){return qT(VT(T))}async function E2(T){async function f({builder:y,utxos:X}){return X.forEach((L,Z)=>{y.sign(Z,T,void 0,65,L.witnessUtxo?.value)}),y.build()}return{getAddress:()=>{let y=T.getAddress(0);return Promise.resolve(ty(y))},signTransaction:f}}async function w0(T){let f="phrase"in T?T.phrase:void 0,x="index"in T?T.index||0:0,y=Ty.derivationPathToString("derivationPath"in T&&T.derivationPath?T.derivationPath:Ty.updateDerivationPath(Ty.NetworkDerivationPath[Yy],{index:x})),X=f?(await uT(Yy))({phrase:f,derivationPath:y}):void 0,L=X?await E2(X):("signer"in T)?T.signer:void 0;function Z(){return Promise.resolve(L?.getAddress())}let{getBalance:J,getFeeRates:Q,broadcastTx:q,...z}=await cy({chain:Yy});function B(M,H=!0){return J(qT(VT(M)))}return{...z,getAddress:Z,broadcastTx:q,createTransaction:Ff,buildTx:P2,getAddressFromKeys:l2,getBalance:B,getFeeRates:Q,stripPrefix:qT,stripToCashAddress:ty,validateAddress:gy,transfer:v2({getFeeRates:Q,broadcastTx:q,signer:L})}}async function Ff({assetValue:T,recipient:f,memo:x,feeRate:y,sender:X}){if(!gy(f))throw new Ty.SwapKitError("toolbox_utxo_invalid_address",{address:f});let L=Math.ceil(T.getBaseValue("number")+y*7500),Z=await Uy(Yy).getUtxos({address:ty(X),fetchTxHex:!0,targetValue:L}),J=x?await uy(x):null,Q=[];Q.push({address:f,value:T.getBaseValue("number")});let{inputs:q,outputs:z}=Sy({inputs:Z,outputs:Q,feeRate:y,chain:Yy});if(!(q&&z))throw new Ty.SwapKitError("toolbox_utxo_insufficient_balance",{sender:X,assetValue:T});let B=await By(),M=new zT.TransactionBuilder(B(Yy));await Promise.all(q.map(async(H)=>{let G=await Uy(Yy).getRawTx(H.hash);M.addInput(zT.Transaction.fromBuffer(Buffer.from(G,"hex")),H.index)}));for(let H of z){let G="address"in H&&H.address?H.address:xT(X),R=await By(),I=zT.address.toOutputScript(xT(G),R(Yy));M.addOutput(I,H.value)}if(J)M.addOutput(J,0);return{builder:M,utxos:q}}function v2({broadcastTx:T,getFeeRates:f,signer:x}){return async function y({recipient:X,assetValue:L,feeOptionKey:Z=Ty.FeeOption.Fast,...J}){let Q=await x?.getAddress();if(!(x&&Q))throw new Ty.SwapKitError("toolbox_utxo_no_signer");if(!X)throw new Ty.SwapKitError("toolbox_utxo_invalid_params",{error:"Recipient address must be provided"});let q=J.feeRate||(await f())[Z],{builder:z,utxos:B}=await Ff({...J,assetValue:L,feeRate:q,recipient:X,sender:Q}),H=(await x.signTransaction({builder:z,utxos:B})).toHex();return T(H)}}async function P2({assetValue:T,recipient:f,memo:x,feeRate:y,sender:X,setSigHashType:L}){let Z=VT(f);if(!gy(Z))throw new Ty.SwapKitError("toolbox_utxo_invalid_address",{address:Z});let J=Math.ceil(T.getBaseValue("number")+y*7500),Q=await Uy(Yy).getUtxos({address:ty(X),fetchTxHex:!1,targetValue:J}),q=Number(y.toFixed(0)),z=x?await uy(x):null,B=[];if(B.push({address:xT(f),value:T.getBaseValue("number")}),z)B.push({script:z,value:0});let{inputs:M,outputs:H}=Sy({inputs:Q,outputs:B,feeRate:q,chain:Yy});if(!(M&&H))throw new Ty.SwapKitError("toolbox_utxo_insufficient_balance",{sender:X,assetValue:T});let G=await By(),R=new $f.Psbt({network:G(Yy)});for(let{hash:I,index:S,witnessUtxo:b}of M)R.addInput({hash:I,index:S,witnessUtxo:b,sighashType:L?65:void 0});for(let I of H){let S="address"in I&&I.address?I.address:xT(X),b=I.script?z?{script:z,value:0}:void 0:{address:S,value:I.value};if(b)R.addOutput(b)}return{psbt:R,utxos:Q,inputs:M}}function l2(T){let f=T.getAddress(0);return ty(f)}var zT,Ty,$f,Yy;var jT=l(()=>{zT=require("@psf/bitcoincashjs-lib"),Ty=require("@swapkit/helpers"),$f=require("bitcoinjs-lib");JT();AT();Yy=Ty.Chain.BitcoinCash});async function V2(T,f){switch(T){case Oy.Chain.BitcoinCash:return await w0(f||{});case Oy.Chain.Zcash:return await C0(f);case Oy.Chain.Bitcoin:case Oy.Chain.Dogecoin:case Oy.Chain.Litecoin:case Oy.Chain.Dash:return await cy({chain:T,...f});default:throw new Oy.SwapKitError("toolbox_utxo_not_supported",{chain:T})}}var Oy;var Kf=l(()=>{Oy=require("@swapkit/helpers");jT();AT();N5();jT()});var E0={};qy(E0,{validateZcashAddress:()=>D5,toLegacyAddress:()=>xT,toCashAddress:()=>VT,stripToCashAddress:()=>ty,stripPrefix:()=>qT,nonSegwitChains:()=>ST,isValidAddress:()=>D0,getUtxoToolbox:()=>V2,getUtxoNetwork:()=>By,getUtxoApi:()=>Uy,getUTXOAddressValidator:()=>Pf,getScriptTypeForAddress:()=>FT,getOutputSize:()=>$T,getInputSize:()=>Ay,getDustThreshold:()=>H5,getCreateKeysForPath:()=>uT,detectAddressNetwork:()=>N0,createZcashToolbox:()=>C0,createUTXOToolbox:()=>cy,createCustomUtxoApi:()=>J2,createBCHToolbox:()=>w0,compileMemo:()=>uy,calculateTxSize:()=>ZT,bchValidateAddress:()=>gy,addressFromKeysGetter:()=>k0,accumulative:()=>Sy,UtxoNetwork:()=>R0,UTXOScriptType:()=>Y5,TX_OVERHEAD:()=>U5,OutputSizes:()=>KT,OP_RETURN_OVERHEAD:()=>_f,MIN_TX_FEE:()=>W2,InputSizes:()=>_5});module.exports=_y(E0);var v0=l(()=>{Kf();jT();AT();N5();JT()});async function $2(T){try{let f=await fetch(`https://lite-api.jup.ag/tokens/v1/token/${T}`);if(!f.ok)return null;return await f.json()}catch{return null}}async function F2(T){let f=await dy(),{PublicKey:x}=await import("@solana/web3.js"),{TOKEN_PROGRAM_ID:y}=await import("@solana/spl-token"),X=new x(T),L=[],Z=await f.getBalance(X);if(Z>0)L.push(h.AssetValue.from({chain:h.Chain.Solana,value:Z,fromBaseDecimal:h.BaseDecimal[h.Chain.Solana]}));let J=await f.getParsedTokenAccountsByOwner(X,{programId:y});for(let{account:Q}of J.value){let q=Q.data.parsed.info,z=q.mint,B=q.tokenAmount.amount;if(Number(B)===0)continue;let M=await $2(z),H=M?.symbol||"UNKNOWN",G=M?.decimals||q.tokenAmount.decimals;L.push(h.AssetValue.from({asset:`${h.Chain.Solana}.${H}-${z}`,value:B,fromBaseDecimal:G}))}return L}async function $0(){let{PublicKey:T}=await import("@solana/web3.js");return(f)=>{try{let x=new T(f);return T.isOnCurve(x.toBytes())}catch(x){return!1}}}async function K2(T){let f=T&&"index"in T?T.index||0:0,x=h.derivationPathToString(T&&"derivationPath"in T&&T.derivationPath?T.derivationPath:h.updateDerivationPath(h.NetworkDerivationPath[h.Chain.Solana],{index:f})),y=await Sf.match(T).with({phrase:P0.P.string},({phrase:L})=>V0({phrase:L,derivationPath:x})).with({signer:P0.P.any},({signer:L})=>L).otherwise(()=>{return});function X(){return y?.publicKey?Af(y.publicKey):""}return{getConnection:dy,getAddress:X,createKeysForPath:V0,getAddressFromPubKey:Af,getPubkeyFromAddress:K0,createTransaction:F0(dy),createTransactionFromInstructions:b2,getBalance:(L)=>{let Z=L||X();if(!Z)throw new h.SwapKitError("core_wallet_connection_not_found");return F2(Z)},transfer:j2(dy,y),broadcastTransaction:l0(dy),getAddressValidator:$0,signTransaction:h2(dy,y),estimateTransactionFee:A2(dy)}}function A2(T){return async({recipient:f,assetValue:x,memo:y,isProgramDerivedAddress:X,sender:L})=>{let Z=await T(),Q=(await F0(T)({recipient:f,assetValue:x,memo:y,isProgramDerivedAddress:X,sender:L})).compileMessage(),q=await Z.getFeeForMessage(Q);if(q.value===null)throw new h.SwapKitError("toolbox_solana_fee_estimation_failed","Could not estimate Solana fee.");return h.AssetValue.from({chain:h.Chain.Solana,value:q.value,fromBaseDecimal:h.BaseDecimal[h.Chain.Solana]})}}async function dy(){let{Connection:T}=await import("@solana/web3.js");return new T(h.SKConfig.get("rpcUrls").SOL,"confirmed")}function S2(T){return async({assetValue:f,recipient:x,sender:y,isProgramDerivedAddress:X})=>{let L=await T(),Z=await K0(y);if(f.isGasAsset){let{Transaction:J,SystemProgram:Q,PublicKey:q}=await import("@solana/web3.js");return new J().add(Q.transfer({fromPubkey:Z,lamports:f.getBaseValue("number"),toPubkey:new q(x)}))}if(f.address)return u2({amount:f.getBaseValue("number"),connection:L,decimals:f.decimal,from:Z,recipient:x,tokenAddress:f.address,isProgramDerivedAddress:X});return}}async function u2({tokenAddress:T,recipient:f,from:x,connection:y,amount:X,decimals:L,isProgramDerivedAddress:Z}){let{getAssociatedTokenAddress:J,getAccount:Q,createAssociatedTokenAccountInstruction:q,createTransferCheckedInstruction:z}=await import("@solana/spl-token"),{Transaction:B,PublicKey:M}=await import("@solana/web3.js"),H=new B,G=new M(T),R=await J(G,x),I=new M(f),S=await J(G,I,Z),b=!1;try{await Q(y,S),b=!0}catch(d){}if(!b)H.add(q(x,S,I,G));return H.add(z(R,G,S,x,X,L)),H}function F0(T){return async({recipient:f,assetValue:x,memo:y,isProgramDerivedAddress:X,sender:L})=>{let{createMemoInstruction:Z}=await import("@solana/spl-memo"),J=await K0(L),Q=await $0();if(!(X||Q(f)))throw new h.SwapKitError("core_transaction_invalid_recipient_address");let q=await T(),z=await S2(T)({assetValue:x,recipient:f,sender:L,isProgramDerivedAddress:X});if(!z)throw new h.SwapKitError("core_transaction_invalid_sender_address");if(y)z.add(Z(y));let B=await q.getLatestBlockhash();return z.recentBlockhash=B.blockhash,z.feePayer=J,z}}async function b2({instructions:T}){let{Transaction:f}=await import("@solana/web3.js"),x=new f().add(...T);if(!x)throw new h.SwapKitError("core_transaction_invalid_sender_address");return x}function j2(T,f){return async({recipient:x,assetValue:y,memo:X,isProgramDerivedAddress:L})=>{if(!f)throw new h.SwapKitError("core_transaction_invalid_sender_address");let Z=f.publicKey?.toString()??(await f.connect()).publicKey.toString(),J=await F0(T)({recipient:x,assetValue:y,memo:X,isProgramDerivedAddress:L,sender:Z});if("connect"in f){let Q=await f.signTransaction(J);return l0(T)(Q)}return J.sign(f),l0(T)(J)}}function l0(T){return async(f)=>{return(await T()).sendRawTransaction(f.serialize())}}function h2(T,f){return async(x)=>{let{VersionedTransaction:y}=await import("@solana/web3.js");if(!f)throw new h.SwapKitError("toolbox_solana_no_signer");if(!(x instanceof y)){let L=await(await T()).getLatestBlockhash();x.recentBlockhash=L.blockhash,x.feePayer=f.publicKey||void 0}if("connect"in f)return await f.signTransaction(x);return await x.sign([f]),x}}async function V0({phrase:T,derivationPath:f=h.DerivationPath.SOL}){let{HDKey:x}=await import("micro-key-producer/slip10.js"),{mnemonicToSeedSync:y}=await import("@scure/bip39"),{Keypair:X}=await import("@solana/web3.js"),L=y(T),Z=x.fromMasterSeed(L);return X.fromSeed(Z.derive(f,!0).privateKey)}function Af(T){return T.toString()}async function K0(T){let{PublicKey:f}=await import("@solana/web3.js");return new f(T)}var h,P0,Sf;var uf=l(()=>{h=require("@swapkit/helpers"),P0=require("ts-pattern"),Sf=require("ts-pattern")});var A0={};qy(A0,{getSolanaToolbox:()=>K2,getSolanaAddressValidator:()=>$0,createKeysForPath:()=>V0});module.exports=_y(A0);var S0=l(()=>{uf()});async function hT(){let{validateAccountId:T}=await import("near-sdk-js");return(f)=>{try{return T(f)}catch{let x=/^(([a-z\d]+[-_])*[a-z\d]+\.)*([a-z\d]+[-_])*[a-z\d]+$/;return f.length>=2&&f.length<=64&&x.test(f)}}}async function k5(T){let{parseSeedPhrase:f}=await import("near-seed-phrase"),{KeyPair:x}=await import("near-api-js"),y=T.index||0,X=T.derivationPath?O5.derivationPathToString(T.derivationPath.slice(0,3)):`m/44'/397'/${y}'`,{secretKey:L}=f(T.phrase,X),Z=x.fromString(L);return hf(Z)}async function u0(T){let{KeyPair:f}=await import("near-api-js/lib/utils"),x=f.fromString(T);return hf(x)}function hf(T){return new jf(T)}async function w5(T,f){let y=(await T.query({request_type:"view_access_key_list",finality:"final",account_id:f})).keys.find((J)=>J.access_key.permission==="FullAccess");if(!y)throw new O5.SwapKitError("toolbox_near_invalid_address");let{utils:X}=await import("near-api-js"),L=X.PublicKey.fromString(y.public_key),Z=y.access_key.nonce||0;return{publicKey:L,nonce:Z}}var O5,bf,jf;var b0=l(()=>{O5=require("@swapkit/helpers"),bf=require("near-api-js");jf=class jf extends bf.KeyPairSigner{#y;constructor(T){super(T);this.#y=T}getAddress(){let T=this.#y.getPublicKey(),f=Buffer.from(T.data).toString("hex");return Promise.resolve(f)}}});function j0(T){return"recipient"in T&&"amount"in T&&!("contractId"in T)}function h0(T){return"contractId"in T&&"methodName"in T}function n0(T){return"actions"in T}function p0(T){return"newAccountId"in T}function o0(T){return"contractCode"in T}function m0(T){return"customEstimator"in T}function c0(T){let f=0;for(let x of T)switch(x.enum){case"transfer":f+=Number(fy.SIMPLE_TRANSFER);break;case"functionCall":f+=Number(fy.CONTRACT_CALL);break;case"createAccount":f+=Number(fy.ACCOUNT_CREATION);break;case"deployContract":f+=Number(fy.CONTRACT_DEPLOYMENT);break;case"addKey":f+=Number(fy.ACCESS_KEY_ADDITION);break;case"deleteKey":f+=Number(fy.ACCESS_KEY_DELETION);break;case"stake":f+=Number(fy.STAKE);break;default:f+=Number(fy.CONTRACT_CALL)}return f.toString()}function g0(T){if(T==="ft_transfer"||T==="ft_transfer_call")return fy.TOKEN_TRANSFER;if(T==="storage_deposit")return fy.STORAGE_DEPOSIT;return fy.CONTRACT_CALL}function n2(T){return(BigInt(T)*BigInt(1000000000000)).toString()}function p2(T){return(BigInt(T)/BigInt(1000000000000)).toString()}var fy;var t0=l(()=>{fy={SIMPLE_TRANSFER:"1",TOKEN_TRANSFER:"100",CONTRACT_CALL:"100",ACCOUNT_CREATION:"30",CONTRACT_DEPLOYMENT:"200",ACCESS_KEY_ADDITION:"5",ACCESS_KEY_DELETION:"5",STAKE:"10",STORAGE_DEPOSIT:"100"}});async function E5({account:T,contractId:f,viewMethods:x,changeMethods:y}){let{Contract:X}=await import("near-api-js");return new X(T,f,{viewMethods:x,changeMethods:y,useLocalViewExecution:!0})}async function d0({contractId:T,account:f}){let x=(await import("bn.js")).default,y=await E5({account:f,contractId:T,viewMethods:["ft_balance_of","ft_total_supply","ft_metadata","storage_balance_of","storage_balance_bounds"],changeMethods:["ft_transfer","ft_transfer_call","storage_deposit","storage_withdraw","storage_unregister"]}),X=async(L)=>{if(!await y.storage_balance_of({account_id:L})){let Q=(await y.storage_balance_bounds())?.min||"1250000000000000000000";await y.storage_deposit({account_id:L},new x("100000000000000"),new x(Q))}};return{transfer:async(L,Z,J)=>{return await X(L),y.ft_transfer({receiver_id:L,amount:Z,memo:J},new x("100000000000000"),new x("1"))},transferCall:async(L,Z,J,Q)=>{return await X(L),y.ft_transfer_call({receiver_id:L,amount:Z,memo:Q,msg:J},new x("100000000000000"),new x("1"))},balanceOf:(L)=>y.ft_balance_of({account_id:L}),totalSupply:()=>y.ft_total_supply(),metadata:()=>y.ft_metadata(),storageBalanceOf:(L)=>y.storage_balance_of({account_id:L}),storageDeposit:(L,Z)=>y.storage_deposit({account_id:L},new x("100000000000000"),new x(Z||"1250000000000000000000")),ensureStorage:X,contract:y}}async function o2(T){let{P:f,match:x}=await import("ts-pattern"),{providers:y}=await import("near-api-js"),X=await x(T).with({phrase:f.string},async(k)=>{return await k5(k)}).with({signer:f.any},({signer:k})=>k).otherwise(()=>{return}),L=u.SKConfig.get("rpcUrls")[u.Chain.Near],Z=new y.JsonRpcProvider({url:L});async function J(k){let{Account:_}=await import("near-api-js"),N=k||await Q();return new _(N,Z,X)}async function Q(){if(!X)throw new u.SwapKitError("toolbox_near_no_signer");return await X.getAddress()}async function q(k){if(!X)throw new u.SwapKitError("toolbox_near_no_signer");let{recipient:_,assetValue:N}=k;if(!(await hT())(_))throw new u.SwapKitError("toolbox_near_invalid_address");let V=await J();if(N.isGasAsset===!1){let E=N.address;if(!E)throw new u.SwapKitError("toolbox_near_missing_contract_address");let A=N.getBaseValue("string");return S({contractId:E,methodName:"ft_transfer",args:{receiver_id:_,amount:A,memo:k.memo}})}try{let E=N.getBaseValue("string");return(await V.transfer({receiverId:_,amount:E})).transaction_outcome.id}catch(E){throw new u.SwapKitError("toolbox_near_transfer_failed",{error:E})}}async function z(k){let{recipient:_,assetValue:N,memo:O,feeRate:V,attachedDeposit:E,sender:A}=k,i=await hT();if(!i(_))throw new u.SwapKitError("toolbox_near_invalid_address",{address:_});if(!i(A))throw new u.SwapKitError("toolbox_near_invalid_address",{address:A});if(!N.isGasAsset){let cT=N.address;if(!cT)throw new u.SwapKitError("toolbox_near_missing_contract_address");return B({sender:A,contractId:cT,methodName:"ft_transfer",args:{receiver_id:_,amount:N.getBaseValue("string"),memo:O||null},gas:V.toString()||"100000000000000",attachedDeposit:"1"})}let{publicKey:o,nonce:g}=await w5(Z,A),Qy=N.getBaseValue("bigint"),{SCHEMA:xy}=await import("near-api-js/lib/transaction"),{transactions:Gy,utils:Wy}=await import("near-api-js"),jy=[Gy.transfer(Qy)];if(O&&E)jy.push(Gy.functionCall("memo",{memo:O},BigInt(V),BigInt(E)));let pT=await Z.block({finality:"final"}),oT=Wy.serialize.base_decode(pT.header.hash),iy=Gy.createTransaction(A,o,_,g,jy,oT),mT=Wy.serialize.serialize(xy.Transaction,iy);return{serialized:Buffer.from(mT).toString("base64"),publicKey:o.toString(),details:{signerId:A,nonce:g,blockHash:Wy.serialize.base_encode(oT)}}}async function B(k){let{sender:_}=k,{publicKey:N,nonce:O}=await w5(Z,_),{SCHEMA:V}=await import("near-api-js/lib/transaction"),{transactions:E,utils:A}=await import("near-api-js"),i=await Z.block({finality:"final"}),o=A.serialize.base_decode(i.header.hash),g=[E.functionCall(k.methodName,Buffer.from(JSON.stringify(k.args)),BigInt(k.gas),BigInt(k.attachedDeposit))],Qy=E.createTransaction(_,N,k.contractId,O,g,o),xy=A.serialize.serialize(V.Transaction,Qy);return{serialized:Buffer.from(xy).toString("base64"),publicKey:N.toString(),details:{signerId:_,receiverId:k.contractId,methodName:k.methodName,nonce:O,blockHash:A.serialize.base_encode(o)}}}async function M(k){if(!X)throw new u.SwapKitError("toolbox_near_no_signer");let[_,N]=await X.signTransaction(k);return N}async function H(k){return(await Z.sendTransaction(k)).transaction.hash}async function G(k){if("assetValue"in k){let V=BigInt("115123062500")+BigInt("108059500000"),E=await R(),A=V*BigInt(E.toString());return u.AssetValue.from({chain:u.Chain.Near,value:A.toString(),fromBaseDecimal:u.BaseDecimal[u.Chain.Near]})}let _=X?await J():void 0;return r(k,_)}async function R(){try{return await Z.query({request_type:"call_function",finality:"final",account_id:"system",method_name:"gas_price",args_base64:""})}catch{return"100000000"}}async function I(k,_,N){if(!X)throw new u.SwapKitError("toolbox_near_no_signer");let O=await J(),{utils:V}=await import("near-api-js"),E=V.format.parseNearAmount(N)||"0";return(await O.createAccount(k,V.PublicKey.fromString(_),BigInt(E))).transaction.hash}async function S(k){try{if(!X)throw new u.SwapKitError("toolbox_near_no_signer");let{transactions:_}=await import("near-api-js"),{contractId:N,methodName:O,args:V,deposit:E}=k,A=await J(),i=await r({methodName:O,args:V||{},contractId:N}),o=_.functionCall(O,V||{},i.getBaseValue("bigint"),BigInt(E||"0"));return(await A.signAndSendTransaction({receiverId:N,actions:[o]})).transaction_outcome.id}catch(_){throw new u.SwapKitError("toolbox_near_transfer_failed",{error:_})}}async function b(k){let _=await J();return E5({account:_,contractId:k.contractId,viewMethods:k.viewMethods,changeMethods:k.changeMethods})}async function d(k){if(!X)throw new u.SwapKitError("toolbox_near_no_signer");if(k.actions.length===0)throw new u.SwapKitError("toolbox_near_empty_batch");return(await(await J()).signAndSendTransaction({receiverId:k.receiverId,actions:k.actions})).transaction.hash}async function c(k){let _=await J();return d0({contractId:k,account:_})}async function s(k){try{let _=await J(k),N;try{let O=await _.getBalance();N=u.AssetValue.from({chain:u.Chain.Near,value:O,fromBaseDecimal:u.BaseDecimal[u.Chain.Near]})}catch{N=u.AssetValue.from({chain:u.Chain.Near,value:"0",fromBaseDecimal:u.BaseDecimal[u.Chain.Near]})}return[N]}catch(_){throw new u.SwapKitError("toolbox_near_balance_failed",{error:_})}}async function r(k,_){let N=await x(k).when(j0,()=>fy.SIMPLE_TRANSFER).when(h0,(A)=>g0(A.methodName)).when(n0,(A)=>c0(A.actions)).when(p0,()=>fy.ACCOUNT_CREATION).when(o0,()=>fy.CONTRACT_DEPLOYMENT).when(m0,(A)=>{if(!_)throw new u.SwapKitError("toolbox_near_no_account");return A.customEstimator(_)}).otherwise(()=>{throw new u.SwapKitError("toolbox_near_invalid_gas_params")}),O=await Ly(),E=BigInt(N)*BigInt(1000000000000)*BigInt(O);return u.AssetValue.from({chain:u.Chain.Near,value:E,fromBaseDecimal:u.BaseDecimal[u.Chain.Near]})}async function Ly(){try{return(await Z.gasPrice(null)).gas_price||"100000000"}catch(k){return"100000000"}}return{getAddress:Q,getPublicKey:async()=>X?(await X.getPublicKey()).toString():"",provider:Z,transfer:q,createTransaction:z,createContractFunctionCall:B,estimateTransactionFee:G,broadcastTransaction:H,signTransaction:M,getBalance:s,validateAddress:await hT(),getSignerFromPhrase:(k)=>k5(k),getSignerFromPrivateKey:u0,callFunction:S,createSubAccount:I,createContract:b,executeBatchTransaction:d,nep141:c,getGasPrice:Ly,estimateGas:r}}var u;var i0=l(()=>{u=require("@swapkit/helpers");b0();t0()});var nf=l(()=>{i0()});var r0={};qy(r0,{tgasToGas:()=>n2,isSimpleTransfer:()=>j0,isCustomEstimator:()=>m0,isContractDeployment:()=>o0,isContractCall:()=>h0,isBatchTransaction:()=>n0,isAccountCreation:()=>p0,getValidateNearAddress:()=>hT,getNearToolbox:()=>o2,getNearSignerFromPrivateKey:()=>u0,getNearSignerFromPhrase:()=>k5,getFullAccessPublicKey:()=>w5,getContractMethodGas:()=>g0,gasToTGas:()=>p2,estimateBatchGas:()=>c0,createNearContract:()=>E5,createNEP141Token:()=>d0,GAS_COSTS:()=>fy});module.exports=_y(r0);var a0=l(()=>{i0();nf();b0();t0()});var e0={};qy(e0,{rippleValidateAddress:()=>s0,hashes:()=>of.hashes,getRippleToolbox:()=>c2});module.exports=_y(e0);function pf(T){let f=by.Wallet.fromMnemonic(T);return{getAddress:()=>Promise.resolve(f.address),signTransaction:(x)=>Promise.resolve(f.sign(x))}}function s0(T){return by.isValidAddress(T)}var n,by,of,m2,c2=async(T={})=>{let f="signer"in T&&T.signer?T.signer:("phrase"in T)&&T.phrase?pf(T.phrase):void 0,x=n.SKConfig.get("rpcUrls")[n.Chain.Ripple];if(!x)throw new n.SwapKitError({errorKey:"toolbox_ripple_rpc_not_configured",info:{chain:n.Chain.Ripple}});let y=new by.Client(x);await y.connect();let X=()=>{if(!f)throw new n.SwapKitError({errorKey:"toolbox_ripple_signer_not_found"});return f.getAddress()},L=async(M)=>{let H=M||await X();try{let R=(await y.request({command:"account_info",account:H})).result.account_data.Balance;return[n.AssetValue.from({chain:n.Chain.Ripple,value:R,fromBaseDecimal:n.BaseDecimal[n.Chain.Ripple]})]}catch(G){if(G.data.error_code===m2.ACCOUNT_NOT_FOUND)return[n.AssetValue.from({chain:n.Chain.Ripple,value:0})];throw new n.SwapKitError("toolbox_ripple_get_balance_error",{info:{address:H,error:G}})}},Z=async()=>{let H=(await y.request({command:"fee"})).result.drops.open_ledger_fee;return n.AssetValue.from({chain:n.Chain.Ripple,value:n.SwapKitNumber.fromBigInt(BigInt(H),n.BaseDecimal[n.Chain.Ripple])})},J=async({assetValue:M,recipient:H,memo:G,sender:R})=>{if(!s0(H))throw new n.SwapKitError({errorKey:"core_transaction_invalid_recipient_address"});let I=R||await X();if(!M.isGasAsset||M.chain!==n.Chain.Ripple)throw new n.SwapKitError({errorKey:"toolbox_ripple_asset_not_supported",info:{asset:M.toString()}});let S={TransactionType:"Payment",Account:I,Amount:by.xrpToDrops(M.getValue("string")),Destination:H};if(G)S.Memos=[{Memo:{MemoData:Buffer.from(G).toString("hex")}}];return await y.autofill(S)},Q=(M)=>{if(!f)throw new n.SwapKitError({errorKey:"toolbox_ripple_signer_not_found"});return f.signTransaction(M)},q=async(M)=>{let G=(await y.submitAndWait(M)).result;if(G.validated)return G.hash;throw new n.SwapKitError({errorKey:"toolbox_ripple_broadcast_error",info:{chain:n.Chain.Ripple}})};return{signer:f,createSigner:pf,getAddress:X,validateAddress:s0,getBalance:L,createTransaction:J,signTransaction:Q,broadcastTransaction:q,transfer:async(M)=>{if(!f)throw new n.SwapKitError({errorKey:"toolbox_ripple_signer_not_found"});let H=await f.getAddress(),G=await J({...M,sender:H}),R=await Q(G);return q(R.tx_blob)},estimateTransactionFee:Z,disconnect:()=>y.disconnect()}};var y1=l(()=>{n=require("@swapkit/helpers"),by=require("xrpl"),of=require("xrpl"),m2={ACCOUNT_NOT_FOUND:19}});var T1={};qy(T1,{radixValidateAddress:()=>mf,RadixToolbox:()=>r2});module.exports=_y(T1);function mf(T){return T.startsWith("account_rdx1")&&T.length===66}function g2({networkApi:T}){return async function f(x){let y=await t2({address:x,networkApi:T});return d2({resources:y,networkApi:T})}}async function t2({address:T,networkApi:f}){let x=!0,y,X=[],L=await i2(f);while(x){let Z={address:T,limit_per_page:100,cursor:y,at_ledger_state:{state_version:L}},J=await f.state.innerClient.entityFungiblesPage({stateEntityFungiblesPageRequest:Z});if(X=X.concat(J.items),J.next_cursor)y=J.next_cursor;else x=!1}return X}async function d2({resources:T,networkApi:f}){let x=[],y=50,X=[];for(let L=0;L<T.length;L+=50)X.push(T.slice(L,L+50));for(let L of X){let Z=L.map((q)=>q.resource_address),J=await f.state.getEntityDetailsVaultAggregated(Z),Q=new Map;for(let q of J)if(q.details!==void 0){let z=q.metadata?.items.find((M)=>M.key==="symbol"),B=z?.value.typed.type==="String"?z.value.typed.value:"?";if(q.details.type==="FungibleResource")Q.set(q.address,{decimals:q.details.divisibility,symbol:B})}for(let q of L)if(q.aggregation_level==="Global"){let z=Q.get(q.resource_address)||{decimals:0,symbol:"?"},B=ky.AssetValue.from({asset:z.symbol!==ky.Chain.Radix?`${ky.Chain.Radix}.${z.symbol}-${q.resource_address}`:"XRD.XRD",value:q.amount});x.push(B)}}return x}async function i2(T){return T.status.getCurrent().then((f)=>f.ledger_state.state_version)}var ky,r2=async({dappConfig:T}={})=>{let{RadixDappToolkit:f}=await import("@radixdlt/radix-dapp-toolkit"),{GatewayApiClient:x}=await import("@radixdlt/babylon-gateway-api-sdk"),y=T||ky.SKConfig.get("integrations").radix,X=f({...y,networkId:y.network?.networkId||1}),L=x.initialize(X.gatewayApi.clientConfig);return{getAddress:()=>"",getBalance:g2({networkApi:L}),networkApi:L,validateAddress:mf,signAndBroadcast:()=>{throw new ky.SwapKitError("toolbox_radix_method_not_supported",{method:"signAndBroadcast"})}}};var f1=l(()=>{ky=require("@swapkit/helpers")});var MT;var X1=l(()=>{MT=[{constant:!0,inputs:[{name:"_owner",type:"address"}],name:"balanceOf",outputs:[{name:"balance",type:"uint256"}],stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"_to",type:"address"},{name:"_value",type:"uint256"}],name:"transfer",outputs:[{name:"success",type:"bool"}],stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"decimals",outputs:[{name:"",type:"uint8"}],stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"symbol",outputs:[{name:"",type:"string"}],stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"name",outputs:[{name:"",type:"string"}],stateMutability:"view",type:"function"},{constant:!0,inputs:[{name:"_owner",type:"address"},{name:"_spender",type:"address"}],name:"allowance",outputs:[{name:"remaining",type:"uint256"}],stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"_spender",type:"address"},{name:"_value",type:"uint256"}],name:"approve",outputs:[{name:"success",type:"bool"}],stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"totalSupply",outputs:[{name:"",type:"uint256"}],stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"_from",type:"address"},{name:"_to",type:"address"},{name:"_value",type:"uint256"}],name:"transferFrom",outputs:[{name:"success",type:"bool"}],stateMutability:"nonpayable",type:"function"},{anonymous:!1,inputs:[{indexed:!0,name:"_from",type:"address"},{indexed:!0,name:"_to",type:"address"},{indexed:!1,name:"_value",type:"uint256"}],name:"Transfer",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"_owner",type:"address"},{indexed:!0,name:"_spender",type:"address"},{indexed:!1,name:"_value",type:"uint256"}],name:"Approval",type:"event"}]});async function gf(T){let f=await import("tronweb"),x=f.TronWeb??f.default?.TronWeb;try{let y=await fetch(`${a2}/v1/accounts/${T}`);if(!y.ok)throw new Error(`TronGrid API error: ${y.status} ${y.statusText}`);let X=await y.json();if(!(X.success&&X.data)||X.data.length===0)throw new Error("Invalid response from TronGrid API");let L;try{L=x.address.toHex(T).toLowerCase()}catch{L=T.toLowerCase()}let Z=X.data.find((J)=>{return J.address.toLowerCase()===L});if(!Z)return;return{balance:Z.balance,trc20:Z.trc20||[]}}catch(y){throw new cf.SwapKitError("toolbox_tron_trongrid_api_error",{message:y instanceof Error?y.message:"Unknown error",address:T})}}var cf,a2="https://api.trongrid.io";var tf=l(()=>{cf=require("@swapkit/helpers")});async function L1(){let T=await import("tronweb"),f=T.TronWeb??T.default?.TronWeb;return(x)=>{return f.isAddress(x)}}async function rf({phrase:T,derivationPath:f,index:x}){let y=f||P.derivationPathToString(P.updateDerivationPath(P.NetworkDerivationPath[P.Chain.Tron],{index:x||0})),{HDKey:X}=await import("@scure/bip32"),{mnemonicToSeedSync:L}=await import("@scure/bip39"),Z=L(T),Q=X.fromMasterSeed(Z).derive(y);if(!Q.privateKey)throw new P.SwapKitError("toolbox_tron_no_signer");return Buffer.from(Q.privateKey).toString("hex")}async function f8({phrase:T,derivationPath:f,tronWeb:x}){let{HDKey:y}=await import("@scure/bip32"),{mnemonicToSeedSync:X}=await import("@scure/bip39"),L=X(T),J=y.fromMasterSeed(L).derive(f);if(!J.privateKey)throw new P.SwapKitError("toolbox_tron_no_signer");let Q=Buffer.from(J.privateKey).toString("hex");x.setPrivateKey(Q);let q=x?.address.fromPrivateKey(Q);return{getAddress:()=>Promise.resolve(typeof q==="string"?q:""),signTransaction:async(z)=>{return await x.trx.sign(z,Q)}}}var P,nT,s2=268,e2=13000,y8=345,df="TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t",T8="0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",af=async(T={})=>{let f=await import("tronweb"),x=f.TronWeb??f.default?.TronWeb,y=P.SKConfig.get("rpcUrls")[P.Chain.Tron],X=void 0,L=new x({fullHost:y,headers:void 0}),Z="index"in T?T.index||0:0,J=P.derivationPathToString("derivationPath"in T&&T.derivationPath?T.derivationPath:P.updateDerivationPath(P.NetworkDerivationPath[P.Chain.Tron],{index:Z})),Q=await nT.match(T).with({phrase:nT.P.string},async({phrase:_})=>f8({phrase:_,derivationPath:J,tronWeb:L})).with({signer:nT.P.any},({signer:_})=>Promise.resolve(_)).otherwise(()=>Promise.resolve(void 0)),q=async()=>{if(!Q)throw new P.SwapKitError("toolbox_tron_no_signer");return await Q.getAddress()},z=()=>{return 1e8},B=async()=>{try{let _=await L.trx.getChainParameters(),N={};for(let O of _)N[O.key]=O.value;return{energyFee:N.getEnergyFee||420,bandwidthFee:N.getTransactionFee||1000,createAccountFee:N.getCreateAccountFee||1e5}}catch{return{energyFee:420,bandwidthFee:1000,createAccountFee:1e5}}},M=async(_)=>{try{let N=await L.trx.getAccount(_);return N&&Object.keys(N).length>0}catch{return!1}},H=async(_)=>{try{let N=await L.trx.getAccountResources(_);return{bandwidth:{free:N.freeNetLimit-N.freeNetUsed,total:N.NetLimit||0,used:N.NetUsed||0},energy:{total:N.EnergyLimit||0,used:N.EnergyUsed||0}}}catch{return{bandwidth:{free:600,total:0,used:0},energy:{total:0,used:0}}}},G=async(_,N)=>{try{let O=L.contract(MT,N);if(!O.methods?.balanceOf)return 0n;let V=(await O.methods.balanceOf(_).call())[0];return BigInt(V||0)}catch(O){return console.warn(`balanceOf() failed for ${N}:`,O),0n}},R=async(_,N)=>{try{L.setAddress(N);let O=L.contract(MT,_),[V,E]=await Promise.all([O.symbol().call().catch(()=>"UNKNOWN"),O.decimals().call().catch(()=>"18")]);return{symbol:V??"UNKNOWN",decimals:Number(E??18)}}catch(O){return P.warnOnce(!0,`Failed to get token balance for ${_}: ${O instanceof Error?O.message:O}`),null}},I=async(_,N=!0)=>{let O=[P.AssetValue.from({chain:P.Chain.Tron})];try{let V=await gf(_);if(V){let E=[];E.push(P.AssetValue.from({chain:P.Chain.Tron,value:V.balance,fromBaseDecimal:6}));for(let A of V.trc20){let[i,o]=Object.entries(A)[0]||[];if(!(i&&o))continue;let g=await R(i,_);if(!g)continue;E.push(P.AssetValue.from({asset:`TRX.${g.symbol}-${i}`,value:BigInt(o||0),fromBaseDecimal:g.decimals}))}return E}return O}catch(V){P.warnOnce(!0,`Tron API getBalance failed: ${V instanceof Error?V.message:V}`);let E=[],A=await L.trx.getBalance(_);if(A&&Number(A)>0)E.push(P.AssetValue.from({chain:P.Chain.Tron,value:A,fromBaseDecimal:6}));let i=await G(_,df);if(i)E.push(P.AssetValue.from({asset:`TRX.USDT-${df}`,value:i,fromBaseDecimal:6}));return E}},S=async({recipient:_,assetValue:N,memo:O})=>{if(!Q)throw new P.SwapKitError("toolbox_tron_no_signer");let V=await q();if(L.setAddress(V),N.isGasAsset){let g=await L.transactionBuilder.sendTrx(_,N.getBaseValue("number"),V);if(O){let Gy=await L.transactionBuilder.addUpdateData(g,O,"utf8"),Wy=await Q.signTransaction(Gy),{txid:jy}=await L.trx.sendRawTransaction(Wy);return jy}let Qy=await Q.signTransaction(g),{txid:xy}=await L.trx.sendRawTransaction(Qy);return xy}let A=await d({recipient:_,assetValue:N,memo:O,sender:V}),i=await Q.signTransaction(A),{txid:o}=await L.trx.sendRawTransaction(i);if(!o)throw new P.SwapKitError("toolbox_tron_token_transfer_failed");return o},b=async({assetValue:_,recipient:N,sender:O})=>{let V=_.isGasAsset;try{let E=O?O:Q?await q():void 0;if(!E)return V?P.AssetValue.from({chain:P.Chain.Tron,value:0.1,fromBaseDecimal:0}):P.AssetValue.from({chain:P.Chain.Tron,value:15,fromBaseDecimal:0});let A=await B(),o=await M(N)?0:A.createAccountFee,g=await H(E);if(V){let iy=s2,mT=g.bandwidth.free+(g.bandwidth.total-g.bandwidth.used),v5=0;if(iy>mT)v5=(iy-mT)*A.bandwidthFee;let cT=o+v5;return P.AssetValue.from({chain:P.Chain.Tron,value:cT,fromBaseDecimal:6})}let Qy=y8,xy=e2,Gy=g.bandwidth.free+(g.bandwidth.total-g.bandwidth.used),Wy=g.energy.total-g.energy.used,jy=0;if(Qy>Gy)jy=(Qy-Gy)*A.bandwidthFee;let pT=0;if(xy>Wy)pT=(xy-Wy)*A.energyFee;let oT=o+jy+pT;return P.AssetValue.from({chain:P.Chain.Tron,value:oT,fromBaseDecimal:6})}catch(E){throw P.warnOnce(!0,`Failed to calculate exact fee, using conservative estimate: ${E instanceof Error?E.message:E}`),new P.SwapKitError("toolbox_tron_fee_estimation_failed",{error:E})}},d=async(_)=>{let{recipient:N,assetValue:O,memo:V,sender:E}=_;if(O.isGasAsset){let o=await L.transactionBuilder.sendTrx(N,O.getBaseValue("number"),E);if(V)return L.transactionBuilder.addUpdateData(o,V,"utf8");return o}L.setAddress(E);let i=O.address;if(!i)throw new P.SwapKitError("toolbox_tron_invalid_token_identifier",{identifier:O.toString()});try{let g=[{type:"address",value:N},{type:"uint256",value:O.getBaseValue("string")}],Qy={feeLimit:z(),callValue:0};return(await L.transactionBuilder.triggerSmartContract(i,"transfer(address,uint256)",Qy,g,E)).transaction}catch(o){throw new P.SwapKitError("toolbox_tron_transaction_creation_failed",{message:"Failed to create TRC20 transaction. This might be due to TronWeb 6.0.3 bug. Use the transfer method directly instead.",originalError:o instanceof Error?o.message:String(o)})}},c=async(_)=>{if(!Q)throw new P.SwapKitError("toolbox_tron_no_signer");return await Q.signTransaction(_)},s=async(_)=>{let{txid:N}=await L.trx.sendRawTransaction(_);return N},r=async({assetAddress:_,spenderAddress:N,from:O})=>{try{let V=L.contract(MT,_);if(!V.methods?.allowance)throw new P.SwapKitError("toolbox_tron_invalid_token_contract");let E=(await V.methods.allowance(O,N).call())[0];return BigInt(E||0)}catch(V){throw new P.SwapKitError("toolbox_tron_allowance_check_failed",{error:V})}},Ly=async({assetAddress:_,spenderAddress:N,from:O,amount:V})=>{let E=await r({assetAddress:_,spenderAddress:N,from:O});if(!V)return E>0n;let A=BigInt(V);return E>=A},k=async({assetAddress:_,spenderAddress:N,amount:O,from:V})=>{if(!Q)throw new P.SwapKitError("toolbox_tron_no_signer");let E=V||await q(),A=O!==void 0?BigInt(O).toString():T8,i="approve(address,uint256)",o=[{type:"address",value:N},{type:"uint256",value:A}],Qy={feeLimit:z(),callValue:0};try{let{transaction:xy}=await L.transactionBuilder.triggerSmartContract(_,i,Qy,o,E),Gy=await Q.signTransaction(xy),{txid:Wy}=await L.trx.sendRawTransaction(Gy);if(!Wy)throw new P.SwapKitError("toolbox_tron_approve_failed");return Wy}catch(xy){throw new P.SwapKitError("toolbox_tron_approve_failed",{error:xy})}};return{tronWeb:L,getAddress:q,validateAddress:await L1(),getBalance:I,transfer:S,estimateTransactionFee:b,createTransaction:d,signTransaction:c,broadcastTransaction:s,approve:k,isApproved:Ly,getApprovedAmount:r}};var sf=l(()=>{P=require("@swapkit/helpers"),nT=require("ts-pattern");X1();tf()});var x1={};qy(x1,{trc20ABI:()=>MT,getTronPrivateKeyFromMnemonic:()=>rf,getTronAddressValidator:()=>L1,createTronToolbox:()=>af});module.exports=_y(x1);var Z1=l(()=>{sf();X1()});var x8={};qy(x8,{getToolbox:()=>J1,getFeeEstimator:()=>L8,getAddressValidator:()=>X8});module.exports=_y(x8);var U=require("@swapkit/helpers");async function X8(){let{match:T}=await import("ts-pattern"),{cosmosValidateAddress:f}=await Promise.resolve().then(() => (rT(),iT)),{evmValidateAddress:x}=await Promise.resolve().then(() => (a5(),s1)),{substrateValidateAddress:y}=await Promise.resolve().then(() => (G0(),B0)),{getUTXOAddressValidator:X}=await Promise.resolve().then(() => (v0(),E0)),{getSolanaAddressValidator:L}=await Promise.resolve().then(() => (S0(),A0)),{getValidateNearAddress:Z}=await Promise.resolve().then(() => (a0(),r0)),{rippleValidateAddress:J}=await Promise.resolve().then(() => (y1(),e0)),{radixValidateAddress:Q}=await Promise.resolve().then(() => (f1(),T1)),{getTronAddressValidator:q}=await Promise.resolve().then(() => (Z1(),x1)),z=await L(),B=await X(),M=await q(),H=await Z();return function G({address:R,chain:I}){return T(I).with(U.Chain.Arbitrum,U.Chain.Aurora,U.Chain.Avalanche,U.Chain.Base,U.Chain.Berachain,U.Chain.BinanceSmartChain,U.Chain.Ethereum,U.Chain.Gnosis,U.Chain.Optimism,U.Chain.Polygon,()=>x({address:R})).with(U.Chain.Litecoin,U.Chain.Dash,U.Chain.Dogecoin,U.Chain.BitcoinCash,U.Chain.Bitcoin,()=>B({address:R,chain:I})).with(U.Chain.Cosmos,U.Chain.Kujira,U.Chain.Maya,U.Chain.THORChain,()=>f({address:R,chain:I})).with(U.Chain.Chainflip,U.Chain.Polkadot,()=>y({address:R,chain:I})).with(U.Chain.Radix,()=>Q(R)).with(U.Chain.Near,()=>H(R)).with(U.Chain.Ripple,()=>J(R)).with(U.Chain.Solana,()=>z(R)).with(U.Chain.Tron,()=>M(R)).otherwise(()=>!1)}}function L8(T){return async function f(x){let{match:y}=await import("ts-pattern");return y(T).returnType().with(U.Chain.Arbitrum,U.Chain.Aurora,U.Chain.Avalanche,U.Chain.Base,U.Chain.Berachain,U.Chain.BinanceSmartChain,U.Chain.Ethereum,U.Chain.Gnosis,U.Chain.Optimism,U.Chain.Polygon,async(X)=>{let L=await J1(X),Z=await L.createTransaction(x);return L.estimateTransactionFee({...Z,feeOption:x.feeOptionKey||U.FeeOption.Fast,chain:X})}).with(U.Chain.Bitcoin,U.Chain.BitcoinCash,U.Chain.Dogecoin,U.Chain.Dash,U.Chain.Litecoin,U.Chain.Polkadot,U.Chain.Solana,U.Chain.Ripple,U.Chain.Tron,U.Chain.Near,async(X)=>{return(await J1(X)).estimateTransactionFee(x)}).with(U.Chain.THORChain,U.Chain.Maya,U.Chain.Kujira,U.Chain.Cosmos,async()=>{let{estimateTransactionFee:X}=await Promise.resolve().then(() => (rT(),iT));return X(x)}).otherwise(async()=>U.AssetValue.from({chain:T}))}}async function J1(T,f){let{match:x}=await import("ts-pattern");return x(T).returnType().with(U.Chain.Arbitrum,U.Chain.Aurora,U.Chain.Avalanche,U.Chain.Base,U.Chain.Berachain,U.Chain.BinanceSmartChain,U.Chain.Ethereum,U.Chain.Gnosis,U.Chain.Optimism,U.Chain.Polygon,async()=>{let{getEvmToolbox:y}=await Promise.resolve().then(() => (G5(),x0));return await y(T,f)}).with(U.Chain.Litecoin,U.Chain.Dash,U.Chain.Dogecoin,U.Chain.BitcoinCash,U.Chain.Bitcoin,U.Chain.Zcash,async()=>{let{getUtxoToolbox:y}=await Promise.resolve().then(() => (v0(),E0));return await y(T,f)}).with(U.Chain.Cosmos,U.Chain.Kujira,U.Chain.Maya,U.Chain.THORChain,async()=>{let{getCosmosToolbox:y}=await Promise.resolve().then(() => (rT(),iT));return await y(T,f)}).with(U.Chain.Chainflip,U.Chain.Polkadot,async()=>{let{getSubstrateToolbox:y}=await Promise.resolve().then(() => (G0(),B0));return await y(T,f)}).with(U.Chain.Radix,async()=>{let{RadixToolbox:y}=await Promise.resolve().then(() => (f1(),T1));return await y(f)}).with(U.Chain.Ripple,async()=>{let{getRippleToolbox:y}=await Promise.resolve().then(() => (y1(),e0));return await y(f)}).with(U.Chain.Solana,async()=>{let{getSolanaToolbox:y}=await Promise.resolve().then(() => (S0(),A0));return await y(f)}).with(U.Chain.Tron,async()=>{let{createTronToolbox:y}=await Promise.resolve().then(() => (Z1(),x1));return await y(f)}).with(U.Chain.Near,async()=>{let{getNearToolbox:y}=await Promise.resolve().then(() => (a0(),r0));return await y(f)}).otherwise(()=>{throw new U.SwapKitError("toolbox_not_supported",{chain:T})})}
|
|
2
4
|
|
|
3
|
-
//# debugId=
|
|
5
|
+
//# debugId=294CC4081CE129AF64756E2164756E21
|
|
4
6
|
//# sourceMappingURL=index.cjs.map
|