@wagmi/core 0.6.12 → 0.7.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 (184) hide show
  1. package/chains/package.json +2 -2
  2. package/connectors/coinbaseWallet/package.json +2 -2
  3. package/connectors/metaMask/package.json +2 -2
  4. package/connectors/mock/package.json +2 -2
  5. package/connectors/walletConnect/package.json +2 -2
  6. package/dist/{declarations/src/connectors/base.d.ts → base-5bd9b5ed.d.ts} +8 -5
  7. package/dist/chains.d.ts +3 -0
  8. package/dist/chains.js +29 -0
  9. package/dist/chunk-2EDVJWOA.js +3496 -0
  10. package/dist/chunk-4DNFSL2K.js +376 -0
  11. package/dist/chunk-MQXBDTVK.js +29 -0
  12. package/dist/{declarations/src/connectors → connectors}/coinbaseWallet.d.ts +10 -6
  13. package/dist/connectors/coinbaseWallet.js +215 -0
  14. package/dist/{declarations/src/connectors → connectors}/metaMask.d.ts +11 -4
  15. package/dist/connectors/metaMask.js +115 -0
  16. package/dist/connectors/mock/index.d.ts +78 -0
  17. package/dist/connectors/mock/index.js +190 -0
  18. package/dist/{declarations/src/connectors → connectors}/walletConnect.d.ts +9 -5
  19. package/dist/connectors/walletConnect.js +160 -0
  20. package/dist/{declarations/src/types/contracts.d.ts → contracts-fb6a6ff0.d.ts} +122 -17
  21. package/dist/{declarations/src/types/index.d.ts → index-bacc1c49.d.ts} +83 -15
  22. package/dist/index.d.ts +1738 -0
  23. package/dist/index.js +165 -0
  24. package/dist/{declarations/src/connectors/injected.d.ts → injected-6980e5c3.d.ts} +9 -6
  25. package/dist/internal.d.ts +8 -0
  26. package/dist/internal.js +8 -0
  27. package/dist/providers/alchemy.d.ts +11 -0
  28. package/dist/providers/alchemy.js +32 -0
  29. package/dist/providers/infura.d.ts +11 -0
  30. package/dist/providers/infura.js +32 -0
  31. package/dist/providers/jsonRpc.d.ts +14 -0
  32. package/dist/providers/jsonRpc.js +44 -0
  33. package/dist/providers/public.d.ts +8 -0
  34. package/dist/providers/public.js +30 -0
  35. package/internal/package.json +2 -2
  36. package/package.json +40 -51
  37. package/providers/alchemy/package.json +2 -2
  38. package/providers/infura/package.json +2 -2
  39. package/providers/jsonRpc/package.json +2 -2
  40. package/providers/public/package.json +2 -2
  41. package/chains/dist/wagmi-core-chains.cjs.d.ts +0 -1
  42. package/chains/dist/wagmi-core-chains.cjs.dev.js +0 -26
  43. package/chains/dist/wagmi-core-chains.cjs.js +0 -7
  44. package/chains/dist/wagmi-core-chains.cjs.prod.js +0 -26
  45. package/chains/dist/wagmi-core-chains.esm.js +0 -2
  46. package/connectors/coinbaseWallet/dist/wagmi-core-connectors-coinbaseWallet.cjs.d.ts +0 -1
  47. package/connectors/coinbaseWallet/dist/wagmi-core-connectors-coinbaseWallet.cjs.dev.js +0 -274
  48. package/connectors/coinbaseWallet/dist/wagmi-core-connectors-coinbaseWallet.cjs.js +0 -7
  49. package/connectors/coinbaseWallet/dist/wagmi-core-connectors-coinbaseWallet.cjs.prod.js +0 -274
  50. package/connectors/coinbaseWallet/dist/wagmi-core-connectors-coinbaseWallet.esm.js +0 -252
  51. package/connectors/metaMask/dist/wagmi-core-connectors-metaMask.cjs.d.ts +0 -1
  52. package/connectors/metaMask/dist/wagmi-core-connectors-metaMask.cjs.dev.js +0 -153
  53. package/connectors/metaMask/dist/wagmi-core-connectors-metaMask.cjs.js +0 -7
  54. package/connectors/metaMask/dist/wagmi-core-connectors-metaMask.cjs.prod.js +0 -153
  55. package/connectors/metaMask/dist/wagmi-core-connectors-metaMask.esm.js +0 -149
  56. package/connectors/mock/dist/wagmi-core-connectors-mock.cjs.d.ts +0 -1
  57. package/connectors/mock/dist/wagmi-core-connectors-mock.cjs.dev.js +0 -262
  58. package/connectors/mock/dist/wagmi-core-connectors-mock.cjs.js +0 -7
  59. package/connectors/mock/dist/wagmi-core-connectors-mock.cjs.prod.js +0 -262
  60. package/connectors/mock/dist/wagmi-core-connectors-mock.esm.js +0 -253
  61. package/connectors/walletConnect/dist/wagmi-core-connectors-walletConnect.cjs.d.ts +0 -1
  62. package/connectors/walletConnect/dist/wagmi-core-connectors-walletConnect.cjs.dev.js +0 -228
  63. package/connectors/walletConnect/dist/wagmi-core-connectors-walletConnect.cjs.js +0 -7
  64. package/connectors/walletConnect/dist/wagmi-core-connectors-walletConnect.cjs.prod.js +0 -228
  65. package/connectors/walletConnect/dist/wagmi-core-connectors-walletConnect.esm.js +0 -206
  66. package/dist/chains-73cc6c23.cjs.prod.js +0 -526
  67. package/dist/chains-8fce19d8.esm.js +0 -502
  68. package/dist/chains-fe1f4131.cjs.dev.js +0 -526
  69. package/dist/debounce-0862bf88.esm.js +0 -18
  70. package/dist/debounce-2d836dc9.cjs.prod.js +0 -20
  71. package/dist/debounce-46ac0312.cjs.dev.js +0 -20
  72. package/dist/declarations/src/actions/accounts/connect.d.ts +0 -18
  73. package/dist/declarations/src/actions/accounts/disconnect.d.ts +0 -1
  74. package/dist/declarations/src/actions/accounts/fetchBalance.d.ts +0 -19
  75. package/dist/declarations/src/actions/accounts/fetchSigner.d.ts +0 -7
  76. package/dist/declarations/src/actions/accounts/getAccount.d.ts +0 -36
  77. package/dist/declarations/src/actions/accounts/getNetwork.d.ts +0 -8
  78. package/dist/declarations/src/actions/accounts/index.d.ts +0 -12
  79. package/dist/declarations/src/actions/accounts/signMessage.d.ts +0 -7
  80. package/dist/declarations/src/actions/accounts/signTypedData.d.ts +0 -23
  81. package/dist/declarations/src/actions/accounts/switchNetwork.d.ts +0 -6
  82. package/dist/declarations/src/actions/accounts/watchAccount.d.ts +0 -12
  83. package/dist/declarations/src/actions/accounts/watchNetwork.d.ts +0 -10
  84. package/dist/declarations/src/actions/accounts/watchSigner.d.ts +0 -5
  85. package/dist/declarations/src/actions/contracts/fetchToken.d.ts +0 -21
  86. package/dist/declarations/src/actions/contracts/getContract.d.ts +0 -113
  87. package/dist/declarations/src/actions/contracts/index.d.ts +0 -11
  88. package/dist/declarations/src/actions/contracts/multicall.d.ts +0 -17
  89. package/dist/declarations/src/actions/contracts/prepareWriteContract.d.ts +0 -47
  90. package/dist/declarations/src/actions/contracts/readContract.d.ts +0 -15
  91. package/dist/declarations/src/actions/contracts/readContracts.d.ts +0 -28
  92. package/dist/declarations/src/actions/contracts/watchContractEvent.d.ts +0 -28
  93. package/dist/declarations/src/actions/contracts/watchMulticall.d.ts +0 -10
  94. package/dist/declarations/src/actions/contracts/watchReadContract.d.ts +0 -7
  95. package/dist/declarations/src/actions/contracts/watchReadContracts.d.ts +0 -10
  96. package/dist/declarations/src/actions/contracts/writeContract.d.ts +0 -72
  97. package/dist/declarations/src/actions/ens/fetchEnsAddress.d.ts +0 -9
  98. package/dist/declarations/src/actions/ens/fetchEnsAvatar.d.ts +0 -8
  99. package/dist/declarations/src/actions/ens/fetchEnsName.d.ts +0 -9
  100. package/dist/declarations/src/actions/ens/fetchEnsResolver.d.ts +0 -9
  101. package/dist/declarations/src/actions/ens/index.d.ts +0 -4
  102. package/dist/declarations/src/actions/index.d.ts +0 -6
  103. package/dist/declarations/src/actions/network-status/fetchBlockNumber.d.ts +0 -5
  104. package/dist/declarations/src/actions/network-status/fetchFeeData.d.ts +0 -16
  105. package/dist/declarations/src/actions/network-status/index.d.ts +0 -3
  106. package/dist/declarations/src/actions/network-status/watchBlockNumber.d.ts +0 -7
  107. package/dist/declarations/src/actions/providers/getProvider.d.ts +0 -7
  108. package/dist/declarations/src/actions/providers/getWebSocketProvider.d.ts +0 -7
  109. package/dist/declarations/src/actions/providers/index.d.ts +0 -4
  110. package/dist/declarations/src/actions/providers/watchProvider.d.ts +0 -4
  111. package/dist/declarations/src/actions/providers/watchWebSocketProvider.d.ts +0 -4
  112. package/dist/declarations/src/actions/transactions/fetchTransaction.d.ts +0 -21
  113. package/dist/declarations/src/actions/transactions/index.d.ts +0 -4
  114. package/dist/declarations/src/actions/transactions/prepareSendTransaction.d.ts +0 -37
  115. package/dist/declarations/src/actions/transactions/sendTransaction.d.ts +0 -48
  116. package/dist/declarations/src/actions/transactions/waitForTransaction.d.ts +0 -18
  117. package/dist/declarations/src/chains.d.ts +0 -1
  118. package/dist/declarations/src/client.d.ts +0 -91
  119. package/dist/declarations/src/connectors/index.d.ts +0 -2
  120. package/dist/declarations/src/connectors/mock/connector.d.ts +0 -34
  121. package/dist/declarations/src/connectors/mock/index.d.ts +0 -2
  122. package/dist/declarations/src/connectors/mock/provider.d.ts +0 -41
  123. package/dist/declarations/src/constants/abis.d.ts +0 -941
  124. package/dist/declarations/src/constants/blockExplorers.d.ts +0 -9
  125. package/dist/declarations/src/constants/chains.d.ts +0 -64
  126. package/dist/declarations/src/constants/index.d.ts +0 -7
  127. package/dist/declarations/src/constants/rpcs.d.ts +0 -11
  128. package/dist/declarations/src/constants/units.d.ts +0 -1
  129. package/dist/declarations/src/errors.d.ts +0 -134
  130. package/dist/declarations/src/index.d.ts +0 -14
  131. package/dist/declarations/src/internal.d.ts +0 -3
  132. package/dist/declarations/src/providers/alchemy.d.ts +0 -6
  133. package/dist/declarations/src/providers/infura.d.ts +0 -6
  134. package/dist/declarations/src/providers/jsonRpc.d.ts +0 -10
  135. package/dist/declarations/src/providers/public.d.ts +0 -4
  136. package/dist/declarations/src/storage.d.ts +0 -12
  137. package/dist/declarations/src/types/utils.d.ts +0 -103
  138. package/dist/declarations/src/utils/assertActiveChain.d.ts +0 -5
  139. package/dist/declarations/src/utils/configureChains.d.ts +0 -26
  140. package/dist/declarations/src/utils/debounce.d.ts +0 -1
  141. package/dist/declarations/src/utils/deepEqual.d.ts +0 -2
  142. package/dist/declarations/src/utils/getInjectedName.d.ts +0 -2
  143. package/dist/declarations/src/utils/index.d.ts +0 -11
  144. package/dist/declarations/src/utils/logger.d.ts +0 -1
  145. package/dist/declarations/src/utils/minimizeContractInterface.d.ts +0 -5
  146. package/dist/declarations/src/utils/normalizeChainId.d.ts +0 -1
  147. package/dist/declarations/src/utils/normalizeFunctionName.d.ts +0 -17
  148. package/dist/declarations/src/utils/parseContractResult.d.ts +0 -7
  149. package/dist/getProvider-3b1af4e6.cjs.dev.js +0 -1143
  150. package/dist/getProvider-84f303a1.cjs.prod.js +0 -1143
  151. package/dist/getProvider-97db849e.esm.js +0 -1105
  152. package/dist/rpcs-38f4faba.cjs.prod.js +0 -57
  153. package/dist/rpcs-52ea3d8d.cjs.dev.js +0 -57
  154. package/dist/rpcs-d533516e.esm.js +0 -51
  155. package/dist/wagmi-core.cjs.d.ts +0 -1
  156. package/dist/wagmi-core.cjs.dev.js +0 -2683
  157. package/dist/wagmi-core.cjs.js +0 -7
  158. package/dist/wagmi-core.cjs.prod.js +0 -2683
  159. package/dist/wagmi-core.esm.js +0 -2599
  160. package/internal/dist/wagmi-core-internal.cjs.d.ts +0 -1
  161. package/internal/dist/wagmi-core-internal.cjs.dev.js +0 -9
  162. package/internal/dist/wagmi-core-internal.cjs.js +0 -7
  163. package/internal/dist/wagmi-core-internal.cjs.prod.js +0 -9
  164. package/internal/dist/wagmi-core-internal.esm.js +0 -1
  165. package/providers/alchemy/dist/wagmi-core-providers-alchemy.cjs.d.ts +0 -1
  166. package/providers/alchemy/dist/wagmi-core-providers-alchemy.cjs.dev.js +0 -36
  167. package/providers/alchemy/dist/wagmi-core-providers-alchemy.cjs.js +0 -7
  168. package/providers/alchemy/dist/wagmi-core-providers-alchemy.cjs.prod.js +0 -36
  169. package/providers/alchemy/dist/wagmi-core-providers-alchemy.esm.js +0 -32
  170. package/providers/infura/dist/wagmi-core-providers-infura.cjs.d.ts +0 -1
  171. package/providers/infura/dist/wagmi-core-providers-infura.cjs.dev.js +0 -36
  172. package/providers/infura/dist/wagmi-core-providers-infura.cjs.js +0 -7
  173. package/providers/infura/dist/wagmi-core-providers-infura.cjs.prod.js +0 -36
  174. package/providers/infura/dist/wagmi-core-providers-infura.esm.js +0 -32
  175. package/providers/jsonRpc/dist/wagmi-core-providers-jsonRpc.cjs.d.ts +0 -1
  176. package/providers/jsonRpc/dist/wagmi-core-providers-jsonRpc.cjs.dev.js +0 -46
  177. package/providers/jsonRpc/dist/wagmi-core-providers-jsonRpc.cjs.js +0 -7
  178. package/providers/jsonRpc/dist/wagmi-core-providers-jsonRpc.cjs.prod.js +0 -46
  179. package/providers/jsonRpc/dist/wagmi-core-providers-jsonRpc.esm.js +0 -42
  180. package/providers/public/dist/wagmi-core-providers-public.cjs.d.ts +0 -1
  181. package/providers/public/dist/wagmi-core-providers-public.cjs.dev.js +0 -32
  182. package/providers/public/dist/wagmi-core-providers-public.cjs.js +0 -7
  183. package/providers/public/dist/wagmi-core-providers-public.cjs.prod.js +0 -32
  184. package/providers/public/dist/wagmi-core-providers-public.esm.js +0 -28
@@ -1,274 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var getProvider = require('../../../dist/getProvider-3b1af4e6.cjs.dev.js');
6
- var ethers = require('ethers');
7
- var utils = require('ethers/lib/utils');
8
- require('zustand/middleware');
9
- require('zustand/vanilla');
10
- require('eventemitter3');
11
- require('../../../dist/chains-fe1f4131.cjs.dev.js');
12
- require('../../../dist/rpcs-52ea3d8d.cjs.dev.js');
13
-
14
- function _interopNamespace(e) {
15
- if (e && e.__esModule) return e;
16
- var n = Object.create(null);
17
- if (e) {
18
- Object.keys(e).forEach(function (k) {
19
- if (k !== 'default') {
20
- var d = Object.getOwnPropertyDescriptor(e, k);
21
- Object.defineProperty(n, k, d.get ? d : {
22
- enumerable: true,
23
- get: function () { return e[k]; }
24
- });
25
- }
26
- });
27
- }
28
- n["default"] = e;
29
- return Object.freeze(n);
30
- }
31
-
32
- var _client = /*#__PURE__*/new WeakMap();
33
-
34
- var _provider = /*#__PURE__*/new WeakMap();
35
-
36
- var _isUserRejectedRequestError = /*#__PURE__*/new WeakSet();
37
-
38
- class CoinbaseWalletConnector extends getProvider.Connector {
39
- constructor(_ref) {
40
- let {
41
- chains,
42
- options
43
- } = _ref;
44
- super({
45
- chains,
46
- options: {
47
- reloadOnDisconnect: false,
48
- ...options
49
- }
50
- });
51
-
52
- getProvider._classPrivateMethodInitSpec(this, _isUserRejectedRequestError);
53
-
54
- getProvider._defineProperty(this, "id", 'coinbaseWallet');
55
-
56
- getProvider._defineProperty(this, "name", 'Coinbase Wallet');
57
-
58
- getProvider._defineProperty(this, "ready", true);
59
-
60
- getProvider._classPrivateFieldInitSpec(this, _client, {
61
- writable: true,
62
- value: void 0
63
- });
64
-
65
- getProvider._classPrivateFieldInitSpec(this, _provider, {
66
- writable: true,
67
- value: void 0
68
- });
69
-
70
- getProvider._defineProperty(this, "onAccountsChanged", accounts => {
71
- if (accounts.length === 0) this.emit('disconnect');else this.emit('change', {
72
- account: utils.getAddress(accounts[0])
73
- });
74
- });
75
-
76
- getProvider._defineProperty(this, "onChainChanged", chainId => {
77
- const id = getProvider.normalizeChainId(chainId);
78
- const unsupported = this.isChainUnsupported(id);
79
- this.emit('change', {
80
- chain: {
81
- id,
82
- unsupported
83
- }
84
- });
85
- });
86
-
87
- getProvider._defineProperty(this, "onDisconnect", () => {
88
- this.emit('disconnect');
89
- });
90
- }
91
-
92
- async connect() {
93
- let {
94
- chainId
95
- } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
96
-
97
- try {
98
- const provider = await this.getProvider();
99
- provider.on('accountsChanged', this.onAccountsChanged);
100
- provider.on('chainChanged', this.onChainChanged);
101
- provider.on('disconnect', this.onDisconnect);
102
- this.emit('message', {
103
- type: 'connecting'
104
- });
105
- const accounts = await provider.enable();
106
- const account = utils.getAddress(accounts[0]); // Switch to chain if provided
107
-
108
- let id = await this.getChainId();
109
- let unsupported = this.isChainUnsupported(id);
110
-
111
- if (chainId && id !== chainId) {
112
- const chain = await this.switchChain(chainId);
113
- id = chain.id;
114
- unsupported = this.isChainUnsupported(id);
115
- }
116
-
117
- return {
118
- account,
119
- chain: {
120
- id,
121
- unsupported
122
- },
123
- provider: new ethers.providers.Web3Provider(provider)
124
- };
125
- } catch (error) {
126
- if (/(user closed modal|accounts received is empty)/i.test(error.message)) throw new getProvider.UserRejectedRequestError(error);
127
- throw error;
128
- }
129
- }
130
-
131
- async disconnect() {
132
- if (!getProvider._classPrivateFieldGet(this, _provider)) return;
133
- const provider = await this.getProvider();
134
- provider.removeListener('accountsChanged', this.onAccountsChanged);
135
- provider.removeListener('chainChanged', this.onChainChanged);
136
- provider.removeListener('disconnect', this.onDisconnect);
137
- provider.disconnect();
138
- provider.close();
139
- }
140
-
141
- async getAccount() {
142
- const provider = await this.getProvider();
143
- const accounts = await provider.request({
144
- method: 'eth_accounts'
145
- }); // return checksum address
146
-
147
- return utils.getAddress(accounts[0]);
148
- }
149
-
150
- async getChainId() {
151
- const provider = await this.getProvider();
152
- const chainId = getProvider.normalizeChainId(provider.chainId);
153
- return chainId;
154
- }
155
-
156
- async getProvider() {
157
- if (!getProvider._classPrivateFieldGet(this, _provider)) {
158
- var _walletExtension;
159
-
160
- let CoinbaseWalletSDK = (await Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@coinbase/wallet-sdk')); })).default; // Workaround for Vite dev import errors
161
- // https://github.com/vitejs/vite/issues/7112
162
-
163
- if (typeof CoinbaseWalletSDK !== 'function' && // @ts-expect-error This import error is not visible to TypeScript
164
- typeof CoinbaseWalletSDK.default === 'function') CoinbaseWalletSDK = CoinbaseWalletSDK.default;
165
-
166
- getProvider._classPrivateFieldSet(this, _client, new CoinbaseWalletSDK(this.options));
167
-
168
- const walletExtensionChainId = (_walletExtension = getProvider._classPrivateFieldGet(this, _client).walletExtension) === null || _walletExtension === void 0 ? void 0 : _walletExtension.getChainId();
169
- const chain = this.chains.find(chain => this.options.chainId ? chain.id === this.options.chainId : chain.id === walletExtensionChainId) || this.chains[0];
170
- const chainId = this.options.chainId || (chain === null || chain === void 0 ? void 0 : chain.id);
171
- const jsonRpcUrl = this.options.jsonRpcUrl || (chain === null || chain === void 0 ? void 0 : chain.rpcUrls.default);
172
-
173
- getProvider._classPrivateFieldSet(this, _provider, getProvider._classPrivateFieldGet(this, _client).makeWeb3Provider(jsonRpcUrl, chainId));
174
- }
175
-
176
- return getProvider._classPrivateFieldGet(this, _provider);
177
- }
178
-
179
- async getSigner() {
180
- let {
181
- chainId
182
- } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
183
- const [provider, account] = await Promise.all([this.getProvider(), this.getAccount()]);
184
- return new ethers.providers.Web3Provider(provider, chainId).getSigner(account);
185
- }
186
-
187
- async isAuthorized() {
188
- try {
189
- const account = await this.getAccount();
190
- return !!account;
191
- } catch {
192
- return false;
193
- }
194
- }
195
-
196
- async switchChain(chainId) {
197
- const provider = await this.getProvider();
198
- const id = utils.hexValue(chainId);
199
-
200
- try {
201
- await provider.request({
202
- method: 'wallet_switchEthereumChain',
203
- params: [{
204
- chainId: id
205
- }]
206
- });
207
- return this.chains.find(x => x.id === chainId) ?? {
208
- id: chainId,
209
- name: `Chain ${id}`,
210
- network: `${id}`,
211
- rpcUrls: {
212
- default: ''
213
- }
214
- };
215
- } catch (error) {
216
- const chain = this.chains.find(x => x.id === chainId);
217
- if (!chain) throw new getProvider.ChainNotConfiguredError({
218
- chainId,
219
- connectorId: this.id
220
- }); // Indicates chain is not added to provider
221
-
222
- if (error.code === 4902) {
223
- try {
224
- await provider.request({
225
- method: 'wallet_addEthereumChain',
226
- params: [{
227
- chainId: id,
228
- chainName: chain.name,
229
- nativeCurrency: chain.nativeCurrency,
230
- rpcUrls: [chain.rpcUrls.public ?? chain.rpcUrls.default],
231
- blockExplorerUrls: this.getBlockExplorerUrls(chain)
232
- }]
233
- });
234
- return chain;
235
- } catch (addError) {
236
- if (getProvider._classPrivateMethodGet(this, _isUserRejectedRequestError, _isUserRejectedRequestError2).call(this, addError)) throw new getProvider.UserRejectedRequestError(addError);
237
- throw new getProvider.AddChainError();
238
- }
239
- }
240
-
241
- if (getProvider._classPrivateMethodGet(this, _isUserRejectedRequestError, _isUserRejectedRequestError2).call(this, error)) throw new getProvider.UserRejectedRequestError(error);
242
- throw new getProvider.SwitchChainError(error);
243
- }
244
- }
245
-
246
- async watchAsset(_ref2) {
247
- let {
248
- address,
249
- decimals = 18,
250
- image,
251
- symbol
252
- } = _ref2;
253
- const provider = await this.getProvider();
254
- return provider.request({
255
- method: 'wallet_watchAsset',
256
- params: {
257
- type: 'ERC20',
258
- options: {
259
- address,
260
- decimals,
261
- image,
262
- symbol
263
- }
264
- }
265
- });
266
- }
267
-
268
- }
269
-
270
- function _isUserRejectedRequestError2(error) {
271
- return /(user rejected)/i.test(error.message);
272
- }
273
-
274
- exports.CoinbaseWalletConnector = CoinbaseWalletConnector;
@@ -1,7 +0,0 @@
1
- 'use strict';
2
-
3
- if (process.env.NODE_ENV === "production") {
4
- module.exports = require("./wagmi-core-connectors-coinbaseWallet.cjs.prod.js");
5
- } else {
6
- module.exports = require("./wagmi-core-connectors-coinbaseWallet.cjs.dev.js");
7
- }
@@ -1,274 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var getProvider = require('../../../dist/getProvider-84f303a1.cjs.prod.js');
6
- var ethers = require('ethers');
7
- var utils = require('ethers/lib/utils');
8
- require('zustand/middleware');
9
- require('zustand/vanilla');
10
- require('eventemitter3');
11
- require('../../../dist/chains-73cc6c23.cjs.prod.js');
12
- require('../../../dist/rpcs-38f4faba.cjs.prod.js');
13
-
14
- function _interopNamespace(e) {
15
- if (e && e.__esModule) return e;
16
- var n = Object.create(null);
17
- if (e) {
18
- Object.keys(e).forEach(function (k) {
19
- if (k !== 'default') {
20
- var d = Object.getOwnPropertyDescriptor(e, k);
21
- Object.defineProperty(n, k, d.get ? d : {
22
- enumerable: true,
23
- get: function () { return e[k]; }
24
- });
25
- }
26
- });
27
- }
28
- n["default"] = e;
29
- return Object.freeze(n);
30
- }
31
-
32
- var _client = /*#__PURE__*/new WeakMap();
33
-
34
- var _provider = /*#__PURE__*/new WeakMap();
35
-
36
- var _isUserRejectedRequestError = /*#__PURE__*/new WeakSet();
37
-
38
- class CoinbaseWalletConnector extends getProvider.Connector {
39
- constructor(_ref) {
40
- let {
41
- chains,
42
- options
43
- } = _ref;
44
- super({
45
- chains,
46
- options: {
47
- reloadOnDisconnect: false,
48
- ...options
49
- }
50
- });
51
-
52
- getProvider._classPrivateMethodInitSpec(this, _isUserRejectedRequestError);
53
-
54
- getProvider._defineProperty(this, "id", 'coinbaseWallet');
55
-
56
- getProvider._defineProperty(this, "name", 'Coinbase Wallet');
57
-
58
- getProvider._defineProperty(this, "ready", true);
59
-
60
- getProvider._classPrivateFieldInitSpec(this, _client, {
61
- writable: true,
62
- value: void 0
63
- });
64
-
65
- getProvider._classPrivateFieldInitSpec(this, _provider, {
66
- writable: true,
67
- value: void 0
68
- });
69
-
70
- getProvider._defineProperty(this, "onAccountsChanged", accounts => {
71
- if (accounts.length === 0) this.emit('disconnect');else this.emit('change', {
72
- account: utils.getAddress(accounts[0])
73
- });
74
- });
75
-
76
- getProvider._defineProperty(this, "onChainChanged", chainId => {
77
- const id = getProvider.normalizeChainId(chainId);
78
- const unsupported = this.isChainUnsupported(id);
79
- this.emit('change', {
80
- chain: {
81
- id,
82
- unsupported
83
- }
84
- });
85
- });
86
-
87
- getProvider._defineProperty(this, "onDisconnect", () => {
88
- this.emit('disconnect');
89
- });
90
- }
91
-
92
- async connect() {
93
- let {
94
- chainId
95
- } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
96
-
97
- try {
98
- const provider = await this.getProvider();
99
- provider.on('accountsChanged', this.onAccountsChanged);
100
- provider.on('chainChanged', this.onChainChanged);
101
- provider.on('disconnect', this.onDisconnect);
102
- this.emit('message', {
103
- type: 'connecting'
104
- });
105
- const accounts = await provider.enable();
106
- const account = utils.getAddress(accounts[0]); // Switch to chain if provided
107
-
108
- let id = await this.getChainId();
109
- let unsupported = this.isChainUnsupported(id);
110
-
111
- if (chainId && id !== chainId) {
112
- const chain = await this.switchChain(chainId);
113
- id = chain.id;
114
- unsupported = this.isChainUnsupported(id);
115
- }
116
-
117
- return {
118
- account,
119
- chain: {
120
- id,
121
- unsupported
122
- },
123
- provider: new ethers.providers.Web3Provider(provider)
124
- };
125
- } catch (error) {
126
- if (/(user closed modal|accounts received is empty)/i.test(error.message)) throw new getProvider.UserRejectedRequestError(error);
127
- throw error;
128
- }
129
- }
130
-
131
- async disconnect() {
132
- if (!getProvider._classPrivateFieldGet(this, _provider)) return;
133
- const provider = await this.getProvider();
134
- provider.removeListener('accountsChanged', this.onAccountsChanged);
135
- provider.removeListener('chainChanged', this.onChainChanged);
136
- provider.removeListener('disconnect', this.onDisconnect);
137
- provider.disconnect();
138
- provider.close();
139
- }
140
-
141
- async getAccount() {
142
- const provider = await this.getProvider();
143
- const accounts = await provider.request({
144
- method: 'eth_accounts'
145
- }); // return checksum address
146
-
147
- return utils.getAddress(accounts[0]);
148
- }
149
-
150
- async getChainId() {
151
- const provider = await this.getProvider();
152
- const chainId = getProvider.normalizeChainId(provider.chainId);
153
- return chainId;
154
- }
155
-
156
- async getProvider() {
157
- if (!getProvider._classPrivateFieldGet(this, _provider)) {
158
- var _walletExtension;
159
-
160
- let CoinbaseWalletSDK = (await Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@coinbase/wallet-sdk')); })).default; // Workaround for Vite dev import errors
161
- // https://github.com/vitejs/vite/issues/7112
162
-
163
- if (typeof CoinbaseWalletSDK !== 'function' && // @ts-expect-error This import error is not visible to TypeScript
164
- typeof CoinbaseWalletSDK.default === 'function') CoinbaseWalletSDK = CoinbaseWalletSDK.default;
165
-
166
- getProvider._classPrivateFieldSet(this, _client, new CoinbaseWalletSDK(this.options));
167
-
168
- const walletExtensionChainId = (_walletExtension = getProvider._classPrivateFieldGet(this, _client).walletExtension) === null || _walletExtension === void 0 ? void 0 : _walletExtension.getChainId();
169
- const chain = this.chains.find(chain => this.options.chainId ? chain.id === this.options.chainId : chain.id === walletExtensionChainId) || this.chains[0];
170
- const chainId = this.options.chainId || (chain === null || chain === void 0 ? void 0 : chain.id);
171
- const jsonRpcUrl = this.options.jsonRpcUrl || (chain === null || chain === void 0 ? void 0 : chain.rpcUrls.default);
172
-
173
- getProvider._classPrivateFieldSet(this, _provider, getProvider._classPrivateFieldGet(this, _client).makeWeb3Provider(jsonRpcUrl, chainId));
174
- }
175
-
176
- return getProvider._classPrivateFieldGet(this, _provider);
177
- }
178
-
179
- async getSigner() {
180
- let {
181
- chainId
182
- } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
183
- const [provider, account] = await Promise.all([this.getProvider(), this.getAccount()]);
184
- return new ethers.providers.Web3Provider(provider, chainId).getSigner(account);
185
- }
186
-
187
- async isAuthorized() {
188
- try {
189
- const account = await this.getAccount();
190
- return !!account;
191
- } catch {
192
- return false;
193
- }
194
- }
195
-
196
- async switchChain(chainId) {
197
- const provider = await this.getProvider();
198
- const id = utils.hexValue(chainId);
199
-
200
- try {
201
- await provider.request({
202
- method: 'wallet_switchEthereumChain',
203
- params: [{
204
- chainId: id
205
- }]
206
- });
207
- return this.chains.find(x => x.id === chainId) ?? {
208
- id: chainId,
209
- name: `Chain ${id}`,
210
- network: `${id}`,
211
- rpcUrls: {
212
- default: ''
213
- }
214
- };
215
- } catch (error) {
216
- const chain = this.chains.find(x => x.id === chainId);
217
- if (!chain) throw new getProvider.ChainNotConfiguredError({
218
- chainId,
219
- connectorId: this.id
220
- }); // Indicates chain is not added to provider
221
-
222
- if (error.code === 4902) {
223
- try {
224
- await provider.request({
225
- method: 'wallet_addEthereumChain',
226
- params: [{
227
- chainId: id,
228
- chainName: chain.name,
229
- nativeCurrency: chain.nativeCurrency,
230
- rpcUrls: [chain.rpcUrls.public ?? chain.rpcUrls.default],
231
- blockExplorerUrls: this.getBlockExplorerUrls(chain)
232
- }]
233
- });
234
- return chain;
235
- } catch (addError) {
236
- if (getProvider._classPrivateMethodGet(this, _isUserRejectedRequestError, _isUserRejectedRequestError2).call(this, addError)) throw new getProvider.UserRejectedRequestError(addError);
237
- throw new getProvider.AddChainError();
238
- }
239
- }
240
-
241
- if (getProvider._classPrivateMethodGet(this, _isUserRejectedRequestError, _isUserRejectedRequestError2).call(this, error)) throw new getProvider.UserRejectedRequestError(error);
242
- throw new getProvider.SwitchChainError(error);
243
- }
244
- }
245
-
246
- async watchAsset(_ref2) {
247
- let {
248
- address,
249
- decimals = 18,
250
- image,
251
- symbol
252
- } = _ref2;
253
- const provider = await this.getProvider();
254
- return provider.request({
255
- method: 'wallet_watchAsset',
256
- params: {
257
- type: 'ERC20',
258
- options: {
259
- address,
260
- decimals,
261
- image,
262
- symbol
263
- }
264
- }
265
- });
266
- }
267
-
268
- }
269
-
270
- function _isUserRejectedRequestError2(error) {
271
- return /(user rejected)/i.test(error.message);
272
- }
273
-
274
- exports.CoinbaseWalletConnector = CoinbaseWalletConnector;