@coinbase/cdp-sdk 1.27.0 → 1.29.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 (140) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/_cjs/accounts/evm/toEvmServerAccount.js +1 -1
  3. package/_cjs/accounts/evm/toEvmServerAccount.js.map +1 -1
  4. package/_cjs/accounts/evm/toEvmSmartAccount.js +1 -1
  5. package/_cjs/accounts/evm/toEvmSmartAccount.js.map +1 -1
  6. package/_cjs/accounts/evm/toNetworkScopedEvmServerAccount.js +11 -6
  7. package/_cjs/accounts/evm/toNetworkScopedEvmServerAccount.js.map +1 -1
  8. package/_cjs/accounts/evm/toNetworkScopedEvmSmartAccount.js +1 -1
  9. package/_cjs/accounts/evm/toNetworkScopedEvmSmartAccount.js.map +1 -1
  10. package/_cjs/accounts/solana/toSolanaAccount.js +30 -0
  11. package/_cjs/accounts/solana/toSolanaAccount.js.map +1 -1
  12. package/_cjs/actions/Quote.js +106 -0
  13. package/_cjs/actions/Quote.js.map +1 -0
  14. package/_cjs/actions/evm/fund/fund.js +5 -5
  15. package/_cjs/actions/evm/fund/fund.js.map +1 -1
  16. package/_cjs/actions/evm/fund/quoteFund.js +7 -7
  17. package/_cjs/actions/evm/fund/quoteFund.js.map +1 -1
  18. package/_cjs/actions/evm/transfer/accountTransferStrategy.js +1 -0
  19. package/_cjs/actions/evm/transfer/accountTransferStrategy.js.map +1 -1
  20. package/_cjs/actions/solana/fund/fund.js +50 -0
  21. package/_cjs/actions/solana/fund/fund.js.map +1 -0
  22. package/_cjs/actions/solana/fund/quoteFund.js +47 -0
  23. package/_cjs/actions/solana/fund/quoteFund.js.map +1 -0
  24. package/_cjs/actions/solana/transfer.js +25 -38
  25. package/_cjs/actions/solana/transfer.js.map +1 -1
  26. package/_cjs/actions/solana/utils.js +4 -14
  27. package/_cjs/actions/solana/utils.js.map +1 -1
  28. package/{_esm/actions/evm/fund → _cjs/actions}/types.js.map +1 -1
  29. package/_cjs/actions/{evm/fund/waitForFundOperationReceipt.js → waitForFundOperationReceipt.js} +2 -2
  30. package/_cjs/actions/waitForFundOperationReceipt.js.map +1 -0
  31. package/_cjs/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.js +15 -6
  32. package/_cjs/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.js.map +1 -1
  33. package/_cjs/openapi-client/generated/evm-smart-accounts/evm-smart-accounts.msw.js +4 -3
  34. package/_cjs/openapi-client/generated/evm-smart-accounts/evm-smart-accounts.msw.js.map +1 -1
  35. package/_cjs/policies/schema.js +6 -6
  36. package/_cjs/version.js +1 -1
  37. package/_esm/accounts/evm/toEvmServerAccount.js +1 -1
  38. package/_esm/accounts/evm/toEvmServerAccount.js.map +1 -1
  39. package/_esm/accounts/evm/toEvmSmartAccount.js +1 -1
  40. package/_esm/accounts/evm/toEvmSmartAccount.js.map +1 -1
  41. package/_esm/accounts/evm/toNetworkScopedEvmServerAccount.js +11 -6
  42. package/_esm/accounts/evm/toNetworkScopedEvmServerAccount.js.map +1 -1
  43. package/_esm/accounts/evm/toNetworkScopedEvmSmartAccount.js +1 -1
  44. package/_esm/accounts/evm/toNetworkScopedEvmSmartAccount.js.map +1 -1
  45. package/_esm/accounts/solana/toSolanaAccount.js +30 -0
  46. package/_esm/accounts/solana/toSolanaAccount.js.map +1 -1
  47. package/_esm/actions/Quote.js +101 -0
  48. package/_esm/actions/Quote.js.map +1 -0
  49. package/_esm/actions/evm/fund/fund.js +5 -5
  50. package/_esm/actions/evm/fund/fund.js.map +1 -1
  51. package/_esm/actions/evm/fund/quoteFund.js +7 -7
  52. package/_esm/actions/evm/fund/quoteFund.js.map +1 -1
  53. package/_esm/actions/evm/transfer/accountTransferStrategy.js +1 -0
  54. package/_esm/actions/evm/transfer/accountTransferStrategy.js.map +1 -1
  55. package/_esm/actions/solana/fund/fund.js +47 -0
  56. package/_esm/actions/solana/fund/fund.js.map +1 -0
  57. package/_esm/actions/solana/fund/quoteFund.js +44 -0
  58. package/_esm/actions/solana/fund/quoteFund.js.map +1 -0
  59. package/_esm/actions/solana/transfer.js +26 -39
  60. package/_esm/actions/solana/transfer.js.map +1 -1
  61. package/_esm/actions/solana/utils.js +5 -15
  62. package/_esm/actions/solana/utils.js.map +1 -1
  63. package/{_cjs/actions/evm/fund → _esm/actions}/types.js.map +1 -1
  64. package/_esm/actions/{evm/fund/waitForFundOperationReceipt.js → waitForFundOperationReceipt.js} +2 -2
  65. package/_esm/actions/waitForFundOperationReceipt.js.map +1 -0
  66. package/_esm/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.js +14 -5
  67. package/_esm/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.js.map +1 -1
  68. package/_esm/openapi-client/generated/evm-smart-accounts/evm-smart-accounts.msw.js +4 -3
  69. package/_esm/openapi-client/generated/evm-smart-accounts/evm-smart-accounts.msw.js.map +1 -1
  70. package/_esm/policies/schema.js +6 -6
  71. package/_esm/version.js +1 -1
  72. package/_types/accounts/evm/toNetworkScopedEvmServerAccount.d.ts.map +1 -1
  73. package/_types/accounts/evm/types.d.ts +9 -9
  74. package/_types/accounts/evm/types.d.ts.map +1 -1
  75. package/_types/accounts/solana/toSolanaAccount.d.ts.map +1 -1
  76. package/_types/actions/Quote.d.ts +97 -0
  77. package/_types/actions/Quote.d.ts.map +1 -0
  78. package/_types/actions/evm/fund/fund.d.ts +3 -7
  79. package/_types/actions/evm/fund/fund.d.ts.map +1 -1
  80. package/_types/actions/evm/fund/quoteFund.d.ts +4 -7
  81. package/_types/actions/evm/fund/quoteFund.d.ts.map +1 -1
  82. package/_types/actions/evm/transfer/accountTransferStrategy.d.ts.map +1 -1
  83. package/_types/actions/evm/types.d.ts +7 -7
  84. package/_types/actions/evm/types.d.ts.map +1 -1
  85. package/_types/actions/solana/fund/fund.d.ts +19 -0
  86. package/_types/actions/solana/fund/fund.d.ts.map +1 -0
  87. package/_types/actions/solana/fund/quoteFund.d.ts +20 -0
  88. package/_types/actions/solana/fund/quoteFund.d.ts.map +1 -0
  89. package/_types/actions/solana/transfer.d.ts.map +1 -1
  90. package/_types/actions/solana/types.d.ts +61 -0
  91. package/_types/actions/solana/types.d.ts.map +1 -1
  92. package/_types/actions/solana/utils.d.ts +2 -2
  93. package/_types/actions/solana/utils.d.ts.map +1 -1
  94. package/_types/actions/types.d.ts +37 -0
  95. package/_types/actions/types.d.ts.map +1 -0
  96. package/_types/actions/{evm/fund/waitForFundOperationReceipt.d.ts → waitForFundOperationReceipt.d.ts} +2 -2
  97. package/_types/actions/waitForFundOperationReceipt.d.ts.map +1 -0
  98. package/_types/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.d.ts +26 -22
  99. package/_types/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.d.ts.map +1 -1
  100. package/_types/openapi-client/generated/evm-smart-accounts/evm-smart-accounts.msw.d.ts.map +1 -1
  101. package/_types/policies/schema.d.ts +34 -34
  102. package/_types/version.d.ts +1 -1
  103. package/accounts/evm/toEvmServerAccount.ts +11 -11
  104. package/accounts/evm/toEvmSmartAccount.ts +11 -11
  105. package/accounts/evm/toNetworkScopedEvmServerAccount.ts +17 -11
  106. package/accounts/evm/toNetworkScopedEvmSmartAccount.ts +6 -6
  107. package/accounts/evm/types.ts +16 -12
  108. package/accounts/solana/toSolanaAccount.ts +41 -0
  109. package/actions/Quote.ts +154 -0
  110. package/actions/evm/fund/fund.ts +10 -14
  111. package/actions/evm/fund/quoteFund.ts +13 -16
  112. package/actions/evm/transfer/accountTransferStrategy.ts +2 -0
  113. package/actions/evm/types.ts +7 -7
  114. package/actions/solana/fund/fund.ts +71 -0
  115. package/actions/solana/fund/quoteFund.ts +77 -0
  116. package/actions/solana/transfer.ts +33 -52
  117. package/actions/solana/types.ts +69 -0
  118. package/actions/solana/utils.ts +5 -13
  119. package/actions/types.ts +39 -0
  120. package/actions/{evm/fund/waitForFundOperationReceipt.ts → waitForFundOperationReceipt.ts} +2 -2
  121. package/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.ts +30 -30
  122. package/openapi-client/generated/evm-smart-accounts/evm-smart-accounts.msw.ts +4 -3
  123. package/package.json +1 -1
  124. package/policies/schema.ts +6 -6
  125. package/version.ts +1 -1
  126. package/_cjs/actions/evm/fund/Quote.js +0 -63
  127. package/_cjs/actions/evm/fund/Quote.js.map +0 -1
  128. package/_cjs/actions/evm/fund/waitForFundOperationReceipt.js.map +0 -1
  129. package/_esm/actions/evm/fund/Quote.js +0 -59
  130. package/_esm/actions/evm/fund/Quote.js.map +0 -1
  131. package/_esm/actions/evm/fund/waitForFundOperationReceipt.js.map +0 -1
  132. package/_types/actions/evm/fund/Quote.d.ts +0 -51
  133. package/_types/actions/evm/fund/Quote.d.ts.map +0 -1
  134. package/_types/actions/evm/fund/types.d.ts +0 -16
  135. package/_types/actions/evm/fund/types.d.ts.map +0 -1
  136. package/_types/actions/evm/fund/waitForFundOperationReceipt.d.ts.map +0 -1
  137. package/actions/evm/fund/Quote.ts +0 -83
  138. package/actions/evm/fund/types.ts +0 -16
  139. /package/_cjs/actions/{evm/fund/types.js → types.js} +0 -0
  140. /package/_esm/actions/{evm/fund/types.js → types.js} +0 -0
@@ -18,6 +18,11 @@ export async function toNetworkScopedEvmServerAccount(options) {
18
18
  networkOrNodeUrl: options.network,
19
19
  account: options.account,
20
20
  });
21
+ /*
22
+ * Determine the actual network name from the resolved chain
23
+ * This handles cases where options.network is an RPC URL
24
+ */
25
+ const resolvedNetworkName = mapChainToNetwork(chain) ?? options.network;
21
26
  const shouldUseApiForSends = chain.id === base.id ||
22
27
  chain.id === baseSepolia.id ||
23
28
  chain.id === mainnet.id ||
@@ -82,7 +87,7 @@ export async function toNetworkScopedEvmServerAccount(options) {
82
87
  return publicClient.waitForTransactionReceipt(waitOptions);
83
88
  },
84
89
  };
85
- if (isMethodSupportedOnNetwork("listTokenBalances", options.network)) {
90
+ if (isMethodSupportedOnNetwork("listTokenBalances", resolvedNetworkName)) {
86
91
  Object.assign(account, {
87
92
  listTokenBalances: async (listTokenBalancesOptions) => {
88
93
  return options.account.listTokenBalances({
@@ -92,7 +97,7 @@ export async function toNetworkScopedEvmServerAccount(options) {
92
97
  },
93
98
  });
94
99
  }
95
- if (isMethodSupportedOnNetwork("requestFaucet", options.network)) {
100
+ if (isMethodSupportedOnNetwork("requestFaucet", resolvedNetworkName)) {
96
101
  Object.assign(account, {
97
102
  requestFaucet: async (faucetOptions) => {
98
103
  return options.account.requestFaucet({
@@ -102,7 +107,7 @@ export async function toNetworkScopedEvmServerAccount(options) {
102
107
  },
103
108
  });
104
109
  }
105
- if (isMethodSupportedOnNetwork("quoteFund", options.network)) {
110
+ if (isMethodSupportedOnNetwork("quoteFund", resolvedNetworkName)) {
106
111
  Object.assign(account, {
107
112
  quoteFund: async (quoteFundOptions) => {
108
113
  return options.account.quoteFund({
@@ -111,7 +116,7 @@ export async function toNetworkScopedEvmServerAccount(options) {
111
116
  },
112
117
  });
113
118
  }
114
- if (isMethodSupportedOnNetwork("fund", options.network)) {
119
+ if (isMethodSupportedOnNetwork("fund", resolvedNetworkName)) {
115
120
  Object.assign(account, {
116
121
  fund: async (fundOptions) => {
117
122
  return options.account.fund({
@@ -123,14 +128,14 @@ export async function toNetworkScopedEvmServerAccount(options) {
123
128
  },
124
129
  });
125
130
  }
126
- if (isMethodSupportedOnNetwork("quoteSwap", options.network)) {
131
+ if (isMethodSupportedOnNetwork("quoteSwap", resolvedNetworkName)) {
127
132
  Object.assign(account, {
128
133
  quoteSwap: async (quoteSwapOptions) => {
129
134
  return options.account.quoteSwap(quoteSwapOptions);
130
135
  },
131
136
  });
132
137
  }
133
- if (isMethodSupportedOnNetwork("swap", options.network)) {
138
+ if (isMethodSupportedOnNetwork("swap", resolvedNetworkName)) {
134
139
  Object.assign(account, {
135
140
  swap: async (swapOptions) => {
136
141
  return options.account.swap(swapOptions);
@@ -1 +1 @@
1
- {"version":3,"file":"toNetworkScopedEvmServerAccount.js","sourceRoot":"","sources":["../../../accounts/evm/toNetworkScopedEvmServerAccount.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"toNetworkScopedEvmServerAccount.js","sourceRoot":"","sources":["../../../accounts/evm/toNetworkScopedEvmServerAccount.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,6 @@ import { getBaseNodeRpcUrl } from "./getBaseNodeRpcUrl.js";
2
2
  import { isMethodSupportedOnNetwork } from "./networkCapabilities.js";
3
3
  import { fund } from "../../actions/evm/fund/fund.js";
4
4
  import { quoteFund } from "../../actions/evm/fund/quoteFund.js";
5
- import { waitForFundOperationReceipt } from "../../actions/evm/fund/waitForFundOperationReceipt.js";
6
5
  import { getUserOperation } from "../../actions/evm/getUserOperation.js";
7
6
  import { listTokenBalances } from "../../actions/evm/listTokenBalances.js";
8
7
  import { requestFaucet } from "../../actions/evm/requestFaucet.js";
@@ -12,6 +11,7 @@ import { sendSwapOperation } from "../../actions/evm/swap/sendSwapOperation.js";
12
11
  import { smartAccountTransferStrategy } from "../../actions/evm/transfer/smartAccountTransferStrategy.js";
13
12
  import { transfer } from "../../actions/evm/transfer/transfer.js";
14
13
  import { waitForUserOperation } from "../../actions/evm/waitForUserOperation.js";
14
+ import { waitForFundOperationReceipt } from "../../actions/waitForFundOperationReceipt.js";
15
15
  import { Analytics } from "../../analytics.js";
16
16
  /**
17
17
  * Creates a NetworkScopedEvmSmartAccount instance from an existing EvmSmartAccount and owner.
@@ -1 +1 @@
1
- {"version":3,"file":"toNetworkScopedEvmSmartAccount.js","sourceRoot":"","sources":["../../../accounts/evm/toNetworkScopedEvmSmartAccount.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"toNetworkScopedEvmSmartAccount.js","sourceRoot":"","sources":["../../../accounts/evm/toNetworkScopedEvmSmartAccount.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,10 @@
1
+ import { fund } from "../../actions/solana/fund/fund.js";
2
+ import { quoteFund } from "../../actions/solana/fund/quoteFund.js";
1
3
  import { requestFaucet } from "../../actions/solana/requestFaucet.js";
2
4
  import { signMessage } from "../../actions/solana/signMessage.js";
3
5
  import { signTransaction } from "../../actions/solana/signTransaction.js";
4
6
  import { transfer } from "../../actions/solana/transfer.js";
7
+ import { waitForFundOperationReceipt, } from "../../actions/waitForFundOperationReceipt.js";
5
8
  import { Analytics } from "../../analytics.js";
6
9
  /**
7
10
  * Creates a Solana account instance with actions from an existing Solana account.
@@ -60,6 +63,33 @@ export function toSolanaAccount(apiClient, options) {
60
63
  from: account.address,
61
64
  });
62
65
  },
66
+ async quoteFund(options) {
67
+ Analytics.trackAction({
68
+ action: "quote_fund",
69
+ accountType: "solana",
70
+ });
71
+ return quoteFund(apiClient, {
72
+ ...options,
73
+ address: account.address,
74
+ });
75
+ },
76
+ async fund(options) {
77
+ Analytics.trackAction({
78
+ action: "fund",
79
+ accountType: "solana",
80
+ });
81
+ return fund(apiClient, {
82
+ ...options,
83
+ address: account.address,
84
+ });
85
+ },
86
+ async waitForFundOperationReceipt(options) {
87
+ Analytics.trackAction({
88
+ action: "wait_for_fund_operation_receipt",
89
+ accountType: "solana",
90
+ });
91
+ return waitForFundOperationReceipt(apiClient, options);
92
+ },
63
93
  };
64
94
  return account;
65
95
  }
@@ -1 +1 @@
1
- {"version":3,"file":"toSolanaAccount.js","sourceRoot":"","sources":["../../../accounts/solana/toSolanaAccount.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAwB,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAgB/C;;;;;;;;GAQG;AACH,MAAM,UAAU,eAAe,CAC7B,SAA+B,EAC/B,OAA+B;IAE/B,MAAM,OAAO,GAAkB;QAC7B,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO;QAChC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI;QAC1B,KAAK,CAAC,aAAa,CAAC,OAA8C;YAChE,SAAS,CAAC,WAAW,CAAC;gBACpB,MAAM,EAAE,gBAAgB;gBACxB,WAAW,EAAE,QAAQ;aACtB,CAAC,CAAC;YAEH,OAAO,aAAa,CAAC,SAAS,EAAE;gBAC9B,GAAG,OAAO;gBACV,OAAO,EAAE,OAAO,CAAC,OAAO;aACzB,CAAC,CAAC;QACL,CAAC;QACD,KAAK,CAAC,WAAW,CAAC,OAA4C;YAC5D,SAAS,CAAC,WAAW,CAAC;gBACpB,MAAM,EAAE,cAAc;gBACtB,WAAW,EAAE,QAAQ;aACtB,CAAC,CAAC;YAEH,OAAO,WAAW,CAAC,SAAS,EAAE;gBAC5B,GAAG,OAAO;gBACV,OAAO,EAAE,OAAO,CAAC,OAAO;aACzB,CAAC,CAAC;QACL,CAAC;QACD,KAAK,CAAC,eAAe,CACnB,OAAgD;YAEhD,SAAS,CAAC,WAAW,CAAC;gBACpB,MAAM,EAAE,kBAAkB;gBAC1B,WAAW,EAAE,QAAQ;aACtB,CAAC,CAAC;YAEH,OAAO,eAAe,CAAC,SAAS,EAAE;gBAChC,GAAG,OAAO;gBACV,OAAO,EAAE,OAAO,CAAC,OAAO;aACzB,CAAC,CAAC;QACL,CAAC;QACD,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ;QAClC,KAAK,CAAC,QAAQ,CAAC,OAAsC;YACnD,SAAS,CAAC,WAAW,CAAC;gBACpB,MAAM,EAAE,UAAU;gBAClB,WAAW,EAAE,QAAQ;gBACrB,UAAU,EAAE;oBACV,OAAO,EAAE,OAAO,CAAC,OAAO;iBACzB;aACF,CAAC,CAAC;YAEH,OAAO,QAAQ,CAAC,SAAS,EAAE;gBACzB,GAAG,OAAO;gBACV,IAAI,EAAE,OAAO,CAAC,OAAO;aACtB,CAAC,CAAC;QACL,CAAC;KACF,CAAC;IAEF,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"toSolanaAccount.js","sourceRoot":"","sources":["../../../accounts/solana/toSolanaAccount.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,101 @@
1
+ /**
2
+ * Base class representing a funding quote that can be executed.
3
+ */
4
+ class BaseQuote {
5
+ /** Quote for the transfer. */
6
+ quoteId;
7
+ /** The amount in fiat currency. */
8
+ fiatAmount;
9
+ /** The fiat currency. */
10
+ fiatCurrency;
11
+ /** The amount in the token to transfer. */
12
+ tokenAmount;
13
+ /** The token to transfer. */
14
+ token;
15
+ /** Fees in the token to transfer. */
16
+ fees;
17
+ apiClient;
18
+ /**
19
+ * Creates a new BaseQuote instance.
20
+ *
21
+ * @param apiClient - The API client.
22
+ * @param quoteId - The quote ID.
23
+ * @param fiatAmount - The amount in fiat currency.
24
+ * @param fiatCurrency - The fiat currency.
25
+ * @param tokenAmount - The amount in the token to transfer.
26
+ * @param token - The token to transfer.
27
+ * @param fees - Fees for the transfer.
28
+ */
29
+ constructor(apiClient, quoteId, fiatAmount, fiatCurrency, tokenAmount, token, fees) {
30
+ this.apiClient = apiClient;
31
+ this.quoteId = quoteId;
32
+ this.fiatAmount = fiatAmount;
33
+ this.fiatCurrency = fiatCurrency;
34
+ this.tokenAmount = tokenAmount;
35
+ this.token = token;
36
+ this.fees = fees;
37
+ }
38
+ /**
39
+ * Executes the quote to perform the actual fund transfer.
40
+ *
41
+ * @returns A promise that resolves to the result of the executed quote.
42
+ */
43
+ async execute() {
44
+ const transfer = await this.apiClient.executePaymentTransferQuote(this.quoteId);
45
+ return {
46
+ id: transfer.id,
47
+ network: transfer.target.network,
48
+ targetAmount: transfer.targetAmount,
49
+ targetCurrency: transfer.targetCurrency,
50
+ status: transfer.status,
51
+ transactionHash: transfer.transactionHash,
52
+ };
53
+ }
54
+ }
55
+ /**
56
+ * A class representing an EVM funding quote that can be executed.
57
+ */
58
+ export class EvmQuote extends BaseQuote {
59
+ /** Network to transfer the funds to (EVM networks). */
60
+ network;
61
+ /**
62
+ * Creates a new EvmQuote instance.
63
+ *
64
+ * @param apiClient - The API client.
65
+ * @param quoteId - The quote ID.
66
+ * @param network - The EVM network to transfer funds to.
67
+ * @param fiatAmount - The amount in fiat currency.
68
+ * @param fiatCurrency - The fiat currency.
69
+ * @param tokenAmount - The amount in the token to transfer.
70
+ * @param token - The token to transfer.
71
+ * @param fees - Fees for the transfer.
72
+ */
73
+ constructor(apiClient, quoteId, network, fiatAmount, fiatCurrency, tokenAmount, token, fees) {
74
+ super(apiClient, quoteId, fiatAmount, fiatCurrency, tokenAmount, token, fees);
75
+ this.network = network;
76
+ }
77
+ }
78
+ /**
79
+ * A class representing a Solana funding quote that can be executed.
80
+ */
81
+ export class SolanaQuote extends BaseQuote {
82
+ /** Network to transfer the funds to (Solana). */
83
+ network;
84
+ /**
85
+ * Creates a new SolanaQuote instance.
86
+ *
87
+ * @param apiClient - The API client.
88
+ * @param quoteId - The quote ID.
89
+ * @param network - The Solana network to transfer funds to.
90
+ * @param fiatAmount - The amount in fiat currency.
91
+ * @param fiatCurrency - The fiat currency.
92
+ * @param tokenAmount - The amount in the token to transfer.
93
+ * @param token - The token to transfer.
94
+ * @param fees - Fees for the transfer.
95
+ */
96
+ constructor(apiClient, quoteId, network, fiatAmount, fiatCurrency, tokenAmount, token, fees) {
97
+ super(apiClient, quoteId, fiatAmount, fiatCurrency, tokenAmount, token, fees);
98
+ this.network = network;
99
+ }
100
+ }
101
+ //# sourceMappingURL=Quote.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Quote.js","sourceRoot":"","sources":["../../actions/Quote.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAe,SAAS;IACtB,8BAA8B;IACvB,OAAO,CAAS;IACvB,mCAAmC;IAC5B,UAAU,CAAS;IAC1B,yBAAyB;IAClB,YAAY,CAAS;IAC5B,2CAA2C;IACpC,WAAW,CAAS;IAC3B,6BAA6B;IACtB,KAAK,CAAS;IACrB,qCAAqC;IAC9B,IAAI,CAKP;IAEM,SAAS,CAAuB;IAE1C;;;;;;;;;;OAUG;IACH,YACE,SAA+B,EAC/B,OAAe,EACf,UAAkB,EAClB,YAAoB,EACpB,WAAmB,EACnB,KAAa,EACb,IAIG;QAEH,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,OAAO;QACX,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,2BAA2B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEhF,OAAO;YACL,EAAE,EAAE,QAAQ,CAAC,EAAE;YACf,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO;YAChC,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,cAAc,EAAE,QAAQ,CAAC,cAAc;YACvC,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,eAAe,EAAE,QAAQ,CAAC,eAAe;SAC1C,CAAC;IACJ,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,QAAS,SAAQ,SAAS;IACrC,uDAAuD;IAChD,OAAO,CAAsB;IAEpC;;;;;;;;;;;OAWG;IACH,YACE,SAA+B,EAC/B,OAAe,EACf,OAA4B,EAC5B,UAAkB,EAClB,YAAoB,EACpB,WAAmB,EACnB,KAAa,EACb,IAIG;QAEH,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QAC9E,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,WAAY,SAAQ,SAAS;IACxC,iDAAiD;IAC1C,OAAO,CAAW;IAEzB;;;;;;;;;;;OAWG;IACH,YACE,SAA+B,EAC/B,OAAe,EACf,OAAiB,EACjB,UAAkB,EAClB,YAAoB,EACpB,WAAmB,EACnB,KAAa,EACb,IAIG;QAEH,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QAC9E,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CACF"}
@@ -10,16 +10,16 @@ import { CreatePaymentTransferQuoteBodySourceType, CreatePaymentTransferQuoteBod
10
10
  * @returns A promise that resolves to the fund operation result.
11
11
  */
12
12
  export async function fund(apiClient, options) {
13
- const paymentMethods = await apiClient.getPaymentMethods();
14
- const cardPaymentMethod = paymentMethods.find(method => method.type === "card" && method.actions.includes("source"));
15
- if (!cardPaymentMethod) {
16
- throw new Error("No card found to fund account");
17
- }
18
13
  if (options.token !== "eth" && options.token !== "usdc") {
19
14
  throw new UserInputValidationError("Invalid token, must be eth or usdc");
20
15
  }
21
16
  const decimals = options.token === "eth" ? 18 : 6;
22
17
  const amount = formatUnits(options.amount, decimals);
18
+ const paymentMethods = await apiClient.getPaymentMethods();
19
+ const cardPaymentMethod = paymentMethods.find(method => method.type === "card" && method.actions.includes("source"));
20
+ if (!cardPaymentMethod) {
21
+ throw new Error("No card found to fund account");
22
+ }
23
23
  const response = await apiClient.createPaymentTransferQuote({
24
24
  sourceType: CreatePaymentTransferQuoteBodySourceType.payment_method,
25
25
  source: {
@@ -1 +1 @@
1
- {"version":3,"file":"fund.js","sourceRoot":"","sources":["../../../../actions/evm/fund/fund.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAGnC,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EACL,wCAAwC,EACxC,wCAAwC,GAEzC,MAAM,kCAAkC,CAAC;AAgB1C;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,IAAI,CACxB,SAA+B,EAC/B,OAAoB;IAEpB,MAAM,cAAc,GAAG,MAAM,SAAS,CAAC,iBAAiB,EAAE,CAAC;IAC3D,MAAM,iBAAiB,GAAG,cAAc,CAAC,IAAI,CAC3C,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CACtE,CAAC;IAEF,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,IAAI,OAAO,CAAC,KAAK,KAAK,KAAK,IAAI,OAAO,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;QACxD,MAAM,IAAI,wBAAwB,CAAC,oCAAoC,CAAC,CAAC;IAC3E,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAClD,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAErD,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,0BAA0B,CAAC;QAC1D,UAAU,EAAE,wCAAwC,CAAC,cAAc;QACnE,MAAM,EAAE;YACN,EAAE,EAAE,iBAAiB,CAAC,EAAE;SACzB;QACD,UAAU,EAAE,wCAAwC,CAAC,WAAW;QAChE,MAAM,EAAE;YACN,QAAQ,EAAE,OAAO,CAAC,KAAK;YACvB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB;QACD,MAAM;QACN,QAAQ,EAAE,OAAO,CAAC,KAAK;QACvB,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;IAEH,OAAO;QACL,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE;QACxB,OAAO,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO;QACzC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM;QAChC,YAAY,EAAE,QAAQ,CAAC,QAAQ,CAAC,YAAY;QAC5C,cAAc,EAAE,QAAQ,CAAC,QAAQ,CAAC,cAAc;QAChD,eAAe,EAAE,QAAQ,CAAC,QAAQ,CAAC,eAAe;KACnD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"fund.js","sourceRoot":"","sources":["../../../../actions/evm/fund/fund.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAEnC,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EACL,wCAAwC,EACxC,wCAAwC,GAEzC,MAAM,kCAAkC,CAAC;AAa1C;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,IAAI,CACxB,SAA+B,EAC/B,OAAuB;IAEvB,IAAI,OAAO,CAAC,KAAK,KAAK,KAAK,IAAI,OAAO,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;QACxD,MAAM,IAAI,wBAAwB,CAAC,oCAAoC,CAAC,CAAC;IAC3E,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAClD,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAErD,MAAM,cAAc,GAAG,MAAM,SAAS,CAAC,iBAAiB,EAAE,CAAC;IAC3D,MAAM,iBAAiB,GAAG,cAAc,CAAC,IAAI,CAC3C,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CACtE,CAAC;IAEF,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,0BAA0B,CAAC;QAC1D,UAAU,EAAE,wCAAwC,CAAC,cAAc;QACnE,MAAM,EAAE;YACN,EAAE,EAAE,iBAAiB,CAAC,EAAE;SACzB;QACD,UAAU,EAAE,wCAAwC,CAAC,WAAW;QAChE,MAAM,EAAE;YACN,QAAQ,EAAE,OAAO,CAAC,KAAK;YACvB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB;QACD,MAAM;QACN,QAAQ,EAAE,OAAO,CAAC,KAAK;QACvB,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;IAEH,OAAO;QACL,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE;QACxB,OAAO,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO;QACzC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM;QAChC,YAAY,EAAE,QAAQ,CAAC,QAAQ,CAAC,YAAY;QAC5C,cAAc,EAAE,QAAQ,CAAC,QAAQ,CAAC,cAAc;QAChD,eAAe,EAAE,QAAQ,CAAC,QAAQ,CAAC,eAAe;KACnD,CAAC;AACJ,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { formatUnits } from "viem";
2
- import { Quote } from "./Quote.js";
3
2
  import { UserInputValidationError } from "../../../errors.js";
4
3
  import { CreatePaymentTransferQuoteBodySourceType, CreatePaymentTransferQuoteBodyTargetType, } from "../../../openapi-client/index.js";
4
+ import { EvmQuote } from "../../Quote.js";
5
5
  /**
6
6
  * Gets a quote to fund an EVM account.
7
7
  *
@@ -11,16 +11,16 @@ import { CreatePaymentTransferQuoteBodySourceType, CreatePaymentTransferQuoteBod
11
11
  * @returns A promise that resolves to the quote.
12
12
  */
13
13
  export async function quoteFund(apiClient, options) {
14
- const paymentMethods = await apiClient.getPaymentMethods();
15
- const cardPaymentMethod = paymentMethods.find(method => method.type === "card" && method.actions.includes("source"));
16
- if (!cardPaymentMethod) {
17
- throw new Error("No card found to fund account");
18
- }
19
14
  if (options.token !== "eth" && options.token !== "usdc") {
20
15
  throw new UserInputValidationError("Invalid token, must be eth or usdc");
21
16
  }
22
17
  const decimals = options.token === "eth" ? 18 : 6;
23
18
  const amount = formatUnits(options.amount, decimals);
19
+ const paymentMethods = await apiClient.getPaymentMethods();
20
+ const cardPaymentMethod = paymentMethods.find(method => method.type === "card" && method.actions.includes("source"));
21
+ if (!cardPaymentMethod) {
22
+ throw new Error("No card found to fund account");
23
+ }
24
24
  const response = await apiClient.createPaymentTransferQuote({
25
25
  sourceType: CreatePaymentTransferQuoteBodySourceType.payment_method,
26
26
  source: {
@@ -35,7 +35,7 @@ export async function quoteFund(apiClient, options) {
35
35
  amount,
36
36
  currency: options.token,
37
37
  });
38
- return new Quote(apiClient, response.transfer.id, options.network, response.transfer.sourceAmount, response.transfer.sourceCurrency, response.transfer.targetAmount, response.transfer.targetCurrency, response.transfer.fees.map(fee => ({
38
+ return new EvmQuote(apiClient, response.transfer.id, options.network, response.transfer.sourceAmount, response.transfer.sourceCurrency, response.transfer.targetAmount, response.transfer.targetCurrency, response.transfer.fees.map(fee => ({
39
39
  type: fee.type,
40
40
  amount: fee.amount,
41
41
  currency: fee.currency,
@@ -1 +1 @@
1
- {"version":3,"file":"quoteFund.js","sourceRoot":"","sources":["../../../../actions/evm/fund/quoteFund.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAEnC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EACL,wCAAwC,EACxC,wCAAwC,GAEzC,MAAM,kCAAkC,CAAC;AAgB1C;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,SAA+B,EAC/B,OAAyB;IAEzB,MAAM,cAAc,GAAG,MAAM,SAAS,CAAC,iBAAiB,EAAE,CAAC;IAC3D,MAAM,iBAAiB,GAAG,cAAc,CAAC,IAAI,CAC3C,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CACtE,CAAC;IAEF,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,IAAI,OAAO,CAAC,KAAK,KAAK,KAAK,IAAI,OAAO,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;QACxD,MAAM,IAAI,wBAAwB,CAAC,oCAAoC,CAAC,CAAC;IAC3E,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAClD,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAErD,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,0BAA0B,CAAC;QAC1D,UAAU,EAAE,wCAAwC,CAAC,cAAc;QACnE,MAAM,EAAE;YACN,EAAE,EAAE,iBAAiB,CAAC,EAAE;SACzB;QACD,UAAU,EAAE,wCAAwC,CAAC,WAAW;QAChE,MAAM,EAAE;YACN,QAAQ,EAAE,OAAO,CAAC,KAAK;YACvB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB;QACD,MAAM;QACN,QAAQ,EAAE,OAAO,CAAC,KAAK;KACxB,CAAC,CAAC;IAEH,OAAO,IAAI,KAAK,CACd,SAAS,EACT,QAAQ,CAAC,QAAQ,CAAC,EAAE,EACpB,OAAO,CAAC,OAAO,EACf,QAAQ,CAAC,QAAQ,CAAC,YAAY,EAC9B,QAAQ,CAAC,QAAQ,CAAC,cAAc,EAChC,QAAQ,CAAC,QAAQ,CAAC,YAAY,EAC9B,QAAQ,CAAC,QAAQ,CAAC,cAAc,EAChC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACjC,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,QAAQ,EAAE,GAAG,CAAC,QAAQ;KACvB,CAAC,CAAC,CACJ,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"quoteFund.js","sourceRoot":"","sources":["../../../../actions/evm/fund/quoteFund.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAEnC,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EACL,wCAAwC,EACxC,wCAAwC,GAEzC,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAa1C;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,SAA+B,EAC/B,OAA4B;IAE5B,IAAI,OAAO,CAAC,KAAK,KAAK,KAAK,IAAI,OAAO,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;QACxD,MAAM,IAAI,wBAAwB,CAAC,oCAAoC,CAAC,CAAC;IAC3E,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAClD,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAErD,MAAM,cAAc,GAAG,MAAM,SAAS,CAAC,iBAAiB,EAAE,CAAC;IAC3D,MAAM,iBAAiB,GAAG,cAAc,CAAC,IAAI,CAC3C,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CACtE,CAAC;IAEF,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,0BAA0B,CAAC;QAC1D,UAAU,EAAE,wCAAwC,CAAC,cAAc;QACnE,MAAM,EAAE;YACN,EAAE,EAAE,iBAAiB,CAAC,EAAE;SACzB;QACD,UAAU,EAAE,wCAAwC,CAAC,WAAW;QAChE,MAAM,EAAE;YACN,QAAQ,EAAE,OAAO,CAAC,KAAK;YACvB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB;QACD,MAAM;QACN,QAAQ,EAAE,OAAO,CAAC,KAAK;KACxB,CAAC,CAAC;IAEH,OAAO,IAAI,QAAQ,CACjB,SAAS,EACT,QAAQ,CAAC,QAAQ,CAAC,EAAE,EACpB,OAAO,CAAC,OAAO,EACf,QAAQ,CAAC,QAAQ,CAAC,YAAY,EAC9B,QAAQ,CAAC,QAAQ,CAAC,cAAc,EAChC,QAAQ,CAAC,QAAQ,CAAC,YAAY,EAC9B,QAAQ,CAAC,QAAQ,CAAC,cAAc,EAChC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACjC,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,QAAQ,EAAE,GAAG,CAAC,QAAQ;KACvB,CAAC,CAAC,CACJ,CAAC;AACJ,CAAC"}
@@ -3,6 +3,7 @@ import { getErc20Address } from "./utils.js";
3
3
  import { serializeEIP1559Transaction } from "../../../utils/serializeTransaction.js";
4
4
  export const accountTransferStrategy = {
5
5
  executeTransfer: async ({ apiClient, from, to, value, token, network }) => {
6
+ network = network;
6
7
  if (token === "eth") {
7
8
  return apiClient.sendEvmTransaction(from.address, {
8
9
  transaction: serializeEIP1559Transaction({
@@ -1 +1 @@
1
- {"version":3,"file":"accountTransferStrategy.js","sourceRoot":"","sources":["../../../../actions/evm/transfer/accountTransferStrategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAEpD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,2BAA2B,EAAE,MAAM,wCAAwC,CAAC;AAMrF,MAAM,CAAC,MAAM,uBAAuB,GAA0C;IAC5E,eAAe,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE;QACxE,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;YACpB,OAAO,SAAS,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE;gBAChD,WAAW,EAAE,2BAA2B,CAAC;oBACvC,KAAK;oBACL,EAAE;iBACH,CAAC;gBACF,OAAO;aACR,CAA+B,CAAC;QACnC,CAAC;QAED,MAAM,YAAY,GAAG,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAErD,MAAM,SAAS,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE;YAC/C,WAAW,EAAE,2BAA2B,CAAC;gBACvC,EAAE,EAAE,YAAY;gBAChB,IAAI,EAAE,kBAAkB,CAAC;oBACvB,GAAG,EAAE,QAAQ;oBACb,YAAY,EAAE,SAAS;oBACvB,IAAI,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC;iBAClB,CAAC;aACH,CAAC;YACF,OAAO;SACR,CAAC,CAAC;QAEH,OAAO,SAAS,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE;YAChD,WAAW,EAAE,2BAA2B,CAAC;gBACvC,EAAE,EAAE,YAAY;gBAChB,IAAI,EAAE,kBAAkB,CAAC;oBACvB,GAAG,EAAE,QAAQ;oBACb,YAAY,EAAE,UAAU;oBACxB,IAAI,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC;iBAClB,CAAC;aACH,CAAC;YACF,OAAO;SACR,CAA+B,CAAC;IACnC,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"accountTransferStrategy.js","sourceRoot":"","sources":["../../../../actions/evm/transfer/accountTransferStrategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAEpD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,EAAE,2BAA2B,EAAE,MAAM,wCAAwC,CAAC;AAMrF,MAAM,CAAC,MAAM,uBAAuB,GAA0C;IAC5E,eAAe,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE;QACxE,OAAO,GAAG,OAAwC,CAAC;QACnD,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;YACpB,OAAO,SAAS,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE;gBAChD,WAAW,EAAE,2BAA2B,CAAC;oBACvC,KAAK;oBACL,EAAE;iBACH,CAAC;gBACF,OAAO;aACR,CAA+B,CAAC;QACnC,CAAC;QAED,MAAM,YAAY,GAAG,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAErD,MAAM,SAAS,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE;YAC/C,WAAW,EAAE,2BAA2B,CAAC;gBACvC,EAAE,EAAE,YAAY;gBAChB,IAAI,EAAE,kBAAkB,CAAC;oBACvB,GAAG,EAAE,QAAQ;oBACb,YAAY,EAAE,SAAS;oBACvB,IAAI,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC;iBAClB,CAAC;aACH,CAAC;YACF,OAAO;SACR,CAAC,CAAC;QAEH,OAAO,SAAS,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE;YAChD,WAAW,EAAE,2BAA2B,CAAC;gBACvC,EAAE,EAAE,YAAY;gBAChB,IAAI,EAAE,kBAAkB,CAAC;oBACvB,GAAG,EAAE,QAAQ;oBACb,YAAY,EAAE,UAAU;oBACxB,IAAI,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC;iBAClB,CAAC;aACH,CAAC;YACF,OAAO;SACR,CAA+B,CAAC;IACnC,CAAC;CACF,CAAC"}
@@ -0,0 +1,47 @@
1
+ import { formatUnits } from "viem";
2
+ import { UserInputValidationError } from "../../../errors.js";
3
+ import { CreatePaymentTransferQuoteBodySourceType, CreatePaymentTransferQuoteBodyTargetType, } from "../../../openapi-client/index.js";
4
+ /**
5
+ * Funds a Solana account.
6
+ *
7
+ * @param apiClient - The API client.
8
+ * @param options - The options for funding a Solana account.
9
+ *
10
+ * @returns A promise that resolves to the fund operation result.
11
+ */
12
+ export async function fund(apiClient, options) {
13
+ if (options.token !== "sol" && options.token !== "usdc") {
14
+ throw new UserInputValidationError("Invalid token, must be sol or usdc");
15
+ }
16
+ const decimals = options.token === "sol" ? 9 : 6;
17
+ const amount = formatUnits(options.amount, decimals);
18
+ const paymentMethods = await apiClient.getPaymentMethods();
19
+ const cardPaymentMethod = paymentMethods.find(method => method.type === "card" && method.actions.includes("source"));
20
+ if (!cardPaymentMethod) {
21
+ throw new Error("No card found to fund account");
22
+ }
23
+ const response = await apiClient.createPaymentTransferQuote({
24
+ sourceType: CreatePaymentTransferQuoteBodySourceType.payment_method,
25
+ source: {
26
+ id: cardPaymentMethod.id,
27
+ },
28
+ targetType: CreatePaymentTransferQuoteBodyTargetType.crypto_rail,
29
+ target: {
30
+ currency: options.token,
31
+ network: "solana",
32
+ address: options.address,
33
+ },
34
+ amount,
35
+ currency: options.token,
36
+ execute: true,
37
+ });
38
+ return {
39
+ id: response.transfer.id,
40
+ network: response.transfer.target.network,
41
+ status: response.transfer.status,
42
+ targetAmount: response.transfer.targetAmount,
43
+ targetCurrency: response.transfer.targetCurrency,
44
+ transactionHash: response.transfer.transactionHash,
45
+ };
46
+ }
47
+ //# sourceMappingURL=fund.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fund.js","sourceRoot":"","sources":["../../../../actions/solana/fund/fund.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAEnC,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EACL,wCAAwC,EACxC,wCAAwC,GAEzC,MAAM,kCAAkC,CAAC;AAW1C;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,IAAI,CACxB,SAA+B,EAC/B,OAA0B;IAE1B,IAAI,OAAO,CAAC,KAAK,KAAK,KAAK,IAAI,OAAO,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;QACxD,MAAM,IAAI,wBAAwB,CAAC,oCAAoC,CAAC,CAAC;IAC3E,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAErD,MAAM,cAAc,GAAG,MAAM,SAAS,CAAC,iBAAiB,EAAE,CAAC;IAC3D,MAAM,iBAAiB,GAAG,cAAc,CAAC,IAAI,CAC3C,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CACtE,CAAC;IAEF,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,0BAA0B,CAAC;QAC1D,UAAU,EAAE,wCAAwC,CAAC,cAAc;QACnE,MAAM,EAAE;YACN,EAAE,EAAE,iBAAiB,CAAC,EAAE;SACzB;QACD,UAAU,EAAE,wCAAwC,CAAC,WAAW;QAChE,MAAM,EAAE;YACN,QAAQ,EAAE,OAAO,CAAC,KAAK;YACvB,OAAO,EAAE,QAAQ;YACjB,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB;QACD,MAAM;QACN,QAAQ,EAAE,OAAO,CAAC,KAAK;QACvB,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;IAEH,OAAO;QACL,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE;QACxB,OAAO,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO;QACzC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM;QAChC,YAAY,EAAE,QAAQ,CAAC,QAAQ,CAAC,YAAY;QAC5C,cAAc,EAAE,QAAQ,CAAC,QAAQ,CAAC,cAAc;QAChD,eAAe,EAAE,QAAQ,CAAC,QAAQ,CAAC,eAAe;KACnD,CAAC;AACJ,CAAC"}
@@ -0,0 +1,44 @@
1
+ import { formatUnits } from "viem";
2
+ import { UserInputValidationError } from "../../../errors.js";
3
+ import { CreatePaymentTransferQuoteBodySourceType, CreatePaymentTransferQuoteBodyTargetType, } from "../../../openapi-client/index.js";
4
+ import { SolanaQuote } from "../../Quote.js";
5
+ /**
6
+ * Gets a quote to fund a Solana account.
7
+ *
8
+ * @param apiClient - The API client.
9
+ * @param options - The options for getting a quote to fund a Solana account.
10
+ *
11
+ * @returns A promise that resolves to the quote.
12
+ */
13
+ export async function quoteFund(apiClient, options) {
14
+ if (options.token !== "sol" && options.token !== "usdc") {
15
+ throw new UserInputValidationError("Invalid token, must be sol or usdc");
16
+ }
17
+ const decimals = options.token === "sol" ? 9 : 6;
18
+ const amount = formatUnits(options.amount, decimals);
19
+ const paymentMethods = await apiClient.getPaymentMethods();
20
+ const cardPaymentMethod = paymentMethods.find(method => method.type === "card" && method.actions.includes("source"));
21
+ if (!cardPaymentMethod) {
22
+ throw new Error("No card found to fund account");
23
+ }
24
+ const response = await apiClient.createPaymentTransferQuote({
25
+ sourceType: CreatePaymentTransferQuoteBodySourceType.payment_method,
26
+ source: {
27
+ id: cardPaymentMethod.id,
28
+ },
29
+ targetType: CreatePaymentTransferQuoteBodyTargetType.crypto_rail,
30
+ target: {
31
+ currency: options.token,
32
+ network: "solana",
33
+ address: options.address,
34
+ },
35
+ amount,
36
+ currency: options.token,
37
+ });
38
+ return new SolanaQuote(apiClient, response.transfer.id, "solana", response.transfer.sourceAmount, response.transfer.sourceCurrency, response.transfer.targetAmount, response.transfer.targetCurrency, response.transfer.fees.map(fee => ({
39
+ type: fee.type,
40
+ amount: fee.amount,
41
+ currency: fee.currency,
42
+ })));
43
+ }
44
+ //# sourceMappingURL=quoteFund.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quoteFund.js","sourceRoot":"","sources":["../../../../actions/solana/fund/quoteFund.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAEnC,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAEL,wCAAwC,EACxC,wCAAwC,GACzC,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAW7C;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,SAA+B,EAC/B,OAA+B;IAE/B,IAAI,OAAO,CAAC,KAAK,KAAK,KAAK,IAAI,OAAO,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;QACxD,MAAM,IAAI,wBAAwB,CAAC,oCAAoC,CAAC,CAAC;IAC3E,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAErD,MAAM,cAAc,GAAG,MAAM,SAAS,CAAC,iBAAiB,EAAE,CAAC;IAC3D,MAAM,iBAAiB,GAAG,cAAc,CAAC,IAAI,CAC3C,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CACtE,CAAC;IAEF,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,0BAA0B,CAAC;QAC1D,UAAU,EAAE,wCAAwC,CAAC,cAAc;QACnE,MAAM,EAAE;YACN,EAAE,EAAE,iBAAiB,CAAC,EAAE;SACzB;QACD,UAAU,EAAE,wCAAwC,CAAC,WAAW;QAChE,MAAM,EAAE;YACN,QAAQ,EAAE,OAAO,CAAC,KAAK;YACvB,OAAO,EAAE,QAAQ;YACjB,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB;QACD,MAAM;QACN,QAAQ,EAAE,OAAO,CAAC,KAAK;KACxB,CAAC,CAAC;IAEH,OAAO,IAAI,WAAW,CACpB,SAAS,EACT,QAAQ,CAAC,QAAQ,CAAC,EAAE,EACpB,QAAQ,EACR,QAAQ,CAAC,QAAQ,CAAC,YAAY,EAC9B,QAAQ,CAAC,QAAQ,CAAC,cAAc,EAChC,QAAQ,CAAC,QAAQ,CAAC,YAAY,EAC9B,QAAQ,CAAC,QAAQ,CAAC,cAAc,EAChC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACjC,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,QAAQ,EAAE,GAAG,CAAC,QAAQ;KACvB,CAAC,CAAC,CACJ,CAAC;AACJ,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { getMint, getAssociatedTokenAddress, getAccount, createAssociatedTokenAccountInstruction, createTransferCheckedInstruction, } from "@solana/spl-token";
2
- import { MessageV0, PublicKey, SystemProgram, TransactionMessage, VersionedTransaction, } from "@solana/web3.js";
2
+ import { PublicKey, SystemProgram, SYSVAR_RECENT_BLOCKHASHES_PUBKEY, Transaction, } from "@solana/web3.js";
3
+ import { sendTransaction } from "./sendTransaction.js";
3
4
  import { getConnectedNetwork, getOrCreateConnection, getUsdcMintAddress, } from "./utils.js";
4
5
  /**
5
6
  * Transfers SOL or SPL tokens between accounts
@@ -11,9 +12,9 @@ import { getConnectedNetwork, getOrCreateConnection, getUsdcMintAddress, } from
11
12
  */
12
13
  export async function transfer(apiClient, options) {
13
14
  const connection = getOrCreateConnection({ networkOrConnection: options.network });
15
+ const connectedNetwork = await getConnectedNetwork(connection);
14
16
  const tx = options.token === "sol"
15
17
  ? await getNativeTransfer({
16
- connection,
17
18
  from: options.from,
18
19
  to: options.to,
19
20
  amount: options.amount,
@@ -22,52 +23,40 @@ export async function transfer(apiClient, options) {
22
23
  connection,
23
24
  from: options.from,
24
25
  to: options.to,
25
- mintAddress: options.token === "usdc"
26
- ? getUsdcMintAddress(await getConnectedNetwork(connection))
27
- : options.token,
26
+ mintAddress: options.token === "usdc" ? getUsdcMintAddress(connectedNetwork) : options.token,
28
27
  amount: options.amount,
29
28
  });
30
- const serializedTx = Buffer.from(tx.serialize()).toString("base64");
31
- const signedTxResponse = await apiClient.signSolanaTransaction(options.from, {
29
+ const serializedTx = Buffer.from(tx.serialize({ requireAllSignatures: false })).toString("base64");
30
+ const signature = await sendTransaction(apiClient, {
31
+ network: connectedNetwork === "mainnet" ? "solana" : "solana-devnet",
32
32
  transaction: serializedTx,
33
33
  });
34
- const decodedSignedTx = Buffer.from(signedTxResponse.signedTransaction, "base64");
35
- const signature = await connection.sendRawTransaction(decodedSignedTx, {
36
- skipPreflight: false,
37
- maxRetries: 3,
38
- });
39
- return { signature };
34
+ return signature;
40
35
  }
41
36
  /**
42
- * Gets the instructions for a native SOL transfer
37
+ * Gets the transaction for a native SOL transfer
43
38
  *
44
39
  * @param options - The options for the native SOL transfer
45
40
  *
46
- * @param options.connection - The Solana connection
47
41
  * @param options.from - The source address
48
42
  * @param options.to - The destination address
49
43
  * @param options.amount - The amount to transfer
50
44
  *
51
45
  * @returns The native SOL transfer transaction
52
46
  */
53
- async function getNativeTransfer({ connection, from, to, amount, }) {
54
- const { blockhash } = await connection.getLatestBlockhash();
55
- const instructions = [
56
- SystemProgram.transfer({
57
- fromPubkey: new PublicKey(from),
58
- toPubkey: new PublicKey(to),
59
- lamports: amount,
60
- }),
61
- ];
62
- const messageV0 = new TransactionMessage({
63
- payerKey: new PublicKey(from),
64
- recentBlockhash: blockhash,
65
- instructions,
66
- }).compileToV0Message();
67
- return new VersionedTransaction(messageV0);
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;
68
57
  }
69
58
  /**
70
- * Gets the instructions for a SPL token transfer
59
+ * Gets the transaction for a SPL token transfer
71
60
  *
72
61
  * @param options - The options for the SPL token transfer
73
62
  *
@@ -92,7 +81,7 @@ async function getSplTransfer({ connection, from, to, mintAddress, amount, }) {
92
81
  }
93
82
  const sourceAta = await getAssociatedTokenAddress(mintPubkey, fromPubkey);
94
83
  const destinationAta = await getAssociatedTokenAddress(mintPubkey, toPubkey);
95
- const instructions = [];
84
+ const transaction = new Transaction();
96
85
  const sourceAccount = await getAccount(connection, sourceAta);
97
86
  if (sourceAccount.amount < amount) {
98
87
  throw new Error(`Insufficient token balance. Have ${sourceAccount.amount}, need ${amount}`);
@@ -102,13 +91,11 @@ async function getSplTransfer({ connection, from, to, mintAddress, amount, }) {
102
91
  await getAccount(connection, destinationAta);
103
92
  }
104
93
  catch {
105
- instructions.push(createAssociatedTokenAccountInstruction(fromPubkey, destinationAta, toPubkey, mintPubkey));
94
+ transaction.add(createAssociatedTokenAccountInstruction(fromPubkey, destinationAta, toPubkey, mintPubkey));
106
95
  }
107
- instructions.push(createTransferCheckedInstruction(sourceAta, mintPubkey, destinationAta, fromPubkey, amount, mintInfo.decimals));
108
- return new VersionedTransaction(MessageV0.compile({
109
- payerKey: fromPubkey,
110
- instructions: instructions,
111
- recentBlockhash: (await connection.getLatestBlockhash()).blockhash,
112
- }));
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;
113
100
  }
114
101
  //# sourceMappingURL=transfer.js.map