@coinbase/cdp-sdk 1.20.0 → 1.21.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 (118) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/README.md +8 -0
  3. package/_cjs/accounts/evm/chainToNetworkMapper.js +33 -0
  4. package/_cjs/accounts/evm/chainToNetworkMapper.js.map +1 -0
  5. package/_cjs/accounts/evm/getBaseNodeRpcUrl.js +38 -0
  6. package/_cjs/accounts/evm/getBaseNodeRpcUrl.js.map +1 -0
  7. package/_cjs/accounts/evm/networkCapabilities.js +91 -0
  8. package/_cjs/accounts/evm/networkCapabilities.js.map +1 -0
  9. package/_cjs/accounts/evm/resolveViemClients.js +2 -35
  10. package/_cjs/accounts/evm/resolveViemClients.js.map +1 -1
  11. package/_cjs/accounts/evm/toEvmServerAccount.js +1 -1
  12. package/_cjs/accounts/evm/toEvmServerAccount.js.map +1 -1
  13. package/_cjs/accounts/evm/toEvmSmartAccount.js +2 -2
  14. package/_cjs/accounts/evm/toEvmSmartAccount.js.map +1 -1
  15. package/_cjs/accounts/evm/toNetworkScopedEvmServerAccount.js +86 -32
  16. package/_cjs/accounts/evm/toNetworkScopedEvmServerAccount.js.map +1 -1
  17. package/_cjs/accounts/evm/toNetworkScopedEvmSmartAccount.js +126 -2
  18. package/_cjs/accounts/evm/toNetworkScopedEvmSmartAccount.js.map +1 -1
  19. package/_cjs/actions/evm/sendUserOperation.js +8 -1
  20. package/_cjs/actions/evm/sendUserOperation.js.map +1 -1
  21. package/_cjs/actions/evm/transfer/transferWithViem.js +2 -1
  22. package/_cjs/actions/evm/transfer/transferWithViem.js.map +1 -1
  23. package/_cjs/client/evm/evm.js +2 -2
  24. package/_cjs/client/evm/evm.js.map +1 -1
  25. package/_cjs/client/solana/solana.js +74 -0
  26. package/_cjs/client/solana/solana.js.map +1 -1
  27. package/_cjs/constants.js +18 -1
  28. package/_cjs/constants.js.map +1 -1
  29. package/_cjs/openapi-client/generated/solana-accounts/solana-accounts.js +10 -1
  30. package/_cjs/openapi-client/generated/solana-accounts/solana-accounts.js.map +1 -1
  31. package/_cjs/version.js +1 -1
  32. package/_esm/accounts/evm/chainToNetworkMapper.js +30 -0
  33. package/_esm/accounts/evm/chainToNetworkMapper.js.map +1 -0
  34. package/_esm/accounts/evm/getBaseNodeRpcUrl.js +35 -0
  35. package/_esm/accounts/evm/getBaseNodeRpcUrl.js.map +1 -0
  36. package/_esm/accounts/evm/networkCapabilities.js +86 -0
  37. package/_esm/accounts/evm/networkCapabilities.js.map +1 -0
  38. package/_esm/accounts/evm/resolveViemClients.js +1 -34
  39. package/_esm/accounts/evm/resolveViemClients.js.map +1 -1
  40. package/_esm/accounts/evm/toEvmServerAccount.js +1 -1
  41. package/_esm/accounts/evm/toEvmServerAccount.js.map +1 -1
  42. package/_esm/accounts/evm/toEvmSmartAccount.js +2 -2
  43. package/_esm/accounts/evm/toEvmSmartAccount.js.map +1 -1
  44. package/_esm/accounts/evm/toNetworkScopedEvmServerAccount.js +87 -33
  45. package/_esm/accounts/evm/toNetworkScopedEvmServerAccount.js.map +1 -1
  46. package/_esm/accounts/evm/toNetworkScopedEvmSmartAccount.js +126 -2
  47. package/_esm/accounts/evm/toNetworkScopedEvmSmartAccount.js.map +1 -1
  48. package/_esm/actions/evm/sendUserOperation.js +8 -1
  49. package/_esm/actions/evm/sendUserOperation.js.map +1 -1
  50. package/_esm/actions/evm/transfer/transferWithViem.js +2 -1
  51. package/_esm/actions/evm/transfer/transferWithViem.js.map +1 -1
  52. package/_esm/client/evm/evm.js +2 -2
  53. package/_esm/client/evm/evm.js.map +1 -1
  54. package/_esm/client/solana/solana.js +71 -0
  55. package/_esm/client/solana/solana.js.map +1 -1
  56. package/_esm/constants.js +17 -0
  57. package/_esm/constants.js.map +1 -1
  58. package/_esm/openapi-client/generated/solana-accounts/solana-accounts.js +8 -0
  59. package/_esm/openapi-client/generated/solana-accounts/solana-accounts.js.map +1 -1
  60. package/_esm/version.js +1 -1
  61. package/_types/accounts/evm/chainToNetworkMapper.d.ts +11 -0
  62. package/_types/accounts/evm/chainToNetworkMapper.d.ts.map +1 -0
  63. package/_types/accounts/evm/getBaseNodeRpcUrl.d.ts +8 -0
  64. package/_types/accounts/evm/getBaseNodeRpcUrl.d.ts.map +1 -0
  65. package/_types/accounts/evm/networkCapabilities.d.ts +103 -0
  66. package/_types/accounts/evm/networkCapabilities.d.ts.map +1 -0
  67. package/_types/accounts/evm/resolveViemClients.d.ts.map +1 -1
  68. package/_types/accounts/evm/toEvmServerAccount.d.ts.map +1 -1
  69. package/_types/accounts/evm/toEvmSmartAccount.d.ts.map +1 -1
  70. package/_types/accounts/evm/toNetworkScopedEvmServerAccount.d.ts +3 -3
  71. package/_types/accounts/evm/toNetworkScopedEvmServerAccount.d.ts.map +1 -1
  72. package/_types/accounts/evm/toNetworkScopedEvmSmartAccount.d.ts +9 -6
  73. package/_types/accounts/evm/toNetworkScopedEvmSmartAccount.d.ts.map +1 -1
  74. package/_types/accounts/evm/types.d.ts +109 -14
  75. package/_types/accounts/evm/types.d.ts.map +1 -1
  76. package/_types/actions/evm/sendUserOperation.d.ts.map +1 -1
  77. package/_types/actions/evm/transfer/transferWithViem.d.ts +1 -1
  78. package/_types/actions/evm/transfer/transferWithViem.d.ts.map +1 -1
  79. package/_types/client/evm/evm.d.ts.map +1 -1
  80. package/_types/client/evm/evm.types.d.ts +1 -1
  81. package/_types/client/evm/evm.types.d.ts.map +1 -1
  82. package/_types/client/solana/solana.d.ts +40 -1
  83. package/_types/client/solana/solana.d.ts.map +1 -1
  84. package/_types/client/solana/solana.types.d.ts +15 -1
  85. package/_types/client/solana/solana.types.d.ts.map +1 -1
  86. package/_types/constants.d.ts +4 -0
  87. package/_types/constants.d.ts.map +1 -1
  88. package/_types/openapi-client/generated/solana-accounts/solana-accounts.d.ts +5 -0
  89. package/_types/openapi-client/generated/solana-accounts/solana-accounts.d.ts.map +1 -1
  90. package/_types/openapi-client/index.d.ts +10 -0
  91. package/_types/openapi-client/index.d.ts.map +1 -1
  92. package/_types/version.d.ts +1 -1
  93. package/accounts/evm/chainToNetworkMapper.ts +37 -0
  94. package/accounts/evm/getBaseNodeRpcUrl.ts +40 -0
  95. package/accounts/evm/networkCapabilities.ts +117 -0
  96. package/accounts/evm/resolveViemClients.ts +1 -38
  97. package/accounts/evm/toEvmServerAccount.ts +3 -3
  98. package/accounts/evm/toEvmSmartAccount.ts +3 -3
  99. package/accounts/evm/toNetworkScopedEvmServerAccount.ts +116 -44
  100. package/accounts/evm/toNetworkScopedEvmSmartAccount.ts +178 -11
  101. package/accounts/evm/types.ts +253 -25
  102. package/actions/evm/sendUserOperation.ts +9 -1
  103. package/actions/evm/transfer/transferWithViem.ts +4 -3
  104. package/client/evm/evm.ts +2 -2
  105. package/client/evm/evm.types.ts +1 -1
  106. package/client/solana/solana.ts +89 -0
  107. package/client/solana/solana.types.ts +16 -0
  108. package/constants.ts +18 -0
  109. package/openapi-client/generated/solana-accounts/solana-accounts.ts +20 -0
  110. package/package.json +1 -1
  111. package/version.ts +1 -1
  112. package/_cjs/client/evm/constants.js +0 -21
  113. package/_cjs/client/evm/constants.js.map +0 -1
  114. package/_esm/client/evm/constants.js +0 -18
  115. package/_esm/client/evm/constants.js.map +0 -1
  116. package/_types/client/evm/constants.d.ts +0 -5
  117. package/_types/client/evm/constants.d.ts.map +0 -1
  118. package/client/evm/constants.ts +0 -17
@@ -0,0 +1,86 @@
1
+ /**
2
+ * Centralized configuration for network capabilities.
3
+ * This defines which methods are available on which networks.
4
+ */
5
+ /**
6
+ * Network capabilities configuration.
7
+ * Each network has a set of boolean flags indicating which methods are supported.
8
+ */
9
+ export const NETWORK_CAPABILITIES = {
10
+ base: {
11
+ listTokenBalances: true,
12
+ requestFaucet: false,
13
+ quoteFund: true,
14
+ fund: true,
15
+ waitForFundOperationReceipt: true,
16
+ transfer: true,
17
+ sendTransaction: true,
18
+ quoteSwap: true,
19
+ swap: true,
20
+ },
21
+ "base-sepolia": {
22
+ listTokenBalances: true,
23
+ requestFaucet: true,
24
+ quoteFund: false,
25
+ fund: false,
26
+ waitForFundOperationReceipt: false,
27
+ transfer: true,
28
+ sendTransaction: true,
29
+ quoteSwap: false,
30
+ swap: false,
31
+ },
32
+ ethereum: {
33
+ listTokenBalances: true,
34
+ requestFaucet: false,
35
+ quoteFund: false, // Only base is supported for quoteFund
36
+ fund: false, // Only base is supported for fund
37
+ waitForFundOperationReceipt: false,
38
+ transfer: true,
39
+ sendTransaction: true,
40
+ quoteSwap: true,
41
+ swap: true,
42
+ },
43
+ "ethereum-sepolia": {
44
+ listTokenBalances: false,
45
+ requestFaucet: true,
46
+ quoteFund: false,
47
+ fund: false,
48
+ waitForFundOperationReceipt: false,
49
+ transfer: true,
50
+ sendTransaction: true,
51
+ quoteSwap: false,
52
+ swap: false,
53
+ },
54
+ "ethereum-hoodi": {
55
+ listTokenBalances: false,
56
+ requestFaucet: true,
57
+ quoteFund: false,
58
+ fund: false,
59
+ waitForFundOperationReceipt: false,
60
+ transfer: false,
61
+ sendTransaction: true, // Always available (uses wallet client for non-base networks)
62
+ quoteSwap: false,
63
+ swap: false,
64
+ },
65
+ };
66
+ /**
67
+ * Helper to get networks that support a specific method
68
+ *
69
+ * @param method - The method name to check support for
70
+ * @returns An array of network names that support the method
71
+ */
72
+ export function getNetworksSupportingMethod(method) {
73
+ return Object.keys(NETWORK_CAPABILITIES).filter(network => NETWORK_CAPABILITIES[network][method]);
74
+ }
75
+ /**
76
+ * Helper to check if a network supports a method
77
+ *
78
+ * @param method - The method name to check
79
+ * @param network - The network name to check
80
+ * @returns True if the network supports the method, false otherwise
81
+ */
82
+ export function isMethodSupportedOnNetwork(method, network) {
83
+ const networkConfig = NETWORK_CAPABILITIES[network];
84
+ return networkConfig ? networkConfig[method] : false;
85
+ }
86
+ //# sourceMappingURL=networkCapabilities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"networkCapabilities.js","sourceRoot":"","sources":["../../../accounts/evm/networkCapabilities.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,IAAI,EAAE;QACJ,iBAAiB,EAAE,IAAI;QACvB,aAAa,EAAE,KAAK;QACpB,SAAS,EAAE,IAAI;QACf,IAAI,EAAE,IAAI;QACV,2BAA2B,EAAE,IAAI;QACjC,QAAQ,EAAE,IAAI;QACd,eAAe,EAAE,IAAI;QACrB,SAAS,EAAE,IAAI;QACf,IAAI,EAAE,IAAI;KACX;IACD,cAAc,EAAE;QACd,iBAAiB,EAAE,IAAI;QACvB,aAAa,EAAE,IAAI;QACnB,SAAS,EAAE,KAAK;QAChB,IAAI,EAAE,KAAK;QACX,2BAA2B,EAAE,KAAK;QAClC,QAAQ,EAAE,IAAI;QACd,eAAe,EAAE,IAAI;QACrB,SAAS,EAAE,KAAK;QAChB,IAAI,EAAE,KAAK;KACZ;IACD,QAAQ,EAAE;QACR,iBAAiB,EAAE,IAAI;QACvB,aAAa,EAAE,KAAK;QACpB,SAAS,EAAE,KAAK,EAAE,uCAAuC;QACzD,IAAI,EAAE,KAAK,EAAE,kCAAkC;QAC/C,2BAA2B,EAAE,KAAK;QAClC,QAAQ,EAAE,IAAI;QACd,eAAe,EAAE,IAAI;QACrB,SAAS,EAAE,IAAI;QACf,IAAI,EAAE,IAAI;KACX;IACD,kBAAkB,EAAE;QAClB,iBAAiB,EAAE,KAAK;QACxB,aAAa,EAAE,IAAI;QACnB,SAAS,EAAE,KAAK;QAChB,IAAI,EAAE,KAAK;QACX,2BAA2B,EAAE,KAAK;QAClC,QAAQ,EAAE,IAAI;QACd,eAAe,EAAE,IAAI;QACrB,SAAS,EAAE,KAAK;QAChB,IAAI,EAAE,KAAK;KACZ;IACD,gBAAgB,EAAE;QAChB,iBAAiB,EAAE,KAAK;QACxB,aAAa,EAAE,IAAI;QACnB,SAAS,EAAE,KAAK;QAChB,IAAI,EAAE,KAAK;QACX,2BAA2B,EAAE,KAAK;QAClC,QAAQ,EAAE,KAAK;QACf,eAAe,EAAE,IAAI,EAAE,8DAA8D;QACrF,SAAS,EAAE,KAAK;QAChB,IAAI,EAAE,KAAK;KACZ;CACO,CAAC;AAYX;;;;;GAKG;AACH,MAAM,UAAU,2BAA2B,CAAC,MAAkB;IAC5D,OAAQ,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAmB,CAAC,MAAM,CAChE,OAAO,CAAC,EAAE,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CACjD,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,0BAA0B,CAAC,MAAkB,EAAE,OAAe;IAC5E,MAAM,aAAa,GAAG,oBAAoB,CAAC,OAAsB,CAAC,CAAC;IACnE,OAAO,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AACvD,CAAC"}
@@ -1,8 +1,7 @@
1
1
  import { createPublicClient, createWalletClient, http, } from "viem";
2
2
  import { toAccount } from "viem/accounts";
3
3
  import * as chains from "viem/chains";
4
- import { generateJwt } from "../../auth/utils/jwt.js";
5
- import { config } from "../../openapi-client/cdpApiClient.js";
4
+ import { getBaseNodeRpcUrl } from "./getBaseNodeRpcUrl.js";
6
5
  /**
7
6
  * Network identifier to viem chain mapping
8
7
  */
@@ -93,38 +92,6 @@ function isValidUrl(input) {
93
92
  return false;
94
93
  }
95
94
  }
96
- /**
97
- * Get the base node RPC URL for a given network
98
- *
99
- * @param network - The network identifier
100
- * @returns The base node RPC URL or undefined if the network is not supported
101
- */
102
- async function getBaseNodeRpcUrl(network) {
103
- if (!config) {
104
- return;
105
- }
106
- try {
107
- const basePath = config.basePath?.replace("/platform", "");
108
- const jwt = await generateJwt({
109
- apiKeyId: config.apiKeyId,
110
- apiKeySecret: config.apiKeySecret,
111
- requestMethod: "GET",
112
- requestHost: basePath.replace("https://", ""),
113
- requestPath: "/apikeys/v1/tokens/active",
114
- });
115
- const response = await fetch(`${basePath}/apikeys/v1/tokens/active`, {
116
- headers: {
117
- Authorization: `Bearer ${jwt}`,
118
- "Content-Type": "application/json",
119
- },
120
- });
121
- const json = await response.json();
122
- return `${basePath}/rpc/v1/${network}/${json.id}`;
123
- }
124
- catch {
125
- return;
126
- }
127
- }
128
95
  /**
129
96
  * Resolves viem clients based on a network identifier or Node URL.
130
97
  *
@@ -1 +1 @@
1
- {"version":3,"file":"resolveViemClients.js","sourceRoot":"","sources":["../../../accounts/evm/resolveViemClients.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolveViemClients.js","sourceRoot":"","sources":["../../../accounts/evm/resolveViemClients.ts"],"names":[],"mappings":"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"}
@@ -108,7 +108,7 @@ export function toEvmServerAccount(apiClient, options) {
108
108
  type: "evm-server",
109
109
  policies: options.account.policies,
110
110
  useNetwork: async (networkOrRpcUrl) => {
111
- return toNetworkScopedEvmServerAccount(apiClient, {
111
+ return toNetworkScopedEvmServerAccount({
112
112
  account,
113
113
  network: networkOrRpcUrl,
114
114
  });
@@ -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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"}
@@ -93,11 +93,11 @@ export function toEvmSmartAccount(apiClient, options) {
93
93
  },
94
94
  name: options.smartAccount.name,
95
95
  type: "evm-smart",
96
- __experimental_useNetwork: async (networkOrRpcUrl) => {
96
+ useNetwork: async (network) => {
97
97
  return toNetworkScopedEvmSmartAccount(apiClient, {
98
98
  smartAccount: account,
99
99
  owner: options.owner,
100
- network: networkOrRpcUrl,
100
+ network,
101
101
  });
102
102
  },
103
103
  };
@@ -1 +1 @@
1
- {"version":3,"file":"toEvmSmartAccount.js","sourceRoot":"","sources":["../../../accounts/evm/toEvmSmartAccount.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,MAAM,qCAAqC,CAAC;AACrF,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,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAC;AAChF,OAAO,EAAE,4BAA4B,EAAE,MAAM,4DAA4D,CAAC;AAC1G,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAClE,OAAO,EACL,oBAAoB,GAGrB,MAAM,2CAA2C,CAAC;AA0BnD;;;;;;;;;;;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,KAAK,CAAC,SAAS,CAAC,OAAqC;YACnD,OAAO,eAAe,CAAC,SAAS,EAAE;gBAChC,GAAG,OAAO;gBACV,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,8CAA8C;gBACnE,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,uCAAuC;gBAC9E,YAAY,EAAE,OAAO,EAAE,gDAAgD;aACxE,CAAC,CAAC;QACL,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,OAAgC;YACzC,OAAO,iBAAiB,CAAC,SAAS,EAAE;gBAClC,GAAG,OAAO;gBACV,YAAY,EAAE,OAAO;gBACrB,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,8CAA8C;gBACnE,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,uCAAuC;aAC/E,CAAC,CAAC;QACL,CAAC;QAED,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,IAAI;QAC/B,IAAI,EAAE,WAAW;QACjB,yBAAyB,EAAE,KAAK,EAAE,eAAuB,EAAE,EAAE;YAC3D,OAAO,8BAA8B,CAAC,SAAS,EAAE;gBAC/C,YAAY,EAAE,OAAO;gBACrB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,OAAO,EAAE,eAAe;aACzB,CAAC,CAAC;QACL,CAAC;KACF,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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"}
@@ -1,22 +1,26 @@
1
- import { base, baseSepolia, sepolia } from "viem/chains";
1
+ import { base, baseSepolia, mainnet, sepolia } from "viem/chains";
2
+ import { mapChainToNetwork } from "./chainToNetworkMapper.js";
3
+ import { isMethodSupportedOnNetwork } from "./networkCapabilities.js";
2
4
  import { resolveViemClients } from "./resolveViemClients.js";
3
5
  import { transferWithViem } from "../../actions/evm/transfer/transferWithViem.js";
4
6
  /**
5
7
  * Creates a Network-scoped Server-managed EvmAccount instance from an existing EvmAccount.
6
8
  * Use this to interact with previously deployed EvmAccounts on a specific network.
7
9
  *
8
- * @param {CdpOpenApiClientType} apiClient - The API client.
9
10
  * @param {ToNetworkScopedEvmServerAccountOptions} options - Configuration options.
10
11
  * @param {EvmServerAccount} options.account - The EvmServerAccount that was previously created.
11
12
  * @param {string} options.network - The network to scope the account to.
12
13
  * @returns {NetworkScopedEvmServerAccount} A configured NetworkScopedEvmServerAccount instance ready for signing.
13
14
  */
14
- export async function toNetworkScopedEvmServerAccount(apiClient, options) {
15
+ export async function toNetworkScopedEvmServerAccount(options) {
15
16
  const { publicClient, walletClient, chain } = await resolveViemClients({
16
17
  networkOrNodeUrl: options.network,
17
18
  account: options.account,
18
19
  });
19
- const shouldUseApi = chain.id === base.id || chain.id === baseSepolia.id;
20
+ const shouldUseApiForSends = chain.id === base.id ||
21
+ chain.id === baseSepolia.id ||
22
+ chain.id === mainnet.id ||
23
+ chain.id === sepolia.id;
20
24
  const account = {
21
25
  address: options.account.address,
22
26
  network: options.network,
@@ -27,34 +31,11 @@ export async function toNetworkScopedEvmServerAccount(apiClient, options) {
27
31
  name: options.account.name,
28
32
  type: "evm-server",
29
33
  policies: options.account.policies,
30
- requestFaucet: async (faucetOptions) => {
31
- if (chain.id !== baseSepolia.id && chain.id !== sepolia.id) {
32
- throw new Error("Requesting a faucet is supported only on base-sepolia or ethereum-sepolia");
33
- }
34
- return options.account.requestFaucet({
35
- ...faucetOptions,
36
- network: chain.id === baseSepolia.id ? "base-sepolia" : "ethereum-sepolia",
37
- });
38
- },
39
- transfer: async (transferArgs) => {
40
- if (shouldUseApi) {
41
- return options.account.transfer({
42
- ...transferArgs,
43
- network: (chain.id === base.id ? "base" : "base-sepolia"),
44
- });
45
- }
46
- else {
47
- return transferWithViem(walletClient, account, {
48
- ...transferArgs,
49
- network: options.network,
50
- });
51
- }
52
- },
53
34
  sendTransaction: async (txOpts) => {
54
- if (shouldUseApi) {
35
+ if (shouldUseApiForSends) {
55
36
  return options.account.sendTransaction({
56
37
  ...txOpts,
57
- network: chain.id === base.id ? "base" : "base-sepolia",
38
+ network: mapChainToNetwork(chain),
58
39
  });
59
40
  }
60
41
  else {
@@ -62,15 +43,88 @@ export async function toNetworkScopedEvmServerAccount(apiClient, options) {
62
43
  return { transactionHash: hash };
63
44
  }
64
45
  },
65
- waitForTransactionReceipt: async (options) => {
66
- if ("transactionHash" in options) {
46
+ transfer: async (transferArgs) => {
47
+ if (shouldUseApiForSends) {
48
+ return options.account.transfer({
49
+ ...transferArgs,
50
+ network: mapChainToNetwork(chain),
51
+ });
52
+ }
53
+ else {
54
+ return transferWithViem(walletClient, account, transferArgs);
55
+ }
56
+ },
57
+ waitForTransactionReceipt: async (waitOptions) => {
58
+ if ("transactionHash" in waitOptions) {
67
59
  return publicClient.waitForTransactionReceipt({
68
- hash: options.transactionHash,
60
+ hash: waitOptions.transactionHash,
69
61
  });
70
62
  }
71
- return publicClient.waitForTransactionReceipt(options);
63
+ return publicClient.waitForTransactionReceipt(waitOptions);
72
64
  },
73
65
  };
66
+ if (isMethodSupportedOnNetwork("listTokenBalances", options.network)) {
67
+ Object.assign(account, {
68
+ listTokenBalances: async (listTokenBalancesOptions) => {
69
+ return options.account.listTokenBalances({
70
+ ...listTokenBalancesOptions,
71
+ network: options.network,
72
+ });
73
+ },
74
+ });
75
+ }
76
+ if (isMethodSupportedOnNetwork("requestFaucet", options.network)) {
77
+ Object.assign(account, {
78
+ requestFaucet: async (faucetOptions) => {
79
+ return options.account.requestFaucet({
80
+ ...faucetOptions,
81
+ network: chain.id === baseSepolia.id ? "base-sepolia" : "ethereum-sepolia",
82
+ });
83
+ },
84
+ });
85
+ }
86
+ if (isMethodSupportedOnNetwork("quoteFund", options.network)) {
87
+ Object.assign(account, {
88
+ quoteFund: async (quoteFundOptions) => {
89
+ return options.account.quoteFund({
90
+ ...quoteFundOptions,
91
+ });
92
+ },
93
+ });
94
+ }
95
+ if (isMethodSupportedOnNetwork("fund", options.network)) {
96
+ Object.assign(account, {
97
+ fund: async (fundOptions) => {
98
+ return options.account.fund({
99
+ ...fundOptions,
100
+ });
101
+ },
102
+ waitForFundOperationReceipt: async (waitOptions) => {
103
+ return options.account.waitForFundOperationReceipt(waitOptions);
104
+ },
105
+ });
106
+ }
107
+ if (isMethodSupportedOnNetwork("transfer", options.network)) {
108
+ Object.assign(account, {
109
+ transfer: async (transferOptions) => {
110
+ return options.account.transfer(transferOptions);
111
+ },
112
+ });
113
+ }
114
+ if (isMethodSupportedOnNetwork("quoteSwap", options.network)) {
115
+ Object.assign(account, {
116
+ quoteSwap: async (quoteSwapOptions) => {
117
+ return options.account.quoteSwap(quoteSwapOptions);
118
+ },
119
+ });
120
+ }
121
+ if (isMethodSupportedOnNetwork("swap", options.network)) {
122
+ Object.assign(account, {
123
+ swap: async (swapOptions) => {
124
+ return options.account.swap(swapOptions);
125
+ },
126
+ });
127
+ }
74
128
  return account;
75
129
  }
76
130
  //# sourceMappingURL=toNetworkScopedEvmServerAccount.js.map
@@ -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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"}
@@ -1,3 +1,17 @@
1
+ import { getBaseNodeRpcUrl } from "./getBaseNodeRpcUrl.js";
2
+ import { isMethodSupportedOnNetwork } from "./networkCapabilities.js";
3
+ import { fund } from "../../actions/evm/fund/fund.js";
4
+ import { quoteFund } from "../../actions/evm/fund/quoteFund.js";
5
+ import { waitForFundOperationReceipt } from "../../actions/evm/fund/waitForFundOperationReceipt.js";
6
+ import { getUserOperation } from "../../actions/evm/getUserOperation.js";
7
+ import { listTokenBalances } from "../../actions/evm/listTokenBalances.js";
8
+ import { requestFaucet } from "../../actions/evm/requestFaucet.js";
9
+ import { sendUserOperation } from "../../actions/evm/sendUserOperation.js";
10
+ import { createSwapQuote } from "../../actions/evm/swap/createSwapQuote.js";
11
+ import { sendSwapOperation } from "../../actions/evm/swap/sendSwapOperation.js";
12
+ import { smartAccountTransferStrategy } from "../../actions/evm/transfer/smartAccountTransferStrategy.js";
13
+ import { transfer } from "../../actions/evm/transfer/transfer.js";
14
+ import { waitForUserOperation } from "../../actions/evm/waitForUserOperation.js";
1
15
  /**
2
16
  * Creates a NetworkScopedEvmSmartAccount instance from an existing EvmSmartAccount and owner.
3
17
  * Use this to interact with previously deployed EvmSmartAccounts, rather than creating new ones.
@@ -5,19 +19,129 @@
5
19
  * The owner must be the original owner of the evm smart account.
6
20
  *
7
21
  * @param {CdpOpenApiClientType} apiClient - The API client.
8
- * @param {ToEvmSmartAccountOptions} options - Configuration options.
22
+ * @param {ToNetworkScopedEvmSmartAccountOptions} options - Configuration options.
9
23
  * @param {EvmSmartAccount} options.smartAccount - The deployed evm smart account.
10
24
  * @param {EvmAccount} options.owner - The owner which signs for the smart account.
25
+ * @param {KnownEvmNetworks} options.network - The network to scope the smart account to.
11
26
  * @returns {NetworkScopedEvmSmartAccount} A configured NetworkScopedEvmSmartAccount instance ready for user operation submission.
12
27
  */
13
- export function toNetworkScopedEvmSmartAccount(apiClient, options) {
28
+ export async function toNetworkScopedEvmSmartAccount(apiClient, options) {
29
+ const paymasterUrl = await (async () => {
30
+ if (options.network === "base") {
31
+ return getBaseNodeRpcUrl(options.network);
32
+ }
33
+ return undefined;
34
+ })();
14
35
  const account = {
15
36
  address: options.smartAccount.address,
16
37
  network: options.network,
17
38
  owners: [options.owner],
18
39
  name: options.smartAccount.name,
19
40
  type: "evm-smart",
41
+ sendUserOperation: async (userOpOptions) => {
42
+ return sendUserOperation(apiClient, {
43
+ ...userOpOptions,
44
+ smartAccount: options.smartAccount,
45
+ network: options.network,
46
+ paymasterUrl: userOpOptions.paymasterUrl ?? paymasterUrl,
47
+ });
48
+ },
49
+ waitForUserOperation: async (waitOptions) => {
50
+ return waitForUserOperation(apiClient, {
51
+ ...waitOptions,
52
+ smartAccountAddress: options.smartAccount.address,
53
+ });
54
+ },
55
+ getUserOperation: async (getOptions) => {
56
+ return getUserOperation(apiClient, {
57
+ ...getOptions,
58
+ smartAccount: options.smartAccount,
59
+ });
60
+ },
20
61
  };
62
+ if (isMethodSupportedOnNetwork("transfer", options.network)) {
63
+ Object.assign(account, {
64
+ transfer: async (transferOptions) => {
65
+ return transfer(apiClient, options.smartAccount, {
66
+ ...transferOptions,
67
+ network: options.network,
68
+ paymasterUrl: transferOptions.paymasterUrl ?? paymasterUrl,
69
+ }, smartAccountTransferStrategy);
70
+ },
71
+ });
72
+ }
73
+ if (isMethodSupportedOnNetwork("listTokenBalances", options.network)) {
74
+ Object.assign(account, {
75
+ listTokenBalances: async (listOptions) => {
76
+ return listTokenBalances(apiClient, {
77
+ ...listOptions,
78
+ address: options.smartAccount.address,
79
+ network: options.network,
80
+ });
81
+ },
82
+ });
83
+ }
84
+ if (isMethodSupportedOnNetwork("requestFaucet", options.network)) {
85
+ Object.assign(account, {
86
+ requestFaucet: async (faucetOptions) => {
87
+ return requestFaucet(apiClient, {
88
+ ...faucetOptions,
89
+ address: options.smartAccount.address,
90
+ network: options.network,
91
+ });
92
+ },
93
+ });
94
+ }
95
+ if (isMethodSupportedOnNetwork("quoteFund", options.network)) {
96
+ Object.assign(account, {
97
+ quoteFund: async (quoteOptions) => {
98
+ return quoteFund(apiClient, {
99
+ ...quoteOptions,
100
+ address: options.smartAccount.address,
101
+ });
102
+ },
103
+ });
104
+ }
105
+ if (isMethodSupportedOnNetwork("fund", options.network)) {
106
+ Object.assign(account, {
107
+ fund: async (fundOptions) => {
108
+ return fund(apiClient, {
109
+ ...fundOptions,
110
+ address: options.smartAccount.address,
111
+ });
112
+ },
113
+ waitForFundOperationReceipt: async (waitOptions) => {
114
+ return waitForFundOperationReceipt(apiClient, waitOptions);
115
+ },
116
+ });
117
+ }
118
+ if (isMethodSupportedOnNetwork("quoteSwap", options.network)) {
119
+ Object.assign(account, {
120
+ quoteSwap: async (quoteSwapOptions) => {
121
+ return createSwapQuote(apiClient, {
122
+ ...quoteSwapOptions,
123
+ taker: options.smartAccount.address,
124
+ signerAddress: options.owner.address,
125
+ smartAccount: options.smartAccount,
126
+ network: options.network,
127
+ });
128
+ },
129
+ });
130
+ }
131
+ if (isMethodSupportedOnNetwork("swap", options.network)) {
132
+ Object.assign(account, {
133
+ swap: async (swapOptions) => {
134
+ return sendSwapOperation(apiClient, {
135
+ ...swapOptions,
136
+ smartAccount: options.smartAccount,
137
+ taker: options.smartAccount.address,
138
+ signerAddress: options.owner.address,
139
+ network: options.network,
140
+ paymasterUrl: swapOptions.paymasterUrl ?? paymasterUrl,
141
+ });
142
+ },
143
+ });
144
+ }
21
145
  return account;
22
146
  }
23
147
  //# sourceMappingURL=toNetworkScopedEvmSmartAccount.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"toNetworkScopedEvmSmartAccount.js","sourceRoot":"","sources":["../../../accounts/evm/toNetworkScopedEvmSmartAccount.ts"],"names":[],"mappings":"AAeA;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,8BAA8B,CAC5C,SAA+B,EAC/B,OAAiC;IAEjC,MAAM,OAAO,GAAiC;QAC5C,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,OAAO;QACrC,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,MAAM,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;QACvB,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,IAAI;QAC/B,IAAI,EAAE,WAAW;KAClB,CAAC;IAEF,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"toNetworkScopedEvmSmartAccount.js","sourceRoot":"","sources":["../../../accounts/evm/toNetworkScopedEvmSmartAccount.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { encodeFunctionData } from "viem";
2
+ import { getBaseNodeRpcUrl } from "../../accounts/evm/getBaseNodeRpcUrl.js";
2
3
  /**
3
4
  * Sends a user operation to the network.
4
5
  *
@@ -40,7 +41,13 @@ import { encodeFunctionData } from "viem";
40
41
  * @returns {Promise<SendUserOperationReturnType>} The result of the user operation.
41
42
  */
42
43
  export async function sendUserOperation(client, options) {
43
- const { calls, network, paymasterUrl } = options;
44
+ const { calls, network, paymasterUrl: _paymasterUrl } = options;
45
+ const paymasterUrl = await (async () => {
46
+ if (!_paymasterUrl && network === "base") {
47
+ return getBaseNodeRpcUrl("base");
48
+ }
49
+ return _paymasterUrl;
50
+ })();
44
51
  if (calls.length === 0) {
45
52
  throw new Error("Calls array is empty");
46
53
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sendUserOperation.js","sourceRoot":"","sources":["../../../actions/evm/sendUserOperation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,MAAM,CAAC;AAgE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAA4B,EAC5B,OAAoC;IAEpC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IAEjD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;IAED,MAAM,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;QACpC,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QAEnD,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,GAAG,IAAI,cAAc,IAAI,IAAI,EAAE,CAAC;YACxD,OAAO;gBACL,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,IAAI,EAAE,kBAAkB,CAAC;oBACvB,GAAG,EAAE,IAAI,CAAC,GAAG;oBACb,YAAY,EAAE,IAAI,CAAC,YAAY;oBAC/B,IAAI,EAAE,IAAI,CAAC,IAAI;iBAChB,CAAC;gBACF,KAAK;aACN,CAAC;QACJ,CAAC;QAED,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI;YACvB,KAAK;SACN,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE;QACvF,OAAO;QACP,KAAK,EAAE,YAAY;QACnB,YAAY;KACb,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAE7C,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC;QACjC,IAAI,EAAE,gBAAgB,CAAC,UAAiB;KACzC,CAAC,CAAC;IAEH,MAAM,iBAAiB,GAAG,MAAM,MAAM,CAAC,iBAAiB,CACtD,OAAO,CAAC,YAAY,CAAC,OAAO,EAC5B,gBAAgB,CAAC,UAAiB,EAClC;QACE,SAAS;KACV,EACD,OAAO,CAAC,cAAc,CACvB,CAAC;IAEF,OAAO;QACL,mBAAmB,EAAE,OAAO,CAAC,YAAY,CAAC,OAAO;QACjD,MAAM,EAAE,iBAAiB,CAAC,MAAM;QAChC,UAAU,EAAE,gBAAgB,CAAC,UAAU;KACT,CAAC;AACnC,CAAC"}
1
+ {"version":3,"file":"sendUserOperation.js","sourceRoot":"","sources":["../../../actions/evm/sendUserOperation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,MAAM,CAAC;AAE1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AA+D5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAA4B,EAC5B,OAAoC;IAEpC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IAEhE,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE;QACrC,IAAI,CAAC,aAAa,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;YACzC,OAAO,iBAAiB,CAAC,MAAM,CAAC,CAAC;QACnC,CAAC;QACD,OAAO,aAAa,CAAC;IACvB,CAAC,CAAC,EAAE,CAAC;IAEL,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;IAED,MAAM,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;QACpC,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QAEnD,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,GAAG,IAAI,cAAc,IAAI,IAAI,EAAE,CAAC;YACxD,OAAO;gBACL,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,IAAI,EAAE,kBAAkB,CAAC;oBACvB,GAAG,EAAE,IAAI,CAAC,GAAG;oBACb,YAAY,EAAE,IAAI,CAAC,YAAY;oBAC/B,IAAI,EAAE,IAAI,CAAC,IAAI;iBAChB,CAAC;gBACF,KAAK;aACN,CAAC;QACJ,CAAC;QAED,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI;YACvB,KAAK;SACN,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE;QACvF,OAAO;QACP,KAAK,EAAE,YAAY;QACnB,YAAY;KACb,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAE7C,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC;QACjC,IAAI,EAAE,gBAAgB,CAAC,UAAiB;KACzC,CAAC,CAAC;IAEH,MAAM,iBAAiB,GAAG,MAAM,MAAM,CAAC,iBAAiB,CACtD,OAAO,CAAC,YAAY,CAAC,OAAO,EAC5B,gBAAgB,CAAC,UAAiB,EAClC;QACE,SAAS;KACV,EACD,OAAO,CAAC,cAAc,CACvB,CAAC;IAEF,OAAO;QACL,mBAAmB,EAAE,OAAO,CAAC,YAAY,CAAC,OAAO;QACjD,MAAM,EAAE,iBAAiB,CAAC,MAAM;QAChC,UAAU,EAAE,gBAAgB,CAAC,UAAU;KACT,CAAC;AACnC,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { encodeFunctionData, erc20Abi } from "viem";
2
2
  import { getErc20Address } from "./utils.js";
3
+ import { mapChainToNetwork } from "../../../accounts/evm/chainToNetworkMapper.js";
3
4
  /**
4
5
  * Transfer an amount of a token from a network-scoped account to another account.
5
6
  * This function is used for accounts that are scoped to a specific network and use
@@ -14,7 +15,6 @@ export async function transferWithViem(walletClient, from, transferArgs) {
14
15
  const token = transferArgs.token;
15
16
  const to = typeof transferArgs.to === "string" ? transferArgs.to : transferArgs.to.address;
16
17
  const value = transferArgs.amount;
17
- const network = transferArgs.network;
18
18
  if (token === "eth") {
19
19
  const hash = await walletClient.sendTransaction({
20
20
  account: from.address,
@@ -23,6 +23,7 @@ export async function transferWithViem(walletClient, from, transferArgs) {
23
23
  });
24
24
  return { transactionHash: hash };
25
25
  }
26
+ const network = mapChainToNetwork(walletClient.chain);
26
27
  const erc20Address = getErc20Address(token, network);
27
28
  // First approve the transfer
28
29
  await walletClient.sendTransaction({
@@ -1 +1 @@
1
- {"version":3,"file":"transferWithViem.js","sourceRoot":"","sources":["../../../../actions/evm/transfer/transferWithViem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAEpD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAQ7C;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,YAAqD,EACrD,IAAO,EACP,YAA6B;IAE7B,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC;IACjC,MAAM,EAAE,GAAG,OAAO,YAAY,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,OAAO,CAAC;IAC3F,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC;IAClC,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC;IAErC,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;QACpB,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,eAAe,CAAC;YAC9C,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,EAAE;YACF,KAAK;SACN,CAAC,CAAC;QACH,OAAO,EAAE,eAAe,EAAE,IAAW,EAAE,CAAC;IAC1C,CAAC;IAED,MAAM,YAAY,GAAG,eAAe,CAAC,KAAK,EAAE,OAAkB,CAAC,CAAC;IAEhE,6BAA6B;IAC7B,MAAM,YAAY,CAAC,eAAe,CAAC;QACjC,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,EAAE,EAAE,YAAY;QAChB,IAAI,EAAE,kBAAkB,CAAC;YACvB,GAAG,EAAE,QAAQ;YACb,YAAY,EAAE,SAAS;YACvB,IAAI,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC;SAClB,CAAC;KACH,CAAC,CAAC;IAEH,4BAA4B;IAC5B,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,eAAe,CAAC;QAC9C,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,EAAE,EAAE,YAAY;QAChB,IAAI,EAAE,kBAAkB,CAAC;YACvB,GAAG,EAAE,QAAQ;YACb,YAAY,EAAE,UAAU;YACxB,IAAI,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC;SAClB,CAAC;KACH,CAAC,CAAC;IAEH,OAAO,EAAE,eAAe,EAAE,IAAW,EAAE,CAAC;AAC1C,CAAC"}
1
+ {"version":3,"file":"transferWithViem.js","sourceRoot":"","sources":["../../../../actions/evm/transfer/transferWithViem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAEpD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,+CAA+C,CAAC;AAQlF;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,YAAqD,EACrD,IAAO,EACP,YAA0D;IAE1D,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC;IACjC,MAAM,EAAE,GAAG,OAAO,YAAY,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,OAAO,CAAC;IAC3F,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC;IAElC,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;QACpB,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,eAAe,CAAC;YAC9C,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,EAAE;YACF,KAAK;SACN,CAAC,CAAC;QACH,OAAO,EAAE,eAAe,EAAE,IAAW,EAAE,CAAC;IAC1C,CAAC;IAED,MAAM,OAAO,GAAG,iBAAiB,CAAC,YAAY,CAAC,KAAK,CAAY,CAAC;IACjE,MAAM,YAAY,GAAG,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAErD,6BAA6B;IAC7B,MAAM,YAAY,CAAC,eAAe,CAAC;QACjC,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,EAAE,EAAE,YAAY;QAChB,IAAI,EAAE,kBAAkB,CAAC;YACvB,GAAG,EAAE,QAAQ;YACb,YAAY,EAAE,SAAS;YACvB,IAAI,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC;SAClB,CAAC;KACH,CAAC,CAAC;IAEH,4BAA4B;IAC5B,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,eAAe,CAAC;QAC9C,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,EAAE,EAAE,YAAY;QAChB,IAAI,EAAE,kBAAkB,CAAC;YACvB,GAAG,EAAE,QAAQ;YACb,YAAY,EAAE,UAAU;YACxB,IAAI,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC;SAClB,CAAC;KACH,CAAC,CAAC;IAEH,OAAO,EAAE,eAAe,EAAE,IAAW,EAAE,CAAC;AAC1C,CAAC"}