@coinbase/cdp-core 0.0.37 → 0.0.39

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 (195) hide show
  1. package/dist/esm/index.native101.js +10 -79
  2. package/dist/esm/index.native102.js +79 -10
  3. package/dist/esm/index.native32.js +1 -1
  4. package/dist/esm/index.native92.js +1 -1
  5. package/dist/esm/index.web100.js +78 -6
  6. package/dist/esm/index.web102.js +5 -18
  7. package/dist/esm/index.web103.js +18 -28
  8. package/dist/esm/index.web104.js +26 -6
  9. package/dist/esm/index.web105.js +6 -9
  10. package/dist/esm/index.web106.js +11 -13
  11. package/dist/esm/index.web107.js +11 -8
  12. package/dist/esm/index.web108.js +7 -14
  13. package/dist/esm/index.web109.js +16 -80
  14. package/dist/esm/index.web110.js +81 -5
  15. package/dist/esm/index.web112.js +4 -4
  16. package/dist/esm/index.web113.js +5 -5
  17. package/dist/esm/index.web12.js +1 -1
  18. package/dist/esm/index.web19.js +13 -13
  19. package/dist/esm/index.web20.js +3 -3
  20. package/dist/esm/index.web23.js +2 -2
  21. package/dist/esm/index.web24.js +950 -16
  22. package/dist/esm/index.web25.js +2 -23
  23. package/dist/esm/index.web26.js +49 -50
  24. package/dist/esm/index.web27.js +26 -158
  25. package/dist/esm/index.web28.js +157 -45
  26. package/dist/esm/index.web29.js +43 -245
  27. package/dist/esm/index.web30.js +247 -53
  28. package/dist/esm/index.web31.js +56 -951
  29. package/dist/esm/index.web32.js +17 -2
  30. package/dist/esm/index.web33.js +21 -48
  31. package/dist/esm/index.web34.js +50 -27
  32. package/dist/esm/index.web35.js +2 -13
  33. package/dist/esm/index.web36.js +2 -12
  34. package/dist/esm/index.web37.js +9 -2
  35. package/dist/esm/index.web38.js +18 -2
  36. package/dist/esm/index.web39.js +44 -53
  37. package/dist/esm/index.web40.js +13 -10
  38. package/dist/esm/index.web41.js +56 -2
  39. package/dist/esm/index.web42.js +7 -45
  40. package/dist/esm/index.web43.js +21 -13
  41. package/dist/esm/index.web44.js +11 -8
  42. package/dist/esm/index.web45.js +3 -17
  43. package/dist/esm/index.web46.js +3 -45
  44. package/dist/esm/index.web47.js +34 -13
  45. package/dist/esm/index.web48.js +10 -53
  46. package/dist/esm/index.web49.js +4 -6
  47. package/dist/esm/index.web50.js +28 -21
  48. package/dist/esm/index.web51.js +6 -3
  49. package/dist/esm/index.web52.js +24 -3
  50. package/dist/esm/index.web53.js +16 -34
  51. package/dist/esm/index.web54.js +53 -11
  52. package/dist/esm/index.web55.js +23 -4
  53. package/dist/esm/index.web56.js +11 -28
  54. package/dist/esm/index.web57.js +27 -6
  55. package/dist/esm/index.web58.js +40 -22
  56. package/dist/esm/index.web59.js +55 -16
  57. package/dist/esm/index.web60.js +126 -53
  58. package/dist/esm/index.web61.js +11 -22
  59. package/dist/esm/index.web62.js +104 -11
  60. package/dist/esm/index.web63.js +6 -27
  61. package/dist/esm/index.web64.js +3 -43
  62. package/dist/esm/index.web65.js +14 -55
  63. package/dist/esm/index.web66.js +41 -126
  64. package/dist/esm/index.web67.js +76 -10
  65. package/dist/esm/index.web68.js +2 -105
  66. package/dist/esm/index.web69.js +2 -7
  67. package/dist/esm/index.web7.js +4 -4
  68. package/dist/esm/index.web70.js +13 -3
  69. package/dist/esm/index.web71.js +37 -14
  70. package/dist/esm/index.web72.js +5 -41
  71. package/dist/esm/index.web73.js +32 -76
  72. package/dist/esm/index.web74.js +9 -2
  73. package/dist/esm/index.web75.js +11 -2
  74. package/dist/esm/index.web76.js +11 -37
  75. package/dist/esm/index.web77.js +13 -6
  76. package/dist/esm/index.web78.js +17 -33
  77. package/dist/esm/index.web79.js +5 -8
  78. package/dist/esm/index.web80.js +5 -11
  79. package/dist/esm/index.web81.js +10 -11
  80. package/dist/esm/index.web82.js +54 -13
  81. package/dist/esm/index.web83.js +10 -18
  82. package/dist/esm/index.web84.js +2 -6
  83. package/dist/esm/index.web85.js +44 -4
  84. package/dist/esm/index.web86.js +13 -10
  85. package/dist/esm/index.web87.js +17 -100
  86. package/dist/esm/index.web88.js +2 -79
  87. package/dist/esm/index.web89.js +20 -80
  88. package/dist/esm/index.web90.js +79 -20
  89. package/dist/esm/index.web91.js +104 -10
  90. package/dist/esm/index.web92.js +31 -18
  91. package/dist/esm/index.web93.js +7 -94
  92. package/dist/esm/index.web94.js +20 -20
  93. package/dist/esm/index.web95.js +9 -117
  94. package/dist/esm/index.web96.js +20 -2
  95. package/dist/esm/index.web97.js +91 -18
  96. package/dist/esm/index.web98.js +20 -19
  97. package/dist/esm/index.web99.js +115 -30
  98. package/dist/native/index.native101.js +10 -79
  99. package/dist/native/index.native102.js +79 -10
  100. package/dist/native/index.native32.js +1 -1
  101. package/dist/native/index.native92.js +1 -1
  102. package/dist/web/index.web100.js +78 -6
  103. package/dist/web/index.web102.js +5 -18
  104. package/dist/web/index.web103.js +18 -28
  105. package/dist/web/index.web104.js +26 -6
  106. package/dist/web/index.web105.js +6 -9
  107. package/dist/web/index.web106.js +11 -13
  108. package/dist/web/index.web107.js +11 -8
  109. package/dist/web/index.web108.js +7 -14
  110. package/dist/web/index.web109.js +16 -80
  111. package/dist/web/index.web110.js +81 -5
  112. package/dist/web/index.web112.js +4 -4
  113. package/dist/web/index.web113.js +5 -5
  114. package/dist/web/index.web12.js +1 -1
  115. package/dist/web/index.web19.js +13 -13
  116. package/dist/web/index.web20.js +3 -3
  117. package/dist/web/index.web23.js +2 -2
  118. package/dist/web/index.web24.js +950 -16
  119. package/dist/web/index.web25.js +2 -23
  120. package/dist/web/index.web26.js +49 -50
  121. package/dist/web/index.web27.js +26 -158
  122. package/dist/web/index.web28.js +157 -45
  123. package/dist/web/index.web29.js +43 -245
  124. package/dist/web/index.web30.js +247 -53
  125. package/dist/web/index.web31.js +56 -951
  126. package/dist/web/index.web32.js +17 -2
  127. package/dist/web/index.web33.js +21 -48
  128. package/dist/web/index.web34.js +50 -27
  129. package/dist/web/index.web35.js +2 -13
  130. package/dist/web/index.web36.js +2 -12
  131. package/dist/web/index.web37.js +9 -2
  132. package/dist/web/index.web38.js +18 -2
  133. package/dist/web/index.web39.js +44 -53
  134. package/dist/web/index.web40.js +13 -10
  135. package/dist/web/index.web41.js +56 -2
  136. package/dist/web/index.web42.js +7 -45
  137. package/dist/web/index.web43.js +21 -13
  138. package/dist/web/index.web44.js +11 -8
  139. package/dist/web/index.web45.js +3 -17
  140. package/dist/web/index.web46.js +3 -45
  141. package/dist/web/index.web47.js +34 -13
  142. package/dist/web/index.web48.js +10 -53
  143. package/dist/web/index.web49.js +4 -6
  144. package/dist/web/index.web50.js +28 -21
  145. package/dist/web/index.web51.js +6 -3
  146. package/dist/web/index.web52.js +24 -3
  147. package/dist/web/index.web53.js +16 -34
  148. package/dist/web/index.web54.js +53 -11
  149. package/dist/web/index.web55.js +23 -4
  150. package/dist/web/index.web56.js +11 -28
  151. package/dist/web/index.web57.js +27 -6
  152. package/dist/web/index.web58.js +40 -22
  153. package/dist/web/index.web59.js +55 -16
  154. package/dist/web/index.web60.js +126 -53
  155. package/dist/web/index.web61.js +11 -22
  156. package/dist/web/index.web62.js +104 -11
  157. package/dist/web/index.web63.js +6 -27
  158. package/dist/web/index.web64.js +3 -43
  159. package/dist/web/index.web65.js +14 -55
  160. package/dist/web/index.web66.js +41 -126
  161. package/dist/web/index.web67.js +76 -10
  162. package/dist/web/index.web68.js +2 -105
  163. package/dist/web/index.web69.js +2 -7
  164. package/dist/web/index.web7.js +4 -4
  165. package/dist/web/index.web70.js +13 -3
  166. package/dist/web/index.web71.js +37 -14
  167. package/dist/web/index.web72.js +5 -41
  168. package/dist/web/index.web73.js +32 -76
  169. package/dist/web/index.web74.js +9 -2
  170. package/dist/web/index.web75.js +11 -2
  171. package/dist/web/index.web76.js +11 -37
  172. package/dist/web/index.web77.js +13 -6
  173. package/dist/web/index.web78.js +17 -33
  174. package/dist/web/index.web79.js +5 -8
  175. package/dist/web/index.web80.js +5 -11
  176. package/dist/web/index.web81.js +10 -11
  177. package/dist/web/index.web82.js +54 -13
  178. package/dist/web/index.web83.js +10 -18
  179. package/dist/web/index.web84.js +2 -6
  180. package/dist/web/index.web85.js +44 -4
  181. package/dist/web/index.web86.js +13 -10
  182. package/dist/web/index.web87.js +17 -100
  183. package/dist/web/index.web88.js +2 -79
  184. package/dist/web/index.web89.js +20 -80
  185. package/dist/web/index.web90.js +79 -20
  186. package/dist/web/index.web91.js +104 -10
  187. package/dist/web/index.web92.js +31 -18
  188. package/dist/web/index.web93.js +7 -94
  189. package/dist/web/index.web94.js +20 -20
  190. package/dist/web/index.web95.js +9 -117
  191. package/dist/web/index.web96.js +20 -2
  192. package/dist/web/index.web97.js +91 -18
  193. package/dist/web/index.web98.js +20 -19
  194. package/dist/web/index.web99.js +115 -30
  195. package/package.json +2 -2
@@ -1,252 +1,50 @@
1
- import { Hex as P } from "ox";
2
- import { toHex as f, createWalletClient as A } from "viem";
3
- import { getUserOperation as T, sendUserOperation as R, signEvmTypedData as U, signEvmHash as x, getCurrentUser as v, signOut as O, sendEvmTransaction as b, signEvmTransaction as D, signEvmMessage as H } from "./index.web5.js";
4
- import "@coinbase/cdp-api-client";
5
- import "./index.web7.js";
6
- import { validateUserConnected as g, RPCRequestError as i, STANDARD_ERROR_CODES as s, validateUserHasEvmSmartAccount as S, validateUserOwnsAddress as l, EIP1193ProviderError as p, validateUserHasEvmAccount as F } from "./index.web8.js";
7
- import "zustand";
8
- import { userOperationChainIdToNameMapping as m, isChainIdSupportedForCDPUserOps as I, isChainIdSupportedForCDPSends as N, sendTransactionChainIdToNameMapping as j, userOperationNameToChainIdMapping as q } from "./index.web17.js";
9
- function w(e) {
10
- return {
11
- to: e.to,
12
- data: e.data,
13
- value: e.value ? BigInt(e.value) : void 0,
14
- nonce: e.nonce ? Number(e.nonce) : void 0,
15
- gas: e.gas ? BigInt(e.gas) : void 0,
16
- maxFeePerGas: e.maxFeePerGas ? BigInt(e.maxFeePerGas) : void 0,
17
- maxPriorityFeePerGas: e.maxPriorityFeePerGas ? BigInt(e.maxPriorityFeePerGas) : void 0,
18
- type: "eip1559"
19
- };
20
- }
21
- function G(e) {
22
- return e.map((t) => ({
23
- to: t.to,
24
- data: t.data,
25
- value: t.value ? BigInt(t.value) : void 0
26
- }));
27
- }
28
- function M(e) {
29
- return {
30
- atomic: !0,
31
- chainId: f(q[e.network] ?? 0),
32
- id: e.userOpHash,
33
- status: B(e.status),
34
- version: "1"
35
- };
36
- }
37
- function B(e) {
38
- switch (e) {
39
- case "dropped":
40
- case "failed":
41
- return 400;
42
- case "complete":
43
- return 200;
44
- default:
45
- return 100;
46
- }
47
- }
48
- async function Q() {
49
- return (await v())?.evmAccounts || [];
50
- }
51
- async function X(e, t) {
52
- const n = await g();
53
- return e.emit("connect", {
54
- chainId: P.fromNumber(t.getState().chainId)
55
- }), n.evmAccounts || [];
56
- }
57
- async function Y(e) {
58
- const [t, n] = e;
59
- await l(n);
60
- const a = Buffer.from(t.slice(2), "hex").toString();
61
- try {
62
- return (await H({
63
- evmAccount: n,
64
- message: a
65
- })).signature;
66
- } catch (o) {
67
- throw new p(
68
- s.provider.userRejectedRequest,
69
- o instanceof Error ? o.message : "Signing failed"
70
- );
1
+ class n {
2
+ events = {};
3
+ /**
4
+ * Add an event listener.
5
+ *
6
+ * @param event - The name of the event to listen for.
7
+ * @param listener - The function to call when the event is emitted.
8
+ */
9
+ on(e, s) {
10
+ this.events[e] || (this.events[e] = []), this.events[e].push(s);
71
11
  }
72
- }
73
- async function Z(e) {
74
- const [t, n] = e;
75
- await l(t);
76
- try {
77
- return (await U({
78
- evmAccount: t,
79
- typedData: JSON.parse(n)
80
- })).signature;
81
- } catch (a) {
82
- throw new p(
83
- s.provider.userRejectedRequest,
84
- a instanceof Error ? a.message : "Signing failed"
85
- );
12
+ /**
13
+ * Remove an event listener.
14
+ *
15
+ * @param event - The name of the event to remove the listener from.
16
+ * @param listener - The function to remove from the event listeners.
17
+ */
18
+ removeListener(e, s) {
19
+ if (!this.events[e])
20
+ return;
21
+ const t = this.events[e].indexOf(s);
22
+ t > -1 && this.events[e].splice(t, 1);
86
23
  }
87
- }
88
- async function ee(e, t, n) {
89
- const [a] = e;
90
- if (!a || typeof a != "object")
91
- throw new i(
92
- s.rpc.invalidParams,
93
- "Transaction parameter must be an object"
94
- );
95
- if (!a.to)
96
- throw new i(
97
- s.rpc.invalidParams,
98
- "Transaction must include 'to' field"
99
- );
100
- const d = (await F()).evmAccounts?.[0], c = t.getState(), r = a.chainId ? Number(a.chainId) : c.chainId;
101
- if (!d)
102
- throw new i(
103
- s.rpc.invalidParams,
104
- "User does not have an EVM account"
105
- );
106
- if (N(r))
107
- try {
108
- return (await b({
109
- evmAccount: d,
110
- transaction: { ...w(a), chainId: r },
111
- network: j[r]
112
- })).transactionHash;
113
- } catch (u) {
114
- throw console.log("Transaction failed", u), new i(
115
- s.rpc.transactionRejected,
116
- u instanceof Error ? u.message : "Transaction failed"
117
- );
118
- }
119
- else
120
- try {
121
- const u = A({
122
- // Safe as we check before calling this handler that chainId is configured
123
- chain: c.chains.find((h) => h.id === r),
124
- transport: n[r],
125
- account: d
126
- }), y = c.chains.find((h) => h.id === r), C = await u.prepareTransactionRequest({
127
- ...w(a),
128
- chain: y
129
- }), E = await D({
130
- evmAccount: d,
131
- transaction: {
132
- ...C,
133
- type: "eip1559"
134
- }
135
- });
136
- return await u.sendRawTransaction({
137
- serializedTransaction: E.signedTransaction
138
- });
139
- } catch (u) {
140
- throw new i(
141
- s.rpc.transactionRejected,
142
- u instanceof Error ? u.message : "Transaction failed"
143
- );
144
- }
145
- }
146
- async function te(e) {
147
- const [t, n] = e;
148
- await l(n);
149
- try {
150
- return (await x({
151
- evmAccount: n,
152
- hash: t
153
- })).signature;
154
- } catch (a) {
155
- throw new p(
156
- s.provider.userRejectedRequest,
157
- a instanceof Error ? a.message : "Signing failed"
158
- );
159
- }
160
- }
161
- async function ae(e) {
162
- return `0x${e.getState().chainId.toString(16)}`;
163
- }
164
- async function ne() {
165
- await v() && await O();
166
- }
167
- function re(e, t) {
168
- const n = Number.parseInt(e[0].chainId, 16);
169
- t.getState().setChainId(n);
170
- }
171
- async function se(e, t) {
172
- const n = e[0].calls, o = (await S()).evmSmartAccounts?.[0], c = t.getState().chainId;
173
- if (!o)
174
- throw new i(
175
- s.rpc.invalidParams,
176
- "User does not have an EVM smart account"
177
- );
178
- if (!I(c))
179
- throw new i(
180
- s.rpc.invalidParams,
181
- "Chain ID is not supported for user operations"
182
- );
183
- try {
184
- return (await R({
185
- evmSmartAccount: o,
186
- calls: G(n),
187
- network: m[c]
188
- })).userOperationHash;
189
- } catch (r) {
190
- throw console.log("User operation failed", r), new i(
191
- s.rpc.transactionRejected,
192
- r instanceof Error ? r.message : "User operation failed"
193
- );
194
- }
195
- }
196
- async function oe(e, t) {
197
- const n = e[0], o = (await S()).evmSmartAccounts?.[0], c = t.getState().chainId;
198
- if (!o)
199
- throw new i(
200
- s.rpc.invalidParams,
201
- "User does not have an EVM smart account"
202
- );
203
- if (!I(c) || !m[c])
204
- throw new i(
205
- s.rpc.invalidParams,
206
- "Chain ID is not supported for user operations"
207
- );
208
- try {
209
- const r = await T({
210
- userOperationHash: n,
211
- evmSmartAccount: o,
212
- network: m[c]
24
+ /**
25
+ * Emit an event.
26
+ *
27
+ * @param event - The name of the event to emit.
28
+ * @param args - The arguments to pass to the event listeners.
29
+ */
30
+ emit(e, ...s) {
31
+ this.events[e] && this.events[e].forEach((t) => {
32
+ try {
33
+ t(...s);
34
+ } catch (i) {
35
+ console.error(`Error in event listener for ${e}:`, i);
36
+ }
213
37
  });
214
- return M(r);
215
- } catch (r) {
216
- throw console.log("Failed to get user operation status", r), new i(
217
- s.rpc.internal,
218
- "Failed to get user operation status"
219
- );
220
38
  }
221
- }
222
- async function ie() {
223
- const e = await g();
224
- if (!e)
225
- throw new i(s.rpc.invalidParams, "User is not connected");
226
- return !e.evmSmartAccounts?.length ? {} : Object.keys(m).reduce(
227
- (a, o) => {
228
- const d = f(Number(o));
229
- return a[d] = {
230
- atomic: { status: "supported" },
231
- paymasterService: { supported: !0 }
232
- }, a;
233
- },
234
- {}
235
- );
39
+ /**
40
+ * Remove all listeners for an event.
41
+ *
42
+ * @param event - The name of the event to remove all listeners from. If not provided, removes all listeners for all events.
43
+ */
44
+ removeAllListeners(e) {
45
+ e ? delete this.events[e] : this.events = {};
46
+ }
236
47
  }
237
48
  export {
238
- Q as handleAccounts,
239
- ae as handleChainId,
240
- ne as handleDisconnect,
241
- te as handleEthSign,
242
- oe as handleGetCallsStatus,
243
- ie as handleGetCapabilities,
244
- Y as handlePersonalSign,
245
- X as handleRequestAccounts,
246
- se as handleSendCalls,
247
- ee as handleSendTransaction,
248
- Z as handleSignTypedData,
249
- re as handleSwitchEthereumChain,
250
- G as shimProviderCallsRequest,
251
- w as shimProviderTxRequest
49
+ n as EventEmitter
252
50
  };
@@ -1,58 +1,252 @@
1
- import { chainConfig as a } from "./index.web101.js";
2
- import { defineChain as t } from "./index.web44.js";
3
- const e = 11155111, r = /* @__PURE__ */ t({
4
- ...a,
5
- id: 84532,
6
- network: "base-sepolia",
7
- name: "Base Sepolia",
8
- nativeCurrency: { name: "Sepolia Ether", symbol: "ETH", decimals: 18 },
9
- rpcUrls: {
10
- default: {
11
- http: ["https://sepolia.base.org"]
1
+ import { Hex as P } from "ox";
2
+ import { toHex as f, createWalletClient as A } from "viem";
3
+ import { getUserOperation as T, sendUserOperation as R, signEvmTypedData as U, signEvmHash as x, getCurrentUser as v, signOut as O, sendEvmTransaction as b, signEvmTransaction as D, signEvmMessage as H } from "./index.web5.js";
4
+ import "@coinbase/cdp-api-client";
5
+ import "./index.web7.js";
6
+ import { validateUserConnected as g, RPCRequestError as i, STANDARD_ERROR_CODES as s, validateUserHasEvmSmartAccount as S, validateUserOwnsAddress as l, EIP1193ProviderError as p, validateUserHasEvmAccount as F } from "./index.web8.js";
7
+ import "zustand";
8
+ import { userOperationChainIdToNameMapping as m, isChainIdSupportedForCDPUserOps as I, isChainIdSupportedForCDPSends as N, sendTransactionChainIdToNameMapping as j, userOperationNameToChainIdMapping as q } from "./index.web17.js";
9
+ function w(e) {
10
+ return {
11
+ to: e.to,
12
+ data: e.data,
13
+ value: e.value ? BigInt(e.value) : void 0,
14
+ nonce: e.nonce ? Number(e.nonce) : void 0,
15
+ gas: e.gas ? BigInt(e.gas) : void 0,
16
+ maxFeePerGas: e.maxFeePerGas ? BigInt(e.maxFeePerGas) : void 0,
17
+ maxPriorityFeePerGas: e.maxPriorityFeePerGas ? BigInt(e.maxPriorityFeePerGas) : void 0,
18
+ type: "eip1559"
19
+ };
20
+ }
21
+ function G(e) {
22
+ return e.map((t) => ({
23
+ to: t.to,
24
+ data: t.data,
25
+ value: t.value ? BigInt(t.value) : void 0
26
+ }));
27
+ }
28
+ function M(e) {
29
+ return {
30
+ atomic: !0,
31
+ chainId: f(q[e.network] ?? 0),
32
+ id: e.userOpHash,
33
+ status: B(e.status),
34
+ version: "1"
35
+ };
36
+ }
37
+ function B(e) {
38
+ switch (e) {
39
+ case "dropped":
40
+ case "failed":
41
+ return 400;
42
+ case "complete":
43
+ return 200;
44
+ default:
45
+ return 100;
46
+ }
47
+ }
48
+ async function Q() {
49
+ return (await v())?.evmAccounts || [];
50
+ }
51
+ async function X(e, t) {
52
+ const n = await g();
53
+ return e.emit("connect", {
54
+ chainId: P.fromNumber(t.getState().chainId)
55
+ }), n.evmAccounts || [];
56
+ }
57
+ async function Y(e) {
58
+ const [t, n] = e;
59
+ await l(n);
60
+ const a = Buffer.from(t.slice(2), "hex").toString();
61
+ try {
62
+ return (await H({
63
+ evmAccount: n,
64
+ message: a
65
+ })).signature;
66
+ } catch (o) {
67
+ throw new p(
68
+ s.provider.userRejectedRequest,
69
+ o instanceof Error ? o.message : "Signing failed"
70
+ );
71
+ }
72
+ }
73
+ async function Z(e) {
74
+ const [t, n] = e;
75
+ await l(t);
76
+ try {
77
+ return (await U({
78
+ evmAccount: t,
79
+ typedData: JSON.parse(n)
80
+ })).signature;
81
+ } catch (a) {
82
+ throw new p(
83
+ s.provider.userRejectedRequest,
84
+ a instanceof Error ? a.message : "Signing failed"
85
+ );
86
+ }
87
+ }
88
+ async function ee(e, t, n) {
89
+ const [a] = e;
90
+ if (!a || typeof a != "object")
91
+ throw new i(
92
+ s.rpc.invalidParams,
93
+ "Transaction parameter must be an object"
94
+ );
95
+ if (!a.to)
96
+ throw new i(
97
+ s.rpc.invalidParams,
98
+ "Transaction must include 'to' field"
99
+ );
100
+ const d = (await F()).evmAccounts?.[0], c = t.getState(), r = a.chainId ? Number(a.chainId) : c.chainId;
101
+ if (!d)
102
+ throw new i(
103
+ s.rpc.invalidParams,
104
+ "User does not have an EVM account"
105
+ );
106
+ if (N(r))
107
+ try {
108
+ return (await b({
109
+ evmAccount: d,
110
+ transaction: { ...w(a), chainId: r },
111
+ network: j[r]
112
+ })).transactionHash;
113
+ } catch (u) {
114
+ throw console.log("Transaction failed", u), new i(
115
+ s.rpc.transactionRejected,
116
+ u instanceof Error ? u.message : "Transaction failed"
117
+ );
12
118
  }
13
- },
14
- blockExplorers: {
15
- default: {
16
- name: "Basescan",
17
- url: "https://sepolia.basescan.org",
18
- apiUrl: "https://api-sepolia.basescan.org/api"
119
+ else
120
+ try {
121
+ const u = A({
122
+ // Safe as we check before calling this handler that chainId is configured
123
+ chain: c.chains.find((h) => h.id === r),
124
+ transport: n[r],
125
+ account: d
126
+ }), y = c.chains.find((h) => h.id === r), C = await u.prepareTransactionRequest({
127
+ ...w(a),
128
+ chain: y
129
+ }), E = await D({
130
+ evmAccount: d,
131
+ transaction: {
132
+ ...C,
133
+ type: "eip1559"
134
+ }
135
+ });
136
+ return await u.sendRawTransaction({
137
+ serializedTransaction: E.signedTransaction
138
+ });
139
+ } catch (u) {
140
+ throw new i(
141
+ s.rpc.transactionRejected,
142
+ u instanceof Error ? u.message : "Transaction failed"
143
+ );
19
144
  }
20
- },
21
- contracts: {
22
- ...a.contracts,
23
- disputeGameFactory: {
24
- [e]: {
25
- address: "0xd6E6dBf4F7EA0ac412fD8b65ED297e64BB7a06E1"
26
- }
145
+ }
146
+ async function te(e) {
147
+ const [t, n] = e;
148
+ await l(n);
149
+ try {
150
+ return (await x({
151
+ evmAccount: n,
152
+ hash: t
153
+ })).signature;
154
+ } catch (a) {
155
+ throw new p(
156
+ s.provider.userRejectedRequest,
157
+ a instanceof Error ? a.message : "Signing failed"
158
+ );
159
+ }
160
+ }
161
+ async function ae(e) {
162
+ return `0x${e.getState().chainId.toString(16)}`;
163
+ }
164
+ async function ne() {
165
+ await v() && await O();
166
+ }
167
+ function re(e, t) {
168
+ const n = Number.parseInt(e[0].chainId, 16);
169
+ t.getState().setChainId(n);
170
+ }
171
+ async function se(e, t) {
172
+ const n = e[0].calls, o = (await S()).evmSmartAccounts?.[0], c = t.getState().chainId;
173
+ if (!o)
174
+ throw new i(
175
+ s.rpc.invalidParams,
176
+ "User does not have an EVM smart account"
177
+ );
178
+ if (!I(c))
179
+ throw new i(
180
+ s.rpc.invalidParams,
181
+ "Chain ID is not supported for user operations"
182
+ );
183
+ try {
184
+ return (await R({
185
+ evmSmartAccount: o,
186
+ calls: G(n),
187
+ network: m[c]
188
+ })).userOperationHash;
189
+ } catch (r) {
190
+ throw console.log("User operation failed", r), new i(
191
+ s.rpc.transactionRejected,
192
+ r instanceof Error ? r.message : "User operation failed"
193
+ );
194
+ }
195
+ }
196
+ async function oe(e, t) {
197
+ const n = e[0], o = (await S()).evmSmartAccounts?.[0], c = t.getState().chainId;
198
+ if (!o)
199
+ throw new i(
200
+ s.rpc.invalidParams,
201
+ "User does not have an EVM smart account"
202
+ );
203
+ if (!I(c) || !m[c])
204
+ throw new i(
205
+ s.rpc.invalidParams,
206
+ "Chain ID is not supported for user operations"
207
+ );
208
+ try {
209
+ const r = await T({
210
+ userOperationHash: n,
211
+ evmSmartAccount: o,
212
+ network: m[c]
213
+ });
214
+ return M(r);
215
+ } catch (r) {
216
+ throw console.log("Failed to get user operation status", r), new i(
217
+ s.rpc.internal,
218
+ "Failed to get user operation status"
219
+ );
220
+ }
221
+ }
222
+ async function ie() {
223
+ const e = await g();
224
+ if (!e)
225
+ throw new i(s.rpc.invalidParams, "User is not connected");
226
+ return !e.evmSmartAccounts?.length ? {} : Object.keys(m).reduce(
227
+ (a, o) => {
228
+ const d = f(Number(o));
229
+ return a[d] = {
230
+ atomic: { status: "supported" },
231
+ paymasterService: { supported: !0 }
232
+ }, a;
27
233
  },
28
- l2OutputOracle: {
29
- [e]: {
30
- address: "0x84457ca9D0163FbC4bbfe4Dfbb20ba46e48DF254"
31
- }
32
- },
33
- portal: {
34
- [e]: {
35
- address: "0x49f53e41452c74589e85ca1677426ba426459e85",
36
- blockCreated: 4446677
37
- }
38
- },
39
- l1StandardBridge: {
40
- [e]: {
41
- address: "0xfd0Bf71F60660E2f608ed56e1659C450eB113120",
42
- blockCreated: 4446677
43
- }
44
- },
45
- multicall3: {
46
- address: "0xca11bde05977b3631167028862be2a173976ca11",
47
- blockCreated: 1059647
48
- }
49
- },
50
- testnet: !0,
51
- sourceId: e
52
- });
53
- ({
54
- ...r
55
- });
234
+ {}
235
+ );
236
+ }
56
237
  export {
57
- r as baseSepolia
238
+ Q as handleAccounts,
239
+ ae as handleChainId,
240
+ ne as handleDisconnect,
241
+ te as handleEthSign,
242
+ oe as handleGetCallsStatus,
243
+ ie as handleGetCapabilities,
244
+ Y as handlePersonalSign,
245
+ X as handleRequestAccounts,
246
+ se as handleSendCalls,
247
+ ee as handleSendTransaction,
248
+ Z as handleSignTypedData,
249
+ re as handleSwitchEthereumChain,
250
+ G as shimProviderCallsRequest,
251
+ w as shimProviderTxRequest
58
252
  };