@wagmi/connectors 3.1.1 → 4.0.0-alpha.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 (73) hide show
  1. package/dist/esm/coinbaseWallet.js +141 -0
  2. package/dist/esm/coinbaseWallet.js.map +1 -0
  3. package/dist/esm/index.js +7 -0
  4. package/dist/esm/index.js.map +1 -0
  5. package/dist/esm/index.test-d.js +4 -0
  6. package/dist/esm/index.test-d.js.map +1 -0
  7. package/dist/esm/injected.js +372 -0
  8. package/dist/esm/injected.js.map +1 -0
  9. package/dist/esm/ledger.js +162 -0
  10. package/dist/esm/ledger.js.map +1 -0
  11. package/dist/esm/safe.js +88 -0
  12. package/dist/esm/safe.js.map +1 -0
  13. package/dist/esm/tsconfig.build.tsbuildinfo +1 -0
  14. package/dist/esm/version.js +2 -0
  15. package/dist/esm/version.js.map +1 -0
  16. package/dist/esm/walletConnect.js +280 -0
  17. package/dist/esm/walletConnect.js.map +1 -0
  18. package/dist/types/coinbaseWallet.d.ts +21 -0
  19. package/dist/types/coinbaseWallet.d.ts.map +1 -0
  20. package/dist/types/index.d.ts +7 -0
  21. package/dist/types/index.d.ts.map +1 -0
  22. package/dist/types/index.test-d.d.ts +2 -0
  23. package/dist/types/index.test-d.d.ts.map +1 -0
  24. package/dist/types/injected.d.ts +382 -0
  25. package/dist/types/injected.d.ts.map +1 -0
  26. package/dist/types/ledger.d.ts +18 -0
  27. package/dist/types/ledger.d.ts.map +1 -0
  28. package/dist/types/safe.d.ts +18 -0
  29. package/dist/types/safe.d.ts.map +1 -0
  30. package/dist/types/version.d.ts +2 -0
  31. package/dist/types/version.d.ts.map +1 -0
  32. package/dist/types/walletConnect.d.ts +63 -0
  33. package/dist/types/walletConnect.d.ts.map +1 -0
  34. package/package.json +44 -83
  35. package/src/coinbaseWallet.ts +207 -0
  36. package/src/index.ts +17 -0
  37. package/src/injected.ts +535 -0
  38. package/src/ledger.ts +210 -0
  39. package/src/safe.ts +114 -0
  40. package/src/version.ts +1 -0
  41. package/src/walletConnect.ts +394 -0
  42. package/README.md +0 -46
  43. package/coinbaseWallet/package.json +0 -4
  44. package/dist/base-70e3a8a9.d.ts +0 -142
  45. package/dist/chunk-2UFLHRLT.js +0 -391
  46. package/dist/chunk-OQILYQDO.js +0 -15
  47. package/dist/chunk-UGBGYVBH.js +0 -22
  48. package/dist/chunk-W65LBPLT.js +0 -58
  49. package/dist/coinbaseWallet.d.ts +0 -62
  50. package/dist/coinbaseWallet.js +0 -216
  51. package/dist/index.d.ts +0 -20
  52. package/dist/index.js +0 -16
  53. package/dist/injected.d.ts +0 -64
  54. package/dist/injected.js +0 -9
  55. package/dist/ledger.d.ts +0 -69
  56. package/dist/ledger.js +0 -261
  57. package/dist/metaMask.d.ts +0 -33
  58. package/dist/metaMask.js +0 -144
  59. package/dist/mock/index.d.ts +0 -80
  60. package/dist/mock/index.js +0 -200
  61. package/dist/safe.d.ts +0 -53
  62. package/dist/safe.js +0 -129
  63. package/dist/walletConnect.d.ts +0 -109
  64. package/dist/walletConnect.js +0 -325
  65. package/dist/walletConnectLegacy.d.ts +0 -38
  66. package/dist/walletConnectLegacy.js +0 -179
  67. package/injected/package.json +0 -4
  68. package/ledger/package.json +0 -4
  69. package/metaMask/package.json +0 -4
  70. package/mock/package.json +0 -4
  71. package/safe/package.json +0 -4
  72. package/walletConnect/package.json +0 -4
  73. package/walletConnectLegacy/package.json +0 -4
@@ -0,0 +1,280 @@
1
+ import { ChainNotConfiguredError, ProviderNotFoundError, createConnector, normalizeChainId, } from '@wagmi/core';
2
+ import { EthereumProvider, OPTIONAL_EVENTS, OPTIONAL_METHODS, } from '@walletconnect/ethereum-provider';
3
+ import { SwitchChainError, UserRejectedRequestError, getAddress, numberToHex, } from 'viem';
4
+ export function walletConnect(parameters) {
5
+ const isNewChainsStale = parameters.isNewChainsStale ?? true;
6
+ let provider_;
7
+ let providerPromise;
8
+ const NAMESPACE = 'eip155';
9
+ return createConnector((config) => ({
10
+ id: 'walletConnect',
11
+ name: 'WalletConnect',
12
+ async setup() {
13
+ const provider = await this.getProvider();
14
+ if (!provider)
15
+ return;
16
+ provider.on('connect', this.onConnect.bind(this));
17
+ provider.on('session_delete', this.onSessionDelete.bind(this));
18
+ },
19
+ async connect({ chainId, ...rest } = {}) {
20
+ try {
21
+ const provider = await this.getProvider();
22
+ if (!provider)
23
+ throw new ProviderNotFoundError();
24
+ provider.on('display_uri', this.onDisplayUri);
25
+ let targetChainId = chainId;
26
+ if (!targetChainId) {
27
+ const state = (await config.storage?.getItem('state')) ?? {};
28
+ const isChainSupported = config.chains.some((x) => x.id === state.chainId);
29
+ if (isChainSupported)
30
+ targetChainId = state.chainId;
31
+ else
32
+ targetChainId = config.chains[0]?.id;
33
+ }
34
+ if (!targetChainId)
35
+ throw new Error('No chains found on connector.');
36
+ const isChainsStale = await this.isChainsStale();
37
+ // If there is an active session with stale chains, disconnect current session.
38
+ if (provider.session && isChainsStale)
39
+ await provider.disconnect();
40
+ // If there isn't an active session or chains are stale, connect.
41
+ if (!provider.session || isChainsStale) {
42
+ const optionalChains = config.chains
43
+ .filter((chain) => chain.id !== targetChainId)
44
+ .map((optionalChain) => optionalChain.id);
45
+ await provider.connect({
46
+ chains: [targetChainId],
47
+ optionalChains,
48
+ ...('pairingTopic' in rest
49
+ ? { pairingTopic: rest.pairingTopic }
50
+ : {}),
51
+ });
52
+ this.setRequestedChainsIds(config.chains.map((x) => x.id));
53
+ }
54
+ // If session exists and chains are authorized, enable provider for required chain
55
+ const accounts = (await provider.enable()).map(getAddress);
56
+ const currentChainId = await this.getChainId();
57
+ provider.removeListener('display_uri', this.onDisplayUri);
58
+ provider.removeListener('connect', this.onConnect.bind(this));
59
+ provider.on('accountsChanged', this.onAccountsChanged.bind(this));
60
+ provider.on('chainChanged', this.onChainChanged);
61
+ provider.on('disconnect', this.onDisconnect.bind(this));
62
+ provider.on('session_delete', this.onSessionDelete.bind(this));
63
+ return { accounts, chainId: currentChainId };
64
+ }
65
+ catch (error) {
66
+ if (/(user rejected|connection request reset)/i.test(error?.message)) {
67
+ throw new UserRejectedRequestError(error);
68
+ }
69
+ throw error;
70
+ }
71
+ },
72
+ async disconnect() {
73
+ const provider = await this.getProvider();
74
+ try {
75
+ await provider.disconnect();
76
+ }
77
+ catch (error) {
78
+ if (!/No matching key/i.test(error.message))
79
+ throw error;
80
+ }
81
+ finally {
82
+ provider.removeListener('accountsChanged', this.onAccountsChanged.bind(this));
83
+ provider.removeListener('chainChanged', this.onChainChanged);
84
+ provider.removeListener('disconnect', this.onDisconnect.bind(this));
85
+ provider.removeListener('session_delete', this.onSessionDelete.bind(this));
86
+ provider.on('connect', this.onConnect.bind(this));
87
+ this.setRequestedChainsIds([]);
88
+ }
89
+ },
90
+ async getAccounts() {
91
+ const provider = await this.getProvider();
92
+ return provider.accounts.map(getAddress);
93
+ },
94
+ async getProvider({ chainId } = {}) {
95
+ async function initProvider() {
96
+ const [defaultChain, ...optionalChains] = config.chains.map((x) => x.id);
97
+ if (!defaultChain)
98
+ return;
99
+ return await EthereumProvider.init({
100
+ ...parameters,
101
+ chains: [defaultChain],
102
+ disableProviderPing: true,
103
+ optionalMethods: OPTIONAL_METHODS,
104
+ optionalEvents: OPTIONAL_EVENTS,
105
+ optionalChains,
106
+ projectId: parameters.projectId,
107
+ rpcMap: Object.fromEntries(config.chains.map((chain) => [
108
+ chain.id,
109
+ chain.rpcUrls.default.http[0],
110
+ ])),
111
+ showQrModal: parameters.showQrModal ?? true,
112
+ });
113
+ }
114
+ if (!provider_) {
115
+ if (!providerPromise)
116
+ providerPromise = initProvider();
117
+ provider_ = await providerPromise;
118
+ }
119
+ if (chainId)
120
+ await this.switchChain?.({ chainId });
121
+ return provider_;
122
+ },
123
+ async getChainId() {
124
+ const provider = await this.getProvider();
125
+ return provider.chainId;
126
+ },
127
+ async isAuthorized() {
128
+ try {
129
+ const [accounts, provider] = await Promise.all([
130
+ this.getAccounts(),
131
+ this.getProvider(),
132
+ ]);
133
+ // If an account does not exist on the session, then the connector is unauthorized.
134
+ if (!accounts.length)
135
+ return false;
136
+ // If the chains are stale on the session, then the connector is unauthorized.
137
+ const isChainsStale = await this.isChainsStale();
138
+ if (isChainsStale && provider.session) {
139
+ await provider.disconnect().catch(() => { });
140
+ return false;
141
+ }
142
+ return true;
143
+ }
144
+ catch {
145
+ return false;
146
+ }
147
+ },
148
+ async switchChain({ chainId }) {
149
+ const chain = config.chains.find((chain) => chain.id === chainId);
150
+ if (!chain)
151
+ throw new SwitchChainError(new ChainNotConfiguredError());
152
+ try {
153
+ const provider = await this.getProvider();
154
+ const namespaceChains = this.getNamespaceChainsIds();
155
+ const namespaceMethods = this.getNamespaceMethods();
156
+ const isChainApproved = namespaceChains.includes(chainId);
157
+ if (!isChainApproved &&
158
+ namespaceMethods.includes('wallet_addEthereumChain')) {
159
+ await provider.request({
160
+ method: 'wallet_addEthereumChain',
161
+ params: [
162
+ {
163
+ chainId: numberToHex(chain.id),
164
+ blockExplorerUrls: [chain.blockExplorers?.default],
165
+ chainName: chain.name,
166
+ nativeCurrency: chain.nativeCurrency,
167
+ rpcUrls: [...chain.rpcUrls.default.http],
168
+ },
169
+ ],
170
+ });
171
+ const requestedChains = await this.getRequestedChainsIds();
172
+ this.setRequestedChainsIds([...requestedChains, chainId]);
173
+ }
174
+ await provider.request({
175
+ method: 'wallet_switchEthereumChain',
176
+ params: [{ chainId: numberToHex(chainId) }],
177
+ });
178
+ return chain;
179
+ }
180
+ catch (error) {
181
+ const message = typeof error === 'string'
182
+ ? error
183
+ : error?.message;
184
+ if (/user rejected request/i.test(message))
185
+ throw new UserRejectedRequestError(error);
186
+ throw new SwitchChainError(error);
187
+ }
188
+ },
189
+ onAccountsChanged(accounts) {
190
+ if (accounts.length === 0)
191
+ this.onDisconnect();
192
+ else
193
+ config.emitter.emit('change', { accounts: accounts.map(getAddress) });
194
+ },
195
+ onChainChanged(chain) {
196
+ const chainId = normalizeChainId(chain);
197
+ config.emitter.emit('change', { chainId });
198
+ },
199
+ async onConnect(connectInfo) {
200
+ const chainId = normalizeChainId(connectInfo.chainId);
201
+ const accounts = await this.getAccounts();
202
+ config.emitter.emit('connect', { accounts, chainId });
203
+ },
204
+ async onDisconnect(_error) {
205
+ this.setRequestedChainsIds([]);
206
+ config.emitter.emit('disconnect');
207
+ const provider = await this.getProvider();
208
+ provider.removeListener('accountsChanged', this.onAccountsChanged.bind(this));
209
+ provider.removeListener('chainChanged', this.onChainChanged);
210
+ provider.removeListener('disconnect', this.onDisconnect.bind(this));
211
+ provider.removeListener('session_delete', this.onSessionDelete.bind(this));
212
+ provider.on('connect', this.onConnect.bind(this));
213
+ },
214
+ onDisplayUri(uri) {
215
+ config.emitter.emit('message', { type: 'display_uri', data: uri });
216
+ },
217
+ onSessionDelete() {
218
+ this.onDisconnect();
219
+ },
220
+ getNamespaceChainsIds() {
221
+ if (!provider_)
222
+ return [];
223
+ const chainIds = provider_.session?.namespaces[NAMESPACE]?.chains?.map((chain) => parseInt(chain.split(':')[1] || ''));
224
+ return chainIds ?? [];
225
+ },
226
+ getNamespaceMethods() {
227
+ if (!provider_)
228
+ return [];
229
+ const methods = provider_.session?.namespaces[NAMESPACE]
230
+ ?.methods;
231
+ return methods ?? [];
232
+ },
233
+ async getRequestedChainsIds() {
234
+ return ((await config.storage?.getItem(this.requestedChainsStorageKey)) ?? []);
235
+ },
236
+ /**
237
+ * Checks if the target chains match the chains that were
238
+ * initially requested by the connector for the WalletConnect session.
239
+ * If there is a mismatch, this means that the chains on the connector
240
+ * are considered stale, and need to be revalidated at a later point (via
241
+ * connection).
242
+ *
243
+ * There may be a scenario where a dapp adds a chain to the
244
+ * connector later on, however, this chain will not have been approved or rejected
245
+ * by the wallet. In this case, the chain is considered stale.
246
+ *
247
+ * There are exceptions however:
248
+ * - If the wallet supports dynamic chain addition via `eth_addEthereumChain`,
249
+ * then the chain is not considered stale.
250
+ * - If the `isNewChainsStale` flag is falsy on the connector, then the chain is
251
+ * not considered stale.
252
+ *
253
+ * For the above cases, chain validation occurs dynamically when the user
254
+ * attempts to switch chain.
255
+ *
256
+ * Also check that dapp supports at least 1 chain from previously approved session.
257
+ */
258
+ async isChainsStale() {
259
+ const namespaceMethods = this.getNamespaceMethods();
260
+ if (namespaceMethods.includes('wallet_addEthereumChain'))
261
+ return false;
262
+ if (!isNewChainsStale)
263
+ return false;
264
+ const connectorChains = config.chains.map((x) => x.id);
265
+ const namespaceChains = this.getNamespaceChainsIds();
266
+ if (namespaceChains.length &&
267
+ !namespaceChains.some((id) => connectorChains.includes(id)))
268
+ return false;
269
+ const requestedChains = await this.getRequestedChainsIds();
270
+ return !connectorChains.every((id) => requestedChains.includes(id));
271
+ },
272
+ async setRequestedChainsIds(chains) {
273
+ await config.storage?.setItem(this.requestedChainsStorageKey, chains);
274
+ },
275
+ get requestedChainsStorageKey() {
276
+ return `${this.id}.requestedChains`;
277
+ },
278
+ }));
279
+ }
280
+ //# sourceMappingURL=walletConnect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"walletConnect.js","sourceRoot":"","sources":["../../src/walletConnect.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { type CoinbaseWalletProvider, CoinbaseWalletSDK } from '@coinbase/wallet-sdk';
2
+ import type { Evaluate, Mutable, Omit } from '@wagmi/core/internal';
3
+ export type CoinbaseWalletParameters = Evaluate<Mutable<Omit<ConstructorParameters<typeof CoinbaseWalletSDK>[0], 'reloadOnDisconnect'>> & {
4
+ /**
5
+ * Fallback Ethereum JSON RPC URL
6
+ * @default ""
7
+ */
8
+ jsonRpcUrl?: string | undefined;
9
+ /**
10
+ * Fallback Ethereum Chain ID
11
+ * @default 1
12
+ */
13
+ chainId?: number | undefined;
14
+ /**
15
+ * Whether or not to reload dapp automatically after disconnect.
16
+ * @default false
17
+ */
18
+ reloadOnDisconnect?: boolean | undefined;
19
+ }>;
20
+ export declare function coinbaseWallet(parameters: CoinbaseWalletParameters): import("@wagmi/core").CreateConnectorFn<CoinbaseWalletProvider, {}, {}>;
21
+ //# sourceMappingURL=coinbaseWallet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coinbaseWallet.d.ts","sourceRoot":"","sources":["../../src/coinbaseWallet.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,sBAAsB,EAC3B,iBAAiB,EAClB,MAAM,sBAAsB,CAAA;AAM7B,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAA;AASnE,MAAM,MAAM,wBAAwB,GAAG,QAAQ,CAC7C,OAAO,CACL,IAAI,CACF,qBAAqB,CAAC,OAAO,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAClD,oBAAoB,CACrB,CACF,GAAG;IACF;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC/B;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CACzC,CACF,CAAA;AAED,wBAAgB,cAAc,CAAC,UAAU,EAAE,wBAAwB,2EAmKlE"}
@@ -0,0 +1,7 @@
1
+ export { type CoinbaseWalletParameters, coinbaseWallet, } from './coinbaseWallet.js';
2
+ export { type InjectedParameters, injected } from './injected.js';
3
+ export { type LedgerParameters, ledger } from './ledger.js';
4
+ export { type SafeParameters, safe } from './safe.js';
5
+ export { type WalletConnectParameters, walletConnect, } from './walletConnect.js';
6
+ export { version } from './version.js';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,wBAAwB,EAC7B,cAAc,GACf,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EAAE,KAAK,kBAAkB,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAEjE,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAE3D,OAAO,EAAE,KAAK,cAAc,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAErD,OAAO,EACL,KAAK,uBAAuB,EAC5B,aAAa,GACd,MAAM,oBAAoB,CAAA;AAE3B,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.test-d.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.test-d.d.ts","sourceRoot":"","sources":["../../src/index.test-d.ts"],"names":[],"mappings":""}