@tcswap/toolboxes 4.3.15
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/cardano/index.cjs +4 -0
- package/dist/src/cardano/index.cjs.map +11 -0
- package/dist/src/cardano/index.js +4 -0
- package/dist/src/cardano/index.js.map +11 -0
- package/dist/src/cosmos/index.cjs +4 -0
- package/dist/src/cosmos/index.cjs.map +20 -0
- package/dist/src/cosmos/index.js +4 -0
- package/dist/src/cosmos/index.js.map +20 -0
- package/dist/src/evm/index.cjs +4 -0
- package/dist/src/evm/index.cjs.map +20 -0
- package/dist/src/evm/index.js +4 -0
- package/dist/src/evm/index.js.map +20 -0
- package/dist/src/index.cjs +5 -0
- package/dist/src/index.cjs.map +67 -0
- package/dist/src/index.js +5 -0
- package/dist/src/index.js.map +67 -0
- package/dist/src/near/index.cjs +4 -0
- package/dist/src/near/index.cjs.map +16 -0
- package/dist/src/near/index.js +4 -0
- package/dist/src/near/index.js.map +16 -0
- package/dist/src/radix/index.cjs +4 -0
- package/dist/src/radix/index.cjs.map +10 -0
- package/dist/src/radix/index.js +4 -0
- package/dist/src/radix/index.js.map +10 -0
- package/dist/src/ripple/index.cjs +4 -0
- package/dist/src/ripple/index.cjs.map +10 -0
- package/dist/src/ripple/index.js +4 -0
- package/dist/src/ripple/index.js.map +10 -0
- package/dist/src/solana/index.cjs +4 -0
- package/dist/src/solana/index.cjs.map +11 -0
- package/dist/src/solana/index.js +4 -0
- package/dist/src/solana/index.js.map +11 -0
- package/dist/src/substrate/index.cjs +4 -0
- package/dist/src/substrate/index.cjs.map +13 -0
- package/dist/src/substrate/index.js +4 -0
- package/dist/src/substrate/index.js.map +13 -0
- package/dist/src/sui/index.cjs +4 -0
- package/dist/src/sui/index.cjs.map +11 -0
- package/dist/src/sui/index.js +4 -0
- package/dist/src/sui/index.js.map +11 -0
- package/dist/src/ton/index.cjs +4 -0
- package/dist/src/ton/index.cjs.map +11 -0
- package/dist/src/ton/index.js +4 -0
- package/dist/src/ton/index.js.map +11 -0
- package/dist/src/tron/index.cjs +4 -0
- package/dist/src/tron/index.cjs.map +13 -0
- package/dist/src/tron/index.js +4 -0
- package/dist/src/tron/index.js.map +13 -0
- package/dist/src/utxo/index.cjs +5 -0
- package/dist/src/utxo/index.cjs.map +21 -0
- package/dist/src/utxo/index.js +5 -0
- package/dist/src/utxo/index.js.map +21 -0
- package/dist/types/cardano/index.d.ts +3 -0
- package/dist/types/cardano/index.d.ts.map +1 -0
- package/dist/types/cardano/toolbox.d.ts +37 -0
- package/dist/types/cardano/toolbox.d.ts.map +1 -0
- package/dist/types/cardano/types.d.ts +11 -0
- package/dist/types/cardano/types.d.ts.map +1 -0
- package/dist/types/cosmos/index.d.ts +5 -0
- package/dist/types/cosmos/index.d.ts.map +1 -0
- package/dist/types/cosmos/thorchainUtils/addressFormat.d.ts +8 -0
- package/dist/types/cosmos/thorchainUtils/addressFormat.d.ts.map +1 -0
- package/dist/types/cosmos/thorchainUtils/index.d.ts +5 -0
- package/dist/types/cosmos/thorchainUtils/index.d.ts.map +1 -0
- package/dist/types/cosmos/thorchainUtils/messages.d.ts +211 -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 +63 -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 +65 -0
- package/dist/types/cosmos/toolbox/cosmos.d.ts.map +1 -0
- package/dist/types/cosmos/toolbox/index.d.ts +18 -0
- package/dist/types/cosmos/toolbox/index.d.ts.map +1 -0
- package/dist/types/cosmos/toolbox/thorchain.d.ts +161 -0
- package/dist/types/cosmos/toolbox/thorchain.d.ts.map +1 -0
- package/dist/types/cosmos/types.d.ts +49 -0
- package/dist/types/cosmos/types.d.ts.map +1 -0
- package/dist/types/cosmos/util.d.ts +77 -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 +6 -0
- package/dist/types/evm/helpers.d.ts.map +1 -0
- package/dist/types/evm/index.d.ts +5 -0
- package/dist/types/evm/index.d.ts.map +1 -0
- package/dist/types/evm/toolbox/baseEVMToolbox.d.ts +88 -0
- package/dist/types/evm/toolbox/baseEVMToolbox.d.ts.map +1 -0
- package/dist/types/evm/toolbox/evm.d.ts +767 -0
- package/dist/types/evm/toolbox/evm.d.ts.map +1 -0
- package/dist/types/evm/toolbox/index.d.ts +7 -0
- package/dist/types/evm/toolbox/index.d.ts.map +1 -0
- package/dist/types/evm/toolbox/op.d.ts +67 -0
- package/dist/types/evm/toolbox/op.d.ts.map +1 -0
- package/dist/types/evm/types.d.ts +108 -0
- package/dist/types/evm/types.d.ts.map +1 -0
- package/dist/types/index.d.ts +78 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/near/helpers/core.d.ts +18 -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 +36 -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 +35 -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 +29 -0
- package/dist/types/near/types/nep141.d.ts.map +1 -0
- package/dist/types/near/types/toolbox.d.ts +51 -0
- package/dist/types/near/types/toolbox.d.ts.map +1 -0
- package/dist/types/near/types.d.ts +47 -0
- package/dist/types/near/types.d.ts.map +1 -0
- package/dist/types/radix/index.d.ts +17 -0
- package/dist/types/radix/index.d.ts.map +1 -0
- package/dist/types/ripple/index.d.ts +49 -0
- package/dist/types/ripple/index.d.ts.map +1 -0
- package/dist/types/solana/index.d.ts +23 -0
- package/dist/types/solana/index.d.ts.map +1 -0
- package/dist/types/solana/toolbox.d.ts +54 -0
- package/dist/types/solana/toolbox.d.ts.map +1 -0
- package/dist/types/substrate/balance.d.ts +20 -0
- package/dist/types/substrate/balance.d.ts.map +1 -0
- package/dist/types/substrate/index.d.ts +3 -0
- package/dist/types/substrate/index.d.ts.map +1 -0
- package/dist/types/substrate/substrate.d.ts +151 -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/sui/index.d.ts +3 -0
- package/dist/types/sui/index.d.ts.map +1 -0
- package/dist/types/sui/toolbox.d.ts +22 -0
- package/dist/types/sui/toolbox.d.ts.map +1 -0
- package/dist/types/sui/types.d.ts +16 -0
- package/dist/types/sui/types.d.ts.map +1 -0
- package/dist/types/ton/index.d.ts +3 -0
- package/dist/types/ton/index.d.ts.map +1 -0
- package/dist/types/ton/toolbox.d.ts +17 -0
- package/dist/types/ton/toolbox.d.ts.map +1 -0
- package/dist/types/ton/types.d.ts +22 -0
- package/dist/types/ton/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 +11 -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 +29 -0
- package/dist/types/tron/toolbox.d.ts.map +1 -0
- package/dist/types/tron/types.d.ts +103 -0
- package/dist/types/tron/types.d.ts.map +1 -0
- package/dist/types/types.d.ts +26 -0
- package/dist/types/types.d.ts.map +1 -0
- package/dist/types/utils.d.ts +7 -0
- package/dist/types/utils.d.ts.map +1 -0
- package/dist/types/utxo/helpers/api.d.ts +104 -0
- package/dist/types/utxo/helpers/api.d.ts.map +1 -0
- package/dist/types/utxo/helpers/bchaddrjs.d.ts +13 -0
- package/dist/types/utxo/helpers/bchaddrjs.d.ts.map +1 -0
- package/dist/types/utxo/helpers/coinselect.d.ts +20 -0
- package/dist/types/utxo/helpers/coinselect.d.ts.map +1 -0
- package/dist/types/utxo/helpers/index.d.ts +5 -0
- package/dist/types/utxo/helpers/index.d.ts.map +1 -0
- package/dist/types/utxo/helpers/txSize.d.ts +24 -0
- package/dist/types/utxo/helpers/txSize.d.ts.map +1 -0
- package/dist/types/utxo/index.d.ts +7 -0
- package/dist/types/utxo/index.d.ts.map +1 -0
- package/dist/types/utxo/toolbox/bitcoinCash.d.ts +96 -0
- package/dist/types/utxo/toolbox/bitcoinCash.d.ts.map +1 -0
- package/dist/types/utxo/toolbox/index.d.ts +31 -0
- package/dist/types/utxo/toolbox/index.d.ts.map +1 -0
- package/dist/types/utxo/toolbox/params.d.ts +32 -0
- package/dist/types/utxo/toolbox/params.d.ts.map +1 -0
- package/dist/types/utxo/toolbox/utxo.d.ts +106 -0
- package/dist/types/utxo/toolbox/utxo.d.ts.map +1 -0
- package/dist/types/utxo/toolbox/validators.d.ts +4 -0
- package/dist/types/utxo/toolbox/validators.d.ts.map +1 -0
- package/dist/types/utxo/toolbox/zcash.d.ts +75 -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 +205 -0
- package/src/__tests__/address-validation-all-chains.test.ts +162 -0
- package/src/__tests__/addressValidator.test.ts +162 -0
- package/src/cardano/__tests__/toolbox.test.ts +48 -0
- package/src/cardano/index.ts +2 -0
- package/src/cardano/toolbox.ts +172 -0
- package/src/cardano/types.ts +10 -0
- package/src/cosmos/__tests__/toolbox.test.ts +95 -0
- package/src/cosmos/index.ts +4 -0
- package/src/cosmos/thorchainUtils/addressFormat.ts +26 -0
- package/src/cosmos/thorchainUtils/index.ts +4 -0
- package/src/cosmos/thorchainUtils/messages.ts +216 -0
- package/src/cosmos/thorchainUtils/registry.ts +43 -0
- package/src/cosmos/thorchainUtils/types/MsgCompiled.ts +2800 -0
- package/src/cosmos/thorchainUtils/types/client-types.ts +54 -0
- package/src/cosmos/thorchainUtils/types/index.ts +1 -0
- package/src/cosmos/toolbox/cosmos.ts +354 -0
- package/src/cosmos/toolbox/index.ts +39 -0
- package/src/cosmos/toolbox/thorchain.ts +253 -0
- package/src/cosmos/types.ts +48 -0
- package/src/cosmos/util.ts +218 -0
- package/src/evm/__tests__/address-validation.test.ts +84 -0
- package/src/evm/__tests__/ethereum.test.ts +141 -0
- package/src/evm/__tests__/signMessage.test.ts +60 -0
- package/src/evm/api.ts +10 -0
- package/src/evm/contracts/eth/multicall.ts +165 -0
- package/src/evm/contracts/op/gasOracle.ts +145 -0
- package/src/evm/helpers.ts +71 -0
- package/src/evm/index.ts +4 -0
- package/src/evm/toolbox/baseEVMToolbox.ts +701 -0
- package/src/evm/toolbox/evm.ts +66 -0
- package/src/evm/toolbox/index.ts +44 -0
- package/src/evm/toolbox/op.ts +147 -0
- package/src/evm/types.ts +146 -0
- package/src/index.ts +264 -0
- package/src/near/__tests__/core.test.ts +70 -0
- package/src/near/helpers/core.ts +89 -0
- package/src/near/helpers/gasEstimation.ts +96 -0
- package/src/near/helpers/nep141.ts +50 -0
- package/src/near/index.ts +21 -0
- package/src/near/toolbox.ts +425 -0
- package/src/near/types/contract.ts +32 -0
- package/src/near/types/nep141.ts +34 -0
- package/src/near/types/toolbox.ts +55 -0
- package/src/near/types.ts +44 -0
- package/src/radix/index.ts +142 -0
- package/src/ripple/index.ts +180 -0
- package/src/solana/index.ts +36 -0
- package/src/solana/toolbox.ts +413 -0
- package/src/substrate/balance.ts +92 -0
- package/src/substrate/index.ts +2 -0
- package/src/substrate/substrate.ts +285 -0
- package/src/substrate/types.ts +115 -0
- package/src/sui/__tests__/toolbox.test.ts +86 -0
- package/src/sui/index.ts +2 -0
- package/src/sui/toolbox.ts +170 -0
- package/src/sui/types.ts +11 -0
- package/src/ton/__tests__/toolbox.test.ts +67 -0
- package/src/ton/index.ts +2 -0
- package/src/ton/toolbox.ts +140 -0
- package/src/ton/types.ts +13 -0
- package/src/tron/__tests__/toolbox.test.ts +225 -0
- package/src/tron/helpers/trc20.abi.ts +107 -0
- package/src/tron/helpers/trongrid.ts +57 -0
- package/src/tron/index.ts +21 -0
- package/src/tron/toolbox.ts +589 -0
- package/src/tron/types.ts +83 -0
- package/src/types.ts +28 -0
- package/src/utils.ts +38 -0
- package/src/utxo/__tests__/zcash-integration.test.ts +97 -0
- package/src/utxo/helpers/api.ts +475 -0
- package/src/utxo/helpers/bchaddrjs.ts +170 -0
- package/src/utxo/helpers/coinselect.ts +96 -0
- package/src/utxo/helpers/index.ts +4 -0
- package/src/utxo/helpers/txSize.ts +141 -0
- package/src/utxo/index.ts +6 -0
- package/src/utxo/toolbox/bitcoinCash.ts +247 -0
- package/src/utxo/toolbox/index.ts +63 -0
- package/src/utxo/toolbox/params.ts +18 -0
- package/src/utxo/toolbox/utxo.ts +443 -0
- package/src/utxo/toolbox/validators.ts +36 -0
- package/src/utxo/toolbox/zcash.ts +246 -0
- package/src/utxo/types.ts +39 -0
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
var k=Object.create;var{getPrototypeOf:v,defineProperty:$,getOwnPropertyNames:x,getOwnPropertyDescriptor:C}=Object,B=Object.prototype.hasOwnProperty;var z=(y,f,R)=>{R=y!=null?k(v(y)):{};let q=f||!y||!y.__esModule?$(R,"default",{value:y,enumerable:!0}):R;for(let J of x(y))if(!B.call(q,J))$(q,J,{get:()=>y[J],enumerable:!0});return q},M=new WeakMap,S=(y)=>{var f=M.get(y),R;if(f)return f;if(f=$({},"__esModule",{value:!0}),y&&typeof y==="object"||typeof y==="function")x(y).map((q)=>!B.call(f,q)&&$(f,q,{get:()=>y[q],enumerable:!(R=C(y,q))||R.enumerable}));return M.set(y,f),f};var E=(y,f)=>{for(var R in f)$(y,R,{get:f[R],enumerable:!0,configurable:!0,set:(q)=>f[R]=()=>q})};var O=(y,f)=>()=>(y&&(f=y(y=0)),f);async function Y(){let{BlockfrostProvider:y}=await import("@meshsdk/core"),f="mainnet3YT7XK6NidLPlkHxxyBB5V0WzXUOTIJS";return new y("mainnet3YT7XK6NidLPlkHxxyBB5V0WzXUOTIJS")}async function w(y){try{let{MeshWallet:f}=await import("@meshsdk/core"),R=await Y(),q=new f({fetcher:R,key:{address:y,type:"address"},networkId:1});await q.init();let J=await q.getBalance(),N=[];for(let Q of J)if(Q.unit===p){let{baseDecimal:K}=j.getChainConfig(j.Chain.Cardano);N.push(j.AssetValue.from({chain:j.Chain.Cardano,fromBaseDecimal:K,value:Q.quantity}))}else N.push(j.AssetValue.from({asset:`${j.Chain.Cardano}.${Q.unit}`,value:Q.quantity}));if(N.length===0)return[j.AssetValue.from({chain:j.Chain.Cardano})];return N}catch(f){let R=f instanceof Error?f.message:String(f);return console.error(`Cardano balance fetch error: ${R}`),[j.AssetValue.from({chain:j.Chain.Cardano})]}}async function b(){let{deserializeAddress:y}=await import("@meshsdk/core");return(f)=>{try{return y(f),!0}catch{return!1}}}async function P(y){let f=await b(),R=await F.match(y).with({phrase:F.P.string},async({phrase:H})=>{let{MeshWallet:G}=await import("@meshsdk/core"),L=await Y(),X=new G({fetcher:L,key:{type:"mnemonic",words:H.split(" ")},networkId:1,submitter:L});return await X.init(),X}).with({signer:F.P.any},({signer:H})=>H).otherwise(()=>{return}),q=R&&"getChangeAddress"in R?await R.getChangeAddress():"";function J(){return q||""}function N(H){let G=H||J();if(!G)throw new j.USwapError("core_wallet_connection_not_found");return w(G)}function Q(){return Promise.resolve(j.AssetValue.from({chain:j.Chain.Cardano,value:"0.01"}))}async function K({recipient:H,assetValue:G,memo:L}){if(!R||!("getChangeAddress"in R))throw new j.USwapError("core_wallet_connection_not_found");let{Transaction:X}=await import("@meshsdk/core"),[,W]=G.symbol.split("-");if(!G.isGasAsset&&!W)throw new j.USwapError("core_wallet_connection_not_found");let Z=new X({initiator:R});if(Z.sendAssets({address:H},[{quantity:G.getBaseValue("string"),unit:G.isGasAsset?"lovelace":G.symbol}]),L)Z.setMetadata(0,L);let I=await Z.build();return{tx:Z,unsignedTx:I}}function _(H){if(!R||!("getChangeAddress"in R))throw new j.USwapError("core_wallet_connection_not_found");return R.signTx(H)}async function U({recipient:H,assetValue:G,memo:L}){if(!R||!("getChangeAddress"in R))throw new j.USwapError("core_wallet_connection_not_found");let{unsignedTx:X}=await K({assetValue:G,memo:L,recipient:H}),W=await _(X);return await(await Y()).submitTx(W)}return{createTransaction:K,estimateTransactionFee:Q,getAddress:J,getBalance:N,signTransaction:_,transfer:U,validateAddress:f}}var j,F,p="lovelace";var D=O(()=>{j=require("@tcswap/helpers"),F=require("ts-pattern")});var A={};E(A,{getCardanoToolbox:()=>P,getCardanoAddressValidator:()=>b});module.exports=S(A);var o=O(()=>{D()});o();
|
|
2
|
+
|
|
3
|
+
//# debugId=406C39EAC3B4A78564756E2164756E21
|
|
4
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/cardano/toolbox.ts", "../src/cardano/index.ts"],
|
|
4
|
+
"sourcesContent": [
|
|
5
|
+
"/**\n * Modifications © 2025 Horizontal Systems.\n */\n\nimport { AssetValue, Chain, type DerivationPathArray, getChainConfig, USwapError } from \"@tcswap/helpers\";\nimport { match, P } from \"ts-pattern\";\nimport type { CardanoProvider } from \"./index\";\n\ntype CardanoSigner = CardanoProvider | { address: string };\n\n// TODO: this should done on BE side\nasync function getProvider() {\n const { BlockfrostProvider } = await import(\"@meshsdk/core\");\n const apiKey = \"mainnet3YT7XK6NidLPlkHxxyBB5V0WzXUOTIJS\"; // TODO: TEST API KEY\n return new BlockfrostProvider(apiKey);\n}\n\nconst ADA_ID = \"lovelace\";\n\nasync function getCardanoBalance(address: string) {\n try {\n const { MeshWallet } = await import(\"@meshsdk/core\");\n const provider = await getProvider();\n\n const wallet = new MeshWallet({ fetcher: provider, key: { address, type: \"address\" }, networkId: 1 });\n\n await wallet.init();\n const balance = await wallet.getBalance();\n\n const balances: AssetValue[] = [];\n\n for (const asset of balance) {\n if (asset.unit === ADA_ID) {\n const { baseDecimal } = getChainConfig(Chain.Cardano);\n balances.push(AssetValue.from({ chain: Chain.Cardano, fromBaseDecimal: baseDecimal, value: asset.quantity }));\n } else {\n balances.push(AssetValue.from({ asset: `${Chain.Cardano}.${asset.unit}`, value: asset.quantity }));\n }\n }\n\n if (balances.length === 0) {\n return [AssetValue.from({ chain: Chain.Cardano })];\n }\n\n return balances;\n } catch (error) {\n const errorMessage = error instanceof Error ? error.message : String(error);\n console.error(`Cardano balance fetch error: ${errorMessage}`);\n return [AssetValue.from({ chain: Chain.Cardano })];\n }\n}\n\nexport async function getCardanoAddressValidator() {\n const { deserializeAddress } = await import(\"@meshsdk/core\");\n\n return (address: string) => {\n try {\n deserializeAddress(address);\n return true;\n } catch {\n return false;\n }\n };\n}\n\nexport async function getCardanoToolbox(\n toolboxParams?:\n | { signer?: CardanoSigner }\n | { phrase?: string; index?: number; derivationPath?: DerivationPathArray },\n) {\n const validateAddress = await getCardanoAddressValidator();\n const signer = await match(toolboxParams)\n .with({ phrase: P.string }, async ({ phrase }) => {\n const { MeshWallet } = await import(\"@meshsdk/core\");\n const provider = await getProvider();\n\n const wallet = new MeshWallet({\n fetcher: provider,\n key: { type: \"mnemonic\", words: phrase.split(\" \") },\n networkId: 1,\n submitter: provider,\n });\n\n await wallet.init();\n return wallet;\n })\n .with({ signer: P.any }, ({ signer }) => signer)\n .otherwise(() => undefined);\n\n const signerAddress = signer && \"getChangeAddress\" in signer ? await signer.getChangeAddress() : \"\";\n\n function getAddress() {\n return signerAddress || \"\";\n }\n\n function getBalance(addressParam?: string) {\n const address = addressParam || getAddress();\n if (!address) throw new USwapError(\"core_wallet_connection_not_found\");\n return getCardanoBalance(address);\n }\n\n function estimateTransactionFee() {\n return Promise.resolve(AssetValue.from({ chain: Chain.Cardano, value: \"0.01\" }));\n }\n\n async function createTransaction({\n recipient,\n assetValue,\n memo,\n }: {\n recipient: string;\n assetValue: AssetValue;\n memo?: string;\n }) {\n if (!signer || !(\"getChangeAddress\" in signer)) {\n throw new USwapError(\"core_wallet_connection_not_found\");\n }\n const { Transaction } = await import(\"@meshsdk/core\");\n\n const [, policyId] = assetValue.symbol.split(\"-\");\n if (!assetValue.isGasAsset && !policyId) throw new USwapError(\"core_wallet_connection_not_found\");\n\n const tx = new Transaction({ initiator: signer });\n tx.sendAssets({ address: recipient }, [\n { quantity: assetValue.getBaseValue(\"string\"), unit: assetValue.isGasAsset ? \"lovelace\" : assetValue.symbol },\n ]);\n\n if (memo) tx.setMetadata(0, memo);\n\n const unsignedTx = await tx.build();\n return { tx, unsignedTx };\n }\n\n function signTransaction(txParams: string) {\n if (!signer || !(\"getChangeAddress\" in signer)) {\n throw new USwapError(\"core_wallet_connection_not_found\");\n }\n\n return signer.signTx(txParams);\n }\n\n async function transfer({\n recipient,\n assetValue,\n memo,\n }: {\n recipient: string;\n assetValue: AssetValue;\n memo?: string;\n }) {\n if (!signer || !(\"getChangeAddress\" in signer)) {\n throw new USwapError(\"core_wallet_connection_not_found\");\n }\n\n const { unsignedTx } = await createTransaction({ assetValue, memo, recipient });\n const signedTx = await signTransaction(unsignedTx);\n const provider = await getProvider();\n const txHash = await provider.submitTx(signedTx);\n\n return txHash;\n }\n\n return {\n createTransaction,\n estimateTransactionFee,\n getAddress,\n getBalance,\n signTransaction,\n transfer,\n validateAddress,\n };\n}\n",
|
|
6
|
+
"export * from \"./toolbox\";\nexport * from \"./types\";\n"
|
|
7
|
+
],
|
|
8
|
+
"mappings": "ssBAWA,eAAe,CAAW,EAAG,CAC3B,IAAQ,sBAAuB,KAAa,yBACtC,EAAS,0CACf,OAAO,IAAI,EADI,yCACqB,EAKtC,eAAe,CAAiB,CAAC,EAAiB,CAChD,GAAI,CACF,IAAQ,cAAe,KAAa,yBAC9B,EAAW,MAAM,EAAY,EAE7B,EAAS,IAAI,EAAW,CAAE,QAAS,EAAU,IAAK,CAAE,UAAS,KAAM,SAAU,EAAG,UAAW,CAAE,CAAC,EAEpG,MAAM,EAAO,KAAK,EAClB,IAAM,EAAU,MAAM,EAAO,WAAW,EAElC,EAAyB,CAAC,EAEhC,QAAW,KAAS,EAClB,GAAI,EAAM,OAAS,EAAQ,CACzB,IAAQ,eAAgB,iBAAe,QAAM,OAAO,EACpD,EAAS,KAAK,aAAW,KAAK,CAAE,MAAO,QAAM,QAAS,gBAAiB,EAAa,MAAO,EAAM,QAAS,CAAC,CAAC,EAE5G,OAAS,KAAK,aAAW,KAAK,CAAE,MAAO,GAAG,QAAM,WAAW,EAAM,OAAQ,MAAO,EAAM,QAAS,CAAC,CAAC,EAIrG,GAAI,EAAS,SAAW,EACtB,MAAO,CAAC,aAAW,KAAK,CAAE,MAAO,QAAM,OAAQ,CAAC,CAAC,EAGnD,OAAO,EACP,MAAO,EAAO,CACd,IAAM,EAAe,aAAiB,MAAQ,EAAM,QAAU,OAAO,CAAK,EAE1E,OADA,QAAQ,MAAM,gCAAgC,GAAc,EACrD,CAAC,aAAW,KAAK,CAAE,MAAO,QAAM,OAAQ,CAAC,CAAC,GAIrD,eAAsB,CAA0B,EAAG,CACjD,IAAQ,sBAAuB,KAAa,yBAE5C,MAAO,CAAC,IAAoB,CAC1B,GAAI,CAEF,OADA,EAAmB,CAAO,EACnB,GACP,KAAM,CACN,MAAO,KAKb,eAAsB,CAAiB,CACrC,EAGA,CACA,IAAM,EAAkB,MAAM,EAA2B,EACnD,EAAS,MAAM,QAAM,CAAa,EACrC,KAAK,CAAE,OAAQ,IAAE,MAAO,EAAG,OAAS,YAAa,CAChD,IAAQ,cAAe,KAAa,yBAC9B,EAAW,MAAM,EAAY,EAE7B,EAAS,IAAI,EAAW,CAC5B,QAAS,EACT,IAAK,CAAE,KAAM,WAAY,MAAO,EAAO,MAAM,GAAG,CAAE,EAClD,UAAW,EACX,UAAW,CACb,CAAC,EAGD,OADA,MAAM,EAAO,KAAK,EACX,EACR,EACA,KAAK,CAAE,OAAQ,IAAE,GAAI,EAAG,EAAG,YAAa,CAAM,EAC9C,UAAU,IAAG,CAAG,OAAS,EAEtB,EAAgB,GAAU,qBAAsB,EAAS,MAAM,EAAO,iBAAiB,EAAI,GAEjG,SAAS,CAAU,EAAG,CACpB,OAAO,GAAiB,GAG1B,SAAS,CAAU,CAAC,EAAuB,CACzC,IAAM,EAAU,GAAgB,EAAW,EAC3C,GAAI,CAAC,EAAS,MAAM,IAAI,aAAW,kCAAkC,EACrE,OAAO,EAAkB,CAAO,EAGlC,SAAS,CAAsB,EAAG,CAChC,OAAO,QAAQ,QAAQ,aAAW,KAAK,CAAE,MAAO,QAAM,QAAS,MAAO,MAAO,CAAC,CAAC,EAGjF,eAAe,CAAiB,EAC9B,YACA,aACA,QAKC,CACD,GAAI,CAAC,GAAU,EAAE,qBAAsB,GACrC,MAAM,IAAI,aAAW,kCAAkC,EAEzD,IAAQ,eAAgB,KAAa,2BAE5B,GAAY,EAAW,OAAO,MAAM,GAAG,EAChD,GAAI,CAAC,EAAW,YAAc,CAAC,EAAU,MAAM,IAAI,aAAW,kCAAkC,EAEhG,IAAM,EAAK,IAAI,EAAY,CAAE,UAAW,CAAO,CAAC,EAKhD,GAJA,EAAG,WAAW,CAAE,QAAS,CAAU,EAAG,CACpC,CAAE,SAAU,EAAW,aAAa,QAAQ,EAAG,KAAM,EAAW,WAAa,WAAa,EAAW,MAAO,CAC9G,CAAC,EAEG,EAAM,EAAG,YAAY,EAAG,CAAI,EAEhC,IAAM,EAAa,MAAM,EAAG,MAAM,EAClC,MAAO,CAAE,KAAI,YAAW,EAG1B,SAAS,CAAe,CAAC,EAAkB,CACzC,GAAI,CAAC,GAAU,EAAE,qBAAsB,GACrC,MAAM,IAAI,aAAW,kCAAkC,EAGzD,OAAO,EAAO,OAAO,CAAQ,EAG/B,eAAe,CAAQ,EACrB,YACA,aACA,QAKC,CACD,GAAI,CAAC,GAAU,EAAE,qBAAsB,GACrC,MAAM,IAAI,aAAW,kCAAkC,EAGzD,IAAQ,cAAe,MAAM,EAAkB,CAAE,aAAY,OAAM,WAAU,CAAC,EACxE,EAAW,MAAM,EAAgB,CAAU,EAIjD,OAFe,MADE,MAAM,EAAY,GACL,SAAS,CAAQ,EAKjD,MAAO,CACL,oBACA,yBACA,aACA,aACA,kBACA,WACA,iBACF,MAtKF,EACA,EAYM,EAAS,wBAbf,6BACA,oICLA",
|
|
9
|
+
"debugId": "406C39EAC3B4A78564756E2164756E21",
|
|
10
|
+
"names": []
|
|
11
|
+
}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
var k=Object.create;var{getPrototypeOf:v,defineProperty:_,getOwnPropertyNames:C}=Object;var S=Object.prototype.hasOwnProperty;var $=(y,R,f)=>{f=y!=null?k(v(y)):{};let G=R||!y||!y.__esModule?_(f,"default",{value:y,enumerable:!0}):f;for(let H of C(y))if(!S.call(G,H))_(G,H,{get:()=>y[H],enumerable:!0});return G};var E=(y,R)=>{for(var f in R)_(y,f,{get:R[f],enumerable:!0,configurable:!0,set:(G)=>R[f]=()=>G})};var B=(y,R)=>()=>(y&&(R=y(y=0)),R);var z=((y)=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(y,{get:(R,f)=>(typeof require<"u"?require:R)[f]}):y)(function(y){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+y+'" is not supported')});import{AssetValue as K,Chain as X,getChainConfig as p,USwapError as F}from"@tcswap/helpers";import{match as w,P as O}from"ts-pattern";async function I(){let{BlockfrostProvider:y}=await import("@meshsdk/core"),R="mainnet3YT7XK6NidLPlkHxxyBB5V0WzXUOTIJS";return new y("mainnet3YT7XK6NidLPlkHxxyBB5V0WzXUOTIJS")}async function T(y){try{let{MeshWallet:R}=await import("@meshsdk/core"),f=await I(),G=new R({fetcher:f,key:{address:y,type:"address"},networkId:1});await G.init();let H=await G.getBalance(),L=[];for(let N of H)if(N.unit===P){let{baseDecimal:W}=p(X.Cardano);L.push(K.from({chain:X.Cardano,fromBaseDecimal:W,value:N.quantity}))}else L.push(K.from({asset:`${X.Cardano}.${N.unit}`,value:N.quantity}));if(L.length===0)return[K.from({chain:X.Cardano})];return L}catch(R){let f=R instanceof Error?R.message:String(R);return console.error(`Cardano balance fetch error: ${f}`),[K.from({chain:X.Cardano})]}}async function b(){let{deserializeAddress:y}=await import("@meshsdk/core");return(R)=>{try{return y(R),!0}catch{return!1}}}async function A(y){let R=await b(),f=await w(y).with({phrase:O.string},async({phrase:q})=>{let{MeshWallet:j}=await import("@meshsdk/core"),J=await I(),Q=new j({fetcher:J,key:{type:"mnemonic",words:q.split(" ")},networkId:1,submitter:J});return await Q.init(),Q}).with({signer:O.any},({signer:q})=>q).otherwise(()=>{return}),G=f&&"getChangeAddress"in f?await f.getChangeAddress():"";function H(){return G||""}function L(q){let j=q||H();if(!j)throw new F("core_wallet_connection_not_found");return T(j)}function N(){return Promise.resolve(K.from({chain:X.Cardano,value:"0.01"}))}async function W({recipient:q,assetValue:j,memo:J}){if(!f||!("getChangeAddress"in f))throw new F("core_wallet_connection_not_found");let{Transaction:Q}=await import("@meshsdk/core"),[,Y]=j.symbol.split("-");if(!j.isGasAsset&&!Y)throw new F("core_wallet_connection_not_found");let Z=new Q({initiator:f});if(Z.sendAssets({address:q},[{quantity:j.getBaseValue("string"),unit:j.isGasAsset?"lovelace":j.symbol}]),J)Z.setMetadata(0,J);let x=await Z.build();return{tx:Z,unsignedTx:x}}function M(q){if(!f||!("getChangeAddress"in f))throw new F("core_wallet_connection_not_found");return f.signTx(q)}async function U({recipient:q,assetValue:j,memo:J}){if(!f||!("getChangeAddress"in f))throw new F("core_wallet_connection_not_found");let{unsignedTx:Q}=await W({assetValue:j,memo:J,recipient:q}),Y=await M(Q);return await(await I()).submitTx(Y)}return{createTransaction:W,estimateTransactionFee:N,getAddress:H,getBalance:L,signTransaction:M,transfer:U,validateAddress:R}}var P="lovelace";var D=()=>{};var u={};E(u,{getCardanoToolbox:()=>A,getCardanoAddressValidator:()=>b});var V=B(()=>{D()});V();export{A as getCardanoToolbox,b as getCardanoAddressValidator};
|
|
2
|
+
|
|
3
|
+
//# debugId=23BEC94FF2EF4EA464756E2164756E21
|
|
4
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/cardano/toolbox.ts", "../src/cardano/index.ts"],
|
|
4
|
+
"sourcesContent": [
|
|
5
|
+
"/**\n * Modifications © 2025 Horizontal Systems.\n */\n\nimport { AssetValue, Chain, type DerivationPathArray, getChainConfig, USwapError } from \"@tcswap/helpers\";\nimport { match, P } from \"ts-pattern\";\nimport type { CardanoProvider } from \"./index\";\n\ntype CardanoSigner = CardanoProvider | { address: string };\n\n// TODO: this should done on BE side\nasync function getProvider() {\n const { BlockfrostProvider } = await import(\"@meshsdk/core\");\n const apiKey = \"mainnet3YT7XK6NidLPlkHxxyBB5V0WzXUOTIJS\"; // TODO: TEST API KEY\n return new BlockfrostProvider(apiKey);\n}\n\nconst ADA_ID = \"lovelace\";\n\nasync function getCardanoBalance(address: string) {\n try {\n const { MeshWallet } = await import(\"@meshsdk/core\");\n const provider = await getProvider();\n\n const wallet = new MeshWallet({ fetcher: provider, key: { address, type: \"address\" }, networkId: 1 });\n\n await wallet.init();\n const balance = await wallet.getBalance();\n\n const balances: AssetValue[] = [];\n\n for (const asset of balance) {\n if (asset.unit === ADA_ID) {\n const { baseDecimal } = getChainConfig(Chain.Cardano);\n balances.push(AssetValue.from({ chain: Chain.Cardano, fromBaseDecimal: baseDecimal, value: asset.quantity }));\n } else {\n balances.push(AssetValue.from({ asset: `${Chain.Cardano}.${asset.unit}`, value: asset.quantity }));\n }\n }\n\n if (balances.length === 0) {\n return [AssetValue.from({ chain: Chain.Cardano })];\n }\n\n return balances;\n } catch (error) {\n const errorMessage = error instanceof Error ? error.message : String(error);\n console.error(`Cardano balance fetch error: ${errorMessage}`);\n return [AssetValue.from({ chain: Chain.Cardano })];\n }\n}\n\nexport async function getCardanoAddressValidator() {\n const { deserializeAddress } = await import(\"@meshsdk/core\");\n\n return (address: string) => {\n try {\n deserializeAddress(address);\n return true;\n } catch {\n return false;\n }\n };\n}\n\nexport async function getCardanoToolbox(\n toolboxParams?:\n | { signer?: CardanoSigner }\n | { phrase?: string; index?: number; derivationPath?: DerivationPathArray },\n) {\n const validateAddress = await getCardanoAddressValidator();\n const signer = await match(toolboxParams)\n .with({ phrase: P.string }, async ({ phrase }) => {\n const { MeshWallet } = await import(\"@meshsdk/core\");\n const provider = await getProvider();\n\n const wallet = new MeshWallet({\n fetcher: provider,\n key: { type: \"mnemonic\", words: phrase.split(\" \") },\n networkId: 1,\n submitter: provider,\n });\n\n await wallet.init();\n return wallet;\n })\n .with({ signer: P.any }, ({ signer }) => signer)\n .otherwise(() => undefined);\n\n const signerAddress = signer && \"getChangeAddress\" in signer ? await signer.getChangeAddress() : \"\";\n\n function getAddress() {\n return signerAddress || \"\";\n }\n\n function getBalance(addressParam?: string) {\n const address = addressParam || getAddress();\n if (!address) throw new USwapError(\"core_wallet_connection_not_found\");\n return getCardanoBalance(address);\n }\n\n function estimateTransactionFee() {\n return Promise.resolve(AssetValue.from({ chain: Chain.Cardano, value: \"0.01\" }));\n }\n\n async function createTransaction({\n recipient,\n assetValue,\n memo,\n }: {\n recipient: string;\n assetValue: AssetValue;\n memo?: string;\n }) {\n if (!signer || !(\"getChangeAddress\" in signer)) {\n throw new USwapError(\"core_wallet_connection_not_found\");\n }\n const { Transaction } = await import(\"@meshsdk/core\");\n\n const [, policyId] = assetValue.symbol.split(\"-\");\n if (!assetValue.isGasAsset && !policyId) throw new USwapError(\"core_wallet_connection_not_found\");\n\n const tx = new Transaction({ initiator: signer });\n tx.sendAssets({ address: recipient }, [\n { quantity: assetValue.getBaseValue(\"string\"), unit: assetValue.isGasAsset ? \"lovelace\" : assetValue.symbol },\n ]);\n\n if (memo) tx.setMetadata(0, memo);\n\n const unsignedTx = await tx.build();\n return { tx, unsignedTx };\n }\n\n function signTransaction(txParams: string) {\n if (!signer || !(\"getChangeAddress\" in signer)) {\n throw new USwapError(\"core_wallet_connection_not_found\");\n }\n\n return signer.signTx(txParams);\n }\n\n async function transfer({\n recipient,\n assetValue,\n memo,\n }: {\n recipient: string;\n assetValue: AssetValue;\n memo?: string;\n }) {\n if (!signer || !(\"getChangeAddress\" in signer)) {\n throw new USwapError(\"core_wallet_connection_not_found\");\n }\n\n const { unsignedTx } = await createTransaction({ assetValue, memo, recipient });\n const signedTx = await signTransaction(unsignedTx);\n const provider = await getProvider();\n const txHash = await provider.submitTx(signedTx);\n\n return txHash;\n }\n\n return {\n createTransaction,\n estimateTransactionFee,\n getAddress,\n getBalance,\n signTransaction,\n transfer,\n validateAddress,\n };\n}\n",
|
|
6
|
+
"export * from \"./toolbox\";\nexport * from \"./types\";\n"
|
|
7
|
+
],
|
|
8
|
+
"mappings": "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",
|
|
9
|
+
"debugId": "23BEC94FF2EF4EA464756E2164756E21",
|
|
10
|
+
"names": []
|
|
11
|
+
}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
var e6=Object.create;var{getPrototypeOf:z4,defineProperty:r,getOwnPropertyNames:F6,getOwnPropertyDescriptor:H4}=Object,f6=Object.prototype.hasOwnProperty;var A=(Y,Z,X)=>{X=Y!=null?e6(z4(Y)):{};let z=Z||!Y||!Y.__esModule?r(X,"default",{value:Y,enumerable:!0}):X;for(let L of F6(Y))if(!f6.call(z,L))r(z,L,{get:()=>Y[L],enumerable:!0});return z},M6=new WeakMap,L4=(Y)=>{var Z=M6.get(Y),X;if(Z)return Z;if(Z=r({},"__esModule",{value:!0}),Y&&typeof Y==="object"||typeof Y==="function")F6(Y).map((z)=>!f6.call(Z,z)&&r(Z,z,{get:()=>Y[z],enumerable:!(X=H4(Y,z))||X.enumerable}));return M6.set(Y,Z),Z};var y6=(Y,Z)=>{for(var X in Z)r(Y,X,{get:Z[X],enumerable:!0,configurable:!0,set:(z)=>Z[X]=()=>z})};var F=(Y,Z)=>()=>(Y&&(Z=Y(Y=0)),Z);function a(Y){return C.base64.encode(Uint8Array.from(C.bech32.fromWords(C.bech32.decode(Y).words)))}function s(Y,Z="thor"){return C.bech32.encode(Z,C.bech32.toWords(C.base64.decode(Y)))}function Z4(Y){return Q6.fromByteArray(Y)}function Q4(Y){if(!Y.match(/^[a-zA-Z0-9+/]*={0,2}$/))throw new D6.USwapError("toolbox_cosmos_invalid_params",{error:"Invalid base64 string format"});return Q6.toByteArray(Y)}var C,D6,Q6;var q6=F(()=>{C=require("@scure/base"),D6=require("@tcswap/helpers"),Q6=require("base64-js")});function S(Y){switch(Y){case B.Chain.Maya:return{amount:[],gas:"10000000000"};case B.Chain.THORChain:return{amount:[],gas:"500000000"};case B.Chain.Kujira:return C6;case B.Chain.Noble:return w6;default:return P6}}async function P(Y){let Z=await import("@cosmjs/stargate"),X=Z.StargateClient??Z.default?.StargateClient,z=typeof window<"u"?{}:{referer:"https://sdk.uswap.dev",referrer:"https://sdk.uswap.dev"};return X.connect({headers:z,url:Y})}async function n(Y,Z,X={}){let z=await import("@cosmjs/stargate"),L=z.SigningStargateClient??z.default?.SigningStargateClient,H=z.GasPrice??z.default?.GasPrice,Q=typeof X==="string"?X:"0.0003uatom",J=typeof X==="string"?{}:X;return L.connectWithSigner(Y,Z,{gasPrice:H.fromString(Q),...J})}async function B6(Y,Z){let X=await import("@cosmjs/stargate");return(X.SigningStargateClient??X.default?.SigningStargateClient).offline(Y,Z)}async function G6({sender:Y,recipient:Z,assetValue:X,memo:z="",feeRate:L,sequence:H,accountNumber:Q}){let{chain:J,chainId:_}=X,E=await B.getRPCUrl(J),k=await(await P(E)).getAccount(Y);if(!k)throw new B.USwapError("toolbox_cosmos_account_not_found",{sender:Y});let I=B.AssetValue.from({chain:J}),x=D(I.symbol),N=S(J),v=x&&L?{amount:[{amount:L.toString(),denom:x}],gas:N.gas}:N,K={amount:[{amount:X.getBaseValue("string"),denom:D(X.symbol)}],fromAddress:Y,toAddress:Z};return{accountNumber:Q??k.accountNumber,chainId:_,fee:v,memo:z,msgs:[{typeUrl:X4(J),value:K}],sequence:H??k.sequence}}var B,W6="FACTORY/KUJIRA1QK00H5ATUTPSV900X202PXX42NPJR9THG58DNQPA72F2P7M2LUASE444A7/UUSK",S6="FACTORY/KUJIRA1YGFXN0ER40KLCNCK8THLTUPRDXLCK6WVNPKF2K/UYUM",P6,C6,w6,D=(Y,Z=!1)=>{if(Z)return Y.toLowerCase();switch(Y){case"uUSK":case"USK":return W6;case"uYUM":case"YUM":return S6;case"uKUJI":case"KUJI":return"ukuji";case"ATOM":case"uATOM":return"uatom";case"uUSDC":case"USDC":return"uusdc";default:return Y}},d=({symbol:Y,chain:Z})=>{if(Z===B.Chain.Maya)return(Y.toUpperCase()!=="CACAO"?Y:`${B.Chain.Maya}.${Y}`).toUpperCase();if(Z===B.Chain.THORChain)return(["RUNE","TCY","RUJI"].includes(Y.toUpperCase())?`${B.Chain.THORChain}.${Y}`:Y).toUpperCase();return D(Y,!1)},X4=(Y)=>{switch(Y){case B.Chain.Maya:case B.Chain.THORChain:return"/types.MsgSend";case B.Chain.Cosmos:case B.Chain.Kujira:case B.Chain.Noble:return"/cosmos.bank.v1beta1.MsgSend";default:throw new B.USwapError("toolbox_cosmos_not_supported",{chain:Y})}},Y4,T6=(Y,Z)=>{let X=Y4[Y.toLowerCase()];if(!X)return B.AssetValue.from({asset:Y,fromBaseDecimal:8,value:Z});let{chain:z,asset:L,decimals:H}=X,Q=z?{chain:z}:{asset:L};return B.AssetValue.from({...Q,fromBaseDecimal:H,value:Z})};var e=F(()=>{B=require("@tcswap/helpers"),P6={amount:[{amount:"500",denom:"uatom"}],gas:"200000"},C6={amount:[{amount:"1000",denom:"ukuji"}],gas:"200000"},w6={amount:[{amount:"1000",denom:"uusdc"}],gas:"200000"};Y4={atom:{chain:B.Chain.Cosmos,decimals:B.getChainConfig(B.Chain.Cosmos).baseDecimal},cacao:{chain:B.Chain.Maya,decimals:10},kuji:{chain:B.Chain.Kujira,decimals:B.getChainConfig(B.Chain.Kujira).baseDecimal},maya:{asset:`${B.Chain.Maya}.${B.Chain.Maya}`,decimals:4},rune:{chain:B.Chain.THORChain,decimals:B.getChainConfig(B.Chain.THORChain).baseDecimal},tcy:{asset:"THOR.TCY",decimals:B.getChainConfig(B.Chain.THORChain).baseDecimal},uatom:{chain:B.Chain.Cosmos,decimals:B.getChainConfig(B.Chain.Cosmos).baseDecimal},ukuji:{chain:B.Chain.Kujira,decimals:B.getChainConfig(B.Chain.Kujira).baseDecimal},usdc:{chain:B.Chain.Noble,decimals:B.getChainConfig(B.Chain.Noble).baseDecimal},uusdc:{chain:B.Chain.Noble,decimals:B.getChainConfig(B.Chain.Noble).baseDecimal},"x/kuji":{asset:"THOR.KUJI",decimals:B.getChainConfig(B.Chain.THORChain).baseDecimal},[W6.toLowerCase()]:{asset:`${B.Chain.Kujira}.USK`,decimals:B.getChainConfig(B.Chain.Kujira).baseDecimal}}});var $6={};y6($6,{$root:()=>q});var R,T,f,W,q;var u6=F(()=>{R=A(require("protobufjs/minimal.js")),T=R.default.Reader,f=R.default.Writer,W=R.default.util,q=R.default.roots.default||(R.default.roots.default={});q.common=(()=>{let Y={};return Y.Asset=(()=>{function Z(X){if(X){for(let z=Object.keys(X),L=0;L<z.length;++L)if(X[z[L]]!=null)this[z[L]]=X[z[L]]}}return Z.prototype.chain="",Z.prototype.symbol="",Z.prototype.ticker="",Z.prototype.synth=!1,Z.create=function(z){return new Z(z)},Z.encode=function(z,L){if(!L)L=f.create();if(z.chain!=null&&Object.hasOwnProperty.call(z,"chain"))L.uint32(10).string(z.chain);if(z.symbol!=null&&Object.hasOwnProperty.call(z,"symbol"))L.uint32(18).string(z.symbol);if(z.ticker!=null&&Object.hasOwnProperty.call(z,"ticker"))L.uint32(26).string(z.ticker);if(z.synth!=null&&Object.hasOwnProperty.call(z,"synth"))L.uint32(32).bool(z.synth);return L},Z.encodeDelimited=function(z,L){return this.encode(z,L).ldelim()},Z.decode=function(z,L){if(!(z instanceof T))z=T.create(z);let H=L===void 0?z.len:z.pos+L,Q=new q.common.Asset;while(z.pos<H){let J=z.uint32();switch(J>>>3){case 1:Q.chain=z.string();break;case 2:Q.symbol=z.string();break;case 3:Q.ticker=z.string();break;case 4:Q.synth=z.bool();break;default:z.skipType(J&7);break}}return Q},Z.decodeDelimited=function(z){if(!(z instanceof T))z=new T(z);return this.decode(z,z.uint32())},Z.verify=function(z){if(typeof z!=="object"||z===null)return"object expected";if(z.chain!=null&&z.hasOwnProperty("chain")){if(!W.isString(z.chain))return"chain: string expected"}if(z.symbol!=null&&z.hasOwnProperty("symbol")){if(!W.isString(z.symbol))return"symbol: string expected"}if(z.ticker!=null&&z.hasOwnProperty("ticker")){if(!W.isString(z.ticker))return"ticker: string expected"}if(z.synth!=null&&z.hasOwnProperty("synth")){if(typeof z.synth!=="boolean")return"synth: boolean expected"}return null},Z.fromObject=function(z){if(z instanceof q.common.Asset)return z;let L=new q.common.Asset;if(z.chain!=null)L.chain=String(z.chain);if(z.symbol!=null)L.symbol=String(z.symbol);if(z.ticker!=null)L.ticker=String(z.ticker);if(z.synth!=null)L.synth=Boolean(z.synth);return L},Z.toObject=function(z,L){if(!L)L={};let H={};if(L.defaults)H.chain="",H.symbol="",H.ticker="",H.synth=!1;if(z.chain!=null&&z.hasOwnProperty("chain"))H.chain=z.chain;if(z.symbol!=null&&z.hasOwnProperty("symbol"))H.symbol=z.symbol;if(z.ticker!=null&&z.hasOwnProperty("ticker"))H.ticker=z.ticker;if(z.synth!=null&&z.hasOwnProperty("synth"))H.synth=z.synth;return H},Z.prototype.toJSON=function(){return this.constructor.toObject(this,R.default.util.toJSONOptions)},Z})(),Y.Coin=(()=>{function Z(X){if(X){for(let z=Object.keys(X),L=0;L<z.length;++L)if(X[z[L]]!=null)this[z[L]]=X[z[L]]}}return Z.prototype.asset=null,Z.prototype.amount="",Z.prototype.decimals=W.Long?W.Long.fromBits(0,0,!1):0,Z.create=function(z){return new Z(z)},Z.encode=function(z,L){if(!L)L=f.create();if(z.asset!=null&&Object.hasOwnProperty.call(z,"asset"))q.common.Asset.encode(z.asset,L.uint32(10).fork()).ldelim();if(z.amount!=null&&Object.hasOwnProperty.call(z,"amount"))L.uint32(18).string(z.amount);if(z.decimals!=null&&Object.hasOwnProperty.call(z,"decimals"))L.uint32(24).int64(z.decimals);return L},Z.encodeDelimited=function(z,L){return this.encode(z,L).ldelim()},Z.decode=function(z,L){if(!(z instanceof T))z=T.create(z);let H=L===void 0?z.len:z.pos+L,Q=new q.common.Coin;while(z.pos<H){let J=z.uint32();switch(J>>>3){case 1:Q.asset=q.common.Asset.decode(z,z.uint32());break;case 2:Q.amount=z.string();break;case 3:Q.decimals=z.int64();break;default:z.skipType(J&7);break}}return Q},Z.decodeDelimited=function(z){if(!(z instanceof T))z=new T(z);return this.decode(z,z.uint32())},Z.verify=function(z){if(typeof z!=="object"||z===null)return"object expected";if(z.asset!=null&&z.hasOwnProperty("asset")){let L=q.common.Asset.verify(z.asset);if(L)return"asset."+L}if(z.amount!=null&&z.hasOwnProperty("amount")){if(!W.isString(z.amount))return"amount: string expected"}if(z.decimals!=null&&z.hasOwnProperty("decimals")){if(!W.isInteger(z.decimals)&&!(z.decimals&&W.isInteger(z.decimals.low)&&W.isInteger(z.decimals.high)))return"decimals: integer|Long expected"}return null},Z.fromObject=function(z){if(z instanceof q.common.Coin)return z;let L=new q.common.Coin;if(z.asset!=null){if(typeof z.asset!=="object")throw TypeError(".common.Coin.asset: object expected");L.asset=q.common.Asset.fromObject(z.asset)}if(z.amount!=null)L.amount=String(z.amount);if(z.decimals!=null){if(W.Long)(L.decimals=W.Long.fromValue(z.decimals)).unsigned=!1;else if(typeof z.decimals==="string")L.decimals=Number.parseInt(z.decimals,10);else if(typeof z.decimals==="number")L.decimals=z.decimals;else if(typeof z.decimals==="object")L.decimals=new W.LongBits(z.decimals.low>>>0,z.decimals.high>>>0).toNumber()}return L},Z.toObject=function(z,L){if(!L)L={};let H={};if(L.defaults)if(H.asset=null,H.amount="",W.Long){let Q=new W.Long(0,0,!1);H.decimals=L.longs===String?Q.toString():L.longs===Number?Q.toNumber():Q}else H.decimals=L.longs===String?"0":0;if(z.asset!=null&&z.hasOwnProperty("asset"))H.asset=q.common.Asset.toObject(z.asset,L);if(z.amount!=null&&z.hasOwnProperty("amount"))H.amount=z.amount;if(z.decimals!=null&&z.hasOwnProperty("decimals"))if(typeof z.decimals==="number")H.decimals=L.longs===String?String(z.decimals):z.decimals;else H.decimals=L.longs===String?W.Long.prototype.toString.call(z.decimals):L.longs===Number?new W.LongBits(z.decimals.low>>>0,z.decimals.high>>>0).toNumber():z.decimals;return H},Z.prototype.toJSON=function(){return this.constructor.toObject(this,R.default.util.toJSONOptions)},Z})(),Y.PubKeySet=(()=>{function Z(X){if(X){for(let z=Object.keys(X),L=0;L<z.length;++L)if(X[z[L]]!=null)this[z[L]]=X[z[L]]}}return Z.prototype.secp256k1="",Z.prototype.ed25519="",Z.create=function(z){return new Z(z)},Z.encode=function(z,L){if(!L)L=f.create();if(z.secp256k1!=null&&Object.hasOwnProperty.call(z,"secp256k1"))L.uint32(10).string(z.secp256k1);if(z.ed25519!=null&&Object.hasOwnProperty.call(z,"ed25519"))L.uint32(18).string(z.ed25519);return L},Z.encodeDelimited=function(z,L){return this.encode(z,L).ldelim()},Z.decode=function(z,L){if(!(z instanceof T))z=T.create(z);let H=L===void 0?z.len:z.pos+L,Q=new q.common.PubKeySet;while(z.pos<H){let J=z.uint32();switch(J>>>3){case 1:Q.secp256k1=z.string();break;case 2:Q.ed25519=z.string();break;default:z.skipType(J&7);break}}return Q},Z.decodeDelimited=function(z){if(!(z instanceof T))z=new T(z);return this.decode(z,z.uint32())},Z.verify=function(z){if(typeof z!=="object"||z===null)return"object expected";if(z.secp256k1!=null&&z.hasOwnProperty("secp256k1")){if(!W.isString(z.secp256k1))return"secp256k1: string expected"}if(z.ed25519!=null&&z.hasOwnProperty("ed25519")){if(!W.isString(z.ed25519))return"ed25519: string expected"}return null},Z.fromObject=function(z){if(z instanceof q.common.PubKeySet)return z;let L=new q.common.PubKeySet;if(z.secp256k1!=null)L.secp256k1=String(z.secp256k1);if(z.ed25519!=null)L.ed25519=String(z.ed25519);return L},Z.toObject=function(z,L){if(!L)L={};let H={};if(L.defaults)H.secp256k1="",H.ed25519="";if(z.secp256k1!=null&&z.hasOwnProperty("secp256k1"))H.secp256k1=z.secp256k1;if(z.ed25519!=null&&z.hasOwnProperty("ed25519"))H.ed25519=z.ed25519;return H},Z.prototype.toJSON=function(){return this.constructor.toObject(this,R.default.util.toJSONOptions)},Z})(),Y.Tx=(()=>{function Z(X){if(this.coins=[],this.gas=[],X){for(let z=Object.keys(X),L=0;L<z.length;++L)if(X[z[L]]!=null)this[z[L]]=X[z[L]]}}return Z.prototype.id="",Z.prototype.chain="",Z.prototype.fromAddress="",Z.prototype.toAddress="",Z.prototype.coins=W.emptyArray,Z.prototype.gas=W.emptyArray,Z.prototype.memo="",Z.create=function(z){return new Z(z)},Z.encode=function(z,L){if(!L)L=f.create();if(z.id!=null&&Object.hasOwnProperty.call(z,"id"))L.uint32(10).string(z.id);if(z.chain!=null&&Object.hasOwnProperty.call(z,"chain"))L.uint32(18).string(z.chain);if(z.fromAddress!=null&&Object.hasOwnProperty.call(z,"fromAddress"))L.uint32(26).string(z.fromAddress);if(z.toAddress!=null&&Object.hasOwnProperty.call(z,"toAddress"))L.uint32(34).string(z.toAddress);if(z.coins?.length)for(let H=0;H<z.coins.length;++H)q.common.Coin.encode(z.coins[H],L.uint32(42).fork()).ldelim();if(z.gas?.length)for(let H=0;H<z.gas.length;++H)q.common.Coin.encode(z.gas[H],L.uint32(50).fork()).ldelim();if(z.memo!=null&&Object.hasOwnProperty.call(z,"memo"))L.uint32(58).string(z.memo);return L},Z.encodeDelimited=function(z,L){return this.encode(z,L).ldelim()},Z.decode=function(z,L){if(!(z instanceof T))z=T.create(z);let H=L===void 0?z.len:z.pos+L,Q=new q.common.Tx;while(z.pos<H){let J=z.uint32();switch(J>>>3){case 1:Q.id=z.string();break;case 2:Q.chain=z.string();break;case 3:Q.fromAddress=z.string();break;case 4:Q.toAddress=z.string();break;case 5:if(!Q.coins?.length)Q.coins=[];Q.coins.push(q.common.Coin.decode(z,z.uint32()));break;case 6:if(!Q.gas?.length)Q.gas=[];Q.gas.push(q.common.Coin.decode(z,z.uint32()));break;case 7:Q.memo=z.string();break;default:z.skipType(J&7);break}}return Q},Z.decodeDelimited=function(z){if(!(z instanceof T))z=new T(z);return this.decode(z,z.uint32())},Z.verify=function(z){if(typeof z!=="object"||z===null)return"object expected";if(z.id!=null&&z.hasOwnProperty("id")){if(!W.isString(z.id))return"id: string expected"}if(z.chain!=null&&z.hasOwnProperty("chain")){if(!W.isString(z.chain))return"chain: string expected"}if(z.fromAddress!=null&&z.hasOwnProperty("fromAddress")){if(!W.isString(z.fromAddress))return"fromAddress: string expected"}if(z.toAddress!=null&&z.hasOwnProperty("toAddress")){if(!W.isString(z.toAddress))return"toAddress: string expected"}if(z.coins!=null&&z.hasOwnProperty("coins")){if(!Array.isArray(z.coins))return"coins: array expected";for(let L=0;L<z.coins.length;++L){let H=q.common.Coin.verify(z.coins[L]);if(H)return"coins."+H}}if(z.gas!=null&&z.hasOwnProperty("gas")){if(!Array.isArray(z.gas))return"gas: array expected";for(let L=0;L<z.gas.length;++L){let H=q.common.Coin.verify(z.gas[L]);if(H)return"gas."+H}}if(z.memo!=null&&z.hasOwnProperty("memo")){if(!W.isString(z.memo))return"memo: string expected"}return null},Z.fromObject=function(z){if(z instanceof q.common.Tx)return z;let L=new q.common.Tx;if(z.id!=null)L.id=String(z.id);if(z.chain!=null)L.chain=String(z.chain);if(z.fromAddress!=null)L.fromAddress=String(z.fromAddress);if(z.toAddress!=null)L.toAddress=String(z.toAddress);if(z.coins){if(!Array.isArray(z.coins))throw TypeError(".common.Tx.coins: array expected");L.coins=[];for(let H=0;H<z.coins.length;++H){if(typeof z.coins[H]!=="object")throw TypeError(".common.Tx.coins: object expected");L.coins[H]=q.common.Coin.fromObject(z.coins[H])}}if(z.gas){if(!Array.isArray(z.gas))throw TypeError(".common.Tx.gas: array expected");L.gas=[];for(let H=0;H<z.gas.length;++H){if(typeof z.gas[H]!=="object")throw TypeError(".common.Tx.gas: object expected");L.gas[H]=q.common.Coin.fromObject(z.gas[H])}}if(z.memo!=null)L.memo=String(z.memo);return L},Z.toObject=function(z,L){if(!L)L={};let H={};if(L.arrays||L.defaults)H.coins=[],H.gas=[];if(L.defaults)H.id="",H.chain="",H.fromAddress="",H.toAddress="",H.memo="";if(z.id!=null&&z.hasOwnProperty("id"))H.id=z.id;if(z.chain!=null&&z.hasOwnProperty("chain"))H.chain=z.chain;if(z.fromAddress!=null&&z.hasOwnProperty("fromAddress"))H.fromAddress=z.fromAddress;if(z.toAddress!=null&&z.hasOwnProperty("toAddress"))H.toAddress=z.toAddress;if(z.coins?.length){H.coins=[];for(let Q=0;Q<z.coins.length;++Q)H.coins[Q]=q.common.Coin.toObject(z.coins[Q],L)}if(z.gas?.length){H.gas=[];for(let Q=0;Q<z.gas.length;++Q)H.gas[Q]=q.common.Coin.toObject(z.gas[Q],L)}if(z.memo!=null&&z.hasOwnProperty("memo"))H.memo=z.memo;return H},Z.prototype.toJSON=function(){return this.constructor.toObject(this,R.default.util.toJSONOptions)},Z})(),Y.Fee=(()=>{function Z(X){if(this.coins=[],X){for(let z=Object.keys(X),L=0;L<z.length;++L)if(X[z[L]]!=null)this[z[L]]=X[z[L]]}}return Z.prototype.coins=W.emptyArray,Z.prototype.poolDeduct="",Z.create=function(z){return new Z(z)},Z.encode=function(z,L){if(!L)L=f.create();if(z.coins?.length)for(let H=0;H<z.coins.length;++H)q.common.Coin.encode(z.coins[H],L.uint32(10).fork()).ldelim();if(z.poolDeduct!=null&&Object.hasOwnProperty.call(z,"poolDeduct"))L.uint32(18).string(z.poolDeduct);return L},Z.encodeDelimited=function(z,L){return this.encode(z,L).ldelim()},Z.decode=function(z,L){if(!(z instanceof T))z=T.create(z);let H=L===void 0?z.len:z.pos+L,Q=new q.common.Fee;while(z.pos<H){let J=z.uint32();switch(J>>>3){case 1:if(!Q.coins?.length)Q.coins=[];Q.coins.push(q.common.Coin.decode(z,z.uint32()));break;case 2:Q.poolDeduct=z.string();break;default:z.skipType(J&7);break}}return Q},Z.decodeDelimited=function(z){if(!(z instanceof T))z=new T(z);return this.decode(z,z.uint32())},Z.verify=function(z){if(typeof z!=="object"||z===null)return"object expected";if(z.coins!=null&&z.hasOwnProperty("coins")){if(!Array.isArray(z.coins))return"coins: array expected";for(let L=0;L<z.coins.length;++L){let H=q.common.Coin.verify(z.coins[L]);if(H)return"coins."+H}}if(z.poolDeduct!=null&&z.hasOwnProperty("poolDeduct")){if(!W.isString(z.poolDeduct))return"poolDeduct: string expected"}return null},Z.fromObject=function(z){if(z instanceof q.common.Fee)return z;let L=new q.common.Fee;if(z.coins){if(!Array.isArray(z.coins))throw TypeError(".common.Fee.coins: array expected");L.coins=[];for(let H=0;H<z.coins.length;++H){if(typeof z.coins[H]!=="object")throw TypeError(".common.Fee.coins: object expected");L.coins[H]=q.common.Coin.fromObject(z.coins[H])}}if(z.poolDeduct!=null)L.poolDeduct=String(z.poolDeduct);return L},Z.toObject=function(z,L){if(!L)L={};let H={};if(L.arrays||L.defaults)H.coins=[];if(L.defaults)H.poolDeduct="";if(z.coins?.length){H.coins=[];for(let Q=0;Q<z.coins.length;++Q)H.coins[Q]=q.common.Coin.toObject(z.coins[Q],L)}if(z.poolDeduct!=null&&z.hasOwnProperty("poolDeduct"))H.poolDeduct=z.poolDeduct;return H},Z.prototype.toJSON=function(){return this.constructor.toObject(this,R.default.util.toJSONOptions)},Z})(),Y.ProtoUint=(()=>{function Z(X){if(X){for(let z=Object.keys(X),L=0;L<z.length;++L)if(X[z[L]]!=null)this[z[L]]=X[z[L]]}}return Z.prototype.value="",Z.create=function(z){return new Z(z)},Z.encode=function(z,L){if(!L)L=f.create();if(z.value!=null&&Object.hasOwnProperty.call(z,"value"))L.uint32(10).string(z.value);return L},Z.encodeDelimited=function(z,L){return this.encode(z,L).ldelim()},Z.decode=function(z,L){if(!(z instanceof T))z=T.create(z);let H=L===void 0?z.len:z.pos+L,Q=new q.common.ProtoUint;while(z.pos<H){let J=z.uint32();switch(J>>>3){case 1:Q.value=z.string();break;default:z.skipType(J&7);break}}return Q},Z.decodeDelimited=function(z){if(!(z instanceof T))z=new T(z);return this.decode(z,z.uint32())},Z.verify=function(z){if(typeof z!=="object"||z===null)return"object expected";if(z.value!=null&&z.hasOwnProperty("value")){if(!W.isString(z.value))return"value: string expected"}return null},Z.fromObject=function(z){if(z instanceof q.common.ProtoUint)return z;let L=new q.common.ProtoUint;if(z.value!=null)L.value=String(z.value);return L},Z.toObject=function(z,L){if(!L)L={};let H={};if(L.defaults)H.value="";if(z.value!=null&&z.hasOwnProperty("value"))H.value=z.value;return H},Z.prototype.toJSON=function(){return this.constructor.toObject(this,R.default.util.toJSONOptions)},Z})(),Y})();q.types=(()=>{let Y={};return Y.MsgDeposit=(()=>{function Z(X){if(this.coins=[],X){for(let z=Object.keys(X),L=0;L<z.length;++L)if(X[z[L]]!=null)this[z[L]]=X[z[L]]}}return Z.prototype.coins=W.emptyArray,Z.prototype.memo="",Z.prototype.signer=W.newBuffer([]),Z.create=function(z){return new Z(z)},Z.encode=function(z,L){if(!L)L=f.create();if(z.coins?.length)for(let H=0;H<z.coins.length;++H)q.common.Coin.encode(z.coins[H],L.uint32(10).fork()).ldelim();if(z.memo!=null&&Object.hasOwnProperty.call(z,"memo"))L.uint32(18).string(z.memo);if(z.signer!=null&&Object.hasOwnProperty.call(z,"signer"))L.uint32(26).bytes(z.signer);return L},Z.encodeDelimited=function(z,L){return this.encode(z,L).ldelim()},Z.decode=function(z,L){if(!(z instanceof T))z=T.create(z);let H=L===void 0?z.len:z.pos+L,Q=new q.types.MsgDeposit;while(z.pos<H){let J=z.uint32();switch(J>>>3){case 1:if(!Q.coins?.length)Q.coins=[];Q.coins.push(q.common.Coin.decode(z,z.uint32()));break;case 2:Q.memo=z.string();break;case 3:Q.signer=z.bytes();break;default:z.skipType(J&7);break}}return Q},Z.decodeDelimited=function(z){if(!(z instanceof T))z=new T(z);return this.decode(z,z.uint32())},Z.verify=function(z){if(typeof z!=="object"||z===null)return"object expected";if(z.coins!=null&&z.hasOwnProperty("coins")){if(!Array.isArray(z.coins))return"coins: array expected";for(let L=0;L<z.coins.length;++L){let H=q.common.Coin.verify(z.coins[L]);if(H)return"coins."+H}}if(z.memo!=null&&z.hasOwnProperty("memo")){if(!W.isString(z.memo))return"memo: string expected"}if(z.signer!=null&&z.hasOwnProperty("signer")){if(!(z.signer&&typeof z.signer.length==="number"||W.isString(z.signer)))return"signer: buffer expected"}return null},Z.fromObject=function(z){if(z instanceof q.types.MsgDeposit)return z;let L=new q.types.MsgDeposit;if(z.coins){if(!Array.isArray(z.coins))throw TypeError(".types.MsgDeposit.coins: array expected");L.coins=[];for(let H=0;H<z.coins.length;++H){if(typeof z.coins[H]!=="object")throw TypeError(".types.MsgDeposit.coins: object expected");L.coins[H]=q.common.Coin.fromObject(z.coins[H])}}if(z.memo!=null)L.memo=String(z.memo);if(z.signer!=null){if(typeof z.signer==="string")W.base64.decode(z.signer,L.signer=W.newBuffer(W.base64.length(z.signer)),0);else if(z.signer.length)L.signer=z.signer}return L},Z.toObject=function(z,L){if(!L)L={};let H={};if(L.arrays||L.defaults)H.coins=[];if(L.defaults){if(H.memo="",L.bytes===String)H.signer="";else if(H.signer=[],L.bytes!==Array)H.signer=W.newBuffer(H.signer)}if(z.coins?.length){H.coins=[];for(let Q=0;Q<z.coins.length;++Q)H.coins[Q]=q.common.Coin.toObject(z.coins[Q],L)}if(z.memo!=null&&z.hasOwnProperty("memo"))H.memo=z.memo;if(z.signer!=null&&z.hasOwnProperty("signer"))H.signer=L.bytes===String?W.base64.encode(z.signer,0,z.signer.length):L.bytes===Array?Array.prototype.slice.call(z.signer):z.signer;return H},Z.prototype.toJSON=function(){return this.constructor.toObject(this,R.default.util.toJSONOptions)},Z})(),Y.MsgSend=(()=>{function Z(X){if(this.amount=[],X){for(let z=Object.keys(X),L=0;L<z.length;++L)if(X[z[L]]!=null)this[z[L]]=X[z[L]]}}return Z.prototype.fromAddress=W.newBuffer([]),Z.prototype.toAddress=W.newBuffer([]),Z.prototype.amount=W.emptyArray,Z.create=function(z){return new Z(z)},Z.encode=function(z,L){if(!L)L=f.create();if(z.fromAddress!=null&&Object.hasOwnProperty.call(z,"fromAddress"))L.uint32(10).bytes(z.fromAddress);if(z.toAddress!=null&&Object.hasOwnProperty.call(z,"toAddress"))L.uint32(18).bytes(z.toAddress);if(z.amount?.length)for(let H=0;H<z.amount.length;++H)q.cosmos.base.v1beta1.Coin.encode(z.amount[H],L.uint32(26).fork()).ldelim();return L},Z.encodeDelimited=function(z,L){return this.encode(z,L).ldelim()},Z.decode=function(z,L){if(!(z instanceof T))z=T.create(z);let H=L===void 0?z.len:z.pos+L,Q=new q.types.MsgSend;while(z.pos<H){let J=z.uint32();switch(J>>>3){case 1:Q.fromAddress=z.bytes();break;case 2:Q.toAddress=z.bytes();break;case 3:if(!Q.amount?.length)Q.amount=[];Q.amount.push(q.cosmos.base.v1beta1.Coin.decode(z,z.uint32()));break;default:z.skipType(J&7);break}}return Q},Z.decodeDelimited=function(z){if(!(z instanceof T))z=new T(z);return this.decode(z,z.uint32())},Z.verify=function(z){if(typeof z!=="object"||z===null)return"object expected";if(z.fromAddress!=null&&z.hasOwnProperty("fromAddress")){if(!(z.fromAddress&&typeof z.fromAddress.length==="number"||W.isString(z.fromAddress)))return"fromAddress: buffer expected"}if(z.toAddress!=null&&z.hasOwnProperty("toAddress")){if(!(z.toAddress&&typeof z.toAddress.length==="number"||W.isString(z.toAddress)))return"toAddress: buffer expected"}if(z.amount!=null&&z.hasOwnProperty("amount")){if(!Array.isArray(z.amount))return"amount: array expected";for(let L=0;L<z.amount.length;++L){let H=q.cosmos.base.v1beta1.Coin.verify(z.amount[L]);if(H)return"amount."+H}}return null},Z.fromObject=function(z){if(z instanceof q.types.MsgSend)return z;let L=new q.types.MsgSend;if(z.fromAddress!=null){if(typeof z.fromAddress==="string")W.base64.decode(z.fromAddress,L.fromAddress=W.newBuffer(W.base64.length(z.fromAddress)),0);else if(z.fromAddress.length)L.fromAddress=z.fromAddress}if(z.toAddress!=null){if(typeof z.toAddress==="string")W.base64.decode(z.toAddress,L.toAddress=W.newBuffer(W.base64.length(z.toAddress)),0);else if(z.toAddress.length)L.toAddress=z.toAddress}if(z.amount){if(!Array.isArray(z.amount))throw TypeError(".types.MsgSend.amount: array expected");L.amount=[];for(let H=0;H<z.amount.length;++H){if(typeof z.amount[H]!=="object")throw TypeError(".types.MsgSend.amount: object expected");L.amount[H]=q.cosmos.base.v1beta1.Coin.fromObject(z.amount[H])}}return L},Z.toObject=function(z,L){if(!L)L={};let H={};if(L.arrays||L.defaults)H.amount=[];if(L.defaults){if(L.bytes===String)H.fromAddress="";else if(H.fromAddress=[],L.bytes!==Array)H.fromAddress=W.newBuffer(H.fromAddress);if(L.bytes===String)H.toAddress="";else if(H.toAddress=[],L.bytes!==Array)H.toAddress=W.newBuffer(H.toAddress)}if(z.fromAddress!=null&&z.hasOwnProperty("fromAddress"))H.fromAddress=L.bytes===String?W.base64.encode(z.fromAddress,0,z.fromAddress.length):L.bytes===Array?Array.prototype.slice.call(z.fromAddress):z.fromAddress;if(z.toAddress!=null&&z.hasOwnProperty("toAddress"))H.toAddress=L.bytes===String?W.base64.encode(z.toAddress,0,z.toAddress.length):L.bytes===Array?Array.prototype.slice.call(z.toAddress):z.toAddress;if(z.amount?.length){H.amount=[];for(let Q=0;Q<z.amount.length;++Q)H.amount[Q]=q.cosmos.base.v1beta1.Coin.toObject(z.amount[Q],L)}return H},Z.prototype.toJSON=function(){return this.constructor.toObject(this,R.default.util.toJSONOptions)},Z})(),Y})();q.cosmos=(()=>{let Y={};return Y.base=(()=>{let Z={};return Z.v1beta1=(()=>{let X={};return X.Coin=(()=>{function z(L){if(L){for(let H=Object.keys(L),Q=0;Q<H.length;++Q)if(L[H[Q]]!=null)this[H[Q]]=L[H[Q]]}}return z.prototype.denom="",z.prototype.amount="",z.create=function(H){return new z(H)},z.encode=function(H,Q){if(!Q)Q=f.create();if(H.denom!=null&&Object.hasOwnProperty.call(H,"denom"))Q.uint32(10).string(H.denom);if(H.amount!=null&&Object.hasOwnProperty.call(H,"amount"))Q.uint32(18).string(H.amount);return Q},z.encodeDelimited=function(H,Q){return this.encode(H,Q).ldelim()},z.decode=function(H,Q){if(!(H instanceof T))H=T.create(H);let J=Q===void 0?H.len:H.pos+Q,_=new q.cosmos.base.v1beta1.Coin;while(H.pos<J){let E=H.uint32();switch(E>>>3){case 1:_.denom=H.string();break;case 2:_.amount=H.string();break;default:H.skipType(E&7);break}}return _},z.decodeDelimited=function(H){if(!(H instanceof T))H=new T(H);return this.decode(H,H.uint32())},z.verify=function(H){if(typeof H!=="object"||H===null)return"object expected";if(H.denom!=null&&H.hasOwnProperty("denom")){if(!W.isString(H.denom))return"denom: string expected"}if(H.amount!=null&&H.hasOwnProperty("amount")){if(!W.isString(H.amount))return"amount: string expected"}return null},z.fromObject=function(H){if(H instanceof q.cosmos.base.v1beta1.Coin)return H;let Q=new q.cosmos.base.v1beta1.Coin;if(H.denom!=null)Q.denom=String(H.denom);if(H.amount!=null)Q.amount=String(H.amount);return Q},z.toObject=function(H,Q){if(!Q)Q={};let J={};if(Q.defaults)J.denom="",J.amount="";if(H.denom!=null&&H.hasOwnProperty("denom"))J.denom=H.denom;if(H.amount!=null&&H.hasOwnProperty("amount"))J.amount=H.amount;return J},z.prototype.toJSON=function(){return this.constructor.toObject(this,R.default.util.toJSONOptions)},z})(),X.DecCoin=(()=>{function z(L){if(L){for(let H=Object.keys(L),Q=0;Q<H.length;++Q)if(L[H[Q]]!=null)this[H[Q]]=L[H[Q]]}}return z.prototype.denom="",z.prototype.amount="",z.create=function(H){return new z(H)},z.encode=function(H,Q){if(!Q)Q=f.create();if(H.denom!=null&&Object.hasOwnProperty.call(H,"denom"))Q.uint32(10).string(H.denom);if(H.amount!=null&&Object.hasOwnProperty.call(H,"amount"))Q.uint32(18).string(H.amount);return Q},z.encodeDelimited=function(H,Q){return this.encode(H,Q).ldelim()},z.decode=function(H,Q){if(!(H instanceof T))H=T.create(H);let J=Q===void 0?H.len:H.pos+Q,_=new q.cosmos.base.v1beta1.DecCoin;while(H.pos<J){let E=H.uint32();switch(E>>>3){case 1:_.denom=H.string();break;case 2:_.amount=H.string();break;default:H.skipType(E&7);break}}return _},z.decodeDelimited=function(H){if(!(H instanceof T))H=new T(H);return this.decode(H,H.uint32())},z.verify=function(H){if(typeof H!=="object"||H===null)return"object expected";if(H.denom!=null&&H.hasOwnProperty("denom")){if(!W.isString(H.denom))return"denom: string expected"}if(H.amount!=null&&H.hasOwnProperty("amount")){if(!W.isString(H.amount))return"amount: string expected"}return null},z.fromObject=function(H){if(H instanceof q.cosmos.base.v1beta1.DecCoin)return H;let Q=new q.cosmos.base.v1beta1.DecCoin;if(H.denom!=null)Q.denom=String(H.denom);if(H.amount!=null)Q.amount=String(H.amount);return Q},z.toObject=function(H,Q){if(!Q)Q={};let J={};if(Q.defaults)J.denom="",J.amount="";if(H.denom!=null&&H.hasOwnProperty("denom"))J.denom=H.denom;if(H.amount!=null&&H.hasOwnProperty("amount"))J.amount=H.amount;return J},z.prototype.toJSON=function(){return this.constructor.toObject(this,R.default.util.toJSONOptions)},z})(),X.IntProto=(()=>{function z(L){if(L){for(let H=Object.keys(L),Q=0;Q<H.length;++Q)if(L[H[Q]]!=null)this[H[Q]]=L[H[Q]]}}return z.prototype.int="",z.create=function(H){return new z(H)},z.encode=function(H,Q){if(!Q)Q=f.create();if(H.int!=null&&Object.hasOwnProperty.call(H,"int"))Q.uint32(10).string(H.int);return Q},z.encodeDelimited=function(H,Q){return this.encode(H,Q).ldelim()},z.decode=function(H,Q){if(!(H instanceof T))H=T.create(H);let J=Q===void 0?H.len:H.pos+Q,_=new q.cosmos.base.v1beta1.IntProto;while(H.pos<J){let E=H.uint32();switch(E>>>3){case 1:_.int=H.string();break;default:H.skipType(E&7);break}}return _},z.decodeDelimited=function(H){if(!(H instanceof T))H=new T(H);return this.decode(H,H.uint32())},z.verify=function(H){if(typeof H!=="object"||H===null)return"object expected";if(H.int!=null&&H.hasOwnProperty("int")){if(!W.isString(H.int))return"int: string expected"}return null},z.fromObject=function(H){if(H instanceof q.cosmos.base.v1beta1.IntProto)return H;let Q=new q.cosmos.base.v1beta1.IntProto;if(H.int!=null)Q.int=String(H.int);return Q},z.toObject=function(H,Q){if(!Q)Q={};let J={};if(Q.defaults)J.int="";if(H.int!=null&&H.hasOwnProperty("int"))J.int=H.int;return J},z.prototype.toJSON=function(){return this.constructor.toObject(this,R.default.util.toJSONOptions)},z})(),X.DecProto=(()=>{function z(L){if(L){for(let H=Object.keys(L),Q=0;Q<H.length;++Q)if(L[H[Q]]!=null)this[H[Q]]=L[H[Q]]}}return z.prototype.dec="",z.create=function(H){return new z(H)},z.encode=function(H,Q){if(!Q)Q=f.create();if(H.dec!=null&&Object.hasOwnProperty.call(H,"dec"))Q.uint32(10).string(H.dec);return Q},z.encodeDelimited=function(H,Q){return this.encode(H,Q).ldelim()},z.decode=function(H,Q){if(!(H instanceof T))H=T.create(H);let J=Q===void 0?H.len:H.pos+Q,_=new q.cosmos.base.v1beta1.DecProto;while(H.pos<J){let E=H.uint32();switch(E>>>3){case 1:_.dec=H.string();break;default:H.skipType(E&7);break}}return _},z.decodeDelimited=function(H){if(!(H instanceof T))H=new T(H);return this.decode(H,H.uint32())},z.verify=function(H){if(typeof H!=="object"||H===null)return"object expected";if(H.dec!=null&&H.hasOwnProperty("dec")){if(!W.isString(H.dec))return"dec: string expected"}return null},z.fromObject=function(H){if(H instanceof q.cosmos.base.v1beta1.DecProto)return H;let Q=new q.cosmos.base.v1beta1.DecProto;if(H.dec!=null)Q.dec=String(H.dec);return Q},z.toObject=function(H,Q){if(!Q)Q={};let J={};if(Q.defaults)J.dec="";if(H.dec!=null&&H.hasOwnProperty("dec"))J.dec=H.dec;return J},z.prototype.toJSON=function(){return this.constructor.toObject(this,R.default.util.toJSONOptions)},z})(),X})(),Z})(),Y})()});async function c(){let{$root:Y}=await Promise.resolve().then(() => (u6(),$6)),Z=await import("@cosmjs/proto-signing"),X=Z.Registry??Z.default?.Registry,z=await import("@cosmjs/stargate"),L=z.defaultRegistryTypes??z.default?.defaultRegistryTypes;return new X([...L,["/types.MsgSend",Y.types.MsgSend],["/types.MsgDeposit",Y.types.MsgDeposit]])}async function w(Y){let Z=await import("@cosmjs/stargate"),X=Z.AminoTypes??Z.default?.AminoTypes,z=Y===h6.Chain.THORChain?"thorchain":"mayachain";return new X({"/types.MsgDeposit":{aminoType:`${z}/MsgDeposit`,fromAmino:({signer:L,...H})=>({...H,signer:a(L)}),toAmino:({signer:L,...H})=>({...H,signer:s(L)})},"/types.MsgSend":{aminoType:`${z}/MsgSend`,fromAmino:({from_address:L,to_address:H,...Q})=>({...Q,fromAddress:a(L),toAddress:a(H)}),toAmino:({fromAddress:L,toAddress:H,...Q})=>({...Q,from_address:s(L),to_address:s(H)})}})}var h6;var _6=F(()=>{q6();h6=require("@tcswap/helpers")});function N6(Y){return function(X){let{assetValue:z,recipient:L,memo:H,sender:Q,asSignable:J,asAminoMessage:_}=X;if(L)return j6(Y)({asAminoMessage:_,asSignable:J,assetValue:z,memo:H,recipient:L,sender:Q});return b6(Y)({asAminoMessage:_,asSignable:J,assetValue:z,memo:H,sender:Q})}}function u(Y){if(Y.type==="thorchain/MsgSend"||Y.type==="mayachain/MsgSend")return Y;return{...Y,value:{...Y.value,coins:Y.value.coins.map((Z)=>{let X=y.AssetValue.from({asset:Z.asset}),z=(X.isSynthetic?X.symbol.split("/")?.[1]:X.symbol)?.toUpperCase(),L=(X.isSynthetic?X.symbol.split("/")?.[0]:X.chain)?.toUpperCase();return{...Z,asset:{chain:L,symbol:z,synth:X.isSynthetic,ticker:X.ticker}}})}}}async function z6({chain:Y,memo:Z,msgs:X}){let z=await c(),L=await w(Y),H={typeUrl:"/cosmos.tx.v1beta1.TxBody",value:{memo:Z,messages:X.map((Q)=>L.fromAmino(Q))}};return z.encode(H)}var y,J4,q4,I6=({sender:Y,recipient:Z,assetValue:X})=>{return{type:`${X.chain===y.Chain.Maya?"mayachain":"thorchain"}/MsgSend`,value:{amount:[{amount:X.getBaseValue("string"),denom:D(X.symbol,!0)}],from_address:Y,to_address:Z}}},E6=({sender:Y,assetValue:Z,memo:X=""})=>{return{type:`${Z.chain===y.Chain.Maya?"mayachain":"thorchain"}/MsgDeposit`,value:{coins:[{amount:Z.getBaseValue("string"),asset:d(Z)}],memo:X,signer:Y}}},X6=({sender:Y,recipient:Z,assetValue:X,memo:z})=>{return!Z?E6({assetValue:X,memo:z,sender:Y}):I6({assetValue:X,recipient:Z,sender:Y})},$=async(Y,Z)=>{return(await w(Z)).fromAmino(Y)},l6=async({rpcUrl:Y,sender:Z})=>{let z=await(await P(Y)).getAccount(Z);if(!z)throw new y.USwapError("toolbox_cosmos_account_not_found",{sender:Z});return z},j6=(Y)=>async({sender:Z,recipient:X,assetValue:z,memo:L="",asSignable:H=!0,asAminoMessage:Q=!1,sequence:J,accountNumber:_})=>{let E=await l6({rpcUrl:Y,sender:Z}),U=z.chain,{chainId:k}=y.getChainConfig(U),I=I6({assetValue:z,recipient:X,sender:Z}),x=H?await $(Q?I:u(I),U):I;return{accountNumber:_||E.accountNumber,chainId:k,fee:S(U),memo:L,msgs:[x],sequence:J||E.sequence}},b6=(Y)=>async({sender:Z,assetValue:X,memo:z="",asSignable:L=!0,asAminoMessage:H=!1,sequence:Q,accountNumber:J})=>{let _=await l6({rpcUrl:Y,sender:Z}),E=X.chain,{chainId:U}=y.getChainConfig(E),k=E6({assetValue:X,memo:z,sender:Z}),I=L?await $(H?k:u(k),E):k;return{accountNumber:J||_.accountNumber,chainId:U,fee:S(E),memo:z,msgs:[I],sequence:Q||_.sequence}};var p6=F(()=>{e();_6();y=require("@tcswap/helpers"),J4=S(y.Chain.THORChain).gas,q4=S(y.Chain.Maya).gas});var c6=()=>{};var d6=F(()=>{c6()});var O6=F(()=>{q6();p6();_6();d6()});async function U6(Y,Z){try{let z=(await A6.USwapApi.getGasRate()).find((L)=>L.chainId===Y)?.value;return z?Number.parseFloat(z):Z}catch{return Z}}async function v6({phrase:Y,prefix:Z,...X}){let z=await import("@cosmjs/proto-signing"),L=z.DirectSecp256k1HdWallet??z.default?.DirectSecp256k1HdWallet,H=await import("@cosmjs/crypto"),Q=H.stringToPath??H.default?.stringToPath,J="derivationPath"in X?X.derivationPath:`${G.DerivationPath[X.chain]}/${X.index}`;return L.fromMnemonic(Y,{hdPaths:[Q(J)],prefix:Z})}async function W4({privateKey:Y,prefix:Z}){let X=await import("@cosmjs/proto-signing");return(X.DirectSecp256k1Wallet??X.default?.DirectSecp256k1Wallet).fromKey(Y,Z)}function g6(Y){return async function({signature:X,message:z,address:L}){let H=await Y(L);if(!H?.pubkey)throw new G.USwapError("toolbox_cosmos_verify_signature_no_pubkey");let Q=await import("@cosmjs/crypto"),J=Q.Secp256k1Signature??Q.default?.Secp256k1Signature,_=Q.Secp256k1??Q.default?.Secp256k1,E=J.fromFixedLength(h.base64.decode(X));return _.verifySignature(E,h.base64.decode(z),H.pubkey.value)}}async function L6({chain:Y,...Z}){let X=await G.getRPCUrl(Y),z=G.CosmosChainPrefixes[Y],L="index"in Z?Z.index||0:0,H=G.derivationPathToString("derivationPath"in Z&&Z.derivationPath?Z.derivationPath:G.updateDerivationPath(G.NetworkDerivationPath[Y],{index:L})),Q=await H6.match(Z).with({phrase:H6.P.string},({phrase:I})=>v6({derivationPath:H,phrase:I,prefix:z})).with({signer:H6.P.any},({signer:I})=>I).otherwise(()=>{return});async function J(I){return(await P(X)).getAccount(I)}async function _(){let[I]=await Q?.getAccounts()||[];return I?.address}async function E(){let[I]=await Q?.getAccounts()||[];if(!I?.pubkey)throw new G.USwapError("toolbox_cosmos_signer_not_defined");return h.base64.encode(I?.pubkey)}async function U({recipient:I,assetValue:x,memo:N="",feeRate:v,feeOptionKey:K=G.FeeOption.Fast}){let V=await _();if(!(Q&&V))throw new G.USwapError("toolbox_cosmos_signer_not_defined");let M=G.AssetValue.from({chain:Y}),m=d(M),g=v||n6((await K6(Y,x6[Y]))[K],m),i=await n(X,Q),b=D(x.symbol),p=x.getBaseValue("string"),{TxRaw:o}=await import("cosmjs-types/cosmos/tx/v1beta1/tx"),t={amount:[{amount:p,denom:b}],fromAddress:V,toAddress:I},V6=await i.sign(V,[{typeUrl:"/cosmos.bank.v1beta1.MsgSend",value:t}],g,N),J6=o.encode(V6).finish();return Buffer.from(J6).toString("hex")}async function k({recipient:I,assetValue:x,memo:N="",feeRate:v,feeOptionKey:K=G.FeeOption.Fast,dryRun:V=!1}){if(V)return U({assetValue:x,feeOptionKey:K,feeRate:v,memo:N,recipient:I});let M=await _();if(!(Q&&M))throw new G.USwapError("toolbox_cosmos_signer_not_defined");let m=G.AssetValue.from({chain:Y}),g=d(m),i=v||n6((await K6(Y,x6[Y]))[K],g),b=await n(X,Q),p=D(x.symbol),o=[{amount:x.getBaseValue("string"),denom:p}],{transactionHash:t}=await b.sendTokens(M,I,o,i,N);return t}return{createPrivateKeyFromPhrase:_4(H),createTransaction:G6,fetchFeeRateFromSwapKit:U6,getAccount:J,getAddress:_,getBalance:async(I,x)=>{let N=await m6(X)(I),v=await Promise.all(N.filter(({denom:K})=>K&&!K.includes("IBC/")&&!([G.Chain.THORChain,G.Chain.Maya].includes(Y)&&K.split("-").length>2)).map(({denom:K,amount:V})=>{let M=[G.Chain.THORChain,G.Chain.Maya].includes(Y)&&(K.includes("/")||K.includes("˜"))?`${Y}.${K}`:K;return T6(M,V)}));if(v.length===0)return[G.AssetValue.from({chain:Y})];return v},getBalanceAsDenoms:m6(X),getFees:()=>K6(Y,x6[Y]),getPubKey:E,getSignerFromPhrase:async({phrase:I,derivationPath:x})=>v6({derivationPath:G.derivationPathToString(x),index:L,phrase:I,prefix:z}),getSignerFromPrivateKey:async(I)=>{let x=await import("@cosmjs/proto-signing");return(x.DirectSecp256k1Wallet??x.default?.DirectSecp256k1Wallet).fromKey(I,z)},signTransaction:U,transfer:k,validateAddress:i6(Y),verifySignature:g6(J)}}async function B4(Y,Z){try{let z=(await A6.USwapApi.getGasRate()).find((L)=>L.chainId===Y)?.value;return z?Number.parseFloat(z):Z}catch{return Z}}function G4({assetValue:{chain:Y}}){return G.AssetValue.from({chain:Y,value:T4(Y)})}async function K6(Y,Z){let{chainId:X,baseDecimal:z}=G.getChainConfig(Y),L=await U6(X,Z);return{average:G.USwapNumber.fromBigInt(BigInt(L),z),fast:G.USwapNumber.fromBigInt(BigInt(G.applyFeeMultiplier(L,G.FeeOption.Fast,!0)),z),fastest:G.USwapNumber.fromBigInt(BigInt(G.applyFeeMultiplier(L,G.FeeOption.Fastest,!0)),z)}}function n6(Y,Z){return{amount:[{amount:Y.getBaseValue("string"),denom:Z}],gas:"200000"}}function T4(Y){return{[G.Chain.Cosmos]:0.007,[G.Chain.Kujira]:0.02,[G.Chain.Noble]:0.01,[G.Chain.THORChain]:0.02,[G.Chain.Maya]:0.02,[G.Chain.Harbor]:0.02}[Y]||0}function i6(Y){let Z=G.CosmosChainPrefixes[Y];return function(z){if(!z.startsWith(Z))return!1;try{let{prefix:L,words:H}=h.bech32.decode(z);return h.bech32.encode(L,H)===z.toLocaleLowerCase()}catch{return!1}}}function m6(Y){return async function(X){return(await(await P(Y)).getAllBalances(X)).map((Q)=>({...Q,denom:Q.denom.includes("/")?Q.denom.toUpperCase():Q.denom}))}}function _4(Y){return async function(X){let z=await import("@cosmjs/crypto"),L=z.stringToPath??z.default?.stringToPath,H=z.Slip10Curve??z.default?.Slip10Curve,Q=z.Slip10??z.default?.Slip10,J=z.EnglishMnemonic??z.default?.EnglishMnemonic,_=z.Bip39??z.default?.Bip39,E=new J(X),U=await _.mnemonicToSeed(E),{privkey:k}=Q.derivePath(H.Secp256k1,U,L(Y));return k}}var h,G,A6,H6,x6;var Y6=F(()=>{e();h=require("@scure/base"),G=require("@tcswap/helpers"),A6=require("@tcswap/helpers/api"),H6=require("ts-pattern");x6={[G.Chain.Cosmos]:1000,[G.Chain.Kujira]:1000,[G.Chain.Noble]:1000,[G.Chain.THORChain]:5000000,[G.Chain.Maya]:5000000,[G.Chain.Harbor]:5000000}});function I4({prefix:Y,derivationPath:Z}){return async function(z,L=0){let H=await import("@cosmjs/amino"),Q=H.Secp256k1HdWallet??H.default?.Secp256k1HdWallet,J=await import("@cosmjs/crypto"),_=J.stringToPath??J.default?.stringToPath;return Q.fromMnemonic(z,{hdPaths:[_(`${Z}/${L}`)],prefix:Y})}}function E4(Y){return l.base64.encode(Y)}function N4(Y){return async function({wallet:X,tx:z}){let{msgs:L,accountNumber:H,sequence:Q,chainId:J,fee:_,memo:E}=typeof z==="string"?JSON.parse(z):z,U=(await X.getAccounts())?.[0]?.address||"",k=await w(Y),I=await c(),x=await B6(X,{aminoTypes:k,registry:I}),N=[];for(let V of L){let M=await $(V,Y);N.push(M)}let{signatures:[v]}=await x.sign(U,N,_,E,{accountNumber:H,chainId:J,sequence:Q});return{bodyBytes:await z6({chain:Y,memo:E,msgs:L.map(u)}),signature:E4(v)}}}function O4({prefix:Y,rpcUrl:Z}){return async function(z,L,H,Q,J){let{encodeSecp256k1Pubkey:_,pubkeyToAddress:E}=(await import("@cosmjs/amino")).default,{makeMultisignedTxBytes:U}=(await import("@cosmjs/stargate")).default,{sequence:k,fee:I}=JSON.parse(z),x=await o6(H,Q),N=L.map((V)=>[E(_(l.base64.decode(V.pubKey)),Y),l.base64.decode(V.signature)]),v=await P(Z),{transactionHash:K}=await v.broadcastTx(U(x,k,I,J,new Map(N)));return K}}async function o6(Y,Z,X=!0){let{createMultisigThresholdPubkey:z,encodeSecp256k1Pubkey:L}=(await import("@cosmjs/amino")).default;return z(Y.map((H)=>L(l.base64.decode(H))),Z,X)}function x4(Y){return l.base64.decode(Y)}async function K4({privateKey:Y,message:Z}){let{Secp256k1:X}=(await import("@cosmjs/crypto")).default,z=await X.createSignature(l.base64.decode(Z),Y);return l.base64.encode(Buffer.concat([z.r(32),z.s(32)]))}async function k6({chain:Y,...Z}){let X=await O.getRPCUrl(Y),{nodeUrl:z}=O.getChainConfig(Y),{isStagenet:L}=O.USwapConfig.get("envs"),H=Y===O.Chain.THORChain,Q=`${L?"s":""}${O.CosmosChainPrefixes[Y]}`,J="index"in Z?Z.index||0:0,_="derivationPath"in Z&&Z.derivationPath?Z.derivationPath:O.updateDerivationPath(O.NetworkDerivationPath[Y],{index:J}),E=await L6({chain:Y,...Z}),U=await Z6.match(Z).with({phrase:Z6.P.string},({phrase:N})=>E.getSignerFromPhrase({derivationPath:_,phrase:N})).with({signer:Z6.P.any},({signer:N})=>N).otherwise(()=>{return}),k=S(Y);async function I(){let N,v=`${z}/${H?"thorchain":"mayachain"}/constants`;try{let{int_64_values:{NativeTransactionFee:K}}=await O.RequestClient.get(v);if(!K||Number.isNaN(K)||K<0)throw new O.USwapError("toolbox_cosmos_invalid_fee",{nativeFee:K.toString()});N=new O.USwapNumber(K)}catch{N=new O.USwapNumber({decimal:O.getChainConfig(Y).baseDecimal,value:H?0.02:1})}return{[O.FeeOption.Average]:N,[O.FeeOption.Fast]:N,[O.FeeOption.Fastest]:N}}async function x({assetValue:N,memo:v="",recipient:K}){let{TxRaw:V}=await import("cosmjs-types/cosmos/tx/v1beta1/tx"),M=(await U?.getAccounts())?.[0]?.address;if(!(M&&U))throw new O.USwapError("toolbox_cosmos_no_signer");let m="signAmino"in U,g=await c(),i=await w(Y),b=await n(X,U,{aminoTypes:i,registry:g}),p=X6({assetValue:N,memo:v,recipient:K,sender:M});if(m){let J6=await $(p,Y),{signatures:r6,authInfoBytes:a6}=await b.sign(M,[J6],k,v),s6=V.encode({authInfoBytes:a6,bodyBytes:await z6({chain:Y,memo:v,msgs:[p].map(u)}),signatures:r6}).finish();return(await b.broadcastTx(s6)).transactionHash}let o=u(p),t=await $(o,Y);return(await b.signAndBroadcast(M,[t],k,v)).transactionHash}return{...E,broadcastMultisigTx:O4({prefix:Q,rpcUrl:X}),buildAminoMsg:X6,buildEncodedTxBody:z6,convertToSignable:$,createDefaultAminoTypes:()=>w(Y),createDefaultRegistry:c,createMultisig:o6,createTransaction:N6(X),deposit:x,getFees:I,importSignature:x4,parseAminoMessageForDirectSigning:u,pubkeyToAddress:async(N)=>{let{pubkeyToAddress:v}=(await import("@cosmjs/amino")).default;return v(N,Q)},secp256k1HdWalletFromMnemonic:I4({derivationPath:O.derivationPathToString(_),prefix:Q}),signMultisigTx:N4(Y),signWithPrivateKey:K4,transfer:x}}var l,O,Z6;var R6=F(()=>{O6();e();Y6();l=require("@scure/base"),O=require("@tcswap/helpers"),Z6=require("ts-pattern")});var j,v4=(Y,Z)=>{switch(Y){case j.Chain.Cosmos:case j.Chain.Kujira:case j.Chain.Noble:return L6({chain:Y,...Z});case j.Chain.Maya:case j.Chain.THORChain:return k6({chain:Y,...Z});default:throw new j.USwapError("toolbox_cosmos_not_supported",{chain:Y})}};var t6=F(()=>{Y6();R6();j=require("@tcswap/helpers");Y6();R6()});var U4={};y6(U4,{verifySignature:()=>g6,transferMsgAmino:()=>I6,toBase64:()=>Z4,parseAminoMessageForDirectSigning:()=>u,getSignerFromPrivateKey:()=>W4,getSignerFromPhrase:()=>v6,getMsgSendDenom:()=>D,getFeeRateFromSwapKit:()=>B4,getDenomWithChain:()=>d,getDefaultChainFee:()=>S,getCreateTransaction:()=>N6,getCosmosValidateAddress:()=>i6,getCosmosToolbox:()=>v4,getAssetFromDenom:()=>T6,fromBase64:()=>Q4,fetchFeeRateFromSwapKit:()=>U6,estimateTransactionFee:()=>G4,depositMsgAmino:()=>E6,createThorchainToolbox:()=>k6,createStargateClient:()=>P,createSigningStargateClient:()=>n,createOfflineStargateClient:()=>B6,createDefaultRegistry:()=>c,createDefaultAminoTypes:()=>w,createCosmosToolbox:()=>L6,cosmosCreateTransaction:()=>G6,convertToSignable:()=>$,buildTransferTx:()=>j6,buildEncodedTxBody:()=>z6,buildDepositTx:()=>b6,buildAminoMsg:()=>X6,bech32ToBase64:()=>a,base64ToBech32:()=>s,YUM_KUJIRA_FACTORY_DENOM:()=>S6,USK_KUJIRA_FACTORY_DENOM:()=>W6,THORCHAIN_GAS_VALUE:()=>J4,MAYA_GAS_VALUE:()=>q4,DEFAULT_NOBLE_FEE_MAINNET:()=>w6,DEFAULT_KUJI_FEE_MAINNET:()=>C6,DEFAULT_COSMOS_FEE_MAINNET:()=>P6});module.exports=L4(U4);var k4=F(()=>{O6();t6();e()});k4();
|
|
2
|
+
|
|
3
|
+
//# debugId=7ED0C0D1FDF5D14F64756E2164756E21
|
|
4
|
+
//# sourceMappingURL=index.cjs.map
|