@0xsquid/react-hooks 4.0.0 → 4.0.2-beta.0

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 (128) hide show
  1. package/dist/core/connectors/bitcoin/helpers.d.ts +5 -0
  2. package/dist/core/connectors/bitcoin/helpers.js +86 -0
  3. package/dist/core/connectors/bitcoin/helpers.js.map +1 -0
  4. package/dist/core/connectors/bitcoin/index.d.ts +6 -0
  5. package/dist/core/connectors/bitcoin/index.js +2 -0
  6. package/dist/core/connectors/bitcoin/index.js.map +1 -0
  7. package/dist/core/connectors/bitcoin/wallets/index.d.ts +2 -0
  8. package/dist/core/connectors/bitcoin/wallets/index.js +3 -0
  9. package/dist/core/connectors/bitcoin/wallets/index.js.map +1 -0
  10. package/dist/core/connectors/bitcoin/wallets/phantom.d.ts +19 -0
  11. package/dist/core/connectors/bitcoin/wallets/phantom.js +54 -0
  12. package/dist/core/connectors/bitcoin/wallets/phantom.js.map +1 -0
  13. package/dist/core/connectors/bitcoin/wallets/unisat.d.ts +11 -0
  14. package/dist/core/connectors/bitcoin/wallets/unisat.js +16 -0
  15. package/dist/core/connectors/bitcoin/wallets/unisat.js.map +1 -0
  16. package/dist/core/constants.d.ts +12 -0
  17. package/dist/core/constants.js +23 -0
  18. package/dist/core/constants.js.map +1 -1
  19. package/dist/core/externalLinks.d.ts +1 -1
  20. package/dist/core/externalLinks.js +1 -1
  21. package/dist/core/externalLinks.js.map +1 -1
  22. package/dist/core/index.d.ts +1 -0
  23. package/dist/core/index.js +1 -0
  24. package/dist/core/index.js.map +1 -1
  25. package/dist/core/providers/SolanaProvider.d.ts +28 -0
  26. package/dist/core/providers/SolanaProvider.js +15 -0
  27. package/dist/core/providers/SolanaProvider.js.map +1 -0
  28. package/dist/core/queries/queries-keys.d.ts +1 -1
  29. package/dist/core/queries/queries-keys.js +3 -1
  30. package/dist/core/queries/queries-keys.js.map +1 -1
  31. package/dist/core/types/wallet.d.ts +11 -2
  32. package/dist/core/types/wallet.js +3 -0
  33. package/dist/core/types/wallet.js.map +1 -1
  34. package/dist/core/wallets.js +50 -1
  35. package/dist/core/wallets.js.map +1 -1
  36. package/dist/hooks/cosmos/useCosmos.js +2 -1
  37. package/dist/hooks/cosmos/useCosmos.js.map +1 -1
  38. package/dist/hooks/cosmos/useCosmosForChain.js +1 -2
  39. package/dist/hooks/cosmos/useCosmosForChain.js.map +1 -1
  40. package/dist/hooks/index.d.ts +2 -0
  41. package/dist/hooks/index.js +2 -0
  42. package/dist/hooks/index.js.map +1 -1
  43. package/dist/hooks/solana/useSolana.d.ts +27 -0
  44. package/dist/hooks/solana/useSolana.js +86 -0
  45. package/dist/hooks/solana/useSolana.js.map +1 -0
  46. package/dist/hooks/store/useHistoryStore.d.ts +1 -1
  47. package/dist/hooks/store/useWalletStore.js +1 -0
  48. package/dist/hooks/store/useWalletStore.js.map +1 -1
  49. package/dist/hooks/swap/useDepositAddress.d.ts +9 -0
  50. package/dist/hooks/swap/useDepositAddress.js +45 -0
  51. package/dist/hooks/swap/useDepositAddress.js.map +1 -0
  52. package/dist/hooks/tokens/useAllConnectedWalletBalances.js +26 -1
  53. package/dist/hooks/tokens/useAllConnectedWalletBalances.js.map +1 -1
  54. package/dist/hooks/tokens/useAllTokensWithBalanceForChainType.js +16 -5
  55. package/dist/hooks/tokens/useAllTokensWithBalanceForChainType.js.map +1 -1
  56. package/dist/hooks/tokens/useBalance.d.ts +122 -1
  57. package/dist/hooks/tokens/useBalance.js +25 -0
  58. package/dist/hooks/tokens/useBalance.js.map +1 -1
  59. package/dist/hooks/tokens/useMultiChainBalance.js +24 -7
  60. package/dist/hooks/tokens/useMultiChainBalance.js.map +1 -1
  61. package/dist/hooks/tokens/useNativeBalance.d.ts +11 -1
  62. package/dist/hooks/tokens/useNativeBalance.js +81 -11
  63. package/dist/hooks/tokens/useNativeBalance.js.map +1 -1
  64. package/dist/hooks/tokens/useNativeTokenForChain.d.ts +4 -0
  65. package/dist/hooks/tokens/useNativeTokenForChain.js +26 -0
  66. package/dist/hooks/tokens/useNativeTokenForChain.js.map +1 -0
  67. package/dist/hooks/tokens/useSquidTokens.d.ts +2 -0
  68. package/dist/hooks/tokens/useSquidTokens.js +5 -1
  69. package/dist/hooks/tokens/useSquidTokens.js.map +1 -1
  70. package/dist/hooks/transaction/useEstimate.d.ts +2 -2
  71. package/dist/hooks/transaction/useExecuteTransaction.d.ts +2 -2
  72. package/dist/hooks/transaction/useExecuteTransaction.js +161 -15
  73. package/dist/hooks/transaction/useExecuteTransaction.js.map +1 -1
  74. package/dist/hooks/transaction/useGetRoute.d.ts +11 -8
  75. package/dist/hooks/transaction/useGetRoute.js +20 -7
  76. package/dist/hooks/transaction/useGetRoute.js.map +1 -1
  77. package/dist/hooks/transaction/useSingleTransaction.d.ts +1 -1
  78. package/dist/hooks/user/useHistory.js +2 -2
  79. package/dist/hooks/user/useHistory.js.map +1 -1
  80. package/dist/hooks/wallet/useMultiChainWallet.js +34 -11
  81. package/dist/hooks/wallet/useMultiChainWallet.js.map +1 -1
  82. package/dist/hooks/wallet/useSigner.d.ts +4 -0
  83. package/dist/hooks/wallet/useSigner.js +22 -0
  84. package/dist/hooks/wallet/useSigner.js.map +1 -1
  85. package/dist/hooks/wallet/useWallet.js +44 -12
  86. package/dist/hooks/wallet/useWallet.js.map +1 -1
  87. package/dist/provider/index.js +3 -1
  88. package/dist/provider/index.js.map +1 -1
  89. package/dist/services/external/rpcService.d.ts +9 -1
  90. package/dist/services/external/rpcService.js +119 -1
  91. package/dist/services/external/rpcService.js.map +1 -1
  92. package/dist/services/index.d.ts +3 -0
  93. package/dist/services/index.js +3 -0
  94. package/dist/services/index.js.map +1 -1
  95. package/dist/services/internal/assetsService.d.ts +3 -1
  96. package/dist/services/internal/assetsService.js +7 -4
  97. package/dist/services/internal/assetsService.js.map +1 -1
  98. package/dist/services/internal/bitcoinService.d.ts +14 -0
  99. package/dist/services/internal/bitcoinService.js +53 -0
  100. package/dist/services/internal/bitcoinService.js.map +1 -0
  101. package/dist/services/internal/cosmosService.d.ts +37 -0
  102. package/dist/services/internal/cosmosService.js +97 -0
  103. package/dist/services/internal/cosmosService.js.map +1 -0
  104. package/dist/services/internal/estimateService.d.ts +2 -2
  105. package/dist/services/internal/evmService.d.ts +16 -0
  106. package/dist/services/internal/evmService.js +40 -0
  107. package/dist/services/internal/evmService.js.map +1 -0
  108. package/dist/services/internal/priceService.d.ts +5 -0
  109. package/dist/services/internal/priceService.js +19 -5
  110. package/dist/services/internal/priceService.js.map +1 -1
  111. package/dist/services/internal/solanaService.d.ts +39 -0
  112. package/dist/services/internal/solanaService.js +71 -0
  113. package/dist/services/internal/solanaService.js.map +1 -0
  114. package/dist/services/internal/transactionService.d.ts +5 -5
  115. package/dist/services/internal/transactionService.js +15 -6
  116. package/dist/services/internal/transactionService.js.map +1 -1
  117. package/dist/services/internal/walletService.d.ts +3 -55
  118. package/dist/services/internal/walletService.js +16 -151
  119. package/dist/services/internal/walletService.js.map +1 -1
  120. package/dist/tests/assetsService.test.js +37 -2
  121. package/dist/tests/assetsService.test.js.map +1 -1
  122. package/dist/tests/estimateService.test.js.map +1 -1
  123. package/dist/tests/priceService.test.d.ts +1 -0
  124. package/dist/tests/priceService.test.js +38 -0
  125. package/dist/tests/priceService.test.js.map +1 -0
  126. package/dist/tests/walletService.test.js +0 -1
  127. package/dist/tests/walletService.test.js.map +1 -1
  128. package/package.json +16 -10
@@ -0,0 +1,97 @@
1
+ import { fromBech32 } from "@cosmjs/encoding";
2
+ /**
3
+ * Get the cosmos address for a given chain
4
+ * This might pop up a keplr modal to approve the chain
5
+ * @param chainId
6
+ * @param keplrTypeWallet
7
+ * @returns Cosmos address
8
+ */
9
+ export const getAllKeysForSupportedCosmosChains = async (chainIds, keplrTypeWallet) => {
10
+ const addresses = [];
11
+ if (!keplrTypeWallet)
12
+ return addresses;
13
+ for (const chainId of chainIds) {
14
+ try {
15
+ const keys = await keplrTypeWallet.getKeysSettled([chainId]);
16
+ keys.forEach((key) => {
17
+ if (key.status === "fulfilled" && key.value?.bech32Address) {
18
+ addresses.push({
19
+ address: key.value.bech32Address,
20
+ chainId,
21
+ });
22
+ }
23
+ });
24
+ }
25
+ catch (error) {
26
+ console.debug(`Failed to get keys for chain ${chainId}:`, error);
27
+ }
28
+ }
29
+ return addresses;
30
+ };
31
+ export const isCosmosAddressValid = (chainPrefix, address) => {
32
+ try {
33
+ if (!address.toLowerCase().startsWith(chainPrefix)) {
34
+ throw new Error("Invalid address for this chain");
35
+ }
36
+ fromBech32(address);
37
+ return true;
38
+ }
39
+ catch (error) {
40
+ return false;
41
+ }
42
+ };
43
+ export const getCosmosSigningClient = async ({ chainRpc, cosmosSigner, defaultSigningClient, }) => {
44
+ if (!cosmosSigner)
45
+ return null;
46
+ // const cosmosClient = (await isNomos())
47
+ // ? SigningNomosClient.connectWithSigner(chainRpc, cosmosSigner) // use Nomos provider
48
+ return defaultSigningClient.connectWithSigner(chainRpc, cosmosSigner); // use default cosmos provider
49
+ };
50
+ export const getCosmosChainInfosObject = (chain) => {
51
+ const cosmosChain = chain;
52
+ //
53
+ // TODO: In the future, it will be better to do this parsing on backend side.
54
+ //
55
+ // The `gasPriceStep` field of the `ChainInfo` has been moved under `feeCurrencies`.
56
+ // This is automatically handled as of right now, but the upcoming update would potentially cause errors.
57
+ delete cosmosChain.gasPriceStep;
58
+ // The `coinType` field of the `ChainInfo` is removed. This is automatically handled as of right now,
59
+ // but the upcoming update would potentially cause errors.
60
+ delete cosmosChain.coinType;
61
+ return {
62
+ ...cosmosChain,
63
+ feeCurrencies: cosmosChain.feeCurrencies.map((feeCurrency) => ({
64
+ ...feeCurrency,
65
+ // Gas price step is now under feeCurrencies
66
+ gasPriceStep: cosmosChain.gasPriceStep,
67
+ })),
68
+ chainName: cosmosChain.networkName,
69
+ chainId: cosmosChain.chainId.toString(),
70
+ rpc: cosmosChain.rpc.split("?chain")[0],
71
+ };
72
+ };
73
+ export const connectCosmosWallet = async (wallet, baseChain, { connectCosmos, cosmosConnectedWallet }) => {
74
+ // No need to connect to the same wallet
75
+ if (wallet.connectorId === cosmosConnectedWallet?.connectorId ||
76
+ baseChain === undefined) {
77
+ return null;
78
+ }
79
+ const address = await connectCosmos?.mutateAsync({
80
+ chain: baseChain,
81
+ wallet: wallet,
82
+ });
83
+ if (address) {
84
+ //TODO: Careful here, commented here because not needed for Wallet component, but might be needed for Widget component
85
+ // This setState could be implemented on the Widget side, instead of hooks here
86
+ //
87
+ // useSwapRoutePersistStore.setState({
88
+ // swapRoute: {
89
+ // ...useSwapRoutePersistStore.getState().swapRoute,
90
+ // destinationAddress: { address },
91
+ // },
92
+ // });
93
+ return { wallet, address };
94
+ }
95
+ return null;
96
+ };
97
+ //# sourceMappingURL=cosmosService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cosmosService.js","sourceRoot":"","sources":["../../../src/services/internal/cosmosService.ts"],"names":[],"mappings":"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"}
@@ -71,8 +71,8 @@ export declare const calculateEstimateResults: ({ squidRoute, tokens, fromChain,
71
71
  fromToken: any;
72
72
  fromAmount: string | undefined;
73
73
  fromAmountFormatted: string;
74
- sourceChainNativeToken: any;
75
- destChainNativeToken: any;
74
+ sourceChainNativeToken: Token | undefined;
75
+ destChainNativeToken: Token | undefined;
76
76
  toAmountUSD: string | undefined;
77
77
  toAmountUSDFloat: number;
78
78
  exchangeRate: string;
@@ -0,0 +1,16 @@
1
+ import { ChainData } from "@0xsquid/squid-types";
2
+ import { Config, Connector } from "wagmi";
3
+ import { ConnectMutateAsync } from "wagmi/query";
4
+ import { EvmWallet } from "../../core/types/wallet";
5
+ export declare const EvmNetworkNotSupportedErrorCode = 4902;
6
+ export declare function addEthereumChain({ chain, provider, }: {
7
+ chain: ChainData;
8
+ provider: any;
9
+ }): Promise<any>;
10
+ export declare const connectEvmWallet: (wallet: EvmWallet, { connectEvmAsync, activeEvmConnector, }: {
11
+ connectEvmAsync: ConnectMutateAsync<Config, unknown>;
12
+ activeEvmConnector: Connector | undefined;
13
+ }) => Promise<{
14
+ wallet: EvmWallet;
15
+ address: `0x${string}`;
16
+ } | null>;
@@ -0,0 +1,40 @@
1
+ export const EvmNetworkNotSupportedErrorCode = 4902;
2
+ export async function addEthereumChain({ chain, provider, }) {
3
+ const chainName = chain.rpc.includes("tenderly")
4
+ ? `${chain.networkName} Tenderly fork`
5
+ : chain.networkName;
6
+ const chainParameters = {
7
+ chainId: `0x${parseInt(chain.chainId, 10).toString(16)}`,
8
+ chainName,
9
+ nativeCurrency: chain.nativeCurrency,
10
+ rpcUrls: [chain.rpc],
11
+ blockExplorerUrls: chain.blockExplorerUrls,
12
+ iconUrls: [chain.chainIconURI],
13
+ };
14
+ try {
15
+ return provider.request({
16
+ method: "wallet_addEthereumChain",
17
+ params: [chainParameters],
18
+ });
19
+ }
20
+ catch (error) {
21
+ console.debug("Error adding chain:", error);
22
+ }
23
+ }
24
+ export const connectEvmWallet = async (wallet, { connectEvmAsync, activeEvmConnector, }) => {
25
+ if (!wallet.connector) {
26
+ throw new Error("Wallet connector is undefined");
27
+ }
28
+ // No need to connect to the same wallet
29
+ if (wallet.connectorId === activeEvmConnector?.id) {
30
+ return null;
31
+ }
32
+ const evmConnectionResult = await connectEvmAsync({
33
+ connector: wallet.connector(),
34
+ });
35
+ return {
36
+ wallet,
37
+ address: evmConnectionResult.accounts?.[0] ?? "",
38
+ };
39
+ };
40
+ //# sourceMappingURL=evmService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evmService.js","sourceRoot":"","sources":["../../../src/services/internal/evmService.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,MAAM,+BAA+B,GAAG,IAAI,CAAC;AAEpD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,EACrC,KAAK,EACL,QAAQ,GAIT;IACC,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC;QAC9C,CAAC,CAAC,GAAG,KAAK,CAAC,WAAW,gBAAgB;QACtC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC;IACtB,MAAM,eAAe,GAA8B;QACjD,OAAO,EAAE,KAAK,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;QACxD,SAAS;QACT,cAAc,EAAE,KAAK,CAAC,cAAc;QACpC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC;QACpB,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;QAC1C,QAAQ,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC;KAC/B,CAAC;IAEF,IAAI;QACF,OAAO,QAAQ,CAAC,OAAO,CAAC;YACtB,MAAM,EAAE,yBAAyB;YACjC,MAAM,EAAE,CAAC,eAAe,CAAC;SAC1B,CAAC,CAAC;KACJ;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC;KAC7C;AACH,CAAC;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EACnC,MAAiB,EACjB,EACE,eAAe,EACf,kBAAkB,GAInB,EACD,EAAE;IACF,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;QACrB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;KAClD;IAED,wCAAwC;IACxC,IAAI,MAAM,CAAC,WAAW,KAAK,kBAAkB,EAAE,EAAE,EAAE;QACjD,OAAO,IAAI,CAAC;KACb;IAED,MAAM,mBAAmB,GAAG,MAAM,eAAe,CAAC;QAChD,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE;KAC9B,CAAC,CAAC;IAEH,OAAO;QACL,MAAM;QACN,OAAO,EAAE,mBAAmB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE;KACjD,CAAC;AACJ,CAAC,CAAC"}
@@ -1,3 +1,8 @@
1
+ /**
2
+ * Cleans numeric string by removing thousand separators
3
+ * @param amount - The amount to clean (string or number)
4
+ */
5
+ export declare function cleanAmount(amount: string | number): string;
1
6
  /**
2
7
  * Convert token amount to USD
3
8
  * @param {string|number} tokenAmount - The amount of tokens
@@ -1,4 +1,13 @@
1
1
  import { BigNumber } from "bignumber.js";
2
+ /**
3
+ * Cleans numeric string by removing thousand separators
4
+ * @param amount - The amount to clean (string or number)
5
+ */
6
+ export function cleanAmount(amount) {
7
+ if (typeof amount === "number")
8
+ return amount.toString();
9
+ return amount.replace(/,/g, "");
10
+ }
2
11
  /**
3
12
  * Convert token amount to USD
4
13
  * @param {string|number} tokenAmount - The amount of tokens
@@ -8,9 +17,14 @@ import { BigNumber } from "bignumber.js";
8
17
  export function convertTokenAmountToUSD(tokenAmount, tokenPrice, maxDecimals = 4) {
9
18
  if (!tokenAmount || !tokenPrice)
10
19
  return "";
11
- const amount = new BigNumber(tokenAmount);
12
- const price = new BigNumber(tokenPrice);
13
- return amount.multipliedBy(price).decimalPlaces(maxDecimals).toString();
20
+ try {
21
+ const amount = new BigNumber(cleanAmount(tokenAmount));
22
+ const price = new BigNumber(cleanAmount(tokenPrice));
23
+ return amount.multipliedBy(price).decimalPlaces(maxDecimals).toString();
24
+ }
25
+ catch {
26
+ return "";
27
+ }
14
28
  }
15
29
  /**
16
30
  * Convert USD to token amount
@@ -22,8 +36,8 @@ export function convertTokenAmountToUSD(tokenAmount, tokenPrice, maxDecimals = 4
22
36
  export function convertUSDToTokenAmount(usdAmount, tokenPrice, maxDecimals) {
23
37
  if (!usdAmount || !tokenPrice || !maxDecimals)
24
38
  return "0";
25
- const amount = new BigNumber(usdAmount);
26
- const price = new BigNumber(tokenPrice);
39
+ const amount = new BigNumber(cleanAmount(usdAmount));
40
+ const price = new BigNumber(cleanAmount(tokenPrice));
27
41
  return amount.dividedBy(price).decimalPlaces(maxDecimals).toString();
28
42
  }
29
43
  export const calculateTotal24hChange = (tokensWithBalance, totalUSDAmount) => {
@@ -1 +1 @@
1
- {"version":3,"file":"priceService.js","sourceRoot":"","sources":["../../../src/services/internal/priceService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB,CACrC,WAA4B,EAC5B,UAA2B,EAC3B,cAAsB,CAAC;IAEvB,IAAI,CAAC,WAAW,IAAI,CAAC,UAAU;QAAE,OAAO,EAAE,CAAC;IAC3C,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,WAAW,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAG,IAAI,SAAS,CAAC,UAAU,CAAC,CAAC;IACxC,OAAO,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,CAAC;AAC1E,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CACrC,SAA0B,EAC1B,UAA2B,EAC3B,WAAmB;IAEnB,IAAI,CAAC,SAAS,IAAI,CAAC,UAAU,IAAI,CAAC,WAAW;QAAE,OAAO,GAAG,CAAC;IAC1D,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,SAAS,CAAC,CAAC;IACxC,MAAM,KAAK,GAAG,IAAI,SAAS,CAAC,UAAU,CAAC,CAAC;IAExC,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,CAAC;AACvE,CAAC;AAQD,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,iBAAqC,EACrC,cAA+B,EACvB,EAAE;IACV,IAAI,iBAAiB,GAAG,CAAC,CAAC;IAE1B,KAAK,MAAM,KAAK,IAAI,iBAAiB,EAAE;QACrC,MAAM,YAAY,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC/C,MAAM,aAAa,GAAG,YAAY,GAAG,KAAK,CAAC,QAAQ,CAAC;QACpD,MAAM,cAAc,GAClB,CAAC,aAAa,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,GAAG,KAAK,CAAC,cAAc,CAAC;QAClE,iBAAiB,IAAI,cAAc,CAAC;KACrC;IAED,OAAO,iBAAiB,CAAC;AAC3B,CAAC,CAAC"}
1
+ {"version":3,"file":"priceService.js","sourceRoot":"","sources":["../../../src/services/internal/priceService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,MAAuB;IACjD,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;IACzD,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;AAClC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB,CACrC,WAA4B,EAC5B,UAA2B,EAC3B,cAAsB,CAAC;IAEvB,IAAI,CAAC,WAAW,IAAI,CAAC,UAAU;QAAE,OAAO,EAAE,CAAC;IAC3C,IAAI;QACF,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC;QACvD,MAAM,KAAK,GAAG,IAAI,SAAS,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC;QACrD,OAAO,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,CAAC;KACzE;IAAC,MAAM;QACN,OAAO,EAAE,CAAC;KACX;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CACrC,SAA0B,EAC1B,UAA2B,EAC3B,WAAmB;IAEnB,IAAI,CAAC,SAAS,IAAI,CAAC,UAAU,IAAI,CAAC,WAAW;QAAE,OAAO,GAAG,CAAC;IAC1D,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC;IACrD,MAAM,KAAK,GAAG,IAAI,SAAS,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC;IAErD,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,CAAC;AACvE,CAAC;AAQD,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,iBAAqC,EACrC,cAA+B,EACvB,EAAE;IACV,IAAI,iBAAiB,GAAG,CAAC,CAAC;IAE1B,KAAK,MAAM,KAAK,IAAI,iBAAiB,EAAE;QACrC,MAAM,YAAY,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC/C,MAAM,aAAa,GAAG,YAAY,GAAG,KAAK,CAAC,QAAQ,CAAC;QACpD,MAAM,cAAc,GAClB,CAAC,aAAa,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,GAAG,KAAK,CAAC,cAAc,CAAC;QAClE,iBAAiB,IAAI,cAAc,CAAC;KACrC;IAED,OAAO,iBAAiB,CAAC;AAC3B,CAAC,CAAC"}
@@ -0,0 +1,39 @@
1
+ import { Squid } from "@0xsquid/sdk";
2
+ import { ChainData, RouteResponse } from "@0xsquid/squid-types";
3
+ import { Connection } from "@solana/web3.js";
4
+ import { ISolanaContextData } from "../../core/providers/SolanaProvider";
5
+ import { SolanaWallet } from "../../core/types/wallet";
6
+ import { SolanaWalletAdapter } from "../../hooks/solana/useSolana";
7
+ export declare const connectSolanaWallet: (wallet: SolanaWallet, baseChain: ChainData | undefined, { connectSolana }: Pick<ISolanaContextData, "connectSolana" | "wallet">) => Promise<{
8
+ wallet: SolanaWallet;
9
+ address: string;
10
+ } | null>;
11
+ /**
12
+ * Execute a Solana swap transaction
13
+ * This will be used for the swap flow - Using Jupiter Dex under the hood
14
+ */
15
+ export declare const executeSolanaSwap: ({ route, squid, solanaSigner, }: {
16
+ route: RouteResponse["route"];
17
+ squid?: Squid | undefined;
18
+ solanaSigner: SolanaWalletAdapter;
19
+ connection: Connection;
20
+ sourceUserAddress: string;
21
+ }) => Promise<string>;
22
+ /**
23
+ * Execute a Solana transfer transaction
24
+ * This will be used for the deposit flow
25
+ */
26
+ export declare const executeSolanaTransfer: ({ amount, target, solanaSigner, connection, }: {
27
+ amount: number | bigint;
28
+ target?: string | undefined;
29
+ solanaSigner: SolanaWalletAdapter;
30
+ connection: Connection;
31
+ }) => Promise<string>;
32
+ export declare const isSolanaDirectTransfer: ({ fromChain, route, }: {
33
+ fromChain?: ChainData | undefined;
34
+ route?: {
35
+ estimate: import("@0xsquid/squid-types").Estimate;
36
+ transactionRequest?: import("@0xsquid/squid-types").SquidData | undefined;
37
+ params: import("@0xsquid/squid-types").RouteRequest;
38
+ } | undefined;
39
+ }) => boolean;
@@ -0,0 +1,71 @@
1
+ import { ChainType } from "@0xsquid/squid-types";
2
+ import { PublicKey, SystemProgram, Transaction, } from "@solana/web3.js";
3
+ export const connectSolanaWallet = async (wallet, baseChain, { connectSolana }) => {
4
+ if (!baseChain) {
5
+ return null;
6
+ }
7
+ const address = await connectSolana?.mutateAsync({
8
+ chain: baseChain,
9
+ wallet,
10
+ });
11
+ if (address) {
12
+ return { wallet, address };
13
+ }
14
+ return null;
15
+ };
16
+ /**
17
+ * Execute a Solana swap transaction
18
+ * This will be used for the swap flow - Using Jupiter Dex under the hood
19
+ */
20
+ export const executeSolanaSwap = async ({ route, squid, solanaSigner, }) => {
21
+ if (!route?.transactionRequest?.data || !squid) {
22
+ throw new Error("Invalid parameters");
23
+ }
24
+ if (!solanaSigner) {
25
+ throw new Error("Solana signer not found");
26
+ }
27
+ const signature = (await squid.executeRoute({
28
+ signer: solanaSigner,
29
+ route,
30
+ }));
31
+ return signature.tx;
32
+ };
33
+ /**
34
+ * Execute a Solana transfer transaction
35
+ * This will be used for the deposit flow
36
+ */
37
+ export const executeSolanaTransfer = async ({ amount, target, solanaSigner, connection, }) => {
38
+ if (!solanaSigner) {
39
+ throw new Error("Solana signer not found");
40
+ }
41
+ if (!solanaSigner.publicKey) {
42
+ throw new Error("Signer public key not found");
43
+ }
44
+ if (!target) {
45
+ throw new Error("Target address is required");
46
+ }
47
+ // Create SOL transfer transaction
48
+ const transaction = new Transaction().add(SystemProgram.transfer({
49
+ fromPubkey: solanaSigner.publicKey,
50
+ toPubkey: new PublicKey(target),
51
+ lamports: amount,
52
+ }));
53
+ // Get recent blockhash for transaction validity window
54
+ const latestBlockhash = await connection.getLatestBlockhash();
55
+ if (!solanaSigner.publicKey) {
56
+ throw new Error("Signer public key not found");
57
+ }
58
+ // Set transaction properties required for processing
59
+ transaction.recentBlockhash = latestBlockhash.blockhash;
60
+ transaction.feePayer = solanaSigner.publicKey;
61
+ // Sign and broadcast transaction
62
+ const { signature } = await solanaSigner.signAndSendTransaction(transaction);
63
+ // Wait for transaction confirmation
64
+ await connection.confirmTransaction(signature);
65
+ return signature;
66
+ };
67
+ export const isSolanaDirectTransfer = ({ fromChain, route, }) => {
68
+ return (fromChain?.chainType === ChainType.SOLANA &&
69
+ !route?.transactionRequest?.data);
70
+ };
71
+ //# sourceMappingURL=solanaService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"solanaService.js","sourceRoot":"","sources":["../../../src/services/internal/solanaService.ts"],"names":[],"mappings":"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"}
@@ -9,12 +9,12 @@ export declare const getAxelarExplorerTxUrl: (urlPrefix: string | undefined, rou
9
9
  export declare const getSourceExplorerTxUrl: (chain: ChainData | undefined, txID: string) => string | undefined;
10
10
  export declare const getMainExplorerUrl: (transaction?: TransactionParams) => any;
11
11
  /**
12
- * A CCTP Transaction is one that is not using Axelar, but using Circle Mint & Burn mechanism
13
- * Squid API is using a different status endpoint to track status of CCTP transactions
12
+ * Some routes have special bridges, like CCTP or Chainflip
13
+ * Squid API is using a different status endpoint to track status of these bridges
14
14
  * @param transaction
15
15
  * @returns
16
16
  */
17
- export declare const isCCTPBridge: (estimate?: Estimate) => boolean;
17
+ export declare const getBridgeType: (estimate?: Estimate) => string | undefined;
18
18
  export declare const formatDistance: (date: number | Date, baseDate: number | Date, options?: {
19
19
  includeSeconds?: boolean | undefined;
20
20
  addSuffix?: boolean | undefined;
@@ -51,10 +51,10 @@ export declare const formatTxForStorage: (tx: SimplifiedTransactionHistory) => {
51
51
  nonce?: number | undefined;
52
52
  routeType: string | undefined;
53
53
  sourceTxExplorerUrl?: string | undefined;
54
- isCCTP?: boolean | undefined;
54
+ bridgeType?: string | undefined;
55
55
  };
56
56
  export declare const fetchTransactionStatus: ({ transaction, integratorId, currentRequestId, apiUrl, }: {
57
- transaction?: Pick<SimplifiedTransactionHistory, "transactionId" | "status" | "fromChain" | "toChain" | "isCCTP"> | undefined;
57
+ transaction?: Pick<SimplifiedTransactionHistory, "transactionId" | "status" | "fromChain" | "toChain" | "bridgeType"> | undefined;
58
58
  integratorId: string;
59
59
  currentRequestId?: string | undefined;
60
60
  apiUrl: string;
@@ -1,3 +1,4 @@
1
+ import { BridgeProvider } from "@0xsquid/squid-types";
1
2
  import axios from "axios";
2
3
  import { TransactionType } from "../../core/types/transaction";
3
4
  import { getQueryHeaders } from "./apiService";
@@ -62,14 +63,22 @@ export const getMainExplorerUrl = (transaction) => {
62
63
  return undefined;
63
64
  };
64
65
  /**
65
- * A CCTP Transaction is one that is not using Axelar, but using Circle Mint & Burn mechanism
66
- * Squid API is using a different status endpoint to track status of CCTP transactions
66
+ * Some routes have special bridges, like CCTP or Chainflip
67
+ * Squid API is using a different status endpoint to track status of these bridges
67
68
  * @param transaction
68
69
  * @returns
69
70
  */
70
- export const isCCTPBridge = (estimate) => {
71
- const actions = estimate?.actions;
72
- return (actions?.some((action) => action.provider?.toLowerCase().includes("cctp")) ?? false);
71
+ export const getBridgeType = (estimate) => {
72
+ if (!estimate?.actions)
73
+ return;
74
+ const allProviders = Object.values(BridgeProvider);
75
+ for (const action of estimate.actions) {
76
+ const provider = action.provider;
77
+ if (allProviders.includes(provider)) {
78
+ return provider.toLowerCase();
79
+ }
80
+ }
81
+ return;
73
82
  };
74
83
  export const formatDistance = (date, baseDate, options) => {
75
84
  const { includeSeconds = false, addSuffix = false, locale = { locale: "en-US" }, } = options || {};
@@ -166,7 +175,7 @@ export const fetchTransactionStatus = async ({ transaction, integratorId, curren
166
175
  transactionId: transaction?.transactionId,
167
176
  fromChainId: transaction?.fromChain,
168
177
  toChainId: transaction?.toChain,
169
- ...(transaction?.isCCTP ? { bridgeType: "cctp" } : {}),
178
+ bridgeType: transaction?.bridgeType,
170
179
  },
171
180
  headers: getQueryHeaders(integratorId, currentRequestId ?? ""),
172
181
  });
@@ -1 +1 @@
1
- {"version":3,"file":"transactionService.js","sourceRoot":"","sources":["../../../src/services/internal/transactionService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transactionService.js","sourceRoot":"","sources":["../../../src/services/internal/transactionService.ts"],"names":[],"mappings":"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"}
@@ -1,26 +1,16 @@
1
1
  import type { ChainData, Token } from "@0xsquid/squid-types";
2
2
  import { ChainType } from "@0xsquid/squid-types";
3
- import type { ChainInfo, Keplr } from "@keplr-wallet/types";
4
- import { Chain } from "@wagmi/core/chains";
5
- import { SigningCosmWasmClient } from "@cosmjs/cosmwasm-stargate";
6
- import { OfflineSigner } from "@cosmjs/proto-signing";
7
- import { SigningStargateClient } from "@cosmjs/stargate";
3
+ import type { Keplr } from "@keplr-wallet/types";
8
4
  import { Connector } from "@wagmi/core";
5
+ import { Chain } from "@wagmi/core/chains";
9
6
  import { TokenWithBalance } from "../../core/types/tokens";
10
- import type { CosmosWallet, EnsSearchResult, EvmWallet, Wallet } from "../../core/types/wallet";
7
+ import type { EnsSearchResult, Wallet } from "../../core/types/wallet";
11
8
  type FormatHashParams = {
12
9
  hash?: string;
13
10
  chainType?: ChainType;
14
11
  };
15
12
  export declare const formatHash: ({ chainType, hash }: FormatHashParams) => string;
16
- export declare const isCosmosAddressValid: (chainPrefix: string, address: string) => boolean;
17
13
  export declare const isWalletAddressValid: (chainData?: ChainData, address?: string) => boolean;
18
- export declare const getCosmosSigningClient: ({ chainRpc, cosmosSigner, defaultSigningClient, }: {
19
- chainRpc: string;
20
- cosmosSigner: OfflineSigner | null;
21
- defaultSigningClient: typeof SigningStargateClient | typeof SigningCosmWasmClient;
22
- }) => Promise<SigningCosmWasmClient | SigningStargateClient | null>;
23
- export declare const getCosmosChainInfosObject: (chain: ChainData) => ChainInfo;
24
14
  export declare const redirectExtensionStoreIfNotInstalled: (wallet: Wallet) => void;
25
15
  /**
26
16
  * Get the value of an object property using a string path
@@ -45,20 +35,8 @@ export declare const accessProperty: (object: Record<string, any>, path: string)
45
35
  * @returns Cosmos address
46
36
  */
47
37
  export declare const getCosmosKey: (chainId?: string, keplrTypeWallet?: Keplr) => Promise<string | undefined>;
48
- /**
49
- * Get the cosmos address for a given chain
50
- * This might pop up a keplr modal to approve the chain
51
- * @param chainId
52
- * @param keplrTypeWallet
53
- * @returns Cosmos address
54
- */
55
- export declare const getAllKeysForSupportedCosmosChains: (chainIds: string[], keplrTypeWallet: Keplr | undefined) => Promise<{
56
- address: string;
57
- chainId: string;
58
- }[]>;
59
38
  export declare const getWallets: (window: Window | undefined) => Wallet[];
60
39
  export declare const metamaskIcon: string | undefined;
61
- export declare const EvmNetworkNotSupportedErrorCode = 4902;
62
40
  /**
63
41
  * Sort order:
64
42
  * 1. Connected wallets
@@ -79,10 +57,6 @@ export declare function sortWallets(a: Pick<Wallet, "connectorId" | "isInstalled
79
57
  export declare function areSameAddress(address1?: string, address2?: string): boolean;
80
58
  export declare function sortAddressBook(a: EnsSearchResult, b: EnsSearchResult, selectedAddress?: string): 1 | 0 | -1;
81
59
  export declare const calculateTotalUsdBalanceUSD: (tokens: Pick<TokenWithBalance, "balance" | "usdPrice">[]) => string;
82
- export declare function addEthereumChain({ chain, provider, }: {
83
- chain: ChainData;
84
- provider: any;
85
- }): Promise<any>;
86
60
  export declare function addTokenToWallet({ token: { address, decimals, symbol, logoURI }, provider, }: {
87
61
  token: Pick<Token, "address" | "symbol" | "decimals" | "logoURI">;
88
62
  provider: any;
@@ -104,30 +78,4 @@ export declare const findWalletByWagmiConnector: (wallets: Wallet[], connector:
104
78
  * @returns
105
79
  */
106
80
  export declare const findWalletByLabel: (wallets: Wallet[], label: string) => Wallet | undefined;
107
- export declare const connectEvmWallet: (wallet: EvmWallet, { connectEvmAsync, activeEvmConnector, }: {
108
- connectEvmAsync: any;
109
- activeEvmConnector: any;
110
- }) => Promise<{
111
- wallet: EvmWallet;
112
- address: any;
113
- } | null>;
114
- export declare const connectCosmosWallet: (wallet: CosmosWallet, baseChain: ChainData, { connectCosmos, cosmosConnectedWallet, }: {
115
- connectCosmos: any;
116
- cosmosConnectedWallet: any;
117
- }) => Promise<{
118
- wallet: CosmosWallet;
119
- address: any;
120
- } | null>;
121
- export declare const connectWalletByType: (wallet: Wallet, baseChain: ChainData, context: {
122
- connectEvmAsync: any;
123
- activeEvmConnector: any;
124
- connectCosmos: any;
125
- cosmosConnectedWallet: any;
126
- }) => Promise<{
127
- wallet: EvmWallet;
128
- address: any;
129
- } | {
130
- wallet: CosmosWallet;
131
- address: any;
132
- } | null>;
133
81
  export {};