@0xsquid/react-hooks 8.7.2-beta-fav-chains.0 → 8.7.2-beta-interactive-to-amount.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/dist/core/queries/queries-keys.d.ts +1 -1
  2. package/dist/core/types/config.d.ts +2 -1
  3. package/dist/core/types/event.d.ts +1 -2
  4. package/dist/hooks/index.d.ts +0 -1
  5. package/dist/hooks/store/useSquidStore.d.ts +2 -1
  6. package/dist/hooks/swap/useSwap.d.ts +4 -2
  7. package/dist/hooks/transaction/useGetRoute.d.ts +9 -8
  8. package/dist/{index-DYs5b-an.js → index-BhIaRT6b.js} +97 -60
  9. package/dist/index-BhIaRT6b.js.map +1 -0
  10. package/dist/{index-0fyTkU8o.js → index-cWo0aVvt.js} +99 -60
  11. package/dist/index-cWo0aVvt.js.map +1 -0
  12. package/dist/{index.es-Bxk-BRsk.js → index.es-DDv7Krv1.js} +2 -2
  13. package/dist/{index.es-Bxk-BRsk.js.map → index.es-DDv7Krv1.js.map} +1 -1
  14. package/dist/{index.es-X0Xkh3ET.js → index.es-DjscAACC.js} +2 -2
  15. package/dist/{index.es-X0Xkh3ET.js.map → index.es-DjscAACC.js.map} +1 -1
  16. package/dist/index.esm.js +1 -1
  17. package/dist/index.js +4 -2
  18. package/dist/index.js.map +1 -1
  19. package/dist/{secretService-BExN6uOo.js → secretService-XZVHxElk.js} +2 -2
  20. package/dist/{secretService-BExN6uOo.js.map → secretService-XZVHxElk.js.map} +1 -1
  21. package/dist/{secretService-CJJobQlZ.js → secretService-cYEbiXXP.js} +2 -2
  22. package/dist/{secretService-CJJobQlZ.js.map → secretService-cYEbiXXP.js.map} +1 -1
  23. package/dist/services/internal/errorService.d.ts +9 -0
  24. package/dist/services/internal/eventService.d.ts +1 -2
  25. package/dist/services/internal/numberService.d.ts +1 -0
  26. package/dist/{stellarService.client-eIqTLitu.js → stellarService.client-B5B1XaV_.js} +2 -2
  27. package/dist/{stellarService.client-eIqTLitu.js.map → stellarService.client-B5B1XaV_.js.map} +1 -1
  28. package/dist/{stellarService.client-yODv6HFL.js → stellarService.client-CBqIkpcb.js} +2 -2
  29. package/dist/{stellarService.client-yODv6HFL.js.map → stellarService.client-CBqIkpcb.js.map} +1 -1
  30. package/package.json +3 -3
  31. package/dist/core/types/route.d.ts +0 -4
  32. package/dist/hooks/store/useFavoriteChainsStore.d.ts +0 -20
  33. package/dist/index-0fyTkU8o.js.map +0 -1
  34. package/dist/index-DYs5b-an.js.map +0 -1
@@ -56,7 +56,7 @@ export declare const keys: () => {
56
56
  tokenData: (token?: TokenWithBalance) => (string | undefined)[];
57
57
  balance: (chainId?: number | string, tokenAddress?: string, userAddress?: string) => (string | number | undefined)[];
58
58
  allTokensBalance: (address: string | undefined, chainType: ChainType | undefined, direction?: SwapDirection) => (string | undefined)[];
59
- transaction: (fromChainId: string | undefined, toChainId: string | undefined, toTokenAddress: string | undefined, fromTokenAddress: string | undefined, price: string | undefined, slippage: SlippageOption | undefined, sourceUserAddress: string | undefined, degenMode: boolean | undefined, destinationAddress: string | undefined, fallbackAddress: string | undefined, quoteOnly: boolean | undefined, fromChainType: ChainType | undefined, preHook: AppConfig["preHook"] | undefined, postHook: AppConfig["postHook"] | undefined, overrideGasRefundAddress: AppConfig["overrideGasRefundAddress"] | undefined) => (string | number | boolean | Omit<import("@0xsquid/squid-types").Hook, "fundAmount" | "fundToken"> | undefined)[];
59
+ transaction: (fromChainId: string | undefined, toChainId: string | undefined, toTokenAddress: string | undefined, fromTokenAddress: string | undefined, fromAmount: string | undefined, toAmount: string | undefined, slippage: SlippageOption | undefined, sourceUserAddress: string | undefined, degenMode: boolean | undefined, destinationAddress: string | undefined, fallbackAddress: string | undefined, quoteOnly: boolean | undefined, fromChainType: ChainType | undefined, preHook: AppConfig["preHook"] | undefined, postHook: AppConfig["postHook"] | undefined, overrideGasRefundAddress: AppConfig["overrideGasRefundAddress"] | undefined, prefer: AppConfig["prefer"] | undefined) => (string | number | boolean | string[] | Omit<import("@0xsquid/squid-types").Hook, "fundAmount" | "fundToken"> | undefined)[];
60
60
  swapTransactionStatus: (transactionId: string | undefined) => (string | undefined)[];
61
61
  fiatToCryptoStatus: (transactionId?: string) => (string | undefined)[];
62
62
  sendTransactionStatus: (txHash: string | undefined, chainId: string | undefined) => (string | undefined)[];
@@ -1,4 +1,4 @@
1
- import { RouteRequest } from "./route";
1
+ import { RouteRequest } from "@0xsquid/squid-types";
2
2
  export type SlippageOption = RouteRequest["slippage"];
3
3
  export type TokenConfig = {
4
4
  address: string;
@@ -72,4 +72,5 @@ export interface AppConfig {
72
72
  * Override the default gas refund address in Axelar routes
73
73
  */
74
74
  overrideGasRefundAddress?: RouteRequest["overrideGasRefundAddress"];
75
+ prefer?: string[];
75
76
  }
@@ -1,7 +1,6 @@
1
- import type { RouteResponse } from "@0xsquid/squid-types";
1
+ import type { RouteRequest, RouteResponse } from "@0xsquid/squid-types";
2
2
  import { TransactionErrorWithMessage } from "./error";
3
3
  import { ExecuteQuoteServer } from "./onramps";
4
- import { RouteRequest } from "./route";
5
4
  type BaseSwapEventParams = Pick<RouteRequest, "fromAddress" | "toAddress" | "fromChain" | "toChain" | "fromToken" | "toToken" | "fromAmount">;
6
5
  type BaseSendTransactionEventParams = {
7
6
  fromAddress: string;
@@ -12,7 +12,6 @@ export { useStellarAccountActivation } from "./stellar/useStellarAccountActivati
12
12
  export { useStellarTrustLine } from "./stellar/useStellarTrustLine";
13
13
  export { useAddressBookStore } from "./store/useAddressBookStore";
14
14
  export { useAssetsColorsStore } from "./store/useAssetsColorsStore";
15
- export { useFavoriteChainsStore, type FavoriteChain, } from "./store/useFavoriteChainsStore";
16
15
  export { useFavoriteTokensStore, type FavoriteToken, } from "./store/useFavoriteTokensStore";
17
16
  export { useHistoryStore } from "./store/useHistoryStore";
18
17
  export { useSendTransactionStore } from "./store/useSendTransactionStore";
@@ -21,7 +21,8 @@ export interface ConfigState {
21
21
  }
22
22
  export declare const useConfigStore: import("zustand").UseBoundStore<import("zustand").StoreApi<ConfigState>>;
23
23
  interface TransactionState {
24
- fromPrice?: string;
24
+ fromAmount?: string;
25
+ toAmount?: string;
25
26
  txLocalId?: string;
26
27
  transactions: Record<string, TransactionParams>;
27
28
  currentTransaction?: TransactionParams;
@@ -7,8 +7,10 @@ export declare const useSwap: () => {
7
7
  };
8
8
  onSwapChange: (inputSwapParams: SwapParams) => SwapParams;
9
9
  invertSwaps: (() => SwapParams) | undefined;
10
- fromPrice: string | undefined;
11
- fromPriceChanged: (price: string) => void;
10
+ fromAmount: string | undefined;
11
+ toAmount: string | undefined;
12
+ fromAmountChanged: (amount: string) => void;
13
+ toAmountChanged: (amount: string) => void;
12
14
  toToken: import("../../core").Token | undefined;
13
15
  fromToken: import("../../core").Token | undefined;
14
16
  fromChain: import("@0xsquid/squid-types").ChainData | undefined;
@@ -1,12 +1,11 @@
1
1
  import { RouteResponse } from "@0xsquid/sdk/dist/types";
2
- import { ChainType, Token } from "@0xsquid/squid-types";
2
+ import { ChainType, RouteRequest, Token } from "@0xsquid/squid-types";
3
3
  import { QueryObserverOptions } from "@tanstack/react-query";
4
4
  import type { AppConfig } from "../../core/types/config";
5
- import { RouteRequest } from "../../core/types/route";
6
5
  export declare const useGetRoute: () => import("@tanstack/react-query").UseMutationResult<{
7
6
  estimate: import("@0xsquid/squid-types").Estimate;
8
7
  transactionRequest?: import("@0xsquid/squid-types").SquidData | undefined;
9
- params: import("@0xsquid/squid-types").RouteRequest;
8
+ params: RouteRequest;
10
9
  quoteId: string;
11
10
  } | undefined, unknown, {
12
11
  fromChain: RouteRequest["fromChain"] | undefined;
@@ -16,27 +15,29 @@ export declare const useGetRoute: () => import("@tanstack/react-query").UseMutat
16
15
  sourceUserAddress: string | undefined;
17
16
  destinationAddress: string | undefined;
18
17
  fromPrice: string | undefined;
18
+ toPrice: string | undefined;
19
19
  bypassGuardrails: RouteRequest["bypassGuardrails"] | undefined;
20
20
  quoteOnly: boolean | undefined;
21
21
  fromChainType: ChainType | undefined;
22
22
  preHook: AppConfig["preHook"];
23
23
  postHook: AppConfig["postHook"];
24
24
  overrideGasRefundAddress: AppConfig["overrideGasRefundAddress"];
25
+ prefer: AppConfig["prefer"];
25
26
  }, unknown>;
26
27
  export declare const useGetRouteWrapper: ({ enabled, cacheTime, staleTime, refetchOnWindowFocus, refetchIntervalInBackground, refetchInterval, quoteOnly, }: Pick<QueryObserverOptions<{
27
28
  estimate: import("@0xsquid/squid-types").Estimate;
28
29
  transactionRequest?: import("@0xsquid/squid-types").SquidData | undefined;
29
- params: import("@0xsquid/squid-types").RouteRequest;
30
+ params: RouteRequest;
30
31
  quoteId: string;
31
32
  } | undefined, unknown, {
32
33
  estimate: import("@0xsquid/squid-types").Estimate;
33
34
  transactionRequest?: import("@0xsquid/squid-types").SquidData | undefined;
34
- params: import("@0xsquid/squid-types").RouteRequest;
35
+ params: RouteRequest;
35
36
  quoteId: string;
36
37
  } | undefined, {
37
38
  estimate: import("@0xsquid/squid-types").Estimate;
38
39
  transactionRequest?: import("@0xsquid/squid-types").SquidData | undefined;
39
- params: import("@0xsquid/squid-types").RouteRequest;
40
+ params: RouteRequest;
40
41
  quoteId: string;
41
42
  } | undefined, import("@tanstack/react-query").QueryKey>, "cacheTime" | "enabled" | "staleTime" | "refetchInterval" | "refetchIntervalInBackground" | "refetchOnWindowFocus"> & {
42
43
  quoteOnly?: boolean | undefined;
@@ -44,7 +45,7 @@ export declare const useGetRouteWrapper: ({ enabled, cacheTime, staleTime, refet
44
45
  squidRoute: import("@tanstack/react-query").UseQueryResult<{
45
46
  estimate: import("@0xsquid/squid-types").Estimate;
46
47
  transactionRequest?: import("@0xsquid/squid-types").SquidData | undefined;
47
- params: import("@0xsquid/squid-types").RouteRequest;
48
+ params: RouteRequest;
48
49
  quoteId: string;
49
50
  } | undefined, unknown>;
50
51
  showLoading: boolean;
@@ -52,7 +53,7 @@ export declare const useGetRouteWrapper: ({ enabled, cacheTime, staleTime, refet
52
53
  routeData: {
53
54
  estimate: import("@0xsquid/squid-types").Estimate;
54
55
  transactionRequest?: import("@0xsquid/squid-types").SquidData | undefined;
55
- params: import("@0xsquid/squid-types").RouteRequest;
56
+ params: RouteRequest;
56
57
  quoteId: string;
57
58
  } | undefined;
58
59
  };
@@ -3950,6 +3950,9 @@ const getNumericValue = ({ value, precision, useComaEvery3Digits = true, hideIfZ
3950
3950
  const finalValue = `${isNegative ? "-" : ""}${prefix}${formattedIfVerySmall}${suffix ? ` ${suffix}` : ""}`;
3951
3951
  return wrapInParens ? `(${finalValue})` : finalValue;
3952
3952
  };
3953
+ function isZeroAmount(amount) {
3954
+ return !amount || amount === "0";
3955
+ }
3953
3956
 
3954
3957
  /**
3955
3958
  * Creates a hash string from quote request parameters to track changes
@@ -4401,6 +4404,35 @@ const isSwapRouteError = (error) => {
4401
4404
  const isStatusError = (error) => {
4402
4405
  return error && typeof error.errorType === "string";
4403
4406
  };
4407
+ // --------------------
4408
+ // SQUID ROUTE ERROR MESSAGES
4409
+ // --------------------
4410
+ const GENERIC_ROUTE_ERROR_MESSAGE = "Oops! something went wrong. Try again later";
4411
+ const squidRouteErrorMapping = {
4412
+ Unknown: GENERIC_ROUTE_ERROR_MESSAGE,
4413
+ UnknownError: GENERIC_ROUTE_ERROR_MESSAGE,
4414
+ SquidServiceError: GENERIC_ROUTE_ERROR_MESSAGE,
4415
+ BAD_REQUEST: GENERIC_ROUTE_ERROR_MESSAGE,
4416
+ };
4417
+ /**
4418
+ * Extract a human-readable message from a Squid route error.
4419
+ *
4420
+ * Accepts either a raw `SquidRouteError` or an axios-shaped error with the
4421
+ * route error nested in `response.data`, so callers don't have to unwrap.
4422
+ * Falls back to a generic message when no usable string is available.
4423
+ */
4424
+ const getSquidRouteErrorMessage = (error) => {
4425
+ const candidate = (error?.response?.data ?? error);
4426
+ if (typeof candidate?.message === "string" && candidate.message.length > 0) {
4427
+ return candidate.message;
4428
+ }
4429
+ if (typeof candidate?.type === "string") {
4430
+ const mapped = squidRouteErrorMapping[candidate.type];
4431
+ if (mapped)
4432
+ return mapped;
4433
+ }
4434
+ return GENERIC_ROUTE_ERROR_MESSAGE;
4435
+ };
4404
4436
 
4405
4437
  // Xion has a way to create smart contract accounts (with social logins) these are 63 characters long
4406
4438
  // And the particularity is that we can't derive the osmosis fallback address from these because they don't have a way to access funds in other networks
@@ -22392,14 +22424,15 @@ const keys = () => ({
22392
22424
  // ============
22393
22425
  // Transactions
22394
22426
  // ============
22395
- transaction: (fromChainId, toChainId, toTokenAddress, fromTokenAddress, price, slippage, sourceUserAddress, degenMode, destinationAddress, fallbackAddress, quoteOnly, fromChainType, preHook, postHook, overrideGasRefundAddress) => [
22427
+ transaction: (fromChainId, toChainId, toTokenAddress, fromTokenAddress, fromAmount, toAmount, slippage, sourceUserAddress, degenMode, destinationAddress, fallbackAddress, quoteOnly, fromChainType, preHook, postHook, overrideGasRefundAddress, prefer) => [
22396
22428
  ...keys().transactions(),
22397
22429
  QueryKeys.Transaction,
22398
22430
  fromChainId,
22399
22431
  toChainId,
22400
22432
  toTokenAddress,
22401
22433
  fromTokenAddress,
22402
- price,
22434
+ fromAmount,
22435
+ toAmount,
22403
22436
  slippage,
22404
22437
  sourceUserAddress,
22405
22438
  degenMode,
@@ -22410,6 +22443,7 @@ const keys = () => ({
22410
22443
  preHook,
22411
22444
  postHook,
22412
22445
  overrideGasRefundAddress,
22446
+ prefer,
22413
22447
  ],
22414
22448
  swapTransactionStatus: (transactionId) => [
22415
22449
  ...keys().transactions(),
@@ -22601,6 +22635,7 @@ const getConfigWithDefaults = (config) => {
22601
22635
  preHook: get$2(config, "preHook", defaultConfigValues.preHook),
22602
22636
  postHook: get$2(config, "postHook", defaultConfigValues.postHook),
22603
22637
  overrideGasRefundAddress: get$2(config, "overrideGasRefundAddress", defaultConfigValues.overrideGasRefundAddress),
22638
+ prefer: get$2(config, "prefer", defaultConfigValues.prefer),
22604
22639
  };
22605
22640
  };
22606
22641
  const randomIntFromInterval = (min, max) => {
@@ -23294,7 +23329,7 @@ const filterViewableTokens = (tokens, config, direction) => {
23294
23329
  };
23295
23330
  const getSecretNetworkBalances = async (chainData, cosmosAddress, squidTokens, keplrTypeWallet) => {
23296
23331
  const squidSecretTokens = squidTokens.filter((t) => t.chainId === CHAIN_IDS.SECRET);
23297
- const { fetchAllSecretBalances } = await import('./secretService-CJJobQlZ.js');
23332
+ const { fetchAllSecretBalances } = await import('./secretService-cYEbiXXP.js');
23298
23333
  return fetchAllSecretBalances(chainData, cosmosAddress, squidSecretTokens, keplrTypeWallet);
23299
23334
  };
23300
23335
  function getTokenAssetsKey(token) {
@@ -25151,10 +25186,7 @@ const useConfigStore = create(() => ({
25151
25186
  isInitialized: false,
25152
25187
  }));
25153
25188
  const useTransactionStore = create((set, get) => ({
25154
- fromPrice: undefined,
25155
- txLocalId: undefined,
25156
25189
  transactions: {},
25157
- currentTransaction: undefined,
25158
25190
  setTransactionState(txId, tx) {
25159
25191
  if (!txId)
25160
25192
  return;
@@ -26692,7 +26724,7 @@ function useStellarWallets() {
26692
26724
  try {
26693
26725
  const { allowAllModules: initializeAllModules } = await import('@creit.tech/stellar-wallets-kit');
26694
26726
  const { LedgerModule } = await import('@creit.tech/stellar-wallets-kit/modules/ledger.module.mjs');
26695
- const { formatStellarWallet } = await import('./stellarService.client-eIqTLitu.js');
26727
+ const { formatStellarWallet } = await import('./stellarService.client-B5B1XaV_.js');
26696
26728
  const modules = [...initializeAllModules(), new LedgerModule()];
26697
26729
  const promises = modules.map(async (module) => {
26698
26730
  const isAvailable = await module.isAvailable();
@@ -27591,7 +27623,8 @@ const useMultiChainWallet = (chain) => {
27591
27623
 
27592
27624
  const useSwap = () => {
27593
27625
  const { initialAssets, defaultTokensPerChain, disabledChains, availableChains, } = useConfigStore((state) => state.config);
27594
- const fromPrice = useTransactionStore((state) => state.fromPrice);
27626
+ const fromAmount = useTransactionStore((state) => state.fromAmount);
27627
+ const toAmount = useTransactionStore((state) => state.toAmount);
27595
27628
  const { swapRoute } = useSwapRoutePersistStore();
27596
27629
  const { tokens } = useSquidTokens();
27597
27630
  const queryClient = useQueryClient();
@@ -27643,8 +27676,17 @@ const useSwap = () => {
27643
27676
  }),
27644
27677
  };
27645
27678
  }, [destAddressData, destAddressEnsData.data, toChain?.chainType]);
27646
- const fromPriceChanged = useCallback((price) => {
27647
- useTransactionStore.setState({ fromPrice: price || undefined });
27679
+ const fromAmountChanged = useCallback((amount) => {
27680
+ useTransactionStore.setState({
27681
+ fromAmount: amount || undefined,
27682
+ toAmount: undefined,
27683
+ });
27684
+ }, []);
27685
+ const toAmountChanged = useCallback((amount) => {
27686
+ useTransactionStore.setState({
27687
+ toAmount: amount || undefined,
27688
+ fromAmount: undefined,
27689
+ });
27648
27690
  }, []);
27649
27691
  /**
27650
27692
  * When user changes something from the SwapView
@@ -27804,8 +27846,10 @@ const useSwap = () => {
27804
27846
  tokenItems,
27805
27847
  onSwapChange,
27806
27848
  invertSwaps,
27807
- fromPrice,
27808
- fromPriceChanged,
27849
+ fromAmount,
27850
+ toAmount,
27851
+ fromAmountChanged,
27852
+ toAmountChanged,
27809
27853
  toToken,
27810
27854
  fromToken,
27811
27855
  fromChain,
@@ -30012,7 +30056,7 @@ function hederaWalletConnect(parameters) {
30012
30056
  const optionalChains = config.chains.map((x) => x.id);
30013
30057
  if (!optionalChains.length)
30014
30058
  return;
30015
- const { EthereumProvider } = await import('./index.es-Bxk-BRsk.js');
30059
+ const { EthereumProvider } = await import('./index.es-DDv7Krv1.js');
30016
30060
  const rawProvider = await EthereumProvider.init({
30017
30061
  ...restParameters,
30018
30062
  disableProviderPing: true,
@@ -30643,32 +30687,6 @@ const useAddressBookStore = create(persist((set) => ({
30643
30687
  name: "squid.addressbook.store",
30644
30688
  }));
30645
30689
 
30646
- const useFavoriteChainsStore = create(persist((set, get) => ({
30647
- favoriteChains: [],
30648
- addFavoriteChain(chain) {
30649
- set((state) => ({
30650
- favoriteChains: [...state.favoriteChains, chain],
30651
- }));
30652
- },
30653
- removeFavoriteChain(chain) {
30654
- set((state) => ({
30655
- favoriteChains: state.favoriteChains.filter((c) => c.chainId !== chain.chainId),
30656
- }));
30657
- },
30658
- toggleFavoriteChain(chain) {
30659
- const isFavorite = get().favoriteChains.some((c) => c.chainId === chain.chainId);
30660
- if (isFavorite) {
30661
- get().removeFavoriteChain(chain);
30662
- }
30663
- else {
30664
- get().addFavoriteChain(chain);
30665
- }
30666
- },
30667
- }), {
30668
- name: "squid.favorite.chains.store",
30669
- version: 1,
30670
- }));
30671
-
30672
30690
  const useFavoriteTokensStore = create(persist((set, get) => ({
30673
30691
  favoriteTokens: [],
30674
30692
  addFavoriteToken(token) {
@@ -32444,7 +32462,7 @@ const useHistory = (txType) => {
32444
32462
  fromChain: tx.params.fromChain,
32445
32463
  fromToken: tx.params.fromToken,
32446
32464
  fromAddress: tx.params.fromAddress,
32447
- fromAmount: tx.params.fromAmount,
32465
+ fromAmount: tx.params.fromAmount || tx.estimate.fromAmount,
32448
32466
  toChain: tx.params.toChain,
32449
32467
  toToken: tx.params.toToken,
32450
32468
  toAddress: tx.params.toAddress,
@@ -32685,7 +32703,7 @@ const useApproval = ({ squidRoute, }) => {
32685
32703
  const publicClient = usePublicClient();
32686
32704
  const queryClient = useQueryClient();
32687
32705
  const squid = useSquidStore((state) => state.squid);
32688
- const { fromChain, fromToken, fromPrice, isSameChain } = useSwap();
32706
+ const { fromChain, fromToken, fromAmount, toAmount, isSameChain } = useSwap();
32689
32707
  const { evmSigner } = useSigner({ chain: fromChain });
32690
32708
  const { connector: activeConnector } = useAccount();
32691
32709
  const { getChainType } = useSquidChains();
@@ -32858,9 +32876,9 @@ const useApproval = ({ squidRoute, }) => {
32858
32876
  // This is to ensure we're using the latest expiry timestamp
32859
32877
  if (squidRoute) {
32860
32878
  queryClient.refetchQueries({
32861
- queryKey: keys().transaction(squidRoute.params.fromChain, squidRoute.params.toChain, squidRoute.params.toToken, squidRoute.params.fromToken, fromPrice, squidRoute.params.slippage, squidRoute.params.fromAddress, squidRoute.params.bypassGuardrails, squidRoute.params.toAddress, squidRoute.params.fallbackAddresses?.[0]?.address, squidRoute.params.quoteOnly, getChainType(squidRoute.params.fromChain), squidRoute.params.preHook, squidRoute.params.postHook,
32879
+ queryKey: keys().transaction(squidRoute.params.fromChain, squidRoute.params.toChain, squidRoute.params.toToken, squidRoute.params.fromToken, fromAmount, toAmount, squidRoute.params.slippage, squidRoute.params.fromAddress, squidRoute.params.bypassGuardrails, squidRoute.params.toAddress, squidRoute.params.fallbackAddresses?.[0]?.address, squidRoute.params.quoteOnly, getChainType(squidRoute.params.fromChain), squidRoute.params.preHook, squidRoute.params.postHook,
32862
32880
  // TODO: update types
32863
- squidRoute.params?.overrideGasRefundAddress),
32881
+ squidRoute.params?.overrideGasRefundAddress, squidRoute.params?.prefer),
32864
32882
  });
32865
32883
  }
32866
32884
  },
@@ -32877,7 +32895,7 @@ const AXELAR_PROVIDER_IMAGE_URL = "https://raw.githubusercontent.com/0xsquid/ass
32877
32895
  const useEstimate = (squidRoute) => {
32878
32896
  const collectFees = useConfigStore((state) => state.config.collectFees);
32879
32897
  const { tokens } = useSquidTokens();
32880
- const { fromChain, toChain, fromPrice } = useSwap();
32898
+ const { fromChain, toChain, fromAmount } = useSwap();
32881
32899
  const fromToken = useMemo(() => findToken(tokens, squidRoute?.params.fromChain, squidRoute?.params.fromToken), [tokens, squidRoute?.params.fromChain, squidRoute?.params.fromToken]);
32882
32900
  const { chainFeeParams, gasToken } = useSourceChainGasToken({
32883
32901
  fromChain,
@@ -32973,9 +32991,9 @@ const useEstimate = (squidRoute) => {
32973
32991
  const slippageFormatted = Number(squidRoute?.estimate?.aggregateSlippage ?? 0).toFixed(2) + "%";
32974
32992
  const fromBalanceEnoughToSwap = useMemo(() => {
32975
32993
  const fromBalanceNum = Number(fromBalanceFormatted ?? 0);
32976
- const fromPriceNum = Number(fromPrice ?? 0);
32977
- return fromBalanceNum >= fromPriceNum;
32978
- }, [fromBalanceFormatted, fromPrice]);
32994
+ const fromAmountNum = Number(fromAmount ?? 0);
32995
+ return fromBalanceNum >= fromAmountNum;
32996
+ }, [fromBalanceFormatted, fromAmount]);
32979
32997
  return {
32980
32998
  ...estimateResults,
32981
32999
  fromBalanceFormatted,
@@ -36194,8 +36212,12 @@ const useExecuteTransaction = (squidRoute) => {
36194
36212
  if (!depositData?.depositAddress) {
36195
36213
  throw new Error("Deposit address is required");
36196
36214
  }
36215
+ const fromAmount = route.params.fromAmount || route.estimate.fromAmount;
36216
+ if (isZeroAmount(fromAmount)) {
36217
+ throw new Error("fromAmount is required for Solana transfer");
36218
+ }
36197
36219
  const signature = await executeSolanaTransfer({
36198
- amount: BigInt(route.params.fromAmount),
36220
+ amount: BigInt(fromAmount),
36199
36221
  target: depositData.depositAddress,
36200
36222
  signer: solanaSigner,
36201
36223
  connection: solanaConnection,
@@ -36705,8 +36727,12 @@ const useGetRoute = () => {
36705
36727
  * These data will be used to trigger the transaction
36706
36728
  * @returns {Route} Route data
36707
36729
  */
36708
- return useMutation(async ({ fromChain, toChain, fromToken, toToken, sourceUserAddress, destinationAddress, fromPrice, bypassGuardrails, quoteOnly, fromChainType, postHook, preHook, overrideGasRefundAddress, }) => {
36709
- if (!fromChain || !toChain || !fromToken || !toToken || !fromPrice) {
36730
+ return useMutation(async ({ fromChain, toChain, fromToken, toToken, sourceUserAddress, destinationAddress, fromPrice = "", toPrice = "", bypassGuardrails, quoteOnly, fromChainType, postHook, preHook, overrideGasRefundAddress, prefer, }) => {
36731
+ if (!fromChain ||
36732
+ !toChain ||
36733
+ !fromToken ||
36734
+ !toToken ||
36735
+ (!fromPrice && !toPrice)) {
36710
36736
  return undefined;
36711
36737
  }
36712
36738
  // Dispatch requestQuote event
@@ -36716,6 +36742,7 @@ const useGetRoute = () => {
36716
36742
  fromToken: fromToken.address,
36717
36743
  toToken: toToken.address,
36718
36744
  fromAmount: fromPrice,
36745
+ toAmount: toPrice,
36719
36746
  fromAddress: sourceUserAddress,
36720
36747
  toAddress: destinationAddress,
36721
36748
  });
@@ -36724,13 +36751,13 @@ const useGetRoute = () => {
36724
36751
  const fromTokenAddress = fromToken.address;
36725
36752
  const toTokenAddress = toToken.address;
36726
36753
  const fromAmount = parseToBigInt(fromPrice?.toString() ?? "0", fromToken?.decimals).toString();
36754
+ const toAmount = parseToBigInt(toPrice?.toString() ?? "0", toToken?.decimals).toString();
36727
36755
  const fromAddress = sourceUserAddress ??
36728
36756
  chainTypeToZeroAddressMap[fromChainType ?? ChainType.EVM];
36729
36757
  const params = {
36730
36758
  fromChain,
36731
36759
  fromToken: fromTokenAddress,
36732
36760
  fromAddress,
36733
- fromAmount,
36734
36761
  toChain,
36735
36762
  toToken: toTokenAddress,
36736
36763
  toAddress: destinationAddress ?? "",
@@ -36747,12 +36774,19 @@ const useGetRoute = () => {
36747
36774
  cosmosFallbackAddresses[0].address) {
36748
36775
  params.fallbackAddresses = cosmosFallbackAddresses;
36749
36776
  }
36777
+ if (!isZeroAmount(fromAmount)) {
36778
+ params.fromAmount = fromAmount;
36779
+ }
36780
+ else if (!isZeroAmount(toAmount)) {
36781
+ params.toAmount = toAmount;
36782
+ }
36750
36783
  const { route } = await squid.getRoute({
36751
36784
  ...params,
36785
+ ...(prefer ? { prefer } : {}),
36752
36786
  });
36753
36787
  // Cache the route data
36754
36788
  // Useful when the getRoute mutation is called from another hook
36755
- queryClient.setQueryData(keys().transaction(fromChain, toChain, toToken.address, fromToken.address, fromPrice, config.slippage, sourceUserAddress, config.degenMode, destinationAddress, swapRoute?.fallbackAddress, quoteOnly, fromChainType, config.preHook, config.postHook, overrideGasRefundAddress), route);
36789
+ queryClient.setQueryData(keys().transaction(fromChain, toChain, toToken.address, fromToken.address, fromPrice, toPrice, config.slippage, sourceUserAddress, config.degenMode, destinationAddress, swapRoute?.fallbackAddress, quoteOnly, fromChainType, config.preHook, config.postHook, overrideGasRefundAddress, config.prefer), route);
36756
36790
  return route;
36757
36791
  });
36758
36792
  };
@@ -36766,7 +36800,7 @@ refetchIntervalInBackground = false, refetchInterval = 30000, quoteOnly = true,
36766
36800
  const depositRefundAddress = useSwapRoutePersistStore((store) => store.swapRoute?.depositRefundAddress);
36767
36801
  const { isAvailableAsPaymentMethod, isEnabled: isDepositAddressEnabled } = useDepositAddress();
36768
36802
  const getRouteMutation = useGetRoute();
36769
- const { fromChain, toChain, fromPrice, destinationAddress: { address: destinationAddress } = {}, fromToken, toToken, } = useSwap();
36803
+ const { fromChain, toChain, fromAmount, toAmount, destinationAddress: { address: destinationAddress } = {}, fromToken, toToken, } = useSwap();
36770
36804
  const { connectedAddress: { address: sourceConnectedAddress }, } = useMultiChainWallet(fromChain);
36771
36805
  // When the payment method is deposit address, users can specify a refund address on the source chain
36772
36806
  // Tokens will be sent to this address in case of swap failure
@@ -36775,12 +36809,13 @@ refetchIntervalInBackground = false, refetchInterval = 30000, quoteOnly = true,
36775
36809
  const sourceUserAddress = isDepositAddressEnabled && isAvailableAsPaymentMethod
36776
36810
  ? depositRefundAddress ?? sourceConnectedAddress
36777
36811
  : sourceConnectedAddress;
36778
- const squidRouteQueryKeys = useMemo(() => keys().transaction(fromChain?.chainId, toChain?.chainId, toToken?.address, fromToken?.address, fromPrice, config.slippage, sourceUserAddress, config.degenMode, destinationAddress, fallbackAddress, quoteOnly, fromChain?.chainType, config.preHook, config.postHook, config.overrideGasRefundAddress), [
36812
+ const squidRouteQueryKeys = useMemo(() => keys().transaction(fromChain?.chainId, toChain?.chainId, toToken?.address, fromToken?.address, fromAmount, toAmount, config.slippage, sourceUserAddress, config.degenMode, destinationAddress, fallbackAddress, quoteOnly, fromChain?.chainType, config.preHook, config.postHook, config.overrideGasRefundAddress, config.prefer), [
36779
36813
  fromChain?.chainId,
36780
36814
  toChain?.chainId,
36781
36815
  toToken?.address,
36782
36816
  fromToken?.address,
36783
- fromPrice,
36817
+ fromAmount,
36818
+ toAmount,
36784
36819
  config.slippage,
36785
36820
  sourceUserAddress,
36786
36821
  config.degenMode,
@@ -36791,12 +36826,12 @@ refetchIntervalInBackground = false, refetchInterval = 30000, quoteOnly = true,
36791
36826
  config.preHook,
36792
36827
  config.postHook,
36793
36828
  config.overrideGasRefundAddress,
36829
+ config.prefer,
36794
36830
  ]);
36795
36831
  const queryEnabled = enabled != undefined
36796
36832
  ? enabled
36797
36833
  : squid !== undefined &&
36798
- fromPrice !== undefined &&
36799
- fromPrice !== "0" &&
36834
+ (!isZeroAmount(fromAmount) || !isZeroAmount(toAmount)) &&
36800
36835
  toChain?.chainId !== undefined &&
36801
36836
  toToken?.address !== undefined;
36802
36837
  const queryClient = useQueryClient();
@@ -36814,13 +36849,15 @@ refetchIntervalInBackground = false, refetchInterval = 30000, quoteOnly = true,
36814
36849
  toToken,
36815
36850
  sourceUserAddress,
36816
36851
  destinationAddress,
36817
- fromPrice,
36852
+ fromPrice: fromAmount,
36853
+ toPrice: toAmount,
36818
36854
  bypassGuardrails: config.degenMode,
36819
36855
  quoteOnly,
36820
36856
  fromChainType: fromChain?.chainType,
36821
36857
  postHook: config.postHook,
36822
36858
  preHook: config.preHook,
36823
36859
  overrideGasRefundAddress: config.overrideGasRefundAddress,
36860
+ prefer: config.prefer,
36824
36861
  });
36825
36862
  return route;
36826
36863
  }, {
@@ -37481,5 +37518,5 @@ const SquidProvider = ({ children, config, placeholder, }) => {
37481
37518
  React.createElement(CosmosProvider, null, children)))))))))) : (placeholder);
37482
37519
  };
37483
37520
 
37484
- export { useWalletStore as $, AxelarStatusResponseType as A, useHederaTokenAssociations as B, CHAIN_IDS as C, DEFAULT_LOCALE as D, useKeyboardNavigation as E, useSquidQueryClient as F, useSquid as G, HistoryTxType as H, useStellarAccountActivation as I, useStellarTrustLine as J, useAddressBookStore as K, useAssetsColorsStore as L, useFavoriteChainsStore as M, Nr as N, useFavoriteTokensStore as O, useHistoryStore as P, QueryKeys as Q, useSendTransactionStore as R, SquidStatusErrorType as S, TransactionErrorType as T, useConfigStore as U, useSquidStore as V, Wo as W, XamanXrplNetwork as X, useSwapRoutePersistStore as Y, useTransactionStore as Z, ConnectingWalletStatus as _, WindowWalletFlag as a, useRecommendedQuote as a$, useDepositAddress as a0, useSwap as a1, buildUrlSearchParamsFromSwapEvent as a2, parseInitialAssetsFromUrl as a3, useUrlSwapParams as a4, useAllConnectedWalletBalances as a5, useAllTokensWithBalanceForChainType as a6, useCosmosBalance as a7, useEvmBalance as a8, useMultiChainBalance as a9, useSendTransactionStatus as aA, useSwapTransactionStatus as aB, useAvatar as aC, useHistory as aD, useDebouncedValue as aE, useAddToken as aF, useAutoConnect as aG, useEnsDataForAddress as aH, useEnsSearch as aI, useGnosisContext as aJ, useIsSameAddressAndGnosisContext as aK, useIntegratorContext as aL, useMultiChainWallet as aM, useSigner as aN, useWallet as aO, useWallets as aP, useXrplTrustLine as aQ, TX_STATUS_CONSTANTS as aR, FINAL_TRANSACTION_STATUSES as aS, useGetFiatQuote as aT, useGetOnRampConfig as aU, useExecuteFiatQuote as aV, useFiatOnRampTxStatus as aW, useFiatTransactions as aX, useCurrencyDetails as aY, useCountryDetails as aZ, useAvailableQuotes as a_, useMultipleTokenPrices as aa, useBitcoinNativeBalance as ab, useCosmosNativeBalance as ac, useEvmNativeBalance as ad, useNativeBalance as ae, useSolanaNativeBalance as af, useStellarNativeBalance as ag, useSuiNativeBalance as ah, useXrplNativeBalance as ai, useNativeTokenForChain as aj, useSingleTokenPrice as ak, useSourceChainGasToken as al, useSquidTokens as am, useHistoricalData as an, useTokensData as ao, useEstimateSendTransaction as ap, useSendTransaction as aq, useSendTransactionGas as ar, useAllTransactionsStatus as as, useApproval as at, useEstimate as au, useEstimatePriceImpact as av, useExecuteTransaction as aw, useGetRoute as ax, useGetRouteWrapper as ay, useRouteWarnings as az, chainTypeToZeroAddressMap as b, formatEvmWallet as b$, useGetOnrampPaymentTypes as b0, useSuggestedFiatAmounts as b1, SquidProvider as b2, EnsService as b3, getXummClient as b4, isXamanXAppContext as b5, getQueryHeaders as b6, getStatusCode as b7, is404Error as b8, assetsBaseUrl as b9, getFirstAvailableChainId as bA, fetchHighestBalanceToken as bB, getInitialOrDefaultTokenAddressForChain as bC, getInitialTokenAddressForChain as bD, filterTokensForDestination as bE, getInitialChainIdFromConfig as bF, getCosmosKey as bG, getKeysSettled as bH, getAllKeysForSupportedCosmosChains as bI, isCosmosAddressValid as bJ, getCosmosSigningClient as bK, getCosmosChainInfosObject as bL, connectCosmosWallet as bM, isFallbackAddressNeeded as bN, suggestChainOrThrow as bO, normalizeError as bP, transactionErrorCode as bQ, isUserRejectionError as bR, getTransactionError as bS, handleTransactionErrorEvents as bT, isSwapRouteError as bU, isStatusError as bV, createQuoteRequestParamsHash as bW, WidgetEvents as bX, EvmNetworkNotSupportedErrorCode as bY, addEthereumChain as bZ, parseEvmAddress as b_, shareSubgraphId as ba, sortTokensBySharedSubgraphIds as bb, getSupportedChainIdsForDirection as bc, filterChains as bd, filterTokens as be, getTokenImage as bf, getNewSwapParamsFromInput as bg, sortAllTokens as bh, findToken as bi, findNativeToken as bj, normalizeIbcAddress as bk, groupTokensBySymbol as bl, groupTokensByChainId as bm, filterViewableTokens as bn, getSecretNetworkBalances as bo, getTokenAssetsKey as bp, fetchAssetsColors as bq, initializeSquidWithAssetsColors as br, isEmptyObject as bs, normalizeTokenSymbol as bt, areTokenSymbolsCompatible as bu, isEvmosChain as bv, resolveChainIdFromAsset as bw, getConfigWithDefaults as bx, randomIntFromInterval as by, getTokensForChain as bz, chainTypeToNativeTokenAddressMap as c, isHistoryTransactionPending as c$, filterWagmiConnector as c0, waitForReceiptWithRetry as c1, getUserCountry as c2, getCountryData as c3, getCurrencyData as c4, adaptiveRound as c5, getSuggestedAmountsForCurrency as c6, HederaExtensionHelper as c7, convertHederaAccountIdToEvmAddress as c8, convertEvmAddressToHederaAccountId as c9, isValidIssuedAsset as cA, isValidHorizonAsset as cB, formatTransactionHistoryDate as cC, getAxelarExplorerTxUrl as cD, getSourceExplorerTxUrl as cE, getMainExplorerUrl as cF, formatDistance as cG, formatSeconds as cH, formatSwapTxStatusResponseForStorage as cI, simplifyRouteAction as cJ, fetchSwapTransactionStatus as cK, compareTransactionIds as cL, isCoralBridgeAction as cM, sleep as cN, isDepositRoute as cO, isChainflipBridgeTransaction as cP, isOnChainTxData as cQ, getHistoryTransactionId as cR, getStepStatuses as cS, getHalfSuccessState as cT, getStepsInfos as cU, getSwapTxStatusRefetchInterval as cV, getSendTxStatusRefetchInterval as cW, chainflipMultihopBridgeType as cX, getBridgeType as cY, getTransactionStatus as cZ, getTransactionEndStatus as c_, scaleHbarToWei as ca, scaleWeiToHbar as cb, parseToBigInt as cc, roundNumericValue as cd, formatUnitsRounded as ce, formatTokenAmount as cf, formatUsdAmount as cg, trimExtraDecimals as ch, getNumericValue as ci, cleanAmount as cj, convertTokenAmountToUSD as ck, convertUSDToTokenAmount as cl, calculateTotal24hChange as cm, getRouteExpiry as cn, searchTokens as co, filterSolanaWallets as cp, isSolanaAddressValid as cq, executeSolanaSwap as cr, executeSolanaTransfer as cs, isStellarAddressValid as ct, getStellarNetwork as cu, stellarAddressToScVal as cv, getStellarTrustLineAsset as cw, isStellarToken as cx, isStellarIssuedToken as cy, getStellarHorizonApiUrl as cz, definedInWindow as d, isHistoryTransactionFailed as d0, isHistoryTransactionWarning as d1, isHistoryTransactionEnded as d2, formatHash as d3, isWalletAddressValid as d4, redirectToExtensionsStore as d5, accessProperty as d6, populateWallets as d7, getDefaultChain as d8, sortWallets as d9, areSameAddress as da, sortAddressBook as db, calculateTotalUsdBalanceUSD as dc, addTokenToWallet as dd, isEvmChainNotSupportedError as de, getWalletSupportedChainTypes as df, getConnectorForChainType as dg, walletSupportsChainType as dh, connectWallet as di, cancelConnectWallet as dj, isProblematicConnector as dk, mergeWallets as dl, isXionSmartContractAddress as dm, isXrplAddressValid as dn, buildXrplTrustSetTx as dp, getXrplNetwork as dq, parseXrplPaymentTx as dr, parseXrplTokenAddress as ds, er as e, formatBNToReadable as f, DEFAULT_ROUTE_REFETCH_INTERVAL as g, destinationAddressResetValue as h, fallbackAddressResetValue as i, nativeCosmosTokenAddress as j, nativeEvmTokenAddress as k, nativeSolanaTokenAddress as l, nativeStellarTokenAddress as m, nativeBitcoinTokenAddress as n, nativeSuiTokenAddress as o, nativeXrplTokenAddress as p, CosmosProvider as q, SendTransactionStatus as r, TransactionStatus as s, useTrackSearchEmpty as t, useCosmosContext as u, useSquidChains as v, walletIconBaseUrl as w, useClient as x, useCosmosForChain as y, useHederaAccountActivation as z };
37485
- //# sourceMappingURL=index-DYs5b-an.js.map
37521
+ export { useDepositAddress as $, AxelarStatusResponseType as A, useHederaTokenAssociations as B, CHAIN_IDS as C, DEFAULT_LOCALE as D, useKeyboardNavigation as E, useSquidQueryClient as F, useSquid as G, HistoryTxType as H, useStellarAccountActivation as I, useStellarTrustLine as J, useAddressBookStore as K, useAssetsColorsStore as L, useFavoriteTokensStore as M, Nr as N, useHistoryStore as O, useSendTransactionStore as P, QueryKeys as Q, useConfigStore as R, SquidStatusErrorType as S, TransactionErrorType as T, useSquidStore as U, useSwapRoutePersistStore as V, Wo as W, XamanXrplNetwork as X, useTransactionStore as Y, ConnectingWalletStatus as Z, useWalletStore as _, WindowWalletFlag as a, useGetOnrampPaymentTypes as a$, useSwap as a0, buildUrlSearchParamsFromSwapEvent as a1, parseInitialAssetsFromUrl as a2, useUrlSwapParams as a3, useAllConnectedWalletBalances as a4, useAllTokensWithBalanceForChainType as a5, useCosmosBalance as a6, useEvmBalance as a7, useMultiChainBalance as a8, useMultipleTokenPrices as a9, useSwapTransactionStatus as aA, useAvatar as aB, useHistory as aC, useDebouncedValue as aD, useAddToken as aE, useAutoConnect as aF, useEnsDataForAddress as aG, useEnsSearch as aH, useGnosisContext as aI, useIsSameAddressAndGnosisContext as aJ, useIntegratorContext as aK, useMultiChainWallet as aL, useSigner as aM, useWallet as aN, useWallets as aO, useXrplTrustLine as aP, TX_STATUS_CONSTANTS as aQ, FINAL_TRANSACTION_STATUSES as aR, useGetFiatQuote as aS, useGetOnRampConfig as aT, useExecuteFiatQuote as aU, useFiatOnRampTxStatus as aV, useFiatTransactions as aW, useCurrencyDetails as aX, useCountryDetails as aY, useAvailableQuotes as aZ, useRecommendedQuote as a_, useBitcoinNativeBalance as aa, useCosmosNativeBalance as ab, useEvmNativeBalance as ac, useNativeBalance as ad, useSolanaNativeBalance as ae, useStellarNativeBalance as af, useSuiNativeBalance as ag, useXrplNativeBalance as ah, useNativeTokenForChain as ai, useSingleTokenPrice as aj, useSourceChainGasToken as ak, useSquidTokens as al, useHistoricalData as am, useTokensData as an, useEstimateSendTransaction as ao, useSendTransaction as ap, useSendTransactionGas as aq, useAllTransactionsStatus as ar, useApproval as as, useEstimate as at, useEstimatePriceImpact as au, useExecuteTransaction as av, useGetRoute as aw, useGetRouteWrapper as ax, useRouteWarnings as ay, useSendTransactionStatus as az, chainTypeToZeroAddressMap as b, parseEvmAddress as b$, useSuggestedFiatAmounts as b0, SquidProvider as b1, EnsService as b2, getXummClient as b3, isXamanXAppContext as b4, getQueryHeaders as b5, getStatusCode as b6, is404Error as b7, assetsBaseUrl as b8, shareSubgraphId as b9, fetchHighestBalanceToken as bA, getInitialOrDefaultTokenAddressForChain as bB, getInitialTokenAddressForChain as bC, filterTokensForDestination as bD, getInitialChainIdFromConfig as bE, getCosmosKey as bF, getKeysSettled as bG, getAllKeysForSupportedCosmosChains as bH, isCosmosAddressValid as bI, getCosmosSigningClient as bJ, getCosmosChainInfosObject as bK, connectCosmosWallet as bL, isFallbackAddressNeeded as bM, suggestChainOrThrow as bN, normalizeError as bO, transactionErrorCode as bP, isUserRejectionError as bQ, getTransactionError as bR, handleTransactionErrorEvents as bS, isSwapRouteError as bT, isStatusError as bU, GENERIC_ROUTE_ERROR_MESSAGE as bV, getSquidRouteErrorMessage as bW, createQuoteRequestParamsHash as bX, WidgetEvents as bY, EvmNetworkNotSupportedErrorCode as bZ, addEthereumChain as b_, sortTokensBySharedSubgraphIds as ba, getSupportedChainIdsForDirection as bb, filterChains as bc, filterTokens as bd, getTokenImage as be, getNewSwapParamsFromInput as bf, sortAllTokens as bg, findToken as bh, findNativeToken as bi, normalizeIbcAddress as bj, groupTokensBySymbol as bk, groupTokensByChainId as bl, filterViewableTokens as bm, getSecretNetworkBalances as bn, getTokenAssetsKey as bo, fetchAssetsColors as bp, initializeSquidWithAssetsColors as bq, isEmptyObject as br, normalizeTokenSymbol as bs, areTokenSymbolsCompatible as bt, isEvmosChain as bu, resolveChainIdFromAsset as bv, getConfigWithDefaults as bw, randomIntFromInterval as bx, getTokensForChain as by, getFirstAvailableChainId as bz, chainTypeToNativeTokenAddressMap as c, getTransactionStatus as c$, formatEvmWallet as c0, filterWagmiConnector as c1, waitForReceiptWithRetry as c2, getUserCountry as c3, getCountryData as c4, getCurrencyData as c5, adaptiveRound as c6, getSuggestedAmountsForCurrency as c7, HederaExtensionHelper as c8, convertHederaAccountIdToEvmAddress as c9, isStellarIssuedToken as cA, getStellarHorizonApiUrl as cB, isValidIssuedAsset as cC, isValidHorizonAsset as cD, formatTransactionHistoryDate as cE, getAxelarExplorerTxUrl as cF, getSourceExplorerTxUrl as cG, getMainExplorerUrl as cH, formatDistance as cI, formatSeconds as cJ, formatSwapTxStatusResponseForStorage as cK, simplifyRouteAction as cL, fetchSwapTransactionStatus as cM, compareTransactionIds as cN, isCoralBridgeAction as cO, sleep as cP, isDepositRoute as cQ, isChainflipBridgeTransaction as cR, isOnChainTxData as cS, getHistoryTransactionId as cT, getStepStatuses as cU, getHalfSuccessState as cV, getStepsInfos as cW, getSwapTxStatusRefetchInterval as cX, getSendTxStatusRefetchInterval as cY, chainflipMultihopBridgeType as cZ, getBridgeType as c_, convertEvmAddressToHederaAccountId as ca, scaleHbarToWei as cb, scaleWeiToHbar as cc, parseToBigInt as cd, roundNumericValue as ce, formatUnitsRounded as cf, formatTokenAmount as cg, formatUsdAmount as ch, trimExtraDecimals as ci, getNumericValue as cj, isZeroAmount as ck, cleanAmount as cl, convertTokenAmountToUSD as cm, convertUSDToTokenAmount as cn, calculateTotal24hChange as co, getRouteExpiry as cp, searchTokens as cq, filterSolanaWallets as cr, isSolanaAddressValid as cs, executeSolanaSwap as ct, executeSolanaTransfer as cu, isStellarAddressValid as cv, getStellarNetwork as cw, stellarAddressToScVal as cx, getStellarTrustLineAsset as cy, isStellarToken as cz, definedInWindow as d, getTransactionEndStatus as d0, isHistoryTransactionPending as d1, isHistoryTransactionFailed as d2, isHistoryTransactionWarning as d3, isHistoryTransactionEnded as d4, formatHash as d5, isWalletAddressValid as d6, redirectToExtensionsStore as d7, accessProperty as d8, populateWallets as d9, getDefaultChain as da, sortWallets as db, areSameAddress as dc, sortAddressBook as dd, calculateTotalUsdBalanceUSD as de, addTokenToWallet as df, isEvmChainNotSupportedError as dg, getWalletSupportedChainTypes as dh, getConnectorForChainType as di, walletSupportsChainType as dj, connectWallet as dk, cancelConnectWallet as dl, isProblematicConnector as dm, mergeWallets as dn, isXionSmartContractAddress as dp, isXrplAddressValid as dq, buildXrplTrustSetTx as dr, getXrplNetwork as ds, parseXrplPaymentTx as dt, parseXrplTokenAddress as du, er as e, formatBNToReadable as f, DEFAULT_ROUTE_REFETCH_INTERVAL as g, destinationAddressResetValue as h, fallbackAddressResetValue as i, nativeCosmosTokenAddress as j, nativeEvmTokenAddress as k, nativeSolanaTokenAddress as l, nativeStellarTokenAddress as m, nativeBitcoinTokenAddress as n, nativeSuiTokenAddress as o, nativeXrplTokenAddress as p, CosmosProvider as q, SendTransactionStatus as r, TransactionStatus as s, useTrackSearchEmpty as t, useCosmosContext as u, useSquidChains as v, walletIconBaseUrl as w, useClient as x, useCosmosForChain as y, useHederaAccountActivation as z };
37522
+ //# sourceMappingURL=index-BhIaRT6b.js.map