@wagmi/core 0.2.0-next.1 → 0.2.0-next.10

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 (47) hide show
  1. package/connectors/coinbaseWallet/dist/wagmi-core-connectors-coinbaseWallet.cjs.dev.js +135 -151
  2. package/connectors/coinbaseWallet/dist/wagmi-core-connectors-coinbaseWallet.cjs.prod.js +135 -151
  3. package/connectors/coinbaseWallet/dist/wagmi-core-connectors-coinbaseWallet.esm.js +136 -152
  4. package/connectors/mock/dist/wagmi-core-connectors-mock.cjs.dev.js +96 -153
  5. package/connectors/mock/dist/wagmi-core-connectors-mock.cjs.prod.js +96 -153
  6. package/connectors/mock/dist/wagmi-core-connectors-mock.esm.js +96 -153
  7. package/connectors/walletConnect/dist/wagmi-core-connectors-walletConnect.cjs.dev.js +91 -124
  8. package/connectors/walletConnect/dist/wagmi-core-connectors-walletConnect.cjs.prod.js +91 -124
  9. package/connectors/walletConnect/dist/wagmi-core-connectors-walletConnect.esm.js +91 -124
  10. package/dist/base-37097073.esm.js +516 -0
  11. package/dist/base-85d1eb89.cjs.dev.js +543 -0
  12. package/dist/base-d3563329.cjs.prod.js +543 -0
  13. package/dist/{classPrivateMethodGet-38b54c7a.cjs.dev.js → classPrivateMethodGet-3f47cf74.cjs.dev.js} +1 -1
  14. package/dist/{classPrivateMethodGet-0e9a7925.cjs.prod.js → classPrivateMethodGet-a763c0df.cjs.prod.js} +1 -1
  15. package/dist/{classPrivateMethodGet-c9db96d6.esm.js → classPrivateMethodGet-b3ba7c1d.esm.js} +1 -1
  16. package/dist/declarations/src/actions/accounts/connect.d.ts +14 -5
  17. package/dist/declarations/src/actions/accounts/getAccount.d.ts +5 -4
  18. package/dist/declarations/src/actions/accounts/index.d.ts +1 -1
  19. package/dist/declarations/src/actions/accounts/switchNetwork.d.ts +1 -1
  20. package/dist/declarations/src/actions/accounts/watchAccount.d.ts +3 -2
  21. package/dist/declarations/src/actions/index.d.ts +1 -1
  22. package/dist/declarations/src/actions/providers/getProvider.d.ts +2 -2
  23. package/dist/declarations/src/actions/providers/getWebSocketProvider.d.ts +2 -2
  24. package/dist/declarations/src/actions/providers/watchProvider.d.ts +3 -2
  25. package/dist/declarations/src/actions/providers/watchWebSocketProvider.d.ts +3 -2
  26. package/dist/declarations/src/client.d.ts +26 -23
  27. package/dist/declarations/src/connectors/base.d.ts +7 -1
  28. package/dist/declarations/src/connectors/coinbaseWallet.d.ts +9 -0
  29. package/dist/declarations/src/constants/abis.d.ts +2 -0
  30. package/dist/declarations/src/constants/blockExplorers.d.ts +9 -0
  31. package/dist/declarations/src/constants/chains.d.ts +17 -6
  32. package/dist/declarations/src/constants/index.d.ts +6 -2
  33. package/dist/declarations/src/constants/keys.d.ts +2 -0
  34. package/dist/declarations/src/constants/rpcs.d.ts +7 -0
  35. package/dist/declarations/src/index.d.ts +8 -5
  36. package/dist/declarations/src/types/index.d.ts +10 -5
  37. package/dist/wagmi-core.cjs.dev.js +577 -1067
  38. package/dist/wagmi-core.cjs.prod.js +577 -1067
  39. package/dist/wagmi-core.esm.js +574 -1068
  40. package/package.json +2 -3
  41. package/dist/base-09a653f3.cjs.dev.js +0 -453
  42. package/dist/base-824c3b6d.esm.js +0 -430
  43. package/dist/base-d8123d5f.cjs.prod.js +0 -453
  44. package/dist/declarations/src/constants/abis/erc1155.d.ts +0 -17
  45. package/dist/declarations/src/constants/abis/erc20.d.ts +0 -38
  46. package/dist/declarations/src/constants/abis/erc721.d.ts +0 -15
  47. package/dist/declarations/src/constants/abis/index.d.ts +0 -3
@@ -2,8 +2,8 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var base = require('./base-09a653f3.cjs.dev.js');
6
- var classPrivateMethodGet = require('./classPrivateMethodGet-38b54c7a.cjs.dev.js');
5
+ var classPrivateMethodGet = require('./classPrivateMethodGet-3f47cf74.cjs.dev.js');
6
+ var base = require('./base-85d1eb89.cjs.dev.js');
7
7
  var ethers = require('ethers');
8
8
  var create = require('zustand/vanilla');
9
9
  var middleware = require('zustand/middleware');
@@ -15,271 +15,13 @@ function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e };
15
15
 
16
16
  var create__default = /*#__PURE__*/_interopDefault(create);
17
17
 
18
- function ownKeys(object, enumerableOnly) {
19
- var keys = Object.keys(object);
18
+ // https://ethereum.org/en/developers/docs/standards/tokens/erc-20
19
+ const erc20ABI = ['event Approval(address indexed _owner, address indexed _spender, uint256 _value)', 'event Transfer(address indexed _from, address indexed _to, uint256 _value)', 'function allowance(address _owner, address _spender) public view returns (uint256 remaining)', 'function approve(address _spender, uint256 _value) public returns (bool success)', 'function balanceOf(address _owner) public view returns (uint256 balance)', 'function decimals() public view returns (uint8)', 'function name() public view returns (string)', 'function symbol() public view returns (string)', 'function totalSupply() public view returns (uint256)', 'function transfer(address _to, uint256 _value) public returns (bool success)', 'function transferFrom(address _from, address _to, uint256 _value) public returns (bool success)']; // https://ethereum.org/en/developers/docs/standards/tokens/erc-721
20
20
 
21
- if (Object.getOwnPropertySymbols) {
22
- var symbols = Object.getOwnPropertySymbols(object);
23
- enumerableOnly && (symbols = symbols.filter(function (sym) {
24
- return Object.getOwnPropertyDescriptor(object, sym).enumerable;
25
- })), keys.push.apply(keys, symbols);
26
- }
27
-
28
- return keys;
29
- }
30
-
31
- function _objectSpread2(target) {
32
- for (var i = 1; i < arguments.length; i++) {
33
- var source = null != arguments[i] ? arguments[i] : {};
34
- i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {
35
- base._defineProperty(target, key, source[key]);
36
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {
37
- Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
38
- });
39
- }
40
-
41
- return target;
42
- }
43
-
44
- var erc1155ABI = [{
45
- constant: true,
46
- inputs: [{
47
- internalType: 'address',
48
- name: '_owner',
49
- type: 'address'
50
- }, {
51
- internalType: 'uint256',
52
- name: '_id',
53
- type: 'uint256'
54
- }],
55
- name: 'balanceOf',
56
- outputs: [{
57
- internalType: 'uint256',
58
- name: '',
59
- type: 'uint256'
60
- }],
61
- payable: false,
62
- stateMutability: 'view',
63
- type: 'function'
64
- }, {
65
- constant: true,
66
- inputs: [{
67
- internalType: 'uint256',
68
- name: '_id',
69
- type: 'uint256'
70
- }],
71
- name: 'uri',
72
- outputs: [{
73
- internalType: 'string',
74
- name: '',
75
- type: 'string'
76
- }],
77
- payable: false,
78
- stateMutability: 'view',
79
- type: 'function'
80
- }];
81
-
82
- var erc20ABI = [{
83
- constant: true,
84
- inputs: [],
85
- name: 'name',
86
- outputs: [{
87
- name: '',
88
- type: 'string'
89
- }],
90
- payable: false,
91
- stateMutability: 'view',
92
- type: 'function'
93
- }, {
94
- constant: false,
95
- inputs: [{
96
- name: '_spender',
97
- type: 'address'
98
- }, {
99
- name: '_value',
100
- type: 'uint256'
101
- }],
102
- name: 'approve',
103
- outputs: [{
104
- name: '',
105
- type: 'bool'
106
- }],
107
- payable: false,
108
- stateMutability: 'nonpayable',
109
- type: 'function'
110
- }, {
111
- constant: true,
112
- inputs: [],
113
- name: 'totalSupply',
114
- outputs: [{
115
- name: '',
116
- type: 'uint256'
117
- }],
118
- payable: false,
119
- stateMutability: 'view',
120
- type: 'function'
121
- }, {
122
- constant: false,
123
- inputs: [{
124
- name: '_from',
125
- type: 'address'
126
- }, {
127
- name: '_to',
128
- type: 'address'
129
- }, {
130
- name: '_value',
131
- type: 'uint256'
132
- }],
133
- name: 'transferFrom',
134
- outputs: [{
135
- name: '',
136
- type: 'bool'
137
- }],
138
- payable: false,
139
- stateMutability: 'nonpayable',
140
- type: 'function'
141
- }, {
142
- constant: true,
143
- inputs: [],
144
- name: 'decimals',
145
- outputs: [{
146
- name: '',
147
- type: 'uint8'
148
- }],
149
- payable: false,
150
- stateMutability: 'view',
151
- type: 'function'
152
- }, {
153
- constant: true,
154
- inputs: [{
155
- name: '_owner',
156
- type: 'address'
157
- }],
158
- name: 'balanceOf',
159
- outputs: [{
160
- name: 'balance',
161
- type: 'uint256'
162
- }],
163
- payable: false,
164
- stateMutability: 'view',
165
- type: 'function'
166
- }, {
167
- constant: true,
168
- inputs: [],
169
- name: 'symbol',
170
- outputs: [{
171
- name: '',
172
- type: 'string'
173
- }],
174
- payable: false,
175
- stateMutability: 'view',
176
- type: 'function'
177
- }, {
178
- constant: false,
179
- inputs: [{
180
- name: '_to',
181
- type: 'address'
182
- }, {
183
- name: '_value',
184
- type: 'uint256'
185
- }],
186
- name: 'transfer',
187
- outputs: [{
188
- name: '',
189
- type: 'bool'
190
- }],
191
- payable: false,
192
- stateMutability: 'nonpayable',
193
- type: 'function'
194
- }, {
195
- constant: true,
196
- inputs: [{
197
- name: '_owner',
198
- type: 'address'
199
- }, {
200
- name: '_spender',
201
- type: 'address'
202
- }],
203
- name: 'allowance',
204
- outputs: [{
205
- name: '',
206
- type: 'uint256'
207
- }],
208
- payable: false,
209
- stateMutability: 'view',
210
- type: 'function'
211
- }, {
212
- payable: true,
213
- stateMutability: 'payable',
214
- type: 'fallback'
215
- }, {
216
- anonymous: false,
217
- inputs: [{
218
- indexed: true,
219
- name: 'owner',
220
- type: 'address'
221
- }, {
222
- indexed: true,
223
- name: 'spender',
224
- type: 'address'
225
- }, {
226
- indexed: false,
227
- name: 'value',
228
- type: 'uint256'
229
- }],
230
- name: 'Approval',
231
- type: 'event'
232
- }, {
233
- anonymous: false,
234
- inputs: [{
235
- indexed: true,
236
- name: 'from',
237
- type: 'address'
238
- }, {
239
- indexed: true,
240
- name: 'to',
241
- type: 'address'
242
- }, {
243
- indexed: false,
244
- name: 'value',
245
- type: 'uint256'
246
- }],
247
- name: 'Transfer',
248
- type: 'event'
249
- }];
250
-
251
- var erc721ABI = [{
252
- inputs: [{
253
- internalType: 'uint256',
254
- name: 'tokenId',
255
- type: 'uint256'
256
- }],
257
- name: 'ownerOf',
258
- outputs: [{
259
- internalType: 'address',
260
- name: '',
261
- type: 'address'
262
- }],
263
- stateMutability: 'view',
264
- type: 'function'
265
- }, {
266
- inputs: [{
267
- internalType: 'uint256',
268
- name: 'tokenId',
269
- type: 'uint256'
270
- }],
271
- name: 'tokenURI',
272
- outputs: [{
273
- internalType: 'string',
274
- name: '',
275
- type: 'string'
276
- }],
277
- stateMutability: 'view',
278
- type: 'function'
279
- }];
21
+ const erc721ABI = ['event Approval(address indexed _owner, address indexed _approved, uint256 indexed _tokenId);', 'event ApprovalForAll(address indexed _owner, address indexed _operator, bool _approved);', 'event Transfer(address indexed _from, address indexed _to, uint256 indexed _tokenId);', 'function approve(address _approved, uint256 _tokenId) external payable;', 'function balanceOf(address _owner) external view returns (uint256);', 'function getApproved(uint256 _tokenId) external view returns (address);', 'function isApprovedForAll(address _owner, address _operator) external view returns (bool);', 'function name() view returns (string memory)', 'function ownerOf(uint256 _tokenId) external view returns (address);', 'function safeTransferFrom(address _from, address _to, uint256 _tokenId) external payable;', 'function safeTransferFrom(address _from, address _to, uint256 _tokenId, bytes data) external payable;', 'function setApprovalForAll(address _operator, bool _approved) external;', 'function symbol() view returns (string memory)', 'function tokenByIndex(uint256 _index) view returns (uint256)', 'function tokenOfOwnerByIndex(address _owner, uint256 _index) view returns (uint256 tokenId)', 'function tokenURI(uint256 _tokenId) view returns (string memory)', 'function totalSupply() view returns (uint256)', 'function transferFrom(address _from, address _to, uint256 _tokenId) external payable;'];
280
22
 
281
23
  // https://github.com/ethers-io/ethers.js/blob/master/packages/units/src.ts/index.ts#L10-L18
282
- var units = ['wei', 'kwei', 'mwei', 'gwei', 'szabo', 'finney', 'ether'];
24
+ const units = ['wei', 'kwei', 'mwei', 'gwei', 'szabo', 'finney', 'ether'];
283
25
 
284
26
  function getInjectedName(ethereum) {
285
27
  if (!ethereum) return 'Injected';
@@ -290,17 +32,18 @@ function getInjectedName(ethereum) {
290
32
  return 'Injected';
291
33
  }
292
34
 
293
- var shimKey = 'injected.shimDisconnect';
35
+ const shimKey = 'injected.shimDisconnect';
294
36
 
295
37
  var _provider = /*#__PURE__*/new WeakMap();
296
38
 
297
39
  class InjectedConnector extends base.Connector {
298
40
  constructor(config) {
299
- super(_objectSpread2(_objectSpread2({}, config), {}, {
300
- options: _objectSpread2({
301
- shimDisconnect: true
302
- }, config === null || config === void 0 ? void 0 : config.options)
303
- }));
41
+ super({ ...config,
42
+ options: {
43
+ shimDisconnect: true,
44
+ ...(config === null || config === void 0 ? void 0 : config.options)
45
+ }
46
+ });
304
47
 
305
48
  base._defineProperty(this, "id", 'injected');
306
49
 
@@ -320,8 +63,8 @@ class InjectedConnector extends base.Connector {
320
63
  });
321
64
 
322
65
  base._defineProperty(this, "onChainChanged", chainId => {
323
- var id = base.normalizeChainId(chainId);
324
- var unsupported = this.isChainUnsupported(id);
66
+ const id = base.normalizeChainId(chainId);
67
+ const unsupported = this.isChainUnsupported(id);
325
68
  this.emit('change', {
326
69
  chain: {
327
70
  id,
@@ -337,224 +80,186 @@ class InjectedConnector extends base.Connector {
337
80
  if ((_this$options = this.options) !== null && _this$options !== void 0 && _this$options.shimDisconnect) (_client$storage = client.storage) === null || _client$storage === void 0 ? void 0 : _client$storage.removeItem(shimKey);
338
81
  });
339
82
 
340
- var name = 'Injected';
83
+ let name = 'Injected';
341
84
  if (typeof window !== 'undefined') name = getInjectedName(window.ethereum);
342
85
  this.name = name;
343
86
  }
344
87
 
345
- connect() {
346
- var _this = this;
347
-
348
- return base._asyncToGenerator(function* () {
349
- try {
350
- var _this$options2, _client$storage2;
351
-
352
- var provider = yield _this.getProvider();
353
- if (!provider) throw new base.ConnectorNotFoundError();
354
-
355
- if (provider.on) {
356
- provider.on('accountsChanged', _this.onAccountsChanged);
357
- provider.on('chainChanged', _this.onChainChanged);
358
- provider.on('disconnect', _this.onDisconnect);
359
- }
360
-
361
- var account = yield _this.getAccount();
362
- var id = yield _this.getChainId();
88
+ async connect() {
89
+ try {
90
+ var _this$options2, _client$storage2;
363
91
 
364
- var unsupported = _this.isChainUnsupported(id);
92
+ const provider = await this.getProvider();
93
+ if (!provider) throw new base.ConnectorNotFoundError();
365
94
 
366
- if ((_this$options2 = _this.options) !== null && _this$options2 !== void 0 && _this$options2.shimDisconnect) (_client$storage2 = client.storage) === null || _client$storage2 === void 0 ? void 0 : _client$storage2.setItem(shimKey, true);
367
- return {
368
- account,
369
- chain: {
370
- id,
371
- unsupported
372
- },
373
- provider
374
- };
375
- } catch (error) {
376
- if (error.code === 4001) throw new base.UserRejectedRequestError();
377
- throw error;
95
+ if (provider.on) {
96
+ provider.on('accountsChanged', this.onAccountsChanged);
97
+ provider.on('chainChanged', this.onChainChanged);
98
+ provider.on('disconnect', this.onDisconnect);
378
99
  }
379
- })();
380
- }
381
-
382
- disconnect() {
383
- var _this2 = this;
384
-
385
- return base._asyncToGenerator(function* () {
386
- var _this2$options, _client$storage3;
387
100
 
388
- var provider = yield _this2.getProvider();
389
- if (!(provider !== null && provider !== void 0 && provider.removeListener)) return;
390
- provider.removeListener('accountsChanged', _this2.onAccountsChanged);
391
- provider.removeListener('chainChanged', _this2.onChainChanged);
392
- provider.removeListener('disconnect', _this2.onDisconnect);
393
- if ((_this2$options = _this2.options) !== null && _this2$options !== void 0 && _this2$options.shimDisconnect) (_client$storage3 = client.storage) === null || _client$storage3 === void 0 ? void 0 : _client$storage3.removeItem(shimKey);
394
- })();
101
+ this.emit('message', {
102
+ type: 'connecting'
103
+ });
104
+ const account = await this.getAccount();
105
+ const id = await this.getChainId();
106
+ const unsupported = this.isChainUnsupported(id);
107
+ if ((_this$options2 = this.options) !== null && _this$options2 !== void 0 && _this$options2.shimDisconnect) (_client$storage2 = client.storage) === null || _client$storage2 === void 0 ? void 0 : _client$storage2.setItem(shimKey, true);
108
+ return {
109
+ account,
110
+ chain: {
111
+ id,
112
+ unsupported
113
+ },
114
+ provider
115
+ };
116
+ } catch (error) {
117
+ if (error.code === 4001) throw new base.UserRejectedRequestError();
118
+ throw error;
119
+ }
395
120
  }
396
121
 
397
- getAccount() {
398
- var _this3 = this;
399
-
400
- return base._asyncToGenerator(function* () {
401
- var provider = yield _this3.getProvider();
402
- if (!provider) throw new base.ConnectorNotFoundError();
403
- var accounts = yield provider.request({
404
- method: 'eth_requestAccounts'
405
- }); // return checksum address
122
+ async disconnect() {
123
+ var _this$options3, _client$storage3;
406
124
 
407
- return utils.getAddress(accounts[0]);
408
- })();
125
+ const provider = await this.getProvider();
126
+ if (!(provider !== null && provider !== void 0 && provider.removeListener)) return;
127
+ provider.removeListener('accountsChanged', this.onAccountsChanged);
128
+ provider.removeListener('chainChanged', this.onChainChanged);
129
+ provider.removeListener('disconnect', this.onDisconnect);
130
+ if ((_this$options3 = this.options) !== null && _this$options3 !== void 0 && _this$options3.shimDisconnect) (_client$storage3 = client.storage) === null || _client$storage3 === void 0 ? void 0 : _client$storage3.removeItem(shimKey);
409
131
  }
410
132
 
411
- getChainId() {
412
- var _this4 = this;
133
+ async getAccount() {
134
+ const provider = await this.getProvider();
135
+ if (!provider) throw new base.ConnectorNotFoundError();
136
+ const accounts = await provider.request({
137
+ method: 'eth_requestAccounts'
138
+ }); // return checksum address
413
139
 
414
- return base._asyncToGenerator(function* () {
415
- var provider = yield _this4.getProvider();
416
- if (!provider) throw new base.ConnectorNotFoundError();
417
- return yield provider.request({
418
- method: 'eth_chainId'
419
- }).then(base.normalizeChainId);
420
- })();
140
+ return utils.getAddress(accounts[0]);
421
141
  }
422
142
 
423
- getProvider() {
424
- var _this5 = this;
425
-
426
- return base._asyncToGenerator(function* () {
427
- if (typeof window !== 'undefined' && !!window.ethereum) base._classPrivateFieldSet(_this5, _provider, window.ethereum);
428
- return base._classPrivateFieldGet(_this5, _provider);
429
- })();
143
+ async getChainId() {
144
+ const provider = await this.getProvider();
145
+ if (!provider) throw new base.ConnectorNotFoundError();
146
+ return await provider.request({
147
+ method: 'eth_chainId'
148
+ }).then(base.normalizeChainId);
430
149
  }
431
150
 
432
- getSigner() {
433
- var _this6 = this;
434
-
435
- return base._asyncToGenerator(function* () {
436
- var provider = _this6.getProvider();
151
+ async getProvider() {
152
+ if (typeof window !== 'undefined' && !!window.ethereum) base._classPrivateFieldSet(this, _provider, window.ethereum);
153
+ return base._classPrivateFieldGet(this, _provider);
154
+ }
437
155
 
438
- var account = yield _this6.getAccount();
439
- return new ethers.providers.Web3Provider(provider).getSigner(account);
440
- })();
156
+ async getSigner() {
157
+ const [provider, account] = await Promise.all([this.getProvider(), this.getAccount()]);
158
+ return new ethers.providers.Web3Provider(provider).getSigner(account);
441
159
  }
442
160
 
443
- isAuthorized() {
444
- var _this7 = this;
161
+ async isAuthorized() {
162
+ try {
163
+ var _this$options4, _client$storage4;
445
164
 
446
- return base._asyncToGenerator(function* () {
447
- try {
448
- var _this7$options, _client$storage4;
449
-
450
- if ((_this7$options = _this7.options) !== null && _this7$options !== void 0 && _this7$options.shimDisconnect && !((_client$storage4 = client.storage) !== null && _client$storage4 !== void 0 && _client$storage4.getItem(shimKey))) return false;
451
- var provider = yield _this7.getProvider();
452
- if (!provider) throw new base.ConnectorNotFoundError();
453
- var accounts = yield provider.request({
454
- method: 'eth_accounts'
455
- });
456
- var account = accounts[0];
457
- return !!account;
458
- } catch (_unused) {
459
- return false;
460
- }
461
- })();
165
+ if ((_this$options4 = this.options) !== null && _this$options4 !== void 0 && _this$options4.shimDisconnect && !((_client$storage4 = client.storage) !== null && _client$storage4 !== void 0 && _client$storage4.getItem(shimKey))) return false;
166
+ const provider = await this.getProvider();
167
+ if (!provider) throw new base.ConnectorNotFoundError();
168
+ const accounts = await provider.request({
169
+ method: 'eth_accounts'
170
+ });
171
+ const account = accounts[0];
172
+ return !!account;
173
+ } catch {
174
+ return false;
175
+ }
462
176
  }
463
177
 
464
- switchChain(chainId) {
465
- var _this8 = this;
178
+ async switchChain(chainId) {
179
+ const provider = await this.getProvider();
180
+ if (!provider) throw new base.ConnectorNotFoundError();
181
+ const id = utils.hexValue(chainId);
466
182
 
467
- return base._asyncToGenerator(function* () {
468
- var provider = yield _this8.getProvider();
469
- if (!provider) throw new base.ConnectorNotFoundError();
470
- var id = utils.hexValue(chainId);
183
+ try {
184
+ var _chains$find;
471
185
 
472
- try {
473
- var _chains$find;
474
-
475
- yield provider.request({
476
- method: 'wallet_switchEthereumChain',
477
- params: [{
478
- chainId: id
479
- }]
480
- });
481
- var chains = [..._this8.chains, ...base.allChains];
482
- return (_chains$find = chains.find(x => x.id === chainId)) !== null && _chains$find !== void 0 ? _chains$find : {
483
- id: chainId,
484
- name: "Chain ".concat(id),
485
- rpcUrls: []
486
- };
487
- } catch (error) {
488
- // Indicates chain is not added to MetaMask
489
- if (error.code === 4902) {
490
- try {
491
- var _chain$blockExplorers;
492
-
493
- var chain = _this8.chains.find(x => x.id === chainId);
494
-
495
- if (!chain) throw new base.ChainNotConfiguredError();
496
- yield provider.request({
497
- method: 'wallet_addEthereumChain',
498
- params: [{
499
- chainId: id,
500
- chainName: chain.name,
501
- nativeCurrency: chain.nativeCurrency,
502
- rpcUrls: chain.rpcUrls,
503
- blockExplorerUrls: (_chain$blockExplorers = chain.blockExplorers) === null || _chain$blockExplorers === void 0 ? void 0 : _chain$blockExplorers.map(x => x.url)
504
- }]
505
- });
506
- return chain;
507
- } catch (addError) {
508
- throw new base.AddChainError();
509
- }
510
- } else if (error.code === 4001) throw new base.UserRejectedRequestError();else throw new base.SwitchChainError();
511
- }
512
- })();
186
+ await provider.request({
187
+ method: 'wallet_switchEthereumChain',
188
+ params: [{
189
+ chainId: id
190
+ }]
191
+ });
192
+ const chains = [...this.chains, ...base.allChains];
193
+ return (_chains$find = chains.find(x => x.id === chainId)) !== null && _chains$find !== void 0 ? _chains$find : {
194
+ id: chainId,
195
+ name: "Chain ".concat(id),
196
+ rpcUrls: {
197
+ default: []
198
+ }
199
+ };
200
+ } catch (error) {
201
+ // Indicates chain is not added to provider
202
+ if (error.code === 4902) {
203
+ try {
204
+ const chain = this.chains.find(x => x.id === chainId);
205
+ if (!chain) throw new base.ChainNotConfiguredError();
206
+ await provider.request({
207
+ method: 'wallet_addEthereumChain',
208
+ params: [{
209
+ chainId: id,
210
+ chainName: chain.name,
211
+ nativeCurrency: chain.nativeCurrency,
212
+ rpcUrls: this.getRpcUrls(chain),
213
+ blockExplorerUrls: this.getBlockExplorerUrls(chain)
214
+ }]
215
+ });
216
+ return chain;
217
+ } catch (addError) {
218
+ throw new base.AddChainError();
219
+ }
220
+ } else if (error.code === 4001) throw new base.UserRejectedRequestError();else throw new base.SwitchChainError();
221
+ }
513
222
  }
514
223
 
515
- watchAsset(_ref) {
516
- var _this9 = this;
517
-
518
- return base._asyncToGenerator(function* () {
519
- var {
520
- address,
521
- decimals = 18,
522
- image,
523
- symbol
524
- } = _ref;
525
- var provider = yield _this9.getProvider();
526
- if (!provider) throw new base.ConnectorNotFoundError();
527
- return yield provider.request({
528
- method: 'wallet_watchAsset',
529
- params: {
530
- type: 'ERC20',
531
- options: {
532
- address,
533
- decimals,
534
- image,
535
- symbol
536
- }
224
+ async watchAsset(_ref) {
225
+ let {
226
+ address,
227
+ decimals = 18,
228
+ image,
229
+ symbol
230
+ } = _ref;
231
+ const provider = await this.getProvider();
232
+ if (!provider) throw new base.ConnectorNotFoundError();
233
+ return await provider.request({
234
+ method: 'wallet_watchAsset',
235
+ params: {
236
+ type: 'ERC20',
237
+ options: {
238
+ address,
239
+ decimals,
240
+ image,
241
+ symbol
537
242
  }
538
- });
539
- })();
243
+ }
244
+ });
540
245
  }
541
246
 
542
247
  }
543
248
 
544
- var noopStorage = {
249
+ const noopStorage = {
545
250
  getItem: _key => '',
546
251
  setItem: (_key, _value) => null,
547
252
  removeItem: _key => null
548
253
  };
549
254
  function createStorage(_ref) {
550
- var {
255
+ let {
551
256
  storage,
552
257
  key: prefix = 'wagmi'
553
258
  } = _ref;
554
- return _objectSpread2(_objectSpread2({}, storage), {}, {
555
- getItem: function getItem(key) {
556
- var defaultState = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
557
- var value = storage.getItem("".concat(prefix, ".").concat(key));
259
+ return { ...storage,
260
+ getItem: function (key) {
261
+ let defaultState = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
262
+ const value = storage.getItem("".concat(prefix, ".").concat(key));
558
263
 
559
264
  try {
560
265
  return value ? JSON.parse(value) : defaultState;
@@ -575,40 +280,18 @@ function createStorage(_ref) {
575
280
  }
576
281
  },
577
282
  removeItem: key => storage.removeItem("".concat(prefix, ".").concat(key))
578
- });
283
+ };
579
284
  }
580
285
 
581
- var defaultConfig = {
582
- connectors: [new InjectedConnector()],
583
- provider: _ref => {
584
- var {
585
- chainId
586
- } = _ref;
587
-
588
- try {
589
- return ethers.getDefaultProvider(chainId);
590
- } catch (error) {
591
- return ethers.getDefaultProvider();
592
- }
593
- },
594
- storage: createStorage({
595
- storage: typeof window !== 'undefined' ? window.localStorage : noopStorage
596
- })
597
- };
598
-
599
286
  var _lastUsedConnector = /*#__PURE__*/new WeakMap();
600
287
 
601
288
  var _addEffects = /*#__PURE__*/new WeakSet();
602
289
 
603
290
  class Client {
604
291
  constructor() {
605
- var {
606
- autoConnect,
607
- connectors: _connectors = defaultConfig.connectors,
608
- provider: _provider = defaultConfig.provider,
609
- storage = defaultConfig.storage,
610
- webSocketProvider: _webSocketProvider
611
- } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : defaultConfig;
292
+ var _config$autoConnect, _config$connectors, _config$provider, _config$storage;
293
+
294
+ let config = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
612
295
 
613
296
  classPrivateMethodGet._classPrivateMethodInitSpec(this, _addEffects);
614
297
 
@@ -623,53 +306,79 @@ class Client {
623
306
  value: void 0
624
307
  });
625
308
 
626
- this.config = {
627
- autoConnect,
628
- connectors: _connectors,
629
- provider: _provider,
630
- webSocketProvider: _webSocketProvider
309
+ // Set default values for config
310
+ const autoConnect = (_config$autoConnect = config.autoConnect) !== null && _config$autoConnect !== void 0 ? _config$autoConnect : false;
311
+
312
+ const _connectors = (_config$connectors = config.connectors) !== null && _config$connectors !== void 0 ? _config$connectors : [new InjectedConnector()];
313
+
314
+ const _provider = (_config$provider = config.provider) !== null && _config$provider !== void 0 ? _config$provider : config => {
315
+ try {
316
+ return ethers.getDefaultProvider(config.chainId);
317
+ } catch (error) {
318
+ return ethers.getDefaultProvider();
319
+ }
631
320
  };
632
- var status = 'disconnected';
633
321
 
634
- var _chainId;
322
+ const storage = (_config$storage = config.storage) !== null && _config$storage !== void 0 ? _config$storage : createStorage({
323
+ storage: typeof window !== 'undefined' ? window.localStorage : noopStorage
324
+ });
325
+ const _webSocketProvider = config.webSocketProvider; // Check status for autoConnect flag
326
+
327
+ let status = 'disconnected';
328
+
329
+ let _chainId;
635
330
 
636
331
  if (autoConnect) {
637
332
  try {
638
333
  var _JSON$parse, _JSON$parse$state, _data$chain;
639
334
 
640
- var rawState = storage.getItem('state', '');
641
- var data = (_JSON$parse = JSON.parse(rawState || '{}')) === null || _JSON$parse === void 0 ? void 0 : (_JSON$parse$state = _JSON$parse.state) === null || _JSON$parse$state === void 0 ? void 0 : _JSON$parse$state.data; // If account exists in localStorage, set status to reconnecting
335
+ const rawState = storage.getItem('state', '');
336
+ const data = (_JSON$parse = JSON.parse(rawState || '{}')) === null || _JSON$parse === void 0 ? void 0 : (_JSON$parse$state = _JSON$parse.state) === null || _JSON$parse$state === void 0 ? void 0 : _JSON$parse$state.data; // If account exists in localStorage, set status to reconnecting
642
337
 
643
338
  status = data !== null && data !== void 0 && data.account ? 'reconnecting' : 'connecting';
644
339
  _chainId = data === null || data === void 0 ? void 0 : (_data$chain = data.chain) === null || _data$chain === void 0 ? void 0 : _data$chain.id; // eslint-disable-next-line no-empty
645
340
  } catch (_error) {}
646
- }
647
-
648
- this.store = create__default["default"](middleware.subscribeWithSelector(middleware.persist((_set, _get) => ({
649
- connectors: typeof _connectors === 'function' ? _connectors({
650
- chainId: _chainId
651
- }) : _connectors,
652
- provider: typeof _provider === 'function' ? _provider({
653
- chainId: _chainId
654
- }) : _provider,
341
+ } // Evaluate initial store values
342
+
343
+
344
+ const connectors_ = typeof _connectors === 'function' ? _connectors({
345
+ chainId: _chainId
346
+ }) : _connectors;
347
+ const provider_ = typeof _provider === 'function' ? _provider({
348
+ chainId: _chainId
349
+ }) : _provider;
350
+ const webSocketProvider_ = typeof _webSocketProvider === 'function' ? _webSocketProvider({
351
+ chainId: _chainId
352
+ }) : _webSocketProvider; // Create store
353
+
354
+ this.store = create__default["default"](middleware.subscribeWithSelector(middleware.persist(() => ({
355
+ connectors: connectors_,
356
+ provider: provider_,
655
357
  status,
656
- webSocketProvider: typeof _webSocketProvider === 'function' ? _webSocketProvider({
657
- chainId: _chainId
658
- }) : _webSocketProvider
358
+ webSocketProvider: webSocketProvider_
659
359
  }), {
660
360
  name: 'state',
661
361
  getStorage: () => storage,
662
362
  partialize: state => {
663
363
  var _state$data, _state$data2;
664
364
 
665
- return {
666
- data: {
667
- account: state === null || state === void 0 ? void 0 : (_state$data = state.data) === null || _state$data === void 0 ? void 0 : _state$data.account,
668
- chain: state === null || state === void 0 ? void 0 : (_state$data2 = state.data) === null || _state$data2 === void 0 ? void 0 : _state$data2.chain
669
- }
365
+ return { ...(autoConnect && {
366
+ data: {
367
+ account: state === null || state === void 0 ? void 0 : (_state$data = state.data) === null || _state$data === void 0 ? void 0 : _state$data.account,
368
+ chain: state === null || state === void 0 ? void 0 : (_state$data2 = state.data) === null || _state$data2 === void 0 ? void 0 : _state$data2.chain
369
+ }
370
+ }),
371
+ chains: state === null || state === void 0 ? void 0 : state.chains
670
372
  };
671
373
  }
672
374
  })));
375
+ this.config = {
376
+ autoConnect,
377
+ connectors: _connectors,
378
+ provider: _provider,
379
+ storage,
380
+ webSocketProvider: _webSocketProvider
381
+ };
673
382
  this.storage = storage;
674
383
 
675
384
  base._classPrivateFieldSet(this, _lastUsedConnector, storage === null || storage === void 0 ? void 0 : storage.getItem('wallet'));
@@ -677,6 +386,10 @@ class Client {
677
386
  classPrivateMethodGet._classPrivateMethodGet(this, _addEffects, _addEffects2).call(this);
678
387
  }
679
388
 
389
+ get chains() {
390
+ return this.store.getState().chains;
391
+ }
392
+
680
393
  get connectors() {
681
394
  return this.store.getState().connectors;
682
395
  }
@@ -710,12 +423,12 @@ class Client {
710
423
  }
711
424
 
712
425
  setState(updater) {
713
- var newState = typeof updater === 'function' ? updater(this.store.getState()) : updater;
426
+ const newState = typeof updater === 'function' ? updater(this.store.getState()) : updater;
714
427
  this.store.setState(newState, true);
715
428
  }
716
429
 
717
430
  clearState() {
718
- this.setState(x => _objectSpread2(_objectSpread2({}, x), {}, {
431
+ this.setState(x => ({ ...x,
719
432
  connector: undefined,
720
433
  data: undefined,
721
434
  error: undefined,
@@ -723,84 +436,74 @@ class Client {
723
436
  }));
724
437
  }
725
438
 
726
- destroy() {
727
- var _this = this;
728
-
729
- return base._asyncToGenerator(function* () {
730
- var _this$connector$disco, _this$connector;
731
-
732
- if (_this.connector) yield (_this$connector$disco = (_this$connector = _this.connector).disconnect) === null || _this$connector$disco === void 0 ? void 0 : _this$connector$disco.call(_this$connector);
439
+ async destroy() {
440
+ var _this$connector$disco, _this$connector;
733
441
 
734
- _this.clearState();
735
-
736
- _this.store.destroy();
737
- })();
442
+ if (this.connector) await ((_this$connector$disco = (_this$connector = this.connector).disconnect) === null || _this$connector$disco === void 0 ? void 0 : _this$connector$disco.call(_this$connector));
443
+ this.clearState();
444
+ this.store.destroy();
738
445
  }
739
446
 
740
- autoConnect() {
741
- var _this2 = this;
742
-
743
- return base._asyncToGenerator(function* () {
744
- if (!_this2.connectors.length) return; // Try last used connector first
745
-
746
- var sorted = base._classPrivateFieldGet(_this2, _lastUsedConnector) ? [..._this2.connectors].sort(x => x.id === base._classPrivateFieldGet(_this2, _lastUsedConnector) ? -1 : 1) : _this2.connectors;
747
- var connected = false;
748
-
749
- var _loop = function* _loop(connector) {
750
- if (!connector.ready || !connector.isAuthorized) return "continue";
751
- var isAuthorized = yield connector.isAuthorized();
752
- if (!isAuthorized) return "continue";
753
- var data = yield connector.connect();
754
-
755
- _this2.setState(x => _objectSpread2(_objectSpread2({}, x), {}, {
756
- connector,
757
- data,
758
- status: 'connected'
759
- }));
760
-
761
- connected = true;
762
- return "break";
763
- };
764
-
765
- for (var connector of sorted) {
766
- var _ret = yield* _loop(connector);
767
-
768
- if (_ret === "continue") continue;
769
- if (_ret === "break") break;
770
- } // If connecting didn't succeed, set to disconnected
447
+ async autoConnect() {
448
+ if (!this.connectors.length) return; // Try last used connector first
449
+
450
+ const sorted = base._classPrivateFieldGet(this, _lastUsedConnector) ? [...this.connectors].sort(x => x.id === base._classPrivateFieldGet(this, _lastUsedConnector) ? -1 : 1) : this.connectors;
451
+ let connected = false;
452
+
453
+ for (const connector of sorted) {
454
+ if (!connector.ready || !connector.isAuthorized) continue;
455
+ const isAuthorized = await connector.isAuthorized();
456
+ if (!isAuthorized) continue;
457
+ const data = await connector.connect();
458
+ this.setState(x => ({ ...x,
459
+ connector,
460
+ chains: connector === null || connector === void 0 ? void 0 : connector.chains,
461
+ data,
462
+ status: 'connected'
463
+ }));
464
+ connected = true;
465
+ break;
466
+ } // If connecting didn't succeed, set to disconnected
771
467
 
772
468
 
773
- if (!connected) _this2.setState(x => _objectSpread2(_objectSpread2({}, x), {}, {
774
- status: 'disconnected'
775
- }));
776
- return _this2.data;
777
- })();
469
+ if (!connected) this.setState(x => ({ ...x,
470
+ status: 'disconnected'
471
+ }));
472
+ return this.data;
778
473
  }
779
474
 
780
475
  setLastUsedConnector() {
781
476
  var _this$storage;
782
477
 
783
- var lastUsedConnector = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
478
+ let lastUsedConnector = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
784
479
  (_this$storage = this.storage) === null || _this$storage === void 0 ? void 0 : _this$storage.setItem('wallet', lastUsedConnector);
785
480
  }
786
481
 
787
482
  }
788
483
 
789
484
  function _addEffects2() {
790
- var onChange = data => this.setState(x => _objectSpread2(_objectSpread2({}, x), {}, {
791
- data: _objectSpread2(_objectSpread2({}, x.data), data)
792
- }));
485
+ const onChange = data => {
486
+ this.setState(x => ({ ...x,
487
+ data: { ...x.data,
488
+ ...data
489
+ }
490
+ }));
491
+ };
793
492
 
794
- var onDisconnect = () => this.clearState();
493
+ const onDisconnect = () => {
494
+ this.clearState();
495
+ };
795
496
 
796
- var onError = error => this.setState(x => _objectSpread2(_objectSpread2({}, x), {}, {
797
- error
798
- }));
497
+ const onError = error => {
498
+ this.setState(x => ({ ...x,
499
+ error
500
+ }));
501
+ };
799
502
 
800
- this.store.subscribe(_ref2 => {
801
- var {
503
+ this.store.subscribe(_ref => {
504
+ let {
802
505
  connector
803
- } = _ref2;
506
+ } = _ref;
804
507
  return connector;
805
508
  }, (connector, prevConnector) => {
806
509
  var _prevConnector$off, _prevConnector$off2, _prevConnector$off3, _connector$on, _connector$on2, _connector$on3;
@@ -813,23 +516,23 @@ function _addEffects2() {
813
516
  (_connector$on2 = connector.on) === null || _connector$on2 === void 0 ? void 0 : _connector$on2.call(connector, 'disconnect', onDisconnect);
814
517
  (_connector$on3 = connector.on) === null || _connector$on3 === void 0 ? void 0 : _connector$on3.call(connector, 'error', onError);
815
518
  });
816
- var {
519
+ const {
817
520
  connectors,
818
521
  provider,
819
522
  webSocketProvider
820
523
  } = this.config;
821
- var subscribeConnectors = typeof connectors === 'function';
822
- var subscribeProvider = typeof provider === 'function';
823
- var subscribeWebSocketProvider = typeof webSocketProvider === 'function';
824
- if (subscribeConnectors || subscribeProvider || subscribeWebSocketProvider) this.store.subscribe(_ref3 => {
524
+ const subscribeConnectors = typeof connectors === 'function';
525
+ const subscribeProvider = typeof provider === 'function';
526
+ const subscribeWebSocketProvider = typeof webSocketProvider === 'function';
527
+ if (subscribeConnectors || subscribeProvider || subscribeWebSocketProvider) this.store.subscribe(_ref2 => {
825
528
  var _data$chain2;
826
529
 
827
- var {
530
+ let {
828
531
  data
829
- } = _ref3;
532
+ } = _ref2;
830
533
  return data === null || data === void 0 ? void 0 : (_data$chain2 = data.chain) === null || _data$chain2 === void 0 ? void 0 : _data$chain2.id;
831
534
  }, chainId => {
832
- this.setState(x => _objectSpread2(_objectSpread2({}, x), {}, {
535
+ this.setState(x => ({ ...x,
833
536
  connectors: subscribeConnectors ? connectors({
834
537
  chainId
835
538
  }) : x.connectors,
@@ -843,105 +546,83 @@ function _addEffects2() {
843
546
  });
844
547
  }
845
548
 
846
- var client;
549
+ let client;
847
550
  function createClient(config) {
848
- var client_ = new Client(config);
551
+ const client_ = new Client(config);
849
552
  client = client_;
850
553
  return client_;
851
554
  }
852
-
853
- function connect(_x) {
854
- return _connect.apply(this, arguments);
555
+ function getClient() {
556
+ return client;
855
557
  }
856
558
 
857
- function _connect() {
858
- _connect = base._asyncToGenerator(function* (connector) {
859
- var activeConnector = client.connector;
860
- if (connector.id === (activeConnector === null || activeConnector === void 0 ? void 0 : activeConnector.id)) throw new base.ConnectorAlreadyConnectedError();
861
- var data = yield connector.connect();
862
- client.setLastUsedConnector(connector.id);
863
- client.setState(x => _objectSpread2(_objectSpread2({}, x), {}, {
864
- connector,
865
- data
866
- }));
867
- client.storage.setItem('connected', true);
868
- return {
869
- data,
870
- connector
871
- };
872
- });
873
- return _connect.apply(this, arguments);
874
- }
875
-
876
- function disconnect() {
877
- return _disconnect.apply(this, arguments);
878
- }
879
-
880
- function _disconnect() {
881
- _disconnect = base._asyncToGenerator(function* () {
882
- if (client.connector) yield client.connector.disconnect();
883
- client.storage.removeItem('connected');
884
- client.clearState();
885
- });
886
- return _disconnect.apply(this, arguments);
559
+ async function connect(_ref) {
560
+ let {
561
+ connector
562
+ } = _ref;
563
+ const activeConnector = client.connector;
564
+ if (connector.id === (activeConnector === null || activeConnector === void 0 ? void 0 : activeConnector.id)) throw new base.ConnectorAlreadyConnectedError();
565
+ const data = await connector.connect();
566
+ client.setLastUsedConnector(connector.id);
567
+ client.setState(x => ({ ...x,
568
+ connector,
569
+ chains: connector === null || connector === void 0 ? void 0 : connector.chains,
570
+ data
571
+ }));
572
+ client.storage.setItem('connected', true);
573
+ return { ...data,
574
+ connector
575
+ };
887
576
  }
888
577
 
889
- function fetchBalance(_x) {
890
- return _fetchBalance.apply(this, arguments);
578
+ async function disconnect() {
579
+ if (client.connector) await client.connector.disconnect();
580
+ client.clearState();
581
+ client.storage.removeItem('connected');
891
582
  }
892
583
 
893
- function _fetchBalance() {
894
- _fetchBalance = base._asyncToGenerator(function* (_ref) {
895
- var _client$connector$cha, _client$connector, _chain$nativeCurrency, _chain$nativeCurrency2, _chain$nativeCurrency3, _chain$nativeCurrency4;
896
-
897
- var {
898
- addressOrName,
899
- formatUnits: unit = 'ether',
900
- token
901
- } = _ref;
584
+ async function fetchBalance(_ref) {
585
+ var _client$connector$cha, _client$connector, _chain$nativeCurrency, _chain$nativeCurrency2, _chain$nativeCurrency3, _chain$nativeCurrency4;
902
586
 
903
- if (token) {
904
- var contract = new ethers$1.Contract(token, erc20ABI, client.provider);
905
- var [_value, decimals, symbol] = yield Promise.all([contract.balanceOf(addressOrName), contract.decimals(), contract.symbol()]);
906
- return {
907
- decimals,
908
- formatted: utils.formatUnits(_value, unit),
909
- symbol,
910
- unit,
911
- value: _value
912
- };
913
- }
587
+ let {
588
+ addressOrName,
589
+ formatUnits: unit = 'ether',
590
+ token
591
+ } = _ref;
914
592
 
915
- var chains = [...((_client$connector$cha = (_client$connector = client.connector) === null || _client$connector === void 0 ? void 0 : _client$connector.chains) !== null && _client$connector$cha !== void 0 ? _client$connector$cha : []), ...base.allChains];
916
- var value = yield client.provider.getBalance(addressOrName);
917
- var chain = chains.find(x => x.id === client.provider.network.chainId);
593
+ if (token) {
594
+ const contract = new ethers$1.Contract(token, erc20ABI, client.provider);
595
+ const [value, decimals, symbol] = await Promise.all([contract.balanceOf(addressOrName), contract.decimals(), contract.symbol()]);
918
596
  return {
919
- decimals: (_chain$nativeCurrency = chain === null || chain === void 0 ? void 0 : (_chain$nativeCurrency2 = chain.nativeCurrency) === null || _chain$nativeCurrency2 === void 0 ? void 0 : _chain$nativeCurrency2.decimals) !== null && _chain$nativeCurrency !== void 0 ? _chain$nativeCurrency : 18,
597
+ decimals,
920
598
  formatted: utils.formatUnits(value, unit),
921
- symbol: (_chain$nativeCurrency3 = chain === null || chain === void 0 ? void 0 : (_chain$nativeCurrency4 = chain.nativeCurrency) === null || _chain$nativeCurrency4 === void 0 ? void 0 : _chain$nativeCurrency4.symbol) !== null && _chain$nativeCurrency3 !== void 0 ? _chain$nativeCurrency3 : 'ETH',
599
+ symbol,
922
600
  unit,
923
601
  value
924
602
  };
925
- });
926
- return _fetchBalance.apply(this, arguments);
927
- }
603
+ }
928
604
 
929
- function fetchSigner() {
930
- return _fetchSigner.apply(this, arguments);
605
+ const chains = [...((_client$connector$cha = (_client$connector = client.connector) === null || _client$connector === void 0 ? void 0 : _client$connector.chains) !== null && _client$connector$cha !== void 0 ? _client$connector$cha : []), ...base.allChains];
606
+ const value = await client.provider.getBalance(addressOrName);
607
+ const chain = chains.find(x => x.id === client.provider.network.chainId);
608
+ return {
609
+ decimals: (_chain$nativeCurrency = chain === null || chain === void 0 ? void 0 : (_chain$nativeCurrency2 = chain.nativeCurrency) === null || _chain$nativeCurrency2 === void 0 ? void 0 : _chain$nativeCurrency2.decimals) !== null && _chain$nativeCurrency !== void 0 ? _chain$nativeCurrency : 18,
610
+ formatted: utils.formatUnits(value, unit),
611
+ symbol: (_chain$nativeCurrency3 = chain === null || chain === void 0 ? void 0 : (_chain$nativeCurrency4 = chain.nativeCurrency) === null || _chain$nativeCurrency4 === void 0 ? void 0 : _chain$nativeCurrency4.symbol) !== null && _chain$nativeCurrency3 !== void 0 ? _chain$nativeCurrency3 : 'ETH',
612
+ unit,
613
+ value
614
+ };
931
615
  }
932
616
 
933
- function _fetchSigner() {
934
- _fetchSigner = base._asyncToGenerator(function* () {
935
- var _client$connector, _client$connector$get;
617
+ async function fetchSigner() {
618
+ var _client$connector, _client$connector$get;
936
619
 
937
- var signer = yield (_client$connector = client.connector) === null || _client$connector === void 0 ? void 0 : (_client$connector$get = _client$connector.getSigner) === null || _client$connector$get === void 0 ? void 0 : _client$connector$get.call(_client$connector);
938
- return signer;
939
- });
940
- return _fetchSigner.apply(this, arguments);
620
+ const signer = await ((_client$connector = client.connector) === null || _client$connector === void 0 ? void 0 : (_client$connector$get = _client$connector.getSigner) === null || _client$connector$get === void 0 ? void 0 : _client$connector$get.call(_client$connector));
621
+ return signer;
941
622
  }
942
623
 
943
624
  function getAccount() {
944
- var {
625
+ const {
945
626
  data,
946
627
  connector
947
628
  } = client;
@@ -952,88 +633,72 @@ function getAccount() {
952
633
  }
953
634
 
954
635
  function getNetwork() {
955
- var _data$chain, _data$chain2, _connector$chains, _find;
636
+ var _data$chain, _data$chain2, _find;
956
637
 
957
- var {
958
- connector,
638
+ const {
639
+ chains,
959
640
  data
960
641
  } = client;
961
- var chainId = data === null || data === void 0 ? void 0 : (_data$chain = data.chain) === null || _data$chain === void 0 ? void 0 : _data$chain.id;
962
- var unsupported = data === null || data === void 0 ? void 0 : (_data$chain2 = data.chain) === null || _data$chain2 === void 0 ? void 0 : _data$chain2.unsupported;
963
- var activeChains = (_connector$chains = connector === null || connector === void 0 ? void 0 : connector.chains) !== null && _connector$chains !== void 0 ? _connector$chains : [];
964
- var activeChain = (_find = [...activeChains, ...base.allChains].find(x => x.id === chainId)) !== null && _find !== void 0 ? _find : {
642
+ const chainId = data === null || data === void 0 ? void 0 : (_data$chain = data.chain) === null || _data$chain === void 0 ? void 0 : _data$chain.id;
643
+ const unsupported = data === null || data === void 0 ? void 0 : (_data$chain2 = data.chain) === null || _data$chain2 === void 0 ? void 0 : _data$chain2.unsupported;
644
+ const activeChains = chains !== null && chains !== void 0 ? chains : [];
645
+ const activeChain = (_find = [...activeChains, ...base.allChains].find(x => x.id === chainId)) !== null && _find !== void 0 ? _find : {
965
646
  id: chainId,
966
647
  name: "Chain ".concat(chainId),
967
- rpcUrls: []
648
+ rpcUrls: {
649
+ default: []
650
+ }
968
651
  };
969
652
  return {
970
- chain: chainId ? _objectSpread2(_objectSpread2({}, activeChain), {}, {
653
+ chain: chainId ? { ...activeChain,
971
654
  id: chainId,
972
655
  unsupported
973
- }) : undefined,
656
+ } : undefined,
974
657
  chains: activeChains
975
658
  };
976
659
  }
977
660
 
978
- function signMessage(_x) {
979
- return _signMessage.apply(this, arguments);
980
- }
981
-
982
- function _signMessage() {
983
- _signMessage = base._asyncToGenerator(function* (args) {
984
- try {
985
- var signer = yield fetchSigner();
986
- if (!signer) throw new base.ConnectorNotFoundError();
987
- return yield signer.signMessage(args.message);
988
- } catch (error_) {
989
- var error = error_;
990
- if (error_.code === 4001) error = new base.UserRejectedRequestError();
991
- throw error;
992
- }
993
- });
994
- return _signMessage.apply(this, arguments);
995
- }
996
-
997
- function signTypedData(_x) {
998
- return _signTypedData.apply(this, arguments);
661
+ async function signMessage(args) {
662
+ try {
663
+ const signer = await fetchSigner();
664
+ if (!signer) throw new base.ConnectorNotFoundError();
665
+ return await signer.signMessage(args.message);
666
+ } catch (error_) {
667
+ let error = error_;
668
+ if (error_.code === 4001) error = new base.UserRejectedRequestError();
669
+ throw error;
670
+ }
999
671
  }
1000
672
 
1001
- function _signTypedData() {
1002
- _signTypedData = base._asyncToGenerator(function* (args) {
1003
- try {
1004
- var signer = yield fetchSigner();
1005
- if (!signer) throw new base.ConnectorNotFoundError(); // Method name may be changed in the future, see https://docs.ethers.io/v5/api/signer/#Signer-signTypedData
1006
-
1007
- return yield signer._signTypedData(args.domain, args.types, args.value);
1008
- } catch (error_) {
1009
- var error = error_;
1010
- if (error_.code === 4001) error = new base.UserRejectedRequestError();
1011
- throw error;
1012
- }
1013
- });
1014
- return _signTypedData.apply(this, arguments);
1015
- }
673
+ async function signTypedData(args) {
674
+ try {
675
+ const signer = await fetchSigner();
676
+ if (!signer) throw new base.ConnectorNotFoundError(); // Method name may be changed in the future, see https://docs.ethers.io/v5/api/signer/#Signer-signTypedData
1016
677
 
1017
- function switchNetwork(_x) {
1018
- return _switchNetwork.apply(this, arguments);
678
+ return await signer._signTypedData(args.domain, args.types, args.value);
679
+ } catch (error_) {
680
+ let error = error_;
681
+ if (error_.code === 4001) error = new base.UserRejectedRequestError();
682
+ throw error;
683
+ }
1019
684
  }
1020
685
 
1021
- function _switchNetwork() {
1022
- _switchNetwork = base._asyncToGenerator(function* (args) {
1023
- var _client$connector;
686
+ async function switchNetwork(_ref) {
687
+ var _client$connector;
1024
688
 
1025
- if (!((_client$connector = client.connector) !== null && _client$connector !== void 0 && _client$connector.switchChain)) throw new base.SwitchChainNotSupportedError();
1026
- var chain = yield client.connector.switchChain(args.chainId);
1027
- return chain;
1028
- });
1029
- return _switchNetwork.apply(this, arguments);
689
+ let {
690
+ chainId
691
+ } = _ref;
692
+ if (!((_client$connector = client.connector) !== null && _client$connector !== void 0 && _client$connector.switchChain)) throw new base.SwitchChainNotSupportedError();
693
+ const chain = await client.connector.switchChain(chainId);
694
+ return chain;
1030
695
  }
1031
696
 
1032
697
  function watchAccount(callback) {
1033
- var handleChange = () => callback(getAccount());
698
+ const handleChange = () => callback(getAccount());
1034
699
 
1035
- var unsubscribe = client.subscribe(_ref => {
1036
- var {
700
+ const unsubscribe = client.subscribe(_ref => {
701
+ let {
1037
702
  data,
1038
703
  connector
1039
704
  } = _ref;
@@ -1048,22 +713,14 @@ function watchAccount(callback) {
1048
713
  }
1049
714
 
1050
715
  function watchBalance(args, callback) {
1051
- var handleChange = /*#__PURE__*/function () {
1052
- var _ref = base._asyncToGenerator(function* () {
1053
- return callback(yield fetchBalance(args));
1054
- });
716
+ const handleChange = async () => callback(await fetchBalance(args));
1055
717
 
1056
- return function handleChange() {
1057
- return _ref.apply(this, arguments);
1058
- };
1059
- }();
1060
-
1061
- var unsubscribe = client.subscribe(_ref2 => {
718
+ const unsubscribe = client.subscribe(_ref => {
1062
719
  var _data$chain;
1063
720
 
1064
- var {
721
+ let {
1065
722
  data
1066
- } = _ref2;
723
+ } = _ref;
1067
724
  return {
1068
725
  account: data === null || data === void 0 ? void 0 : data.account,
1069
726
  chainId: data === null || data === void 0 ? void 0 : (_data$chain = data.chain) === null || _data$chain === void 0 ? void 0 : _data$chain.id
@@ -1075,43 +732,35 @@ function watchBalance(args, callback) {
1075
732
  }
1076
733
 
1077
734
  function watchNetwork(callback) {
1078
- var handleChange = () => callback(getNetwork());
735
+ const handleChange = () => callback(getNetwork());
1079
736
 
1080
- var unsubscribe = client.subscribe(_ref => {
737
+ const unsubscribe = client.subscribe(_ref => {
1081
738
  var _data$chain;
1082
739
 
1083
- var {
740
+ let {
1084
741
  data,
1085
- connector
742
+ chains
1086
743
  } = _ref;
1087
744
  return {
1088
745
  chainId: data === null || data === void 0 ? void 0 : (_data$chain = data.chain) === null || _data$chain === void 0 ? void 0 : _data$chain.id,
1089
- connector
746
+ chains
1090
747
  };
1091
748
  }, handleChange, {
1092
- equalityFn: (selected, previous) => selected.chainId === previous.chainId && selected.connector === previous.connector
749
+ equalityFn: (selected, previous) => selected.chainId === previous.chainId && selected.chains === previous.chains
1093
750
  });
1094
751
  return unsubscribe;
1095
752
  }
1096
753
 
1097
754
  function watchSigner(callback) {
1098
- var handleChange = /*#__PURE__*/function () {
1099
- var _ref = base._asyncToGenerator(function* () {
1100
- return callback(yield fetchSigner());
1101
- });
755
+ const handleChange = async () => callback(await fetchSigner());
1102
756
 
1103
- return function handleChange() {
1104
- return _ref.apply(this, arguments);
1105
- };
1106
- }();
1107
-
1108
- var unsubscribe = client.subscribe(_ref2 => {
757
+ const unsubscribe = client.subscribe(_ref => {
1109
758
  var _data$chain;
1110
759
 
1111
- var {
760
+ let {
1112
761
  data,
1113
762
  connector
1114
- } = _ref2;
763
+ } = _ref;
1115
764
  return {
1116
765
  account: data === null || data === void 0 ? void 0 : data.account,
1117
766
  chainId: data === null || data === void 0 ? void 0 : (_data$chain = data.chain) === null || _data$chain === void 0 ? void 0 : _data$chain.id,
@@ -1124,7 +773,7 @@ function watchSigner(callback) {
1124
773
  }
1125
774
 
1126
775
  function getContract(_ref) {
1127
- var {
776
+ let {
1128
777
  addressOrName,
1129
778
  contractInterface,
1130
779
  signerOrProvider
@@ -1132,27 +781,21 @@ function getContract(_ref) {
1132
781
  return new ethers$1.Contract(addressOrName, contractInterface, signerOrProvider);
1133
782
  }
1134
783
 
1135
- function readContract(_x, _x2) {
1136
- return _readContract.apply(this, arguments);
1137
- }
1138
-
1139
- function _readContract() {
1140
- _readContract = base._asyncToGenerator(function* (contractConfig, functionName) {
1141
- var {
1142
- args,
1143
- overrides
1144
- } = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
1145
- var {
1146
- provider
1147
- } = client;
1148
- var contract = getContract(_objectSpread2({
1149
- signerOrProvider: provider
1150
- }, contractConfig));
1151
- var params = [...(Array.isArray(args) ? args : args ? [args] : []), ...(overrides ? [overrides] : [])];
1152
- var response = yield contract[functionName](...params);
1153
- return response;
784
+ async function readContract(contractConfig, functionName) {
785
+ let {
786
+ args,
787
+ overrides
788
+ } = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
789
+ const {
790
+ provider
791
+ } = client;
792
+ const contract = getContract({
793
+ signerOrProvider: provider,
794
+ ...contractConfig
1154
795
  });
1155
- return _readContract.apply(this, arguments);
796
+ const params = [...(Array.isArray(args) ? args : args ? [args] : []), ...(overrides ? [overrides] : [])];
797
+ const response = await contract[functionName](...params);
798
+ return response;
1156
799
  }
1157
800
 
1158
801
  function watchContractEvent(
@@ -1160,36 +803,31 @@ function watchContractEvent(
1160
803
  contractArgs,
1161
804
  /** Event name to listen to */
1162
805
  eventName, callback) {
1163
- var {
806
+ let {
1164
807
  once
1165
808
  } = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
1166
- var contract;
809
+ let contract;
1167
810
 
1168
- var watchEvent = /*#__PURE__*/function () {
1169
- var _ref = base._asyncToGenerator(function* () {
1170
- if (contract) {
1171
- var _contract;
811
+ const watchEvent = async () => {
812
+ if (contract) {
813
+ var _contract;
1172
814
 
1173
- (_contract = contract) === null || _contract === void 0 ? void 0 : _contract.off(eventName, callback);
1174
- }
815
+ (_contract = contract) === null || _contract === void 0 ? void 0 : _contract.off(eventName, callback);
816
+ }
1175
817
 
1176
- contract = getContract(_objectSpread2({
1177
- signerOrProvider: client.webSocketProvider || client.provider
1178
- }, contractArgs));
1179
- if (once) contract.once(eventName, callback);else contract.on(eventName, callback);
818
+ contract = getContract({
819
+ signerOrProvider: client.webSocketProvider || client.provider,
820
+ ...contractArgs
1180
821
  });
1181
-
1182
- return function watchEvent() {
1183
- return _ref.apply(this, arguments);
1184
- };
1185
- }();
822
+ if (once) contract.once(eventName, callback);else contract.on(eventName, callback);
823
+ };
1186
824
 
1187
825
  watchEvent();
1188
- var unsubscribe = client.subscribe(_ref2 => {
1189
- var {
826
+ const unsubscribe = client.subscribe(_ref => {
827
+ let {
1190
828
  provider,
1191
829
  webSocketProvider
1192
- } = _ref2;
830
+ } = _ref;
1193
831
  return {
1194
832
  provider,
1195
833
  webSocketProvider
@@ -1205,23 +843,16 @@ eventName, callback) {
1205
843
  };
1206
844
  }
1207
845
 
1208
- function fetchBlockNumber() {
1209
- return _fetchBlockNumber.apply(this, arguments);
1210
- }
1211
-
1212
- function _fetchBlockNumber() {
1213
- _fetchBlockNumber = base._asyncToGenerator(function* () {
1214
- var blockNumber = yield client.provider.getBlockNumber();
1215
- return blockNumber;
1216
- });
1217
- return _fetchBlockNumber.apply(this, arguments);
846
+ async function fetchBlockNumber() {
847
+ const blockNumber = await client.provider.getBlockNumber();
848
+ return blockNumber;
1218
849
  }
1219
850
 
1220
851
  function watchBlockNumber(args, callback) {
1221
- var prevProvider;
852
+ let prevProvider;
1222
853
 
1223
- var createListener = provider => {
1224
- var listener = blockNumber => {
854
+ const createListener = provider => {
855
+ const listener = blockNumber => {
1225
856
  callback(blockNumber);
1226
857
  };
1227
858
 
@@ -1235,14 +866,14 @@ function watchBlockNumber(args, callback) {
1235
866
  prevProvider = provider;
1236
867
  };
1237
868
 
1238
- var {
869
+ const {
1239
870
  provider,
1240
871
  webSocketProvider
1241
872
  } = client;
1242
- var provider_ = webSocketProvider !== null && webSocketProvider !== void 0 ? webSocketProvider : provider;
873
+ const provider_ = webSocketProvider !== null && webSocketProvider !== void 0 ? webSocketProvider : provider;
1243
874
  if (args.listen) createListener(provider_);
1244
- var unsubscribe = client.subscribe(_ref => {
1245
- var {
875
+ const unsubscribe = client.subscribe(_ref => {
876
+ let {
1246
877
  provider,
1247
878
  webSocketProvider
1248
879
  } = _ref;
@@ -1250,25 +881,19 @@ function watchBlockNumber(args, callback) {
1250
881
  provider,
1251
882
  webSocketProvider
1252
883
  };
1253
- }, /*#__PURE__*/function () {
1254
- var _ref3 = base._asyncToGenerator(function* (_ref2) {
1255
- var {
1256
- provider,
1257
- webSocketProvider
1258
- } = _ref2;
1259
- var provider_ = webSocketProvider !== null && webSocketProvider !== void 0 ? webSocketProvider : provider;
1260
-
1261
- if (args.listen && provider_) {
1262
- createListener(provider_);
1263
- }
884
+ }, async _ref2 => {
885
+ let {
886
+ provider,
887
+ webSocketProvider
888
+ } = _ref2;
889
+ const provider_ = webSocketProvider !== null && webSocketProvider !== void 0 ? webSocketProvider : provider;
1264
890
 
1265
- callback(yield fetchBlockNumber());
1266
- });
891
+ if (args.listen && provider_) {
892
+ createListener(provider_);
893
+ }
1267
894
 
1268
- return function (_x) {
1269
- return _ref3.apply(this, arguments);
1270
- };
1271
- }(), {
895
+ callback(await fetchBlockNumber());
896
+ }, {
1272
897
  equalityFn: (selected, previous) => selected.provider === previous.provider && selected.webSocketProvider === previous.webSocketProvider
1273
898
  });
1274
899
  return unsubscribe;
@@ -1277,26 +902,18 @@ function watchBlockNumber(args, callback) {
1277
902
  function watchReadContract(contractConfig, functionName) {
1278
903
  var _config$listenToBlock;
1279
904
 
1280
- var config = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
1281
- var callback = arguments.length > 3 ? arguments[3] : undefined;
905
+ let config = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
906
+ let callback = arguments.length > 3 ? arguments[3] : undefined;
1282
907
 
1283
- var handleChange = /*#__PURE__*/function () {
1284
- var _ref = base._asyncToGenerator(function* () {
1285
- return callback(yield readContract(contractConfig, functionName, config));
1286
- });
908
+ const handleChange = async () => callback(await readContract(contractConfig, functionName, config));
1287
909
 
1288
- return function handleChange() {
1289
- return _ref.apply(this, arguments);
1290
- };
1291
- }();
1292
-
1293
- var unwatch = ((_config$listenToBlock = config.listenToBlock) !== null && _config$listenToBlock !== void 0 ? _config$listenToBlock : true) ? watchBlockNumber({
910
+ const unwatch = ((_config$listenToBlock = config.listenToBlock) !== null && _config$listenToBlock !== void 0 ? _config$listenToBlock : true) ? watchBlockNumber({
1294
911
  listen: true
1295
912
  }, handleChange) : undefined;
1296
- var unsubscribe = client.subscribe(_ref2 => {
1297
- var {
913
+ const unsubscribe = client.subscribe(_ref => {
914
+ let {
1298
915
  provider
1299
- } = _ref2;
916
+ } = _ref;
1300
917
  return provider;
1301
918
  }, handleChange);
1302
919
  return () => {
@@ -1305,224 +922,142 @@ function watchReadContract(contractConfig, functionName) {
1305
922
  };
1306
923
  }
1307
924
 
1308
- function writeContract(_x, _x2) {
1309
- return _writeContract.apply(this, arguments);
1310
- }
1311
-
1312
- function _writeContract() {
1313
- _writeContract = base._asyncToGenerator(function* (contractConfig, functionName) {
1314
- var {
1315
- args,
1316
- overrides
1317
- } = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
1318
- var {
1319
- connector
1320
- } = client;
1321
- var contract = getContract(contractConfig);
1322
- if (!connector) throw new base.ConnectorNotFoundError();
1323
- var params = [...(Array.isArray(args) ? args : args ? [args] : []), ...(overrides ? [overrides] : [])];
1324
-
1325
- try {
1326
- var signer = yield connector.getSigner();
1327
- var contract_ = contract.connect(signer);
1328
- var response = yield contract_[functionName](...params);
1329
- return response;
1330
- } catch (error_) {
1331
- var error = error_;
1332
- if (error_.code === 4001) error = new base.UserRejectedRequestError();
1333
- throw error;
1334
- }
1335
- });
1336
- return _writeContract.apply(this, arguments);
1337
- }
1338
-
1339
- function fetchEnsAddress(_x) {
1340
- return _fetchEnsAddress.apply(this, arguments);
1341
- }
1342
-
1343
- function _fetchEnsAddress() {
1344
- _fetchEnsAddress = base._asyncToGenerator(function* (_ref) {
1345
- var {
1346
- name
1347
- } = _ref;
1348
- var address = yield client.provider.resolveName(name);
1349
-
1350
- try {
1351
- return address ? utils.getAddress(address) : null;
1352
- } catch (_error) {
1353
- return null;
1354
- }
1355
- });
1356
- return _fetchEnsAddress.apply(this, arguments);
1357
- }
1358
-
1359
- function fetchEnsAvatar(_x) {
1360
- return _fetchEnsAvatar.apply(this, arguments);
925
+ async function writeContract(contractConfig, functionName) {
926
+ let {
927
+ args,
928
+ overrides
929
+ } = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
930
+ const {
931
+ connector
932
+ } = client;
933
+ const contract = getContract(contractConfig);
934
+ if (!connector) throw new base.ConnectorNotFoundError();
935
+ const params = [...(Array.isArray(args) ? args : args ? [args] : []), ...(overrides ? [overrides] : [])];
936
+
937
+ try {
938
+ const signer = await connector.getSigner();
939
+ const contract_ = contract.connect(signer);
940
+ const response = await contract_[functionName](...params);
941
+ return response;
942
+ } catch (error_) {
943
+ let error = error_;
944
+ if (error_.code === 4001) error = new base.UserRejectedRequestError();
945
+ throw error;
946
+ }
1361
947
  }
1362
948
 
1363
- function _fetchEnsAvatar() {
1364
- _fetchEnsAvatar = base._asyncToGenerator(function* (_ref) {
1365
- var {
1366
- addressOrName
1367
- } = _ref;
1368
- // TODO: Update with more advanced logic
1369
- // https://github.com/ensdomains/ens-avatar
1370
- var avatar = yield client.provider.getAvatar(addressOrName);
1371
- return avatar;
1372
- });
1373
- return _fetchEnsAvatar.apply(this, arguments);
1374
- }
949
+ async function fetchEnsAddress(_ref) {
950
+ let {
951
+ name
952
+ } = _ref;
953
+ const address = await client.provider.resolveName(name);
1375
954
 
1376
- function fetchEnsName(_x) {
1377
- return _fetchEnsName.apply(this, arguments);
955
+ try {
956
+ return address ? utils.getAddress(address) : null;
957
+ } catch (_error) {
958
+ return null;
959
+ }
1378
960
  }
1379
961
 
1380
- function _fetchEnsName() {
1381
- _fetchEnsName = base._asyncToGenerator(function* (_ref) {
1382
- var {
1383
- address
1384
- } = _ref;
1385
- var ensName = yield client.provider.lookupAddress(address);
1386
- return ensName;
1387
- });
1388
- return _fetchEnsName.apply(this, arguments);
962
+ async function fetchEnsAvatar(_ref) {
963
+ let {
964
+ addressOrName
965
+ } = _ref;
966
+ // TODO: Update with more advanced logic
967
+ // https://github.com/ensdomains/ens-avatar
968
+ const avatar = await client.provider.getAvatar(addressOrName);
969
+ return avatar;
1389
970
  }
1390
971
 
1391
- function fetchEnsResolver(_x) {
1392
- return _fetchEnsResolver.apply(this, arguments);
972
+ async function fetchEnsName(_ref) {
973
+ let {
974
+ address
975
+ } = _ref;
976
+ const ensName = await client.provider.lookupAddress(address);
977
+ return ensName;
1393
978
  }
1394
979
 
1395
- function _fetchEnsResolver() {
1396
- _fetchEnsResolver = base._asyncToGenerator(function* (_ref) {
1397
- var {
1398
- name
1399
- } = _ref;
1400
- var resolver = yield client.provider.getResolver(name);
1401
- return resolver;
1402
- });
1403
- return _fetchEnsResolver.apply(this, arguments);
980
+ async function fetchEnsResolver(_ref) {
981
+ let {
982
+ name
983
+ } = _ref;
984
+ const resolver = await client.provider.getResolver(name);
985
+ return resolver;
1404
986
  }
1405
987
 
1406
988
  function watchEnsAddress(args, callback) {
1407
- var handleChange = /*#__PURE__*/function () {
1408
- var _ref = base._asyncToGenerator(function* () {
1409
- return callback(yield fetchEnsAddress(args));
1410
- });
1411
-
1412
- return function handleChange() {
1413
- return _ref.apply(this, arguments);
1414
- };
1415
- }();
989
+ const handleChange = async () => callback(await fetchEnsAddress(args));
1416
990
 
1417
- var unsubscribe = client.subscribe(_ref2 => {
1418
- var {
991
+ const unsubscribe = client.subscribe(_ref => {
992
+ let {
1419
993
  provider
1420
- } = _ref2;
994
+ } = _ref;
1421
995
  return provider;
1422
996
  }, handleChange);
1423
997
  return unsubscribe;
1424
998
  }
1425
999
 
1426
1000
  function watchEnsAvatar(args, callback) {
1427
- var handleChange = /*#__PURE__*/function () {
1428
- var _ref = base._asyncToGenerator(function* () {
1429
- return callback(yield fetchEnsAvatar(args));
1430
- });
1431
-
1432
- return function handleChange() {
1433
- return _ref.apply(this, arguments);
1434
- };
1435
- }();
1001
+ const handleChange = async () => callback(await fetchEnsAvatar(args));
1436
1002
 
1437
- var unsubscribe = client.subscribe(_ref2 => {
1438
- var {
1003
+ const unsubscribe = client.subscribe(_ref => {
1004
+ let {
1439
1005
  provider
1440
- } = _ref2;
1006
+ } = _ref;
1441
1007
  return provider;
1442
1008
  }, handleChange);
1443
1009
  return unsubscribe;
1444
1010
  }
1445
1011
 
1446
1012
  function watchEnsName(args, callback) {
1447
- var handleChange = /*#__PURE__*/function () {
1448
- var _ref = base._asyncToGenerator(function* () {
1449
- return callback(yield fetchEnsName(args));
1450
- });
1451
-
1452
- return function handleChange() {
1453
- return _ref.apply(this, arguments);
1454
- };
1455
- }();
1013
+ const handleChange = async () => callback(await fetchEnsName(args));
1456
1014
 
1457
- var unsubscribe = client.subscribe(_ref2 => {
1458
- var {
1015
+ const unsubscribe = client.subscribe(_ref => {
1016
+ let {
1459
1017
  provider
1460
- } = _ref2;
1018
+ } = _ref;
1461
1019
  return provider;
1462
1020
  }, handleChange);
1463
1021
  return unsubscribe;
1464
1022
  }
1465
1023
 
1466
1024
  function watchEnsResolver(args, callback) {
1467
- var handleChange = /*#__PURE__*/function () {
1468
- var _ref = base._asyncToGenerator(function* () {
1469
- return callback(yield fetchEnsResolver(args));
1470
- });
1471
-
1472
- return function handleChange() {
1473
- return _ref.apply(this, arguments);
1474
- };
1475
- }();
1025
+ const handleChange = async () => callback(await fetchEnsResolver(args));
1476
1026
 
1477
- var unsubscribe = client.subscribe(_ref2 => {
1478
- var {
1027
+ const unsubscribe = client.subscribe(_ref => {
1028
+ let {
1479
1029
  provider
1480
- } = _ref2;
1030
+ } = _ref;
1481
1031
  return provider;
1482
1032
  }, handleChange);
1483
1033
  return unsubscribe;
1484
1034
  }
1485
1035
 
1486
- function fetchFeeData() {
1487
- return _fetchFeeData.apply(this, arguments);
1488
- }
1489
-
1490
- function _fetchFeeData() {
1491
- _fetchFeeData = base._asyncToGenerator(function* () {
1492
- var {
1493
- formatUnits: units = 'wei'
1494
- } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
1495
- var feeData = yield client.provider.getFeeData();
1496
- var formatted = {
1497
- gasPrice: utils.formatUnits(feeData.gasPrice, units),
1498
- maxFeePerGas: utils.formatUnits(feeData.maxFeePerGas, units),
1499
- maxPriorityFeePerGas: utils.formatUnits(feeData.maxPriorityFeePerGas, units)
1500
- };
1501
- return _objectSpread2(_objectSpread2({}, feeData), {}, {
1502
- formatted
1503
- });
1504
- });
1505
- return _fetchFeeData.apply(this, arguments);
1036
+ async function fetchFeeData() {
1037
+ let {
1038
+ formatUnits: units = 'wei'
1039
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
1040
+ const feeData = await client.provider.getFeeData();
1041
+ const formatted = {
1042
+ gasPrice: utils.formatUnits(feeData.gasPrice, units),
1043
+ maxFeePerGas: utils.formatUnits(feeData.maxFeePerGas, units),
1044
+ maxPriorityFeePerGas: utils.formatUnits(feeData.maxPriorityFeePerGas, units)
1045
+ };
1046
+ return { ...feeData,
1047
+ formatted
1048
+ };
1506
1049
  }
1507
1050
 
1508
1051
  function watchFeeData(args, callback) {
1509
- var handleChange = /*#__PURE__*/function () {
1510
- var _ref = base._asyncToGenerator(function* () {
1511
- return callback(yield fetchFeeData(args));
1512
- });
1052
+ const handleChange = async () => callback(await fetchFeeData(args));
1513
1053
 
1514
- return function handleChange() {
1515
- return _ref.apply(this, arguments);
1516
- };
1517
- }();
1518
-
1519
- var unwatch = args.listenToBlock ? watchBlockNumber({
1054
+ const unwatch = args.listenToBlock ? watchBlockNumber({
1520
1055
  listen: true
1521
1056
  }, handleChange) : undefined;
1522
- var unsubscribe = client.subscribe(_ref2 => {
1523
- var {
1057
+ const unsubscribe = client.subscribe(_ref => {
1058
+ let {
1524
1059
  provider
1525
- } = _ref2;
1060
+ } = _ref;
1526
1061
  return provider;
1527
1062
  }, handleChange);
1528
1063
  return () => {
@@ -1532,99 +1067,70 @@ function watchFeeData(args, callback) {
1532
1067
  }
1533
1068
 
1534
1069
  function getProvider() {
1535
- return client.provider;
1070
+ return getClient().provider;
1536
1071
  }
1537
1072
 
1538
1073
  function getWebSocketProvider() {
1539
- return client.webSocketProvider;
1540
- }
1541
-
1542
- function fetchToken(_x) {
1543
- return _fetchToken.apply(this, arguments);
1074
+ return getClient().provider;
1544
1075
  }
1545
1076
 
1546
- function _fetchToken() {
1547
- _fetchToken = base._asyncToGenerator(function* (_ref) {
1548
- var {
1549
- address,
1550
- formatUnits: units = 'ether'
1551
- } = _ref;
1552
- if (!address) throw new Error('address is required');
1553
- var {
1554
- provider
1555
- } = client;
1556
- var contract = new ethers$1.Contract(address, erc20ABI, provider);
1557
- var [symbol, decimals, totalSupply] = yield Promise.all([contract.symbol(), contract.decimals(), contract.totalSupply()]);
1558
- var token = {
1559
- address,
1560
- decimals,
1561
- symbol,
1562
- totalSupply: {
1563
- formatted: utils.formatUnits(totalSupply, units),
1564
- value: totalSupply
1565
- }
1566
- };
1567
- return token;
1568
- });
1569
- return _fetchToken.apply(this, arguments);
1077
+ async function fetchToken(_ref) {
1078
+ let {
1079
+ address,
1080
+ formatUnits: units = 'ether'
1081
+ } = _ref;
1082
+ if (!address) throw new Error('address is required');
1083
+ const {
1084
+ provider
1085
+ } = client;
1086
+ const contract = new ethers$1.Contract(address, erc20ABI, provider);
1087
+ const [symbol, decimals, totalSupply] = await Promise.all([contract.symbol(), contract.decimals(), contract.totalSupply()]);
1088
+ const token = {
1089
+ address,
1090
+ decimals,
1091
+ symbol,
1092
+ totalSupply: {
1093
+ formatted: utils.formatUnits(totalSupply, units),
1094
+ value: totalSupply
1095
+ }
1096
+ };
1097
+ return token;
1570
1098
  }
1571
1099
 
1572
1100
  function watchToken(args, callback) {
1573
- var handleChange = /*#__PURE__*/function () {
1574
- var _ref = base._asyncToGenerator(function* () {
1575
- return callback(yield fetchToken(args));
1576
- });
1577
-
1578
- return function handleChange() {
1579
- return _ref.apply(this, arguments);
1580
- };
1581
- }();
1101
+ const handleChange = async () => callback(await fetchToken(args));
1582
1102
 
1583
- var unsubscribe = client.subscribe(_ref2 => {
1584
- var {
1103
+ const unsubscribe = client.subscribe(_ref => {
1104
+ let {
1585
1105
  provider
1586
- } = _ref2;
1106
+ } = _ref;
1587
1107
  return provider;
1588
1108
  }, handleChange);
1589
1109
  return unsubscribe;
1590
1110
  }
1591
1111
 
1592
- function sendTransaction(_x) {
1593
- return _sendTransaction.apply(this, arguments);
1594
- }
1595
-
1596
- function _sendTransaction() {
1597
- _sendTransaction = base._asyncToGenerator(function* (args) {
1598
- try {
1599
- var signer = yield fetchSigner();
1600
- if (!signer) throw new base.ConnectorNotFoundError();
1601
- var transaction = yield signer.sendTransaction(args.request);
1602
- return transaction;
1603
- } catch (error_) {
1604
- var error = error_;
1605
- if (error_.code === 4001) error = new base.UserRejectedRequestError();
1606
- throw error;
1607
- }
1608
- });
1609
- return _sendTransaction.apply(this, arguments);
1610
- }
1611
-
1612
- function waitForTransaction(_x) {
1613
- return _waitForTransaction.apply(this, arguments);
1112
+ async function sendTransaction(args) {
1113
+ try {
1114
+ const signer = await fetchSigner();
1115
+ if (!signer) throw new base.ConnectorNotFoundError();
1116
+ const transaction = await signer.sendTransaction(args.request);
1117
+ return transaction;
1118
+ } catch (error_) {
1119
+ let error = error_;
1120
+ if (error_.code === 4001) error = new base.UserRejectedRequestError();
1121
+ throw error;
1122
+ }
1614
1123
  }
1615
1124
 
1616
- function _waitForTransaction() {
1617
- _waitForTransaction = base._asyncToGenerator(function* (args) {
1618
- var {
1619
- provider
1620
- } = client;
1621
- var promise; // eslint-disable-next-line testing-library/await-async-utils
1125
+ async function waitForTransaction(args) {
1126
+ const {
1127
+ provider
1128
+ } = client;
1129
+ let promise; // eslint-disable-next-line testing-library/await-async-utils
1622
1130
 
1623
- if (args.wait) promise = args.wait(args.confirmations);else if (args.hash) promise = provider.waitForTransaction(args.hash, args.confirmations, args.timeout);else throw new Error('hash or wait is required');
1624
- var receipt = yield promise;
1625
- return receipt;
1626
- });
1627
- return _waitForTransaction.apply(this, arguments);
1131
+ if (args.wait) promise = args.wait(args.confirmations);else if (args.hash) promise = provider.waitForTransaction(args.hash, args.confirmations, args.timeout);else throw new Error('hash or wait is required');
1132
+ const receipt = await promise;
1133
+ return receipt;
1628
1134
  }
1629
1135
 
1630
1136
  exports.AddChainError = base.AddChainError;
@@ -1635,9 +1141,14 @@ exports.ConnectorNotFoundError = base.ConnectorNotFoundError;
1635
1141
  exports.SwitchChainError = base.SwitchChainError;
1636
1142
  exports.SwitchChainNotSupportedError = base.SwitchChainNotSupportedError;
1637
1143
  exports.UserRejectedRequestError = base.UserRejectedRequestError;
1144
+ exports.alchemyRpcUrls = base.alchemyRpcUrls;
1638
1145
  exports.allChains = base.allChains;
1639
1146
  exports.chain = base.chain;
1147
+ exports.chainId = base.chainId;
1640
1148
  exports.defaultChains = base.defaultChains;
1149
+ exports.defaultL2Chains = base.defaultL2Chains;
1150
+ exports.etherscanBlockExplorers = base.etherscanBlockExplorers;
1151
+ exports.infuraRpcUrls = base.infuraRpcUrls;
1641
1152
  exports.normalizeChainId = base.normalizeChainId;
1642
1153
  exports.Client = Client;
1643
1154
  exports.InjectedConnector = InjectedConnector;
@@ -1648,7 +1159,6 @@ exports.createStorage = createStorage;
1648
1159
  exports.createWagmiClient = createClient;
1649
1160
  exports.createWagmiStorage = createStorage;
1650
1161
  exports.disconnect = disconnect;
1651
- exports.erc1155ABI = erc1155ABI;
1652
1162
  exports.erc20ABI = erc20ABI;
1653
1163
  exports.erc721ABI = erc721ABI;
1654
1164
  exports.fetchBalance = fetchBalance;