@coinbase/cdp-sdk 1.15.0 → 1.16.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 (77) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/README.md +82 -20
  3. package/_cjs/accounts/evm/toEvmServerAccount.js +13 -7
  4. package/_cjs/accounts/evm/toEvmServerAccount.js.map +1 -1
  5. package/_cjs/accounts/evm/toEvmSmartAccount.js +18 -0
  6. package/_cjs/accounts/evm/toEvmSmartAccount.js.map +1 -1
  7. package/_cjs/actions/evm/signAndWrapTypedDataForSmartAccount.js +186 -0
  8. package/_cjs/actions/evm/signAndWrapTypedDataForSmartAccount.js.map +1 -0
  9. package/_cjs/actions/evm/swap/createSwapQuote.js +26 -8
  10. package/_cjs/actions/evm/swap/createSwapQuote.js.map +1 -1
  11. package/_cjs/actions/evm/swap/getSwapPrice.js +3 -2
  12. package/_cjs/actions/evm/swap/getSwapPrice.js.map +1 -1
  13. package/_cjs/actions/evm/swap/sendSwapOperation.js +153 -0
  14. package/_cjs/actions/evm/swap/sendSwapOperation.js.map +1 -0
  15. package/_cjs/actions/evm/swap/sendSwapTransaction.js +16 -2
  16. package/_cjs/actions/evm/swap/sendSwapTransaction.js.map +1 -1
  17. package/_cjs/client/evm/evm.js +13 -6
  18. package/_cjs/client/evm/evm.js.map +1 -1
  19. package/_cjs/utils/uuidV4.js +26 -0
  20. package/_cjs/utils/uuidV4.js.map +1 -0
  21. package/_cjs/version.js +1 -1
  22. package/_esm/accounts/evm/toEvmServerAccount.js +14 -8
  23. package/_esm/accounts/evm/toEvmServerAccount.js.map +1 -1
  24. package/_esm/accounts/evm/toEvmSmartAccount.js +18 -0
  25. package/_esm/accounts/evm/toEvmSmartAccount.js.map +1 -1
  26. package/_esm/actions/evm/signAndWrapTypedDataForSmartAccount.js +181 -0
  27. package/_esm/actions/evm/signAndWrapTypedDataForSmartAccount.js.map +1 -0
  28. package/_esm/actions/evm/swap/createSwapQuote.js +26 -8
  29. package/_esm/actions/evm/swap/createSwapQuote.js.map +1 -1
  30. package/_esm/actions/evm/swap/getSwapPrice.js +3 -2
  31. package/_esm/actions/evm/swap/getSwapPrice.js.map +1 -1
  32. package/_esm/actions/evm/swap/sendSwapOperation.js +150 -0
  33. package/_esm/actions/evm/swap/sendSwapOperation.js.map +1 -0
  34. package/_esm/actions/evm/swap/sendSwapTransaction.js +16 -2
  35. package/_esm/actions/evm/swap/sendSwapTransaction.js.map +1 -1
  36. package/_esm/client/evm/evm.js +14 -7
  37. package/_esm/client/evm/evm.js.map +1 -1
  38. package/_esm/utils/uuidV4.js +23 -0
  39. package/_esm/utils/uuidV4.js.map +1 -0
  40. package/_esm/version.js +1 -1
  41. package/_types/accounts/evm/toEvmServerAccount.d.ts.map +1 -1
  42. package/_types/accounts/evm/toEvmSmartAccount.d.ts.map +1 -1
  43. package/_types/accounts/evm/types.d.ts +4 -4
  44. package/_types/accounts/evm/types.d.ts.map +1 -1
  45. package/_types/actions/evm/signAndWrapTypedDataForSmartAccount.d.ts +133 -0
  46. package/_types/actions/evm/signAndWrapTypedDataForSmartAccount.d.ts.map +1 -0
  47. package/_types/actions/evm/swap/createSwapQuote.d.ts.map +1 -1
  48. package/_types/actions/evm/swap/getSwapPrice.d.ts +2 -1
  49. package/_types/actions/evm/swap/getSwapPrice.d.ts.map +1 -1
  50. package/_types/actions/evm/swap/sendSwapOperation.d.ts +64 -0
  51. package/_types/actions/evm/swap/sendSwapOperation.d.ts.map +1 -0
  52. package/_types/actions/evm/swap/sendSwapTransaction.d.ts.map +1 -1
  53. package/_types/actions/evm/swap/types.d.ts +131 -5
  54. package/_types/actions/evm/swap/types.d.ts.map +1 -1
  55. package/_types/actions/evm/types.d.ts +112 -21
  56. package/_types/actions/evm/types.d.ts.map +1 -1
  57. package/_types/client/evm/evm.d.ts.map +1 -1
  58. package/_types/client/evm/evm.types.d.ts +32 -6
  59. package/_types/client/evm/evm.types.d.ts.map +1 -1
  60. package/_types/utils/uuidV4.d.ts +10 -0
  61. package/_types/utils/uuidV4.d.ts.map +1 -0
  62. package/_types/version.d.ts +1 -1
  63. package/accounts/evm/toEvmServerAccount.ts +33 -15
  64. package/accounts/evm/toEvmSmartAccount.ts +25 -0
  65. package/accounts/evm/types.ts +14 -6
  66. package/actions/evm/signAndWrapTypedDataForSmartAccount.ts +246 -0
  67. package/actions/evm/swap/createSwapQuote.ts +42 -17
  68. package/actions/evm/swap/getSwapPrice.ts +15 -11
  69. package/actions/evm/swap/sendSwapOperation.ts +182 -0
  70. package/actions/evm/swap/sendSwapTransaction.ts +18 -2
  71. package/actions/evm/swap/types.ts +154 -5
  72. package/actions/evm/types.ts +123 -21
  73. package/client/evm/evm.ts +19 -8
  74. package/client/evm/evm.types.ts +33 -6
  75. package/package.json +1 -1
  76. package/utils/uuidV4.ts +23 -0
  77. package/version.ts +1 -1
@@ -0,0 +1,153 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sendSwapOperation = sendSwapOperation;
4
+ const viem_1 = require("viem");
5
+ const createSwapQuote_js_1 = require("./createSwapQuote.js");
6
+ const uuidV4_js_1 = require("../../../utils/uuidV4.js");
7
+ const sendUserOperation_js_1 = require("../sendUserOperation.js");
8
+ const signAndWrapTypedDataForSmartAccount_js_1 = require("../signAndWrapTypedDataForSmartAccount.js");
9
+ /**
10
+ * Sends a swap operation to the blockchain via a smart account user operation.
11
+ * Handles any permit2 signatures required for the swap.
12
+ *
13
+ * If you encounter token allowance issues, you'll need to perform a token approval transaction first to allow
14
+ * the Permit2 contract to spend the appropriate amount of your fromToken.
15
+ * See examples for code on handling token approvals.
16
+ *
17
+ * @param {CdpOpenApiClientType} client - The client to use for sending the swap operation.
18
+ * @param {SendSwapOperationOptions} options - The options for the swap submission.
19
+ *
20
+ * @returns {Promise<SendSwapOperationResult>} A promise that resolves to the user operation result.
21
+ *
22
+ * @throws {Error} If liquidity is not available for the swap.
23
+ * @throws {Error} If there are insufficient token allowances. In this case, you need to approve the
24
+ * Permit2 contract to spend your tokens before attempting the swap. The error message
25
+ * will include the current allowance and the spender address that needs approval.
26
+ * @throws {Error} If no transaction data is found in the swap result.
27
+ *
28
+ * @example **Sending a swap with pre-created swap quote object**
29
+ * ```ts
30
+ * // First create a swap quote
31
+ * const swapQuote = await cdp.evm.createSwapQuote({
32
+ * network: "base",
33
+ * toToken: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48", // USDC
34
+ * fromToken: "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2", // WETH
35
+ * fromAmount: BigInt("1000000000000000000"), // 1 WETH in wei
36
+ * taker: smartAccount.address
37
+ * });
38
+ *
39
+ * // Check if liquidity is available
40
+ * if (!swapQuote.liquidityAvailable) {
41
+ * console.error("Insufficient liquidity for swap");
42
+ * return;
43
+ * }
44
+ *
45
+ * // Send the swap operation
46
+ * const result = await sendSwapOperation(client, {
47
+ * smartAccount: smartAccount,
48
+ * swapQuote: swapQuote
49
+ * });
50
+ *
51
+ * console.log(`Swap operation sent with user op hash: ${result.userOpHash}`);
52
+ * ```
53
+ *
54
+ * @example **Sending a swap with inline options (all-in-one)**
55
+ * ```ts
56
+ * // Send swap operation in one call
57
+ * const result = await sendSwapOperation(client, {
58
+ * smartAccount: smartAccount,
59
+ * network: "base",
60
+ * toToken: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48", // USDC
61
+ * fromToken: "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2", // WETH
62
+ * fromAmount: BigInt("1000000000000000000"), // 1 WETH in wei
63
+ * taker: smartAccount.address
64
+ * });
65
+ *
66
+ * console.log(`Swap operation sent with user op hash: ${result.userOpHash}`);
67
+ * ```
68
+ */
69
+ async function sendSwapOperation(client, options) {
70
+ const { smartAccount, paymasterUrl, idempotencyKey } = options;
71
+ let swapResult;
72
+ // Determine if we need to create the swap quote or use the provided one
73
+ if ("swapQuote" in options) {
74
+ // Use the provided swap quote
75
+ swapResult = options.swapQuote;
76
+ }
77
+ else {
78
+ // Create the swap quote using the provided options (inline options)
79
+ /**
80
+ * Deterministically derive a new idempotency key from the provided idempotency key for swap quote creation to avoid key reuse.
81
+ */
82
+ const swapQuoteIdempotencyKey = idempotencyKey
83
+ ? (0, uuidV4_js_1.createDeterministicUuidV4)(idempotencyKey, "createSwapQuote")
84
+ : undefined;
85
+ swapResult = await (0, createSwapQuote_js_1.createSwapQuote)(client, {
86
+ network: options.network,
87
+ toToken: options.toToken,
88
+ fromToken: options.fromToken,
89
+ fromAmount: options.fromAmount,
90
+ taker: options.taker,
91
+ signerAddress: options.signerAddress,
92
+ gasPrice: options.gasPrice,
93
+ slippageBps: options.slippageBps,
94
+ idempotencyKey: swapQuoteIdempotencyKey,
95
+ });
96
+ }
97
+ // Check if liquidity is available
98
+ if (!swapResult.liquidityAvailable) {
99
+ throw new Error("Insufficient liquidity for swap");
100
+ }
101
+ // At this point, we know that swapResult is CreateSwapQuoteResult
102
+ const swap = swapResult;
103
+ // Check for allowance issues
104
+ if (swap.issues?.allowance) {
105
+ const { currentAllowance, spender } = swap.issues.allowance;
106
+ throw new Error(`Insufficient token allowance for swap. Current allowance: ${currentAllowance}. ` +
107
+ `Please approve the Permit2 contract (${spender}) to spend your tokens.`);
108
+ }
109
+ // If the transaction doesn't exist, throw an error
110
+ if (!swap.transaction) {
111
+ throw new Error("No transaction data found in the swap");
112
+ }
113
+ // Get the transaction data and modify it if needed for Permit2
114
+ let txData = swap.transaction.data;
115
+ if (swap.permit2?.eip712) {
116
+ // Create the permit2 idempotency key
117
+ const permit2IdempotencyKey = idempotencyKey
118
+ ? (0, uuidV4_js_1.createDeterministicUuidV4)(idempotencyKey, "permit2")
119
+ : undefined;
120
+ // Sign and wrap the permit2 typed data according to the Coinbase Smart Wallet contract requirements for EIP-712 signatures
121
+ const { signature: wrappedSignature } = await (0, signAndWrapTypedDataForSmartAccount_js_1.signAndWrapTypedDataForSmartAccount)(client, {
122
+ smartAccount,
123
+ chainId: BigInt(swap.permit2.eip712.domain.chainId || 1),
124
+ typedData: swap.permit2.eip712,
125
+ ownerIndex: 0n,
126
+ idempotencyKey: permit2IdempotencyKey,
127
+ });
128
+ // Calculate the Permit2 signature length as a 32-byte hex value
129
+ const permit2SignatureLengthInHex = (0, viem_1.numberToHex)((0, viem_1.size)(wrappedSignature), {
130
+ signed: false,
131
+ size: 32,
132
+ });
133
+ // Append the Permit2 signature length and signature to the transaction data
134
+ txData = (0, viem_1.concat)([txData, permit2SignatureLengthInHex, wrappedSignature]);
135
+ }
136
+ // Send the swap as a user operation
137
+ const result = await (0, sendUserOperation_js_1.sendUserOperation)(client, {
138
+ smartAccount: smartAccount,
139
+ network: swap.network,
140
+ paymasterUrl,
141
+ idempotencyKey,
142
+ calls: [
143
+ {
144
+ to: swap.transaction.to,
145
+ data: txData,
146
+ // Only include value if it exists
147
+ ...(swap.transaction.value ? { value: BigInt(swap.transaction.value) } : {}),
148
+ },
149
+ ],
150
+ });
151
+ return result;
152
+ }
153
+ //# sourceMappingURL=sendSwapOperation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sendSwapOperation.js","sourceRoot":"","sources":["../../../../actions/evm/swap/sendSwapOperation.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.sendSwapTransaction = sendSwapTransaction;
4
4
  const viem_1 = require("viem");
5
5
  const createSwapQuote_js_1 = require("./createSwapQuote.js");
6
+ const uuidV4_js_1 = require("../../../utils/uuidV4.js");
6
7
  const sendTransaction_js_1 = require("../sendTransaction.js");
7
8
  /**
8
9
  * Sends a swap transaction to the blockchain.
@@ -74,6 +75,12 @@ async function sendSwapTransaction(client, options) {
74
75
  }
75
76
  else {
76
77
  // Create the swap quote using the provided options (InlineSendSwapTransactionOptions)
78
+ /**
79
+ * Deterministically derive a new idempotency key from the provided idempotency key for swap quote creation to avoid key reuse.
80
+ */
81
+ const swapQuoteIdempotencyKey = idempotencyKey
82
+ ? (0, uuidV4_js_1.createDeterministicUuidV4)(idempotencyKey, "createSwapQuote")
83
+ : undefined;
77
84
  swapResult = await (0, createSwapQuote_js_1.createSwapQuote)(client, {
78
85
  network: options.network,
79
86
  toToken: options.toToken,
@@ -83,6 +90,7 @@ async function sendSwapTransaction(client, options) {
83
90
  signerAddress: options.signerAddress,
84
91
  gasPrice: options.gasPrice,
85
92
  slippageBps: options.slippageBps,
93
+ idempotencyKey: swapQuoteIdempotencyKey,
86
94
  });
87
95
  }
88
96
  // Check if liquidity is available
@@ -104,13 +112,19 @@ async function sendSwapTransaction(client, options) {
104
112
  // Get the transaction data and modify it if needed for Permit2
105
113
  let txData = swap.transaction.data;
106
114
  if (swap.permit2?.eip712) {
107
- // Sign the Permit2 EIP-712 message
115
+ /**
116
+ * Sign the Permit2 EIP-712 message.
117
+ * Deterministically derive a new idempotency key from the provided idempotency key for permit2 signing to avoid key reuse.
118
+ */
119
+ const permit2IdempotencyKey = idempotencyKey
120
+ ? (0, uuidV4_js_1.createDeterministicUuidV4)(idempotencyKey, "permit2")
121
+ : undefined;
108
122
  const signature = await client.signEvmTypedData(address, {
109
123
  domain: swap.permit2.eip712.domain,
110
124
  types: swap.permit2.eip712.types,
111
125
  primaryType: swap.permit2.eip712.primaryType,
112
126
  message: swap.permit2.eip712.message,
113
- }, idempotencyKey);
127
+ }, permit2IdempotencyKey);
114
128
  // Calculate the signature length as a 32-byte hex value
115
129
  const signatureLengthInHex = (0, viem_1.numberToHex)((0, viem_1.size)(signature.signature), {
116
130
  signed: false,
@@ -1 +1 @@
1
- {"version":3,"file":"sendSwapTransaction.js","sourceRoot":"","sources":["../../../../actions/evm/swap/sendSwapTransaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sendSwapTransaction.js","sourceRoot":"","sources":["../../../../actions/evm/swap/sendSwapTransaction.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.EvmClient = void 0;
4
4
  const crypto_1 = require("crypto");
5
+ const viem_1 = require("viem");
5
6
  const constants_js_1 = require("./constants.js");
6
7
  const toEvmServerAccount_js_1 = require("../../accounts/evm/toEvmServerAccount.js");
7
8
  const toEvmSmartAccount_js_1 = require("../../accounts/evm/toEvmSmartAccount.js");
@@ -841,12 +842,18 @@ class EvmClient {
841
842
  * ```
842
843
  */
843
844
  async signTypedData(options) {
844
- const signature = await index_js_1.CdpOpenApiClient.signEvmTypedData(options.address, {
845
- domain: options.domain,
846
- types: options.types,
847
- primaryType: options.primaryType,
848
- message: options.message,
849
- }, options.idempotencyKey);
845
+ const { domain, message, primaryType } = options;
846
+ const types = {
847
+ EIP712Domain: (0, viem_1.getTypesForEIP712Domain)({ domain }),
848
+ ...options.types,
849
+ };
850
+ const openApiMessage = {
851
+ domain,
852
+ types,
853
+ primaryType,
854
+ message,
855
+ };
856
+ const signature = await index_js_1.CdpOpenApiClient.signEvmTypedData(options.address, openApiMessage, options.idempotencyKey);
850
857
  return {
851
858
  signature: signature.signature,
852
859
  };
@@ -1 +1 @@
1
- {"version":3,"file":"evm.js","sourceRoot":"","sources":["../../../client/evm/evm.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evm.js","sourceRoot":"","sources":["../../../client/evm/evm.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createDeterministicUuidV4 = createDeterministicUuidV4;
4
+ const crypto_1 = require("crypto");
5
+ /**
6
+ * Deterministically generates a UUIDv4 from a given input string.
7
+ * This is necessary when we need to generate downstream idempotency keys for operations that have multiple calls.
8
+ *
9
+ * @param input - The input string to derive from
10
+ * @param salt - Optional salt to append to the input (defaults to "salt")
11
+ * @returns A UUIDv4 formatted string
12
+ */
13
+ function createDeterministicUuidV4(input, salt = "salt") {
14
+ const hash = (0, crypto_1.createHash)("sha256")
15
+ .update(input + "-" + salt)
16
+ .digest("hex");
17
+ // Format as UUIDv4: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
18
+ return [
19
+ hash.slice(0, 8),
20
+ hash.slice(8, 12),
21
+ "4" + hash.slice(13, 16), // Version 4
22
+ ((parseInt(hash.slice(16, 17), 16) & 0x3) | 0x8).toString(16) + hash.slice(17, 20), // Variant bits
23
+ hash.slice(20, 32),
24
+ ].join("-");
25
+ }
26
+ //# sourceMappingURL=uuidV4.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uuidV4.js","sourceRoot":"","sources":["../../utils/uuidV4.ts"],"names":[],"mappings":";;AAUA,8DAYC;AAtBD,mCAAoC;AAEpC;;;;;;;GAOG;AACH,SAAgB,yBAAyB,CAAC,KAAa,EAAE,IAAI,GAAG,MAAM;IACpE,MAAM,IAAI,GAAG,IAAA,mBAAU,EAAC,QAAQ,CAAC;SAC9B,MAAM,CAAC,KAAK,GAAG,GAAG,GAAG,IAAI,CAAC;SAC1B,MAAM,CAAC,KAAK,CAAC,CAAC;IACjB,yDAAyD;IACzD,OAAO;QACL,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;QAChB,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;QACjB,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,YAAY;QACtC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,eAAe;QACnG,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC;KACnB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACd,CAAC"}
package/_cjs/version.js CHANGED
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.version = void 0;
4
- exports.version = "1.15.0";
4
+ exports.version = "1.16.0";
5
5
  //# sourceMappingURL=version.js.map
@@ -1,4 +1,4 @@
1
- import { getTypesForEIP712Domain, serializeTransaction } from "viem";
1
+ import { getTypesForEIP712Domain, serializeTransaction, } from "viem";
2
2
  import { fund } from "../../actions/evm/fund/fund.js";
3
3
  import { quoteFund } from "../../actions/evm/fund/quoteFund.js";
4
4
  import { waitForFundOperationReceipt, } from "../../actions/evm/fund/waitForFundOperationReceipt.js";
@@ -39,13 +39,19 @@ export function toEvmServerAccount(apiClient, options) {
39
39
  });
40
40
  return result.signedTransaction;
41
41
  },
42
- async signTypedData(message) {
43
- if (!message.types.EIP712Domain) {
44
- message.types.EIP712Domain = getTypesForEIP712Domain({
45
- domain: message.domain,
46
- });
47
- }
48
- const result = await apiClient.signEvmTypedData(options.account.address, message);
42
+ async signTypedData(parameters) {
43
+ const { domain = {}, message, primaryType } = parameters;
44
+ const types = {
45
+ EIP712Domain: getTypesForEIP712Domain({ domain }),
46
+ ...parameters.types,
47
+ };
48
+ const openApiMessage = {
49
+ domain: domain,
50
+ types,
51
+ primaryType,
52
+ message,
53
+ };
54
+ const result = await apiClient.signEvmTypedData(options.account.address, openApiMessage);
49
55
  return result.signature;
50
56
  },
51
57
  async transfer(transferArgs) {
@@ -1 +1 @@
1
- {"version":3,"file":"toEvmServerAccount.js","sourceRoot":"","sources":["../../../accounts/evm/toEvmServerAccount.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"toEvmServerAccount.js","sourceRoot":"","sources":["../../../accounts/evm/toEvmServerAccount.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,8 @@ import { getUserOperation } from "../../actions/evm/getUserOperation.js";
5
5
  import { listTokenBalances, } from "../../actions/evm/listTokenBalances.js";
6
6
  import { requestFaucet, } from "../../actions/evm/requestFaucet.js";
7
7
  import { sendUserOperation, } from "../../actions/evm/sendUserOperation.js";
8
+ import { createSwapQuote } from "../../actions/evm/swap/createSwapQuote.js";
9
+ import { sendSwapOperation } from "../../actions/evm/swap/sendSwapOperation.js";
8
10
  import { smartAccountTransferStrategy } from "../../actions/evm/transfer/smartAccountTransferStrategy.js";
9
11
  import { transfer } from "../../actions/evm/transfer/transfer.js";
10
12
  import { waitForUserOperation, } from "../../actions/evm/waitForUserOperation.js";
@@ -72,6 +74,22 @@ export function toEvmSmartAccount(apiClient, options) {
72
74
  async waitForFundOperationReceipt(options) {
73
75
  return waitForFundOperationReceipt(apiClient, options);
74
76
  },
77
+ async quoteSwap(options) {
78
+ return createSwapQuote(apiClient, {
79
+ ...options,
80
+ taker: this.address, // Always use smart account's address as taker
81
+ signerAddress: this.owners[0].address, // Always use owner's address as signer
82
+ smartAccount: account, // Pass smart account for execute method support
83
+ });
84
+ },
85
+ async swap(options) {
86
+ return sendSwapOperation(apiClient, {
87
+ ...options,
88
+ smartAccount: account,
89
+ taker: this.address, // Always use smart account's address as taker
90
+ signerAddress: this.owners[0].address, // Always use owner's address as signer
91
+ });
92
+ },
75
93
  name: options.smartAccount.name,
76
94
  type: "evm-smart",
77
95
  };
@@ -1 +1 @@
1
- {"version":3,"file":"toEvmSmartAccount.js","sourceRoot":"","sources":["../../../accounts/evm/toEvmSmartAccount.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAe,MAAM,gCAAgC,CAAC;AAEnE,OAAO,EAAE,SAAS,EAAoB,MAAM,qCAAqC,CAAC;AAElF,OAAO,EAEL,2BAA2B,GAE5B,MAAM,uDAAuD,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AACzE,OAAO,EACL,iBAAiB,GAGlB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAGL,aAAa,GACd,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAGL,iBAAiB,GAClB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,4BAA4B,EAAE,MAAM,4DAA4D,CAAC;AAC1G,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAClE,OAAO,EACL,oBAAoB,GAGrB,MAAM,2CAA2C,CAAC;AAoBnD;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAC/B,SAA+B,EAC/B,OAAiC;IAEjC,MAAM,OAAO,GAAoB;QAC/B,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,OAAkB;QAChD,MAAM,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;QACvB,KAAK,CAAC,QAAQ,CAAC,YAAY;YACzB,OAAO,QAAQ,CAAC,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE,4BAA4B,CAAC,CAAC;QAClF,CAAC;QACD,KAAK,CAAC,iBAAiB,CACrB,OAAkD;YAElD,OAAO,iBAAiB,CAAC,SAAS,EAAE;gBAClC,GAAG,OAAO;gBACV,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC,CAAC;QACL,CAAC;QACD,KAAK,CAAC,iBAAiB,CACrB,OAAkE;YAElE,OAAO,iBAAiB,CAAC,SAAS,EAAE;gBAClC,GAAG,OAAO;gBACV,YAAY,EAAE,OAAO;aACtB,CAAC,CAAC;QACL,CAAC;QACD,KAAK,CAAC,oBAAoB,CACxB,OAAiE;YAEjE,OAAO,oBAAoB,CAAC,SAAS,EAAE;gBACrC,GAAG,OAAO;gBACV,mBAAmB,EAAE,OAAO,CAAC,OAAO;aACrC,CAAC,CAAC;QACL,CAAC;QACD,KAAK,CAAC,gBAAgB,CACpB,OAAsD;YAEtD,OAAO,gBAAgB,CAAC,SAAS,EAAE;gBACjC,GAAG,OAAO;gBACV,YAAY,EAAE,OAAO;aACtB,CAAC,CAAC;QACL,CAAC;QACD,KAAK,CAAC,aAAa,CACjB,OAA8C;YAE9C,OAAO,aAAa,CAAC,SAAS,EAAE;gBAC9B,GAAG,OAAO;gBACV,OAAO,EAAE,OAAO,CAAC,OAAO;aACzB,CAAC,CAAC;QACL,CAAC;QACD,KAAK,CAAC,SAAS,CAAC,OAA0C;YACxD,OAAO,SAAS,CAAC,SAAS,EAAE;gBAC1B,GAAG,OAAO;gBACV,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC,CAAC;QACL,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,OAAqC;YAC9C,OAAO,IAAI,CAAC,SAAS,EAAE;gBACrB,GAAG,OAAO;gBACV,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC,CAAC;QACL,CAAC;QACD,KAAK,CAAC,2BAA2B,CAC/B,OAAoC;YAEpC,OAAO,2BAA2B,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACzD,CAAC;QACD,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,IAAI;QAC/B,IAAI,EAAE,WAAW;KAClB,CAAC;IAEF,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"toEvmSmartAccount.js","sourceRoot":"","sources":["../../../accounts/evm/toEvmSmartAccount.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,181 @@
1
+ import { encodeAbiParameters, encodePacked, hashTypedData, sliceHex } from "viem";
2
+ /**
3
+ * Signs and wraps an EIP-712 message for a smart account using the required Coinbase Smart Wallet signature format.
4
+ *
5
+ * **Important: Coinbase Smart Wallet Contract Requirements**
6
+ *
7
+ * Due to the Coinbase Smart Wallet contract implementation (ERC-1271), CDP Smart Wallets have
8
+ * specific requirements for EIP-712 message signing:
9
+ *
10
+ * 1. **Replay-Safe Hashing**: All typed messages must be wrapped in a replay-safe hash that
11
+ * includes the chain ID and smart account address. This prevents the same signature from
12
+ * being valid across different chains or accounts.
13
+ *
14
+ * 2. **Signature Wrapping**: The resulting signature must be wrapped in a `SignatureWrapper`
15
+ * struct that identifies which owner signed and contains the signature data in the format
16
+ * expected by the smart contract's `isValidSignature()` method.
17
+ *
18
+ * This function handles both requirements automatically, making it safe and convenient for
19
+ * developers to sign EIP-712 messages with CDP Smart Wallets.
20
+ *
21
+ * @param {CdpOpenApiClientType} client - The CDP API client
22
+ * @param {SignAndWrapTypedDataForSmartAccountOptions} options - Parameters for signing and wrapping the EIP-712 message.
23
+ * @returns A promise that resolves to the signature that can be used with smart contracts.
24
+ *
25
+ * @example
26
+ * ```ts
27
+ * const result = await signAndWrapTypedDataForSmartAccount(client, {
28
+ * smartAccount: smartAccount,
29
+ * chainId: 1n,
30
+ * typedData: {
31
+ * domain: {
32
+ * name: "Permit2",
33
+ * chainId: 1,
34
+ * verifyingContract: "0x000000000022D473030F116dDEE9F6B43aC78BA3",
35
+ * },
36
+ * types: {
37
+ * EIP712Domain: [
38
+ * { name: "name", type: "string" },
39
+ * { name: "chainId", type: "uint256" },
40
+ * { name: "verifyingContract", type: "address" },
41
+ * ],
42
+ * PermitTransferFrom: [
43
+ * { name: "permitted", type: "TokenPermissions" },
44
+ * { name: "spender", type: "address" },
45
+ * { name: "nonce", type: "uint256" },
46
+ * { name: "deadline", type: "uint256" },
47
+ * ],
48
+ * TokenPermissions: [
49
+ * { name: "token", type: "address" },
50
+ * { name: "amount", type: "uint256" },
51
+ * ],
52
+ * },
53
+ * primaryType: "PermitTransferFrom",
54
+ * message: {
55
+ * permitted: {
56
+ * token: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
57
+ * amount: "1000000",
58
+ * },
59
+ * spender: "0xFfFfFfFFfFFfFFfFFfFFFFFffFFFffffFfFFFfFf",
60
+ * nonce: "0",
61
+ * deadline: "1717123200",
62
+ * },
63
+ * },
64
+ * });
65
+ *
66
+ * // Use result.signature for smart contract calls
67
+ * console.log(`Signature: ${result.signature}`);
68
+ * ```
69
+ */
70
+ export async function signAndWrapTypedDataForSmartAccount(client, options) {
71
+ const { smartAccount, chainId, typedData, ownerIndex = 0n } = options;
72
+ // Create the replay-safe typed data
73
+ const replaySafeTypedData = createReplaySafeTypedData({
74
+ typedData,
75
+ chainId,
76
+ smartAccountAddress: smartAccount.address,
77
+ });
78
+ // Sign the replay-safe typed data with the smart account owner
79
+ const owner = smartAccount.owners[Number(ownerIndex)];
80
+ const signature = await client.signEvmTypedData(owner.address, replaySafeTypedData, options.idempotencyKey);
81
+ // Wrap the signature in the format expected by the smart contract
82
+ const wrappedSignature = createSmartAccountSignatureWrapper({
83
+ signatureHex: signature.signature,
84
+ ownerIndex,
85
+ });
86
+ return {
87
+ signature: wrappedSignature,
88
+ };
89
+ }
90
+ /**
91
+ * Creates a replay-safe EIP-712 typed data structure by wrapping the original typed data with
92
+ * chain ID and smart account address.
93
+ *
94
+ * **Coinbase Smart Wallet Requirement**: Due to the Coinbase Smart Wallet contract's ERC-1271
95
+ * implementation, all EIP-712 messages must be wrapped in a replay-safe hash before signing.
96
+ * This prevents signature replay attacks across different chains or smart account addresses.
97
+ *
98
+ * The smart contract's `isValidSignature()` method expects signatures to be validated against
99
+ * this replay-safe hash, not the original message hash.
100
+ *
101
+ * @param params - The replay-safe hash parameters
102
+ * @param params.typedData - The original EIP-712 typed data to make replay-safe
103
+ * @param params.chainId - The chain ID for replay protection
104
+ * @param params.smartAccountAddress - The smart account address for additional context
105
+ * @returns The EIP-712 typed data structure for the replay-safe hash
106
+ */
107
+ export function createReplaySafeTypedData({ typedData, chainId, smartAccountAddress, }) {
108
+ // First hash the original typed data
109
+ const originalHash = hashTypedData(typedData);
110
+ // Create and return the replay-safe typed data structure
111
+ return {
112
+ domain: {
113
+ name: "Coinbase Smart Wallet",
114
+ version: "1",
115
+ chainId: Number(chainId),
116
+ verifyingContract: smartAccountAddress,
117
+ },
118
+ types: {
119
+ EIP712Domain: [
120
+ { name: "name", type: "string" },
121
+ { name: "version", type: "string" },
122
+ { name: "chainId", type: "uint256" },
123
+ { name: "verifyingContract", type: "address" },
124
+ ],
125
+ CoinbaseSmartWalletMessage: [{ name: "hash", type: "bytes32" }],
126
+ },
127
+ primaryType: "CoinbaseSmartWalletMessage",
128
+ message: {
129
+ hash: originalHash,
130
+ },
131
+ };
132
+ }
133
+ /**
134
+ * Builds a signature wrapper for Coinbase Smart Wallets by decomposing a hex signature
135
+ * into r, s, v components and encoding them in the format expected by the smart contract.
136
+ *
137
+ * All signatures on Coinbase Smart Wallets must be wrapped in this format to identify
138
+ * which owner signed and provide the signature data.
139
+ *
140
+ * @param params - The signature parameters
141
+ * @param params.signatureHex - The hex signature to wrap (65 bytes: r + s + v)
142
+ * @param params.ownerIndex - The index of the owner that signed (from MultiOwnable.ownerAtIndex)
143
+ * @returns The encoded signature wrapper in the format expected by the smart contract
144
+ */
145
+ export function createSmartAccountSignatureWrapper({ signatureHex, ownerIndex, }) {
146
+ // Decompose 65-byte hex signature into r (32 bytes), s (32 bytes), v (1 byte)
147
+ const r = sliceHex(signatureHex, 0, 32);
148
+ const s = sliceHex(signatureHex, 32, 64);
149
+ const v = Number(`0x${signatureHex.slice(130, 132)}`); // 130 = 2 + 64 + 64
150
+ const signatureData = encodePacked(["bytes32", "bytes32", "uint8"], [r, s, v]);
151
+ return encodeAbiParameters([SignatureWrapperStruct], [
152
+ {
153
+ ownerIndex: Number(ownerIndex),
154
+ signatureData,
155
+ },
156
+ ]);
157
+ }
158
+ /**
159
+ * The ABI structure for the SignatureWrapper struct expected by Coinbase Smart Wallets.
160
+ * This matches the struct defined in the smart contract:
161
+ *
162
+ * struct SignatureWrapper {
163
+ * uint256 ownerIndex;
164
+ * bytes signatureData;
165
+ * }
166
+ */
167
+ const SignatureWrapperStruct = {
168
+ components: [
169
+ {
170
+ name: "ownerIndex",
171
+ type: "uint8",
172
+ },
173
+ {
174
+ name: "signatureData",
175
+ type: "bytes",
176
+ },
177
+ ],
178
+ name: "SignatureWrapper",
179
+ type: "tuple",
180
+ };
181
+ //# sourceMappingURL=signAndWrapTypedDataForSmartAccount.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signAndWrapTypedDataForSmartAccount.js","sourceRoot":"","sources":["../../../actions/evm/signAndWrapTypedDataForSmartAccount.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAiClF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmEG;AACH,MAAM,CAAC,KAAK,UAAU,mCAAmC,CACvD,MAA4B,EAC5B,OAAmD;IAEnD,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC;IAEtE,oCAAoC;IACpC,MAAM,mBAAmB,GAAG,yBAAyB,CAAC;QACpD,SAAS;QACT,OAAO;QACP,mBAAmB,EAAE,YAAY,CAAC,OAAc;KACjD,CAAC,CAAC;IAEH,+DAA+D;IAC/D,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;IACtD,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAC7C,KAAK,CAAC,OAAO,EACb,mBAAmB,EACnB,OAAO,CAAC,cAAc,CACvB,CAAC;IAEF,kEAAkE;IAClE,MAAM,gBAAgB,GAAG,kCAAkC,CAAC;QAC1D,YAAY,EAAE,SAAS,CAAC,SAAgB;QACxC,UAAU;KACX,CAAC,CAAC;IAEH,OAAO;QACL,SAAS,EAAE,gBAAuB;KACnC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,yBAAyB,CAAC,EACxC,SAAS,EACT,OAAO,EACP,mBAAmB,GAKpB;IACC,qCAAqC;IACrC,MAAM,YAAY,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;IAE9C,yDAAyD;IACzD,OAAO;QACL,MAAM,EAAE;YACN,IAAI,EAAE,uBAAuB;YAC7B,OAAO,EAAE,GAAG;YACZ,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC;YACxB,iBAAiB,EAAE,mBAAmB;SACvC;QACD,KAAK,EAAE;YACL,YAAY,EAAE;gBACZ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAChC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACnC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;gBACpC,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE;aAC/C;YACD,0BAA0B,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;SAChE;QACD,WAAW,EAAE,4BAAqC;QAClD,OAAO,EAAE;YACP,IAAI,EAAE,YAAY;SACnB;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kCAAkC,CAAC,EACjD,YAAY,EACZ,UAAU,GAIX;IACC,8EAA8E;IAC9E,MAAM,CAAC,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACxC,MAAM,CAAC,GAAG,QAAQ,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACzC,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,YAAY,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,oBAAoB;IAE3E,MAAM,aAAa,GAAG,YAAY,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAE/E,OAAO,mBAAmB,CACxB,CAAC,sBAAsB,CAAC,EACxB;QACE;YACE,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;YAC9B,aAAa;SACd;KACF,CACK,CAAC;AACX,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,sBAAsB,GAAG;IAC7B,UAAU,EAAE;QACV;YACE,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,OAAO;SACd;QACD;YACE,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,OAAO;SACd;KACF;IACD,IAAI,EAAE,kBAAkB;IACxB,IAAI,EAAE,OAAO;CACL,CAAC"}