@swapkit/helpers 6.3.0 → 6.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,23 @@
1
1
  # @swapkit/helpers
2
2
 
3
+ ## 6.4.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [#478](https://github.com/swapkit/sdk/pull/478) [`0ea5efb`](https://github.com/swapkit/sdk/commit/0ea5efbcd24d3771b169e893d583760c64838f6b) Thanks [@hippocampusSK](https://github.com/hippocampusSK)! - The Tron toolbox now reports `toolbox_tron_insufficient_balance` instead of `toolbox_tron_transaction_creation_failed` when the node rejects a TRX or TRC-20 transfer because the wallet cannot cover it, including the extra fee for sending to an account that is not activated yet. The node's reason is kept in the error info, and `transfer` no longer wraps this error in `toolbox_tron_token_transfer_failed`.
8
+
9
+ - Updated dependencies []:
10
+ - @swapkit/tokens@5.0.17
11
+
12
+ ## 6.4.0
13
+
14
+ ### Minor Changes
15
+
16
+ - [#460](https://github.com/swapkit/sdk/pull/460) [`9190931`](https://github.com/swapkit/sdk/commit/9190931bb2c1f911543a22cb8ccc91e3913cfe6c) Thanks [@hippocampusSK](https://github.com/hippocampusSK)! - `SwapKitApi` now covers the full limit-order API: `getLimitOrderTokens`, `getLimitOrderQuote`, `buildLimitOrder`, `submitLimitOrder`, `getLimitOrders`, `getLimitOrder`, `buildLimitOrderCancel` and `submitLimitOrderCancel`, with typed responses and `LimitOrderStatus` and `LimitOrderTxType` constants. `getLimitOrderQuote` accepts an optional `providers` list to restrict the quote to those providers. Each call can be overridden through `SKConfig.endpoints`.
17
+ - [#467](https://github.com/swapkit/sdk/pull/467) [`6ddbd12`](https://github.com/swapkit/sdk/commit/6ddbd12b87af88d304aa575518970214ca4516e9) Thanks [@ice-chillios](https://github.com/ice-chillios)! - `getTokenAddress` and `getChecksumAddressFromAsset` now use `isGasAsset`, so `MONAD.MON`, `XLAYER.OKB` and `GNO.xDAI` resolve to the native asset address instead of returning `null` or throwing. Identifiers that repeat the chain name on a chain whose gas asset has another ticker, such as `ARB.ARB` or `BSC.BSC`, no longer resolve to the native asset address. `ContractAddress[Chain.Optimism]` is now the zero address, like every EVM chain except Polygon, so `OP.ETH` resolves to the zero address instead of the OP token contract (`0x4200000000000000000000000000000000000042`). `OP.OP` without an address still resolves to the OP token contract. The Botanix toolbox now targets the Botanix network instead of Sonic.
18
+ - [#474](https://github.com/swapkit/sdk/pull/474) [`f107064`](https://github.com/swapkit/sdk/commit/f10706478e42440912a009b011b92b4e345104f8) Thanks [@ice-chillios](https://github.com/ice-chillios)! - The TON toolbox spaces out and retries its requests to the public Toncenter endpoint, which allows about one request per second without an API key, so TON jetton sales such as TON.USDT are much less likely to fail there. Requests to the chain's default endpoints start at least 1.1 seconds apart, through a queue shared by every toolbox in the process. Waits therefore grow with concurrent TON activity; for servers and other high-volume use, configure a custom TON RPC or a Toncenter API key, which is not spaced out. The endpoint health check is not queued. A request rejected with 429 or a gateway error (502 and above) is sent again after 1, 2 and 4 seconds. A node's 500 answer, such as a rejected message, a timeout and a network failure fail at once. A jetton lookup that the RPC does not answer is reported as `helpers_chain_rpc_connection_failed` instead of `core_swap_contract_not_found`. A toolbox looks up each jetton wallet address only once per jetton and owner.
19
+ - [#464](https://github.com/swapkit/sdk/pull/464) [`c20cc10`](https://github.com/swapkit/sdk/commit/c20cc10b4534c7948dfe4b57f29e07f1b183f1ca) Thanks [@github-actions](https://github.com/apps/github-actions)! - Update generated token lists. (via @swapkit/tokens@5.0.17)
20
+
3
21
  ## 6.3.0
4
22
 
5
23
  ### Minor Changes
package/dist/api/index.js CHANGED
@@ -1 +1 @@
1
- import{$ as j,$a as ka,Aa as K,Ba as L,Ca as M,Da as N,Ea as O,Fa as P,Ga as Q,Ha as R,Ia as S,Ja as T,Ka as U,La as V,Ma as W,Na as X,Oa as Y,Pa as Z,Qa as _,Ra as aa,S as a,Sa as ba,T as b,Ta as ca,U as c,Ua as da,V as d,Va as ea,W as e,Wa as fa,X as f,Xa as ga,Y as g,Ya as ha,Z as h,Za as ia,_ as i,_a as ja,aa as k,ab as la,ba as l,bb as ma,ca as m,cb as na,da as n,db as oa,ea as o,fa as p,ga as q,ha as r,ia as s,ja as t,ka as u,la as v,ma as w,na as x,oa as y,pa as z,qa as A,ra as B,sa as C,ta as D,ua as E,va as F,wa as G,xa as H,ya as I,za as J}from"../chunk-yft3rsg6.js";export{j as ApiV2ErrorSchema,da as ApprovalTransactionSchema,ba as ApproveRequestParams,ca as ApproveResponseSchema,k as AssetValueSchema,r as BrokerDepositChannelParamsSchema,U as ChainflipMetadataSchema,l as CoinGeckoMetadataSchema,I as CosmosTransactionSchema,q as DepositChannelParamsSchema,s as DepositChannelResponseSchema,G as EVMTransactionDetailsParamsSchema,H as EVMTransactionDetailsSchema,E as EVMTransactionSchema,A as EstimatedTimeSchema,z as FeesSchema,aa as GasResponseSchema,_ as GasSchema,M as HYPERCORE_USDC_TOKEN_ID,N as HyperCoreEip712TypedDataSchema,O as HyperCoreSendAssetActionSchema,Q as HyperCoreSendAssetTransactionSchema,P as HyperCoreTypedDataTransactionSchema,t as NearDepositChannelParamsSchema,u as NearDepositChannelResultSchema,v as NearSwapResponseSchema,p as PriceRequestSchema,n as PriceResponseSchema,a as PriorityLabel,d as ProviderAction,o as QuoteRequestSchema,Y as QuoteResponseRouteItem,Z as QuoteResponseSchema,ka as QuoteRouteV2Response,ma as QuoteV2ResponseSchema,ga as QuoteV3ResponseSchema,R as RouteLegSchema,S as RouteLegWithoutAddressesSchema,T as RouteQuoteMetadataAssetSchema,V as RouteQuoteMetadataSchema,W as RouteQuoteMetadataV2Schema,la as RouteQuoteProviderErrorSchema,b as RouteQuoteTxType,X as RouteQuoteWarningSchema,J as StarknetTransactionSchema,ea as StellarApprovalTransactionSchema,fa as SwapApprovalTransactionSchema,oa as SwapKitApi,na as SwapRouteV2ResponseSchema,ia as SwapToAssetSchema,ha as SwapToRequestSchema,ja as SwapToResponseSchema,K as TONTransactionMessageSchema,L as TONTransactionSchema,m as TokenDetailsMetadataSchema,g as TokenSchema,w as TrackerResponseSchema,i as TrackingRequestQuerySchema,h as TrackingRequestSchema,f as TrackingStatus,y as TransactionDTOSchema,x as TransactionSchema,F as TronTransactionSchema,e as TxnStatus,c as TxnType,B as isTransactionValue,C as parseTransactionValue,D as toHexTransactionValue};
1
+ import{$ as j,$a as ka,Aa as K,Ba as L,Ca as M,Da as N,Ea as O,Fa as P,Ga as Q,Ha as R,Ia as S,Ja as T,Ka as U,La as V,Ma as W,Na as X,Oa as Y,Pa as Z,Qa as _,Ra as aa,S as a,Sa as ba,T as b,Ta as ca,U as c,Ua as da,V as d,Va as ea,W as e,Wa as fa,X as f,Xa as ga,Y as g,Ya as ha,Z as h,Za as ia,_ as i,_a as ja,aa as k,ab as la,ba as l,bb as ma,ca as m,cb as na,da as n,db as oa,ea as o,eb as pa,fa as p,fb as qa,ga as q,gb as ra,ha as r,hb as sa,ia as s,ib as ta,ja as t,jb as ua,ka as u,kb as va,la as v,lb as wa,ma as w,mb as xa,na as x,nb as ya,oa as y,ob as za,pa as z,pb as Aa,qa as A,qb as Ba,ra as B,rb as Ca,sa as C,sb as Da,ta as D,tb as Ea,ua as E,ub as Fa,va as F,vb as Ga,wa as G,wb as Ha,xa as H,xb as Ia,ya as I,za as J}from"../chunk-8jaj909z.js";export{j as ApiV2ErrorSchema,da as ApprovalTransactionSchema,ba as ApproveRequestParams,ca as ApproveResponseSchema,k as AssetValueSchema,r as BrokerDepositChannelParamsSchema,U as ChainflipMetadataSchema,l as CoinGeckoMetadataSchema,I as CosmosTransactionSchema,q as DepositChannelParamsSchema,s as DepositChannelResponseSchema,G as EVMTransactionDetailsParamsSchema,H as EVMTransactionDetailsSchema,E as EVMTransactionSchema,A as EstimatedTimeSchema,z as FeesSchema,aa as GasResponseSchema,_ as GasSchema,M as HYPERCORE_USDC_TOKEN_ID,N as HyperCoreEip712TypedDataSchema,O as HyperCoreSendAssetActionSchema,Q as HyperCoreSendAssetTransactionSchema,P as HyperCoreTypedDataTransactionSchema,ya as LimitOrderApprovalTxSchema,ua as LimitOrderBuildRequestSchema,za as LimitOrderBuildResponseSchema,Ga as LimitOrderCancelBuildResponseSchema,Ha as LimitOrderCancelSubmitResponseSchema,Fa as LimitOrderCancelTxSchema,Ea as LimitOrderCancelTypedDataSchema,wa as LimitOrderEVMTransactionSchema,Da as LimitOrderListResponseSchema,ra as LimitOrderQuoteRequestSchema,ta as LimitOrderQuoteResponseSchema,sa as LimitOrderQuoteRouteSchema,Ca as LimitOrderSchema,oa as LimitOrderStatus,Aa as LimitOrderSubmitResponseSchema,qa as LimitOrderTokensResponseSchema,Ba as LimitOrderTxHashSchema,xa as LimitOrderTxMetaSchema,pa as LimitOrderTxType,va as LimitOrderTypedDataSchema,t as NearDepositChannelParamsSchema,u as NearDepositChannelResultSchema,v as NearSwapResponseSchema,p as PriceRequestSchema,n as PriceResponseSchema,a as PriorityLabel,d as ProviderAction,o as QuoteRequestSchema,Y as QuoteResponseRouteItem,Z as QuoteResponseSchema,ka as QuoteRouteV2Response,ma as QuoteV2ResponseSchema,ga as QuoteV3ResponseSchema,R as RouteLegSchema,S as RouteLegWithoutAddressesSchema,T as RouteQuoteMetadataAssetSchema,V as RouteQuoteMetadataSchema,W as RouteQuoteMetadataV2Schema,la as RouteQuoteProviderErrorSchema,b as RouteQuoteTxType,X as RouteQuoteWarningSchema,J as StarknetTransactionSchema,ea as StellarApprovalTransactionSchema,fa as SwapApprovalTransactionSchema,Ia as SwapKitApi,na as SwapRouteV2ResponseSchema,ia as SwapToAssetSchema,ha as SwapToRequestSchema,ja as SwapToResponseSchema,K as TONTransactionMessageSchema,L as TONTransactionSchema,m as TokenDetailsMetadataSchema,g as TokenSchema,w as TrackerResponseSchema,i as TrackingRequestQuerySchema,h as TrackingRequestSchema,f as TrackingStatus,y as TransactionDTOSchema,x as TransactionSchema,F as TronTransactionSchema,e as TxnStatus,c as TxnType,B as isTransactionValue,C as parseTransactionValue,D as toHexTransactionValue};
@@ -0,0 +1,5 @@
1
+ var yn=Object.defineProperty;var bn=(e)=>e;function Sn(e,t){this[e]=bn.bind(null,t)}var nt=(e,t)=>{for(var i in t)yn(e,i,{get:t[i],enumerable:!0,configurable:!0,set:Sn.bind(t,i)})};var it=((e)=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,i)=>(typeof require<"u"?require:t)[i]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});import{Chain as Ce,getChainConfig as fi}from"@swapkit/types";import{AllChains as si,Chain as R,EVMChains as oi,getChainConfig as ce}from"@swapkit/types";import{match as Be}from"ts-pattern";import{Chain as u,EVMChains as Wn,getChainConfig as j,UTXOChains as Gn}from"@swapkit/types";import{match as le}from"ts-pattern";import{AllChains as at,Chain as ot,getChainConfig as In,MAYAConfig as Cn,THORConfig as On}from"@swapkit/types";import{createStore as Pn}from"zustand/vanilla";import{AllChains as An,getChainConfig as Tn}from"@swapkit/types";var Rs=Object.freeze(Object.fromEntries(An.map((e)=>[e,Object.freeze(Tn(e).networkDerivationPath)])));var oe;((d)=>{d.unknownError="unknownError";d.test_error="test_error";d.providerDetailsError="providerDetailsError";d.blockHeaderNotFound="blockHeaderNotFound";d.blockHashNotFoundAtHeight="blockHashNotFoundAtHeight";d.blockHashNotFoundAtHash="blockHashNotFoundAtHash";d.txHashMissing="txHashMissing";d.assetValueMissingInfo="assetValueMissingInfo";d.invalidAsset="invalidAsset";d.blockIsRequired="blockIsRequired";d.currentBlockHeaderNotFound="currentBlockHeaderNotFound";d.failedToRetrieveBalance="failedToRetrieveBalance";d.failedToRetrieveBlock="failedToRetrieveBlock";d.failedToRetrieveFees="failedToRetrieveFees";d.notImplementedBCH="notImplementedBCH";d.notImplementedDoge="notImplementedDoge";d.noPoolsFound="noPoolsFound";d.noVaultsFound="noVaultsFound";d.noTxFound="noTxFound";d.noInputCoinFound="noInputCoinFound";d.noBlockDataFound="noBlockDataFound";d.multipleCosmosMessages="multipleCosmosMessages";d.heightOrHashNotProvided="heightOrHashNotProvided";d.unknownDenom="unknownDenom";d.invalidBlockHeight="invalidBlockHeight";d.timestampExtrinsicNoArgumentsForBlock="timestampExtrinsicNoArgumentsForBlock";d.timestampExtrinsicNoTimestampForBlock="timestampExtrinsicNoTimestampForBlock";d.noTimestampExtrinsicForHash="noTimestampExtrinsicForHash";d.timestampExtrinsicNoArgumentsForHash="timestampExtrinsicNoArgumentsForHash";d.txMemoUndefined="txMemoUndefined";d.txMemoIncorrect="txMemoIncorrect";d.txTypeNotFound="txTypeNotFound";d.txNoMessage="txNoMessage";d.txNotFound="txNotFound";d.txReceiptNotFound="txReceiptNotFound";d.txParsingError="txParsingError";d.txLogsParsingError="txLogsParsingError";d.blockNotFound="blockNotFound";d.balanceNotFound="balanceNotFound";d.configError="configError";d.synthSwapDisallowed="synthSwapDisallowed";d.providerQuoteTimeout="providerQuoteTimeout";d.noQuoteResponse="noQuoteResponse";d.noPoolAssetsFound="noPoolAssetsFound";d.noThorchainPools="noThorchainPools";d.noMayachainPools="noMayachainPools";d.noThorchainNetworkInfo="noThorchainNetworkInfo";d.invalidAffiliateFee="invalidAffiliateFee";d.invalidBuyAssetAddress="invalidBuyAssetAddress";d.invalidSellAssetAddress="invalidSellAssetAddress";d.invalidSourceAddress="invalidSourceAddress";d.invalidDestinationAddress="invalidDestinationAddress";d.sourceAddressIsSmartContract="sourceAddressIsSmartContract";d.destinationAddressIsSmartContract="destinationAddressIsSmartContract";d.invalidChainId="invalidChainId";d.unsupportedChainId="unsupportedChainId";d.unsupportedEVMChainId="unsupportedEVMChainId";d.unsupportedMethod="unsupportedMethod";d.unsupportedProvider="unsupportedProvider";d.invalidParamsForMethod="invalidParamsForMethod";d.unsupportedAdapter="unsupportedAdapter";d.noWhitelistTokens="noWhitelistTokens";d.failedFetchGasPrice="failedFetchGasPrice";d.failedToCreateDepositChannel="failedToCreateDepositChannel";d.noProviderDetailsFound="noProviderDetailsFound";d.noTokenListsFound="noTokenListsFound";d.tokenNotFound="tokenNotFound";d.tokenPriceNotFound="tokenPriceNotFound";d.tokenPriceFailedToUpdate="tokenPriceFailedToUpdate";d.swapAmountTooSmall="swapAmountTooSmall";d.legsArrayIsEmpty="legsArrayIsEmpty";d.failedToFetchQuoteForLeg="failedToFetchQuoteForLeg";d.noBlockHeaderFound="noBlockHeaderFound";d.failedToSimulateSwap="failedToSimulateSwap";d.addressScreeningFailed="addressScreeningFailed";d.noLiquidtyProvidersFound="noLiquidtyProvidersFound";d.insufficientLiquidity="insufficientLiquidity";d.noInboundDataFound="noInbounDataFound";d.noInboundAddressesFound="noInboundAddressesFound";d.noInboundAddressFoundForChain="noInboundAddressFoundForChain";d.noLastBlocksFound="noLastBlocksFound";d.noVersionFound="noVersionFound";d.noConstantsFound="noConstantsFound";d.noMimirsFound="noMimirsFound";d.noRoutesFound="noRoutesFound";d.quoteNotFound="quoteNotFound";d.ledgerSignFailed="ledgerSignFailed";d.ledgerWrongPayload="ledgerWrongPayload";d.ledgerFetchSwapFailed="ledgerFetchSwapFailed";d.failedToFetchTx="failedToFetchTx";d.failedBuildTransactionDetails="failedBuildTransactionDetails";d.noLegsForRoute="noLegsForRoute";d.noRouterAddressFound="noRouterAddressFound";d.noAggregatorAddressFound="noAggregatorAddressFound";d.noContractInstanceFound="noContractInstanceFound";d.noContractAddressFound="noContractAddressFound";d.invalidAffiliate="invalidAffiliate";d.thornameAffiliate="thornameAffiliate";d.providerNotfound="No provider found";d.noRecordFound="No Record found";d.slippageTooLow="Slippage too low";d.tradingHalted="tradingHalted";d.noWrappedGasAsset="noWrappedGasAsset";d.aggregatorAddressNotFound="aggregatorAddressNotFound";d.routerAddressNotFound="routerAddressNotFound";d.dummyAddressNotFound="dummyAddressNotFound";d.trackerError="trackerError";d.thorchainPoolUnavailable="thorchainPoolUnavailable";d.noOhlcvDataFound="noOhlcvDataFound";d.noTradingPairs="noTradingPairs";d.noLendingAvailability="noLendingAvailability";d.lendingRepayTooSmall="lendingRepayTooSmall";d.missingState="missingState";d.ledgerSwapNotFound="ledgerSwapNotFound";d.ledgerSwapNotReadyForTracking="ledgerSwapNotReadyForTracking";d.errorEstimatingGas="errorEstimatingGas";d.apiKeyInvalid="apiKeyInvalid";d.apiKeyFailedToUpdate="apiKeyFailedToUpdate";d.apiKeyExpired="apiKeyExpired";d.unauthorized="unauthorized";d.failedToCreateMemo="failedToCreateMemo";d.radixIncorrectInstructions="radixIncorrectInstructions";d.radixTxMissedParam="radixTxMissedParam";d.radixTxMissedAccount="radixTxMissedAccount";d.radixManifestParseError="radixManifestParseError";d.radixManifestBuildError="radixManifestBuildError";d.invalidAddressForChain="invalidAddressForChain";d.riskyAddress="riskyAddress";d.noRoutesToProcess="noRoutesToProcess";d.sellAssetAmountTooSmall="sellAssetAmountTooSmall";d.missingPrivateKey="missingPrivateKey";d.noMemoPriceProtection="noMemoPriceProtection"})(oe||={});var Le;((r)=>{r.highSlippage="highSlippage";r.highPriceImpact="highPriceImpact";r.insufficientBalance="insufficientBalance"})(Le||={});var C;((x)=>{x.CHAINFLIP="CHAINFLIP";x.CHAINFLIP_STREAMING="CHAINFLIP_STREAMING";x.JUPITER="JUPITER";x.MAYACHAIN="MAYACHAIN";x.MAYACHAIN_STREAMING="MAYACHAIN_STREAMING";x.ONEINCH="ONEINCH";x.PANCAKESWAP="PANCAKESWAP";x.SUSHISWAP_V2="SUSHISWAP_V2";x.THORCHAIN="THORCHAIN";x.THORCHAIN_STREAMING="THORCHAIN_STREAMING";x.TRADERJOE_V2="TRADERJOE_V2";x.UNISWAP_V2="UNISWAP_V2";x.UNISWAP_V3="UNISWAP_V3";x.NEAR="NEAR";x.GARDEN="GARDEN";x.OKX="OKX";x.HARBOR="HARBOR";x.FLASHNET="FLASHNET";x.MAYAN="MAYAN";x.PACTSWAP="PACTSWAP";x.RELAY="RELAY"})(C||={});var _e;((g)=>{g.LIQUIDITY="liquidity";g.NETWORK="network";g.INBOUND="inbound";g.OUTBOUND="outbound";g.AFFILIATE="affiliate";g.TAX="tax";g.PRIORITY="priority";g.SERVICE="service"})(_e||={});var wn;((r)=>{r.Average="average";r.Fast="fast";r.Fastest="fastest"})(wn||={});var xn;((i)=>{i.Approve="approve";i.CheckOnly="checkOnly"})(xn||={});var Rn;((w)=>{w.NAME_REGISTER="~";w.BOND="BOND";w.DEPOSIT="+";w.LEAVE="LEAVE";w.UNBOND="UNBOND";w.WITHDRAW="-";w.RUNEPOOL_DEPOSIT="POOL+";w.RUNEPOOL_WITHDRAW="POOL-";w.CLAIM_TCY="tcy";w.STAKE_TCY="tcy+";w.UNSTAKE_TCY="tcy-"})(Rn||={});var rt={core_estimated_max_spendable_chain_not_supported:10001,core_extend_error:10002,core_inbound_data_not_found:10003,core_approve_asset_address_or_from_not_found:10004,core_plugin_not_found:10005,core_plugin_swap_not_found:10006,core_approve_asset_target_invalid:10007,core_explorer_unsupported_chain:10008,core_verify_message_not_supported:10009,core_chain_halted:10010,core_wallet_connection_not_found:10101,core_wallet_evmwallet_not_installed:10103,core_wallet_walletconnect_not_installed:10104,core_wallet_keystore_not_installed:10105,core_wallet_ledger_not_installed:10106,core_wallet_trezor_not_installed:10107,core_wallet_keplr_not_installed:10108,core_wallet_okx_not_installed:10109,core_wallet_keepkey_not_installed:10110,core_wallet_talisman_not_installed:10111,core_wallet_not_keypair_wallet:10112,core_wallet_sign_message_not_supported:10113,core_wallet_connection_failed:10114,core_wallet_create_not_supported:10115,core_wallet_sign_typed_data_not_supported:10116,core_swap_invalid_params:10201,core_swap_route_not_complete:10202,core_swap_asset_not_recognized:10203,core_swap_contract_not_found:10204,core_swap_route_transaction_not_found:10205,core_swap_contract_not_supported:10206,core_swap_transaction_error:10207,core_swap_quote_mode_not_supported:10208,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:20001,wallet_missing_api_key:20002,wallet_chain_not_supported:20003,wallet_missing_params:20004,wallet_provider_not_found:20005,wallet_failed_to_add_or_switch_network:20006,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_ledger_transport_error:20106,wallet_ledger_public_key_error:20107,wallet_ledger_derivation_path_error:20108,wallet_ledger_signing_error:20109,wallet_ledger_app_not_open:20110,wallet_ledger_invalid_response:20111,wallet_ledger_method_not_supported:20112,wallet_ledger_invalid_params:20113,wallet_ledger_invalid_signature:20114,wallet_ledger_no_provider:20115,wallet_ledger_pubkey_not_found:20116,wallet_ledger_transport_not_defined:20117,wallet_ledger_webusb_not_supported:20118,wallet_ledger_chain_not_supported:20119,wallet_ledger_invalid_asset:20120,wallet_ledger_invalid_account:20121,wallet_ledger_address_not_found:20122,wallet_ledger_failed_to_get_address:20123,wallet_ledger_webhid_not_supported:20124,wallet_phantom_not_found:20201,wallet_walletconnect_project_id_not_specified:20401,wallet_walletconnect_connection_not_established:20402,wallet_walletconnect_namespace_not_supported:20403,wallet_walletconnect_chain_not_supported:20404,wallet_walletconnect_invalid_method:20405,wallet_walletconnect_method_not_supported:20406,wallet_trezor_failed_to_sign_transaction:20501,wallet_trezor_derivation_path_not_supported:20502,wallet_trezor_failed_to_get_address:20503,wallet_trezor_transport_error:20504,wallet_trezor_method_not_supported:20505,wallet_trezor_failed_to_get_public_key:20506,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_radix_invalid_manifest:20803,wallet_radix_method_not_supported:20804,wallet_radix_no_account:20805,wallet_keepkey_not_found:20901,wallet_keepkey_asset_not_defined:20902,wallet_keepkey_contract_address_not_provided:20903,wallet_keepkey_send_transaction_no_address:20904,wallet_keepkey_derivation_path_error:20905,wallet_keepkey_signing_error:20906,wallet_keepkey_transport_error:20907,wallet_keepkey_unsupported_chain:20908,wallet_keepkey_invalid_response:20909,wallet_keepkey_chain_not_supported:20910,wallet_keepkey_signer_not_found:20911,wallet_keepkey_no_accounts:20912,wallet_keepkey_method_not_supported:20913,wallet_keepkey_invalid_params:20914,wallet_keepkey_config_not_found:20915,wallet_keepkey_no_provider:20916,wallet_keepkey_account_not_found:20917,wallet_keepkey_failed_to_get_public_key:20918,wallet_bitkeep_not_found:21001,wallet_bitkeep_failed_to_switch_network:21002,wallet_bitkeep_no_accounts:21003,wallet_passkeys_sign_transaction_error:21101,wallet_passkeys_not_found:21102,wallet_passkeys_no_address:21103,wallet_passkeys_request_canceled:21104,wallet_passkeys_signature_canceled:21105,wallet_passkeys_failed_to_switch_network:21106,wallet_passkeys_chain_not_supported:21107,wallet_passkeys_instance_missing:21108,wallet_onekey_not_found:21201,wallet_onekey_sign_transaction_error:21202,wallet_okx_not_found:21301,wallet_okx_chain_not_supported:21302,wallet_okx_failed_to_switch_network:21303,wallet_okx_no_accounts:21304,wallet_keplr_not_found:21401,wallet_keplr_chain_not_supported:21402,wallet_keplr_signer_not_found:21403,wallet_keplr_no_accounts:21404,wallet_cosmostation_not_found:21501,wallet_cosmostation_chain_not_supported:21502,wallet_cosmostation_evm_provider_not_found:21503,wallet_cosmostation_keplr_provider_not_found:21504,wallet_cosmostation_no_accounts:21505,wallet_cosmostation_no_evm_accounts:21506,wallet_cosmostation_no_evm_address:21507,wallet_cosmostation_signer_not_found:21508,wallet_passkey_not_supported:21601,wallet_passkey_connection_failed:21602,wallet_coinbase_not_found:21701,wallet_coinbase_chain_not_supported:21702,wallet_coinbase_method_not_supported:21703,wallet_coinbase_no_accounts:21704,wallet_evm_extensions_failed_to_switch_network:21801,wallet_evm_extensions_no_provider:21802,wallet_evm_extensions_not_found:21803,wallet_keystore_invalid_password:21901,wallet_keystore_unsupported_version:21902,wallet_keystore_invalid_word_count:21903,wallet_near_extensions_failed_to_switch_network:22001,wallet_near_extensions_no_provider:22002,wallet_near_extensions_not_found:22003,wallet_near_method_not_supported:22004,wallet_petra_not_found:22201,wallet_vultisig_not_found:22101,wallet_vultisig_contract_address_not_provided:22102,wallet_vultisig_asset_not_defined:22103,wallet_vultisig_send_transaction_no_address:22104,wallet_xaman_not_configured:23001,wallet_xaman_not_connected:23002,wallet_xaman_auth_failed:23003,wallet_xaman_connection_failed:23004,wallet_xaman_transaction_failed:23005,wallet_xaman_monitoring_failed:23006,wallet_tronlink_request_accounts_failed:24001,wallet_tronlink_locked:24002,chainflip_channel_error:30001,chainflip_unknown_asset:30002,chainflip_broker_invalid_params:30101,chainflip_broker_recipient_error:30102,chainflip_broker_register:30103,chainflip_broker_tx_error:30104,chainflip_broker_withdraw:30105,chainflip_broker_fund_only_flip_supported:30106,chainflip_broker_fund_invalid_address:30107,thorchain_chain_halted:40001,thorchain_trading_halted:40002,thorchain_asset_is_not_tcy:40003,thorchain_swapin_router_required:40101,thorchain_swapin_vault_required:40102,thorchain_swapin_memo_required:40103,thorchain_swapin_token_required:40104,thorchain_preferred_asset_payout_required:40105,toolbox_cosmos_account_not_found:50101,toolbox_cosmos_invalid_fee:50102,toolbox_cosmos_invalid_params:50103,toolbox_cosmos_no_signer:50104,toolbox_cosmos_not_supported:50105,toolbox_cosmos_signer_not_defined:50106,toolbox_cosmos_validate_address_prefix_not_found:50107,toolbox_cosmos_verify_signature_no_pubkey:50108,toolbox_evm_error_estimating_gas_limit:50201,toolbox_evm_error_sending_transaction:50202,toolbox_evm_gas_estimation_error:50203,toolbox_evm_invalid_gas_asset_address:50204,toolbox_evm_invalid_params:50205,toolbox_evm_invalid_transaction:50206,toolbox_evm_no_abi_fragment:50207,toolbox_evm_no_contract_address:50208,toolbox_evm_no_fee_data:50209,toolbox_evm_no_from_address:50210,toolbox_evm_no_gas_price:50211,toolbox_evm_no_signer_address:50212,toolbox_evm_no_signer:50213,toolbox_evm_no_to_address:50214,toolbox_evm_not_supported:50215,toolbox_evm_provider_not_eip1193_compatible:50216,toolbox_evm_invalid_eip7702_authorization:50217,toolbox_evm_nonce_conflict:50218,toolbox_evm_tx_already_known:50219,toolbox_evm_typed_data_domain_mismatch:50220,toolbox_utxo_api_error:50301,toolbox_utxo_broadcast_failed:50302,toolbox_utxo_insufficient_balance:50303,toolbox_utxo_invalid_address:50304,toolbox_utxo_invalid_params:50305,toolbox_utxo_invalid_transaction:50306,toolbox_utxo_no_signer:50307,toolbox_utxo_not_supported:50308,toolbox_utxo_tx_not_found:50309,toolbox_utxo_rbf_not_supported:50310,toolbox_utxo_tx_not_replaceable:50311,toolbox_utxo_tx_already_confirmed:50312,toolbox_utxo_rbf_fee_too_low:50313,toolbox_utxo_rbf_insufficient_change:50314,toolbox_utxo_unsupported_script_type:50315,toolbox_solana_no_signer:50401,toolbox_solana_insufficient_balance:50402,toolbox_substrate_not_supported:50501,toolbox_substrate_transfer_error:50502,toolbox_radix_method_not_supported:50601,toolbox_ripple_get_balance_error:50701,toolbox_ripple_rpc_not_configured:50702,toolbox_ripple_signer_not_found:50703,toolbox_ripple_asset_not_supported:50704,toolbox_ripple_broadcast_error:50705,toolbox_ripple_get_trust_lines_error:50706,toolbox_ripple_invalid_trust_line_limit:50707,toolbox_tron_no_signer:50801,toolbox_tron_invalid_token_identifier:50802,toolbox_tron_token_transfer_failed:50803,toolbox_tron_transaction_creation_failed:50804,toolbox_tron_trongrid_api_error:50805,toolbox_tron_approve_failed:50806,toolbox_tron_invalid_token_contract:50807,toolbox_tron_allowance_check_failed:50808,toolbox_tron_invalid_transaction_integrity:50809,toolbox_tron_broadcast_failed:50810,toolbox_tron_insufficient_balance:50811,toolbox_hypercore_no_signer:51001,toolbox_hypercore_payload_mismatch:51002,toolbox_hypercore_insufficient_balance:51003,toolbox_hypercore_destination_sanctioned:51004,toolbox_hypercore_transfer_hash_not_found:51005,toolbox_hypercore_pre_transfer_check_failed:51006,toolbox_cardano_sign_transaction_failed:50901,toolbox_near_no_signer:90601,toolbox_near_invalid_address:90602,toolbox_near_invalid_amount:90603,toolbox_near_transfer_failed:90604,toolbox_near_access_key_error:90605,toolbox_near_no_rpc_url:90606,toolbox_near_empty_batch:90607,toolbox_near_balance_failed:90608,toolbox_near_invalid_name:90609,toolbox_near_missing_contract_address:90610,toolbox_near_no_account:90611,toolbox_near_invalid_gas_params:90612,toolbox_near_no_public_key_found:90613,toolbox_near_sign_transaction_failed:90614,toolbox_sui_address_required:90701,toolbox_sui_keypair_required:90702,toolbox_sui_balance_error:90703,toolbox_sui_transaction_creation_error:90704,toolbox_sui_signing_error:90705,toolbox_sui_broadcast_error:90706,toolbox_sui_no_signer:90707,toolbox_sui_no_sender:90708,toolbox_sui_missing_coin_type:90709,toolbox_sui_no_coins_found:90710,toolbox_sui_insufficient_balance:90711,toolbox_starknet_no_signer:90801,toolbox_starknet_invalid_address:90802,toolbox_starknet_fee_estimation_failed:90803,toolbox_starknet_account_not_deployed:90804,toolbox_starknet_transaction_failed:90805,toolbox_ton_no_signer:90901,toolbox_ton_invalid_address:90902,toolbox_ton_missing_jetton_address:90903,toolbox_ton_jetton_transfer_failed:90904,toolbox_ton_transaction_failed:90905,toolbox_aptos_address_required:91001,toolbox_aptos_keypair_required:91002,toolbox_aptos_balance_error:91003,toolbox_aptos_transaction_creation_error:91004,toolbox_aptos_signing_error:91005,toolbox_aptos_broadcast_error:91006,toolbox_aptos_no_signer:91007,toolbox_aptos_no_sender:91008,toolbox_aptos_missing_asset_type:91009,toolbox_aptos_insufficient_balance:91010,toolbox_stellar_no_signer:91101,toolbox_stellar_broadcast_error:91102,toolbox_stellar_invalid_address:91103,toolbox_stellar_account_not_found:91104,toolbox_stellar_transaction_failed:91105,toolbox_stellar_balance_error:91106,toolbox_stellar_trustline_asset_invalid:91112,toolbox_aleo_no_signer:91201,toolbox_aleo_invalid_address:91202,toolbox_aleo_balance_error:91203,toolbox_aleo_fee_estimation_failed:91204,toolbox_aleo_broadcast_error:91205,toolbox_aleo_transaction_failed:91206,toolbox_aleo_wasm_init_failed:91207,toolbox_aleo_unsupported_token:91208,toolbox_aleo_token_transfer_rejected:91209,toolbox_aleo_insufficient_fee_balance:91210,toolbox_aleo_no_unspent_records:91211,toolbox_aleo_conflicting_signers:91212,toolbox_aleo_no_rpc_urls:91213,toolbox_lightspark_missing_credentials:91301,toolbox_lightspark_invalid_invoice:91302,toolbox_lightspark_invoice_amount_mismatch:91303,toolbox_lightspark_invoice_destination_mismatch:91304,toolbox_lightspark_invoice_expired:91305,toolbox_lightspark_invoice_already_settled:91306,toolbox_lightspark_fee_limit_exceeded:91307,toolbox_lightspark_invalid_params:91308,toolbox_lightspark_api_error:91309,toolbox_lightspark_invalid_amount:91310,toolbox_lightspark_invalid_destination:91311,toolbox_lightspark_network_mismatch:91312,toolbox_lightspark_signing_key_unavailable:91313,toolbox_not_supported:59901,toolbox_fee_estimation_failed:59902,toolbox_sweep_amount_too_low:59903,toolbox_derivation_slot_unsupported:59904,plugin_near_invalid_name:41001,plugin_near_no_connection:41002,plugin_near_name_unavailable:41003,plugin_near_registration_failed:41004,plugin_near_transfer_failed:41005,plugin_garden_missing_data:42001,plugin_swapkit_swap_invalid_data:43001,plugin_swapkit_invalid_transaction:43002,plugin_swapkit_stellar_destination_wallet_not_found:43003,plugin_swapkit_unsupported_tx_type:43004,plugin_swapkit_limit_order_invalid_build:43005,plugin_swapkit_limit_order_unsupported_sign_shape:43006,plugin_swapkit_limit_order_unsupported_cancel_shape:43007,plugin_swapkit_limit_order_wallet_cannot_sign:43008,plugin_swapkit_limit_order_no_signable_provider:43009,plugin_swapkit_limit_order_submit_failed:43010,plugin_swapkit_limit_order_cancel_submit_failed:43011,api_v2_invalid_response:60001,api_v2_server_error:60002,api_v2_invalid_method_key_hash:60003,helpers_invalid_number_different_decimals:70001,helpers_invalid_number_of_years:70002,helpers_invalid_identifier:70003,helpers_invalid_asset_url:70004,helpers_invalid_asset_identifier:70005,helpers_invalid_memo_type:70006,helpers_failed_to_switch_network:70007,helpers_not_found_provider:70008,helpers_chain_not_supported:70009,helpers_invalid_params:70010,helpers_invalid_response:70011,helpers_chain_no_public_or_set_rpc_url:70012,helpers_chain_rpc_connection_failed:70013,mcp_wallet_not_configured:90001,not_implemented:99999};function Ee(e){return JSON.stringify(e,(t,i)=>typeof i==="bigint"?i.toString():i)}class b extends Error{static ErrorCode=rt;errorKey;info;constructor(e,t){let i=typeof e==="string",r=i?e:e.errorKey,s=i?void 0:e.info,a=`${r}${s?`: ${Ee(s)}`:""}`;super(a);if(Object.setPrototypeOf(this,b.prototype),this.name="SwapKitError",this.errorKey=r,this.info=s,this.cause=t,t){let l=t instanceof Error?`${t.message}${t.cause?` (${t.cause})`:""}`:Ee(t);console.error(`SwapKitError [${r}]: ${l}`)}else if(s)console.error(`SwapKitError [${r}]: ${Ee(s)}`)}}function Os(e){let t=rt;for(let[i,r]of Object.entries(e)){if(Object.hasOwn(t,i)){if(t[i]===r)continue;throw new b({errorKey:"helpers_invalid_params",info:{code:r,existingCode:t[i],key:i}})}let s=Object.keys(t).find((a)=>t[a]===r);if(s)throw new b({errorKey:"helpers_invalid_params",info:{code:r,existingKey:s,key:i}});t[i]=r}}var he={BITGET:"BITGET",BRAVE:"BRAVE",COINBASE_MOBILE:"COINBASE_MOBILE",COINBASE_WEB:"COINBASE_WEB",COSMOSTATION:"COSMOSTATION",EIP6963:"EIP6963",EXODUS:"EXODUS",KEEPKEY:"KEEPKEY",KEEPKEY_BEX:"KEEPKEY_BEX",KEPLR:"KEPLR",KEYSTORE:"KEYSTORE",LEDGER:"LEDGER",METAMASK:"METAMASK",OKX:"OKX",OKX_MOBILE:"OKX_MOBILE",ONEKEY:"ONEKEY",PASSKEY_WALLET:"PASSKEY_WALLET",PASSKEYS:"PASSKEYS",PETRA:"PETRA",PHANTOM:"PHANTOM",POLKADOT_JS:"POLKADOT_JS",RADIX_WALLET:"RADIX_WALLET",TALISMAN:"TALISMAN",TREZOR:"TREZOR",TRONLINK:"TRONLINK",TRUSTWALLET_WEB:"TRUSTWALLET_WEB",VULTISIG:"VULTISIG",WALLET_SELECTOR:"WALLET_SELECTOR",WALLETCONNECT:"WALLETCONNECT",XAMAN:"XAMAN"},Ne=new Set;function st(e){return Ne.add(e),()=>Ne.delete(e)}function Ls(e,t){let i=he;if(Object.hasOwn(i,e)){if(i[e]===t)return;throw new b({errorKey:"helpers_invalid_params",info:{existingValue:i[e],key:e,value:t}})}i[e]=t;for(let r of Ne)r(t)}var vn;((r)=>{r[r.NoError=36864]="NoError";r[r.LockedDevice=21781]="LockedDevice";r[r.TC_NotFound=65535]="TC_NotFound"})(vn||={});var Es={BtcMessage:"btcMessage",Direct:"direct",TypedData:"typedData"};var kn=at.reduce((e,t)=>(e[t]=In(t).rpcUrls,e),{}),Ln={[ot.THORChain]:On.nodeUrl,[ot.Maya]:Cn.nodeUrl},lt={apiKeys:{blockchair:"",keepKey:"",passkeys:"",swapKit:"",walletConnectProjectId:"",xaman:""},chains:at,endpoints:{},envs:{apiUrl:"https://api.swapkit.dev",devApiUrl:"https://dev-api.swapkit.dev",isDev:!1},feeMultipliers:void 0,integrations:{radix:{applicationName:"Swapkit Playground",applicationVersion:"0.0.1",dAppDefinitionAddress:"account_rdx128r289p58222hcvev7frs6kue76pl7pdcnw8725aw658v0zggkh9ws",network:{dashboardBase:"https://dashboard.radixdlt.com",networkId:1,networkName:"mainnet"}}},localMode:{enabled:!1,quoteUrl:"http://localhost:3000",swapUrl:"http://localhost:3001"},requestOptions:{retry:{backoffMultiplier:2,baseDelay:300,maxDelay:5000,maxRetries:3},timeoutMs:30000},rpcUrls:kn,thornodeUrls:Ln,v3SwapFlow:{enabled:typeof process<"u"&&process.env?.SWAPKIT_V3_SWAP_FLOW==="true"},wallets:Object.values(he),widgetId:"",widgetKey:""},L=Pn((e)=>({...lt,setApiKey:(t,i)=>e((r)=>({apiKeys:{...r.apiKeys,[t]:i}})),setConfig:(t)=>e((i)=>({apiKeys:{...i.apiKeys,...t?.apiKeys},chains:i.chains.concat(t?.chains||[]),endpoints:{...i.endpoints,...t?.endpoints},envs:{...i.envs,...t?.envs},feeMultipliers:t?.feeMultipliers||i.feeMultipliers,integrations:{...i.integrations,...t?.integrations},localMode:{...i.localMode,...t?.localMode},rpcUrls:{...i.rpcUrls,...t?.rpcUrls},thornodeUrls:{...i.thornodeUrls,...t?.thornodeUrls},v3SwapFlow:{...i.v3SwapFlow,...t?.v3SwapFlow},wallets:i.wallets.concat(t?.wallets||[]),widgetId:t?.widgetId||i.widgetId,widgetKey:t?.widgetKey||i.widgetKey})),setEndpoint:(t,i)=>e((r)=>({endpoints:{...r.endpoints,[t]:i}})),setEnv:(t,i)=>e((r)=>({envs:{...r.envs,[t]:i}})),setFeeMultipliers:(t)=>e(()=>({feeMultipliers:t})),setIntegrationConfig:(t,i)=>e((r)=>({integrations:{...r.integrations,[t]:i}})),setRequestOptions:(t)=>e((i)=>({requestOptions:{retry:{...i.requestOptions.retry,...t.retry},timeoutMs:t.timeoutMs||i.requestOptions.timeoutMs}})),setRpcUrl:(t,i)=>e((r)=>({rpcUrls:{...r.rpcUrls,[t]:i}})),setThornodeUrl:(t,i)=>e((r)=>({thornodeUrls:{...r.thornodeUrls,[t]:i}})),setWidgetId:(t)=>e({widgetId:t}),setWidgetKey:(t)=>e({widgetKey:t})}));st((e)=>{L.setState((t)=>t.wallets.includes(e)?t:{wallets:[...t.wallets,e]})});var A={get:(e)=>L.getState()[e],getState:L.getState,reinitialize:()=>L.setState({...lt,wallets:Object.values(he)}),set:(e)=>L.getState().setConfig(e),setApiKey:(e,t)=>L.getState().setApiKey(e,t),setEndpoint:(e,t)=>L.getState().setEndpoint(e,t),setEnv:(e,t)=>L.getState().setEnv(e,t),setFeeMultipliers:(e)=>L.getState().setFeeMultipliers(e),setIntegrationConfig:(e,t)=>L.getState().setIntegrationConfig(e,t),setRequestOptions:(e)=>L.getState().setRequestOptions(e),setRpcUrl:(e,t)=>L.getState().setRpcUrl(e,t),setThornodeUrl:(e,t)=>L.getState().setThornodeUrl(e,t),setWidgetId:(e)=>L.getState().setWidgetId(e),setWidgetKey:(e)=>L.getState().setWidgetKey(e)};var En=(e)=>new Promise((t)=>setTimeout(t,e)),Nn=(e,{baseDelay:t,backoffMultiplier:i,maxDelay:r})=>Math.min(t*i**e,r);function Dn(e,t){if(e instanceof Error&&e.name==="AbortError")return!0;if(e instanceof TypeError)return!0;if(t===429)return!0;if(t&&t>=500&&t<600)return!0;return!1}var Mn=async(e,t)=>{let i=await fetch(e,t),r;try{r=await i.json()}catch{if(!i.ok)throw new b({errorKey:"helpers_invalid_response",info:{status:i.status,statusText:i.statusText}},{status:i.status,statusText:i.statusText});return{}}if(!i.ok){let a={data:r?.data,error:r?.error,message:r?.message,status:i.status};throw new b({errorKey:r?.error||"helpers_invalid_response",info:a},a)}let s=r?.routes?.length||r?.result||r?.data&&!r?.error;if(r?.error&&!s){let a={data:r.data,error:r.error,message:r.message,status:i.status};throw new b({errorKey:r.error,info:a},a)}if(r?.providerErrors?.length||r?.error&&s)console.warn("[SwapKit] Partial errors in response:",r.providerErrors||r.error);return r};function fe(e,t={}){return async function(r,s={}){let{searchParams:a,json:l,body:p,headers:g,dynamicHeader:S,retry:y,timeoutMs:w,abortController:E,onError:T,onSuccess:M,...k}={...t,...s},I=A.get("requestOptions"),Q={...I.retry,...y},ue=!!l||r.endsWith(".json"),me=Hn(r,a),Ze=S?await S():{},x=Vn(ue,{...g,...Ze}),X=ue?JSON.stringify(l):p,ke;for(let ge=0;ge<=Q.maxRetries;ge++){let et=E||new AbortController,tt=setTimeout(()=>et.abort(),w||I.timeoutMs);try{let G=await Mn(me,{...k,body:X,headers:x,method:e,signal:et.signal});return clearTimeout(tt),M?.(G)||G}catch(G){clearTimeout(tt),ke=G;let fn=G?.cause?.status;if(ge>=Q.maxRetries||!Dn(G,fn))return T?T(G):Promise.reject(G);await En(Nn(ge,Q))}}return T?T(ke):Promise.reject(ke)}}function Vn(e,t){return{...t,...e&&{"Content-Type":"application/json"}}}function Hn(e,t){let i=new URL(e);if(t)i.search=new URLSearchParams(t).toString();return i.toString()}var _={extend:(e)=>({extend:(t)=>_.extend({...e,...t}),get:fe("GET",e),post:fe("POST",e)}),get:fe("GET"),post:fe("POST")};async function dt(e,t,i,r){let s=`${t}:${i}:${r}`,a=new TextEncoder,l=await crypto.subtle.importKey("raw",a.encode(e),{hash:"SHA-256",name:"HMAC"},!1,["sign"]),p=await crypto.subtle.sign("HMAC",l,a.encode(s));return Array.from(new Uint8Array(p)).map((g)=>g.toString(16).padStart(2,"0")).join("")}import{Chain as f,CosmosChains as gt,EVMChains as _t,getChainConfig as ht,SubstrateChains as Un,UTXOChains as ft}from"@swapkit/types";import{match as ye}from"ts-pattern";function zs(e,t){try{return e()}catch(i){if(t)throw new b(t,i);return}}var ct=new Set;function ae({condition:e,id:t,warning:i}){if(e){if(ct.has(t))return;console.warn(i),ct.add(t)}}function Bn(e){return ye(e).with(..._t,()=>({id:1,jsonrpc:"2.0",method:"eth_blockNumber",params:[]})).with(...ft,()=>({id:"test",jsonrpc:"1.0",method:"getblockchaininfo",params:[]})).with(...gt,()=>({id:1,jsonrpc:"2.0",method:"status",params:{}})).with(f.Polkadot,f.Chainflip,()=>({id:1,jsonrpc:"2.0",method:"system_health",params:[]})).with(f.Solana,()=>({id:1,jsonrpc:"2.0",method:"getHealth"})).with(f.Sui,()=>({id:1,jsonrpc:"2.0",method:"sui_getSystemState",params:[]})).with(f.Ton,()=>({id:1,jsonrpc:"2.0",method:"getMasterchainInfo",params:{}})).with(f.Aleo,f.Aptos,f.Tron,f.Radix,f.Stellar,()=>"").with(f.Hype,()=>({type:"meta"})).with(f.Near,()=>({id:"dontcare",jsonrpc:"2.0",method:"status",params:[]})).with(f.Ripple,()=>({id:1,jsonrpc:"2.0",method:"ping",params:[{}]})).with(f.Starknet,()=>({id:1,jsonrpc:"2.0",method:"starknet_chainId",params:[]})).otherwise(()=>{throw new b("helpers_chain_not_supported",{chain:e})})}function pt(e){return ye(e).with(f.Aptos,()=>"/-/healthy").with(f.Aleo,()=>"/mainnet/block/height/latest").with(f.Hype,()=>"/info").with(f.Radix,()=>"/status/network-configuration").with(f.Stellar,()=>"").with(f.Tron,()=>"/wallet/getnowblock").otherwise(()=>"")}function ut(e){if(e.ok)return"up";return e.status===429?"rateLimited":"down"}async function mt(e,t){try{let i=t.startsWith("wss")?t.replace("wss","https"):t;if(e===f.Aleo||e===f.Stellar){let s=await fetch(`${i}${pt(e)}`,{cache:"no-store",method:"GET",signal:AbortSignal.timeout(3000)});return ut(s)}let r=await fetch(`${i}${pt(e)}`,{body:JSON.stringify(Bn(e)),cache:"no-store",headers:{"Content-Type":"application/json"},method:"POST",signal:AbortSignal.timeout(3000)});return ut(r)}catch{return"down"}}var De=new Map,$n=120000;function Fn(e){let[t=""]=A.get("rpcUrls")[e];if(!t)throw ae({condition:!0,id:"helpers_chain_no_public_or_set_rpc_url",warning:`No public or set RPC URL found for chain. Please ensure you configured rpcUrls for ${e}.`}),new b("helpers_chain_no_public_or_set_rpc_url",{chain:e});let i=De.get(e);if(i&&Date.now()-i.timestamp<$n)return i.url;return De.set(e,{timestamp:Date.now(),url:t}),t}async function J(e,{allowRateLimited:t=!1}={}){let i=Fn(e),[,...r]=A.get("rpcUrls")[e],s=await mt(e,i);if(s==="up")return i;let a=s==="rateLimited"?i:void 0;for(let l of r){let p=await mt(e,l);if(p==="up")return De.set(e,{timestamp:Date.now(),url:l}),l;a??=p==="rateLimited"?l:void 0}if(t&&a)return a;throw new b("helpers_chain_rpc_connection_failed",{chain:e,fallbackUrls:r,primaryRpcUrl:i})}function no({chain:e,txHash:t}){let{explorerUrl:i}=ht(e);return ye(e).with(...gt,f.Solana,()=>`${i}/tx/${t.startsWith("0x")?t.slice(2):t}`).with(..._t,...Un,()=>`${i}/tx/${t.startsWith("0x")?t:`0x${t}`}`).with(...ft,f.Radix,f.Tron,()=>`${i}/transaction/${t.toLowerCase()}`).with(f.Near,()=>`${i}/txns/${t}`).with(f.Ripple,()=>`${i}/transactions/${t}`).with(f.Stellar,()=>`${i}/explorer/public/tx/${t}`).with(f.Sui,()=>`${i}/txblock/${t}`).with(f.Cardano,f.Hype,f.Spark,f.Ton,()=>`${i}/tx/${t}`).otherwise(()=>"")}function io({chain:e,address:t}){let{explorerUrl:i}=ht(e);return ye(e).with(f.Solana,f.Sui,f.Radix,()=>`${i}/account/${t}`).with(f.Stellar,()=>`${i}/explorer/public/account/${t}`).otherwise(()=>`${i}/address/${t}`)}function ro(e){switch(e){case f.THORChain:return`${e}.RUNE`;case f.Cosmos:return`${e}.ATOM`;case f.BinanceSmartChain:return`${e}`;default:return`${e}.${e}`}}import{keccak_256 as Kn}from"@noble/hashes/sha3.js";import{bytesToHex as qn}from"@noble/hashes/utils.js";var yt=/^(0x)?[0-9a-fA-F]{40}$/;function be(e){if(typeof e!=="string"||!yt.test(e))throw Error(`invalid address: ${e}`);let t=e.toLowerCase().replace(/^0x/,""),i=qn(Kn(new TextEncoder().encode(t))),r=[...t].map((a,l)=>Number.parseInt(i[l]??"0",16)>=8?a.toUpperCase():a).join(""),s=e.replace(/^0x/,"");if(/[A-F]/.test(s)&&/[a-f]/.test(s)&&s!==r)throw Error(`bad address checksum: ${e}`);return`0x${r}`}function bt(e){if(typeof e!=="string"||!yt.test(e))return!1;try{return be(e),!0}catch{return!1}}var ho=[`${u.Maya}.MAYA`,`${u.Maya}.CACAO`,`${u.Ethereum}.THOR`,`${u.Ethereum}.vTHOR`,`${u.Kujira}.USK`,`${u.Ethereum}.FLIP`,`${u.Radix}.XRD`],jn=[u.Arbitrum,u.Aurora,u.Base,u.Ethereum,u.Optimism,u.Robinhood];async function Yn(e){let{baseDecimal:t}=j(u.Radix);try{let i=await J(u.Radix),{manager:r}=await _.post(`${i}/state/resource`,{body:JSON.stringify({network:"mainnet",resource_address:e}),headers:{Accept:"*/*","Content-Type":"application/json"}});return r?.divisibility?.value?.divisibility}catch(i){let r=i instanceof Error?i.message:String(i);return console.warn(`Failed to fetch Radix asset decimals for ${e}: ${r}`),t}}async function zn(e){try{let t=await J(u.Radix);return(await _.post(`${t}/state/entity/details`,{body:JSON.stringify({addresses:[e],opt_ins:{explicit_metadata:["symbol"]}}),headers:{Accept:"*/*","Content-Type":"application/json"}})).items[0]?.explicit_metadata?.items.find((s)=>s.key==="symbol")?.value.typed.value||void 0}catch(t){let i=t instanceof Error?t.message:String(t);return console.warn(`Failed to fetch Radix asset symbol for ${e}: ${i}`),""}}async function Tt({chain:e,address:t,methodHex:i,id:r}){let s=await J(e);return _.post(s,{body:JSON.stringify({id:r,jsonrpc:"2.0",method:"eth_call",params:[{data:i,to:t.toLowerCase()},"latest"]}),headers:{accept:"*/*","cache-control":"no-cache","content-type":"application/json"}})}function Qn(e){if(!e||e==="0x")return"UNKNOWN";try{return wt(e.replace(/^0x/,""))?.trim()||"UNKNOWN"}catch(t){return console.warn(`Failed to decode ABI string from ${e}: ${t}`),"UNKNOWN"}}function Xn(e,t){if(!e||e==="0x")return t;try{return Number(e)}catch(i){return console.warn(`Failed to decode ABI uint8 from ${e}: ${i}`),t}}async function Jn({chain:e,address:t}){let{baseDecimal:i}=j(e),r=t.toLowerCase();if(t===""||!r.startsWith("0x"))return i;let s=await Tt({address:t,chain:e,id:2,methodHex:"0x313ce567"}).catch((l)=>(console.warn(`Could not fetch decimals for ${t} on ${e}: ${l.message}`),{result:""}));return Xn(s.result,i)}async function Zn({chain:e,address:t}){let i=t.toLowerCase();if(i===""||!i.startsWith("0x"))return;let r=await Tt({address:t,chain:e,id:1,methodHex:"0x95d89b41"}).catch((a)=>(console.warn(`Could not fetch symbol for ${t} on ${e}: ${a.message}`),{result:""}));return Qn(r.result)}async function St({rpcUrl:e,contractAddress:t,functionSelector:i}){return(await _.post(`${e}/wallet/triggerconstantcontract`,{body:JSON.stringify({contract_address:t,function_selector:i,owner_address:t,parameter:"",visible:!0}),headers:{accept:"application/json","content-type":"application/json"}}).catch(()=>{return}))?.constant_result?.[0]}function At(e){let t=e.match(/.{2}/g)?.map((i)=>Number.parseInt(i,16))??[];return new TextDecoder().decode(new Uint8Array(t))}function wt(e){return le(e).with(void 0,()=>{return}).when((t)=>t.length>=128,(t)=>{let i=Number.parseInt(t.slice(64,128),16),r=t.slice(128,128+i*2).replace(/(00)+$/,"");return r?At(r):void 0}).when((t)=>t.length===64,(t)=>{let i=t.replace(/(00)+$/,"");if(i.length>0&&i.length%2===0)return At(i);return}).otherwise(()=>{return})}function xt({chain:e,address:t}){let{baseDecimal:i}=j(e),r={decimals:i,ticker:void 0};return le(e).with(...Wn,async()=>{try{if(!bt(t.replace(/^0X/,"0x")))return r;let[s,a]=await Promise.all([Zn({address:t,chain:e}),Jn({address:t,chain:e})]);return{decimals:a,ticker:s}}catch(s){return console.warn(`Failed to fetch token info for ${t} on ${e}: ${s?.code} ${s?.message}`),r}}).with(u.Solana,async()=>{if(!t)return r;try{let s=await fetch(`https://lite-api.jup.ag/tokens/v2/search?query=${t}`);if(s.ok){let a=await s.json(),l=Array.isArray(a)?a[0]:a;if(l)return{decimals:l.decimals??i,ticker:l.symbol||void 0}}}catch(s){console.warn(`Failed to fetch Solana token info for ${t}: ${s?.code} ${s?.message}`)}return r}).with(u.Tron,async()=>{if(!t)return r;try{let s=await J(u.Tron),[a,l]=await Promise.all([St({contractAddress:t,functionSelector:"symbol()",rpcUrl:s}),St({contractAddress:t,functionSelector:"decimals()",rpcUrl:s})]),p=wt(a);return{decimals:a!==void 0&&l?Number(BigInt(`0x${l}`)):i,ticker:p}}catch(s){let a=s instanceof Error?s.message:String(s);return console.warn(`Failed to fetch Tron token info for ${t}: ${a}`),r}}).with(u.Near,async()=>{if(!t)return r;try{let s=await J(u.Near),a=await _.post(s,{body:JSON.stringify({id:"dontcare",jsonrpc:"2.0",method:"query",params:{account_id:t,args_base64:"e30=",finality:"final",method_name:"ft_metadata",request_type:"call_function"}}),headers:{accept:"application/json","content-type":"application/json"}});if(!a.result?.result)throw Error("NEAR ft_metadata returned no result");let l=JSON.parse(new TextDecoder().decode(new Uint8Array(a.result.result)));return{decimals:l?.decimals||i,ticker:l?.symbol}}catch(s){let a=s instanceof Error?s.message:String(s);return console.warn(`Failed to fetch Near token info for ${t}: ${a}`),r}}).with(u.Radix,async()=>{if(!t)return r;try{let[s,a]=await Promise.all([zn(t),Yn(t)]);return{decimals:a,ticker:s}}catch(s){let a=s instanceof Error?s.message:String(s);return console.warn(`Failed to fetch Radix token info for ${t}: ${a}`),r}}).otherwise(async()=>r)}function Me(e){let t=j(e);return t.chain===e?t.nativeCurrency:void 0}function Rt({chain:e,symbol:t}){return le(e).with(u.Gnosis,()=>t==="xDAI"||t==="XDAI").with(u.Ton,()=>t==="GRAM"||t==="TON").with(u.Radix,()=>`${e}.${t}`===Se(e).identifier).otherwise(()=>t===(Me(e)??e))}var Se=(e)=>{let{baseDecimal:t}=j(e);return le(e.toUpperCase()).with(...jn,(r)=>({decimal:t,identifier:`${r}.ETH`})).with(u.Arc,(r)=>({decimal:t,identifier:`${r}.USDC`})).with(u.THORChain,(r)=>({decimal:t,identifier:`${r}.RUNE`})).with(u.Cosmos,(r)=>({decimal:t,identifier:`${r}.ATOM`})).with(u.Maya,(r)=>({decimal:10,identifier:`${r}.CACAO`})).with(u.BinanceSmartChain,(r)=>({decimal:t,identifier:`${r}.BNB`})).with(u.Monad,(r)=>({decimal:t,identifier:`${r}.MON`})).with(u.Avalanche,(r)=>({decimal:t,identifier:`${r}.AVAX`})).with(u.Gnosis,(r)=>({decimal:t,identifier:`${r}.xDAI`})).with(u.XLayer,(r)=>({decimal:t,identifier:`${r}.OKB`})).with(u.Berachain,(r)=>({decimal:t,identifier:`${r}.BERA`})).with(u.Hyperevm,(r)=>({decimal:t,identifier:`${r}.HYPE`})).with(u.Hype,(r)=>({decimal:t,identifier:`${r}.HYPE`})).with(u.Spark,(r)=>({decimal:t,identifier:`${r}.BTC`})).with(u.Tron,(r)=>({decimal:t,identifier:`${r}.TRX`})).with(u.Ton,(r)=>({decimal:t,identifier:`${r}.GRAM`})).with(u.Solana,u.Chainflip,u.Kujira,u.Ripple,u.Polkadot,u.Near,...Gn,(r)=>({decimal:t,identifier:`${r}.${r}`})).with(u.Radix,"XRD.XRD",()=>({decimal:t,identifier:"XRD.XRD"})).with(u.Polygon,"POL.POL",()=>({decimal:t,identifier:"POL.POL"})).with("KUJI.USK",(r)=>({decimal:6,identifier:r})).with("ETH.FLIP",()=>({decimal:j(u.Ethereum).baseDecimal,identifier:"ETH.FLIP-0x826180541412D574cf1336d22c0C0a287822678A"})).with("ETH.THOR",()=>({decimal:j(u.Ethereum).baseDecimal,identifier:"ETH.THOR-0xa5f2211b9b8170f694421f2046281775e8468044"})).with("ETH.vTHOR",()=>({decimal:j(u.Ethereum).baseDecimal,identifier:"ETH.vTHOR-0x815c23eca83261b6ec689b60cc4a58b54bc24d8d"})).with("MAYA.CACAO",(r)=>({decimal:10,identifier:r})).with("MAYA.MAYA",(r)=>({decimal:4,identifier:r})).otherwise(()=>{let r=Me(e);return{decimal:t,identifier:r?`${e}.${r}`:e}})};function Ve({chain:e,symbol:t}){if(t.includes("/"))return"Synth";if(t.includes("~"))return"Trade";return le(e).with(u.Radix,()=>t===u.Radix||`${e}.${t}`===Se(e).identifier).with(u.Ton,()=>t==="GRAM"||t==="TON").with(u.Gnosis,()=>t===u.Gnosis).otherwise(()=>t===(Me(e)??e))?"Native":e}var Y=(e)=>{let[t,...i]=e.split("."),r=e.includes("/"),s=i.join("."),a=s?.split("-"),l=a?.length?a.length===1?a[0]:a.slice(0,-1).join("-"):void 0;return{chain:t,symbol:s,synth:r,ticker:l}};function de(e,t){let r=t===u.Near?e.indexOf("-"):e.lastIndexOf("-");if(r===-1)return{address:void 0,ticker:e};return{address:e.slice(r+1),ticker:e.slice(0,r)}}function fo(e){return`https://tokens.swapkit.dev/images/${e.toLowerCase()}.png`}async function yo(e){let{loadTokenLists:t}=await import("./tokens.js"),i=await t(void 0,{source:A.get("envs").isDev?"dev":"prod"}),r=Object.values(i).flatMap((a)=>a.tokens);if("identifier"in e)return r.find((a)=>a.identifier===e.identifier)?.identifier;let s=e.contract.toLowerCase();for(let a of r){let{chain:l,symbol:p}=Y(a.identifier);if(l!==e.chain)continue;let{address:g}=de(p,l);if(g?.toLowerCase()===s)return a.identifier}return}import{match as Ae}from"ts-pattern";var z=8,ei=10,ti=64;function Z({value:e,bigIntDecimal:t=z,decimal:i=z}){if(i===0)return e.toString();let r=Math.min(t,i),s=r<i?vt(e,F(i-r)):e,a=s<0n,l=(a?-s:s).toString().padStart(r+1,"0"),p=l.length-r;return`${a?"-":""}${l.slice(0,p)}.${l.slice(p)}`.replace(/\.?0*$/,"")}class K{decimalMultiplier=10n**8n;bigIntValue=0n;decimal;static fromBigInt(e,t){return new K({decimal:t,value:Z({bigIntDecimal:t,decimal:t,value:e})})}static shiftDecimals({value:e,from:t,to:i}){return K.fromBigInt(e.getBaseValue("bigint")*F(i)/F(t),i)}constructor(e){this.decimal=typeof e==="object"?e.decimal:void 0;let t=Te(typeof e==="object"&&"value"in e?e.value:e),i=typeof e==="object"&&"decimalMultiplier"in e?e.decimalMultiplier:F(this.decimal??0);this.decimalMultiplier=i!==void 0&&i>t.decimalMultiplier?i:t.decimalMultiplier,this.bigIntValue=t.bigIntValue*this.decimalMultiplier/t.decimalMultiplier}toString(e={}){return this.getValue("string")}set(e){return this.#n({decimal:this.decimal,value:new K(e)})}#n(e){return new this.constructor({...e,identifier:this.toString({includeSynthProtocol:!0})})}add(...e){return this.#t("add",...e)}sub(...e){return this.#t("sub",...e)}mul(...e){return this.#t("mul",...e)}div(...e){return this.#t("div",...e)}gt(e){return this.#e("gt",e)}gte(e){return this.#e("gte",e)}lt(e){return this.#e("lt",e)}lte(e){return this.#e("lte",e)}eqValue(e){return this.#e("eqValue",e)}getValue(e,t){let i=we(this.decimalMultiplier),r=t!==void 0?t:this.decimal,s=r!==void 0?r:i;if(r!==void 0&&r<i){if(this.formatBigIntToSafeValue(this.bigIntValue,r)==="0"&&this.bigIntValue!==0n)s=i}let a=this.formatBigIntToSafeValue(this.bigIntValue,s);return Ae(e).with("number",()=>Number(a)).with("string",()=>a).with("bigint",()=>this.bigIntValue*F(this.decimal??z)/this.decimalMultiplier).otherwise(()=>a)}getBaseValue(e,t){let i=F(t??this.decimal??z),r=vt(this.bigIntValue*i,this.decimalMultiplier);return Ae(e).with("number",()=>Number(r)).with("string",()=>r.toString()).otherwise(()=>r)}getBigIntValue(e,t){if(t===void 0&&typeof e==="object")return e.bigIntValue;let i=Te(e),r=t===void 0?this.decimalMultiplier:F(t);return i.bigIntValue*r/i.decimalMultiplier}toSignificant(e=6){let t=this.getValue("string"),i=t.startsWith("-"),r=i?t.slice(1):t,[s="",a=""]=r.split("."),l=Number.parseInt(s,10)>0;if((l?s.length+a.length:a.length)<=e)return B(i,r);if(s.length>=e)return B(i,s.slice(0,e).padEnd(s.length,"0"));if(l)return B(i,`${s}.${a.slice(0,e-s.length)}`);let g=a.replace(/^0+/,"")||"0",S=g.slice(0,e),y=a.length-g.length;return B(i,`0.${S.padStart(y+S.length,"0")}`)}toFixed(e=6){let t=this.getValue("string"),i=t.startsWith("-"),[r="0",s=""]=(i?t.slice(1):t).split(".");if(e===0){if(r==="0"&&!s)return"0";let y=s&&Number.parseInt(s[0]||"0",10)>=5?`${BigInt(r)+1n}.0`:`${r}.0`;return B(i,y)}if(!s)return B(i,`${r}.${"0".repeat(e)}`);let a=s[e];if(!(a&&Number.parseInt(a,10)>=5))return B(i,`${r}.${s.slice(0,e).padEnd(e,"0")}`);let p=BigInt(s.slice(0,e).padEnd(e,"0"))+1n,g=10n**BigInt(e);if(p>=g)return B(i,`${BigInt(r)+1n}.${"0".repeat(e)}`);return B(i,`${r}.${p.toString().padStart(e,"0")}`)}toAbbreviation(e=2){let t=this.getValue("string"),i=Number(t),r=["","K","M","B","T","Q","Qi","S"],s=Math.floor(Math.log10(Math.abs(i))/3);if(s===0||!r[s])return t;return`${(i/10**(s*3)).toFixed(e)}${r[s]}`}toCurrency(e="$",{currencyPosition:t="start",decimal:i=2,decimalSeparator:r=".",thousandSeparator:s=",",trimTrailingZeros:a=!0}={}){let l=this.toFixed(i),p=t==="end",[g="0",S=""]=l.split("."),y=g.replace(/\B(?=(\d{3})+(?!\d))/g,s),w=S&&Number.parseInt(S,10)>0,E=w?`${y}${r}${S}`:y,M=E.length<100&&a&&w?E.replace(/\.?0*$/,""):E;return p?`${M}${e}`:`${e}${M}`}formatBigIntToSafeValue(e,t){return Z({bigIntDecimal:t||this.decimal||z,decimal:we(this.decimalMultiplier),value:e})}#t(e,...t){let i=t.map(Te),r=Math.max(z,we(this.decimalMultiplier),...i.map(({decimalMultiplier:S})=>we(S))),s=Math.min(r+ei,ti),a=F(s),l=i.reduce((S,y)=>{let w=S.decimalMultiplier*y.decimalMultiplier,E=Ae(e).with("add",()=>S.bigIntValue*y.decimalMultiplier+y.bigIntValue*S.decimalMultiplier).with("sub",()=>S.bigIntValue*y.decimalMultiplier-y.bigIntValue*S.decimalMultiplier).with("mul",()=>S.bigIntValue*y.bigIntValue).with("div",()=>{if(y.bigIntValue===0n)throw RangeError("Division by zero");return S.bigIntValue*y.decimalMultiplier}).exhaustive(),T=e==="div"?S.decimalMultiplier*y.bigIntValue:w;return{bigIntValue:E*a/T,decimalMultiplier:a}},this),p=this.decimal===void 0?void 0:Math.min(this.decimal,s),g=l.decimalMultiplier===a?l:{bigIntValue:l.bigIntValue*a/l.decimalMultiplier,decimalMultiplier:a};return this.#n({decimal:p,value:g})}#e(e,t){let i=Te(t),r=this.bigIntValue*i.decimalMultiplier,s=i.bigIntValue*this.decimalMultiplier;return Ae(e).with("gt",()=>r>s).with("gte",()=>r>=s).with("lt",()=>r<s).with("lte",()=>r<=s).with("eqValue",()=>r===s).exhaustive()}}var ni=Intl.NumberFormat("fullwide",{maximumFractionDigits:20,useGrouping:!1});function ii(e){let i=`${typeof e==="number"?ni.format(e):e}`.replaceAll(",",".").split(".");return i.length>1?`${i.slice(0,-1).join("")}.${i.at(-1)}`:i[0]||"0"}function ri(e){let t=e.split(".")[1]?.length||0;return Math.max(t,z)}function Te(e){if(typeof e==="object")return e;let t=e==="undefined"?"0":ii(e),i=ri(t),[r="",s=""]=t.split(".");return{bigIntValue:BigInt(`${r}${s.padEnd(i,"0")}`),decimalMultiplier:F(i)}}function B(e,t){return e&&!/^0(?:\.0*)?$/.test(t)?`-${t}`:t}function vt(e,t){if(t===0n)throw Error("Cannot divide by zero");let i=t/2n;return e>=0n&&t>=0n||e<0n&&t<0n?(e+i)/t:(e-i)/t}function F(e){return 10n**BigInt(e)}function we(e){return e.toString().length-1}function ai(e=""){let t=e.toUpperCase(),i=A.get("chains"),[r]=t.split(".");if(i.includes(r))return!0;let[s]=t.split("/");if(i.includes(s))return!0;throw new b({errorKey:"helpers_invalid_identifier",info:{identifier:e,message:`Invalid identifier: ${e}. Expected format: <Chain>.<Ticker> or <Chain>.<Ticker>-<ContractAddress>`}})}var ne=[R.Hype,R.Near,R.Ripple,R.Solana,R.Stellar,R.Sui,R.Ton,R.Tron],$e=[R.THORChain,R.Maya];function xe(e,t){return ne.includes(e)?t:t.toUpperCase()}var ee=new Map,Re=new Map,te=new Map,li=3600000;function di(e){let t=te.get(e);if(t?.timestamp&&Date.now()-t.timestamp>li){te.delete(e);return}return t}function ci(e,t){if(te.size>1000){let i=te.keys().next().value;if(i)te.delete(i)}te.set(e,{...t,timestamp:Date.now()})}class N extends K{address;chain;isGasAsset=!1;isSynthetic=!1;isTradeAsset=!1;symbol;tax;ticker;type;chainId;constructor({value:e,decimal:t,tax:i,chain:r,symbol:s,identifier:a}){super({decimal:t,value:e});let l=It(a||`${r}.${s}`);this.type=Ve(l),this.tax=i,this.chain=l.chain,this.ticker=l.ticker,this.symbol=l.symbol,this.address=l.address,this.isSynthetic=l.isSynthetic,this.isTradeAsset=l.isTradeAsset,this.isGasAsset=l.isGasAsset,this.chainId=ce(l.chain).chainId}toString({includeSynthProtocol:e}={}){return(this.isSynthetic||this.isTradeAsset)&&!e?this.symbol:`${this.chain}.${this.symbol}`}toUrl(){if(this.isSynthetic)return`${this.chain}.${this.symbol.replace(/\//g,".")}`;if(this.isTradeAsset)return`${this.chain}.${this.symbol.replace(/~/g,"..")}`;let e=this.symbol.replace(/\./g,"__");return`${this.chain}.${e}`}getIconUrl(){return ee.get(xe(this.chain,this.toString()))?.logoURI}eqAsset({chain:e,symbol:t}){return this.chain===e&&this.symbol===t}eq(e){return this.eqAsset(e)&&this.eqValue(e)}static fromUrl(e,t=0){let i=e.indexOf(".");if(i===-1)throw new b({errorKey:"helpers_invalid_asset_url",info:{urlAsset:e}});let r=e.slice(0,i),s=e.slice(i+1),a=Be({chain:r,rest:s}).when(({rest:l})=>l.includes(".."),({chain:l,rest:p})=>`${l}.${p.replace(/\.\./g,"~")}`).when(({chain:l,rest:p})=>$e.includes(l)&&p.includes("."),({chain:l,rest:p})=>`${l}.${p.replace(/\./g,"/")}`).otherwise(({chain:l,rest:p})=>`${l}.${p.replace(/__/g,".")}`);return N.from({asset:a,value:t})}static from({value:e=0,fromBaseDecimal:t,asyncTokenLookup:i,...r}){let s="address"in r&&"chain"in r,a=gi(r);if(a===null&&i&&s){let{chain:x,address:X}=r;return ui({address:X,chain:x,fromBaseDecimal:t,parsedValue:e})}let l=s&&!a?`${r.chain}.UNKNOWN-${r.address}`:a,{identifier:p,decimal:g}=Se(l),{chain:S,isSynthetic:y,isTradeAsset:w,address:E}=It(p),{baseDecimal:T}=ce(S),M=ee.get(xe(S,p));if(!M&&i&&!y&&!w)return(async()=>{let{ticker:x}=Y(p),X=await Ct({address:E,chain:S,ticker:x});return He({decimal:X.decimals,identifier:X.identifier,value:t?Ue(e,t):e})})();let k=M?.decimal||g;ae({condition:!k&&!i,id:`assetValue_static_decimal_not_found_${S}`,warning:`Couldn't find static decimal for one or more tokens on ${S} (Using default ${T} decimal as fallback).
2
+ This can result in incorrect calculations and mess with amount sent on transactions.
3
+ You can load static assets by installing @swapkit/tokens package and calling AssetValue.loadStaticAssets()
4
+ or by passing asyncTokenLookup: true to the from() function, which will make it async and return a promise.`});let{decimal:I,identifier:Q,tax:ue}=M||{decimal:k||T,identifier:p},me=t?Ue(e,t):ve(e,I);return y||w?pi(Q,me):He({decimal:I,identifier:Q,tax:ue,value:me})}static async loadStaticAssets(e){let{loadTokenLists:t}=await import("@swapkit/tokens"),i=await t(e,{source:A.get("envs").isDev?"dev":"prod"});for(let{tokens:r}of Object.values(i))for(let s of r){let{identifier:a}=s,{chain:l,symbol:p}=Y(a),{address:g}=de(p,l),{baseDecimal:S}=ce(l),y=xe(l,a),w="decimals"in s&&s.decimals!==void 0?s.decimals:S,E="logoURI"in s&&s.logoURI?s.logoURI:`https://tokens.swapkit.dev/images/${a.toLowerCase()}.png`,T={decimal:w,identifier:a,logoURI:E,tax:"tax"in s?s.tax:void 0};if(ee.set(y,T),g){let M=ne.includes(l)?`${l}:${g}`:`${l}:${g.toUpperCase()}`;Re.set(M,a)}}return!0}static setStaticAssets(e){ee.clear(),Re.clear();for(let[t,i]of e.entries()){let{identifier:r}=i,{chain:s,symbol:a}=Y(r),{address:l}=de(a,s),{baseDecimal:p}=ce(s),g=i.chain??s,S=i.address??l,y=xe(g,r),w=i.decimals??i.decimal??p,E=i.logoURI??`https://tokens.swapkit.dev/images/${r.toLowerCase()}.png`,T={decimal:w,identifier:y,logoURI:E,tax:i.tax};if(ee.set(y,T),S){let M=ne.includes(g)?`${g}:${S}`:`${g}:${S.toUpperCase()}`;Re.set(M,r)}}return!0}static get staticAssets(){return ee}}function Po(e){let t=N.from({chain:e});return Be(e).with(R.Bitcoin,R.Litecoin,R.BitcoinCash,R.Dash,()=>t.set(0.00010001)).with(R.Zcash,()=>t.set(0.00015001)).with(R.Dogecoin,()=>t.set(1.00000001)).with(R.Avalanche,R.Ethereum,R.Arbitrum,R.BinanceSmartChain,()=>t.set(0.00000001)).with(R.THORChain,R.Maya,()=>t.set(0)).with(R.Cosmos,R.Kujira,()=>t.set(0.000001)).otherwise(()=>t.set(0.00000001))}async function Ct({chain:e,address:t,ticker:i}){let s=ne.includes(e)?`${e}:${t||i}`:`${e}:${t||i}`.toUpperCase(),a=di(s);if(a)return a;if(!t){let{baseDecimal:g}=ce(e);return{decimals:g,identifier:`${e}.${i||"UNKNOWN"}`}}let l=await xt({address:t,chain:e}),p=`${e}.${l.ticker||i||"UNKNOWN"}-${t}`;return ae({condition:!!(!l.ticker&&i),id:`async_token_lookup_failed_${e}_${t}`,warning:`Could not fetch token metadata for ${e}:${t} from chain. Using user-provided ticker (${i}) with baseDecimal (${l.decimals}).`}),l.ticker&&ci(s,{decimals:l.decimals,identifier:p}),{decimals:l.decimals,identifier:p}}function He({identifier:e,decimal:t,value:i,tax:r}){return ai(e),new N({decimal:t,identifier:e,tax:r,value:ve(i,t)})}function pi(e,t=0){let i=e.includes(".")?e.split(".")?.[0]?.toUpperCase():void 0,r=i?$e.includes(i):!1,s=e.slice(0,14).includes("~")?"~":"/",[a,l]=r?e.split(".").slice(1).join().split(s):e.split(s);if(!(a&&l))throw new b({errorKey:"helpers_invalid_asset_identifier",info:{identifier:e}});return new N({decimal:8,identifier:`${i||R.THORChain}.${a}${s}${l}`,value:ve(t,8)})}async function ui({address:e,chain:t,fromBaseDecimal:i,parsedValue:r}){let{decimals:s,identifier:a}=await Ct({address:e,chain:t}),l=i?Ue(r,i):r;return He({decimal:s,identifier:a,value:l})}function Ue(e,t){let i=e instanceof K?e.getValue("string"):e;return ve(BigInt(i),t)}function ve(e,t){return typeof e==="bigint"?Z({bigIntDecimal:t,decimal:t,value:e}):e}function mi(e){let t=Be(e).when((i)=>("chain"in i)&&i.chain!==void 0,({chain:i})=>i).otherwise((i)=>{let r=Y(i.asset);return r.synth?R.THORChain:r.chain});if(!si.includes(t.toUpperCase())){let i="asset"in e?e.asset:t;throw new b({errorKey:"helpers_invalid_asset_identifier",info:{identifier:i,message:`Unsupported chain "${t}" - use the AssetValue constructor directly`}})}}function gi(e){if(mi(e),"chain"in e){let{chain:s,address:a}=e;if(a){let l=ne.includes(s)?`${s}:${a}`:`${s}:${a.toUpperCase()}`,p=Re.get(l);if(p)return p;return null}return s}let{chain:t,symbol:i}=Y(e.asset);return Ve({chain:t,symbol:i})==="Native"?t:e.asset}function _i(e,t,i){let r=e.split("."),s=r[0]?.toUpperCase(),a=$e.includes(s),l=i?"~":"/",[p,g=""]=a?r.slice(1).join(".").split(l):e.split(l);if(!(p&&g))throw new b({errorKey:"helpers_invalid_asset_identifier",info:{identifier:e}});let{ticker:S,address:y}=Ot({chain:p,symbol:g}),w=`${p}${l}${g}`;return{address:y,chain:s,isGasAsset:!1,isSynthetic:t,isTradeAsset:i,symbol:w,ticker:S}}function hi(e){let t=e.indexOf("."),i=(t===-1?e:e.slice(0,t)).toUpperCase(),r=t===-1?e:e.slice(t+1),{address:s,ticker:a}=Ot({chain:i,symbol:r}),l;try{l=s&&oi.includes(i)&&be(s)?be(s):s}catch{l=s}let p=l?`${a}-${l}`:r;return{address:l,chain:i,isGasAsset:Rt({chain:i,symbol:r}),isSynthetic:!1,isTradeAsset:!1,symbol:p,ticker:a}}function It(e){let t=e.slice(0,14),i=t.includes("/"),r=t.includes("~");if(i||r)return _i(e,i,r);return hi(e)}function Ot({symbol:e,chain:t}){let{ticker:i,address:r}=de(e,t);return{address:r&&!ne.includes(t)?r.toLowerCase():r,ticker:i}}class Ie extends K{eq(e){return this.eqValue(e)}static fromBigInt(e,t){return new Ie({decimal:t,value:Z({bigIntDecimal:t,decimal:t,value:e})})}}function Pt(e=!0){return e?"https://gateway.liquify.com/chain/thorchain_midgard":"https://midgard.mayachain.info"}function yi(e=!0){let t=Pt(e);return e?`${t}/v2/thorname`:`${t}/v2/mayaname`}function bi(e){return function(i){let r=i?`?status=${i}`:"";return _.get(`${e}/v2/pools${r}`)}}function Si(e){return function(i){return _.get(`${e}/v2/pool/${i}`)}}function Ai(e){return function(i,r){let s=r?`?period=${r}`:"";return _.get(`${e}/v2/pool/${i}/stats${s}`)}}function Ti(e){return function(i,r){let s=new URLSearchParams;if(r?.interval)s.append("interval",r.interval);if(r?.count)s.append("count",r.count.toString());if(r?.from)s.append("from",r.from.toString());if(r?.to)s.append("to",r.to.toString());let a=s.toString()?`?${s.toString()}`:"";return _.get(`${e}/v2/history/depths/${i}${a}`)}}function wi(e){return function(){return _.get(`${e}/v2/network`)}}function xi(e){return function(){return _.get(`${e}/v2/health`)}}function Ri(e){return function(){return _.get(`${e}/v2/nodes`)}}function vi(e){return function(i){return _.get(`${e}/v2/node/${i}`)}}function Ii(e){return function(){return _.get(`${e}/v2/mimir/votes`)}}function Ci(e){return function(){return _.get(`${e}/v2/mimir`)}}function Oi(e){return function(){return _.get(`${e}/v2/constants`)}}function Pi(e){return function(){return _.get(`${e}/v2/stats`)}}function ki(e){return function(i){let r=new URLSearchParams;if(i?.interval)r.append("interval",i.interval);if(i?.count)r.append("count",i.count.toString());if(i?.from)r.append("from",i.from.toString());if(i?.to)r.append("to",i.to.toString());let s=r.toString()?`?${r.toString()}`:"";return _.get(`${e}/v2/history/earnings${s}`)}}function Li(e){return function(i,r){let s=new URLSearchParams;if(r?.interval)s.append("interval",r.interval);if(r?.count)s.append("count",r.count.toString());if(r?.from)s.append("from",r.from.toString());if(r?.to)s.append("to",r.to.toString());let a=s.toString()?`?${s.toString()}`:"",l=i?`/swaps/${i}`:"/swaps";return _.get(`${e}/v2/history${l}${a}`)}}function Ei(e){return function(i){let r=new URLSearchParams;if(i?.interval)r.append("interval",i.interval);if(i?.count)r.append("count",i.count.toString());if(i?.from)r.append("from",i.from.toString());if(i?.to)r.append("to",i.to.toString());let s=r.toString()?`?${r.toString()}`:"";return _.get(`${e}/v2/history/tvl${s}`)}}function Ni(e){if(!e)return"";let t=new URLSearchParams,i=(r,s)=>{if(s!==void 0)t.append(r,typeof s==="number"?s.toString():s)};return i("address",e.address),i("txid",e.txid),i("asset",e.asset),i("type",e.type),i("affiliate",e.affiliate),i("limit",e.limit),i("offset",e.offset),t.toString()?`?${t.toString()}`:""}function Di(e){return function(i){let r=Ni(i);return _.get(`${e}/v2/actions${r}`)}}function Mi(e){return function(i){return _.get(`${e}/v2/member/${i}`)}}function Vi(e){return function(i){let r=i?`/${i}`:"";return _.get(`${e}/v2/members${r}`)}}function Hi(e){return function(i,r){let s=r?`&asset=${r}`:"";return _.get(`${e}/v2/saver/${i}${s?`?${s.substring(1)}`:""}`)}}function Ui(e){return function(i){return _.get(`${e}/v2/savers/${i}`)}}function Bi(e){return function(i,r){let s=new URLSearchParams;if(r?.interval)s.append("interval",r.interval);if(r?.count)s.append("count",r.count.toString());if(r?.from)s.append("from",r.from.toString());if(r?.to)s.append("to",r.to.toString());let a=s.toString()?`?${s.toString()}`:"",l=i?`/savers/${i}`:"/savers";return _.get(`${e}/v2/history${l}${a}`)}}function $i(e){return function(i){return _.get(`${e}/v2/balance/${i}`)}}function Fi(e){return async function(i){let r=(s)=>{if(s?.cause?.status===404)return;throw s};return await _.get(`${e}/lookup/${i}`,{onError:r,retry:{maxRetries:1}})}}function Ki(e){return async function(i){let r=(s)=>{if(s?.cause?.status===404)return[];throw s};return await _.get(`${e}/rlookup/${i}`,{onError:r,retry:{maxRetries:1}})}}function qi(e){return async function(i){let r=(s)=>{if(s?.cause?.status===404)return[];throw s};return await _.get(`${e}/owner/${i}`,{onError:r,retry:{maxRetries:1}})}}function ie({asset:e,value:t}){return N.from({asset:e,fromBaseDecimal:fi(Ce.THORChain).baseDecimal,value:t})}function Wi({liquidityPositionGetter:e,isThorchain:t}){return async function(r){let s=await e(r),a=t?"rune":"cacao";return s.pools.map((l)=>({[`${a}Pending`]:ie({asset:"THOR.RUNE",value:l.runePending}),[`${a}RegisteredAddress`]:l.runeAddress,[`${a}Withdrawn`]:ie({asset:"THOR.RUNE",value:l.runeWithdrawn}),[a]:ie({asset:"THOR.RUNE",value:l.runeAdded}),asset:ie({asset:l.pool,value:l.assetAdded}),assetPending:ie({asset:l.pool,value:l.assetPending}),assetRegisteredAddress:l.assetAddress,assetWithdrawn:ie({asset:l.pool,value:l.assetWithdrawn}),dateFirstAdded:l.dateFirstAdded,dateLastAdded:l.dateLastAdded,poolShare:new Ie(l.liquidityUnits).div(l.pool)}))}}function kt(e){let t=e===Ce.THORChain,i=Pt(t),r=yi(t),s=Mi(i);return{getActions:Di(i),getBalance:$i(i),getConstants:Oi(i),getEarningsHistory:ki(i),getHealth:xi(i),getLiquidityPosition:Wi({isThorchain:t,liquidityPositionGetter:s}),getLiquidityPositionRaw:s,getMembers:Vi(i),getMimir:Ci(i),getMimirVotes:Ii(i),getNameDetails:Fi(r),getNamesByAddress:Ki(r),getNamesByOwner:qi(r),getNetworkInfo:wi(i),getNode:vi(i),getNodes:Ri(i),getPool:Si(i),getPoolDepthHistory:Ti(i),getPoolStats:Ai(i),getPools:bi(i),getSaverDetails:Hi(i),getSavers:Ui(i),getSaversHistory:Bi(i),getStats:Pi(i),getSwapHistory:Li(i),getTVLHistory:Ei(i)}}var Lt=kt(Ce.THORChain),Et=kt(Ce.Maya);var Xe={};nt(Xe,{SKRequestClient:()=>P,buildLimitOrder:()=>Zr,buildLimitOrderCancel:()=>is,getChainBalance:()=>Fr,getChainflipDepositChannel:()=>zr,getGasRate:()=>Yr,getLimitOrder:()=>ns,getLimitOrderQuote:()=>Jr,getLimitOrderTokens:()=>Xr,getLimitOrders:()=>ts,getNearDepositChannel:()=>Qr,getPrice:()=>jr,getRouteWithTx:()=>$r,getSwapQuote:()=>Br,getSwapTo:()=>ds,getTokenApproval:()=>Kr,getTokenList:()=>Wr,getTokenListProviders:()=>qr,getTrackerDetails:()=>Ur,searchTokens:()=>Gr,submitLimitOrder:()=>es,submitLimitOrderCancel:()=>rs});import{EVMChains as Qe}from"@swapkit/types";import{match as Hr,P as pe}from"ts-pattern";import{Chain as Oe,ChainId as q}from"@swapkit/types";import{array as v,boolean as U,coerce as Vt,number as h,object as m,optional as c,string as o,union as Fe,unknown as Ke,z as n}from"zod";var Ht;((r)=>{r.CHEAPEST="CHEAPEST";r.FASTEST="FASTEST";r.RECOMMENDED="RECOMMENDED"})(Ht||={});var Pe;((y)=>{y.PSBT="PSBT";y.EVM="EVM";y.COSMOS="COSMOS";y.RADIX="RADIX";y.NEAR="NEAR";y.STELLAR="STELLAR";y.TON="TON";y.TRON="TRON";y.EIP_712_HYPE_SEND_ASSET="EIP_712_HYPE_SEND_ASSET";y.EIP_712_HYPE_WITHDRAW="EIP_712_HYPE_WITHDRAW"})(Pe||={});var Ut;((I)=>{I.approve="approve";I.claim="claim";I.deposit="deposit";I.donate="donate";I.lending="lending";I.lp_action="lp_action";I.native_contract_call="native_contract_call";I.native_send="native_send";I.stake="stake";I.streaming_swap="streaming_swap";I.swap="swap";I.thorname_action="thorname_action";I.token_contract_call="token_contract_call";I.token_transfer="token_transfer";I.unknown="unknown";I.unstake="unstake"})(Ut||={});var Bt;((T)=>{T.swap="swap";T.aggregation="aggregation";T.addLiquidity="addLiquidity";T.withdrawLiquidity="withdrawLiquidity";T.addSavers="addSavers";T.withdrawSavers="withdrawSavers";T.borrow="borrow";T.repay="repay";T.name="name";T.donate="donate";T.claim="claim";T.stake="stake";T.unstake="unstake"})(Bt||={});var $t;((p)=>{p.unknown="unknown";p.not_started="not_started";p.pending="pending";p.swapping="swapping";p.completed="completed";p.refunded="refunded";p.failed="failed"})($t||={});var Ft;((k)=>{k.not_started="not_started";k.starting="starting";k.broadcasted="broadcasted";k.mempool="mempool";k.inbound="inbound";k.outbound="outbound";k.swapping="swapping";k.completed="completed";k.refunded="refunded";k.partially_refunded="partially_refunded";k.dropped="dropped";k.reverted="reverted";k.replaced="replaced";k.retries_exceeded="retries_exceeded";k.parsing_error="parsing_error"})(Ft||={});var Fo=m({address:c(o()),chain:n.enum(Oe).optional(),chainId:n.enum(q),coingeckoId:c(o()),decimals:Vt.number(),extensions:c(n.looseObject({})),identifier:o(),logoURI:c(o()),name:c(o()),shortCode:c(o()),symbol:c(o()),ticker:o()}),Ko=n.object({block:n.optional(n.number().describe("Block number. Required for Polkadot chain. e.g. `123456`")),chainId:n.optional(n.string().describe("ChainId for the hash. e.g. `thorchain-1`")),depositChannelId:n.optional(n.string().describe("Deposit channel ID, required for Chainflip if tx was broadcasted without wallet connection")),hash:n.optional(n.string().describe("Hash for the first transaction broadcasted by the end user. e.g. `88D1819378ECD09E5284C54937CDC1E99B52F253C007617A02DD1200710CE677`"))}).refine((e)=>e.hash&&e.chainId||e.depositChannelId,{message:"Either `hash` and `chainId` or `depositChannelId` must be provided"}),qo=n.object({forceUpdate:n.string().toLowerCase().transform((e)=>e==="true").pipe(n.boolean()).optional()}),Wo=m({error:o(),message:o()}),re=m({address:c(o()),chain:n.enum(Oe),decimal:c(h()),isGasAsset:U(),isSynthetic:U(),symbol:o(),tax:c(m({buy:h(),sell:h()})),ticker:o()}),Kt=m({id:o(),market_cap:h(),name:o(),price_change_24h_usd:h(),price_change_percentage_24h_usd:h(),sparkline_in_7d:v(h()),timestamp:o(),total_volume:h()}).partial(),Go=m({cg:c(Kt),identifier:o(),price_usd:h(),provider:o(),timestamp:h()}),qt=v(m({cg:c(Kt),identifier:o(),price_usd:h(),provider:o(),timestamp:h()}).partial()),jo=m({affiliate:c(o().describe("Affiliate thorname")),affiliateFee:c(h().describe("Affiliate fee in basis points").refine((e)=>e===Math.floor(e)&&e>=0,{message:"affiliateFee must be a positive integer",path:["affiliateFee"]})),allowSmartContractReceiver:c(U().describe("Allow smart contract as recipient")),allowSmartContractSender:c(U().describe("Allow smart contract as sender")),buyAsset:o().describe("Asset to buy"),cfBoost:c(U().describe("Set to true to enable CF boost to speed up Chainflip swaps. BTC only.")),destinationAddress:c(o().describe("Address to send asset to")),disableSecurityChecks:c(U().describe("Disable security checks")),includeTx:c(U().describe("Set to true to include an transaction object (EVM only)")),providers:c(v(o().describe("List of providers to use").refine((e)=>C[e]!==void 0,{message:"Invalid provider",path:["providers"]}))),referrer:c(o().describe("Referrer address (referral program)")),sellAmount:o().describe("Amount of asset to sell").refine((e)=>+e>0,{message:"sellAmount must be greater than 0",path:["sellAmount"]}),sellAsset:o().describe("Asset to sell"),slippage:c(h().describe("Slippage tolerance as a percentage. Default is 3%.")),sourceAddress:c(o().describe("Address to send asset from"))}).refine((e)=>e.sellAsset!==e.buyAsset,{message:"Must be different",path:["sellAsset","buyAsset"]}),Yo=m({metadata:U(),tokens:v(m({identifier:o()}))}),Wt=m({destinationAddress:o()}),Gi=Wt.extend({affiliateFees:v(m({brokerAddress:o(),feeBps:h()})).optional(),brokerCommissionBps:h().optional(),buyAsset:m({asset:o(),chain:o()}),channelMetadata:m({cfParameters:o().optional(),gasBudget:o().optional(),message:o().optional()}).optional(),dcaParameters:m({chunkInterval:h().optional(),numberOfChunks:h().optional()}).optional(),maxBoostFeeBps:h().optional(),refundParameters:m({minPrice:o().optional(),refundAddress:o().optional(),retryDuration:h().optional()}).optional(),sellAsset:m({asset:o(),chain:o()})}),Gt=m({channelId:o(),depositAddress:o()}),Nt=Wt.extend({affiliateFees:m({feeBps:h(),nearId:o()}).optional(),buyAsset:o(),sellAmount:o(),sellAsset:o(),slippage:Vt.number(),sourceAddress:o()}),Dt=m({amountIn:o(),amountInFormatted:o(),amountInUsd:o(),amountOut:o(),amountOutFormatted:o(),amountOutUsd:o(),deadline:o().optional(),minAmountIn:o(),minAmountOut:o(),timeEstimate:h().optional(),timeWhenInactive:o().optional()}),zo=Dt.extend({depositAddress:o(),quote:Dt,signature:o(),timestamp:o(),tx:Ke()}),jt=m({buyAsset:o(),buyAssetAmount:o(),buyAssetAmountMaxSlippage:o(),deadline:o().optional(),depositAddress:o(),depositAmount:o(),depositAsset:o(),tx:Ke()}),ji=m({evmCalldata:n.optional(n.string()),intentHash:n.optional(n.string()),logs:n.optional(n.unknown()),manifest:n.optional(n.unknown()),memo:n.optional(n.string()),spender:n.optional(n.string()),thorname:n.optional(n.string())}),Yi=m({currentStage:o(),inboundConfirmation:h(),inboundObservation:h(),outboundDelay:h(),outboundObservation:h(),streamingSwap:h()}),zi=m({count:c(h()),interval:c(h()),quantity:c(h()),subSwapsMap:c(v(h()))}),Qi=n.object({currentLegIndex:n.optional(n.number()),estimatedTimeToComplete:n.number(),estimates:n.optional(Yi),providerDetails:n.optional(n.object({streamingDetails:n.optional(zi)}))}),Xi=m({affiliate:c(re),liquidity:c(re),network:c(re),protocol:c(re),tax:c(re)}),Ji=m({affiliate:o(),bps:o(),isReferrer:U()}),Zi=m({affiliate:c(o()),affiliateFees:c(v(Ji)),broadcastedAt:c(h()),explorerUrl:c(o()),fees:c(Xi),images:c(m({chain:c(o()),from:c(o()),provider:c(o()),to:c(o())})),provider:c(n.enum(C)),providerAction:n.optional(n.enum(Bt)),quoteId:c(o()),wallet:c(o())}),se=n.object({block:n.number(),chainId:n.enum(q),finalAddress:n.optional(n.string()),finalAsset:n.optional(re),finalisedAt:n.number(),fromAddress:n.string(),fromAmount:n.string(),fromAsset:n.string(),hash:n.string(),meta:n.optional(Zi),payload:n.optional(ji),status:n.enum($t),toAddress:n.string(),toAmount:n.string(),toAsset:n.string(),trackingStatus:n.optional(n.enum(Ft)),transient:n.optional(Qi),type:n.enum(Ut)}),Yt=se.extend({legs:n.array(se)}),Qo=se.extend({legs:v(se)}),Xo=se.extend({legs:v(se)}),qe=v(m({amount:o(),asset:o(),chain:o(),protocol:n.enum(C),type:n.enum(_e)})),We=n.object({inbound:n.optional(n.number().describe("Time to receive inbound asset in seconds")),outbound:n.optional(n.number().describe("Time to receive outbound asset in seconds")),swap:n.optional(n.number().describe("Time to swap assets in seconds")),total:n.number().describe("Total time in seconds")}),er=/^(?:0x[0-9a-fA-F]+|[0-9]+)$/;function tr(e){return e===""||er.test(e)}function Jo(e){return e?BigInt(e):0n}function Zo(e){let t=typeof e==="bigint"?e:BigInt(e);return t>0n?`0x${t.toString(16)}`:"0x0"}var H=o().refine(tr,{message:"Value must be a base-10 integer string or 0x-prefixed hex integer string"}).describe("Value to send in base units as a base-10 integer string or 0x-prefixed hex integer string"),nr=m({data:o().describe("Data to send"),from:o().describe("Address of the sender"),to:o().describe("Address of the recipient"),value:H}),ir=n.object({data:n.string().optional(),raw_data:n.object({contract:n.any(),data:n.string().optional(),expiration:n.number(),fee_limit:n.number().optional(),ref_block_bytes:n.string(),ref_block_hash:n.string(),timestamp:n.number()}).passthrough(),raw_data_hex:n.string(),txID:n.string(),value:H.optional(),visible:n.boolean()}),rr=v(Fe([o(),h(),v(o()),m({from:o(),value:H}).describe("Parameters to pass to the contract method")])),ea=m({approvalSpender:c(o().describe("Address of the spender to approve")),approvalToken:c(o().describe("Address of the token to approve spending of")),contractAddress:o().describe("Address of the contract to interact with"),contractMethod:o().describe("Name of the method to call"),contractParamNames:v(o().describe("Names of the parameters to pass to the contract method")),contractParams:rr}),sr=m({typeUrl:o("/types.MsgDeposit"),value:m({coins:v(m({amount:o(),asset:m({chain:o(),symbol:o(),synth:U(),ticker:o()})})),memo:o(),signer:o()})}),or=m({typeUrl:o("/types.MsgSend"),value:m({amount:v(m({amount:o(),denom:o()})),fromAddress:o(),toAddress:o()})}),ar=m({typeUrl:o(),value:or.shape.value.or(sr.shape.value)}),lr=m({amount:v(m({amount:o(),denom:o()})),gas:o()}),dr=m({accountNumber:h(),chainId:n.enum(q),fee:lr,memo:o(),msgs:v(ar),sequence:h()}),cr=n.array(n.object({calldata:n.array(n.string()),contractAddress:n.string(),entrypoint:n.string()})),pr=n.object({address:n.string().describe("Destination address in friendly format"),amount:n.string().describe("Amount in nanotons"),payload:n.string().optional().describe("Base64 BOC of body cell"),stateInit:n.string().optional().describe("Base64 BOC of state init")}),ur=n.object({messages:n.array(pr),sendMode:n.number().describe("TON wallet send mode for the whole transfer")}),ta="USDC:0x6d1e7cde53ba9467b783cb7c530ce054",mr=n.looseObject({domain:n.looseObject({chainId:c(Fe([h(),o()])),name:c(o()),verifyingContract:c(o()),version:c(o())}),message:n.record(o(),Ke()),primaryType:o(),types:n.record(o(),v(n.looseObject({name:o(),type:o()})))}),gr=n.looseObject({amount:o(),destination:o(),destinationDex:o(),fromSubAccount:o(),hyperliquidChain:o(),nonce:h().int(),signatureChainId:o(),sourceDex:o(),token:o(),type:n.literal("sendAsset")}),zt=n.looseObject({action:n.looseObject({type:o()}),submitTo:o(),typedData:mr}),na=zt.extend({action:gr}),Qt=Fe([nr,dr,ir,ur,zt,o()]),_r=Qt.or(cr),hr=m({affiliate:o().describe("Affiliate address").optional(),affiliateFee:h().describe("Affiliate fee").optional(),buyAsset:o().describe("Asset to buy"),destinationAddress:o().describe("Destination address"),estimatedTime:We.optional(),provider:n.enum(C),sellAsset:o().describe("Asset to sell"),slipPercentage:h().describe("Slippage as a percentage"),sourceAddress:o().describe("Source address")}),ia=hr.omit({destinationAddress:!0,slipPercentage:!0,sourceAddress:!0}),fr=m({asset:o().describe("Asset name"),image:o().describe("Asset image"),price:h().describe("Price in USD")}),yr=Gi,Xt=m({assets:c(v(fr)),maxStreamingQuantity:h().optional(),referrer:o().optional(),streamingInterval:h().optional(),tags:v(n.enum(Ht))}),Jt=Xt.extend({affiliate:c(o()),affiliateFee:c(o()),approvalAddress:c(o().describe("Approval address for swap")),chainflip:yr.optional(),garden:Nt.optional(),near:Nt.optional(),priceImpact:c(h().describe("Price impact")),referrer:c(o()),txType:c(n.enum(Pe))}),Zt=v(m({code:n.enum(Le),display:o(),tooltip:o().optional()})),br=m({buyAmount:o().describe("Buy amount"),buyAmountMaxSlippage:o().describe("Buy amount max slippage"),buyAsset:o().describe("Asset to buy"),fees:c(qe),provider:n.enum(C),sellAmount:o().describe("Sell amount"),sellAsset:o().describe("Asset to sell")}),Sr=m({buyAsset:o().describe("Asset to buy"),destinationAddress:c(o().describe("Destination address")),estimatedTime:c(We),expectedBuyAmount:o().describe("Expected Buy amount"),expectedBuyAmountMaxSlippage:o().describe("Expected Buy amount max slippage"),expiration:c(o().describe("Expiration")),fees:qe,inboundAddress:c(o().describe("Inbound address")),legs:v(br),memo:c(o().describe("Memo")),meta:Jt,providers:v(n.enum(C)),routeId:o().describe("Route ID"),sellAmount:o().describe("Sell amount"),sellAsset:o().describe("Asset to sell"),sourceAddress:c(o().describe("Source address")),targetAddress:c(o().describe("Target address")),totalSlippageBps:h().describe("Total slippage in bps"),tx:c(_r),txType:c(n.enum(Pe)),warnings:Zt}),en=m({error:c(o().describe("Error message")),providerErrors:c(v(m({errorCode:c(n.enum(oe)),message:c(o()),provider:n.enum(C).optional()}))),quoteId:o().describe("Quote ID"),routes:v(Sr)}),tn=n.object({chainId:n.enum(q),createdAt:n.date(),id:n.number(),unit:n.string(),value:n.string()}),Ar=n.array(tn),nn=n.union([tn,Ar]),ra=v(m({chain:n.enum(Oe),decimal:h(),identifier:o(),symbol:o(),ticker:o(),value:o()})),sa=n.union([n.object({amount:n.string(),spender:n.string(),tokenIdentifier:n.string(),userWalletAddress:n.string()}),n.object({amount:n.string(),chainId:n.enum(q),spender:n.string(),tokenContractAddress:n.string(),userWalletAddress:n.string()}),n.object({routeId:n.string()})]),oa=n.object({approvalTransaction:n.optional(n.object({data:n.string(),from:n.string(),gasLimit:n.optional(n.string()),gasPrice:n.optional(n.string()),to:n.string(),value:H})),approvedAmount:n.string(),isApproved:n.boolean()}),Tr=n.object({data:n.string().describe("Encoded approval call data"),from:n.string().describe("User wallet address"),gasLimit:n.string().optional().describe("Estimated gas limit"),gasPrice:n.string().optional().describe("Current gas price"),to:n.string().describe("Token contract address"),value:H.describe("ETH value (always '0' for approvals)")}),wr=n.object({tx:n.string(),txType:n.literal("STELLAR")}),xr=n.union([Tr,wr]),Mt=n.object({buyAmount:n.string().describe("Buy amount").optional(),buyAmountMaxSlippage:n.string().describe("Buy amount max slippage").optional(),buyAsset:n.string().describe("Asset to buy"),expectedBuyAmount:n.string().describe("Expected Buy amount").optional(),expectedBuyAmountMaxSlippage:n.string().describe("Expected Buy amount max slippage").optional(),fees:qe,provider:n.enum(C),sellAmount:n.string().describe("Sell amount"),sellAsset:n.string().describe("Asset to sell")}),rn=Mt.extend({estimatedTime:n.optional(We),expiration:n.optional(n.string().describe("Expiration")),legs:n.array(Mt),providers:n.array(n.enum(C)),routeId:n.string().describe("Route ID"),totalSlippageBps:n.number().describe("Total slippage in bps"),warnings:Zt}).omit({provider:!0}),sn=n.object({method:n.string(),payload:n.optional(n.unknown()),url:n.string()}),Rr=rn.extend({meta:Xt,nextActions:n.optional(n.array(sn))}),aa=n.object({error:n.optional(n.string().describe("Error message")),providerErrors:n.optional(n.array(n.object({errorCode:n.optional(n.enum(oe)),message:n.optional(n.string()),provider:n.enum(C).optional()}))),quoteId:n.string().describe("Quote ID"),routes:n.array(Rr)}),la=n.object({providers:n.array(n.enum(C)).optional().describe("Optional list of providers to query for trading pairs"),sellAsset:n.string().describe("Asset identifier to sell (e.g., 'BTC.BTC' or 'ETH.ETH')")}),vr=n.object({chain:n.enum(Oe).describe("Chain the asset is on"),identifier:n.string().describe("Asset identifier (e.g., 'ETH.USDC-0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48')"),providers:n.array(n.enum(C)).describe("Providers that support this trading pair"),symbol:n.string().describe("Asset symbol"),ticker:n.string().describe("Asset ticker")}),da=n.object({buyAssets:n.array(vr).describe("List of assets that can be swapped to"),sellAsset:n.string().describe("The input sell asset identifier")}),on=rn.extend({destinationAddress:n.string().describe("Destination address"),inboundAddress:n.optional(n.string().describe("Inbound address")),memo:n.optional(n.string().describe("Memo to include in the transaction")),meta:Jt,sourceAddress:n.string().describe("Source address"),targetAddress:n.optional(n.string().describe("Target address")),tx:c(Qt),txType:n.optional(n.enum(Pe))}),Ir=n.object({data:n.optional(n.record(n.string(),n.string().optional())),errorCode:n.enum(oe),message:n.string().optional(),provider:n.enum(C).optional()}),ca=n.object({error:n.optional(n.string().describe("Error message")),providerErrors:n.optional(n.array(Ir)),quoteId:n.string().describe("Quote ID"),routes:n.array(on)}),an=on.extend({approvalTx:xr.optional().describe("Optional approval transaction required before swap execution"),nextActions:n.optional(n.array(sn)),swapId:n.string().describe("The unique swap ID for tracking")}),Cr={CANCELLED:"CANCELLED",EXPIRED:"EXPIRED",FAILED:"FAILED",FILLED:"FILLED",OPEN:"OPEN",PARTIAL:"PARTIAL",PENDING:"PENDING",SUBMITTED:"SUBMITTED"},Or={Cardano:"cardano",Evm:"evm",Near:"near",Psbt:"psbt",Ripple:"ripple",Solana:"solana",Starknet:"starknet",Stellar:"stellar",Sui:"sui",Ton:"ton",Tron:"tron"};function D(e){return n.union([e,n.string()])}var Ge=D(n.enum(Cr)),je=n.object({method:n.string(),payload:n.optional(n.unknown()),url:n.string()}),ln=n.array(n.object({code:n.string(),display:n.string(),tooltip:n.string().optional()})),dn=n.array(n.object({amount:n.string(),amountBps:n.number().optional(),asset:n.string(),chain:n.string(),protocol:D(n.enum(C)),type:D(n.enum(_e))})),cn=n.object({crossChain:n.array(n.object({assets:n.array(n.string()),chainIds:n.array(D(n.enum(q))),provider:D(n.enum(C))})),singleChain:n.array(n.object({assets:n.array(n.string()),chainId:D(n.enum(q)),provider:D(n.enum(C))}))}),pa=n.object({affiliateFee:n.number().min(0).max(1000).optional(),buyAmount:n.string().optional(),buyAsset:n.string(),destinationAddress:n.string().optional(),expiresAt:n.number().int().positive().optional(),limitPrice:n.string().optional().describe("buyAsset per 1 sellAsset"),providers:n.array(n.enum(C)).optional(),sellAmount:n.string().optional(),sellAsset:n.string(),sourceAddress:n.string().optional()}),Pr=n.object({buyAmount:n.string(),buyAsset:n.string(),effectiveFillPrice:n.string(),fees:dn.optional(),integratorFeeBps:n.number(),limitPrice:n.string(),maxExpirationSeconds:n.number(),minExpirationSeconds:n.number(),nextActions:n.optional(n.array(je)),provider:D(n.enum(C)),routeId:n.string(),sellAmount:n.string(),sellAsset:n.string(),spotPrice:n.string(),spotPriceDeviationBps:n.number(),takerFeeBps:n.number(),warnings:ln.optional()}),pn=n.object({error:n.string().optional(),providerErrors:n.optional(n.array(n.object({errorCode:n.optional(n.string()),message:n.optional(n.string()),provider:D(n.enum(C)).optional()}))),quoteId:n.string(),routes:n.array(Pr)}),ua=n.object({allowMultipleFills:n.boolean().optional(),allowPartialFill:n.boolean().optional(),destinationAddress:n.string().min(1),expiresAt:n.number().int().positive().describe("Unix timestamp in seconds"),routeId:n.string(),sourceAddress:n.string().min(1)}),kr=n.object({domain:n.looseObject({chainId:n.number(),name:n.string(),verifyingContract:n.string(),version:n.string()}),message:n.record(n.string(),n.unknown()),primaryType:n.string(),types:n.record(n.string(),n.array(n.object({name:n.string(),type:n.string()})))}),Lr=n.strictObject({data:n.string(),from:n.string().optional(),gas:H.optional(),gasPrice:H.optional(),maxFeePerGas:H.optional(),maxPriorityFeePerGas:H.optional(),to:n.string(),type:H.optional(),value:H}),Er=n.object({chainId:n.number().optional(),memo:n.string().optional(),txType:n.enum(Or)}),Nr=n.object({data:n.string(),from:n.string(),gasLimit:n.string().optional(),gasPrice:n.string().optional(),to:n.string(),value:n.string()}),un=n.object({approvalTx:Nr.optional(),depositAddress:n.string().optional(),depositAmount:n.string().optional(),depositMemo:n.string().optional(),isApproved:n.boolean().optional(),nextActions:n.array(je),orderHash:n.string(),orderId:n.string(),tx:n.union([n.string(),Lr,n.record(n.string(),n.unknown()),n.array(n.unknown())]).nullable(),txMeta:Er.nullable(),typedData:kr.nullable(),warnings:ln.optional()}),mn=n.object({createdAt:n.string(),orderHash:n.string(),orderId:n.string(),status:Ge}),Dr=n.object({blockNumber:n.number().int().optional(),chainId:D(n.enum(q)),txHash:n.string(),type:D(n.enum(["fill","cancel","deposit","withdraw","refund"]))}),Ye=n.object({buyAmount:n.string(),buyAsset:n.string(),cancelRequestedAt:n.string().optional(),chainId:D(n.enum(q)),createdAt:n.string(),depositHash:n.string().optional(),expiresAt:n.string(),fees:dn,filledBuyAmount:n.string(),filledSellAmount:n.string(),limitPrice:n.string(),maker:n.string(),orderHash:n.string(),orderId:n.string(),provider:D(n.enum(C)),receiver:n.string().nullable(),sellAmount:n.string(),sellAsset:n.string(),status:Ge,txHashes:n.array(Dr).optional(),updatedAt:n.string(),usdValueClose:n.string().nullable().optional(),usdValueOpen:n.string().nullable().optional(),withdrawHash:n.string().optional()}),ze=n.object({nextCursor:n.string().optional(),orders:n.array(Ye)}),Mr=n.object({domain:n.looseObject({name:n.string(),version:n.string()}),message:n.looseObject({action:n.literal("cancel_and_withdraw"),chain:n.string(),expiry:n.number(),l1Address:n.string(),nonce:n.number(),payload:n.looseObject({orderId:n.string()})}),primaryType:n.literal("CancelAndWithdraw"),types:n.looseObject({CancelAndWithdraw:n.array(n.object({name:n.string(),type:n.string()})),CancelAndWithdrawPayload:n.array(n.object({name:n.string(),type:n.string()})),EIP712Domain:n.array(n.object({name:n.string(),type:n.string()}))})}),Vr=n.strictObject({chainId:n.number(),data:n.string(),from:n.string(),to:n.string(),value:n.string()}),gn=n.object({btcSignaturePreimage:n.string().nullable(),cancelTx:Vr.nullable(),nextActions:n.array(je),orderId:n.string(),typedData:Mr.nullable()}),_n=n.object({cancelRequestedAt:n.string().optional(),orderId:n.string(),status:Ge,txHash:n.string().optional(),withdrawId:n.string().optional()});var P=_.extend({dynamicHeader:async()=>{let e=A.get("widgetId"),t=A.get("widgetKey");if(e&&t&&typeof window<"u"){let r=Math.floor(Date.now()/1000),s=window.location.origin,a=await dt(t,e,s,r);return{Origin:s,"X-Signature":a,"X-Timestamp":r.toString(),"x-widget-id":e}}let{swapKit:i}=A.get("apiKeys");return i?{"x-api-key":i}:{}}});async function Ur(e){let t=await P.post(O("/track"),{json:e});try{let i=Yt.safeParse(t);if(!i.success)throw new b("api_v2_invalid_response",i.error);return i.data}catch(i){return t}}async function Br(e){let{getQuote:t}=A.get("endpoints");if(t)return t(e);let r=A.get("v3SwapFlow")?.enabled?"/v3/quote":"/quote",s=await P.post(O(r),{json:e});if(s.error)throw new b("api_v2_server_error",{message:s.error});try{let a=en.safeParse(s);if(!a.success)throw new b("api_v2_invalid_response",a.error);return a.data}catch{return s}}async function $r(e){let{getRouteWithTx:t}=A.get("endpoints");if(t)return t(e);let r=A.get("v3SwapFlow")?.enabled?"/v3/swap":"/swap",s=await P.post(O(r),{json:e});try{let a=an.safeParse(s);if(!a.success)throw new b("api_v2_invalid_response",a.error);return a.data}catch(a){return console.error(new b("api_v2_invalid_response",a)),s}}async function Fr({chain:e,address:t,scamFilter:i=!0}){let{getBalance:r}=A.get("endpoints");if(r)return r({address:t,chain:e});let s=O(`/balance?chain=${e}&address=${t}`),a=await P.get(s),l=Array.isArray(a)?a:[];return i?ls(l):l}function Kr(e){let t=Hr(e).with({routeId:pe.string,spender:pe.string},({routeId:i,spender:r})=>O(`/approve?routeId=${i}&sourceAddress=${r}`)).with({assetValue:pe.instanceOf(N),spender:pe.string,userWallet:pe.string},({spender:i,userWallet:r,assetValue:s})=>O(`/approve?tokenIdentifier=${s.toString()}&userWalletAddress=${r}&spender=${i}&amount=${s.getValue("string")}`)).exhaustive();return P.get(t)}function qr(){let e=O("/providers");return P.get(e)}function Wr(e){let t=O(`/tokens?provider=${e}`);return P.get(t)}function Gr({query:e,chain:t,page:i,limit:r}){let s=new URLSearchParams({query:e});if(t!==void 0)s.set("chain",t);if(i!==void 0)s.set("page",i.toString());if(r!==void 0)s.set("limit",r.toString());let a=O(`/tokens/search?${s.toString()}`);return P.get(a)}async function jr(e){let t=O("/price"),i=await P.post(t,{json:e});try{let r=qt.safeParse(i);if(!r.success)throw new b("api_v2_invalid_response",r.error);return r.data}catch(r){throw new b("api_v2_invalid_response",r)}}async function Yr(){let e=O("/gas"),t=await P.get(e);try{let i=nn.safeParse(t);if(!i.success)throw new b("api_v2_invalid_response",i.error);return Array.isArray(i)?i:[i]}catch(i){throw new b("api_v2_invalid_response",i)}}async function zr(e){let{destinationAddress:t}=e;if(!t)throw new b("chainflip_broker_invalid_params");let i=A.get("integrations").chainflip?.brokerUrl||O("/chainflip/broker/channel"),r=await P.post(i,{json:e});try{let s=Gt.safeParse(r);if(!s.success)throw new b("api_v2_invalid_response",s.error);return s.data}catch(s){throw new b("api_v2_invalid_response",s)}}async function Qr(e){let{destinationAddress:t}=e;if(!t)throw new b("chainflip_broker_invalid_params");let i=O("/near/channel"),r=await P.post(i,{json:e});try{let s=jt.safeParse(r);if(!s.success)throw new b("api_v2_invalid_response",s.error);return s.data}catch(s){throw new b("api_v2_invalid_response",s)}}function W(e,t){let i=e.safeParse(t);if(!i.success)throw new b("api_v2_invalid_response",i.error);return i.data}async function Xr(){let{getLimitOrderTokens:e}=A.get("endpoints"),t=e?await e():await P.get(O("/v3/limit/tokens"));return W(cn,t)}async function Jr(e){let{getLimitOrderQuote:t}=A.get("endpoints"),i=t?await t(e):await P.post(O("/v3/limit/quote"),{json:e});return W(pn,i)}async function Zr(e){let{buildLimitOrder:t}=A.get("endpoints"),i=t?await t(e):await P.post(O("/v3/limit/build"),{json:e,retry:{maxRetries:0}});return W(un,i)}async function es(e){let{submitLimitOrder:t}=A.get("endpoints"),i=t?await t(e):await P.post(O("/v3/limit/submit"),{json:e,retry:{maxRetries:0}});return W(mn,i)}async function ts(e={}){let{getLimitOrders:t}=A.get("endpoints");if(t)return W(ze,await t(e));let{status:i,...r}=e,s=new URLSearchParams;for(let[p,g]of Object.entries(r))if(g!==void 0)s.set(p,String(g));for(let p of i===void 0?[]:[i].flat())s.append("status",p);let a=s.toString(),l=await P.get(O(`/v3/limit/orders${a?`?${a}`:""}`));return W(ze,l)}async function ns(e){let{getLimitOrder:t}=A.get("endpoints"),i=t?await t(e):await P.get(O(`/v3/limit/orders/${encodeURIComponent(e)}`));return W(Ye,i)}async function is(e){let{buildLimitOrderCancel:t}=A.get("endpoints"),i=t?await t(e):await P.post(O("/v3/limit/cancel/build"),{json:e,retry:{maxRetries:0}});return W(gn,i)}async function rs(e){let{submitLimitOrderCancel:t}=A.get("endpoints"),i=t?await t(e):await P.post(O("/v3/limit/cancel/submit"),{json:e,retry:{maxRetries:0}});return W(_n,i)}function O(e){let{isDev:t,apiUrl:i,devApiUrl:r}=A.get("envs"),{enabled:s,quoteUrl:a,swapUrl:l}=A.get("localMode");if(s&&e){let[g]=e.split("?");if(g==="/quote"||g==="/v3/quote")return`${a}${e}`;if(g==="/swap"||g==="/v3/swap")return`${l}${e}`}return`${t?r:i}${e}`}function ss(e){try{return N.from({asset:e.identifier})}catch{return}}var os=new Set(["OP.OP"]),as=/(.)\1{6}|\.ORG|\.NET|\.FINANCE|\.COM|WWW|HTTP|\\\\|\/\/|[\s$%:[\]]/im;function ls(e){return e.filter((t)=>{let i=ss(t);if(!i)return!1;if(os.has(i.toString().toUpperCase()))return!0;return(!Qe.includes(i.chain)||i.isGasAsset||!!i.address)&&!as.test(i.ticker)})}async function ds(e){let{getSwapTo:t}=A.get("endpoints");if(t)return t(e);let i=new URLSearchParams({sellAsset:e.sellAsset});if(e.providers?.length)for(let l of e.providers)i.append("providers",l);let r=O(`/swapTo?${i.toString()}`),s=await P.get(r);if(!Array.isArray(s))return{buyAssets:[],sellAsset:e.sellAsset};let a=[];for(let l of s)try{let p=N.from({asset:l});a.push({chain:p.chain,identifier:p.toString(),providers:[],symbol:p.symbol,ticker:p.ticker})}catch{}return{buyAssets:a,sellAsset:e.sellAsset}}var Je={};nt(Je,{getInboundAddresses:()=>_s,getLastBlock:()=>ps,getMimirInfo:()=>gs,getNodes:()=>ms,getRunePoolInfo:()=>fs,getRunePoolProviderInfo:()=>ys,getTHORNodeTNSDetails:()=>hn,getTNSPreferredAsset:()=>hs,getTcyClaimer:()=>As,getTcyClaimers:()=>Ts,getTcyStaker:()=>bs,getTcyStakers:()=>Ss,getThorchainQueue:()=>us});function V(e){let t=A.get("thornodeUrls");return`${e==="mayachain"?t.MAYA:t.THOR}/${e??"thorchain"}`}function cs(e){let t=e==="mayachain"?"mayaname":"thorname";return`${V(e)}/${t}`}function ps(e="thorchain"){return _.get(`${V(e)}/lastblock`)}function us(e){return _.get(`${V(e)}/queue`)}function ms(e){return _.get(`${V(e)}/nodes`)}function gs(e){return _.get(`${V(e)}/mimir`)}function _s(e){return _.get(`${V(e)}/inbound_addresses`)}async function hn({type:e,name:t}){try{return await _.get(`${cs(e)}/${t}`)}catch{return{affiliate_collector_rune:"",aliases:[],expire_block_height:0,name:t,owner:"",preferred_asset:""}}}async function hs({type:e,tns:t}){let i=await hn({name:t,type:e});if(!i.preferred_asset||i.preferred_asset===".")return;return N.from({asset:i.preferred_asset,asyncTokenLookup:!0})}function fs(e){return _.get(`${V(e)}/runepool`)}function ys({type:e,thorAddress:t}){return _.get(`${V(e)}/rune_provider/${t}`)}function bs({type:e,address:t}){return _.get(`${V(e)}/tcy_staker/${t}`)}function Ss(e){return _.get(`${V(e)}/tcy_stakers`)}function As({type:e,address:t}){return _.get(`${V(e)}/tcy_claimer/${t}`)}function Ts(e){return _.get(`${V(e)}/tcy_claimers`)}var Ra={...Xe,mayachainMidgard:Et,thorchainMidgard:Lt,thornode:Je};
5
+ export{Rs as a,oe as b,Le as c,C as d,_e as e,wn as f,xn as g,Rn as h,b as i,Os as j,he as k,st as l,Ls as m,vn as n,Es as o,L as p,A as q,_ as r,dt as s,zs as t,ae as u,De as v,Fn as w,J as x,no as y,io as z,ro as A,ho as B,Qn as C,wt as D,xt as E,Rt as F,Se as G,Ve as H,Y as I,de as J,fo as K,yo as L,Z as M,K as N,ai as O,N as P,Po as Q,Ie as R,Ht as S,Pe as T,Ut as U,Bt as V,$t as W,Ft as X,Fo as Y,Ko as Z,qo as _,Wo as $,re as aa,Kt as ba,Go as ca,qt as da,jo as ea,Yo as fa,Wt as ga,Gi as ha,Gt as ia,Nt as ja,zo as ka,jt as la,Yt as ma,Qo as na,Xo as oa,qe as pa,We as qa,tr as ra,Jo as sa,Zo as ta,nr as ua,ir as va,rr as wa,ea as xa,dr as ya,cr as za,pr as Aa,ur as Ba,ta as Ca,mr as Da,gr as Ea,zt as Fa,na as Ga,hr as Ha,ia as Ia,fr as Ja,yr as Ka,Xt as La,Jt as Ma,Zt as Na,Sr as Oa,en as Pa,tn as Qa,nn as Ra,sa as Sa,oa as Ta,Tr as Ua,wr as Va,xr as Wa,aa as Xa,la as Ya,vr as Za,da as _a,on as $a,Ir as ab,ca as bb,an as cb,Cr as db,Or as eb,cn as fb,pa as gb,Pr as hb,pn as ib,ua as jb,kr as kb,Lr as lb,Er as mb,Nr as nb,un as ob,mn as pb,Dr as qb,Ye as rb,ze as sb,Mr as tb,Vr as ub,gn as vb,_n as wb,Ra as xb};
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- import{$ as Er,$a as bn,A as Gt,Aa as qr,B as Yt,Ba as Gr,C as Jt,Ca as Yr,D as Qt,Da as Jr,E as Zt,Ea as Qr,F as er,Fa as Zr,G as tr,Ga as en,H as rr,Ha as tn,I as nr,Ia as rn,J as or,Ja as nn,K as ir,Ka as on,L as ar,La as an,M as sr,Ma as sn,N as ur,Na as un,O as cr,Oa as cn,P as pr,Pa as pn,Q as dr,Qa as dn,R as f,Ra as mn,S as mr,Sa as ln,T as lr,Ta as hn,U as hr,Ua as fn,V as fr,Va as gn,W as gr,Wa as wn,X as wr,Xa as Pn,Y as Pr,Ya as vn,Z as vr,Za as yn,_ as yr,_a as En,a as v,aa as br,ab as Tn,b as Wt,ba as Tr,bb as An,c as $t,ca as Ar,cb as xn,d as Rt,da as xr,db as Sn,e as Dt,ea as Sr,f as L,fa as _r,g as Ot,ga as Cr,h as re,ha as Mr,i as m,ia as Wr,j as kt,ja as $r,k as c,ka as Rr,l as It,la as Dr,m as Nt,ma as Or,n as Ft,na as kr,o as Lt,oa as Ir,p as Bt,pa as Nr,q as x,qa as Fr,r as Ut,ra as Lr,s as Kt,sa as Br,t as Ht,ta as Ur,u as W,ua as Kr,v as jt,va as Hr,w as zt,wa as jr,x as Vt,xa as zr,y as Xt,ya as Vr,z as qt,za as Xr}from"./chunk-yft3rsg6.js";export*from"@swapkit/tokens";export*from"@swapkit/types";var B={average:1,fast:1.5,fastest:2};function S(e="average"){let t=x.get("feeMultipliers");if(t&&t[e]!==void 0)return t[e];return B[e]}function U(e="average"){let t=S(e),r=10n,n=BigInt(Math.round(t*10));return{denominator:r,numerator:n}}function he(e,t="average"){let{numerator:r,denominator:n}=U(t);return e*r/n}function fe(e,t="average",r=!1){let n=S(t),o=e*n;return r?Math.floor(o):o}import{Chain as P,EVMChains as K}from"@swapkit/types";import{match as H}from"ts-pattern";function g(e,t){let r=e.length-1;return e.map((o,i)=>{if(i===r&&t.index!==void 0)return t.index;if(i===0&&t.purpose!==void 0)return t.purpose;if(i===2&&t.account!==void 0)return t.account;if(i===3&&t.change!==void 0)return t.change;return o})}var h={bech32:84,legacy:44,p2sh:49,taproot:86},_;((o)=>{o.P2PKH="P2PKH";o.P2SH_P2WPKH="P2SH_P2WPKH";o.P2WPKH="P2WPKH";o.P2TR="P2TR"})(_||={});var j=Object.freeze({["P2PKH"]:{inputSize:148,outputSize:34,purpose:h.legacy,witness:!1},["P2SH_P2WPKH"]:{inputSize:91,outputSize:32,purpose:h.p2sh,witness:!0},["P2WPKH"]:{inputSize:68,outputSize:31,purpose:h.bech32,witness:!0},["P2TR"]:{inputSize:58,outputSize:43,purpose:h.taproot,witness:!0}}),z=Object.values(_);function V(e){if(e===void 0)return;return z.find((t)=>j[t].purpose===e)}function X(e){if(!e)return;if(typeof e!=="string")return e[0];let t=Number.parseInt(e.replace(/^[mM]'?\//,"").split("/")[0]??"",10);return Number.isNaN(t)?void 0:t}function ye(e){return V(X(e))}var q=Object.freeze([P.Near,P.Stellar,P.Sui]),Ee=Object.freeze([P.Ton]);function G({chain:e,derivationPath:t,index:r=0}){if(t)return t;return g(v[e],q.includes(e)?{account:r}:{index:r})}function Y([e,t,r,n,o],{allHardened:i}={}){let s=i?"'":"",a=typeof o!=="number";if(typeof n!=="number")return`m/${e}'/${t}'/${r}'`;return`m/${e}'/${t}'/${r}'/${n}${s}${a?"":`/${o}${s}`}`}function be({chain:e,index:t,addressIndex:r=0,type:n}){let o=v[e],i=K.includes(e)?"evm":e===P.Solana?"solana":"other";return H([i,n]).with(["evm","legacy"],["evm","account"],()=>[44,60,0,t]).with(["evm","ledgerLive"],()=>[44,60,t,0,r]).with(["evm","nativeSegwitMiddleAccount"],["evm","segwit"],["evm",void 0],()=>g(o,{index:t})).with(["solana","account"],()=>[44,501,0,t]).with(["solana","legacy"],["solana","ledgerLive"],["solana","nativeSegwitMiddleAccount"],["solana","segwit"],["solana",void 0],()=>g(o,{index:t})).with(["other","nativeSegwitMiddleAccount"],()=>g(o,{account:t,index:r,purpose:h.bech32})).with(["other","segwit"],()=>g(o,{account:0,index:t,purpose:h.p2sh})).with(["other","legacy"],()=>g(o,{account:0,index:t,purpose:h.legacy})).with(["other","account"],["other","ledgerLive"],["other",void 0],()=>G({chain:e,index:t})).exhaustive()}function Te(e){let[t,r]=e.split("/").map((n)=>Number.parseInt(n,10));switch(r){case 44:return"legacy";case 49:return"p2sh";default:return"bech32"}}var Ae=Object.freeze(Object.fromEntries(Object.keys(v).map((e)=>[e,Y(v[e])])));import{Chain as J,getChainConfig as Q}from"@swapkit/types";function Z({liquidityUnits:e,poolUnits:t,runeDepth:r}){let n=p(e),o=p(t),i=p(r),s=n.mul(i),a=o.mul(o).mul(2),u=o.mul(n).mul(2),d=n.mul(n),l=o.mul(o).mul(o);return s.mul(a.sub(u).add(d)).div(l)}function ee({liquidityUnits:e,poolUnits:t,assetDepth:r}){let n=p(e),o=p(t),i=p(r),s=n.mul(i),a=o.mul(o).mul(2),u=o.mul(n).mul(2),d=n.mul(n),l=s.mul(a.sub(u).add(d)),w=o.mul(o).mul(o);return l.div(w)}function Ce({percent:e,runeDepth:t,liquidityUnits:r,poolUnits:n}){return Z({liquidityUnits:r,poolUnits:n,runeDepth:t}).mul(e)}function Me({percent:e,assetDepth:t,liquidityUnits:r,poolUnits:n}){return ee({assetDepth:t,liquidityUnits:r,poolUnits:n}).mul(e)}function p(e){return f.fromBigInt(BigInt(e),Q(J.THORChain).baseDecimal)}function te({liquidityUnits:e,poolUnits:t,runeDepth:r,assetDepth:n}){return{assetAmount:p(n).mul(e).div(t),runeAmount:p(r).mul(e).div(t)}}function We({liquidityUnits:e,poolUnits:t,runeDepth:r,assetDepth:n,percent:o}){return Object.fromEntries(Object.entries(te({assetDepth:n,liquidityUnits:e,poolUnits:t,runeDepth:r})).map(([i,s])=>[i,s.mul(o)]))}function $e({runeDepth:e,poolUnits:t,assetDepth:r,liquidityUnits:n,runeAmount:o,assetAmount:i}){let s=new f({decimal:8,value:e}),a=new f({decimal:8,value:r}),u=new f({decimal:8,value:t}),d=new f({decimal:8,value:o}),l=new f({decimal:8,value:i}),w=d.mul(a),T=l.mul(s),O=d.mul(l),k=s.mul(a),I=u.mul(w.add(T.add(O.mul(2)))),N=w.add(T.add(k.mul(2))),A=I.div(N),b=p(n).add(A);if(A.getBaseValue("number")===0)return b.div(u).getBaseValue("number");let F=u.add(b);return b.div(F).getBaseValue("number")}function Re({runeAmount:e,assetAmount:t,runeDepth:r,assetDepth:n}){if(e==="0"||t==="0"||r==="0"||n==="0")return 0;let o=p(r),i=p(n),s=p(t),a=p(e),u=s.mul(o).sub(i.mul(a)),d=i.mul(a).add(o.mul(i));return Math.abs(u.div(d).getBaseValue("number"))}import{Chain as y}from"@swapkit/types";import{match as ne}from"ts-pattern";function Fe({type:e,address:t}){return`${e}:${t}`}function Le({address:e,unbondAmount:t}){return`${"UNBOND"}:${e}:${t}`}function Be(e){return E("POOL+",e)}function Ue({chain:e,symbol:t,address:r,...n}){let o=oe({chain:e,symbol:t}),i=r?`:${r}:`:":";return E(`${"+"}:${o}${i}`,n)}function Ke({chain:e,symbol:t,ticker:r,basisPoints:n,targetAsset:o}){let i=e==="ETH"&&r!=="ETH"?`${r}-${t.slice(-3)}`:t,s=o?`:${o}`:"";return`${"-"}:${e}.${i}:${n}${s}`}function He({basisPoints:e,...t}){return E(`${"POOL-"}:${e}`,t)}function je({name:e,chain:t,address:r,owner:n}){let o=`${"~"}:${e}:${t}:${r}`,i=n?`:${n}`:"";return`${o}${i}`}function ze({name:e,chain:t,asset:r,payout:n,owner:o}){return`${"~"}:${e}:${t}:${n}:${o}:${r}`}function Ve(e,{address:t}){return`${e}:${t}`}function Xe(e,{unstakeBps:t,...r}){let n=t?`:${t}`:"",o=`${e}${n}`;return E(`${o}`,r)}function E(e,{affiliateAddress:t,affiliateBasisPoints:r}={}){let n=`${e}${t?`:${t}:${r||0}`:""}`;return n.endsWith(":")?n.slice(0,-1):n}function oe({chain:e,symbol:t}){return ne(e).with(y.Bitcoin,y.Dogecoin,y.Litecoin,()=>e.slice(0,1).toLowerCase()).with(y.BitcoinCash,()=>"c").otherwise(()=>`${e}.${t}`)}function qe(e){if(e<0)throw new m({errorKey:"helpers_invalid_number_of_years",info:{numberOfYears:e}});return Math.round((10+Math.max(0,e-1)*1.0512)*1e8)/1e8}function Ge(e){if(e<0)throw new m({errorKey:"helpers_invalid_number_of_years",info:{numberOfYears:e}});return Math.round((10+Math.max(0,e-1)*1.0512)*10000000000)/10000000000}function Ye(e){if(e.length>30)return!1;let t=/^[a-zA-Z0-9+_-]+$/g;return!!e.match(t)}import{getChainConfig as R}from"@swapkit/types";function rt(){return typeof window.ethereum<"u"}function nt(e){return ie().includes(e)}function ie(){let e=window?.ethereum&&!window.ethereum?.isBraveWallet,t=window?.vultisig,r=window?.ethereum?.isBraveWallet,n=window?.ethereum?.isTrust||window?.trustwallet,o=window?.ethereum?.overrideIsMetaMask&&window?.ethereum?.selectedProvider?.isCoinbaseWallet||window?.coinbaseWalletExtension,i=window?.bitkeep?.ethereum,s=window?.$onekey?.ethereum,a=[];if(e)a.push(c.METAMASK);if(t)a.push(c.VULTISIG);if(r)a.push(c.BRAVE);if(n)a.push(c.TRUSTWALLET_WEB);if(o)a.push(c.COINBASE_WEB);if(de())a.push(c.OKX_MOBILE);if(i)a.push(c.BITGET);if(s)a.push(c.ONEKEY);return a}var C=new Set([4001,5000,"ACTION_REJECTED"]);function ot(e){return(e?.signing?.direct??e?.supportsDirectSigning)===!0}function M(e){if(!e||typeof e!=="object")return!1;let{code:t,error:r,info:n,data:o}=e;if(C.has(t))return!0;return[r,n?.error,o?.originalError].some((i)=>!!i&&typeof i==="object"&&C.has(i.code))}async function ae(e,t){if(!t)return!1;try{let{chainId:r}=await e.getNetwork();return BigInt(r)===BigInt(t)}catch{return!1}}async function se(e,t,r){let n=R(t);try{await D({method:"wallet_switchEthereumChain",params:[{chainId:n.chainIdHex}],provider:e})}catch(o){if(M(o))throw new m("helpers_failed_to_switch_network",{chain:t,error:o,reason:"user rejected request"});if(!r)throw new m("helpers_failed_to_switch_network",{chain:t,error:o,reason:"networkParams not provided"});try{await pe(e,r)}catch(i){throw new m("helpers_failed_to_switch_network",{chain:t,error:i,reason:M(i)?"user rejected adding the network":"failed to add the network"})}}}function it({chains:e,supportedChains:t,walletType:r}){let n=e.filter((i)=>!i||t.includes(i));if(n.length===0)throw new m("wallet_chain_not_supported",{chain:e.join(", "),wallet:r});let o=e.filter((i)=>!t.includes(i));return W({condition:o.length>0,id:`wallet_chain_not_supported_${r}`,warning:`${r} wallet does not support the following chains: ${o.join(", ")}. These chains will be ignored.`}),n}function ue(e,t,r,n){return async(...o)=>{let{chainIdHex:i}=R(r);if(await ae(t,i))return e(...o);try{await se(t,r,n)}catch(s){if(s instanceof m)throw s;throw new m({errorKey:"helpers_failed_to_switch_network",info:{chain:r,error:s}})}return e(...o)}}function at({toolbox:e,chain:t,provider:r,methodNames:n=[],networkParams:o=ce(e)}){let s=[...n,"approve","approvedAmount","call","sendTransaction","transfer","isApproved","approvedAmount","EIP1193SendTransaction","getFeeData","broadcastTransaction","estimateCall","estimateGasLimit","estimateGasPrices","createContractTxObject","signTypedData"].reduce((a,u)=>{if(!e[u])return a;let d=e[u];if(typeof d!=="function")return a;let l=ue(d,r,t,o);return{...a,[u]:l}},{});return{...e,...s}}function ce(e){let t=e.getNetworkParams;if(typeof t!=="function")return;try{let r=t();return r&&typeof r==="object"&&"chainId"in r?r:void 0}catch{return}}function pe(e,t){return D({method:"wallet_addEthereumChain",params:[t],provider:e})}function st(e){window.ethereum?.on("accountsChanged",()=>e())}function ut(){let{isTrust:e,isBraveWallet:t,overrideIsMetaMask:r,selectedProvider:n}=window?.ethereum||{};if(e)return c.TRUSTWALLET_WEB;if(t)return c.BRAVE;if(r&&n?.isCoinbaseWallet)return c.COINBASE_WEB;if(window?.$onekey?.ethereum)return c.ONEKEY;return c.METAMASK}function ct(){let e=[];function t(n){if(e.map((o)=>o.info.uuid).includes(n.detail.info.uuid))return;e.push(n.detail)}window.addEventListener("eip6963:announceProvider",t),window.dispatchEvent(new Event("eip6963:requestProvider"));function r(){window.removeEventListener("eip6963:announceProvider",t)}return{providers:e,removeEIP6963EventListener:r}}function de(){let e=navigator.userAgent,t=/iphone|ipad|ipod|ios/i.test(e),r=/android|XiaoMi|MiuiBrowser/i.test(e),n=t||r,o=/OKApp/i.test(e);return n&&o}function D({provider:e,params:t,method:r}){if(!e?.send)throw new m("helpers_not_found_provider");let n=t?Array.isArray(t)?t:[t]:[];return e.send(r,n)}export{q as ACCOUNT_INDEXED_CHAINS,Er as ApiV2ErrorSchema,fn as ApprovalTransactionSchema,Ot as ApproveMode,ln as ApproveRequestParams,hn as ApproveResponseSchema,pr as AssetValue,br as AssetValueSchema,ur as BigIntArithmetics,Mr as BrokerDepositChannelParamsSchema,on as ChainflipMetadataSchema,Tr as CoinGeckoMetadataSchema,Yt as CommonAssetStrings,Vr as CosmosTransactionSchema,B as DEFAULT_FEE_MULTIPLIERS,Cr as DepositChannelParamsSchema,Wr as DepositChannelResponseSchema,Ae as DerivationPath,jr as EVMTransactionDetailsParamsSchema,zr as EVMTransactionDetailsSchema,Kr as EVMTransactionSchema,Wt as ErrorCode,Fr as EstimatedTimeSchema,L as FeeOption,Dt as FeeTypeEnum,Nr as FeesSchema,mn as GasResponseSchema,dn as GasSchema,Yr as HYPERCORE_USDC_TOKEN_ID,Jr as HyperCoreEip712TypedDataSchema,Qr as HyperCoreSendAssetActionSchema,en as HyperCoreSendAssetTransactionSchema,Zr as HyperCoreTypedDataTransactionSchema,Ft as LedgerErrorCode,re as MemoType,$r as NearDepositChannelParamsSchema,Rr as NearDepositChannelResultSchema,Dr as NearSwapResponseSchema,v as NetworkDerivationPath,_r as PriceRequestSchema,xr as PriceResponseSchema,mr as PriorityLabel,fr as ProviderAction,Rt as ProviderName,Sr as QuoteRequestSchema,cn as QuoteResponseRouteItem,pn as QuoteResponseSchema,bn as QuoteRouteV2Response,An as QuoteV2ResponseSchema,Pn as QuoteV3ResponseSchema,Ut as RequestClient,tn as RouteLegSchema,rn as RouteLegWithoutAddressesSchema,nn as RouteQuoteMetadataAssetSchema,an as RouteQuoteMetadataSchema,sn as RouteQuoteMetadataV2Schema,Tn as RouteQuoteProviderErrorSchema,lr as RouteQuoteTxType,un as RouteQuoteWarningSchema,Ee as SINGLE_WALLET_CHAINS,x as SKConfig,Lt as SigningCapability,Xr as StarknetTransactionSchema,gn as StellarApprovalTransactionSchema,wn as SwapApprovalTransactionSchema,Sn as SwapKitApi,m as SwapKitError,f as SwapKitNumber,xn as SwapRouteV2ResponseSchema,yn as SwapToAssetSchema,vn as SwapToRequestSchema,En as SwapToResponseSchema,qr as TONTransactionMessageSchema,Gr as TONTransactionSchema,Ar as TokenDetailsMetadataSchema,Pr as TokenSchema,Or as TrackerResponseSchema,yr as TrackingRequestQuerySchema,vr as TrackingRequestSchema,wr as TrackingStatus,Ir as TransactionDTOSchema,kr as TransactionSchema,Hr as TronTransactionSchema,gr as TxnStatus,hr as TxnType,h as UTXOPurpose,_ as UTXOScriptType,j as UTXO_SCRIPT_TYPES,z as UTXO_SCRIPT_TYPE_LIST,c as WalletOption,$t as WarningCodeEnum,jt as _rpcCache,st as addAccountsChangedCallback,pe as addEVMWalletNetwork,fe as applyFeeMultiplier,he as applyFeeMultiplierToBigInt,nr as assetFromString,Qt as decodeABIDynamicString,Jt as decodeABIString,Y as derivationPathToString,Zt as fetchTokenInfo,it as filterSupportedChains,ar as findAssetBy,sr as formatBigIntToSafeValue,rr as getAssetType,ee as getAsymmetricAssetShare,Me as getAsymmetricAssetWithdrawAmount,Z as getAsymmetricRuneShare,Ce as getAsymmetricRuneWithdrawAmount,Gt as getChainIdentifier,tr as getCommonAssetInfo,be as getDerivationPathFor,ct as getEIP6963Wallets,ut as getETHDefaultWallet,$e as getEstimatedPoolShare,qt as getExplorerAddressUrl,Xt as getExplorerTxUrl,S as getFeeMultiplier,U as getFeeMultiplierAsBigInt,Re as getLiquiditySlippage,Ge as getMAYANameCost,Ue as getMemoForDeposit,Fe as getMemoForLeaveAndBond,ze as getMemoForNamePreferredAssetRegister,je as getMemoForNameRegister,Be as getMemoForRunePoolDeposit,He as getMemoForRunePoolWithdraw,Ve as getMemoForTcyClaim,Xe as getMemoForTcyStake,Le as getMemoForUnbond,Ke as getMemoForWithdraw,dr as getMinAmountByChain,X as getPurposeFromPath,Vt as getRPCUrl,zt as getRPCUrlSync,te as getSymmetricPoolShare,We as getSymmetricWithdraw,qe as getTHORNameCost,ir as getTokenLogoURI,ye as getUTXOScriptTypeForPath,V as getUTXOScriptTypeForPurpose,Te as getWalletFormatFor,nt as isDetected,er as isGasAsset,Lr as isTransactionValue,M as isUserRejectedRequest,rt as isWeb3Detected,ie as listWeb3EVMWallets,de as okxMobileEnabled,or as parseSymbolForAddress,Br as parseTransactionValue,at as prepareNetworkSwitch,D as providerRequest,kt as registerErrorCodes,Nt as registerWalletOption,G as resolveDerivationPath,Kt as signWidgetRequest,It as subscribeWalletOptionRegistration,Bt as swapKitConfigStore,se as switchEVMWalletNetwork,Ur as toHexTransactionValue,g as updateDerivationPath,cr as validateIdentifier,Ye as validateTNS,ot as walletSupportsDirectSigning,W as warnOnce,ue as wrapMethodWithNetworkSwitch,Ht as wrapWithThrow};
1
+ import{$ as Er,$a as bn,A as Gt,Aa as qr,B as Yt,Ba as Gr,C as Jt,Ca as Yr,D as Qt,Da as Jr,E as Zt,Ea as Qr,F as er,Fa as Zr,G as tr,Ga as en,H as rr,Ha as tn,I as nr,Ia as rn,J as or,Ja as nn,K as ir,Ka as on,L as ar,La as an,M as sr,Ma as sn,N as ur,Na as un,O as cr,Oa as cn,P as pr,Pa as pn,Q as dr,Qa as dn,R as f,Ra as mn,S as mr,Sa as ln,T as lr,Ta as hn,U as hr,Ua as fn,V as fr,Va as gn,W as gr,Wa as wn,X as wr,Xa as Pn,Y as Pr,Ya as vn,Z as vr,Za as yn,_ as yr,_a as En,a as v,aa as br,ab as Tn,b as Wt,ba as Tr,bb as An,c as $t,ca as Ar,cb as xn,d as Rt,da as xr,db as Sn,e as Dt,ea as Sr,eb as _n,f as L,fa as _r,fb as Cn,g as Ot,ga as Cr,gb as Mn,h as re,ha as Mr,hb as Wn,i as m,ia as Wr,ib as $n,j as kt,ja as $r,jb as Rn,k as c,ka as Rr,kb as Dn,l as It,la as Dr,lb as On,m as Nt,ma as Or,mb as kn,n as Ft,na as kr,nb as In,o as Lt,oa as Ir,ob as Nn,p as Bt,pa as Nr,pb as Fn,q as x,qa as Fr,qb as Ln,r as Ut,ra as Lr,rb as Bn,s as Kt,sa as Br,sb as Un,t as Ht,ta as Ur,tb as Kn,u as W,ua as Kr,ub as Hn,v as jt,va as Hr,vb as jn,w as zt,wa as jr,wb as zn,x as Vt,xa as zr,xb as Vn,y as Xt,ya as Vr,z as qt,za as Xr}from"./chunk-8jaj909z.js";export*from"@swapkit/tokens";export*from"@swapkit/types";var B={average:1,fast:1.5,fastest:2};function S(e="average"){let t=x.get("feeMultipliers");if(t&&t[e]!==void 0)return t[e];return B[e]}function U(e="average"){let t=S(e),r=10n,n=BigInt(Math.round(t*10));return{denominator:r,numerator:n}}function he(e,t="average"){let{numerator:r,denominator:n}=U(t);return e*r/n}function fe(e,t="average",r=!1){let n=S(t),o=e*n;return r?Math.floor(o):o}import{Chain as P,EVMChains as K}from"@swapkit/types";import{match as H}from"ts-pattern";function g(e,t){let r=e.length-1;return e.map((o,i)=>{if(i===r&&t.index!==void 0)return t.index;if(i===0&&t.purpose!==void 0)return t.purpose;if(i===2&&t.account!==void 0)return t.account;if(i===3&&t.change!==void 0)return t.change;return o})}var h={bech32:84,legacy:44,p2sh:49,taproot:86},_;((o)=>{o.P2PKH="P2PKH";o.P2SH_P2WPKH="P2SH_P2WPKH";o.P2WPKH="P2WPKH";o.P2TR="P2TR"})(_||={});var j=Object.freeze({["P2PKH"]:{inputSize:148,outputSize:34,purpose:h.legacy,witness:!1},["P2SH_P2WPKH"]:{inputSize:91,outputSize:32,purpose:h.p2sh,witness:!0},["P2WPKH"]:{inputSize:68,outputSize:31,purpose:h.bech32,witness:!0},["P2TR"]:{inputSize:58,outputSize:43,purpose:h.taproot,witness:!0}}),z=Object.values(_);function V(e){if(e===void 0)return;return z.find((t)=>j[t].purpose===e)}function X(e){if(!e)return;if(typeof e!=="string")return e[0];let t=Number.parseInt(e.replace(/^[mM]'?\//,"").split("/")[0]??"",10);return Number.isNaN(t)?void 0:t}function ye(e){return V(X(e))}var q=Object.freeze([P.Near,P.Stellar,P.Sui]),Ee=Object.freeze([P.Ton]);function G({chain:e,derivationPath:t,index:r=0}){if(t)return t;return g(v[e],q.includes(e)?{account:r}:{index:r})}function Y([e,t,r,n,o],{allHardened:i}={}){let s=i?"'":"",a=typeof o!=="number";if(typeof n!=="number")return`m/${e}'/${t}'/${r}'`;return`m/${e}'/${t}'/${r}'/${n}${s}${a?"":`/${o}${s}`}`}function be({chain:e,index:t,addressIndex:r=0,type:n}){let o=v[e],i=K.includes(e)?"evm":e===P.Solana?"solana":"other";return H([i,n]).with(["evm","legacy"],["evm","account"],()=>[44,60,0,t]).with(["evm","ledgerLive"],()=>[44,60,t,0,r]).with(["evm","nativeSegwitMiddleAccount"],["evm","segwit"],["evm",void 0],()=>g(o,{index:t})).with(["solana","account"],()=>[44,501,0,t]).with(["solana","legacy"],["solana","ledgerLive"],["solana","nativeSegwitMiddleAccount"],["solana","segwit"],["solana",void 0],()=>g(o,{index:t})).with(["other","nativeSegwitMiddleAccount"],()=>g(o,{account:t,index:r,purpose:h.bech32})).with(["other","segwit"],()=>g(o,{account:0,index:t,purpose:h.p2sh})).with(["other","legacy"],()=>g(o,{account:0,index:t,purpose:h.legacy})).with(["other","account"],["other","ledgerLive"],["other",void 0],()=>G({chain:e,index:t})).exhaustive()}function Te(e){let[t,r]=e.split("/").map((n)=>Number.parseInt(n,10));switch(r){case 44:return"legacy";case 49:return"p2sh";default:return"bech32"}}var Ae=Object.freeze(Object.fromEntries(Object.keys(v).map((e)=>[e,Y(v[e])])));import{Chain as J,getChainConfig as Q}from"@swapkit/types";function Z({liquidityUnits:e,poolUnits:t,runeDepth:r}){let n=p(e),o=p(t),i=p(r),s=n.mul(i),a=o.mul(o).mul(2),u=o.mul(n).mul(2),d=n.mul(n),l=o.mul(o).mul(o);return s.mul(a.sub(u).add(d)).div(l)}function ee({liquidityUnits:e,poolUnits:t,assetDepth:r}){let n=p(e),o=p(t),i=p(r),s=n.mul(i),a=o.mul(o).mul(2),u=o.mul(n).mul(2),d=n.mul(n),l=s.mul(a.sub(u).add(d)),w=o.mul(o).mul(o);return l.div(w)}function Ce({percent:e,runeDepth:t,liquidityUnits:r,poolUnits:n}){return Z({liquidityUnits:r,poolUnits:n,runeDepth:t}).mul(e)}function Me({percent:e,assetDepth:t,liquidityUnits:r,poolUnits:n}){return ee({assetDepth:t,liquidityUnits:r,poolUnits:n}).mul(e)}function p(e){return f.fromBigInt(BigInt(e),Q(J.THORChain).baseDecimal)}function te({liquidityUnits:e,poolUnits:t,runeDepth:r,assetDepth:n}){return{assetAmount:p(n).mul(e).div(t),runeAmount:p(r).mul(e).div(t)}}function We({liquidityUnits:e,poolUnits:t,runeDepth:r,assetDepth:n,percent:o}){return Object.fromEntries(Object.entries(te({assetDepth:n,liquidityUnits:e,poolUnits:t,runeDepth:r})).map(([i,s])=>[i,s.mul(o)]))}function $e({runeDepth:e,poolUnits:t,assetDepth:r,liquidityUnits:n,runeAmount:o,assetAmount:i}){let s=new f({decimal:8,value:e}),a=new f({decimal:8,value:r}),u=new f({decimal:8,value:t}),d=new f({decimal:8,value:o}),l=new f({decimal:8,value:i}),w=d.mul(a),T=l.mul(s),O=d.mul(l),k=s.mul(a),I=u.mul(w.add(T.add(O.mul(2)))),N=w.add(T.add(k.mul(2))),A=I.div(N),b=p(n).add(A);if(A.getBaseValue("number")===0)return b.div(u).getBaseValue("number");let F=u.add(b);return b.div(F).getBaseValue("number")}function Re({runeAmount:e,assetAmount:t,runeDepth:r,assetDepth:n}){if(e==="0"||t==="0"||r==="0"||n==="0")return 0;let o=p(r),i=p(n),s=p(t),a=p(e),u=s.mul(o).sub(i.mul(a)),d=i.mul(a).add(o.mul(i));return Math.abs(u.div(d).getBaseValue("number"))}import{Chain as y}from"@swapkit/types";import{match as ne}from"ts-pattern";function Fe({type:e,address:t}){return`${e}:${t}`}function Le({address:e,unbondAmount:t}){return`${"UNBOND"}:${e}:${t}`}function Be(e){return E("POOL+",e)}function Ue({chain:e,symbol:t,address:r,...n}){let o=oe({chain:e,symbol:t}),i=r?`:${r}:`:":";return E(`${"+"}:${o}${i}`,n)}function Ke({chain:e,symbol:t,ticker:r,basisPoints:n,targetAsset:o}){let i=e==="ETH"&&r!=="ETH"?`${r}-${t.slice(-3)}`:t,s=o?`:${o}`:"";return`${"-"}:${e}.${i}:${n}${s}`}function He({basisPoints:e,...t}){return E(`${"POOL-"}:${e}`,t)}function je({name:e,chain:t,address:r,owner:n}){let o=`${"~"}:${e}:${t}:${r}`,i=n?`:${n}`:"";return`${o}${i}`}function ze({name:e,chain:t,asset:r,payout:n,owner:o}){return`${"~"}:${e}:${t}:${n}:${o}:${r}`}function Ve(e,{address:t}){return`${e}:${t}`}function Xe(e,{unstakeBps:t,...r}){let n=t?`:${t}`:"",o=`${e}${n}`;return E(`${o}`,r)}function E(e,{affiliateAddress:t,affiliateBasisPoints:r}={}){let n=`${e}${t?`:${t}:${r||0}`:""}`;return n.endsWith(":")?n.slice(0,-1):n}function oe({chain:e,symbol:t}){return ne(e).with(y.Bitcoin,y.Dogecoin,y.Litecoin,()=>e.slice(0,1).toLowerCase()).with(y.BitcoinCash,()=>"c").otherwise(()=>`${e}.${t}`)}function qe(e){if(e<0)throw new m({errorKey:"helpers_invalid_number_of_years",info:{numberOfYears:e}});return Math.round((10+Math.max(0,e-1)*1.0512)*1e8)/1e8}function Ge(e){if(e<0)throw new m({errorKey:"helpers_invalid_number_of_years",info:{numberOfYears:e}});return Math.round((10+Math.max(0,e-1)*1.0512)*10000000000)/10000000000}function Ye(e){if(e.length>30)return!1;let t=/^[a-zA-Z0-9+_-]+$/g;return!!e.match(t)}import{getChainConfig as R}from"@swapkit/types";function rt(){return typeof window.ethereum<"u"}function nt(e){return ie().includes(e)}function ie(){let e=window?.ethereum&&!window.ethereum?.isBraveWallet,t=window?.vultisig,r=window?.ethereum?.isBraveWallet,n=window?.ethereum?.isTrust||window?.trustwallet,o=window?.ethereum?.overrideIsMetaMask&&window?.ethereum?.selectedProvider?.isCoinbaseWallet||window?.coinbaseWalletExtension,i=window?.bitkeep?.ethereum,s=window?.$onekey?.ethereum,a=[];if(e)a.push(c.METAMASK);if(t)a.push(c.VULTISIG);if(r)a.push(c.BRAVE);if(n)a.push(c.TRUSTWALLET_WEB);if(o)a.push(c.COINBASE_WEB);if(de())a.push(c.OKX_MOBILE);if(i)a.push(c.BITGET);if(s)a.push(c.ONEKEY);return a}var C=new Set([4001,5000,"ACTION_REJECTED"]);function ot(e){return(e?.signing?.direct??e?.supportsDirectSigning)===!0}function M(e){if(!e||typeof e!=="object")return!1;let{code:t,error:r,info:n,data:o}=e;if(C.has(t))return!0;return[r,n?.error,o?.originalError].some((i)=>!!i&&typeof i==="object"&&C.has(i.code))}async function ae(e,t){if(!t)return!1;try{let{chainId:r}=await e.getNetwork();return BigInt(r)===BigInt(t)}catch{return!1}}async function se(e,t,r){let n=R(t);try{await D({method:"wallet_switchEthereumChain",params:[{chainId:n.chainIdHex}],provider:e})}catch(o){if(M(o))throw new m("helpers_failed_to_switch_network",{chain:t,error:o,reason:"user rejected request"});if(!r)throw new m("helpers_failed_to_switch_network",{chain:t,error:o,reason:"networkParams not provided"});try{await pe(e,r)}catch(i){throw new m("helpers_failed_to_switch_network",{chain:t,error:i,reason:M(i)?"user rejected adding the network":"failed to add the network"})}}}function it({chains:e,supportedChains:t,walletType:r}){let n=e.filter((i)=>!i||t.includes(i));if(n.length===0)throw new m("wallet_chain_not_supported",{chain:e.join(", "),wallet:r});let o=e.filter((i)=>!t.includes(i));return W({condition:o.length>0,id:`wallet_chain_not_supported_${r}`,warning:`${r} wallet does not support the following chains: ${o.join(", ")}. These chains will be ignored.`}),n}function ue(e,t,r,n){return async(...o)=>{let{chainIdHex:i}=R(r);if(await ae(t,i))return e(...o);try{await se(t,r,n)}catch(s){if(s instanceof m)throw s;throw new m({errorKey:"helpers_failed_to_switch_network",info:{chain:r,error:s}})}return e(...o)}}function at({toolbox:e,chain:t,provider:r,methodNames:n=[],networkParams:o=ce(e)}){let s=[...n,"approve","approvedAmount","call","sendTransaction","transfer","isApproved","approvedAmount","EIP1193SendTransaction","getFeeData","broadcastTransaction","estimateCall","estimateGasLimit","estimateGasPrices","createContractTxObject","signTypedData"].reduce((a,u)=>{if(!e[u])return a;let d=e[u];if(typeof d!=="function")return a;let l=ue(d,r,t,o);return{...a,[u]:l}},{});return{...e,...s}}function ce(e){let t=e.getNetworkParams;if(typeof t!=="function")return;try{let r=t();return r&&typeof r==="object"&&"chainId"in r?r:void 0}catch{return}}function pe(e,t){return D({method:"wallet_addEthereumChain",params:[t],provider:e})}function st(e){window.ethereum?.on("accountsChanged",()=>e())}function ut(){let{isTrust:e,isBraveWallet:t,overrideIsMetaMask:r,selectedProvider:n}=window?.ethereum||{};if(e)return c.TRUSTWALLET_WEB;if(t)return c.BRAVE;if(r&&n?.isCoinbaseWallet)return c.COINBASE_WEB;if(window?.$onekey?.ethereum)return c.ONEKEY;return c.METAMASK}function ct(){let e=[];function t(n){if(e.map((o)=>o.info.uuid).includes(n.detail.info.uuid))return;e.push(n.detail)}window.addEventListener("eip6963:announceProvider",t),window.dispatchEvent(new Event("eip6963:requestProvider"));function r(){window.removeEventListener("eip6963:announceProvider",t)}return{providers:e,removeEIP6963EventListener:r}}function de(){let e=navigator.userAgent,t=/iphone|ipad|ipod|ios/i.test(e),r=/android|XiaoMi|MiuiBrowser/i.test(e),n=t||r,o=/OKApp/i.test(e);return n&&o}function D({provider:e,params:t,method:r}){if(!e?.send)throw new m("helpers_not_found_provider");let n=t?Array.isArray(t)?t:[t]:[];return e.send(r,n)}export{q as ACCOUNT_INDEXED_CHAINS,Er as ApiV2ErrorSchema,fn as ApprovalTransactionSchema,Ot as ApproveMode,ln as ApproveRequestParams,hn as ApproveResponseSchema,pr as AssetValue,br as AssetValueSchema,ur as BigIntArithmetics,Mr as BrokerDepositChannelParamsSchema,on as ChainflipMetadataSchema,Tr as CoinGeckoMetadataSchema,Yt as CommonAssetStrings,Vr as CosmosTransactionSchema,B as DEFAULT_FEE_MULTIPLIERS,Cr as DepositChannelParamsSchema,Wr as DepositChannelResponseSchema,Ae as DerivationPath,jr as EVMTransactionDetailsParamsSchema,zr as EVMTransactionDetailsSchema,Kr as EVMTransactionSchema,Wt as ErrorCode,Fr as EstimatedTimeSchema,L as FeeOption,Dt as FeeTypeEnum,Nr as FeesSchema,mn as GasResponseSchema,dn as GasSchema,Yr as HYPERCORE_USDC_TOKEN_ID,Jr as HyperCoreEip712TypedDataSchema,Qr as HyperCoreSendAssetActionSchema,en as HyperCoreSendAssetTransactionSchema,Zr as HyperCoreTypedDataTransactionSchema,Ft as LedgerErrorCode,In as LimitOrderApprovalTxSchema,Rn as LimitOrderBuildRequestSchema,Nn as LimitOrderBuildResponseSchema,jn as LimitOrderCancelBuildResponseSchema,zn as LimitOrderCancelSubmitResponseSchema,Hn as LimitOrderCancelTxSchema,Kn as LimitOrderCancelTypedDataSchema,On as LimitOrderEVMTransactionSchema,Un as LimitOrderListResponseSchema,Mn as LimitOrderQuoteRequestSchema,$n as LimitOrderQuoteResponseSchema,Wn as LimitOrderQuoteRouteSchema,Bn as LimitOrderSchema,Sn as LimitOrderStatus,Fn as LimitOrderSubmitResponseSchema,Cn as LimitOrderTokensResponseSchema,Ln as LimitOrderTxHashSchema,kn as LimitOrderTxMetaSchema,_n as LimitOrderTxType,Dn as LimitOrderTypedDataSchema,re as MemoType,$r as NearDepositChannelParamsSchema,Rr as NearDepositChannelResultSchema,Dr as NearSwapResponseSchema,v as NetworkDerivationPath,_r as PriceRequestSchema,xr as PriceResponseSchema,mr as PriorityLabel,fr as ProviderAction,Rt as ProviderName,Sr as QuoteRequestSchema,cn as QuoteResponseRouteItem,pn as QuoteResponseSchema,bn as QuoteRouteV2Response,An as QuoteV2ResponseSchema,Pn as QuoteV3ResponseSchema,Ut as RequestClient,tn as RouteLegSchema,rn as RouteLegWithoutAddressesSchema,nn as RouteQuoteMetadataAssetSchema,an as RouteQuoteMetadataSchema,sn as RouteQuoteMetadataV2Schema,Tn as RouteQuoteProviderErrorSchema,lr as RouteQuoteTxType,un as RouteQuoteWarningSchema,Ee as SINGLE_WALLET_CHAINS,x as SKConfig,Lt as SigningCapability,Xr as StarknetTransactionSchema,gn as StellarApprovalTransactionSchema,wn as SwapApprovalTransactionSchema,Vn as SwapKitApi,m as SwapKitError,f as SwapKitNumber,xn as SwapRouteV2ResponseSchema,yn as SwapToAssetSchema,vn as SwapToRequestSchema,En as SwapToResponseSchema,qr as TONTransactionMessageSchema,Gr as TONTransactionSchema,Ar as TokenDetailsMetadataSchema,Pr as TokenSchema,Or as TrackerResponseSchema,yr as TrackingRequestQuerySchema,vr as TrackingRequestSchema,wr as TrackingStatus,Ir as TransactionDTOSchema,kr as TransactionSchema,Hr as TronTransactionSchema,gr as TxnStatus,hr as TxnType,h as UTXOPurpose,_ as UTXOScriptType,j as UTXO_SCRIPT_TYPES,z as UTXO_SCRIPT_TYPE_LIST,c as WalletOption,$t as WarningCodeEnum,jt as _rpcCache,st as addAccountsChangedCallback,pe as addEVMWalletNetwork,fe as applyFeeMultiplier,he as applyFeeMultiplierToBigInt,nr as assetFromString,Qt as decodeABIDynamicString,Jt as decodeABIString,Y as derivationPathToString,Zt as fetchTokenInfo,it as filterSupportedChains,ar as findAssetBy,sr as formatBigIntToSafeValue,rr as getAssetType,ee as getAsymmetricAssetShare,Me as getAsymmetricAssetWithdrawAmount,Z as getAsymmetricRuneShare,Ce as getAsymmetricRuneWithdrawAmount,Gt as getChainIdentifier,tr as getCommonAssetInfo,be as getDerivationPathFor,ct as getEIP6963Wallets,ut as getETHDefaultWallet,$e as getEstimatedPoolShare,qt as getExplorerAddressUrl,Xt as getExplorerTxUrl,S as getFeeMultiplier,U as getFeeMultiplierAsBigInt,Re as getLiquiditySlippage,Ge as getMAYANameCost,Ue as getMemoForDeposit,Fe as getMemoForLeaveAndBond,ze as getMemoForNamePreferredAssetRegister,je as getMemoForNameRegister,Be as getMemoForRunePoolDeposit,He as getMemoForRunePoolWithdraw,Ve as getMemoForTcyClaim,Xe as getMemoForTcyStake,Le as getMemoForUnbond,Ke as getMemoForWithdraw,dr as getMinAmountByChain,X as getPurposeFromPath,Vt as getRPCUrl,zt as getRPCUrlSync,te as getSymmetricPoolShare,We as getSymmetricWithdraw,qe as getTHORNameCost,ir as getTokenLogoURI,ye as getUTXOScriptTypeForPath,V as getUTXOScriptTypeForPurpose,Te as getWalletFormatFor,nt as isDetected,er as isGasAsset,Lr as isTransactionValue,M as isUserRejectedRequest,rt as isWeb3Detected,ie as listWeb3EVMWallets,de as okxMobileEnabled,or as parseSymbolForAddress,Br as parseTransactionValue,at as prepareNetworkSwitch,D as providerRequest,kt as registerErrorCodes,Nt as registerWalletOption,G as resolveDerivationPath,Kt as signWidgetRequest,It as subscribeWalletOptionRegistration,Bt as swapKitConfigStore,se as switchEVMWalletNetwork,Ur as toHexTransactionValue,g as updateDerivationPath,cr as validateIdentifier,Ye as validateTNS,ot as walletSupportsDirectSigning,W as warnOnce,ue as wrapMethodWithNetworkSwitch,Ht as wrapWithThrow};