@coinbase/cdp-sdk 1.38.3 → 1.38.4

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 (62) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/_cjs/actions/evm/fund/fund.js +1 -0
  3. package/_cjs/actions/evm/fund/fund.js.map +1 -1
  4. package/_cjs/actions/evm/fund/quoteFund.js +1 -0
  5. package/_cjs/actions/evm/fund/quoteFund.js.map +1 -1
  6. package/_cjs/actions/solana/fund/fund.js +1 -0
  7. package/_cjs/actions/solana/fund/fund.js.map +1 -1
  8. package/_cjs/actions/solana/fund/quoteFund.js +1 -0
  9. package/_cjs/actions/solana/fund/quoteFund.js.map +1 -1
  10. package/_cjs/actions/solana/rpc.js +16 -0
  11. package/_cjs/actions/solana/rpc.js.map +1 -0
  12. package/_cjs/actions/solana/transfer.js +74 -48
  13. package/_cjs/actions/solana/transfer.js.map +1 -1
  14. package/_cjs/actions/solana/utils.js +4 -6
  15. package/_cjs/actions/solana/utils.js.map +1 -1
  16. package/_cjs/actions/waitForFundOperationReceipt.js +1 -0
  17. package/_cjs/actions/waitForFundOperationReceipt.js.map +1 -1
  18. package/_cjs/version.js +1 -1
  19. package/_esm/actions/evm/fund/fund.js +1 -0
  20. package/_esm/actions/evm/fund/fund.js.map +1 -1
  21. package/_esm/actions/evm/fund/quoteFund.js +1 -0
  22. package/_esm/actions/evm/fund/quoteFund.js.map +1 -1
  23. package/_esm/actions/solana/fund/fund.js +1 -0
  24. package/_esm/actions/solana/fund/fund.js.map +1 -1
  25. package/_esm/actions/solana/fund/quoteFund.js +1 -0
  26. package/_esm/actions/solana/fund/quoteFund.js.map +1 -1
  27. package/_esm/actions/solana/rpc.js +13 -0
  28. package/_esm/actions/solana/rpc.js.map +1 -0
  29. package/_esm/actions/solana/transfer.js +72 -48
  30. package/_esm/actions/solana/transfer.js.map +1 -1
  31. package/_esm/actions/solana/utils.js +4 -6
  32. package/_esm/actions/solana/utils.js.map +1 -1
  33. package/_esm/actions/waitForFundOperationReceipt.js +1 -0
  34. package/_esm/actions/waitForFundOperationReceipt.js.map +1 -1
  35. package/_esm/version.js +1 -1
  36. package/_types/actions/evm/fund/fund.d.ts +1 -0
  37. package/_types/actions/evm/fund/fund.d.ts.map +1 -1
  38. package/_types/actions/evm/fund/quoteFund.d.ts +1 -0
  39. package/_types/actions/evm/fund/quoteFund.d.ts.map +1 -1
  40. package/_types/actions/solana/fund/fund.d.ts +1 -0
  41. package/_types/actions/solana/fund/fund.d.ts.map +1 -1
  42. package/_types/actions/solana/fund/quoteFund.d.ts +1 -0
  43. package/_types/actions/solana/fund/quoteFund.d.ts.map +1 -1
  44. package/_types/actions/solana/rpc.d.ts +10 -0
  45. package/_types/actions/solana/rpc.d.ts.map +1 -0
  46. package/_types/actions/solana/transfer.d.ts +37 -1
  47. package/_types/actions/solana/transfer.d.ts.map +1 -1
  48. package/_types/actions/solana/utils.d.ts +4 -6
  49. package/_types/actions/solana/utils.d.ts.map +1 -1
  50. package/_types/actions/waitForFundOperationReceipt.d.ts +1 -0
  51. package/_types/actions/waitForFundOperationReceipt.d.ts.map +1 -1
  52. package/_types/version.d.ts +1 -1
  53. package/actions/evm/fund/fund.ts +1 -0
  54. package/actions/evm/fund/quoteFund.ts +1 -0
  55. package/actions/solana/fund/fund.ts +1 -0
  56. package/actions/solana/fund/quoteFund.ts +1 -0
  57. package/actions/solana/rpc.ts +17 -0
  58. package/actions/solana/transfer.ts +115 -84
  59. package/actions/solana/utils.ts +4 -6
  60. package/actions/waitForFundOperationReceipt.ts +1 -0
  61. package/package.json +5 -6
  62. package/version.ts +1 -1
@@ -1,5 +1,7 @@
1
- import { getMint, getAssociatedTokenAddress, getAccount, createAssociatedTokenAccountInstruction, createTransferCheckedInstruction, } from "@solana/spl-token";
2
- import { PublicKey, SystemProgram, SYSVAR_RECENT_BLOCKHASHES_PUBKEY, Transaction, } from "@solana/web3.js";
1
+ import { pipe, createTransactionMessage, setTransactionMessageLifetimeUsingBlockhash, appendTransactionMessageInstructions, address, compileTransaction, setTransactionMessageFeePayer, createNoopSigner, getBase64EncodedWireTransaction, } from "@solana/kit";
2
+ import { getTransferSolInstruction } from "@solana-program/system";
3
+ import { findAssociatedTokenPda, getCreateAssociatedTokenInstructionAsync, getTransferCheckedInstruction, fetchToken, fetchMint, TOKEN_PROGRAM_ADDRESS, } from "@solana-program/token";
4
+ import { createRpcClient } from "./rpc.js";
3
5
  import { sendTransaction } from "./sendTransaction.js";
4
6
  import { getConnectedNetwork, getOrCreateConnection, getUsdcMintAddress, } from "./utils.js";
5
7
  /**
@@ -13,89 +15,111 @@ import { getConnectedNetwork, getOrCreateConnection, getUsdcMintAddress, } from
13
15
  export async function transfer(apiClient, options) {
14
16
  const connection = getOrCreateConnection({ networkOrConnection: options.network });
15
17
  const connectedNetwork = await getConnectedNetwork(connection);
16
- const tx = options.token === "sol"
17
- ? await getNativeTransfer({
18
+ const rpc = createRpcClient(connectedNetwork);
19
+ const base64Transaction = options.token === "sol"
20
+ ? await getNativeTransferBase64Transaction({
21
+ rpc,
18
22
  from: options.from,
19
23
  to: options.to,
20
24
  amount: options.amount,
21
25
  })
22
- : await getSplTransfer({
23
- connection,
26
+ : await getSplTransferBase64Transaction({
27
+ rpc,
24
28
  from: options.from,
25
29
  to: options.to,
26
30
  mintAddress: options.token === "usdc" ? getUsdcMintAddress(connectedNetwork) : options.token,
27
31
  amount: options.amount,
28
32
  });
29
- const serializedTx = Buffer.from(tx.serialize({ requireAllSignatures: false })).toString("base64");
30
33
  const signature = await sendTransaction(apiClient, {
31
34
  network: connectedNetwork === "mainnet" ? "solana" : "solana-devnet",
32
- transaction: serializedTx,
35
+ transaction: base64Transaction,
33
36
  });
34
37
  return signature;
35
38
  }
36
39
  /**
37
- * Gets the transaction for a native SOL transfer
40
+ * Gets the transaction for a SOL transfer
38
41
  *
39
- * @param options - The options for the native SOL transfer
42
+ * @param options - The options for the SOL transfer
40
43
  *
44
+ * @param options.rpc - The Solana RPC client
41
45
  * @param options.from - The source address
42
46
  * @param options.to - The destination address
43
- * @param options.amount - The amount to transfer
47
+ * @param options.amount - The amount in lamports to transfer
44
48
  *
45
- * @returns The native SOL transfer transaction
49
+ * @returns The SOL transfer transaction
46
50
  */
47
- async function getNativeTransfer({ from, to, amount, }) {
48
- const transaction = new Transaction();
49
- transaction.add(SystemProgram.transfer({
50
- fromPubkey: new PublicKey(from),
51
- toPubkey: new PublicKey(to),
52
- lamports: amount,
53
- }));
54
- transaction.recentBlockhash = SYSVAR_RECENT_BLOCKHASHES_PUBKEY.toBase58();
55
- transaction.feePayer = new PublicKey(from);
56
- return transaction;
51
+ export async function getNativeTransferBase64Transaction({ rpc, from, to, amount, }) {
52
+ const fromAddr = address(from);
53
+ const toAddr = address(to);
54
+ const instructions = [
55
+ getTransferSolInstruction({
56
+ source: createNoopSigner(fromAddr),
57
+ destination: toAddr,
58
+ amount,
59
+ }),
60
+ ];
61
+ const { value: latestBlockhash } = await rpc.getLatestBlockhash().send();
62
+ const txMsg = pipe(createTransactionMessage({ version: 0 }), tx => setTransactionMessageFeePayer(fromAddr, tx), tx => setTransactionMessageLifetimeUsingBlockhash(latestBlockhash, tx), tx => appendTransactionMessageInstructions(instructions, tx));
63
+ const compiledTransaction = compileTransaction(txMsg);
64
+ return getBase64EncodedWireTransaction(compiledTransaction);
57
65
  }
58
66
  /**
59
67
  * Gets the transaction for a SPL token transfer
60
68
  *
61
69
  * @param options - The options for the SPL token transfer
62
70
  *
63
- * @param options.connection - The Solana connection
71
+ * @param options.rpc - The Solana RPC client
64
72
  * @param options.from - The source address
65
73
  * @param options.to - The destination address
66
74
  * @param options.mintAddress - The mint address of the token
67
- * @param options.amount - The amount to transfer
75
+ * @param options.amount - The amount in units of the token to transfer
68
76
  *
69
77
  * @returns The SPL token transfer transaction
70
78
  */
71
- async function getSplTransfer({ connection, from, to, mintAddress, amount, }) {
72
- const fromPubkey = new PublicKey(from);
73
- const toPubkey = new PublicKey(to);
74
- const mintPubkey = new PublicKey(mintAddress);
75
- let mintInfo;
76
- try {
77
- mintInfo = await getMint(connection, mintPubkey);
78
- }
79
- catch (error) {
80
- throw new Error(`Failed to fetch mint info for mint address ${mintAddress}. Error: ${error}`);
81
- }
82
- const sourceAta = await getAssociatedTokenAddress(mintPubkey, fromPubkey);
83
- const destinationAta = await getAssociatedTokenAddress(mintPubkey, toPubkey);
84
- const transaction = new Transaction();
85
- const sourceAccount = await getAccount(connection, sourceAta);
86
- if (sourceAccount.amount < amount) {
87
- throw new Error(`Insufficient token balance. Have ${sourceAccount.amount}, need ${amount}`);
79
+ export async function getSplTransferBase64Transaction({ rpc, from, to, mintAddress, amount, }) {
80
+ const fromAddr = address(from);
81
+ const toAddr = address(to);
82
+ const mintAddr = address(mintAddress);
83
+ const mintInfo = await fetchMint(rpc, mintAddr);
84
+ const [sourceAta] = await findAssociatedTokenPda({
85
+ mint: mintAddr,
86
+ owner: fromAddr,
87
+ tokenProgram: TOKEN_PROGRAM_ADDRESS,
88
+ });
89
+ const [destAta] = await findAssociatedTokenPda({
90
+ mint: mintAddr,
91
+ owner: toAddr,
92
+ tokenProgram: TOKEN_PROGRAM_ADDRESS,
93
+ });
94
+ const sourceAcct = await fetchToken(rpc, sourceAta);
95
+ if (sourceAcct.data.amount < amount) {
96
+ throw new Error(`Insufficient token balance: have ${sourceAcct.data.amount}, need ${amount}`);
88
97
  }
89
- // Check if destination account exists, if not create it
98
+ const instructions = [];
99
+ // If destination ATA does not exist, add create instruction
90
100
  try {
91
- await getAccount(connection, destinationAta);
101
+ await fetchToken(rpc, destAta);
92
102
  }
93
103
  catch {
94
- transaction.add(createAssociatedTokenAccountInstruction(fromPubkey, destinationAta, toPubkey, mintPubkey));
104
+ const createDestIx = await getCreateAssociatedTokenInstructionAsync({
105
+ payer: createNoopSigner(fromAddr),
106
+ owner: toAddr,
107
+ ata: destAta,
108
+ mint: mintAddr,
109
+ });
110
+ instructions.push(createDestIx);
95
111
  }
96
- transaction.add(createTransferCheckedInstruction(sourceAta, mintPubkey, destinationAta, fromPubkey, amount, mintInfo.decimals));
97
- transaction.recentBlockhash = SYSVAR_RECENT_BLOCKHASHES_PUBKEY.toBase58();
98
- transaction.feePayer = new PublicKey(from);
99
- return transaction;
112
+ instructions.push(getTransferCheckedInstruction({
113
+ source: sourceAta,
114
+ mint: mintAddr,
115
+ destination: destAta,
116
+ authority: fromAddr,
117
+ amount,
118
+ decimals: mintInfo.data.decimals,
119
+ }));
120
+ const { value: latestBlockhash } = await rpc.getLatestBlockhash().send();
121
+ const txMsg = pipe(createTransactionMessage({ version: 0 }), tx => setTransactionMessageFeePayer(fromAddr, tx), tx => setTransactionMessageLifetimeUsingBlockhash(latestBlockhash, tx), tx => appendTransactionMessageInstructions(instructions, tx));
122
+ const compiledTransaction = compileTransaction(txMsg);
123
+ return getBase64EncodedWireTransaction(compiledTransaction);
100
124
  }
101
125
  //# sourceMappingURL=transfer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"transfer.js","sourceRoot":"","sources":["../../../actions/solana/transfer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transfer.js","sourceRoot":"","sources":["../../../actions/solana/transfer.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { Connection } from "@solana/web3.js";
2
2
  import { GENESIS_HASH_MAINNET, GENESIS_HASH_DEVNET, USDC_MAINNET_MINT_ADDRESS, USDC_DEVNET_MINT_ADDRESS, } from "./constants.js";
3
3
  /**
4
- * Get a connection to the Solana network
4
+ * Get a connection for the Solana network
5
5
  *
6
6
  * @param options - The options for the connection
7
7
  *
@@ -18,12 +18,10 @@ export function getOrCreateConnection({ networkOrConnection, }) {
18
18
  : "https://api.devnet.solana.com");
19
19
  }
20
20
  /**
21
- * Get the network of the connected Solana node
21
+ * Legacy function for compatibility during migration
22
22
  *
23
- * @param connection - The connection to the Solana network
24
- * @throws {Error} If the network is not mainnet or devnet
25
- *
26
- * @returns The network of the connected Solana node
23
+ * @param connection - The Solana Connection instance
24
+ * @returns The network type (mainnet or devnet)
27
25
  */
28
26
  export async function getConnectedNetwork(connection) {
29
27
  const genesisHash = await connection.getGenesisHash();
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../actions/solana/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,gBAAgB,CAAC;AAQxB;;;;;;;;GAQG;AACH,MAAM,UAAU,qBAAqB,CAAC,EACpC,mBAAmB,GACU;IAC7B,IAAI,OAAO,mBAAmB,KAAK,QAAQ,EAAE,CAAC;QAC5C,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IAED,OAAO,IAAI,UAAU,CACnB,mBAAmB,KAAK,SAAS;QAC/B,CAAC,CAAC,qCAAqC;QACvC,CAAC,CAAC,+BAA+B,CACpC,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,UAAsB;IAC9D,MAAM,WAAW,GAAG,MAAM,UAAU,CAAC,cAAc,EAAE,CAAC;IAEtD,IAAI,WAAW,KAAK,oBAAoB,EAAE,CAAC;QACzC,OAAO,SAAS,CAAC;IACnB,CAAC;SAAM,IAAI,WAAW,KAAK,mBAAmB,EAAE,CAAC;QAC/C,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;AACpD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAgB;IACjD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,yBAAyB,CAAC;IACnC,CAAC;IACD,OAAO,wBAAwB,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../actions/solana/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,gBAAgB,CAAC;AAQxB;;;;;;;;GAQG;AACH,MAAM,UAAU,qBAAqB,CAAC,EACpC,mBAAmB,GACU;IAC7B,IAAI,OAAO,mBAAmB,KAAK,QAAQ,EAAE,CAAC;QAC5C,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IAED,OAAO,IAAI,UAAU,CACnB,mBAAmB,KAAK,SAAS;QAC/B,CAAC,CAAC,qCAAqC;QACvC,CAAC,CAAC,+BAA+B,CACpC,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,UAAsB;IAC9D,MAAM,WAAW,GAAG,MAAM,UAAU,CAAC,cAAc,EAAE,CAAC;IAEtD,IAAI,WAAW,KAAK,oBAAoB,EAAE,CAAC;QACzC,OAAO,SAAS,CAAC;IACnB,CAAC;SAAM,IAAI,WAAW,KAAK,mBAAmB,EAAE,CAAC;QAC/C,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;AACpD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAgB;IACjD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,yBAAyB,CAAC;IACnC,CAAC;IACD,OAAO,wBAAwB,CAAC;AAClC,CAAC"}
@@ -3,6 +3,7 @@ import { wait } from "../utils/wait.js";
3
3
  /**
4
4
  * Waits for a fund operation to complete or fail.
5
5
  *
6
+ * @deprecated This method will be removed in a future version. Consider using our Onramp API instead. See https://docs.cdp.coinbase.com/api-reference/v2/rest-api/onramp/create-an-onramp-order.
6
7
  * @example
7
8
  * ```ts
8
9
  * import { waitForFundOperation } from "@coinbase/cdp-sdk";
@@ -1 +1 @@
1
- {"version":3,"file":"waitForFundOperationReceipt.js","sourceRoot":"","sources":["../../actions/waitForFundOperationReceipt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkC,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5F,OAAO,EAAE,IAAI,EAAe,MAAM,kBAAkB,CAAC;AAmDrD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,MAA4B,EAC5B,OAAoC;IAEpC,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;IAE/B,MAAM,MAAM,GAAG,KAAK,IAAI,EAAE;QACxB,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC7D,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,CAAC,SAAmB,EAA8B,EAAE;QACpE,IAAI,SAAS,CAAC,MAAM,KAAK,cAAc,CAAC,MAAM,EAAE,CAAC;YAC/C,OAAO;gBACL,EAAE,EAAE,SAAS,CAAC,EAAE;gBAChB,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,OAAO;gBACjC,YAAY,EAAE,SAAS,CAAC,YAAY;gBACpC,cAAc,EAAE,SAAS,CAAC,cAAc;gBACxC,MAAM,EAAE,SAAS,CAAC,MAAM;aACK,CAAC;QAClC,CAAC;aAAM,IAAI,SAAS,CAAC,MAAM,KAAK,cAAc,CAAC,SAAS,EAAE,CAAC;YACzD,OAAO;gBACL,EAAE,EAAE,SAAS,CAAC,EAAE;gBAChB,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,OAAO;gBACjC,YAAY,EAAE,SAAS,CAAC,YAAY;gBACpC,cAAc,EAAE,SAAS,CAAC,cAAc;gBACxC,MAAM,EAAE,SAAS,CAAC,MAAM;gBACxB,eAAe,EAAE,SAAS,CAAC,eAAgB;aACX,CAAC;QACrC,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI;QACzC,cAAc,EAAE,GAAG;QACnB,eAAe,EAAE,CAAC;KACnB,CAAC;IAEF,OAAO,MAAM,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,SAAmB,EAAW,EAAE;IAClD,OAAO,CACL,SAAS,CAAC,MAAM,KAAK,cAAc,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,cAAc,CAAC,MAAM,CAC5F,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"waitForFundOperationReceipt.js","sourceRoot":"","sources":["../../actions/waitForFundOperationReceipt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkC,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5F,OAAO,EAAE,IAAI,EAAe,MAAM,kBAAkB,CAAC;AAmDrD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,MAA4B,EAC5B,OAAoC;IAEpC,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;IAE/B,MAAM,MAAM,GAAG,KAAK,IAAI,EAAE;QACxB,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC7D,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,CAAC,SAAmB,EAA8B,EAAE;QACpE,IAAI,SAAS,CAAC,MAAM,KAAK,cAAc,CAAC,MAAM,EAAE,CAAC;YAC/C,OAAO;gBACL,EAAE,EAAE,SAAS,CAAC,EAAE;gBAChB,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,OAAO;gBACjC,YAAY,EAAE,SAAS,CAAC,YAAY;gBACpC,cAAc,EAAE,SAAS,CAAC,cAAc;gBACxC,MAAM,EAAE,SAAS,CAAC,MAAM;aACK,CAAC;QAClC,CAAC;aAAM,IAAI,SAAS,CAAC,MAAM,KAAK,cAAc,CAAC,SAAS,EAAE,CAAC;YACzD,OAAO;gBACL,EAAE,EAAE,SAAS,CAAC,EAAE;gBAChB,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,OAAO;gBACjC,YAAY,EAAE,SAAS,CAAC,YAAY;gBACpC,cAAc,EAAE,SAAS,CAAC,cAAc;gBACxC,MAAM,EAAE,SAAS,CAAC,MAAM;gBACxB,eAAe,EAAE,SAAS,CAAC,eAAgB;aACX,CAAC;QACrC,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI;QACzC,cAAc,EAAE,GAAG;QACnB,eAAe,EAAE,CAAC;KACnB,CAAC;IAEF,OAAO,MAAM,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,SAAmB,EAAW,EAAE;IAClD,OAAO,CACL,SAAS,CAAC,MAAM,KAAK,cAAc,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,cAAc,CAAC,MAAM,CAC5F,CAAC;AACJ,CAAC,CAAC"}
package/_esm/version.js CHANGED
@@ -1,2 +1,2 @@
1
- export const version = "1.38.3";
1
+ export const version = "1.38.4";
2
2
  //# sourceMappingURL=version.js.map
@@ -12,6 +12,7 @@ export interface EvmFundOptions extends BaseFundOptions {
12
12
  /**
13
13
  * Funds an EVM account.
14
14
  *
15
+ * @deprecated This method will be removed in a future version. Consider using our Onramp API instead. See https://docs.cdp.coinbase.com/api-reference/v2/rest-api/onramp/create-an-onramp-order.
15
16
  * @param apiClient - The API client.
16
17
  * @param options - The options for funding an EVM account.
17
18
  *
@@ -1 +1 @@
1
- {"version":3,"file":"fund.d.ts","sourceRoot":"","sources":["../../../../actions/evm/fund/fund.ts"],"names":[],"mappings":"AAGA,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,cAAe,SAAQ,eAAe;IACrD,yCAAyC;IACzC,OAAO,EAAE,MAAM,GAAG,UAAU,CAAC;IAC7B,sCAAsC;IACtC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC;CACvB;AAED;;;;;;;GAOG;AACH,wBAAsB,IAAI,CACxB,SAAS,EAAE,oBAAoB,EAC/B,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,mBAAmB,CAAC,CAyC9B"}
1
+ {"version":3,"file":"fund.d.ts","sourceRoot":"","sources":["../../../../actions/evm/fund/fund.ts"],"names":[],"mappings":"AAGA,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,cAAe,SAAQ,eAAe;IACrD,yCAAyC;IACzC,OAAO,EAAE,MAAM,GAAG,UAAU,CAAC;IAC7B,sCAAsC;IACtC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC;CACvB;AAED;;;;;;;;GAQG;AACH,wBAAsB,IAAI,CACxB,SAAS,EAAE,oBAAoB,EAC/B,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,mBAAmB,CAAC,CAyC9B"}
@@ -13,6 +13,7 @@ export interface EvmQuoteFundOptions extends BaseQuoteFundOptions {
13
13
  /**
14
14
  * Gets a quote to fund an EVM account.
15
15
  *
16
+ * @deprecated This method will be removed in a future version. Consider using our Onramp API instead. See https://docs.cdp.coinbase.com/api-reference/v2/rest-api/onramp/create-an-onramp-order.
16
17
  * @param apiClient - The API client.
17
18
  * @param options - The options for getting a quote to fund an EVM account.
18
19
  *
@@ -1 +1 @@
1
- {"version":3,"file":"quoteFund.d.ts","sourceRoot":"","sources":["../../../../actions/evm/fund/quoteFund.ts"],"names":[],"mappings":"AAGA,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,oBAAoB;IAC/D,yCAAyC;IACzC,OAAO,EAAE,MAAM,GAAG,UAAU,CAAC;IAC7B,sCAAsC;IACtC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC;CACvB;AAED;;;;;;;GAOG;AACH,wBAAsB,SAAS,CAC7B,SAAS,EAAE,oBAAoB,EAC/B,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,QAAQ,CAAC,CA8CnB"}
1
+ {"version":3,"file":"quoteFund.d.ts","sourceRoot":"","sources":["../../../../actions/evm/fund/quoteFund.ts"],"names":[],"mappings":"AAGA,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,oBAAoB;IAC/D,yCAAyC;IACzC,OAAO,EAAE,MAAM,GAAG,UAAU,CAAC;IAC7B,sCAAsC;IACtC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC;CACvB;AAED;;;;;;;;GAQG;AACH,wBAAsB,SAAS,CAC7B,SAAS,EAAE,oBAAoB,EAC/B,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,QAAQ,CAAC,CA8CnB"}
@@ -10,6 +10,7 @@ export interface SolanaFundOptions extends BaseFundOptions {
10
10
  /**
11
11
  * Funds a Solana account.
12
12
  *
13
+ * @deprecated This method will be removed in a future version. Consider using our Onramp API instead. See https://docs.cdp.coinbase.com/api-reference/v2/rest-api/onramp/create-an-onramp-order.
13
14
  * @param apiClient - The API client.
14
15
  * @param options - The options for funding a Solana account.
15
16
  *
@@ -1 +1 @@
1
- {"version":3,"file":"fund.d.ts","sourceRoot":"","sources":["../../../../actions/solana/fund/fund.ts"],"names":[],"mappings":"AAGA,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,eAAe;IACxD,sCAAsC;IACtC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC;CACvB;AAED;;;;;;;GAOG;AACH,wBAAsB,IAAI,CACxB,SAAS,EAAE,oBAAoB,EAC/B,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,mBAAmB,CAAC,CAyC9B"}
1
+ {"version":3,"file":"fund.d.ts","sourceRoot":"","sources":["../../../../actions/solana/fund/fund.ts"],"names":[],"mappings":"AAGA,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,eAAe;IACxD,sCAAsC;IACtC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC;CACvB;AAED;;;;;;;;GAQG;AACH,wBAAsB,IAAI,CACxB,SAAS,EAAE,oBAAoB,EAC/B,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,mBAAmB,CAAC,CAyC9B"}
@@ -11,6 +11,7 @@ export interface SolanaQuoteFundOptions extends BaseQuoteFundOptions {
11
11
  /**
12
12
  * Gets a quote to fund a Solana account.
13
13
  *
14
+ * @deprecated This method will be removed in a future version. Consider using our Onramp API instead. See https://docs.cdp.coinbase.com/api-reference/v2/rest-api/onramp/create-an-onramp-order.
14
15
  * @param apiClient - The API client.
15
16
  * @param options - The options for getting a quote to fund a Solana account.
16
17
  *
@@ -1 +1 @@
1
- {"version":3,"file":"quoteFund.d.ts","sourceRoot":"","sources":["../../../../actions/solana/fund/quoteFund.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,oBAAoB,EAGrB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,oBAAoB;IAClE,sCAAsC;IACtC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC;CACvB;AAED;;;;;;;GAOG;AACH,wBAAsB,SAAS,CAC7B,SAAS,EAAE,oBAAoB,EAC/B,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,WAAW,CAAC,CA8CtB"}
1
+ {"version":3,"file":"quoteFund.d.ts","sourceRoot":"","sources":["../../../../actions/solana/fund/quoteFund.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,oBAAoB,EAGrB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,oBAAoB;IAClE,sCAAsC;IACtC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC;CACvB;AAED;;;;;;;;GAQG;AACH,wBAAsB,SAAS,CAC7B,SAAS,EAAE,oBAAoB,EAC/B,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,WAAW,CAAC,CA8CtB"}
@@ -0,0 +1,10 @@
1
+ import type { Network } from "./utils.js";
2
+ /**
3
+ * Create a Solana RPC client for the given network
4
+ *
5
+ * @param network - The network to connect to
6
+ *
7
+ * @returns The RPC client
8
+ */
9
+ export declare function createRpcClient(network: Network): import("@solana/kit").Rpc<import("@solana/kit").RequestAirdropApi & import("@solana/kit").GetAccountInfoApi & import("@solana/kit").GetBalanceApi & import("@solana/kit").GetBlockApi & import("@solana/kit").GetBlockCommitmentApi & import("@solana/kit").GetBlockHeightApi & import("@solana/kit").GetBlockProductionApi & import("@solana/kit").GetBlocksApi & import("@solana/kit").GetBlocksWithLimitApi & import("@solana/kit").GetBlockTimeApi & import("@solana/kit").GetClusterNodesApi & import("@solana/kit").GetEpochInfoApi & import("@solana/kit").GetEpochScheduleApi & import("@solana/kit").GetFeeForMessageApi & import("@solana/kit").GetFirstAvailableBlockApi & import("@solana/kit").GetGenesisHashApi & import("@solana/kit").GetHealthApi & import("@solana/kit").GetHighestSnapshotSlotApi & import("@solana/kit").GetIdentityApi & import("@solana/kit").GetInflationGovernorApi & import("@solana/kit").GetInflationRateApi & import("@solana/kit").GetInflationRewardApi & import("@solana/kit").GetLargestAccountsApi & import("@solana/kit").GetLatestBlockhashApi & import("@solana/kit").GetLeaderScheduleApi & import("@solana/kit").GetMaxRetransmitSlotApi & import("@solana/kit").GetMaxShredInsertSlotApi & import("@solana/kit").GetMinimumBalanceForRentExemptionApi & import("@solana/kit").GetMultipleAccountsApi & import("@solana/kit").GetProgramAccountsApi & import("@solana/kit").GetRecentPerformanceSamplesApi & import("@solana/kit").GetRecentPrioritizationFeesApi & import("@solana/kit").GetSignaturesForAddressApi & import("@solana/kit").GetSignatureStatusesApi & import("@solana/kit").GetSlotApi & import("@solana/kit").GetSlotLeaderApi & import("@solana/kit").GetSlotLeadersApi & import("@solana/kit").GetStakeMinimumDelegationApi & import("@solana/kit").GetSupplyApi & import("@solana/kit").GetTokenAccountBalanceApi & import("@solana/kit").GetTokenAccountsByDelegateApi & import("@solana/kit").GetTokenAccountsByOwnerApi & import("@solana/kit").GetTokenLargestAccountsApi & import("@solana/kit").GetTokenSupplyApi & import("@solana/kit").GetTransactionApi & import("@solana/kit").GetTransactionCountApi & import("@solana/kit").GetVersionApi & import("@solana/kit").GetVoteAccountsApi & import("@solana/kit").IsBlockhashValidApi & import("@solana/kit").MinimumLedgerSlotApi & import("@solana/kit").SendTransactionApi & import("@solana/kit").SimulateTransactionApi>;
10
+ //# sourceMappingURL=rpc.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../../../actions/solana/rpc.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,o0EAK/C"}
@@ -1,3 +1,4 @@
1
+ import { createSolanaRpc } from "@solana/kit";
1
2
  import { Connection } from "@solana/web3.js";
2
3
  import { type Network } from "./utils.js";
3
4
  import type { SignatureResult } from "../../client/solana/solana.types.js";
@@ -20,7 +21,7 @@ export interface TransferOptions {
20
21
  */
21
22
  token: "sol" | "usdc" | string;
22
23
  /**
23
- * The network to use which will be used to create a Connection, otherwise a Connection can be provided.
24
+ * The network to use which will be used to create an RPC client, otherwise an RPC client can be provided.
24
25
  */
25
26
  network: Network | Connection;
26
27
  }
@@ -33,4 +34,39 @@ export interface TransferOptions {
33
34
  * @returns The transfer result
34
35
  */
35
36
  export declare function transfer(apiClient: CdpOpenApiClientType, options: TransferOptions): Promise<SignatureResult>;
37
+ type GetNativeTransferOptions = Omit<TransferOptions, "token" | "network"> & {
38
+ rpc: ReturnType<typeof createSolanaRpc>;
39
+ };
40
+ /**
41
+ * Gets the transaction for a SOL transfer
42
+ *
43
+ * @param options - The options for the SOL transfer
44
+ *
45
+ * @param options.rpc - The Solana RPC client
46
+ * @param options.from - The source address
47
+ * @param options.to - The destination address
48
+ * @param options.amount - The amount in lamports to transfer
49
+ *
50
+ * @returns The SOL transfer transaction
51
+ */
52
+ export declare function getNativeTransferBase64Transaction({ rpc, from, to, amount, }: GetNativeTransferOptions): Promise<string>;
53
+ type GetSplTokenTransferOptions = Omit<TransferOptions, "network" | "token"> & {
54
+ mintAddress: string;
55
+ rpc: ReturnType<typeof createSolanaRpc>;
56
+ };
57
+ /**
58
+ * Gets the transaction for a SPL token transfer
59
+ *
60
+ * @param options - The options for the SPL token transfer
61
+ *
62
+ * @param options.rpc - The Solana RPC client
63
+ * @param options.from - The source address
64
+ * @param options.to - The destination address
65
+ * @param options.mintAddress - The mint address of the token
66
+ * @param options.amount - The amount in units of the token to transfer
67
+ *
68
+ * @returns The SPL token transfer transaction
69
+ */
70
+ export declare function getSplTransferBase64Transaction({ rpc, from, to, mintAddress, amount, }: GetSplTokenTransferOptions): Promise<string>;
71
+ export {};
36
72
  //# sourceMappingURL=transfer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transfer.d.ts","sourceRoot":"","sources":["../../../actions/solana/transfer.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,UAAU,EAKX,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAIL,KAAK,OAAO,EACb,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAE1E,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IACX;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;IAC/B;;OAEG;IACH,OAAO,EAAE,OAAO,GAAG,UAAU,CAAC;CAC/B;AAED;;;;;;;GAOG;AACH,wBAAsB,QAAQ,CAC5B,SAAS,EAAE,oBAAoB,EAC/B,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,eAAe,CAAC,CA8B1B"}
1
+ {"version":3,"file":"transfer.d.ts","sourceRoot":"","sources":["../../../actions/solana/transfer.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,eAAe,EAMhB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAa7C,OAAO,EAIL,KAAK,OAAO,EACb,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAE1E,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IACX;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;IAC/B;;OAEG;IACH,OAAO,EAAE,OAAO,GAAG,UAAU,CAAC;CAC/B;AAED;;;;;;;GAOG;AACH,wBAAsB,QAAQ,CAC5B,SAAS,EAAE,oBAAoB,EAC/B,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,eAAe,CAAC,CA4B1B;AAED,KAAK,wBAAwB,GAAG,IAAI,CAAC,eAAe,EAAE,OAAO,GAAG,SAAS,CAAC,GAAG;IAC3E,GAAG,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;CACzC,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,wBAAsB,kCAAkC,CAAC,EACvD,GAAG,EACH,IAAI,EACJ,EAAE,EACF,MAAM,GACP,EAAE,wBAAwB,GAAG,OAAO,CAAC,MAAM,CAAC,CAuB5C;AAED,KAAK,0BAA0B,GAAG,IAAI,CAAC,eAAe,EAAE,SAAS,GAAG,OAAO,CAAC,GAAG;IAC7E,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;CACzC,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,wBAAsB,+BAA+B,CAAC,EACpD,GAAG,EACH,IAAI,EACJ,EAAE,EACF,WAAW,EACX,MAAM,GACP,EAAE,0BAA0B,GAAG,OAAO,CAAC,MAAM,CAAC,CA4D9C"}
@@ -4,7 +4,7 @@ type GetOrCreateConnectionOptions = {
4
4
  networkOrConnection: Network | Connection;
5
5
  };
6
6
  /**
7
- * Get a connection to the Solana network
7
+ * Get a connection for the Solana network
8
8
  *
9
9
  * @param options - The options for the connection
10
10
  *
@@ -14,12 +14,10 @@ type GetOrCreateConnectionOptions = {
14
14
  */
15
15
  export declare function getOrCreateConnection({ networkOrConnection, }: GetOrCreateConnectionOptions): Connection;
16
16
  /**
17
- * Get the network of the connected Solana node
17
+ * Legacy function for compatibility during migration
18
18
  *
19
- * @param connection - The connection to the Solana network
20
- * @throws {Error} If the network is not mainnet or devnet
21
- *
22
- * @returns The network of the connected Solana node
19
+ * @param connection - The Solana Connection instance
20
+ * @returns The network type (mainnet or devnet)
23
21
  */
24
22
  export declare function getConnectedNetwork(connection: Connection): Promise<Network>;
25
23
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../actions/solana/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAS7C,MAAM,MAAM,OAAO,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE3C,KAAK,4BAA4B,GAAG;IAClC,mBAAmB,EAAE,OAAO,GAAG,UAAU,CAAC;CAC3C,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CAAC,EACpC,mBAAmB,GACpB,EAAE,4BAA4B,GAAG,UAAU,CAU3C;AAED;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,CAUlF;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAK3D"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../actions/solana/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAS7C,MAAM,MAAM,OAAO,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE3C,KAAK,4BAA4B,GAAG;IAClC,mBAAmB,EAAE,OAAO,GAAG,UAAU,CAAC;CAC3C,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CAAC,EACpC,mBAAmB,GACpB,EAAE,4BAA4B,GAAG,UAAU,CAU3C;AAED;;;;;GAKG;AACH,wBAAsB,mBAAmB,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,CAUlF;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAK3D"}
@@ -48,6 +48,7 @@ export type WaitForFundOperationResult = FailedFundOperation | CompletedFundOper
48
48
  /**
49
49
  * Waits for a fund operation to complete or fail.
50
50
  *
51
+ * @deprecated This method will be removed in a future version. Consider using our Onramp API instead. See https://docs.cdp.coinbase.com/api-reference/v2/rest-api/onramp/create-an-onramp-order.
51
52
  * @example
52
53
  * ```ts
53
54
  * import { waitForFundOperation } from "@coinbase/cdp-sdk";
@@ -1 +1 @@
1
- {"version":3,"file":"waitForFundOperationReceipt.d.ts","sourceRoot":"","sources":["../../actions/waitForFundOperationReceipt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAY,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5F,OAAO,EAAQ,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAErD;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG;IACxC,0CAA0C;IAC1C,UAAU,EAAE,MAAM,CAAC;IACnB,+CAA+C;IAC/C,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,8BAA8B;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,oDAAoD;IACpD,OAAO,EAAE,MAAM,CAAC;IAChB,+CAA+C;IAC/C,YAAY,EAAE,MAAM,CAAC;IACrB,0CAA0C;IAC1C,cAAc,EAAE,MAAM,CAAC;IACvB,kCAAkC;IAClC,MAAM,EAAE,OAAO,cAAc,CAAC,MAAM,CAAC;CACtC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,8BAA8B;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,oDAAoD;IACpD,OAAO,EAAE,MAAM,CAAC;IAChB,+CAA+C;IAC/C,YAAY,EAAE,MAAM,CAAC;IACrB,0CAA0C;IAC1C,cAAc,EAAE,MAAM,CAAC;IACvB,kCAAkC;IAClC,MAAM,EAAE,OAAO,cAAc,CAAC,SAAS,CAAC;IACxC,4CAA4C;IAC5C,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG,mBAAmB,GAAG,sBAAsB,CAAC;AAEtF;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,2BAA2B,CAC/C,MAAM,EAAE,oBAAoB,EAC5B,OAAO,EAAE,2BAA2B,GACnC,OAAO,CAAC,0BAA0B,CAAC,CAqCrC"}
1
+ {"version":3,"file":"waitForFundOperationReceipt.d.ts","sourceRoot":"","sources":["../../actions/waitForFundOperationReceipt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAY,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5F,OAAO,EAAQ,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAErD;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG;IACxC,0CAA0C;IAC1C,UAAU,EAAE,MAAM,CAAC;IACnB,+CAA+C;IAC/C,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,8BAA8B;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,oDAAoD;IACpD,OAAO,EAAE,MAAM,CAAC;IAChB,+CAA+C;IAC/C,YAAY,EAAE,MAAM,CAAC;IACrB,0CAA0C;IAC1C,cAAc,EAAE,MAAM,CAAC;IACvB,kCAAkC;IAClC,MAAM,EAAE,OAAO,cAAc,CAAC,MAAM,CAAC;CACtC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,8BAA8B;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,oDAAoD;IACpD,OAAO,EAAE,MAAM,CAAC;IAChB,+CAA+C;IAC/C,YAAY,EAAE,MAAM,CAAC;IACrB,0CAA0C;IAC1C,cAAc,EAAE,MAAM,CAAC;IACvB,kCAAkC;IAClC,MAAM,EAAE,OAAO,cAAc,CAAC,SAAS,CAAC;IACxC,4CAA4C;IAC5C,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG,mBAAmB,GAAG,sBAAsB,CAAC;AAEtF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,2BAA2B,CAC/C,MAAM,EAAE,oBAAoB,EAC5B,OAAO,EAAE,2BAA2B,GACnC,OAAO,CAAC,0BAA0B,CAAC,CAqCrC"}
@@ -1,2 +1,2 @@
1
- export declare const version = "1.38.3";
1
+ export declare const version = "1.38.4";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -21,6 +21,7 @@ export interface EvmFundOptions extends BaseFundOptions {
21
21
  /**
22
22
  * Funds an EVM account.
23
23
  *
24
+ * @deprecated This method will be removed in a future version. Consider using our Onramp API instead. See https://docs.cdp.coinbase.com/api-reference/v2/rest-api/onramp/create-an-onramp-order.
24
25
  * @param apiClient - The API client.
25
26
  * @param options - The options for funding an EVM account.
26
27
  *
@@ -22,6 +22,7 @@ export interface EvmQuoteFundOptions extends BaseQuoteFundOptions {
22
22
  /**
23
23
  * Gets a quote to fund an EVM account.
24
24
  *
25
+ * @deprecated This method will be removed in a future version. Consider using our Onramp API instead. See https://docs.cdp.coinbase.com/api-reference/v2/rest-api/onramp/create-an-onramp-order.
25
26
  * @param apiClient - The API client.
26
27
  * @param options - The options for getting a quote to fund an EVM account.
27
28
  *
@@ -19,6 +19,7 @@ export interface SolanaFundOptions extends BaseFundOptions {
19
19
  /**
20
20
  * Funds a Solana account.
21
21
  *
22
+ * @deprecated This method will be removed in a future version. Consider using our Onramp API instead. See https://docs.cdp.coinbase.com/api-reference/v2/rest-api/onramp/create-an-onramp-order.
22
23
  * @param apiClient - The API client.
23
24
  * @param options - The options for funding a Solana account.
24
25
  *
@@ -20,6 +20,7 @@ export interface SolanaQuoteFundOptions extends BaseQuoteFundOptions {
20
20
  /**
21
21
  * Gets a quote to fund a Solana account.
22
22
  *
23
+ * @deprecated This method will be removed in a future version. Consider using our Onramp API instead. See https://docs.cdp.coinbase.com/api-reference/v2/rest-api/onramp/create-an-onramp-order.
23
24
  * @param apiClient - The API client.
24
25
  * @param options - The options for getting a quote to fund a Solana account.
25
26
  *
@@ -0,0 +1,17 @@
1
+ import { createSolanaRpc } from "@solana/kit";
2
+
3
+ import type { Network } from "./utils.js";
4
+
5
+ /**
6
+ * Create a Solana RPC client for the given network
7
+ *
8
+ * @param network - The network to connect to
9
+ *
10
+ * @returns The RPC client
11
+ */
12
+ export function createRpcClient(network: Network) {
13
+ const endpoint =
14
+ network === "mainnet" ? "https://api.mainnet-beta.solana.com" : "https://api.devnet.solana.com";
15
+
16
+ return createSolanaRpc(endpoint);
17
+ }