New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@swapkit/helpers

Package Overview
Dependencies
Maintainers
2
Versions
263
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@swapkit/helpers - npm Package Compare versions

Comparing version 0.0.0-nightly-20241007090400 to 0.0.0-nightly-20241011172732

6

dist/index.js

@@ -1,6 +0,6 @@

var e=((n)=>typeof require!=="undefined"?require:typeof Proxy!=="undefined"?new Proxy(n,{get:(h,t)=>(typeof require!=="undefined"?require:h)[t]}):n)(function(n){if(typeof require!=="undefined")return require.apply(this,arguments);throw Error('Dynamic require of "'+n+'" is not supported')});export*from"@swapkit/contracts";var M;((O)=>{O.Arbitrum="https://arb1.arbitrum.io/rpc";O.Avalanche="https://node-router.thorswap.net/avalanche-c";O.Base="https://base.llamarpc.com";O.BinanceSmartChain="https://bsc-dataseed.binance.org";O.Bitcoin="https://node-router.thorswap.net/bitcoin";O.BitcoinCash="https://node-router.thorswap.net/bitcoin-cash";O.Chainflip="wss://mainnet-archive.chainflip.io";O.Cosmos="https://node-router.thorswap.net/cosmos/rpc";O.Dash="https://node-router.thorswap.net/dash";O.Dogecoin="https://node-router.thorswap.net/dogecoin";O.Ethereum="https://node-router.thorswap.net/ethereum";O.Kujira="https://rpc-kujira.synergynodes.com/";O.Litecoin="https://node-router.thorswap.net/litecoin";O.Maya="https://tendermint.mayachain.info";O.MayaStagenet="https://stagenet.tendermint.mayachain.info";O.Optimism="https://mainnet.optimism.io";O.Polkadot="wss://rpc.polkadot.io";O.Polygon="https://polygon-rpc.com";O.Radix="https://radix-mainnet.rpc.grove.city/v1/326002fc/core";O.THORChain="https://rpc.thorswap.net";O.THORChainStagenet="https://stagenet-rpc.ninerealms.com";O.Solana="https://solana-rpc.publicnode.com"})(M||={});var d;((F)=>{F.Arbitrum="https://arbiscan.io";F.Avalanche="https://snowtrace.io";F.Base="https://basescan.org";F.BinanceSmartChain="https://bscscan.com";F.Bitcoin="https://blockchair.com/bitcoin";F.BitcoinCash="https://www.blockchair.com/bitcoin-cash";F.Chainflip="https://explorer.polkascan.io/polkadot";F.Cosmos="https://www.mintscan.io/cosmos";F.Dash="https://blockchair.com/dash";F.Dogecoin="https://blockchair.com/dogecoin";F.Ethereum="https://etherscan.io";F.Kujira="https://finder.kujira.network/kaiyo-1";F.Litecoin="https://blockchair.com/litecoin";F.Maya="https://www.mayascan.org";F.Optimism="https://optimistic.etherscan.io";F.Polkadot="https://polkadot.subscan.io";F.Polygon="https://polygonscan.com";F.Radix="https://dashboard.radixdlt.com";F.THORChain="https://runescan.io";F.Solana="https://solscan.io"})(d||={});var g;((F)=>{F.Arbitrum="ARB";F.Avalanche="AVAX";F.Base="BASE";F.BinanceSmartChain="BSC";F.Bitcoin="BTC";F.BitcoinCash="BCH";F.Cosmos="GAIA";F.Dash="DASH";F.Dogecoin="DOGE";F.Ethereum="ETH";F.Kujira="KUJI";F.Litecoin="LTC";F.Maya="MAYA";F.Optimism="OP";F.Polkadot="DOT";F.Chainflip="FLIP";F.Polygon="MATIC";F.Radix="XRD";F.THORChain="THOR";F.Solana="SOL"})(g||={});var z;((B)=>{B.Arbitrum="42161";B.ArbitrumHex="0xa4b1";B.Avalanche="43114";B.AvalancheHex="0xa86a";B.Base="8453";B.BaseHex="0x2105";B.BinanceSmartChain="56";B.BinanceSmartChainHex="0x38";B.Bitcoin="bitcoin";B.BitcoinCash="bitcoincash";B.Chainflip="chainflip";B.Cosmos="cosmoshub-4";B.Dash="dash";B.Dogecoin="dogecoin";B.Kujira="kaiyo-1";B.Ethereum="1";B.EthereumHex="0x1";B.Litecoin="litecoin";B.Maya="mayachain-mainnet-v1";B.MayaStagenet="mayachain-stagenet-v1";B.Optimism="10";B.OptimismHex="0xa";B.Polkadot="polkadot";B.Polygon="137";B.PolygonHex="0x89";B.Radix="radix-mainnet";B.THORChain="thorchain-1";B.THORChainStagenet="thorchain-stagenet-v2";B.Solana="solana"})(z||={});var Fh={["0xa4b1"]:"ARB",["42161"]:"ARB",["0xa86a"]:"AVAX",["43114"]:"AVAX",["0x2105"]:"BASE",["8453"]:"BASE",["0x38"]:"BSC",["56"]:"BSC",["bitcoincash"]:"BCH",["bitcoin"]:"BTC",["chainflip"]:"FLIP",["cosmoshub-4"]:"GAIA",["dash"]:"DASH",["dogecoin"]:"DOGE",["0x1"]:"ETH",["kaiyo-1"]:"KUJI",["1"]:"ETH",["litecoin"]:"LTC",["mayachain-stagenet-v1"]:"MAYA",["mayachain-mainnet-v1"]:"MAYA",["0xa"]:"OP",["10"]:"OP",["polkadot"]:"DOT",["0x89"]:"MATIC",["137"]:"MATIC",["radix-mainnet"]:"XRD",["thorchain-stagenet-v2"]:"THOR",["thorchain-1"]:"THOR",["solana"]:"SOL"},On=Object.keys(g),Z=Object.values(g),N={ARB:18,AVAX:18,BASE:18,BCH:8,BSC:18,BTC:8,DASH:8,DOGE:8,DOT:10,ETH:18,FLIP:18,GAIA:6,KUJI:6,LTC:8,MATIC:18,MAYA:8,OP:18,SOL:9,THOR:8,XRD:18},Rh=["DOT","FLIP"],V=["ARB","AVAX","BASE","BSC","ETH","OP","MATIC"],Ah=["BTC","BCH","DASH","DOGE","LTC"],Ch=["GAIA","THOR","MAYA","KUJI"],Bh=["AVAX","BSC","BTC","BCH","GAIA","DOGE","ETH","LTC","THOR"],Nh=["ARB","DASH","ETH","KUJI","MAYA","THOR"],b=Z.reduce((n,h)=>{const t=On.find((o)=>g[o]===h);if(t)n[h]=t;return n},{}),nn=Z.reduce((n,h)=>{return n[h]=z[b[h]],n},{}),E=Z.reduce((n,h)=>{return n[h]=M[b[h]],n},{}),Th=Z.reduce((n,h)=>{const t=`${b[h]}Hex`;return n[h]=z[t],n},{}),kh=Z.reduce((n,h)=>{return n[h]=d[b[h]],n},{});var $n;((I)=>{I.TC_SUPPORTED_TO_TC_SUPPORTED="TC-TC";I.TC_SUPPORTED_TO_ETH="TC-ERC20";I.TC_SUPPORTED_TO_AVAX="TC-ARC20";I.TC_SUPPORTED_TO_BSC="TC-BEP20";I.ETH_TO_TC_SUPPORTED="ERC20-TC";I.ETH_TO_ETH="ERC20-ERC20";I.ETH_TO_AVAX="ERC20-ARC20";I.ETH_TO_BSC="ERC20-BEP20";I.AVAX_TO_TC_SUPPORTED="ARC20-TC";I.AVAX_TO_ETH="ARC20-ERC20";I.AVAX_TO_AVAX="ARC20-ARC20";I.AVAX_TO_BSC="ARC20-BEP20";I.BSC_TO_TC_SUPPORTED="BEP20-TC";I.BSC_TO_ETH="BEP20-ERC20";I.BSC_TO_AVAX="BEP20-ARC20";I.BSC_TO_BSC="BEP20-BEP20"})($n||={});var $h=["ERC20-ERC20","ARC20-ARC20","BEP20-BEP20"],Ih=["ERC20-TC","ERC20-ARC20","ERC20-BEP20","ARC20-TC","ARC20-ERC20","ARC20-BEP20","BEP20-TC","BEP20-ERC20","BEP20-ARC20"],Lh=["TC-TC","TC-ERC20","TC-ARC20","TC-BEP20"];var In;((R)=>{R.ARB="0x0000000000000000000000000000000000000000";R.AVAX="0x0000000000000000000000000000000000000000";R.BASE="0x0000000000000000000000000000000000000000";R.ETH="0x0000000000000000000000000000000000000000";R.BSC="0x0000000000000000000000000000000000000000";R.MATIC="0x0000000000000000000000000000000000001010";R.OP="0x4200000000000000000000000000000000000042"})(In||={});var Ln;((F)=>{F.ARB="m/44'/60'/0'/0";F.AVAX="m/44'/60'/0'/0";F.BASE="m/44'/60'/0'/0";F.BCH="m/44'/145'/0'/0";F.BSC="m/44'/60'/0'/0";F.BTC="m/84'/0'/0'/0";F.DASH="m/44'/5'/0'/0";F.DOGE="m/44'/3'/0'/0";F.DOT="////";F.ETH="m/44'/60'/0'/0";F.FLIP="////";F.GAIA="m/44'/118'/0'/0";F.KUJI="m/44'/118'/0'/0";F.LTC="m/84'/2'/0'/0";F.MATIC="m/44'/60'/0'/0";F.MAYA="m/44'/931'/0'/0";F.OP="m/44'/60'/0'/0";F.SOL="m/44'/501'/0'/0";F.THOR="m/44'/931'/0'/0";F.XRD="////"})(Ln||={});var v={ARB:[44,60,0,0,0],AVAX:[44,60,0,0,0],BASE:[44,60,0,0,0],BCH:[44,145,0,0,0],BSC:[44,60,0,0,0],BTC:[84,0,0,0,0],DASH:[44,5,0,0,0],DOGE:[44,3,0,0,0],ETH:[44,60,0,0,0],GAIA:[44,118,0,0,0],KUJI:[44,118,0,0,0],LTC:[84,2,0,0,0],MATIC:[44,60,0,0,0],MAYA:[44,931,0,0,0],OP:[44,60,0,0,0],SOL:[44,501,0,0,0],THOR:[44,931,0,0,0],XRD:[0,0,0,0,0],DOT:[0,0,0,0,0],FLIP:[0,0,0,0,0]};var hn;((k)=>{k.BRAVE="BRAVE";k.COINBASE_MOBILE="COINBASE_MOBILE";k.COINBASE_WEB="COINBASE_WEB";k.EIP6963="EIP6963";k.EXODUS="EXODUS";k.KEEPKEY="KEEPKEY";k.KEPLR="KEPLR";k.KEYSTORE="KEYSTORE";k.LEAP="LEAP";k.LEDGER="LEDGER";k.LEDGER_LIVE="LEDGER_LIVE";k.METAMASK="METAMASK";k.OKX="OKX";k.OKX_MOBILE="OKX_MOBILE";k.ONEKEY="ONEKEY";k.PHANTOM="PHANTOM";k.POLKADOT_JS="POLKADOT_JS";k.RADIX_WALLET="RADIX_WALLET";k.TREZOR="TREZOR";k.TALISMAN="TALISMAN";k.TRUSTWALLET_WEB="TRUSTWALLET_WEB";k.WALLETCONNECT="WALLETCONNECT";k.XDEFI="XDEFI"})(hn||={});var _n;((o)=>{o[o.NoError=36864]="NoError";o[o.LockedDevice=21781]="LockedDevice";o[o.TC_NotFound=65535]="TC_NotFound"})(_n||={});var Gn;((o)=>{o.Average="average";o.Fast="fast";o.Fastest="fastest"})(Gn||={});var gn;((t)=>{t.Approve="approve";t.CheckOnly="checkOnly"})(gn||={});var tn;((C)=>{C.NAME_REGISTER="~";C.BOND="BOND";C.DEPOSIT="+";C.LEAVE="LEAVE";C.UNBOND="UNBOND";C.WITHDRAW="-";C.OPEN_LOAN="$+";C.CLOSE_LOAN="$-";C.RUNEPOOL_DEPOSIT="POOL+";C.RUNEPOOL_WITHDRAW="POOL-"})(tn||={});var Pn;((c)=>{c.unknownError="unknownError";c.test_error="test_error";c.providerDetailsError="providerDetailsError";c.blockHeaderNotFound="blockHeaderNotFound";c.blockHashNotFoundAtHeight="blockHashNotFoundAtHeight";c.blockHashNotFoundAtHash="blockHashNotFoundAtHash";c.txHashMissing="txHashMissing";c.assetValueMissingInfo="assetValueMissingInfo";c.invalidAsset="invalidAsset";c.blockIsRequired="blockIsRequired";c.currentBlockHeaderNotFound="currentBlockHeaderNotFound";c.failedToRetrieveBalance="failedToRetrieveBalance";c.failedToRetrieveBlock="failedToRetrieveBlock";c.failedToRetrieveFees="failedToRetrieveFees";c.notImplementedBCH="notImplementedBCH";c.notImplementedDoge="notImplementedDoge";c.noPoolsFound="noPoolsFound";c.noVaultsFound="noVaultsFound";c.noTxFound="noTxFound";c.noInputCoinFound="noInputCoinFound";c.noBlockDataFound="noBlockDataFound";c.multipleCosmosMessages="multipleCosmosMessages";c.heightOrHashNotProvided="heightOrHashNotProvided";c.unknownDenom="unknownDenom";c.invalidBlockHeight="invalidBlockHeight";c.timestampExtrinsicNoArgumentsForBlock="timestampExtrinsicNoArgumentsForBlock";c.timestampExtrinsicNoTimestampForBlock="timestampExtrinsicNoTimestampForBlock";c.noTimestampExtrinsicForHash="noTimestampExtrinsicForHash";c.timestampExtrinsicNoArgumentsForHash="timestampExtrinsicNoArgumentsForHash";c.txMemoUndefined="txMemoUndefined";c.txMemoIncorrect="txMemoIncorrect";c.txTypeNotFound="txTypeNotFound";c.txNoMessage="txNoMessage";c.txNotFound="txNotFound";c.txReceiptNotFound="txReceiptNotFound";c.txParsingError="txParsingError";c.blockNotFound="blockNotFound";c.balanceNotFound="balanceNotFound";c.configError="configError";c.noQuoteResponse="noQuoteResponse";c.noPoolAssetsFound="noPoolAssetsFound";c.noThorchainPools="noThorchainPools";c.noMayachainPools="noMayachainPools";c.invalidAffiliateFee="invalidAffiliateFee";c.invalidBuyAssetAddress="invalidBuyAssetAddress";c.invalidSellAssetAddress="invalidSellAssetAddress";c.invalidSourceAddress="invalidSourceAddress";c.invalidDestinationAddress="invalidDestinationAddress";c.sourceAddressIsSmartContract="sourceAddressIsSmartContract";c.destinationAddressIsSmartContract="destinationAddressIsSmartContract";c.invalidChainId="invalidChainId";c.unsupportedChainId="unsupportedChainId";c.unsupportedEVMChainId="unsupportedEVMChainId";c.noWhitelistTokens="noWhitelistTokens";c.failedFetchGasPrice="failedFetchGasPrice";c.failedToCreateDepositChannel="failedToCreateDepositChannel";c.noProviderDetailsFound="noProviderDetailsFound";c.noTokenListsFound="noTokenListsFound";c.tokenNotFound="tokenNotFound";c.tokenPriceNotFound="tokenPriceNotFound";c.swapAmountTooSmall="swapAmountTooSmall";c.legsArrayIsEmpty="legsArrayIsEmpty";c.failedToFetchQuoteForLeg="failedToFetchQuoteForLeg";c.noBlockHeaderFound="noBlockHeaderFound";c.failedToSimulateSwap="failedToSimulateSwap";c.addressScreeningFailed="addressScreeningFailed";c.noLiquidtyProvidersFound="noLiquidtyProvidersFound";c.noSaversFound="noSaversFound";c.noInboundAddressesFound="noInboundAddressesFound";c.noInboundAddressFoundForChain="noInboundAddressFoundForChain";c.noLastBlocksFound="noLastBlocksFound";c.noVersionFound="noVersionFound";c.noConstantsFound="noConstantsFound";c.noMimirsFound="noMimirsFound";c.noRoutesFound="noRoutesFound";c.quoteNotFound="quoteNotFound";c.ledgerSignFailed="ledgerSignFailed";c.ledgerFetchSwapFailed="ledgerFetchSwapFailed";c.failedToFetchTx="failedToFetchTx";c.failedBuildTransactionDetails="failedBuildTransactionDetails";c.noLegsForRoute="noLegsForRoute";c.noRouterAddressFound="noRouterAddressFound";c.noAggregatorAddressFound="noAggregatorAddressFound";c.noContractInstanceFound="noContractInstanceFound";c.noContractAddressFound="noContractAddressFound";c.invalidAffiliate="invalidAffiliate";c.providerNotfound="No provider found";c.noRecordFound="No Record found";c.slippageTooLow="Slippage too low";c.tradingHalted="tradingHalted";c.noWrappedGasAsset="noWrappedGasAsset";c.aggregatorAddressNotFound="aggregatorAddressNotFound";c.routerAddressNotFound="routerAddressNotFound";c.dummyAddressNotFound="dummyAddressNotFound";c.trackerError="trackerError";c.noOhlcvDataFound="noOhlcvDataFound";c.noTradingPairs="noTradingPairs";c.noLoanPositionFound="noLoanPositionFound";c.noLendingAvailability="noLendingAvailability";c.lendingRepayTooSmall="lendingRepayTooSmall";c.missingState="missingState";c.ledgerSwapNotFound="ledgerSwapNotFound";c.ledgerSwapNotReadyForTracking="ledgerSwapNotReadyForTracking";c.errorEstimatingGas="errorEstimatingGas";c.apiKeyInvalid="apiKeyInvalid";c.apiKeyFailedToUpdate="apiKeyFailedToUpdate";c.apiKeyExpired="apiKeyExpired";c.unauthorized="unauthorized";c.failedToCreateMemo="failedToCreateMemo";c.radixIncorrectInstructions="radixIncorrectInstructions";c.invalidAddressForChain="invalidAddressForChain"})(Pn||={});var Sn;((t)=>{t.highSlippage="highSlippage";t.highPriceImpact="highPriceImpact"})(Sn||={});var jn;((_)=>{_.CHAINFLIP="CHAINFLIP";_.MAYACHAIN="MAYACHAIN";_.MAYACHAIN_STREAMING="MAYACHAIN_STREAMING";_.ONEINCH="ONEINCH";_.PANCAKESWAP="PANCAKESWAP";_.PANGOLIN_V1="PANGOLIN_V1";_.SUSHISWAP_V2="SUSHISWAP_V2";_.THORCHAIN="THORCHAIN";_.THORCHAIN_STREAMING="THORCHAIN_STREAMING";_.TRADERJOE_V2="TRADERJOE_V2";_.UNISWAP_V2="UNISWAP_V2";_.UNISWAP_V3="UNISWAP_V3";_.CAVIAR_V1="CAVIAR_V1"})(jn||={});var un;((H)=>{H.LIQUIDITY="liquidity";H.NETWORK="network";H.INBOUND="inbound";H.OUTBOUND="outbound";H.AFFILIATE="affiliate";H.TAX="tax"})(un||={});function fh({apiKey:n,...h}){i={...h,apiKey:n}}async function K(n,h){const{apiKey:t,...o}=i,{searchParams:x,json:s,body:H}=h,R={...pn,...o.headers,...h.headers,...s?{"Content-Type":"application/json"}:{}},T=s?JSON.stringify(s):H,A=new URL(n);if(x)A.search=new URLSearchParams(x).toString();if(t)R["x-api-key"]=t;try{const G=await(await fetch(A.toString(),{...o,...h,body:T,headers:R})).json();if(h.responseHandler)return h.responseHandler(G);return G}catch(C){if(h.onError)return h.onError(C);console.error(C)}}var i={},pn=typeof window!=="undefined"?{}:{referrer:"https://sk.thorswap.net",referer:"https://sk.thorswap.net"},y={get:async(n,h)=>K(n,{...h,method:"GET"}),post:async(n,h)=>K(n,{...h,method:"POST"}),extend:(n)=>{const h={...i,...n};return{get:async(t,o)=>K(t,{...h,...o,method:"GET"}),post:async(t,o)=>K(t,{...h,...o,method:"POST"}),extend:(t)=>y.extend({...h,...t})}}};var Xn={core_estimated_max_spendable_chain_not_supported:10002,core_extend_error:10003,core_inbound_data_not_found:10004,core_approve_asset_address_or_from_not_found:10005,core_plugin_not_found:10006,core_plugin_swap_not_found:10007,core_approve_asset_target_invalid:10008,core_explorer_unsupported_chain:10009,core_verify_message_not_supported:10010,core_chain_halted:10099,core_wallet_connection_not_found:10100,core_wallet_xdefi_not_installed:10101,core_wallet_evmwallet_not_installed:10102,core_wallet_walletconnect_not_installed:10103,core_wallet_keystore_not_installed:10104,core_wallet_ledger_not_installed:10105,core_wallet_trezor_not_installed:10106,core_wallet_keplr_not_installed:10107,core_wallet_okx_not_installed:10108,core_wallet_keepkey_not_installed:10109,core_wallet_talisman_not_installed:10110,core_wallet_not_keypair_wallet:10111,core_wallet_sign_message_not_supported:10110,core_swap_invalid_params:10200,core_swap_route_not_complete:10201,core_swap_asset_not_recognized:10202,core_swap_contract_not_found:10203,core_swap_route_transaction_not_found:10204,core_swap_contract_not_supported:10205,core_swap_transaction_error:10206,core_swap_quote_mode_not_supported:10207,core_transaction_deposit_error:10301,core_transaction_create_liquidity_base_error:10302,core_transaction_create_liquidity_asset_error:10303,core_transaction_create_liquidity_invalid_params:10304,core_transaction_add_liquidity_invalid_params:10305,core_transaction_add_liquidity_base_address:10306,core_transaction_add_liquidity_base_error:10307,core_transaction_add_liquidity_asset_error:10308,core_transaction_withdraw_error:10309,core_transaction_deposit_to_pool_error:10310,core_transaction_deposit_insufficient_funds_error:10311,core_transaction_deposit_gas_error:10312,core_transaction_invalid_sender_address:10313,core_transaction_deposit_server_error:10314,core_transaction_user_rejected:10315,core_transaction_failed:10316,core_transaction_invalid_recipient_address:10317,wallet_connection_rejected_by_user:20000,wallet_missing_api_key:20001,wallet_chain_not_supported:20002,wallet_missing_params:20003,wallet_provider_not_found:20004,wallet_failed_to_add_or_switch_network:20005,wallet_ledger_connection_error:20101,wallet_ledger_connection_claimed:20102,wallet_ledger_get_address_error:20103,wallet_ledger_device_not_found:20104,wallet_ledger_device_locked:20105,wallet_phantom_not_found:20201,wallet_xdefi_not_found:20301,wallet_xdefi_send_transaction_no_address:20302,wallet_xdefi_contract_address_not_provided:20303,wallet_xdefi_asset_not_defined:20304,wallet_walletconnect_project_id_not_specified:20401,wallet_walletconnect_connection_not_established:20402,wallet_walletconnect_namespace_not_supported:20403,wallet_trezor_failed_to_sign_transaction:20501,wallet_trezor_derivation_path_not_supported:20502,wallet_trezor_failed_to_get_address:20503,wallet_talisman_not_enabled:20601,wallet_talisman_not_found:20602,wallet_polkadot_not_found:20701,wallet_radix_not_found:20801,wallet_radix_transaction_failed:20802,wallet_onekey_no_device_found:20803,chainflip_channel_error:30001,chainflip_unknown_asset:30002,chainflip_broker_invalid_params:30100,chainflip_broker_recipient_error:30101,chainflip_broker_register:30102,chainflip_broker_tx_error:30103,chainflip_broker_withdraw:30104,chainflip_broker_fund_only_flip_supported:30105,chainflip_broker_fund_invalid_address:30106,thorchain_chain_halted:40001,thorchain_trading_halted:40002,thorchain_swapin_router_required:40100,thorchain_swapin_vault_required:40101,thorchain_swapin_memo_required:40102,thorchain_swapin_token_required:40103,thorchain_preferred_asset_payout_required:40104,api_v2_invalid_response:50001,api_v2_server_error:50002,toolbox_cosmos_signer_not_defined:90101,toolbox_cosmos_no_accounts_found:90102,toolbox_cosmos_verify_signature_no_pubkey:90103,toolbox_evm_no_abi_fragment:90201,toolbox_evm_no_signer:90202,toolbox_evm_no_signer_address:90203,toolbox_evm_no_from_address:90204,toolbox_evm_no_contract_address:90205,toolbox_evm_no_fee_data:90206,toolbox_evm_no_gas_price:90207,toolbox_evm_no_to_address:90208,toolbox_evm_invalid_gas_asset_address:90209,toolbox_evm_provider_not_eip1193_compatible:90210,toolbox_evm_error_estimating_gas_limit:90211,toolbox_evm_error_sending_transaction:90212,toolbox_radix_signer_not_defined:90301,helpers_invalid_number_different_decimals:99000,helpers_invalid_number_of_years:99001,helpers_invalid_identifier:99002,helpers_invalid_asset_url:99003,helpers_invalid_asset_identifier:99004,helpers_invalid_memo_type:99005,helpers_failed_to_switch_network:99103,helpers_not_found_provider:99200,not_implemented:99999};class L extends Error{static ErrorCode=Xn;constructor(n,h){const t=typeof n==="string",o=t?n:n.errorKey;if(h)console.error(h,{stack:h?.stack,message:h?.message});super(o,{cause:{code:L.ErrorCode[o],message:`${o}${t?"":`: ${JSON.stringify(n.info)}`}`}});Object.setPrototypeOf(this,L.prototype)}}function bh(n){if(n<0)throw new L({errorKey:"helpers_invalid_number_of_years",info:{numberOfYears:n}});return 10+n}function Kh(n){if(n<0)throw new L({errorKey:"helpers_invalid_number_of_years",info:{numberOfYears:n}});return Math.round((10+n*1.0512)*10000000000)/10000000000}function Dh(n,h){try{return n()}catch(t){if(h)throw new L(h,t);return console.error(t)}}function Uh(n){switch(n){case"THOR":return`${n}.RUNE`;case"GAIA":return`${n}.ATOM`;case"BSC":return`${n}`;default:return`${n}.${n}`}}function xn(n,h){if(!yn&&n){if(on.has(h))return;on.add(h),console.warn(h)}}async function ah(n="thorchain-1"){if(!["thorchain-stagenet-v2","thorchain-1","thorchain-mainnet-v1"].includes(n))return n;try{return(await y.get(`${n!=="thorchain-1"?"https://stagenet-rpc.ninerealms.com":"https://rpc.thorswap.net"}/status`)).result.node_info.network}catch(h){return n}}var yn=["production","test"].includes("development"),on=new Set;function sn(n=""){const h=n.toUpperCase(),[t]=h.split(".");if(cn.includes(t))return!0;const[o]=h.split("/");if(cn.includes(o))return!0;throw new L({errorKey:"helpers_invalid_identifier",info:{message:`Invalid identifier: ${n}. Expected format: <Chain>.<Ticker> or <Chain>.<Ticker>-<ContractAddress>`,identifier:n}})}function ih(n){if(n.length>30)return!1;const h=/^[a-zA-Z0-9+_-]+$/g;return!!n.match(h)}var cn=[...Object.values(g),"TERRA"];function J({value:n,bigIntDecimal:h=f,decimal:t=f}){if(t===0)return n.toString();const o=n<0n;let x=n.toString().substring(o?1:0);const s=t-(x.length-1);if(s>0)x="0".repeat(s)+x;const H=x.length-t;let R=x.slice(-t);if(Number.parseInt(R[h]||"0")>=5)R=`${R.substring(0,h-1)}${(Number.parseInt(R[h-1]||"0")+1).toString()}`;else R=R.substring(0,h);return`${o?"-":""}${x.slice(0,H)}.${R}`.replace(/\.?0*$/,"")}function D(n){const t=`${typeof n==="number"?Jn.format(n):m(n)}`.replaceAll(",",".").split(".");return t.length>1?`${t.slice(0,-1).join("")}.${t.at(-1)}`:t[0]||"0"}function Hn(n){const h=n.split(".")[1]?.length||0;return Math.max(h,f)}function m(n){return typeof n==="object"?"getValue"in n?n.getValue("string"):n.value:n}var f=8,p=(n)=>10n**BigInt(n),Y=(n)=>Math.log10(Number.parseFloat(n.toString()));class u{decimalMultiplier=10n**8n;bigIntValue=0n;decimal;static fromBigInt(n,h){return new u({decimal:h,value:J({value:n,bigIntDecimal:h,decimal:h})})}static shiftDecimals({value:n,from:h,to:t}){return u.fromBigInt(n.getBaseValue("bigint")*p(t)/p(h),t)}constructor(n){const h=m(n),t=typeof n==="object";this.decimal=t?n.decimal:void 0,this.decimalMultiplier=t&&"decimalMultiplier"in n?n.decimalMultiplier:p(Math.max(Hn(D(h)),this.decimal||0)),this.#x(h)}set(n){return new this.constructor({decimal:this.decimal,value:n,identifier:this.toString({includeSynthProtocol:!0})})}add(...n){return this.#h("add",...n)}sub(...n){return this.#h("sub",...n)}mul(...n){return this.#h("mul",...n)}div(...n){return this.#h("div",...n)}gt(n){return this.#n("gt",n)}gte(n){return this.#n("gte",n)}lt(n){return this.#n("lt",n)}lte(n){return this.#n("lte",n)}eqValue(n){return this.#n("eqValue",n)}getValue(n){const h=this.formatBigIntToSafeValue(this.bigIntValue,this.decimal||Y(this.decimalMultiplier));switch(n){case"number":return Number(h);case"string":return h;case"bigint":return this.bigIntValue*10n**BigInt(this.decimal||8n)/this.decimalMultiplier}}getBaseValue(n){const h=this.decimalMultiplier/p(this.decimal||N.THOR),t=this.bigIntValue/h;switch(n){case"number":return Number(t);case"string":return t.toString();case"bigint":return t}}getBigIntValue(n,h){if(!h&&typeof n==="object")return n.bigIntValue;const t=m(n),o=D(t);if(o==="0"||o==="undefined")return 0n;return this.#o(o,h)}toSignificant(n=6){const[h,t]=this.getValue("string").split("."),o=h||"",x=t||"";if((Number.parseInt(o)?o.length+x.length:x.length)<=n)return this.getValue("string");if(o.length>=n)return o.slice(0,n).padEnd(o.length,"0");if(Number.parseInt(o))return`${o}.${x.slice(0,n-o.length)}`.padEnd(n-o.length,"0");const H=Number.parseInt(x),R=`${H}`.slice(0,n);return`0.${R.padStart(x.length-`${H}`.length+R.length,"0")}`}toFixed(n=6){const[h,t]=this.getValue("string").split("."),o=h||"",x=t||"";if(Number.parseInt(o))return`${o}.${x.slice(0,n)}`.padEnd(n,"0");const s=Number.parseInt(x),H=`${s}`.slice(0,n);return`0.${H.padStart(x.length-`${s}`.length+H.length,"0")}`}toAbbreviation(n=2){const h=this.getValue("number"),t=["","K","M","B","T","Q","Qi","S"],o=Math.floor(Math.log10(Math.abs(h))/3),x=t[o];if(!x)return this.getValue("string");const s=10**(o*3);return`${(h/s).toFixed(n)}${x}`}toCurrency(n="$",{currencyPosition:h="start",decimal:t=2,decimalSeparator:o=".",thousandSeparator:x=","}={}){const s=this.getValue("number"),[H="",R=""]=s.toFixed(6).split("."),T=H.replace(/\B(?=(\d{3})+(?!\d))/g,x),A=H||R?H==="0"?`${Number.parseFloat(`0.${R}`)}`.replace(".",o):`${T}${Number.parseInt(R)?`${o}${R.slice(0,t)}`:""}`:"0.00";return`${h==="start"?n:""}${A}${h==="end"?n:""}`}formatBigIntToSafeValue(n,h){const t=h||this.decimal||f,o=Math.max(t,Y(this.decimalMultiplier)),x=n<0n,s=n.toString().substring(x?1:0),H=o-(s.length-1),R=H>0?"0".repeat(H)+s:s,T=R.length-o;let A=R.slice(-o);if(Number.parseInt(A[t]||"0")>=5)A=`${A.substring(0,t-1)}${(Number.parseInt(A[t-1]||"0")+1).toString()}`;else A=A.substring(0,t);return`${x?"-":""}${R.slice(0,T)}.${A}`.replace(/\.?0*$/,"")}#h(n,...h){const t=this.#t(this,...h),o=Math.max(t,Y(this.decimalMultiplier)),x=p(o),s=h.reduce((R,T)=>{const A=this.getBigIntValue(T,o);switch(n){case"add":return R+A;case"sub":return R-A;case"mul":return R*A/x;case"div":{if(A===0n)throw new RangeError("Division by zero");return R*x/A}default:return R}},this.bigIntValue*x/this.decimalMultiplier),H=J({bigIntDecimal:o,decimal:o,value:s});return new this.constructor({decimalMultiplier:p(o),decimal:this.decimal,value:H,identifier:this.toString()})}#n(n,...h){const t=this.#t(this,...h),o=this.getBigIntValue(h[0]||"0",t),x=this.getBigIntValue(this,t);switch(n){case"gt":return x>o;case"gte":return x>=o;case"lt":return x<o;case"lte":return x<=o;case"eqValue":return x===o}}#x(n){const h=D(n)||"0";this.bigIntValue=this.#o(h)}#t(...n){const h=n.map((t)=>{return typeof t==="object"?t.decimal||Y(t.decimalMultiplier):Hn(D(t))}).filter(Boolean);return Math.max(...h,f)}#o(n,h){const t=h?p(h):this.decimalMultiplier,o=Y(t),[x="",s=""]=n.split(".");return BigInt(`${x}${s.padEnd(o,"0")}`)}}var Jn=Intl.NumberFormat("fullwide",{useGrouping:!1,maximumFractionDigits:20});function ct(n){const h=$.from({chain:n});switch(n){case"BTC":case"LTC":case"BCH":case"DASH":return h.set(0.00010001);case"DOGE":return h.set(1.00000001);case"AVAX":case"ETH":case"ARB":case"BSC":return h.set(0.00000001);case"THOR":case"MAYA":return h.set(0);case"GAIA":case"KUJI":return h.set(0.000001);default:return h.set(0.00000001)}}async function wn(n,h=0){sn(n);const t=U.get(n.toUpperCase()),o=t?.decimal||await Rn(r(n));if(!t)U.set(n.toUpperCase(),{identifier:n,decimal:o});return new $({decimal:o,value:a(h,o),identifier:n})}function zn(n,h=0){const t=n.includes(".")?n.split(".")?.[0]?.toUpperCase():void 0,o=t?["MAYA","THOR"].includes(t):!1,[x,s]=o?n.split(".").slice(1).join().split("/"):n.split("/");if(!(x&&s))throw new L({errorKey:"helpers_invalid_asset_identifier",info:{identifier:n}});return new $({decimal:8,value:a(h,8),identifier:`${t||"THOR"}.${x}/${s}`})}function a(n,h){return typeof n==="bigint"?J({value:n,bigIntDecimal:h,decimal:h}):n}function r(n){const h=n.slice(0,14).includes("/"),t=n.split(".")?.[0]?.toUpperCase()==="THOR",o=n.split(".")?.[0]?.toUpperCase()==="MAYA",[x,s=""]=t||o?n.split(".").slice(1).join().split("/"):n.split("/");if(h&&!(x&&s))throw new L({errorKey:"helpers_invalid_asset_identifier",info:{identifier:n}});const H=n.includes(".")&&!h?n:`${o?"MAYA":"THOR"}.${s}`,[R,...T]=H.split("."),A=h?s:T.join("."),C=A.split("-"),G=C.length===1?C[0]:C.slice(0,-1).join("-"),S=C.length===1?void 0:C[C.length-1];return{address:S?.toLowerCase(),chain:R,isGasAsset:l({chain:R,symbol:A}),isSynthetic:h,ticker:G,symbol:(h?`${x}/`:"")+(S?`${G}-${S?.toLowerCase()??""}`:A)}}var U=new Map;class $ extends u{address;chain;isGasAsset=!1;isSynthetic=!1;symbol;tax;ticker;type;chainId;constructor({value:n,decimal:h,tax:t,chain:o,symbol:x,identifier:s}){super(typeof n==="object"?n:{decimal:h,value:n});const H=r(s||`${o}.${x}`);this.type=Cn(H),this.tax=t,this.chain=H.chain,this.ticker=H.ticker,this.symbol=H.symbol,this.address=H.address,this.isSynthetic=H.isSynthetic,this.isGasAsset=H.isGasAsset,this.chainId=nn[H.chain]}toString({includeSynthProtocol:n}={}){return this.isSynthetic&&!n?this.symbol:`${this.chain}.${this.symbol}`}toUrl(){return this.isSynthetic?`${this.chain}.${this.symbol.replace("/",".")}`:this.toString()}eqAsset({chain:n,symbol:h}){return this.chain===n&&this.symbol===h}eq(n){return this.eqAsset(n)&&this.eqValue(n)}static fromUrl(n,h=0){const[t,o,x]=n.split(".");if(!(t&&o))throw new L({errorKey:"helpers_invalid_asset_url",info:{urlAsset:n}});const s=t==="THOR"&&x?`${t}.${o}/${x}`:n;return $.from({asset:s,value:h})}static from({value:n=0,fromBaseDecimal:h,asyncTokenLookup:t,...o}){const x=n instanceof u?n.getValue("string"):n,s="chain"in o,H=s?o.chain:o.asset,R=s||Fn.includes(H),{identifier:T,decimal:A}=R?An(H):{identifier:H,decimal:void 0},{chain:C,isSynthetic:G}=r(T),S=U.get(T.toUpperCase()),_=S?.decimal||A;xn(!(t||_),`Couldn't find static decimal for ${T} (Using default ${N[C]} decimal as fallback).
var $n=Object.create;var{getPrototypeOf:Ln,defineProperty:e,getOwnPropertyNames:_n}=Object;var Gn=Object.prototype.hasOwnProperty;var nn=(n,h,t)=>{t=n!=null?$n(Ln(n)):{};const x=h||!n||!n.__esModule?e(t,"default",{value:n,enumerable:!0}):t;for(let o of _n(n))if(!Gn.call(x,o))e(x,o,{get:()=>n[o],enumerable:!0});return x};var hn=((n)=>typeof require!=="undefined"?require:typeof Proxy!=="undefined"?new Proxy(n,{get:(h,t)=>(typeof require!=="undefined"?require:h)[t]}):n)(function(n){if(typeof require!=="undefined")return require.apply(this,arguments);throw Error('Dynamic require of "'+n+'" is not supported')});export*from"@swapkit/contracts";var f;((C)=>{C.Arbitrum="https://arb1.arbitrum.io/rpc";C.Avalanche="https://node-router.thorswap.net/avalanche-c";C.Base="https://base.llamarpc.com";C.BinanceSmartChain="https://bsc-dataseed.binance.org";C.Bitcoin="https://node-router.thorswap.net/bitcoin";C.BitcoinCash="https://node-router.thorswap.net/bitcoin-cash";C.Chainflip="wss://mainnet-archive.chainflip.io";C.Cosmos="https://node-router.thorswap.net/cosmos/rpc";C.Dash="https://node-router.thorswap.net/dash";C.Dogecoin="https://node-router.thorswap.net/dogecoin";C.Ethereum="https://node-router.thorswap.net/ethereum";C.Kujira="https://rpc-kujira.synergynodes.com/";C.Litecoin="https://node-router.thorswap.net/litecoin";C.Maya="https://tendermint.mayachain.info";C.MayaStagenet="https://stagenet.tendermint.mayachain.info";C.Optimism="https://mainnet.optimism.io";C.Polkadot="wss://rpc.polkadot.io";C.Polygon="https://polygon-rpc.com";C.Radix="https://radix-mainnet.rpc.grove.city/v1/326002fc/core";C.THORChain="https://rpc.thorswap.net";C.THORChainStagenet="https://stagenet-rpc.ninerealms.com";C.Solana="https://solana-rpc.publicnode.com"})(f||={});var E;((R)=>{R.Arbitrum="https://arbiscan.io";R.Avalanche="https://snowtrace.io";R.Base="https://basescan.org";R.BinanceSmartChain="https://bscscan.com";R.Bitcoin="https://blockchair.com/bitcoin";R.BitcoinCash="https://www.blockchair.com/bitcoin-cash";R.Chainflip="https://explorer.polkascan.io/polkadot";R.Cosmos="https://www.mintscan.io/cosmos";R.Dash="https://blockchair.com/dash";R.Dogecoin="https://blockchair.com/dogecoin";R.Ethereum="https://etherscan.io";R.Kujira="https://finder.kujira.network/kaiyo-1";R.Litecoin="https://blockchair.com/litecoin";R.Maya="https://www.mayascan.org";R.Optimism="https://optimistic.etherscan.io";R.Polkadot="https://polkadot.subscan.io";R.Polygon="https://polygonscan.com";R.Radix="https://dashboard.radixdlt.com";R.THORChain="https://runescan.io";R.Solana="https://solscan.io"})(E||={});var I;((R)=>{R.Arbitrum="ARB";R.Avalanche="AVAX";R.Base="BASE";R.BinanceSmartChain="BSC";R.Bitcoin="BTC";R.BitcoinCash="BCH";R.Cosmos="GAIA";R.Dash="DASH";R.Dogecoin="DOGE";R.Ethereum="ETH";R.Kujira="KUJI";R.Litecoin="LTC";R.Maya="MAYA";R.Optimism="OP";R.Polkadot="DOT";R.Chainflip="FLIP";R.Polygon="MATIC";R.Radix="XRD";R.THORChain="THOR";R.Solana="SOL"})(I||={});var z;((A)=>{A.Arbitrum="42161";A.ArbitrumHex="0xa4b1";A.Avalanche="43114";A.AvalancheHex="0xa86a";A.Base="8453";A.BaseHex="0x2105";A.BinanceSmartChain="56";A.BinanceSmartChainHex="0x38";A.Bitcoin="bitcoin";A.BitcoinCash="bitcoincash";A.Chainflip="chainflip";A.Cosmos="cosmoshub-4";A.Dash="dash";A.Dogecoin="dogecoin";A.Kujira="kaiyo-1";A.Ethereum="1";A.EthereumHex="0x1";A.Litecoin="litecoin";A.Maya="mayachain-mainnet-v1";A.MayaStagenet="mayachain-stagenet-v1";A.Optimism="10";A.OptimismHex="0xa";A.Polkadot="polkadot";A.Polygon="137";A.PolygonHex="0x89";A.Radix="radix-mainnet";A.THORChain="thorchain-1";A.THORChainStagenet="thorchain-stagenet-v2";A.Solana="solana"})(z||={});var sh={["0xa4b1"]:"ARB",["42161"]:"ARB",["0xa86a"]:"AVAX",["43114"]:"AVAX",["0x2105"]:"BASE",["8453"]:"BASE",["0x38"]:"BSC",["56"]:"BSC",["bitcoincash"]:"BCH",["bitcoin"]:"BTC",["chainflip"]:"FLIP",["cosmoshub-4"]:"GAIA",["dash"]:"DASH",["dogecoin"]:"DOGE",["0x1"]:"ETH",["kaiyo-1"]:"KUJI",["1"]:"ETH",["litecoin"]:"LTC",["mayachain-stagenet-v1"]:"MAYA",["mayachain-mainnet-v1"]:"MAYA",["0xa"]:"OP",["10"]:"OP",["polkadot"]:"DOT",["0x89"]:"MATIC",["137"]:"MATIC",["radix-mainnet"]:"XRD",["thorchain-stagenet-v2"]:"THOR",["thorchain-1"]:"THOR",["solana"]:"SOL"},In=Object.keys(I),Z=Object.values(I),T={ARB:18,AVAX:18,BASE:18,BCH:8,BSC:18,BTC:8,DASH:8,DOGE:8,DOT:10,ETH:18,FLIP:18,GAIA:6,KUJI:6,LTC:8,MATIC:18,MAYA:8,OP:18,SOL:9,THOR:8,XRD:18},Th=["DOT","FLIP"],M=["ARB","AVAX","BASE","BSC","ETH","OP","MATIC"],kh=["BTC","BCH","DASH","DOGE","LTC"],Oh=["GAIA","THOR","MAYA","KUJI"],$h=["AVAX","BSC","BTC","BCH","GAIA","DOGE","ETH","LTC","THOR"],Lh=["ARB","DASH","ETH","KUJI","MAYA","THOR"],V=Z.reduce((n,h)=>{const t=In.find((x)=>I[x]===h);if(t)n[h]=t;return n},{}),tn=Z.reduce((n,h)=>{return n[h]=z[V[h]],n},{}),v=Z.reduce((n,h)=>{return n[h]=f[V[h]],n},{}),_h=Z.reduce((n,h)=>{const t=`${V[h]}Hex`;return n[h]=z[t],n},{}),Gh=Z.reduce((n,h)=>{return n[h]=E[V[h]],n},{});var gn;((O)=>{O.TC_SUPPORTED_TO_TC_SUPPORTED="TC-TC";O.TC_SUPPORTED_TO_ETH="TC-ERC20";O.TC_SUPPORTED_TO_AVAX="TC-ARC20";O.TC_SUPPORTED_TO_BSC="TC-BEP20";O.ETH_TO_TC_SUPPORTED="ERC20-TC";O.ETH_TO_ETH="ERC20-ERC20";O.ETH_TO_AVAX="ERC20-ARC20";O.ETH_TO_BSC="ERC20-BEP20";O.AVAX_TO_TC_SUPPORTED="ARC20-TC";O.AVAX_TO_ETH="ARC20-ERC20";O.AVAX_TO_AVAX="ARC20-ARC20";O.AVAX_TO_BSC="ARC20-BEP20";O.BSC_TO_TC_SUPPORTED="BEP20-TC";O.BSC_TO_ETH="BEP20-ERC20";O.BSC_TO_AVAX="BEP20-ARC20";O.BSC_TO_BSC="BEP20-BEP20"})(gn||={});var gh=["ERC20-ERC20","ARC20-ARC20","BEP20-BEP20"],Ph=["ERC20-TC","ERC20-ARC20","ERC20-BEP20","ARC20-TC","ARC20-ERC20","ARC20-BEP20","BEP20-TC","BEP20-ERC20","BEP20-ARC20"],jh=["TC-TC","TC-ERC20","TC-ARC20","TC-BEP20"];var Pn;((B)=>{B.ARB="0x0000000000000000000000000000000000000000";B.AVAX="0x0000000000000000000000000000000000000000";B.BASE="0x0000000000000000000000000000000000000000";B.ETH="0x0000000000000000000000000000000000000000";B.BSC="0x0000000000000000000000000000000000000000";B.MATIC="0x0000000000000000000000000000000000001010";B.OP="0x4200000000000000000000000000000000000042"})(Pn||={});var jn;((R)=>{R.ARB="m/44'/60'/0'/0";R.AVAX="m/44'/60'/0'/0";R.BASE="m/44'/60'/0'/0";R.BCH="m/44'/145'/0'/0";R.BSC="m/44'/60'/0'/0";R.BTC="m/84'/0'/0'/0";R.DASH="m/44'/5'/0'/0";R.DOGE="m/44'/3'/0'/0";R.DOT="////";R.ETH="m/44'/60'/0'/0";R.FLIP="////";R.GAIA="m/44'/118'/0'/0";R.KUJI="m/44'/118'/0'/0";R.LTC="m/84'/2'/0'/0";R.MATIC="m/44'/60'/0'/0";R.MAYA="m/44'/931'/0'/0";R.OP="m/44'/60'/0'/0";R.SOL="m/44'/501'/0'/0";R.THOR="m/44'/931'/0'/0";R.XRD="////"})(jn||={});var a={ARB:[44,60,0,0,0],AVAX:[44,60,0,0,0],BASE:[44,60,0,0,0],BCH:[44,145,0,0,0],BSC:[44,60,0,0,0],BTC:[84,0,0,0,0],DASH:[44,5,0,0,0],DOGE:[44,3,0,0,0],ETH:[44,60,0,0,0],GAIA:[44,118,0,0,0],KUJI:[44,118,0,0,0],LTC:[84,2,0,0,0],MATIC:[44,60,0,0,0],MAYA:[44,931,0,0,0],OP:[44,60,0,0,0],SOL:[44,501,0,0,0],THOR:[44,931,0,0,0],XRD:[0,0,0,0,0],DOT:[0,0,0,0,0],FLIP:[0,0,0,0,0]};var xn;((C)=>{C.BRAVE="BRAVE";C.COINBASE_MOBILE="COINBASE_MOBILE";C.COINBASE_WEB="COINBASE_WEB";C.EIP6963="EIP6963";C.EXODUS="EXODUS";C.KEEPKEY="KEEPKEY";C.KEPLR="KEPLR";C.KEYSTORE="KEYSTORE";C.LEAP="LEAP";C.LEDGER="LEDGER";C.LEDGER_LIVE="LEDGER_LIVE";C.METAMASK="METAMASK";C.OKX="OKX";C.OKX_MOBILE="OKX_MOBILE";C.PHANTOM="PHANTOM";C.POLKADOT_JS="POLKADOT_JS";C.RADIX_WALLET="RADIX_WALLET";C.TREZOR="TREZOR";C.TALISMAN="TALISMAN";C.TRUSTWALLET_WEB="TRUSTWALLET_WEB";C.WALLETCONNECT="WALLETCONNECT";C.XDEFI="XDEFI"})(xn||={});var Xn;((x)=>{x[x.NoError=36864]="NoError";x[x.LockedDevice=21781]="LockedDevice";x[x.TC_NotFound=65535]="TC_NotFound"})(Xn||={});var un;((x)=>{x.Average="average";x.Fast="fast";x.Fastest="fastest"})(un||={});var Sn;((t)=>{t.Approve="approve";t.CheckOnly="checkOnly"})(Sn||={});var on;((s)=>{s.NAME_REGISTER="~";s.BOND="BOND";s.DEPOSIT="+";s.LEAVE="LEAVE";s.UNBOND="UNBOND";s.WITHDRAW="-";s.OPEN_LOAN="$+";s.CLOSE_LOAN="$-";s.RUNEPOOL_DEPOSIT="POOL+";s.RUNEPOOL_WITHDRAW="POOL-"})(on||={});var pn;((c)=>{c.unknownError="unknownError";c.test_error="test_error";c.providerDetailsError="providerDetailsError";c.blockHeaderNotFound="blockHeaderNotFound";c.blockHashNotFoundAtHeight="blockHashNotFoundAtHeight";c.blockHashNotFoundAtHash="blockHashNotFoundAtHash";c.txHashMissing="txHashMissing";c.assetValueMissingInfo="assetValueMissingInfo";c.invalidAsset="invalidAsset";c.blockIsRequired="blockIsRequired";c.currentBlockHeaderNotFound="currentBlockHeaderNotFound";c.failedToRetrieveBalance="failedToRetrieveBalance";c.failedToRetrieveBlock="failedToRetrieveBlock";c.failedToRetrieveFees="failedToRetrieveFees";c.notImplementedBCH="notImplementedBCH";c.notImplementedDoge="notImplementedDoge";c.noPoolsFound="noPoolsFound";c.noVaultsFound="noVaultsFound";c.noTxFound="noTxFound";c.noInputCoinFound="noInputCoinFound";c.noBlockDataFound="noBlockDataFound";c.multipleCosmosMessages="multipleCosmosMessages";c.heightOrHashNotProvided="heightOrHashNotProvided";c.unknownDenom="unknownDenom";c.invalidBlockHeight="invalidBlockHeight";c.timestampExtrinsicNoArgumentsForBlock="timestampExtrinsicNoArgumentsForBlock";c.timestampExtrinsicNoTimestampForBlock="timestampExtrinsicNoTimestampForBlock";c.noTimestampExtrinsicForHash="noTimestampExtrinsicForHash";c.timestampExtrinsicNoArgumentsForHash="timestampExtrinsicNoArgumentsForHash";c.txMemoUndefined="txMemoUndefined";c.txMemoIncorrect="txMemoIncorrect";c.txTypeNotFound="txTypeNotFound";c.txNoMessage="txNoMessage";c.txNotFound="txNotFound";c.txReceiptNotFound="txReceiptNotFound";c.txParsingError="txParsingError";c.blockNotFound="blockNotFound";c.balanceNotFound="balanceNotFound";c.configError="configError";c.noQuoteResponse="noQuoteResponse";c.noPoolAssetsFound="noPoolAssetsFound";c.noThorchainPools="noThorchainPools";c.noMayachainPools="noMayachainPools";c.invalidAffiliateFee="invalidAffiliateFee";c.invalidBuyAssetAddress="invalidBuyAssetAddress";c.invalidSellAssetAddress="invalidSellAssetAddress";c.invalidSourceAddress="invalidSourceAddress";c.invalidDestinationAddress="invalidDestinationAddress";c.sourceAddressIsSmartContract="sourceAddressIsSmartContract";c.destinationAddressIsSmartContract="destinationAddressIsSmartContract";c.invalidChainId="invalidChainId";c.unsupportedChainId="unsupportedChainId";c.unsupportedEVMChainId="unsupportedEVMChainId";c.noWhitelistTokens="noWhitelistTokens";c.failedFetchGasPrice="failedFetchGasPrice";c.failedToCreateDepositChannel="failedToCreateDepositChannel";c.noProviderDetailsFound="noProviderDetailsFound";c.noTokenListsFound="noTokenListsFound";c.tokenNotFound="tokenNotFound";c.tokenPriceNotFound="tokenPriceNotFound";c.swapAmountTooSmall="swapAmountTooSmall";c.legsArrayIsEmpty="legsArrayIsEmpty";c.failedToFetchQuoteForLeg="failedToFetchQuoteForLeg";c.noBlockHeaderFound="noBlockHeaderFound";c.failedToSimulateSwap="failedToSimulateSwap";c.addressScreeningFailed="addressScreeningFailed";c.noLiquidtyProvidersFound="noLiquidtyProvidersFound";c.noSaversFound="noSaversFound";c.noInboundAddressesFound="noInboundAddressesFound";c.noInboundAddressFoundForChain="noInboundAddressFoundForChain";c.noLastBlocksFound="noLastBlocksFound";c.noVersionFound="noVersionFound";c.noConstantsFound="noConstantsFound";c.noMimirsFound="noMimirsFound";c.noRoutesFound="noRoutesFound";c.quoteNotFound="quoteNotFound";c.ledgerSignFailed="ledgerSignFailed";c.ledgerFetchSwapFailed="ledgerFetchSwapFailed";c.failedToFetchTx="failedToFetchTx";c.failedBuildTransactionDetails="failedBuildTransactionDetails";c.noLegsForRoute="noLegsForRoute";c.noRouterAddressFound="noRouterAddressFound";c.noAggregatorAddressFound="noAggregatorAddressFound";c.noContractInstanceFound="noContractInstanceFound";c.noContractAddressFound="noContractAddressFound";c.invalidAffiliate="invalidAffiliate";c.providerNotfound="No provider found";c.noRecordFound="No Record found";c.slippageTooLow="Slippage too low";c.tradingHalted="tradingHalted";c.noWrappedGasAsset="noWrappedGasAsset";c.aggregatorAddressNotFound="aggregatorAddressNotFound";c.routerAddressNotFound="routerAddressNotFound";c.dummyAddressNotFound="dummyAddressNotFound";c.trackerError="trackerError";c.noOhlcvDataFound="noOhlcvDataFound";c.noTradingPairs="noTradingPairs";c.noLoanPositionFound="noLoanPositionFound";c.noLendingAvailability="noLendingAvailability";c.lendingRepayTooSmall="lendingRepayTooSmall";c.missingState="missingState";c.ledgerSwapNotFound="ledgerSwapNotFound";c.ledgerSwapNotReadyForTracking="ledgerSwapNotReadyForTracking";c.errorEstimatingGas="errorEstimatingGas";c.apiKeyInvalid="apiKeyInvalid";c.apiKeyFailedToUpdate="apiKeyFailedToUpdate";c.apiKeyExpired="apiKeyExpired";c.unauthorized="unauthorized";c.failedToCreateMemo="failedToCreateMemo";c.radixIncorrectInstructions="radixIncorrectInstructions";c.invalidAddressForChain="invalidAddressForChain"})(pn||={});var yn;((t)=>{t.highSlippage="highSlippage";t.highPriceImpact="highPriceImpact"})(yn||={});var Jn;(($)=>{$.CHAINFLIP="CHAINFLIP";$.MAYACHAIN="MAYACHAIN";$.MAYACHAIN_STREAMING="MAYACHAIN_STREAMING";$.ONEINCH="ONEINCH";$.PANCAKESWAP="PANCAKESWAP";$.PANGOLIN_V1="PANGOLIN_V1";$.SUSHISWAP_V2="SUSHISWAP_V2";$.THORCHAIN="THORCHAIN";$.THORCHAIN_STREAMING="THORCHAIN_STREAMING";$.TRADERJOE_V2="TRADERJOE_V2";$.UNISWAP_V2="UNISWAP_V2";$.UNISWAP_V3="UNISWAP_V3";$.CAVIAR_V1="CAVIAR_V1"})(Jn||={});var wn;((F)=>{F.LIQUIDITY="liquidity";F.NETWORK="network";F.INBOUND="inbound";F.OUTBOUND="outbound";F.AFFILIATE="affiliate";F.TAX="tax"})(wn||={});function Vh({apiKey:n,...h}){d={...h,apiKey:n}}async function b(n,h){const{apiKey:t,...x}=d,{searchParams:o,json:H,body:F}=h,B={...zn,...x.headers,...h.headers,...H?{"Content-Type":"application/json"}:{}},k=H?JSON.stringify(H):F,N=new URL(n);if(o)N.search=new URLSearchParams(o).toString();if(t)B["x-api-key"]=t;try{const G=await(await fetch(N.toString(),{...x,...h,body:k,headers:B})).json();if(h.responseHandler)return h.responseHandler(G);return G}catch(s){if(h.onError)return h.onError(s);console.error(s)}}var d={},zn=typeof window!=="undefined"?{}:{referrer:"https://sk.thorswap.net",referer:"https://sk.thorswap.net"},J={get:async(n,h)=>b(n,{...h,method:"GET"}),post:async(n,h)=>b(n,{...h,method:"POST"}),extend:(n)=>{const h={...d,...n};return{get:async(t,x)=>b(t,{...h,...x,method:"GET"}),post:async(t,x)=>b(t,{...h,...x,method:"POST"}),extend:(t)=>J.extend({...h,...t})}}};var Zn={core_estimated_max_spendable_chain_not_supported:10002,core_extend_error:10003,core_inbound_data_not_found:10004,core_approve_asset_address_or_from_not_found:10005,core_plugin_not_found:10006,core_plugin_swap_not_found:10007,core_approve_asset_target_invalid:10008,core_explorer_unsupported_chain:10009,core_verify_message_not_supported:10010,core_chain_halted:10099,core_wallet_connection_not_found:10100,core_wallet_xdefi_not_installed:10101,core_wallet_evmwallet_not_installed:10102,core_wallet_walletconnect_not_installed:10103,core_wallet_keystore_not_installed:10104,core_wallet_ledger_not_installed:10105,core_wallet_trezor_not_installed:10106,core_wallet_keplr_not_installed:10107,core_wallet_okx_not_installed:10108,core_wallet_keepkey_not_installed:10109,core_wallet_talisman_not_installed:10110,core_wallet_not_keypair_wallet:10111,core_wallet_sign_message_not_supported:10110,core_swap_invalid_params:10200,core_swap_route_not_complete:10201,core_swap_asset_not_recognized:10202,core_swap_contract_not_found:10203,core_swap_route_transaction_not_found:10204,core_swap_contract_not_supported:10205,core_swap_transaction_error:10206,core_swap_quote_mode_not_supported:10207,core_transaction_deposit_error:10301,core_transaction_create_liquidity_base_error:10302,core_transaction_create_liquidity_asset_error:10303,core_transaction_create_liquidity_invalid_params:10304,core_transaction_add_liquidity_invalid_params:10305,core_transaction_add_liquidity_base_address:10306,core_transaction_add_liquidity_base_error:10307,core_transaction_add_liquidity_asset_error:10308,core_transaction_withdraw_error:10309,core_transaction_deposit_to_pool_error:10310,core_transaction_deposit_insufficient_funds_error:10311,core_transaction_deposit_gas_error:10312,core_transaction_invalid_sender_address:10313,core_transaction_deposit_server_error:10314,core_transaction_user_rejected:10315,core_transaction_failed:10316,core_transaction_invalid_recipient_address:10317,wallet_connection_rejected_by_user:20000,wallet_missing_api_key:20001,wallet_chain_not_supported:20002,wallet_missing_params:20003,wallet_provider_not_found:20004,wallet_failed_to_add_or_switch_network:20005,wallet_ledger_connection_error:20101,wallet_ledger_connection_claimed:20102,wallet_ledger_get_address_error:20103,wallet_ledger_device_not_found:20104,wallet_ledger_device_locked:20105,wallet_phantom_not_found:20201,wallet_xdefi_not_found:20301,wallet_xdefi_send_transaction_no_address:20302,wallet_xdefi_contract_address_not_provided:20303,wallet_xdefi_asset_not_defined:20304,wallet_walletconnect_project_id_not_specified:20401,wallet_walletconnect_connection_not_established:20402,wallet_walletconnect_namespace_not_supported:20403,wallet_trezor_failed_to_sign_transaction:20501,wallet_trezor_derivation_path_not_supported:20502,wallet_trezor_failed_to_get_address:20503,wallet_talisman_not_enabled:20601,wallet_talisman_not_found:20602,wallet_polkadot_not_found:20701,wallet_radix_not_found:20801,wallet_radix_transaction_failed:20802,chainflip_channel_error:30001,chainflip_unknown_asset:30002,chainflip_broker_invalid_params:30100,chainflip_broker_recipient_error:30101,chainflip_broker_register:30102,chainflip_broker_tx_error:30103,chainflip_broker_withdraw:30104,chainflip_broker_fund_only_flip_supported:30105,chainflip_broker_fund_invalid_address:30106,thorchain_chain_halted:40001,thorchain_trading_halted:40002,thorchain_swapin_router_required:40100,thorchain_swapin_vault_required:40101,thorchain_swapin_memo_required:40102,thorchain_swapin_token_required:40103,thorchain_preferred_asset_payout_required:40104,api_v2_invalid_response:50001,api_v2_server_error:50002,toolbox_cosmos_signer_not_defined:90101,toolbox_cosmos_no_accounts_found:90102,toolbox_cosmos_verify_signature_no_pubkey:90103,toolbox_evm_no_abi_fragment:90201,toolbox_evm_no_signer:90202,toolbox_evm_no_signer_address:90203,toolbox_evm_no_from_address:90204,toolbox_evm_no_contract_address:90205,toolbox_evm_no_fee_data:90206,toolbox_evm_no_gas_price:90207,toolbox_evm_no_to_address:90208,toolbox_evm_invalid_gas_asset_address:90209,toolbox_evm_provider_not_eip1193_compatible:90210,toolbox_evm_error_estimating_gas_limit:90211,toolbox_evm_error_sending_transaction:90212,toolbox_radix_signer_not_defined:90301,helpers_invalid_number_different_decimals:99000,helpers_invalid_number_of_years:99001,helpers_invalid_identifier:99002,helpers_invalid_asset_url:99003,helpers_invalid_asset_identifier:99004,helpers_invalid_memo_type:99005,helpers_failed_to_switch_network:99103,helpers_not_found_provider:99200,not_implemented:99999};class _ extends Error{static ErrorCode=Zn;constructor(n,h){const t=typeof n==="string",x=t?n:n.errorKey;if(h)console.error(h,{stack:h?.stack,message:h?.message});super(x,{cause:{code:_.ErrorCode[x],message:`${x}${t?"":`: ${JSON.stringify(n.info)}`}`}});Object.setPrototypeOf(this,_.prototype)}}function vh(n){if(n<0)throw new _({errorKey:"helpers_invalid_number_of_years",info:{numberOfYears:n}});return 10+n}function ah(n){if(n<0)throw new _({errorKey:"helpers_invalid_number_of_years",info:{numberOfYears:n}});return Math.round((10+n*1.0512)*10000000000)/10000000000}function dh(n,h){try{return n()}catch(t){if(h)throw new _(h,t);return console.error(t)}}function mh(n){switch(n){case"THOR":return`${n}.RUNE`;case"GAIA":return`${n}.ATOM`;case"BSC":return`${n}`;default:return`${n}.${n}`}}function Hn(n,h){if(!Yn&&n){if(cn.has(h))return;cn.add(h),console.warn(h)}}async function ih(n="thorchain-1"){if(!["thorchain-stagenet-v2","thorchain-1","thorchain-mainnet-v1"].includes(n))return n;try{return(await J.get(`${n!=="thorchain-1"?"https://stagenet-rpc.ninerealms.com":"https://rpc.thorswap.net"}/status`)).result.node_info.network}catch(h){return n}}var Yn=["production","test"].includes("development"),cn=new Set;function Rn(n=""){const h=n.toUpperCase(),[t]=h.split(".");if(Fn.includes(t))return!0;const[x]=h.split("/");if(Fn.includes(x))return!0;throw new _({errorKey:"helpers_invalid_identifier",info:{message:`Invalid identifier: ${n}. Expected format: <Chain>.<Ticker> or <Chain>.<Ticker>-<ContractAddress>`,identifier:n}})}function nt(n){if(n.length>30)return!1;const h=/^[a-zA-Z0-9+_-]+$/g;return!!n.match(h)}var Fn=[...Object.values(I),"TERRA"];function w({value:n,bigIntDecimal:h=q,decimal:t=q}){if(t===0)return n.toString();const x=n<0n;let o=n.toString().substring(x?1:0);const H=t-(o.length-1);if(H>0)o="0".repeat(H)+o;const F=o.length-t;let B=o.slice(-t);if(Number.parseInt(B[h]||"0")>=5)B=`${B.substring(0,h-1)}${(Number.parseInt(B[h-1]||"0")+1).toString()}`;else B=B.substring(0,h);return`${x?"-":""}${o.slice(0,F)}.${B}`.replace(/\.?0*$/,"")}function K(n){const t=`${typeof n==="number"?qn.format(n):m(n)}`.replaceAll(",",".").split(".");return t.length>1?`${t.slice(0,-1).join("")}.${t.at(-1)}`:t[0]||"0"}function Bn(n){const h=n.split(".")[1]?.length||0;return Math.max(h,q)}function m(n){return typeof n==="object"?"getValue"in n?n.getValue("string"):n.value:n}var q=8,y=(n)=>10n**BigInt(n),Y=(n)=>Math.log10(Number.parseFloat(n.toString()));class u{decimalMultiplier=10n**8n;bigIntValue=0n;decimal;static fromBigInt(n,h){return new u({decimal:h,value:w({value:n,bigIntDecimal:h,decimal:h})})}static shiftDecimals({value:n,from:h,to:t}){return u.fromBigInt(n.getBaseValue("bigint")*y(t)/y(h),t)}constructor(n){const h=m(n),t=typeof n==="object";this.decimal=t?n.decimal:void 0,this.decimalMultiplier=t&&"decimalMultiplier"in n?n.decimalMultiplier:y(Math.max(Bn(K(h)),this.decimal||0)),this.#o(h)}set(n){return new this.constructor({decimal:this.decimal,value:n,identifier:this.toString({includeSynthProtocol:!0})})}add(...n){return this.#h("add",...n)}sub(...n){return this.#h("sub",...n)}mul(...n){return this.#h("mul",...n)}div(...n){return this.#h("div",...n)}gt(n){return this.#n("gt",n)}gte(n){return this.#n("gte",n)}lt(n){return this.#n("lt",n)}lte(n){return this.#n("lte",n)}eqValue(n){return this.#n("eqValue",n)}getValue(n){const h=this.formatBigIntToSafeValue(this.bigIntValue,this.decimal||Y(this.decimalMultiplier));switch(n){case"number":return Number(h);case"string":return h;case"bigint":return this.bigIntValue*10n**BigInt(this.decimal||8n)/this.decimalMultiplier}}getBaseValue(n){const h=this.decimalMultiplier/y(this.decimal||T.THOR),t=this.bigIntValue/h;switch(n){case"number":return Number(t);case"string":return t.toString();case"bigint":return t}}getBigIntValue(n,h){if(!h&&typeof n==="object")return n.bigIntValue;const t=m(n),x=K(t);if(x==="0"||x==="undefined")return 0n;return this.#x(x,h)}toSignificant(n=6){const[h,t]=this.getValue("string").split("."),x=h||"",o=t||"";if((Number.parseInt(x)?x.length+o.length:o.length)<=n)return this.getValue("string");if(x.length>=n)return x.slice(0,n).padEnd(x.length,"0");if(Number.parseInt(x))return`${x}.${o.slice(0,n-x.length)}`.padEnd(n-x.length,"0");const F=Number.parseInt(o),B=`${F}`.slice(0,n);return`0.${B.padStart(o.length-`${F}`.length+B.length,"0")}`}toFixed(n=6){const[h,t]=this.getValue("string").split("."),x=h||"",o=t||"";if(Number.parseInt(x))return`${x}.${o.slice(0,n)}`.padEnd(n,"0");const H=Number.parseInt(o),F=`${H}`.slice(0,n);return`0.${F.padStart(o.length-`${H}`.length+F.length,"0")}`}toAbbreviation(n=2){const h=this.getValue("number"),t=["","K","M","B","T","Q","Qi","S"],x=Math.floor(Math.log10(Math.abs(h))/3),o=t[x];if(!o)return this.getValue("string");const H=10**(x*3);return`${(h/H).toFixed(n)}${o}`}toCurrency(n="$",{currencyPosition:h="start",decimal:t=2,decimalSeparator:x=".",thousandSeparator:o=","}={}){const H=this.getValue("number"),[F="",B=""]=H.toFixed(6).split("."),k=F.replace(/\B(?=(\d{3})+(?!\d))/g,o),N=F||B?F==="0"?`${Number.parseFloat(`0.${B}`)}`.replace(".",x):`${k}${Number.parseInt(B)?`${x}${B.slice(0,t)}`:""}`:"0.00";return`${h==="start"?n:""}${N}${h==="end"?n:""}`}formatBigIntToSafeValue(n,h){const t=h||this.decimal||q,x=Math.max(t,Y(this.decimalMultiplier)),o=n<0n,H=n.toString().substring(o?1:0),F=x-(H.length-1),B=F>0?"0".repeat(F)+H:H,k=B.length-x;let N=B.slice(-x);if(Number.parseInt(N[t]||"0")>=5)N=`${N.substring(0,t-1)}${(Number.parseInt(N[t-1]||"0")+1).toString()}`;else N=N.substring(0,t);return`${o?"-":""}${B.slice(0,k)}.${N}`.replace(/\.?0*$/,"")}#h(n,...h){const t=this.#t(this,...h),x=Math.max(t,Y(this.decimalMultiplier)),o=y(x),H=h.reduce((B,k)=>{const N=this.getBigIntValue(k,x);switch(n){case"add":return B+N;case"sub":return B-N;case"mul":return B*N/o;case"div":{if(N===0n)throw new RangeError("Division by zero");return B*o/N}default:return B}},this.bigIntValue*o/this.decimalMultiplier),F=w({bigIntDecimal:x,decimal:x,value:H});return new this.constructor({decimalMultiplier:y(x),decimal:this.decimal,value:F,identifier:this.toString()})}#n(n,...h){const t=this.#t(this,...h),x=this.getBigIntValue(h[0]||"0",t),o=this.getBigIntValue(this,t);switch(n){case"gt":return o>x;case"gte":return o>=x;case"lt":return o<x;case"lte":return o<=x;case"eqValue":return o===x}}#o(n){const h=K(n)||"0";this.bigIntValue=this.#x(h)}#t(...n){const h=n.map((t)=>{return typeof t==="object"?t.decimal||Y(t.decimalMultiplier):Bn(K(t))}).filter(Boolean);return Math.max(...h,q)}#x(n,h){const t=h?y(h):this.decimalMultiplier,x=Y(t),[o="",H=""]=n.split(".");return BigInt(`${o}${H.padEnd(x,"0")}`)}}var qn=Intl.NumberFormat("fullwide",{useGrouping:!1,maximumFractionDigits:20});function Ct(n){const h=L.from({chain:n});switch(n){case"BTC":case"LTC":case"BCH":case"DASH":return h.set(0.00010001);case"DOGE":return h.set(1.00000001);case"AVAX":case"ETH":case"ARB":case"BSC":return h.set(0.00000001);case"THOR":case"MAYA":return h.set(0);case"GAIA":case"KUJI":return h.set(0.000001);default:return h.set(0.00000001)}}async function Qn(n,h=0){Rn(n);const x=n.includes("SOL.")?n:n.toUpperCase(),o=D.get(x),H=o?.decimal||await Nn(i(n));if(!o)D.set(x,{identifier:n,decimal:H});return new L({decimal:H,value:U(h,H),identifier:n})}function Wn(n,h=0){const t=n.includes(".")?n.split(".")?.[0]?.toUpperCase():void 0,x=t?["MAYA","THOR"].includes(t):!1,o=n.slice(0,14).includes("~")?"~":"/",[H,F]=x?n.split(".").slice(1).join().split(o):n.split(o);if(!(H&&F))throw new _({errorKey:"helpers_invalid_asset_identifier",info:{identifier:n}});return new L({decimal:8,value:U(h,8),identifier:`${t||"THOR"}.${H}${o}${F}`})}function U(n,h){return typeof n==="bigint"?w({value:n,bigIntDecimal:h,decimal:h}):n}function i(n){const h=n.slice(0,14).includes("/"),t=n.slice(0,14).includes("~"),x=t?"~":"/",o=n.split(".")?.[0]?.toUpperCase()==="THOR",H=n.split(".")?.[0]?.toUpperCase()==="MAYA",[F,B=""]=o||H?n.split(".").slice(1).join().split(x):n.split(x);if((h||t)&&!(F&&B))throw new _({errorKey:"helpers_invalid_asset_identifier",info:{identifier:n}});const k=n.includes(".")&&!h&&!t?n:`${H?"MAYA":"THOR"}.${B}`,[N,...s]=k.split("."),G=h||t?B:s.join("."),P=G.split("-"),$=P.length===1?P[0]:P.slice(0,-1).join("-"),S=P.length===1?void 0:P[P.length-1],X=N==="SOL"?S:S?.toLowerCase();return{address:X,chain:N,isGasAsset:r({chain:N,symbol:G}),isSynthetic:h,isTradeAsset:t,ticker:$,symbol:(h||t?`${F}${x}`:"")+(X?`${$}-${X??""}`:G)}}var D=new Map;class L extends u{address;chain;isGasAsset=!1;isSynthetic=!1;isTradeAsset=!1;symbol;tax;ticker;type;chainId;constructor({value:n,decimal:h,tax:t,chain:x,symbol:o,identifier:H}){super(typeof n==="object"?n:{decimal:h,value:n});const F=i(H||`${x}.${o}`);this.type=sn(F),this.tax=t,this.chain=F.chain,this.ticker=F.ticker,this.symbol=F.symbol,this.address=F.address,this.isSynthetic=F.isSynthetic,this.isTradeAsset=F.isTradeAsset,this.isGasAsset=F.isGasAsset,this.chainId=tn[F.chain]}toString({includeSynthProtocol:n}={}){return(this.isSynthetic||this.isTradeAsset)&&!n?this.symbol:`${this.chain}.${this.symbol}`}toUrl(){return this.isSynthetic?`${this.chain}.${this.symbol.replace("/",".")}`:this.isTradeAsset?`${this.chain}.${this.symbol.replace("~","..")}`:this.toString()}eqAsset({chain:n,symbol:h}){return this.chain===n&&this.symbol===h}eq(n){return this.eqAsset(n)&&this.eqValue(n)}static fromUrl(n,h=0){const[t,x,o]=n.split(".");if(!(t&&x))throw new _({errorKey:"helpers_invalid_asset_url",info:{urlAsset:n}});const H=t==="THOR"&&o?`${t}.${x}/${o}`:n;return L.from({asset:H,value:h})}static from({value:n=0,fromBaseDecimal:h,asyncTokenLookup:t,...x}){const o=n instanceof u?n.getValue("string"):n,H="chain"in x,F=H?x.chain:x.asset,B=H||Cn.includes(F),{identifier:k,decimal:N}=B?An(F):{identifier:F,decimal:void 0},{chain:s,isSynthetic:G,isTradeAsset:P}=i(k),$=D.get(s==="SOL"?k:k.toUpperCase()),S=$?.decimal||N;Hn(!(t||S),`Couldn't find static decimal for ${k} (Using default ${T[s]} decimal as fallback).
This can result in incorrect calculations and mess with amount sent on transactions.
You can load static assets by installing @swapkit/tokens package and calling AssetValue.loadStaticAssets()
or by passing asyncTokenLookup: true to the from() function, which will make it async and return a promise.`);const{decimal:Q,identifier:w,tax:I}=S||{decimal:_||N[C],identifier:T},X=h?a(BigInt(x),h):a(x,Q);return t?wn(w,h?X:x):G?zn(w,X):new $({tax:I,decimal:Q,identifier:w,value:X})}static loadStaticAssets(){return new Promise((n,h)=>{try{import("@swapkit/tokens").then((t)=>{for(let o of Object.values(t))for(let{identifier:x,chain:s,...H}of o.tokens)U.set(x.toUpperCase(),{identifier:x,decimal:"decimals"in H?H.decimals:N[s]});n({ok:!0})})}catch(t){console.error(t),h({ok:!1,error:t,message:"Couldn't load static assets. Ensure you have installed @swapkit/tokens package"})}})}static fromString(n,h=0){return $.from({asset:n,value:h,asyncTokenLookup:!0})}static fromIdentifier(n,h=0){return $.from({asset:n,value:h,asyncTokenLookup:!0})}static fromStringSync(n,h=0){return $.from({asset:n,value:h})}static fromStringWithBase(n,h=0n,t=N.THOR){return $.from({asyncTokenLookup:!0,asset:n,value:h,fromBaseDecimal:t})}static fromStringWithBaseSync(n,h=0n,t=N.THOR){return $.from({asset:n,value:h,fromBaseDecimal:t})}static fromIdentifierSync(n,h=0){return $.from({asset:n,value:h})}static fromChainOrSignature(n,h=0){if(Object.values(g).includes(n))return $.from({chain:n,value:h});return $.from({asset:n,value:h})}}async function Nt(n){const h=await import("@swapkit/tokens");for(let t of Object.values(h))for(let{identifier:o,chain:x,...s}of t.tokens){if("identifier"in n&&o===n.identifier)return o;if("address"in s&&"chain"in n&&x===n.chain&&s.address.toLowerCase()===n.contract.toLowerCase())return o}return}var Zn="0x313ce567",Fn=[`${"MAYA"}.MAYA`,`${"ETH"}.THOR`,`${"ETH"}.vTHOR`,`${"KUJI"}.USK`],Bn=async({chain:n,to:h})=>{try{const{result:t}=await y.post(E[n],{headers:{accept:"*/*","content-type":"application/json","cache-control":"no-cache"},body:JSON.stringify({id:44,jsonrpc:"2.0",method:"eth_call",params:[{to:h.toLowerCase(),data:Zn},"latest"]})});return Number.parseInt(BigInt(t||N[n]).toString())}catch(t){return console.error(t),N[n]}},Yn=async({symbol:n})=>{try{const h=n.split("-")[1]?.toLowerCase(),{manager:t}=await y.post(`${E["XRD"]}/state/resource`,{headers:{Accept:"*/*","Content-Type":"application/json"},body:JSON.stringify({network:"mainnet",resource_address:h})});return t.divisibility.value.divisibility}catch(h){return console.error(h),N["XRD"]}},fn=(n)=>{if(n==="ETH")return N.ETH;const h=n.split("-"),t=h.length===1?void 0:h[h.length-1]?.toLowerCase();return t?.startsWith("0x")?Bn({chain:"ETH",to:t}):N.ETH},qn=(n)=>{const h=n.split("-"),t=h.length===1?void 0:h[h.length-1];return t?.startsWith("0x")?Bn({chain:"AVAX",to:t.toLowerCase()}):N.AVAX},Qn=(n)=>{if(n==="BSC")return N.BSC;return N.BSC},Wn=(n)=>{if(n==="XRD")return N.XRD;return Yn({symbol:n})},Rn=({chain:n,symbol:h})=>{switch(n){case"ETH":return fn(h);case"AVAX":return qn(h);case"BSC":return Qn(h);case"XRD":return Wn(h);default:return N[n]}},At=({chain:n})=>{switch(n){case"ARB":case"BASE":case"OP":return $.from({asset:`${n}.ETH`});case"MAYA":return $.from({asset:`${n}.CACAO`});case"GAIA":return $.from({asset:`${n}.ATOM`});case"BSC":return $.from({asset:`${n}.BNB`});case"THOR":return $.from({asset:`${n}.RUNE`});default:return $.from({asset:`${n}.${n}`})}},l=({chain:n,symbol:h})=>{switch(n){case"ARB":case"BASE":case"OP":return h==="ETH";case"MAYA":return h==="CACAO";case"GAIA":return h==="ATOM";case"BSC":return h==="BNB";case"THOR":return h==="RUNE";default:return h===n}},An=(n)=>{switch(n){case"ARB":case"BASE":case"OP":return{identifier:`${n}.ETH`,decimal:N[n]};case`${"ETH"}.THOR`:return{identifier:"ETH.THOR-0xa5f2211b9b8170f694421f2046281775e8468044",decimal:18};case`${"ETH"}.vTHOR`:return{identifier:"ETH.vTHOR-0x815c23eca83261b6ec689b60cc4a58b54bc24d8d",decimal:18};case"GAIA":return{identifier:`${n}.ATOM`,decimal:N[n]};case"THOR":return{identifier:`${n}.RUNE`,decimal:N[n]};case"BSC":return{identifier:`${n}.BNB`,decimal:N[n]};case"MAYA":return{identifier:`${n}.CACAO`,decimal:10};case"XRD":return{identifier:`${"XRD"}.XRD`,decimal:N[n]};case`${"MAYA"}.MAYA`:return{identifier:n,decimal:4};case`${"KUJI"}.USK`:return{identifier:n,decimal:6};default:return{identifier:`${n}.${n}`,decimal:N[n]}}},Cn=({chain:n,symbol:h})=>{if(h.includes("/"))return"Synth";switch(n){case"ARB":case"OP":case"BASE":return h==="ETH"?"Native":n;case"GAIA":return h==="ATOM"?"Native":n;case"BSC":return h==="BNB"?"Native":n;case"MAYA":return h==="CACAO"?"Native":n;case"THOR":return h==="RUNE"?"Native":n;default:return h===n?"Native":n}},Ct=(n)=>{const[h,...t]=n.split("."),o=n.includes("/"),x=t.join("."),s=x?.split("-"),H=s?.length?s.length===1?s[0]:s.slice(0,-1).join("-"):void 0;return{chain:h,symbol:x,ticker:H,synth:o}},Mn=new RegExp(/(.)\1{6}|\.ORG|\.NET|\.FINANCE|\.COM|WWW|HTTP|\\\\|\/\/|[\s$%:[\]]/,"gmi"),Vn=(n)=>{const[h,t]=n.split(".");if(!V.includes(h))return!0;const o=t.split("-"),x=o.length===1?void 0:o[o.length-1];return l({chain:h,symbol:t})||!!x},Bt=(n)=>n.filter(({chain:h,value:t,symbol:o})=>{const x=`${h}.${o}`;return!Mn.test(x)&&Vn(x)&&t!=="0"});function Ot([n,h,t,o,x]){return`m/${n}'/${h}'/${t}'/${o}${typeof x!=="number"?"":`/${x}`}`}function $t({chain:n,index:h,addressIndex:t=0,type:o}){if(V.includes(n)){if(o==="legacy")return[44,60,0,h];if(o==="ledgerLive")return[44,60,h,0,t];return Nn(v[n],h)}const x=n==="LTC"?2:0;switch(o){case"nativeSegwitMiddleAccount":return[84,x,h,0,t];case"segwit":return[49,x,0,0,h];case"legacy":return[44,x,0,0,h];default:return Nn(v[n],h)}}function It(n){const[h,t,o]=n.split("/").map((x)=>Number.parseInt(x,10));switch(t){case 44:return"legacy";case 49:return"p2sh";default:return"bech32"}}var Nn=(n,h)=>{return[...n.slice(0,n.length-1),h]};function bn({liquidityUnits:n,poolUnits:h,runeDepth:t}){const o=P(n),x=P(h),s=P(t),H=o.mul(s),R=x.mul(x).mul(2),T=x.mul(o).mul(2),A=o.mul(o),C=x.mul(x).mul(x);return H.mul(R.sub(T).add(A)).div(C)}function Kn({liquidityUnits:n,poolUnits:h,assetDepth:t}){const o=P(n),x=P(h),s=P(t),H=o.mul(s),R=x.mul(x).mul(2),T=x.mul(o).mul(2),A=o.mul(o),C=H.mul(R.sub(T).add(A)),G=x.mul(x).mul(x);return C.div(G)}function gt({percent:n,runeDepth:h,liquidityUnits:t,poolUnits:o}){return bn({runeDepth:h,liquidityUnits:t,poolUnits:o}).mul(n)}function Pt({percent:n,assetDepth:h,liquidityUnits:t,poolUnits:o}){return Kn({assetDepth:h,liquidityUnits:t,poolUnits:o}).mul(n)}function P(n){return j.fromBigInt(BigInt(n),N.THOR)}function Dn({liquidityUnits:n,poolUnits:h,runeDepth:t,assetDepth:o}){return{assetAmount:P(o).mul(n).div(h),runeAmount:P(t).mul(n).div(h)}}function St({liquidityUnits:n,poolUnits:h,runeDepth:t,assetDepth:o,percent:x}){return Object.fromEntries(Object.entries(Dn({liquidityUnits:n,poolUnits:h,runeDepth:t,assetDepth:o})).map(([s,H])=>[s,H.mul(x)]))}function jt({runeDepth:n,poolUnits:h,assetDepth:t,liquidityUnits:o,runeAmount:x,assetAmount:s}){const H=new j({value:n,decimal:8}),R=new j({value:t,decimal:8}),T=new j({value:h,decimal:8}),A=new j({value:x,decimal:8}),C=new j({value:s,decimal:8}),G=A.mul(R),S=C.mul(H),_=A.mul(C),Q=H.mul(R),w=T.mul(G.add(S.add(_.mul(2)))),I=G.add(S.add(Q.mul(2))),X=w.div(I),W=P(o).add(X);if(X.getBaseValue("number")===0)return W.div(T).getBaseValue("number");const kn=T.add(W);return W.div(kn).getBaseValue("number")}function ut({runeAmount:n,assetAmount:h,runeDepth:t,assetDepth:o}){if(n==="0"||h==="0"||t==="0"||o==="0")return 0;const x=P(t),s=P(o),H=P(h),R=P(n),T=H.mul(x).sub(s.mul(R)),A=s.mul(R).add(x.mul(s));return Math.abs(T.div(A).getBaseValue("number"))}function Un({type:n,address:h}){return`${n}:${h}`}function an({address:n,unbondAmount:h}){return`${"UNBOND"}:${n}:${h}`}function wt(n){return q("POOL+",n)}function dn({chain:n,symbol:h,...t}){return q(`${"+"}:${n}/${h}`,t)}function En({chain:n,symbol:h,address:t,...o}){const x=en({chain:n,symbol:h}),s=t?`:${t}:`:":";return q(`${"+"}:${x}${s}`,o)}function vn({chain:n,symbol:h,basisPoints:t}){return`${"-"}:${n}/${h}:${t}`}function mn({chain:n,symbol:h,ticker:t,basisPoints:o,targetAsset:x}){const s=n==="ETH"&&t!=="ETH"?`${t}-${h.slice(-3)}`:h,H=x?`:${x}`:"";return`${"-"}:${n}.${s}:${o}${H}`}function zt({basisPoints:n,...h}){return q(`${"POOL-"}:${n}`,h)}function rn({name:n,chain:h,address:t,owner:o}){const x=`${"~"}:${n}:${h}:${t}`,s=o?`:${o}`:"";return`${x}${s}`}function Zt({name:n,chain:h,asset:t,payout:o,owner:x}){return`${"~"}:${n}:${h}:${o}:${x}:${t}`}function ln(n,{asset:h,address:t,minAmount:o,...x}){const s=`${n}:${h}:${t}`,H=o?`:${o}`:"";return q(`${s}${H}`,x)}function q(n,{affiliateAddress:h,affiliateBasisPoints:t}={}){const o=`${n}${h?`:${h}:${t||0}`:""}`;return o.endsWith(":")?o.slice(0,-1):o}function en({chain:n,symbol:h}){switch(n){case"BTC":case"DOGE":case"LTC":return n.slice(0,1).toLowerCase();case"BCH":return"c";default:return`${n}.${h}`}}var Yt=(n,h)=>{switch(n){case"LEAVE":case"BOND":return Un({type:n,address:h?.address});case"UNBOND":return an({address:h?.address,unbondAmount:h?.unbondAmount});case"~":return rn(h);case"$+":case"$-":return ln(n,h);case"+":{const{chain:t,symbol:o,address:x,singleSide:s}=h;if(s)return dn({chain:t,symbol:o});return En({chain:t,symbol:o,address:x})}case"-":{const{chain:t,ticker:o,symbol:x,basisPoints:s,targetAssetString:H,singleSide:R}=h;if(R)return vn({chain:t,symbol:x,basisPoints:s});return mn({chain:t,ticker:o,symbol:x,basisPoints:s,targetAsset:H})}default:throw new L({errorKey:"helpers_invalid_memo_type",info:{memoType:n}})}};function Dt({chain:n,covalentApiKey:h,ethplorerApiKey:t}){const o=n!=="ETH"&&!h?"covalentApiKey":t?void 0:"ethplorerApiKey";if(o)throw new L({errorKey:"wallet_missing_api_key",info:{missingKey:o}});return{covalentApiKey:h,ethplorerApiKey:t}}function Ut(){const n=[];function h(o){if(n.map((x)=>x.info.uuid).includes(o.detail.info.uuid))return;n.push(o.detail)}window.addEventListener("eip6963:announceProvider",h),window.dispatchEvent(new Event("eip6963:requestProvider"));function t(){window.removeEventListener("eip6963:announceProvider",h)}return{providers:n,removeEIP6963EventListener:t}}var nh=["approve","approvedAmount","call","sendTransaction","transfer","isApproved","approvedAmount","EIP1193SendTransaction","getFeeData","broadcastTransaction","estimateCall","estimateGasLimit","estimateGasPrices","createContractTxObject"],hh=(n,h,t)=>async(...o)=>{try{await th(h,t)}catch(x){throw new L({errorKey:"helpers_failed_to_switch_network",info:{error:x}})}return n(...o)},Tn=({provider:n,params:h,method:t})=>{if(!n?.send)throw new L("helpers_not_found_provider");const o=h?Array.isArray(h)?h:[h]:[];return n.send(t,o)},Wt=({toolbox:n,chainId:h,provider:t=window.ethereum})=>{const o=nh.reduce((x,s)=>{if(!n[s])return x;const H=n[s];if(typeof H!=="function")return x;return{...x,[s]:hh(H,t,h)}},{});return{...n,...o}},Mt=(n,h)=>Tn({provider:n,method:"wallet_addEthereumChain",params:[h]}),th=(n,h="0x1")=>Tn({provider:n,method:"wallet_switchEthereumChain",params:[{chainId:h}]}),Vt=(n)=>{window.ethereum?.on("accountsChanged",()=>n()),window.xfi?.ethereum.on("accountsChanged",()=>n())},bt=()=>{const{isTrust:n,isBraveWallet:h,__XDEFI:t,overrideIsMetaMask:o,selectedProvider:x}=window?.ethereum||{};if(n)return"TRUSTWALLET_WEB";if(h)return"BRAVE";if(o&&x?.isCoinbaseWallet)return"COINBASE_WEB";if(t)"XDEFI";return"METAMASK"},Kt=(n)=>{return oh().includes(n)},oh=()=>{const n=window?.ethereum&&!window.ethereum?.isBraveWallet,h=window?.xfi||window?.ethereum?.__XDEFI,t=window?.ethereum?.isBraveWallet,o=window?.ethereum?.isTrust||window?.trustwallet,x=window?.ethereum?.overrideIsMetaMask&&window?.ethereum?.selectedProvider?.isCoinbaseWallet||window?.coinbaseWalletExtension,s=[];if(n)s.push("METAMASK");if(h)s.push("XDEFI");if(t)s.push("BRAVE");if(o)s.push("TRUSTWALLET_WEB");if(x)s.push("COINBASE_WEB");if(xh())s.push("OKX_MOBILE");return s},xh=()=>{const n=navigator.userAgent,h=/iphone|ipad|ipod|ios/i.test(n),t=/android|XiaoMi|MiuiBrowser/i.test(n),o=h||t,x=/OKApp/i.test(n);return o&&x},at=()=>typeof window.ethereum!=="undefined";class j extends u{eq(n){return this.eqValue(n)}static fromBigInt(n,h){return new j({decimal:h,value:J({value:n,bigIntDecimal:h,decimal:h})})}}export{Dh as wrapWithThrow,hh as wrapMethodWithNetworkSwitch,xn as warnOnce,ih as validateTNS,sn as validateIdentifier,th as switchEVMWalletNetwork,fh as setRequestClientConfig,Wt as prepareNetworkSwitch,xh as okxMobileEnabled,oh as listWeb3EVMWallets,at as isWeb3Detected,l as isGasAsset,Kt as isDetected,It as getWalletFormatFor,bh as getTHORNameCost,St as getSymmetricWithdraw,Dn as getSymmetricPoolShare,ct as getMinAmountByChain,mn as getMemoForWithdraw,an as getMemoForUnbond,vn as getMemoForSaverWithdraw,dn as getMemoForSaverDeposit,zt as getMemoForRunePoolWithdraw,wt as getMemoForRunePoolDeposit,rn as getMemoForNameRegister,Zt as getMemoForNamePreferredAssetRegister,ln as getMemoForLoan,Un as getMemoForLeaveAndBond,En as getMemoForDeposit,Yt as getMemoFor,Kh as getMAYANameCost,ut as getLiquiditySlippage,At as getGasAsset,jt as getEstimatedPoolShare,bt as getETHDefaultWallet,Ut as getEIP6963Wallets,ah as getDynamicChainId,$t as getDerivationPathFor,Rn as getDecimal,An as getCommonAssetInfo,Uh as getChainIdentifier,gt as getAsymmetricRuneWithdrawAmount,bn as getAsymmetricRuneShare,Pt as getAsymmetricAssetWithdrawAmount,Kn as getAsymmetricAssetShare,Cn as getAssetType,J as formatBigIntToSafeValue,Nt as findAssetBy,Bt as filterAssets,Dt as ensureEVMApiKeys,Ot as derivationPathToString,pn as defaultRequestHeaders,Ct as assetFromString,Mt as addEVMWalletNetwork,Vt as addAccountsChangedCallback,Sn as WarningCodeEnum,hn as WalletOption,Ah as UTXOChains,Bh as TCSupportedChains,j as SwapKitNumber,L as SwapKitError,Rh as SubstrateChains,Lh as SWAP_OUT,Ih as SWAP_IN,y as RequestClient,M as RPCUrl,$n as QuoteMode,jn as ProviderName,v as NetworkDerivationPath,tn as MemoType,Nh as MAYASupportedChains,_n as LedgerErrorCode,un as FeeTypeEnum,Gn as FeeOption,d as ExplorerUrl,Pn as ErrorCode,V as EVMChains,Ln as DerivationPath,Ch as CosmosChains,In as ContractAddress,Fn as CommonAssetStrings,E as ChainToRPC,Th as ChainToHexChainId,kh as ChainToExplorerUrl,nn as ChainToChainId,Fh as ChainIdToChain,z as ChainId,g as Chain,u as BigIntArithmetics,N as BaseDecimal,$ as AssetValue,gn as ApproveMode,$h as AGG_SWAP};
or by passing asyncTokenLookup: true to the from() function, which will make it async and return a promise.`);const{decimal:X,identifier:O,tax:W}=$||{decimal:S||T[s],identifier:k},p=h?U(BigInt(o),h):U(o,X);return t?Qn(O,h?p:o):G||P?Wn(O,p):new L({tax:W,decimal:X,identifier:O,value:p})}static loadStaticAssets(){return new Promise((n,h)=>{try{import("@swapkit/tokens").then((t)=>{for(let x of Object.values(t))for(let{identifier:o,chain:H,...F}of x.tokens)D.set(H!=="SOL"?o.toUpperCase():o,{identifier:o,decimal:"decimals"in F?F.decimals:T[H]});n({ok:!0})})}catch(t){console.error(t),h({ok:!1,error:t,message:"Couldn't load static assets. Ensure you have installed @swapkit/tokens package"})}})}static fromString(n,h=0){return L.from({asset:n,value:h,asyncTokenLookup:!0})}static fromIdentifier(n,h=0){return L.from({asset:n,value:h,asyncTokenLookup:!0})}static fromStringSync(n,h=0){return L.from({asset:n,value:h})}static fromStringWithBase(n,h=0n,t=T.THOR){return L.from({asyncTokenLookup:!0,asset:n,value:h,fromBaseDecimal:t})}static fromStringWithBaseSync(n,h=0n,t=T.THOR){return L.from({asset:n,value:h,fromBaseDecimal:t})}static fromIdentifierSync(n,h=0){return L.from({asset:n,value:h})}static fromChainOrSignature(n,h=0){if(Object.values(I).includes(n))return L.from({chain:n,value:h});return L.from({asset:n,value:h})}}async function Lt(n){const h=await import("@swapkit/tokens");for(let t of Object.values(h))for(let{identifier:x,chain:o,...H}of t.tokens){if("identifier"in n&&x===n.identifier)return x;if("address"in H&&"chain"in n&&o===n.chain&&H.address.toLowerCase()===n.contract.toLowerCase())return x}return}var fn="0x313ce567",Cn=[`${"MAYA"}.MAYA`,`${"ETH"}.THOR`,`${"ETH"}.vTHOR`,`${"KUJI"}.USK`],Tn=async({chain:n,to:h})=>{try{const{result:t}=await J.post(v[n],{headers:{accept:"*/*","content-type":"application/json","cache-control":"no-cache"},body:JSON.stringify({id:44,jsonrpc:"2.0",method:"eth_call",params:[{to:h.toLowerCase(),data:fn},"latest"]})});return Number.parseInt(BigInt(t||T[n]).toString())}catch(t){return console.error(t),T[n]}},Mn=async({symbol:n})=>{try{const h=n.split("-")[1]?.toLowerCase(),{manager:t}=await J.post(`${v["XRD"]}/state/resource`,{headers:{Accept:"*/*","Content-Type":"application/json"},body:JSON.stringify({network:"mainnet",resource_address:h})});return t.divisibility.value.divisibility}catch(h){return console.error(h),T["XRD"]}},Vn=(n)=>{if(n==="ETH")return T.ETH;const h=n.split("-"),t=h.length===1?void 0:h[h.length-1]?.toLowerCase();return t?.startsWith("0x")?Tn({chain:"ETH",to:t}):T.ETH},bn=(n)=>{const h=n.split("-"),t=h.length===1?void 0:h[h.length-1];return t?.startsWith("0x")?Tn({chain:"AVAX",to:t.toLowerCase()}):T.AVAX},Kn=(n)=>{if(n==="BSC")return T.BSC;return T.BSC},Dn=(n)=>{if(n==="XRD")return T.XRD;return Mn({symbol:n})},Nn=({chain:n,symbol:h})=>{switch(n){case"ETH":return Vn(h);case"AVAX":return bn(h);case"BSC":return Kn(h);case"XRD":return Dn(h);default:return T[n]}},kt=({chain:n})=>{switch(n){case"ARB":case"BASE":case"OP":return L.from({asset:`${n}.ETH`});case"MAYA":return L.from({asset:`${n}.CACAO`});case"GAIA":return L.from({asset:`${n}.ATOM`});case"BSC":return L.from({asset:`${n}.BNB`});case"THOR":return L.from({asset:`${n}.RUNE`});default:return L.from({asset:`${n}.${n}`})}},r=({chain:n,symbol:h})=>{switch(n){case"ARB":case"BASE":case"OP":return h==="ETH";case"MAYA":return h==="CACAO";case"GAIA":return h==="ATOM";case"BSC":return h==="BNB";case"THOR":return h==="RUNE";default:return h===n}},An=(n)=>{switch(n){case"ARB":case"BASE":case"OP":return{identifier:`${n}.ETH`,decimal:T[n]};case`${"ETH"}.THOR`:return{identifier:"ETH.THOR-0xa5f2211b9b8170f694421f2046281775e8468044",decimal:18};case`${"ETH"}.vTHOR`:return{identifier:"ETH.vTHOR-0x815c23eca83261b6ec689b60cc4a58b54bc24d8d",decimal:18};case"GAIA":return{identifier:`${n}.ATOM`,decimal:T[n]};case"THOR":return{identifier:`${n}.RUNE`,decimal:T[n]};case"BSC":return{identifier:`${n}.BNB`,decimal:T[n]};case"MAYA":return{identifier:`${n}.CACAO`,decimal:10};case"XRD":return{identifier:`${"XRD"}.XRD`,decimal:T[n]};case`${"MAYA"}.MAYA`:return{identifier:n,decimal:4};case`${"KUJI"}.USK`:return{identifier:n,decimal:6};default:return{identifier:`${n}.${n}`,decimal:T[n]}}},sn=({chain:n,symbol:h})=>{if(h.includes("/"))return"Synth";switch(n){case"ARB":case"OP":case"BASE":return h==="ETH"?"Native":n;case"GAIA":return h==="ATOM"?"Native":n;case"BSC":return h==="BNB"?"Native":n;case"MAYA":return h==="CACAO"?"Native":n;case"THOR":return h==="RUNE"?"Native":n;default:return h===n?"Native":n}},Ot=(n)=>{const[h,...t]=n.split("."),x=n.includes("/"),o=t.join("."),H=o?.split("-"),F=H?.length?H.length===1?H[0]:H.slice(0,-1).join("-"):void 0;return{chain:h,symbol:o,ticker:F,synth:x}},Un=new RegExp(/(.)\1{6}|\.ORG|\.NET|\.FINANCE|\.COM|WWW|HTTP|\\\\|\/\/|[\s$%:[\]]/,"gmi"),En=(n)=>{const[h,t]=n.split(".");if(!M.includes(h))return!0;const x=t.split("-"),o=x.length===1?void 0:x[x.length-1];return r({chain:h,symbol:t})||!!o},$t=(n)=>n.filter(({chain:h,value:t,symbol:x})=>{const o=`${h}.${x}`;return!Un.test(o)&&En(o)&&t!=="0"});function It([n,h,t,x,o]){return`m/${n}'/${h}'/${t}'/${x}${typeof o!=="number"?"":`/${o}`}`}function gt({chain:n,index:h,addressIndex:t=0,type:x}){if(M.includes(n)){if(x==="legacy")return[44,60,0,h];if(x==="ledgerLive")return[44,60,h,0,t];return kn(a[n],h)}const o=n==="LTC"?2:0;switch(x){case"nativeSegwitMiddleAccount":return[84,o,h,0,t];case"segwit":return[49,o,0,0,h];case"legacy":return[44,o,0,0,h];default:return kn(a[n],h)}}function Pt(n){const[h,t,x]=n.split("/").map((o)=>Number.parseInt(o,10));switch(t){case 44:return"legacy";case 49:return"p2sh";default:return"bech32"}}var kn=(n,h)=>{return[...n.slice(0,n.length-1),h]};function vn({liquidityUnits:n,poolUnits:h,runeDepth:t}){const x=g(n),o=g(h),H=g(t),F=x.mul(H),B=o.mul(o).mul(2),k=o.mul(x).mul(2),N=x.mul(x),s=o.mul(o).mul(o);return F.mul(B.sub(k).add(N)).div(s)}function an({liquidityUnits:n,poolUnits:h,assetDepth:t}){const x=g(n),o=g(h),H=g(t),F=x.mul(H),B=o.mul(o).mul(2),k=o.mul(x).mul(2),N=x.mul(x),s=F.mul(B.sub(k).add(N)),G=o.mul(o).mul(o);return s.div(G)}function St({percent:n,runeDepth:h,liquidityUnits:t,poolUnits:x}){return vn({runeDepth:h,liquidityUnits:t,poolUnits:x}).mul(n)}function pt({percent:n,assetDepth:h,liquidityUnits:t,poolUnits:x}){return an({assetDepth:h,liquidityUnits:t,poolUnits:x}).mul(n)}function g(n){return j.fromBigInt(BigInt(n),T.THOR)}function dn({liquidityUnits:n,poolUnits:h,runeDepth:t,assetDepth:x}){return{assetAmount:g(x).mul(n).div(h),runeAmount:g(t).mul(n).div(h)}}function yt({liquidityUnits:n,poolUnits:h,runeDepth:t,assetDepth:x,percent:o}){return Object.fromEntries(Object.entries(dn({liquidityUnits:n,poolUnits:h,runeDepth:t,assetDepth:x})).map(([H,F])=>[H,F.mul(o)]))}function Jt({runeDepth:n,poolUnits:h,assetDepth:t,liquidityUnits:x,runeAmount:o,assetAmount:H}){const F=new j({value:n,decimal:8}),B=new j({value:t,decimal:8}),k=new j({value:h,decimal:8}),N=new j({value:o,decimal:8}),s=new j({value:H,decimal:8}),G=N.mul(B),P=s.mul(F),$=N.mul(s),S=F.mul(B),X=k.mul(G.add(P.add($.mul(2)))),O=G.add(P.add(S.mul(2))),W=X.div(O),p=g(x).add(W);if(W.getBaseValue("number")===0)return p.div(k).getBaseValue("number");const l=k.add(p);return p.div(l).getBaseValue("number")}function wt({runeAmount:n,assetAmount:h,runeDepth:t,assetDepth:x}){if(n==="0"||h==="0"||t==="0"||x==="0")return 0;const o=g(t),H=g(x),F=g(h),B=g(n),k=F.mul(o).sub(H.mul(B)),N=H.mul(B).add(o.mul(H));return Math.abs(k.div(N).getBaseValue("number"))}function mn({type:n,address:h}){return`${n}:${h}`}function rn({address:n,unbondAmount:h}){return`${"UNBOND"}:${n}:${h}`}function Qt(n){return Q("POOL+",n)}function ln({chain:n,symbol:h,...t}){return Q(`${"+"}:${n}/${h}`,t)}function en({chain:n,symbol:h,address:t,...x}){const o=oh({chain:n,symbol:h}),H=t?`:${t}:`:":";return Q(`${"+"}:${o}${H}`,x)}function nh({chain:n,symbol:h,basisPoints:t}){return`${"-"}:${n}/${h}:${t}`}function hh({chain:n,symbol:h,ticker:t,basisPoints:x,targetAsset:o}){const H=n==="ETH"&&t!=="ETH"?`${t}-${h.slice(-3)}`:h,F=o?`:${o}`:"";return`${"-"}:${n}.${H}:${x}${F}`}function Wt({basisPoints:n,...h}){return Q(`${"POOL-"}:${n}`,h)}function th({name:n,chain:h,address:t,owner:x}){const o=`${"~"}:${n}:${h}:${t}`,H=x?`:${x}`:"";return`${o}${H}`}function ft({name:n,chain:h,asset:t,payout:x,owner:o}){return`${"~"}:${n}:${h}:${x}:${o}:${t}`}function xh(n,{asset:h,address:t,minAmount:x,...o}){const H=`${n}:${h}:${t}`,F=x?`:${x}`:"";return Q(`${H}${F}`,o)}function Q(n,{affiliateAddress:h,affiliateBasisPoints:t}={}){const x=`${n}${h?`:${h}:${t||0}`:""}`;return x.endsWith(":")?x.slice(0,-1):x}function oh({chain:n,symbol:h}){switch(n){case"BTC":case"DOGE":case"LTC":return n.slice(0,1).toLowerCase();case"BCH":return"c";default:return`${n}.${h}`}}var Mt=(n,h)=>{switch(n){case"LEAVE":case"BOND":return mn({type:n,address:h?.address});case"UNBOND":return rn({address:h?.address,unbondAmount:h?.unbondAmount});case"~":return th(h);case"$+":case"$-":return xh(n,h);case"+":{const{chain:t,symbol:x,address:o,singleSide:H}=h;if(H)return ln({chain:t,symbol:x});return en({chain:t,symbol:x,address:o})}case"-":{const{chain:t,ticker:x,symbol:o,basisPoints:H,targetAssetString:F,singleSide:B}=h;if(B)return nh({chain:t,symbol:o,basisPoints:H});return hh({chain:t,ticker:x,symbol:o,basisPoints:H,targetAsset:F})}default:throw new _({errorKey:"helpers_invalid_memo_type",info:{memoType:n}})}};function dt({chain:n,covalentApiKey:h,ethplorerApiKey:t}){const x=n!=="ETH"&&!h?"covalentApiKey":t?void 0:"ethplorerApiKey";if(x)throw new _({errorKey:"wallet_missing_api_key",info:{missingKey:x}});return{covalentApiKey:h,ethplorerApiKey:t}}function mt(){const n=[];function h(x){if(n.map((o)=>o.info.uuid).includes(x.detail.info.uuid))return;n.push(x.detail)}window.addEventListener("eip6963:announceProvider",h),window.dispatchEvent(new Event("eip6963:requestProvider"));function t(){window.removeEventListener("eip6963:announceProvider",h)}return{providers:n,removeEIP6963EventListener:t}}var ch=["approve","approvedAmount","call","sendTransaction","transfer","isApproved","approvedAmount","EIP1193SendTransaction","getFeeData","broadcastTransaction","estimateCall","estimateGasLimit","estimateGasPrices","createContractTxObject"],Hh=(n,h,t)=>async(...x)=>{try{await Fh(h,t)}catch(o){throw new _({errorKey:"helpers_failed_to_switch_network",info:{error:o}})}return n(...x)},On=({provider:n,params:h,method:t})=>{if(!n?.send)throw new _("helpers_not_found_provider");const x=h?Array.isArray(h)?h:[h]:[];return n.send(t,x)},Dt=({toolbox:n,chainId:h,provider:t=window.ethereum})=>{const x=ch.reduce((o,H)=>{if(!n[H])return o;const F=n[H];if(typeof F!=="function")return o;return{...o,[H]:Hh(F,t,h)}},{});return{...n,...x}},Ut=(n,h)=>On({provider:n,method:"wallet_addEthereumChain",params:[h]}),Fh=(n,h="0x1")=>On({provider:n,method:"wallet_switchEthereumChain",params:[{chainId:h}]}),Et=(n)=>{window.ethereum?.on("accountsChanged",()=>n()),window.xfi?.ethereum.on("accountsChanged",()=>n())},vt=()=>{const{isTrust:n,isBraveWallet:h,__XDEFI:t,overrideIsMetaMask:x,selectedProvider:o}=window?.ethereum||{};if(n)return"TRUSTWALLET_WEB";if(h)return"BRAVE";if(x&&o?.isCoinbaseWallet)return"COINBASE_WEB";if(t)"XDEFI";return"METAMASK"},at=(n)=>{return Rh().includes(n)},Rh=()=>{const n=window?.ethereum&&!window.ethereum?.isBraveWallet,h=window?.xfi||window?.ethereum?.__XDEFI,t=window?.ethereum?.isBraveWallet,x=window?.ethereum?.isTrust||window?.trustwallet,o=window?.ethereum?.overrideIsMetaMask&&window?.ethereum?.selectedProvider?.isCoinbaseWallet||window?.coinbaseWalletExtension,H=[];if(n)H.push("METAMASK");if(h)H.push("XDEFI");if(t)H.push("BRAVE");if(x)H.push("TRUSTWALLET_WEB");if(o)H.push("COINBASE_WEB");if(Bh())H.push("OKX_MOBILE");return H},Bh=()=>{const n=navigator.userAgent,h=/iphone|ipad|ipod|ios/i.test(n),t=/android|XiaoMi|MiuiBrowser/i.test(n),x=h||t,o=/OKApp/i.test(n);return x&&o},it=()=>typeof window.ethereum!=="undefined";class j extends u{eq(n){return this.eqValue(n)}static fromBigInt(n,h){return new j({decimal:h,value:w({value:n,bigIntDecimal:h,decimal:h})})}}export{dh as wrapWithThrow,Hh as wrapMethodWithNetworkSwitch,Hn as warnOnce,nt as validateTNS,Rn as validateIdentifier,Fh as switchEVMWalletNetwork,Vh as setRequestClientConfig,Dt as prepareNetworkSwitch,Bh as okxMobileEnabled,Rh as listWeb3EVMWallets,it as isWeb3Detected,r as isGasAsset,at as isDetected,Pt as getWalletFormatFor,vh as getTHORNameCost,yt as getSymmetricWithdraw,dn as getSymmetricPoolShare,Ct as getMinAmountByChain,hh as getMemoForWithdraw,rn as getMemoForUnbond,nh as getMemoForSaverWithdraw,ln as getMemoForSaverDeposit,Wt as getMemoForRunePoolWithdraw,Qt as getMemoForRunePoolDeposit,th as getMemoForNameRegister,ft as getMemoForNamePreferredAssetRegister,xh as getMemoForLoan,mn as getMemoForLeaveAndBond,en as getMemoForDeposit,Mt as getMemoFor,ah as getMAYANameCost,wt as getLiquiditySlippage,kt as getGasAsset,Jt as getEstimatedPoolShare,vt as getETHDefaultWallet,mt as getEIP6963Wallets,ih as getDynamicChainId,gt as getDerivationPathFor,Nn as getDecimal,An as getCommonAssetInfo,mh as getChainIdentifier,St as getAsymmetricRuneWithdrawAmount,vn as getAsymmetricRuneShare,pt as getAsymmetricAssetWithdrawAmount,an as getAsymmetricAssetShare,sn as getAssetType,w as formatBigIntToSafeValue,Lt as findAssetBy,$t as filterAssets,dt as ensureEVMApiKeys,It as derivationPathToString,zn as defaultRequestHeaders,Ot as assetFromString,Ut as addEVMWalletNetwork,Et as addAccountsChangedCallback,yn as WarningCodeEnum,xn as WalletOption,kh as UTXOChains,$h as TCSupportedChains,j as SwapKitNumber,_ as SwapKitError,Th as SubstrateChains,jh as SWAP_OUT,Ph as SWAP_IN,J as RequestClient,f as RPCUrl,gn as QuoteMode,Jn as ProviderName,a as NetworkDerivationPath,on as MemoType,Lh as MAYASupportedChains,Xn as LedgerErrorCode,wn as FeeTypeEnum,un as FeeOption,E as ExplorerUrl,pn as ErrorCode,M as EVMChains,jn as DerivationPath,Oh as CosmosChains,Pn as ContractAddress,Cn as CommonAssetStrings,v as ChainToRPC,_h as ChainToHexChainId,Gh as ChainToExplorerUrl,tn as ChainToChainId,sh as ChainIdToChain,z as ChainId,I as Chain,u as BigIntArithmetics,T as BaseDecimal,L as AssetValue,Sn as ApproveMode,gh as AGG_SWAP};
//# debugId=329A0EBBE16BF23A64756E2164756E21
//# debugId=7C63331B2FA8E66F64756E2164756E21

@@ -5,12 +5,12 @@ {

"dependencies": {
"@swapkit/contracts": "0.0.0-nightly-20241007090400",
"@swapkit/tokens": "0.0.0-nightly-20241007090400"
"@swapkit/contracts": "0.0.0-nightly-20241011172732",
"@swapkit/tokens": "0.0.0-nightly-20241011172732"
},
"devDependencies": {
"@swapkit/toolbox-cosmos": "0.0.0-nightly-20241007090400",
"@swapkit/toolbox-evm": "0.0.0-nightly-20241007090400",
"@swapkit/toolbox-radix": "0.0.0-nightly-20241007090400",
"@swapkit/toolbox-solana": "0.0.0-nightly-20241007090400",
"@swapkit/toolbox-substrate": "0.0.0-nightly-20241007090400",
"@swapkit/toolbox-utxo": "0.0.0-nightly-20241007090400"
"@swapkit/toolbox-cosmos": "0.0.0-nightly-20241011172732",
"@swapkit/toolbox-evm": "0.0.0-nightly-20241011172732",
"@swapkit/toolbox-radix": "0.0.0-nightly-20241011172732",
"@swapkit/toolbox-solana": "0.0.0-nightly-20241011172732",
"@swapkit/toolbox-substrate": "0.0.0-nightly-20241011172732",
"@swapkit/toolbox-utxo": "0.0.0-nightly-20241011172732"
},

@@ -25,3 +25,2 @@ "files": [

"name": "@swapkit/helpers",
"react-native": "./src/index.ts",
"repository": {

@@ -41,3 +40,3 @@ "type": "git",

"types": "./src/index.ts",
"version": "0.0.0-nightly-20241007090400"
"version": "0.0.0-nightly-20241011172732"
}

@@ -157,5 +157,3 @@ import { AssetValue } from "../modules/assetValue";

export const getCommonAssetInfo = (
assetString: CommonAssetString,
): { identifier: string; decimal: number } => {
export const getCommonAssetInfo = (assetString: CommonAssetString) => {
switch (assetString) {

@@ -162,0 +160,0 @@ case Chain.Arbitrum:

@@ -29,2 +29,22 @@ import { describe, expect, test } from "bun:test";

const ethTrade = new AssetValue({
chain: Chain.THORChain,
symbol: "ETH~ETH",
decimal: 8,
value: 1234567890,
});
expect(ethTrade.toString()).toBe("ETH~ETH");
expect(ethTrade.mul(21.37).getValue("string")).toBe("26382715809.3");
const ethThorTrade = new AssetValue({
chain: Chain.THORChain,
symbol: "ETH~THOR-0xa5f2211b9b8170f694421f2046281775e8468044",
decimal: 8,
value: 1234567890,
});
expect(ethThorTrade.toString()).toBe("ETH~THOR-0xa5f2211b9b8170f694421f2046281775e8468044");
expect(ethThorTrade.chain).toBe(Chain.THORChain);
const ethThorSynth = new AssetValue({

@@ -184,2 +204,12 @@ chain: Chain.THORChain,

expect(ethThorSynth.toUrl()).toBe("THOR.ETH.THOR-0xa5f2211b9b8170f694421f2046281775e8468044");
const ethThorTrade = new AssetValue({
chain: Chain.THORChain,
symbol: "ETH~THOR-0xa5f2211b9b8170f694421f2046281775e8468044",
decimal: 8,
value: 1234567890,
});
expect(ethThorTrade.toUrl()).toBe(
"THOR.ETH..THOR-0xa5f2211b9b8170f694421f2046281775e8468044",
);
});

@@ -744,2 +774,18 @@ });

});
test("keep SOL address casing", () => {
const solUsdc = AssetValue.from({
asset: "SOL.USDC-EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
});
expect(solUsdc).toEqual(
expect.objectContaining({
address: "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
chain: Chain.Solana,
isGasAsset: false,
isSynthetic: false,
symbol: "USDC-EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
ticker: "USDC",
}),
);
});
});

@@ -746,0 +792,0 @@ });

@@ -44,2 +44,3 @@ import {

isSynthetic = false;
isTradeAsset = false;
symbol: string;

@@ -73,2 +74,3 @@ tax?: TokenTax;

this.isSynthetic = assetInfo.isSynthetic;
this.isTradeAsset = assetInfo.isTradeAsset;
this.isGasAsset = assetInfo.isGasAsset;

@@ -79,7 +81,13 @@ this.chainId = ChainToChainId[assetInfo.chain];

toString({ includeSynthProtocol }: { includeSynthProtocol?: boolean } = {}) {
return this.isSynthetic && !includeSynthProtocol ? this.symbol : `${this.chain}.${this.symbol}`;
return (this.isSynthetic || this.isTradeAsset) && !includeSynthProtocol
? this.symbol
: `${this.chain}.${this.symbol}`;
}
toUrl() {
return this.isSynthetic ? `${this.chain}.${this.symbol.replace("/", ".")}` : this.toString();
return this.isSynthetic
? `${this.chain}.${this.symbol.replace("/", ".")}`
: this.isTradeAsset
? `${this.chain}.${this.symbol.replace("~", "..")}`
: this.toString();
}

@@ -130,4 +138,8 @@

const { chain, isSynthetic } = getAssetInfo(unsafeIdentifier);
const token = staticTokensMap.get(unsafeIdentifier.toUpperCase() as TokenNames);
const { chain, isSynthetic, isTradeAsset } = getAssetInfo(unsafeIdentifier);
const token = staticTokensMap.get(
chain === Chain.Solana
? (unsafeIdentifier as TokenNames)
: (unsafeIdentifier.toUpperCase() as TokenNames),
);
const tokenDecimal = token?.decimal || commonAssetDecimal;

@@ -154,3 +166,3 @@

? createAssetValue(identifier, fromBaseDecimal ? adjustedValue : parsedValue)
: isSynthetic
: isSynthetic || isTradeAsset
? createSyntheticAssetValue(identifier, adjustedValue)

@@ -169,6 +181,9 @@ : new AssetValue({ tax, decimal, identifier, value: adjustedValue });

for (const { identifier, chain, ...rest } of tokenList.tokens) {
staticTokensMap.set(identifier.toUpperCase() as TokenNames, {
identifier,
decimal: "decimals" in rest ? rest.decimals : BaseDecimal[chain as Chain],
});
staticTokensMap.set(
chain !== "SOL" ? (identifier.toUpperCase() as TokenNames) : identifier,
{
identifier,
decimal: "decimals" in rest ? rest.decimals : BaseDecimal[chain as Chain],
},
);
}

@@ -285,6 +300,12 @@ }

const staticToken = staticTokensMap.get(identifier.toUpperCase() as TokenNames);
const isCaseSensitiveChain = identifier.includes("SOL.");
const modifiedIdentifier = isCaseSensitiveChain
? (identifier as TokenNames)
: (identifier.toUpperCase() as TokenNames);
const staticToken = staticTokensMap.get(modifiedIdentifier);
const decimal = staticToken?.decimal || (await getDecimal(getAssetInfo(identifier)));
if (!staticToken) {
staticTokensMap.set(identifier.toUpperCase() as TokenNames, { identifier, decimal });
staticTokensMap.set(modifiedIdentifier, { identifier, decimal });
}

@@ -301,5 +322,7 @@

const assetSeperator = identifier.slice(0, 14).includes("~") ? "~" : "/";
const [synthChain, symbol] = isMayaOrThor
? identifier.split(".").slice(1).join().split("/")
: identifier.split("/");
? identifier.split(".").slice(1).join().split(assetSeperator)
: identifier.split(assetSeperator);

@@ -316,3 +339,3 @@ if (!(synthChain && symbol)) {

value: safeValue(value, 8),
identifier: `${chain || Chain.THORChain}.${synthChain}/${symbol}`,
identifier: `${chain || Chain.THORChain}.${synthChain}${assetSeperator}${symbol}`,
});

@@ -330,2 +353,4 @@ }

const isSynthetic = identifier.slice(0, 14).includes("/");
const isTradeAsset = identifier.slice(0, 14).includes("~");
const assetSeperator = isTradeAsset ? "~" : "/";

@@ -337,6 +362,6 @@ const isThorchain = identifier.split(".")?.[0]?.toUpperCase() === Chain.THORChain;

isThorchain || isMaya
? identifier.split(".").slice(1).join().split("/")
: identifier.split("/");
? identifier.split(".").slice(1).join().split(assetSeperator)
: identifier.split(assetSeperator);
if (isSynthetic && !(synthChain && synthSymbol)) {
if ((isSynthetic || isTradeAsset) && !(synthChain && synthSymbol)) {
throw new SwapKitError({

@@ -349,3 +374,3 @@ errorKey: "helpers_invalid_asset_identifier",

const adjustedIdentifier =
identifier.includes(".") && !isSynthetic
identifier.includes(".") && !isSynthetic && !isTradeAsset
? identifier

@@ -356,3 +381,3 @@ : `${isMaya ? Chain.Maya : Chain.THORChain}.${synthSymbol}`;

const symbol = isSynthetic ? synthSymbol : rest.join(".");
const symbol = isSynthetic || isTradeAsset ? synthSymbol : rest.join(".");
const splitSymbol = symbol.split("-");

@@ -362,14 +387,18 @@ const ticker = (

) as string;
const address = splitSymbol.length === 1 ? undefined : splitSymbol[splitSymbol.length - 1];
const unformattedAddress =
splitSymbol.length === 1 ? undefined : splitSymbol[splitSymbol.length - 1];
const address = chain === Chain.Solana ? unformattedAddress : unformattedAddress?.toLowerCase();
return {
address: address?.toLowerCase(),
address,
chain,
isGasAsset: isGasAsset({ chain, symbol }),
isSynthetic,
isTradeAsset,
ticker,
symbol:
(isSynthetic ? `${synthChain}/` : "") +
(address ? `${ticker}-${address?.toLowerCase() ?? ""}` : symbol),
(isSynthetic || isTradeAsset ? `${synthChain}${assetSeperator}` : "") +
(address ? `${ticker}-${address ?? ""}` : symbol),
};
}

@@ -92,3 +92,2 @@ const errorCodes = {

wallet_radix_transaction_failed: 20802,
wallet_onekey_no_device_found: 20803,
/**

@@ -95,0 +94,0 @@ * Chainflip

@@ -26,3 +26,3 @@ import { ExplorerUrl, RPCUrl } from "./network";

export type WalletChain = Exclude<Chain, Chain.Chainflip | Chain.Radix>;
export type WalletChain = Exclude<Chain, Chain.Radix>;

@@ -29,0 +29,0 @@ export enum ChainId {

@@ -20,3 +20,3 @@ import type { CovalentApiType, EthplorerApiType } from "@swapkit/toolbox-evm";

} & {
[key in CosmosChain | Chain.Solana | Chain.Radix | Chain.Polkadot]?: string;
[key in CosmosChain | Chain.Solana | Chain.Radix | Chain.Polkadot | Chain.Chainflip]?: string;
};

@@ -23,0 +23,0 @@

@@ -43,3 +43,2 @@ import type { CosmosWallets, ThorchainWallets } from "@swapkit/toolbox-cosmos";

OKX_MOBILE = "OKX_MOBILE",
ONEKEY = "ONEKEY",
PHANTOM = "PHANTOM",

@@ -46,0 +45,0 @@ POLKADOT_JS = "POLKADOT_JS",

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc