@0xsquid/react-hooks 4.0.4 → 5.0.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 (135) hide show
  1. package/dist/core/connectors/bitcoin/errors/index.d.ts +12 -0
  2. package/dist/core/connectors/bitcoin/errors/index.js +22 -0
  3. package/dist/core/connectors/bitcoin/errors/index.js.map +1 -0
  4. package/dist/core/connectors/bitcoin/helpers.d.ts +5 -0
  5. package/dist/core/connectors/bitcoin/helpers.js +86 -0
  6. package/dist/core/connectors/bitcoin/helpers.js.map +1 -0
  7. package/dist/core/connectors/bitcoin/index.d.ts +9 -0
  8. package/dist/core/connectors/bitcoin/index.js +2 -0
  9. package/dist/core/connectors/bitcoin/index.js.map +1 -0
  10. package/dist/core/connectors/bitcoin/wallets/index.d.ts +2 -0
  11. package/dist/core/connectors/bitcoin/wallets/index.js +3 -0
  12. package/dist/core/connectors/bitcoin/wallets/index.js.map +1 -0
  13. package/dist/core/connectors/bitcoin/wallets/phantom.d.ts +27 -0
  14. package/dist/core/connectors/bitcoin/wallets/phantom.js +56 -0
  15. package/dist/core/connectors/bitcoin/wallets/phantom.js.map +1 -0
  16. package/dist/core/connectors/bitcoin/wallets/unisat.d.ts +15 -0
  17. package/dist/core/connectors/bitcoin/wallets/unisat.js +28 -0
  18. package/dist/core/connectors/bitcoin/wallets/unisat.js.map +1 -0
  19. package/dist/core/constants.d.ts +20 -0
  20. package/dist/core/constants.js +37 -0
  21. package/dist/core/constants.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/swap.d.ts +1 -0
  32. package/dist/core/types/transaction.d.ts +2 -0
  33. package/dist/core/types/transaction.js +1 -0
  34. package/dist/core/types/transaction.js.map +1 -1
  35. package/dist/core/types/wallet.d.ts +11 -2
  36. package/dist/core/types/wallet.js +3 -0
  37. package/dist/core/types/wallet.js.map +1 -1
  38. package/dist/core/wallets.js +50 -1
  39. package/dist/core/wallets.js.map +1 -1
  40. package/dist/hooks/cosmos/useCosmos.js +2 -1
  41. package/dist/hooks/cosmos/useCosmos.js.map +1 -1
  42. package/dist/hooks/cosmos/useCosmosForChain.js +1 -2
  43. package/dist/hooks/cosmos/useCosmosForChain.js.map +1 -1
  44. package/dist/hooks/index.d.ts +2 -0
  45. package/dist/hooks/index.js +2 -0
  46. package/dist/hooks/index.js.map +1 -1
  47. package/dist/hooks/solana/useSolana.d.ts +27 -0
  48. package/dist/hooks/solana/useSolana.js +86 -0
  49. package/dist/hooks/solana/useSolana.js.map +1 -0
  50. package/dist/hooks/store/useHistoryStore.d.ts +2 -1
  51. package/dist/hooks/store/useHistoryStore.js.map +1 -1
  52. package/dist/hooks/store/useWalletStore.js +1 -0
  53. package/dist/hooks/store/useWalletStore.js.map +1 -1
  54. package/dist/hooks/swap/useDepositAddress.d.ts +19 -0
  55. package/dist/hooks/swap/useDepositAddress.js +86 -0
  56. package/dist/hooks/swap/useDepositAddress.js.map +1 -0
  57. package/dist/hooks/swap/useSwap.d.ts +1 -1
  58. package/dist/hooks/swap/useSwap.js +9 -23
  59. package/dist/hooks/swap/useSwap.js.map +1 -1
  60. package/dist/hooks/tokens/useAllConnectedWalletBalances.js +26 -1
  61. package/dist/hooks/tokens/useAllConnectedWalletBalances.js.map +1 -1
  62. package/dist/hooks/tokens/useAllTokensWithBalanceForChainType.js +16 -5
  63. package/dist/hooks/tokens/useAllTokensWithBalanceForChainType.js.map +1 -1
  64. package/dist/hooks/tokens/useBalance.d.ts +122 -1
  65. package/dist/hooks/tokens/useBalance.js +25 -0
  66. package/dist/hooks/tokens/useBalance.js.map +1 -1
  67. package/dist/hooks/tokens/useMultiChainBalance.js +24 -7
  68. package/dist/hooks/tokens/useMultiChainBalance.js.map +1 -1
  69. package/dist/hooks/tokens/useNativeBalance.d.ts +11 -1
  70. package/dist/hooks/tokens/useNativeBalance.js +81 -11
  71. package/dist/hooks/tokens/useNativeBalance.js.map +1 -1
  72. package/dist/hooks/tokens/useNativeTokenForChain.d.ts +4 -0
  73. package/dist/hooks/tokens/useNativeTokenForChain.js +26 -0
  74. package/dist/hooks/tokens/useNativeTokenForChain.js.map +1 -0
  75. package/dist/hooks/tokens/useSquidTokens.d.ts +3 -1
  76. package/dist/hooks/tokens/useSquidTokens.js +10 -2
  77. package/dist/hooks/tokens/useSquidTokens.js.map +1 -1
  78. package/dist/hooks/transaction/useAllTransactionsStatus.js +12 -4
  79. package/dist/hooks/transaction/useAllTransactionsStatus.js.map +1 -1
  80. package/dist/hooks/transaction/useEstimate.d.ts +2 -2
  81. package/dist/hooks/transaction/useExecuteTransaction.d.ts +2 -2
  82. package/dist/hooks/transaction/useExecuteTransaction.js +191 -20
  83. package/dist/hooks/transaction/useExecuteTransaction.js.map +1 -1
  84. package/dist/hooks/transaction/useGetRoute.d.ts +13 -9
  85. package/dist/hooks/transaction/useGetRoute.js +27 -9
  86. package/dist/hooks/transaction/useGetRoute.js.map +1 -1
  87. package/dist/hooks/transaction/useSingleTransaction.d.ts +1 -1
  88. package/dist/hooks/transaction/useSingleTransaction.js.map +1 -1
  89. package/dist/hooks/user/useHistory.js +4 -3
  90. package/dist/hooks/user/useHistory.js.map +1 -1
  91. package/dist/hooks/wallet/useMultiChainWallet.js +34 -11
  92. package/dist/hooks/wallet/useMultiChainWallet.js.map +1 -1
  93. package/dist/hooks/wallet/useSigner.d.ts +4 -0
  94. package/dist/hooks/wallet/useSigner.js +22 -0
  95. package/dist/hooks/wallet/useSigner.js.map +1 -1
  96. package/dist/hooks/wallet/useWallet.js +44 -12
  97. package/dist/hooks/wallet/useWallet.js.map +1 -1
  98. package/dist/provider/index.js +3 -1
  99. package/dist/provider/index.js.map +1 -1
  100. package/dist/services/external/rpcService.d.ts +9 -1
  101. package/dist/services/external/rpcService.js +119 -1
  102. package/dist/services/external/rpcService.js.map +1 -1
  103. package/dist/services/index.d.ts +3 -0
  104. package/dist/services/index.js +3 -0
  105. package/dist/services/index.js.map +1 -1
  106. package/dist/services/internal/assetsService.d.ts +7 -12
  107. package/dist/services/internal/assetsService.js +14 -11
  108. package/dist/services/internal/assetsService.js.map +1 -1
  109. package/dist/services/internal/bitcoinService.d.ts +6 -0
  110. package/dist/services/internal/bitcoinService.js +43 -0
  111. package/dist/services/internal/bitcoinService.js.map +1 -0
  112. package/dist/services/internal/cosmosService.d.ts +37 -0
  113. package/dist/services/internal/cosmosService.js +97 -0
  114. package/dist/services/internal/cosmosService.js.map +1 -0
  115. package/dist/services/internal/estimateService.d.ts +3 -3
  116. package/dist/services/internal/estimateService.js +4 -4
  117. package/dist/services/internal/estimateService.js.map +1 -1
  118. package/dist/services/internal/evmService.d.ts +16 -0
  119. package/dist/services/internal/evmService.js +40 -0
  120. package/dist/services/internal/evmService.js.map +1 -0
  121. package/dist/services/internal/solanaService.d.ts +41 -0
  122. package/dist/services/internal/solanaService.js +82 -0
  123. package/dist/services/internal/solanaService.js.map +1 -0
  124. package/dist/services/internal/transactionService.d.ts +7 -5
  125. package/dist/services/internal/transactionService.js +20 -8
  126. package/dist/services/internal/transactionService.js.map +1 -1
  127. package/dist/services/internal/walletService.d.ts +3 -55
  128. package/dist/services/internal/walletService.js +19 -151
  129. package/dist/services/internal/walletService.js.map +1 -1
  130. package/dist/tests/estimateService.test.js.map +1 -1
  131. package/dist/tests/swapConfig.test.js +55 -18
  132. package/dist/tests/swapConfig.test.js.map +1 -1
  133. package/dist/tests/walletService.test.js +0 -1
  134. package/dist/tests/walletService.test.js.map +1 -1
  135. package/package.json +13 -9
@@ -0,0 +1,12 @@
1
+ export declare class BitcoinConnectorError extends Error {
2
+ constructor(message: string);
3
+ }
4
+ export declare class BitcoinConnectorProviderNotFoundError extends BitcoinConnectorError {
5
+ constructor(providerName: string);
6
+ }
7
+ export declare class BitcoinConnectorTransactionFailedError extends BitcoinConnectorError {
8
+ constructor();
9
+ }
10
+ export declare class BitcoinConnectorInvalidAccountError extends BitcoinConnectorError {
11
+ constructor();
12
+ }
@@ -0,0 +1,22 @@
1
+ export class BitcoinConnectorError extends Error {
2
+ constructor(message) {
3
+ super(message);
4
+ this.name = "BitcoinConnectorError";
5
+ }
6
+ }
7
+ export class BitcoinConnectorProviderNotFoundError extends BitcoinConnectorError {
8
+ constructor(providerName) {
9
+ super(`Bitcoin provider ${providerName} not found`);
10
+ }
11
+ }
12
+ export class BitcoinConnectorTransactionFailedError extends BitcoinConnectorError {
13
+ constructor() {
14
+ super("Bitcoin transaction failed");
15
+ }
16
+ }
17
+ export class BitcoinConnectorInvalidAccountError extends BitcoinConnectorError {
18
+ constructor() {
19
+ super("Bitcoin account is invalid");
20
+ }
21
+ }
22
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/core/connectors/bitcoin/errors/index.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAC9C,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACtC,CAAC;CACF;AAED,MAAM,OAAO,qCAAsC,SAAQ,qBAAqB;IAC9E,YAAY,YAAoB;QAC9B,KAAK,CAAC,oBAAoB,YAAY,YAAY,CAAC,CAAC;IACtD,CAAC;CACF;AAED,MAAM,OAAO,sCAAuC,SAAQ,qBAAqB;IAC/E;QACE,KAAK,CAAC,4BAA4B,CAAC,CAAC;IACtC,CAAC;CACF;AAED,MAAM,OAAO,mCAAoC,SAAQ,qBAAqB;IAC5E;QACE,KAAK,CAAC,4BAA4B,CAAC,CAAC;IACtC,CAAC;CACF"}
@@ -0,0 +1,5 @@
1
+ export declare const fromHexString: (hexString: string) => Uint8Array;
2
+ export declare function createSendBtcPsbt(senderAddress: string, recipientAddress: string, amount: number): Promise<{
3
+ psbtHex: string;
4
+ }>;
5
+ export declare function broadcastTx(txHex: string): Promise<string>;
@@ -0,0 +1,86 @@
1
+ import * as ecc from "@bitcoinerlab/secp256k1";
2
+ import axios from "axios";
3
+ import * as bitcoin from "bitcoinjs-lib";
4
+ bitcoin.initEccLib(ecc);
5
+ const network = bitcoin.networks.bitcoin;
6
+ export const fromHexString = (hexString) => {
7
+ const matches = hexString.match(/.{1,2}/g);
8
+ if (!matches) {
9
+ throw new Error("Invalid hex string");
10
+ }
11
+ return Uint8Array.from(matches.map((byte) => parseInt(byte, 16)));
12
+ };
13
+ export async function createSendBtcPsbt(senderAddress, recipientAddress, amount) {
14
+ const feeRate = await getFeeRate();
15
+ const utxos = await getAddressUtxos(senderAddress);
16
+ if (!utxos) {
17
+ throw new Error("No UTXOs found");
18
+ }
19
+ // Sort UTXOs by value in descending order
20
+ // This ensures that we select the UTXOs with the highest value first
21
+ // to optimize the transaction size
22
+ const sortedUtxos = utxos.sort((a, b) => b.value - a.value);
23
+ // Sum up the values of the UTXOs up to the desired amount
24
+ let inputAmount = 0;
25
+ const inputs = [];
26
+ for (const utxo of sortedUtxos) {
27
+ inputAmount += utxo.value;
28
+ inputs.push(utxo);
29
+ if (inputAmount >= amount)
30
+ break;
31
+ }
32
+ if (inputAmount < amount)
33
+ throw new Error("Insufficient balance");
34
+ const outputsCount = 2; // Only two outputs, recipient and change outputs
35
+ // Calculate fee based on the byte size of the total inputs and outputs
36
+ // Approximate transaction size = (inputs * 150 bytes + outputs * 34 bytes + 10 bytes overhead)
37
+ const transactionSize = inputs.length * 150 + outputsCount * 34 + 10;
38
+ const fee = feeRate * transactionSize;
39
+ const satsNeeded = fee + amount;
40
+ const psbt = new bitcoin.Psbt({ network });
41
+ let amountGathered = 0;
42
+ for (const utxo of sortedUtxos) {
43
+ const { txid, vout, value } = utxo;
44
+ const script = bitcoin.address.toOutputScript(senderAddress, network);
45
+ psbt.addInput({
46
+ hash: txid,
47
+ index: vout,
48
+ witnessUtxo: {
49
+ script,
50
+ value: BigInt(value),
51
+ },
52
+ });
53
+ amountGathered += value;
54
+ if (amountGathered >= satsNeeded) {
55
+ break;
56
+ }
57
+ }
58
+ psbt.addOutput({
59
+ address: recipientAddress,
60
+ value: BigInt(amount),
61
+ });
62
+ if (amountGathered > satsNeeded) {
63
+ psbt.addOutput({
64
+ address: senderAddress,
65
+ value: BigInt(amountGathered - satsNeeded),
66
+ });
67
+ }
68
+ return {
69
+ psbtHex: psbt.toHex(),
70
+ };
71
+ }
72
+ export async function broadcastTx(txHex) {
73
+ return axios
74
+ .post(`https://mempool.space/api/tx`, txHex)
75
+ .then((res) => res.data);
76
+ }
77
+ async function getAddressUtxos(address) {
78
+ return axios
79
+ .get(`https://mempool.space/api/address/${address}/utxo`)
80
+ .then((response) => response.data);
81
+ }
82
+ async function getFeeRate() {
83
+ const response = await axios.get("https://mempool.space/api/v1/fees/recommended");
84
+ return response.data.halfHourFee;
85
+ }
86
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../src/core/connectors/bitcoin/helpers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export * from "./wallets";
2
+ export interface BitcoinConnector {
3
+ sendBTC(to: string, amount: number): Promise<{
4
+ txHash: string;
5
+ }>;
6
+ requestAccount(): Promise<{
7
+ address: string;
8
+ }>;
9
+ }
@@ -0,0 +1,2 @@
1
+ export * from "./wallets";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/connectors/bitcoin/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { PhantomConnector } from "./phantom";
2
+ export { UnisatConnector } from "./unisat";
@@ -0,0 +1,3 @@
1
+ export { PhantomConnector } from "./phantom";
2
+ export { UnisatConnector } from "./unisat";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/core/connectors/bitcoin/wallets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,27 @@
1
+ import { BitcoinConnector } from "..";
2
+ export interface PhantomBitcoinAccount {
3
+ address: string;
4
+ publicKey: string;
5
+ addressType: "p2tr" | "p2wpkh" | "p2sh" | "p2pkh";
6
+ purpose: "payment" | "ordinals";
7
+ }
8
+ interface PhantomProvider {
9
+ requestAccounts: () => Promise<PhantomBitcoinAccount[]>;
10
+ signPSBT: (psbt: Uint8Array, options: {
11
+ inputsToSign: {
12
+ address: string;
13
+ signingIndexes: number[];
14
+ }[];
15
+ }) => Promise<Uint8Array>;
16
+ }
17
+ export declare class PhantomConnector implements BitcoinConnector {
18
+ get getProvider(): PhantomProvider;
19
+ requestAccount(): Promise<{
20
+ address: string;
21
+ }>;
22
+ sendBTC(to: string, amount: number): Promise<{
23
+ txHash: string;
24
+ }>;
25
+ private signPsbt;
26
+ }
27
+ export {};
@@ -0,0 +1,56 @@
1
+ import * as bitcoin from "bitcoinjs-lib";
2
+ import { BitcoinConnectorInvalidAccountError, BitcoinConnectorProviderNotFoundError, BitcoinConnectorTransactionFailedError, } from "../errors";
3
+ import { broadcastTx, createSendBtcPsbt, fromHexString } from "../helpers";
4
+ const MAINNET = bitcoin.networks.bitcoin;
5
+ export class PhantomConnector {
6
+ get getProvider() {
7
+ const provider = window?.phantom?.bitcoin;
8
+ if (!provider) {
9
+ throw new BitcoinConnectorProviderNotFoundError("Phantom");
10
+ }
11
+ return provider;
12
+ }
13
+ async requestAccount() {
14
+ const phantomAccounts = await this.getProvider.requestAccounts();
15
+ if (!phantomAccounts)
16
+ throw new BitcoinConnectorInvalidAccountError();
17
+ const paymentAccount = phantomAccounts.find((account) => account.purpose === "payment");
18
+ if (typeof paymentAccount?.address !== "string") {
19
+ throw new BitcoinConnectorInvalidAccountError();
20
+ }
21
+ return {
22
+ address: paymentAccount.address,
23
+ };
24
+ }
25
+ async sendBTC(to, amount) {
26
+ const { address } = await this.requestAccount();
27
+ const { psbtHex } = await createSendBtcPsbt(address, to, amount);
28
+ const { txId } = await this.signPsbt(psbtHex);
29
+ if (!txId)
30
+ throw new BitcoinConnectorTransactionFailedError();
31
+ return { txHash: txId };
32
+ }
33
+ async signPsbt(psbtHex) {
34
+ const { address: paymentAddress } = await this.requestAccount();
35
+ const toSignPsbt = bitcoin.Psbt.fromHex(String(psbtHex), {
36
+ network: MAINNET,
37
+ });
38
+ const inputs = toSignPsbt.data.inputs;
39
+ const inputsToSign = [
40
+ {
41
+ // Need to sign each input with the payment address
42
+ address: paymentAddress,
43
+ signingIndexes: inputs.map((_, index) => index),
44
+ },
45
+ ];
46
+ const signedPsbtBytes = await this.getProvider.signPSBT(fromHexString(psbtHex), {
47
+ inputsToSign,
48
+ });
49
+ const signedPsbt = bitcoin.Psbt.fromBuffer(signedPsbtBytes);
50
+ signedPsbt.finalizeAllInputs();
51
+ const tx = signedPsbt.extractTransaction();
52
+ const txId = await broadcastTx(tx.toHex());
53
+ return { txId };
54
+ }
55
+ }
56
+ //# sourceMappingURL=phantom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"phantom.js","sourceRoot":"","sources":["../../../../../src/core/connectors/bitcoin/wallets/phantom.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,eAAe,CAAC;AAEzC,OAAO,EACL,mCAAmC,EACnC,qCAAqC,EACrC,sCAAsC,GACvC,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3E,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;AAsBzC,MAAM,OAAO,gBAAgB;IAC3B,IAAW,WAAW;QACpB,MAAM,QAAQ,GAAI,MAAc,EAAE,OAAO,EAAE,OAAO,CAAC;QAEnD,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,IAAI,qCAAqC,CAAC,SAAS,CAAC,CAAC;SAC5D;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,CAAC;QAEjE,IAAI,CAAC,eAAe;YAAE,MAAM,IAAI,mCAAmC,EAAE,CAAC;QAEtE,MAAM,cAAc,GAAG,eAAe,CAAC,IAAI,CACzC,CAAC,OAA4B,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,CAChE,CAAC;QAEF,IAAI,OAAO,cAAc,EAAE,OAAO,KAAK,QAAQ,EAAE;YAC/C,MAAM,IAAI,mCAAmC,EAAE,CAAC;SACjD;QAED,OAAO;YACL,OAAO,EAAE,cAAc,CAAC,OAAO;SAChC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAU,EAAE,MAAc;QACtC,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAChD,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;QACjE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAE9C,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,sCAAsC,EAAE,CAAC;QAE9D,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAC1B,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,OAAe;QAGpC,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAEhE,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;YACvD,OAAO,EAAE,OAAO;SACjB,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC;QACtC,MAAM,YAAY,GAAG;YACnB;gBACE,mDAAmD;gBACnD,OAAO,EAAE,cAAc;gBACvB,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC;aAChD;SACF,CAAC;QAEF,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CACrD,aAAa,CAAC,OAAO,CAAC,EACtB;YACE,YAAY;SACb,CACF,CAAC;QAEF,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;QAE5D,UAAU,CAAC,iBAAiB,EAAE,CAAC;QAE/B,MAAM,EAAE,GAAG,UAAU,CAAC,kBAAkB,EAAE,CAAC;QAE3C,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC;QAE3C,OAAO,EAAE,IAAI,EAAE,CAAC;IAClB,CAAC;CACF"}
@@ -0,0 +1,15 @@
1
+ import { BitcoinConnector } from "..";
2
+ interface UnisatProvider {
3
+ sendBitcoin: (to: string, amount: number) => Promise<string>;
4
+ requestAccounts: () => Promise<string[]>;
5
+ }
6
+ export declare class UnisatConnector implements BitcoinConnector {
7
+ get getProvider(): UnisatProvider;
8
+ sendBTC(to: string, amount: number): Promise<{
9
+ txHash: string;
10
+ }>;
11
+ requestAccount(): Promise<{
12
+ address: string;
13
+ }>;
14
+ }
15
+ export {};
@@ -0,0 +1,28 @@
1
+ import { BitcoinConnectorInvalidAccountError, BitcoinConnectorProviderNotFoundError, BitcoinConnectorTransactionFailedError, } from "../errors";
2
+ export class UnisatConnector {
3
+ get getProvider() {
4
+ const provider = window?.unisat;
5
+ if (!provider) {
6
+ throw new BitcoinConnectorProviderNotFoundError("Unisat");
7
+ }
8
+ return provider;
9
+ }
10
+ async sendBTC(to, amount) {
11
+ const txHash = await this.getProvider.sendBitcoin(to, amount);
12
+ if (!txHash) {
13
+ throw new BitcoinConnectorTransactionFailedError();
14
+ }
15
+ return { txHash };
16
+ }
17
+ async requestAccount() {
18
+ const accounts = await this.getProvider.requestAccounts();
19
+ const account = accounts[0];
20
+ if (typeof account !== "string") {
21
+ throw new BitcoinConnectorInvalidAccountError();
22
+ }
23
+ return {
24
+ address: account,
25
+ };
26
+ }
27
+ }
28
+ //# sourceMappingURL=unisat.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unisat.js","sourceRoot":"","sources":["../../../../../src/core/connectors/bitcoin/wallets/unisat.ts"],"names":[],"mappings":"AACA,OAAO,EACL,mCAAmC,EACnC,qCAAqC,EACrC,sCAAsC,GACvC,MAAM,WAAW,CAAC;AAOnB,MAAM,OAAO,eAAe;IAC1B,IAAW,WAAW;QACpB,MAAM,QAAQ,GAAI,MAAc,EAAE,MAAM,CAAC;QAEzC,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,IAAI,qCAAqC,CAAC,QAAQ,CAAC,CAAC;SAC3D;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAU,EAAE,MAAc;QACtC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAE9D,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,IAAI,sCAAsC,EAAE,CAAC;SACpD;QAED,OAAO,EAAE,MAAM,EAAE,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,MAAM,QAAQ,GAAa,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,CAAC;QAEpE,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAE5B,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC/B,MAAM,IAAI,mCAAmC,EAAE,CAAC;SACjD;QAED,OAAO;YACL,OAAO,EAAE,OAAO;SACjB,CAAC;IACJ,CAAC;CACF"}
@@ -1,5 +1,8 @@
1
+ import { ChainType } from "@0xsquid/squid-types";
1
2
  import type { AppConfig, SlippageOption } from "./types/config";
3
+ export declare const chainTypeToZeroAddressMap: Record<ChainType, string>;
2
4
  export declare const nativeEvmTokenAddress = "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee";
5
+ export declare const nativeBitcoinTokenAddress = "satoshi";
3
6
  export declare const maxPriceImpact = 30;
4
7
  export declare const limitTradeSizeUsd = 10000000;
5
8
  export declare const defaultSlippage: SlippageOption;
@@ -12,6 +15,7 @@ export declare const subTransparentClass = "tw-bg-opacity-50";
12
15
  export declare const backendVersion = "v2";
13
16
  export declare const internalSquidApiBaseUrl = "https://app.squidrouter.com/api";
14
17
  export declare const TOKEN_PRICE_API_URL = "https://beta.app.squidrouter.com/api/coingecko";
18
+ export declare const SOLANA_RPC_URL = "https://mainnet.helius-rpc.com/?api-key=92cf5e34-f897-4fcc-8c05-23d6a8002a17";
15
19
  export declare const INTEGRATOR_ID = "squid-swap-widget-v2";
16
20
  export declare const CHAIN_RPC_MAPPING: {
17
21
  [key: string]: string;
@@ -37,7 +41,23 @@ export declare const CHAIN_IDS: {
37
41
  mainnet: string;
38
42
  testnet: string;
39
43
  };
44
+ ARBITRUM: {
45
+ mainnet: string;
46
+ testnet: string;
47
+ };
48
+ BITCOIN: {
49
+ mainnet: string;
50
+ testnet: string;
51
+ };
52
+ SOLANA: {
53
+ mainnet: string;
54
+ testnet: string;
55
+ };
40
56
  };
57
+ export declare const SUPPORTED_DESTINATION_CHAINS_FOR_BITCOIN_BRIDGE: Array<{
58
+ chainId: string;
59
+ networkName: string;
60
+ }>;
41
61
  export declare const widgetHeaderSize: {
42
62
  height: number;
43
63
  paddingY: number;
@@ -1,6 +1,18 @@
1
1
  "use client";
2
+ import { ChainType } from "@0xsquid/squid-types";
3
+ import { zeroAddress as evmZeroAddress } from "viem";
2
4
  import { squidApiBaseUrl } from "./externalLinks";
5
+ const btcZeroAddress = "bc1qcdyjau30xhw26h2egcfklwyyyskafhp9x8qtg2";
6
+ const cosmosZeroAddress = "osmo1awrua7e2kj69d7vn5qt5tccrhavmj9xa6y8hhu";
7
+ const solanaZeroAddress = "AuF3k2X5CsXJiXo7YKL5jxDG3gmf9MjaVK8hqt7Kfes1";
8
+ export const chainTypeToZeroAddressMap = {
9
+ [ChainType.EVM]: evmZeroAddress,
10
+ [ChainType.COSMOS]: cosmosZeroAddress,
11
+ [ChainType.BTC]: btcZeroAddress,
12
+ [ChainType.SOLANA]: solanaZeroAddress,
13
+ };
3
14
  export const nativeEvmTokenAddress = "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee";
15
+ export const nativeBitcoinTokenAddress = "satoshi";
4
16
  export const maxPriceImpact = 30;
5
17
  export const limitTradeSizeUsd = 10000000;
6
18
  // by setting slippage to undefined, it's set to "auto"
@@ -14,6 +26,7 @@ export const subTransparentClass = "tw-bg-opacity-50";
14
26
  export const backendVersion = "v2";
15
27
  export const internalSquidApiBaseUrl = "https://app.squidrouter.com/api";
16
28
  export const TOKEN_PRICE_API_URL = `https://beta.app.squidrouter.com/api/coingecko`;
29
+ export const SOLANA_RPC_URL = "https://mainnet.helius-rpc.com/?api-key=92cf5e34-f897-4fcc-8c05-23d6a8002a17";
17
30
  export const INTEGRATOR_ID = "squid-swap-widget-v2";
18
31
  export const CHAIN_RPC_MAPPING = {
19
32
  "137": "https://polygon.llamarpc.com",
@@ -44,7 +57,29 @@ export const CHAIN_IDS = {
44
57
  mainnet: "1",
45
58
  testnet: "5",
46
59
  },
60
+ ARBITRUM: {
61
+ mainnet: "42161",
62
+ testnet: "421613",
63
+ },
64
+ BITCOIN: {
65
+ mainnet: "bitcoin",
66
+ testnet: "bitcoin",
67
+ },
68
+ SOLANA: {
69
+ mainnet: "solana-mainnet-beta",
70
+ testnet: "solana-testnet",
71
+ },
47
72
  };
73
+ export const SUPPORTED_DESTINATION_CHAINS_FOR_BITCOIN_BRIDGE = [
74
+ {
75
+ chainId: CHAIN_IDS.ETHEREUM.mainnet,
76
+ networkName: "Ethereum",
77
+ },
78
+ {
79
+ chainId: CHAIN_IDS.ARBITRUM.mainnet,
80
+ networkName: "Arbitrum",
81
+ },
82
+ ];
48
83
  export const widgetHeaderSize = {
49
84
  height: 60,
50
85
  paddingY: 16,
@@ -68,6 +103,8 @@ export const axelarSuccessStatuses = [
68
103
  "executed",
69
104
  "express_executed",
70
105
  "success",
106
+ // Chainflip
107
+ "COMPLETE",
71
108
  ];
72
109
  export const axelarEndStatuses = [
73
110
  ...axelarSuccessStatuses,
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/core/constants.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAGlD,MAAM,CAAC,MAAM,qBAAqB,GAChC,4CAA4C,CAAC;AAC/C,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAAC;AACjC,MAAM,CAAC,MAAM,iBAAiB,GAAG,QAAQ,CAAC;AAC1C,uDAAuD;AACvD,MAAM,CAAC,MAAM,eAAe,GAAmB,SAAS,CAAC;AACzD,MAAM,CAAC,MAAM,4BAA4B,GAAG,MAAM,CAAC;AACnD,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,CAAC;AAChC,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,CAAC;AAC/B,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,CAAC;AACtC,MAAM,CAAC,MAAM,gBAAgB,GAAG,kBAAkB,CAAC;AACnD,MAAM,CAAC,MAAM,mBAAmB,GAAG,kBAAkB,CAAC;AACtD,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC;AACnC,MAAM,CAAC,MAAM,uBAAuB,GAAG,iCAAiC,CAAC;AACzE,MAAM,CAAC,MAAM,mBAAmB,GAAG,gDAAgD,CAAC;AACpF,MAAM,CAAC,MAAM,aAAa,GAAG,sBAAsB,CAAC;AAEpD,MAAM,CAAC,MAAM,iBAAiB,GAA8B;IAC1D,KAAK,EAAE,8BAA8B;CACtC,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,2DAA2D;IAC3D,6FAA6F;IAC7F,OAAO,EAAE;QACP,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,aAAa;KACvB;IACD,qDAAqD;IACrD,SAAS,EAAE;QACT,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,eAAe;KACzB;IACD,yEAAyE;IACzE,MAAM,EAAE;QACN,OAAO,EAAE,UAAU;QACnB,OAAO,EAAE,UAAU;KACpB;IACD,8BAA8B;IAC9B,OAAO,EAAE;QACP,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,eAAe;KACzB;IACD,QAAQ,EAAE;QACR,OAAO,EAAE,GAAG;QACZ,OAAO,EAAE,GAAG;KACb;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,MAAM,EAAE,EAAE;IACV,QAAQ,EAAE,EAAE;CACb,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAc;IAC5C,YAAY,EAAE,aAAa;IAC3B,QAAQ,EAAE,eAAe;IACzB,MAAM,EAAE,eAAe;IACvB,mBAAmB,EAAE;QACnB,OAAO,EAAE,CAAC;QACV,QAAQ,EAAE,CAAC;KACZ;CACF,CAAC;AAEF,MAAM,CAAN,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,mCAAa,CAAA;IACb,+CAAyB,CAAA;AAC3B,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,QAG7B;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,sBAAsB;IACtB,UAAU;IACV,kBAAkB;IAClB,SAAS;CACV,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,GAAG,qBAAqB;IACxB,uBAAuB;IACvB,OAAO;CACR,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/core/constants.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,3 @@
1
+ export { CHAIN_IDS, SUPPORTED_DESTINATION_CHAINS_FOR_BITCOIN_BRIDGE, chainTypeToZeroAddressMap, } from "./constants";
1
2
  export { CosmosProvider, useCosmosContext } from "./providers/CosmosProvider";
2
3
  export * from "./types";
@@ -1,3 +1,4 @@
1
+ export { CHAIN_IDS, SUPPORTED_DESTINATION_CHAINS_FOR_BITCOIN_BRIDGE, chainTypeToZeroAddressMap, } from "./constants";
1
2
  export { CosmosProvider, useCosmosContext } from "./providers/CosmosProvider";
2
3
  export * from "./types";
3
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9E,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,+CAA+C,EAC/C,yBAAyB,GAC1B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9E,cAAc,SAAS,CAAC"}
@@ -0,0 +1,28 @@
1
+ import { ChainData } from "@0xsquid/squid-types";
2
+ import { Connection } from "@solana/web3.js";
3
+ import { UseMutationResult } from "@tanstack/react-query";
4
+ import React, { ReactNode } from "react";
5
+ import { SolanaWalletAdapter } from "../../hooks/solana/useSolana";
6
+ import { SolanaWallet } from "../types/wallet";
7
+ export interface ConnectSolanaParams {
8
+ chain: ChainData;
9
+ wallet: SolanaWallet;
10
+ }
11
+ export interface ISolanaContextData {
12
+ wallet?: SolanaWallet;
13
+ connectSolana: UseMutationResult<string | undefined, unknown, {
14
+ chain: ChainData;
15
+ wallet?: SolanaWallet;
16
+ }>;
17
+ isConnected: boolean;
18
+ clearData: () => void;
19
+ solanaWalletObject?: SolanaWalletAdapter;
20
+ solanaAddress?: string;
21
+ signer?: SolanaWalletAdapter;
22
+ connection: Connection;
23
+ }
24
+ export declare const SolanaContext: React.Context<ISolanaContextData | undefined>;
25
+ export declare const SolanaProvider: React.FC<{
26
+ children: ReactNode;
27
+ }>;
28
+ export declare const useSolanaContext: () => ISolanaContextData;
@@ -0,0 +1,15 @@
1
+ import React, { createContext, useContext } from "react";
2
+ import { useSolana } from "../../hooks/solana/useSolana";
3
+ export const SolanaContext = createContext(undefined);
4
+ export const SolanaProvider = ({ children, }) => {
5
+ const solanaHook = useSolana();
6
+ return (React.createElement(SolanaContext.Provider, { value: solanaHook }, children));
7
+ };
8
+ export const useSolanaContext = () => {
9
+ const context = useContext(SolanaContext);
10
+ if (!context) {
11
+ throw new Error("useSolanaContext must be used within a SolanaProvider");
12
+ }
13
+ return context;
14
+ };
15
+ //# sourceMappingURL=SolanaProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SolanaProvider.js","sourceRoot":"","sources":["../../../src/core/providers/SolanaProvider.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAa,UAAU,EAAE,MAAM,OAAO,CAAC;AACpE,OAAO,EAAuB,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAuB9E,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CACxC,SAAS,CACV,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAsC,CAAC,EAChE,QAAQ,GACT,EAAE,EAAE;IACH,MAAM,UAAU,GAAG,SAAS,EAAE,CAAC;IAE/B,OAAO,CACL,oBAAC,aAAa,CAAC,QAAQ,IAAC,KAAK,EAAE,UAAU,IACtC,QAAQ,CACc,CAC1B,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAuB,EAAE;IACvD,MAAM,OAAO,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;IAC1C,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;KAC1E;IACD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC"}
@@ -54,7 +54,7 @@ export declare const keys: () => {
54
54
  allTokensBalance: (address: string | undefined, chainType: ChainType | undefined) => (string | undefined)[];
55
55
  allTokensPriceUSDAndBalance: (address?: string) => (string | undefined)[];
56
56
  allConnectedWalletBalances: (addresses?: string[]) => (string[] | QueryKeys | undefined)[];
57
- transaction: (fromChainId: string | undefined, toChainId: string | undefined, toTokenAddress: string | undefined, fromTokenAddress: string | undefined, price: string | undefined, slippage: SlippageOption | undefined, getGasOnDestination: boolean | undefined, sourceUserAddress: string | undefined, degenMode: boolean | undefined, destinationAddress: string | undefined, fallbackAddress: string | undefined) => (string | number | boolean | undefined)[];
57
+ transaction: (fromChainId: string | undefined, toChainId: string | undefined, toTokenAddress: string | undefined, fromTokenAddress: string | undefined, price: string | undefined, slippage: SlippageOption | undefined, getGasOnDestination: boolean | undefined, sourceUserAddress: string | undefined, degenMode: boolean | undefined, destinationAddress: string | undefined, fallbackAddress: string | undefined, quoteOnly: boolean | undefined, fromChainType: ChainType | undefined) => (string | number | boolean | undefined)[];
58
58
  transactionStatus: (currentTransaction?: Pick<SimplifiedTransactionHistory, "transactionId" | "status" | "fromChain" | "toChain" | "fromAddress">) => (string | undefined)[];
59
59
  allTransactionsStatus: (transactions?: Pick<SimplifiedTransactionHistory, "transactionId" | "status" | "fromChain" | "toChain">[]) => string[];
60
60
  transactionStatusRefetcher: (currentTransaction?: TransactionParams) => (string | undefined)[];
@@ -119,7 +119,7 @@ export const keys = () => ({
119
119
  // ============
120
120
  // Transactions
121
121
  // ============
122
- transaction: (fromChainId, toChainId, toTokenAddress, fromTokenAddress, price, slippage, getGasOnDestination, sourceUserAddress, degenMode, destinationAddress, fallbackAddress) => [
122
+ transaction: (fromChainId, toChainId, toTokenAddress, fromTokenAddress, price, slippage, getGasOnDestination, sourceUserAddress, degenMode, destinationAddress, fallbackAddress, quoteOnly, fromChainType) => [
123
123
  ...keys().transactions(),
124
124
  QueryKeys.Transaction,
125
125
  fromChainId,
@@ -133,6 +133,8 @@ export const keys = () => ({
133
133
  degenMode,
134
134
  destinationAddress,
135
135
  fallbackAddress,
136
+ quoteOnly,
137
+ fromChainType,
136
138
  ],
137
139
  transactionStatus: (currentTransaction) => [
138
140
  ...keys().transactions(),
@@ -1 +1 @@
1
- {"version":3,"file":"queries-keys.js","sourceRoot":"","sources":["../../../src/core/queries/queries-keys.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queries-keys.js","sourceRoot":"","sources":["../../../src/core/queries/queries-keys.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ export interface SwapParams {
4
4
  toChainId?: string;
5
5
  fromTokenAddress?: string;
6
6
  toTokenAddress?: string;
7
+ depositRefundAddress?: string;
7
8
  destinationAddress?: FullAddressData;
8
9
  fallbackAddress?: string;
9
10
  }
@@ -28,6 +28,7 @@ export declare enum TransactionStatus {
28
28
  PARTIAL_SUCCESS = "partial_success",
29
29
  NOT_FOUND = "not_found",
30
30
  INITIAL_LOADING = "initialLoading",
31
+ GENERATING_DEPOSIT = "generating_deposit",
31
32
  ERROR = "error",
32
33
  WARNING = "warning",
33
34
  PENDING = "pending",
@@ -38,6 +39,7 @@ export interface TransactionParams {
38
39
  fromChain?: ChainData;
39
40
  toChain?: ChainData;
40
41
  nonce?: number;
42
+ transactionIdForStatus?: string;
41
43
  transactionId: string | undefined;
42
44
  timestamp?: number;
43
45
  sourceStatus?: TransactionStatus;
@@ -30,6 +30,7 @@ export var TransactionStatus;
30
30
  TransactionStatus["NOT_FOUND"] = "not_found";
31
31
  // Unsubmitted Transaction, can be status from wallet
32
32
  TransactionStatus["INITIAL_LOADING"] = "initialLoading";
33
+ TransactionStatus["GENERATING_DEPOSIT"] = "generating_deposit";
33
34
  TransactionStatus["ERROR"] = "error";
34
35
  TransactionStatus["WARNING"] = "warning";
35
36
  TransactionStatus["PENDING"] = "pending";
@@ -1 +1 @@
1
- {"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../../src/core/types/transaction.ts"],"names":[],"mappings":"AAUA,MAAM,CAAN,IAAY,eAKX;AALD,WAAY,eAAe;IACzB,oCAAiB,CAAA;IACjB,8CAA2B,CAAA;IAC3B,8CAA2B,CAAA;IAC3B,wDAAqC,CAAA;AACvC,CAAC,EALW,eAAe,KAAf,eAAe,QAK1B;AAED,MAAM,CAAN,IAAY,wBAaX;AAbD,WAAY,wBAAwB;IAClC,+EAAmD,CAAA;IACnD,yEAA6C,CAAA;IAC7C,iEAAqC,CAAA;IACrC,+EAAmD,CAAA;IACnD,2EAA+C,CAAA;IAC/C,wEAA4C,CAAA;IAC5C,kFAAsD,CAAA;IACtD,mFAAuD,CAAA;IACvD,+DAAmC,CAAA;IACnC,2DAA+B,CAAA;IAC/B,uEAA2C,CAAA;IAC3C,2CAAe,CAAA;AACjB,CAAC,EAbW,wBAAwB,KAAxB,wBAAwB,QAanC;AAED,MAAM,CAAN,IAAY,iBAaX;AAbD,WAAY,iBAAiB;IAC3B,kDAAkD;IAClD,wCAAmB,CAAA;IACnB,4CAAuB,CAAA;IACvB,wCAAmB,CAAA;IACnB,wDAAmC,CAAA;IACnC,4CAAuB,CAAA;IACvB,qDAAqD;IACrD,uDAAkC,CAAA;IAClC,oCAAe,CAAA;IACf,wCAAmB,CAAA;IACnB,wCAAmB,CAAA;IACnB,0CAAqB,CAAA;AACvB,CAAC,EAbW,iBAAiB,KAAjB,iBAAiB,QAa5B"}
1
+ {"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../../src/core/types/transaction.ts"],"names":[],"mappings":"AAUA,MAAM,CAAN,IAAY,eAKX;AALD,WAAY,eAAe;IACzB,oCAAiB,CAAA;IACjB,8CAA2B,CAAA;IAC3B,8CAA2B,CAAA;IAC3B,wDAAqC,CAAA;AACvC,CAAC,EALW,eAAe,KAAf,eAAe,QAK1B;AAED,MAAM,CAAN,IAAY,wBAaX;AAbD,WAAY,wBAAwB;IAClC,+EAAmD,CAAA;IACnD,yEAA6C,CAAA;IAC7C,iEAAqC,CAAA;IACrC,+EAAmD,CAAA;IACnD,2EAA+C,CAAA;IAC/C,wEAA4C,CAAA;IAC5C,kFAAsD,CAAA;IACtD,mFAAuD,CAAA;IACvD,+DAAmC,CAAA;IACnC,2DAA+B,CAAA;IAC/B,uEAA2C,CAAA;IAC3C,2CAAe,CAAA;AACjB,CAAC,EAbW,wBAAwB,KAAxB,wBAAwB,QAanC;AAED,MAAM,CAAN,IAAY,iBAcX;AAdD,WAAY,iBAAiB;IAC3B,kDAAkD;IAClD,wCAAmB,CAAA;IACnB,4CAAuB,CAAA;IACvB,wCAAmB,CAAA;IACnB,wDAAmC,CAAA;IACnC,4CAAuB,CAAA;IACvB,qDAAqD;IACrD,uDAAkC,CAAA;IAClC,8DAAyC,CAAA;IACzC,oCAAe,CAAA;IACf,wCAAmB,CAAA;IACnB,wCAAmB,CAAA;IACnB,0CAAqB,CAAA;AACvB,CAAC,EAdW,iBAAiB,KAAjB,iBAAiB,QAc5B"}
@@ -26,9 +26,12 @@ export declare enum WindowWalletFlag {
26
26
  Zerion = "zerionWallet",
27
27
  Snapper = "cosmos",
28
28
  Exodus = "exodus",
29
- Rainbow = "rainbow"
29
+ Rainbow = "rainbow",
30
+ Phantom = "phantom.solana",
31
+ PhantomBTC = "phantom.bitcoin",
32
+ Unisat = "unisat"
30
33
  }
31
- export type ConnectorID = "metaMaskSDK" | "coinbaseWalletSDK" | "walletConnect" | "blockchaindotcom" | "keplr" | "cosmostation" | "cosmostationCosmos" | "leap" | "xdefi" | "xdeficosmos" | "bitget" | "coin98" | "rabby" | "okx" | "injected" | "zerion" | "deficonnect" | "snapper" | "trustwallet" | "exodus" | "rainbow";
34
+ export type ConnectorID = "metaMaskSDK" | "coinbaseWalletSDK" | "walletConnect" | "blockchaindotcom" | "keplr" | "cosmostation" | "cosmostationCosmos" | "leap" | "xdefi" | "xdeficosmos" | "bitget" | "coin98" | "rabby" | "okx" | "injected" | "zerion" | "deficonnect" | "snapper" | "trustwallet" | "exodus" | "rainbow" | "phantom" | "phantomBTC" | "unisat";
32
35
  export interface EvmWallet extends Wallet {
33
36
  type: ChainType.EVM;
34
37
  connector: (chains?: Chain[]) => CreateConnectorFn;
@@ -37,6 +40,12 @@ export interface CosmosWallet extends Wallet {
37
40
  type: ChainType.COSMOS;
38
41
  connector?: (chains?: Chain[]) => CreateConnectorFn;
39
42
  }
43
+ export interface SolanaWallet extends Wallet {
44
+ type: ChainType.SOLANA;
45
+ }
46
+ export interface BitcoinWallet extends Wallet {
47
+ type: ChainType.BTC;
48
+ }
40
49
  export interface Wallet {
41
50
  name: string;
42
51
  type: ChainType;